feat: count navigation picker picks in feature_usage

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Guilhem Lemouel
2026-10-09 08:10:01 -07:00
co-authored by Claude Opus 5.5
parent 231c8ca0a5
commit 0bd90e5b5e
2 changed files with 16 additions and 2 deletions
+1 -1
View File
@@ -1 +1 @@
5f5d03a47e58d1ea1e3970ad141ec24bd6c5f068
8abf547bcf477d53bf01ae13ebee130d3e529a0e
@@ -16,6 +16,7 @@ highlighted, a workspace page inside Pages with that page highlighted.
import { pageKey, parsePreviewItemRoute, type PreviewTarget } from './sessions/previewRouter'
import { editPathFor, leafKeyFor, viewPathFor, type WorkspaceItem } from './workspacePicker'
import { base } from '$lib/base'
import { logFeatureUsage } from '$lib/utils/featureUsage'
import type { PageHeaderItem } from './pageHeaderRegistry.svelte'
let {
@@ -77,10 +78,23 @@ highlighted, a workspace page inside Pages with that page highlighted.
return undefined
}
/** The whole vocabulary of the `header_nav` / `pick` counter: what kind of destination was
* picked, never which one. */
type PickKey = 'page' | 'item_view' | 'item_edit'
function pickKey(target: PreviewTarget): PickKey | undefined {
if (target.type === 'page') return 'page'
if (target.type === 'item') return target.mode === 'view' ? 'item_view' : 'item_edit'
return undefined
}
function pick(target: PreviewTarget) {
isOpen = false
const href = hrefFor(target)
if (href) goto(withWorkspace(href))
if (!href) return
const key = pickKey(target)
if (key) logFeatureUsage('header_nav', 'pick', { key, workspace: actingWorkspaceId })
goto(withWorkspace(href))
}
</script>