diff --git a/backend/ee-repo-ref.txt b/backend/ee-repo-ref.txt index 36f5ba0252..b92be1325c 100644 --- a/backend/ee-repo-ref.txt +++ b/backend/ee-repo-ref.txt @@ -1 +1 @@ -5f5d03a47e58d1ea1e3970ad141ec24bd6c5f068 +8abf547bcf477d53bf01ae13ebee130d3e529a0e diff --git a/frontend/src/lib/components/BreadcrumbNavPicker.svelte b/frontend/src/lib/components/BreadcrumbNavPicker.svelte index ad84e668cd..c72fa944e7 100644 --- a/frontend/src/lib/components/BreadcrumbNavPicker.svelte +++ b/frontend/src/lib/components/BreadcrumbNavPicker.svelte @@ -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)) }