()
| 236 | } |
| 237 | |
| 238 | function App(): JSX.Element { |
| 239 | const mountedAtRef = useRef(performance.now()) |
| 240 | const workspaceReadyLoggedRef = useRef(false) |
| 241 | const searchPaletteWarmupCleanupRef = useRef<(() => void) | null>(null) |
| 242 | const pendingOpenNoteRequestsRef = useRef<string[]>([]) |
| 243 | const vault = useStore((s) => s.vault) |
| 244 | const init = useStore((s) => s.init) |
| 245 | const workspaceRestored = useStore((s) => s.workspaceRestored) |
| 246 | const searchOpen = useStore((s) => s.searchOpen) |
| 247 | const setSearchOpen = useStore((s) => s.setSearchOpen) |
| 248 | const vaultTextSearchOpen = useStore((s) => s.vaultTextSearchOpen) |
| 249 | const setVaultTextSearchOpen = useStore((s) => s.setVaultTextSearchOpen) |
| 250 | const commandPaletteOpen = useStore((s) => s.commandPaletteOpen) |
| 251 | const setCommandPaletteOpen = useStore((s) => s.setCommandPaletteOpen) |
| 252 | const bufferPaletteOpen = useStore((s) => s.bufferPaletteOpen) |
| 253 | const setBufferPaletteOpen = useStore((s) => s.setBufferPaletteOpen) |
| 254 | const outlinePaletteOpen = useStore((s) => s.outlinePaletteOpen) |
| 255 | const setOutlinePaletteOpen = useStore((s) => s.setOutlinePaletteOpen) |
| 256 | const templatePaletteOpen = useStore((s) => s.templatePaletteOpen) |
| 257 | const setTemplatePaletteOpen = useStore((s) => s.setTemplatePaletteOpen) |
| 258 | const sidebarOpen = useStore((s) => s.sidebarOpen) |
| 259 | const noteListOpen = useStore((s) => s.noteListOpen) |
| 260 | const zenMode = useStore((s) => s.zenMode) |
| 261 | const paneLayout = useStore((s) => s.paneLayout) |
| 262 | const activePaneId = useStore((s) => s.activePaneId) |
| 263 | const view = useStore((s) => s.view) |
| 264 | const selectedPath = useStore((s) => s.selectedPath) |
| 265 | const selectedTags = useStore((s) => s.selectedTags) |
| 266 | const noteRefs = useStore((s) => s.noteRefs) |
| 267 | const pinnedRefPath = useStore((s) => s.pinnedRefPath) |
| 268 | const pinnedRefVisible = useStore((s) => s.pinnedRefVisible) |
| 269 | const unifiedSidebar = useStore((s) => s.unifiedSidebar) |
| 270 | const settingsOpen = useStore((s) => s.settingsOpen) |
| 271 | const setSettingsOpen = useStore((s) => s.setSettingsOpen) |
| 272 | const themeId = useStore((s) => s.themeId) |
| 273 | const themeFamily = useStore((s) => s.themeFamily) |
| 274 | const themeMode = useStore((s) => s.themeMode) |
| 275 | const customThemes = useStore((s) => s.customThemes) |
| 276 | const overrides = useStore((s) => s.overrides) |
| 277 | const enabledOverrides = useStore((s) => s.enabledOverrides) |
| 278 | const themeTweaks = useStore((s) => s.themeTweaks) |
| 279 | const editorFontSize = useStore((s) => s.editorFontSize) |
| 280 | const editorLineHeight = useStore((s) => s.editorLineHeight) |
| 281 | const previewMaxWidth = useStore((s) => s.previewMaxWidth) |
| 282 | const editorMaxWidth = useStore((s) => s.editorMaxWidth) |
| 283 | const contentAlign = useStore((s) => s.contentAlign) |
| 284 | const lineNumberPosition = useStore((s) => s.lineNumberPosition) |
| 285 | const interfaceFont = useStore((s) => s.interfaceFont) |
| 286 | const textFont = useStore((s) => s.textFont) |
| 287 | const monoFont = useStore((s) => s.monoFont) |
| 288 | const darkSidebar = useStore((s) => s.darkSidebar) |
| 289 | const hasCompletedOnboarding = useStore((s) => s.hasCompletedOnboarding) |
| 290 | const persistWorkspace = useStore((s) => s.persistWorkspace) |
| 291 | const flushDirtyNotes = useStore((s) => s.flushDirtyNotes) |
| 292 | const activePinnedRefPath = useMemo( |
| 293 | () => (selectedPath ? noteRefs[selectedPath]?.path ?? pinnedRefPath : pinnedRefPath), |
| 294 | [noteRefs, pinnedRefPath, selectedPath] |
| 295 | ) |
nothing calls this directly
no test coverage detected