feat: publish HoloLake model-native living system source

This commit is contained in:
冰朔 2026-08-03 10:04:41 +08:00
commit c395dd3a99
2467 changed files with 615073 additions and 0 deletions

View file

@ -0,0 +1,40 @@
import { useEffect, useRef } from 'react'
import { trackEvent } from '../lib/telemetry'
import type { GitRepoState } from './useGitSetupState'
interface UseVaultOpenedTelemetryArgs {
entryCount: number
gitRepoState: GitRepoState
resolvedPath: string
}
function shouldTrackVaultOpened(
entryCount: number,
gitRepoState: GitRepoState,
resolvedPath: string,
previousPath: string,
): boolean {
const hasEntries = entryCount > 0
const gitStateKnown = gitRepoState !== 'checking'
const vaultChanged = resolvedPath !== previousPath
return hasEntries && gitStateKnown && vaultChanged
}
export function useVaultOpenedTelemetry({
entryCount,
gitRepoState,
resolvedPath,
}: UseVaultOpenedTelemetryArgs): void {
const vaultOpenedRef = useRef('')
useEffect(() => {
if (!shouldTrackVaultOpened(entryCount, gitRepoState, resolvedPath, vaultOpenedRef.current)) return
vaultOpenedRef.current = resolvedPath
trackEvent('vault_opened', {
has_git: gitRepoState === 'ready' ? 1 : 0,
note_count: entryCount,
})
}, [entryCount, gitRepoState, resolvedPath])
}