@vizejs/fresco 0.290.0 → 0.302.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"composables-BKj30tnc.mjs","names":[],"sources":["../src/composables/useIme.ts","../src/composables/useWindowSize.ts","../src/composables/useAnimation.ts","../src/composables/useBoxMetrics.ts"],"sourcesContent":["/**\n * useIme - IME (Input Method Editor) composable\n */\n\nimport { ref, computed, type Ref } from \"@vue/runtime-core\";\n\nexport interface UseImeOptions {\n /** Initial IME mode */\n mode?: ImeMode;\n /** Called when IME mode changes */\n onModeChange?: (mode: ImeMode) => void;\n /** Called when composition updates */\n onCompositionUpdate?: (text: string, cursor: number) => void;\n /** Called when text is committed */\n onCommit?: (text: string) => void;\n}\n\nexport type ImeMode =\n | \"direct\"\n | \"hiragana\"\n | \"katakana\"\n | \"half-katakana\"\n | \"full-alpha\"\n | \"pinyin\"\n | \"hangul\";\n\nexport interface ImeManager {\n /** Whether IME is active */\n isActive: Ref<boolean>;\n /** Current input mode */\n mode: Ref<ImeMode>;\n /** Whether currently composing */\n isComposing: Ref<boolean>;\n /** Preedit text */\n preedit: Ref<string>;\n /** Cursor position in preedit */\n preeditCursor: Ref<number>;\n /** Candidate list */\n candidates: Ref<string[]>;\n /** Selected candidate index */\n selectedCandidate: Ref<number>;\n /** Mode display name */\n modeDisplay: Ref<string>;\n /** Enable IME */\n enable: () => void;\n /** Disable IME */\n disable: () => void;\n /** Set input mode */\n setMode: (mode: ImeMode) => void;\n /** Handle key event for IME */\n handleKey: (key: string, modifiers: { ctrl: boolean; alt: boolean }) => boolean;\n /** Commit current composition */\n commit: () => void;\n /** Cancel current composition */\n cancel: () => void;\n /** Select next candidate */\n nextCandidate: () => void;\n /** Select previous candidate */\n prevCandidate: () => void;\n /** Select candidate by number (1-9) */\n selectCandidate: (num: number) => void;\n}\n\nconst MODE_DISPLAY: Record<ImeMode, string> = {\n direct: \"A\",\n hiragana: \"あ\",\n katakana: \"ア\",\n \"half-katakana\": \"ア\",\n \"full-alpha\": \"A\",\n pinyin: \"拼\",\n hangul: \"한\",\n};\n\nexport function useIme(options: UseImeOptions = {}): ImeManager {\n const { mode: initialMode = \"direct\", onModeChange, onCompositionUpdate, onCommit } = options;\n\n const isActive = ref(false);\n const mode = ref<ImeMode>(initialMode);\n const isComposing = ref(false);\n const preedit = ref(\"\");\n const preeditCursor = ref(0);\n const candidates = ref<string[]>([]);\n const selectedCandidate = ref(0);\n\n const modeDisplay = computed(() => MODE_DISPLAY[mode.value] ?? \"A\");\n\n const enable = () => {\n isActive.value = true;\n };\n\n const disable = () => {\n isActive.value = false;\n cancel();\n };\n\n const setMode = (newMode: ImeMode) => {\n if (mode.value !== newMode) {\n cancel();\n mode.value = newMode;\n onModeChange?.(newMode);\n }\n };\n\n const handleKey = (key: string, modifiers: { ctrl: boolean; alt: boolean }): boolean => {\n if (!isActive.value || mode.value === \"direct\") {\n return false;\n }\n\n // IME mode toggle (usually Ctrl+Space or similar)\n // If we're here, mode is not 'direct' (filtered above), so toggle to 'direct'\n if (modifiers.ctrl && key === \" \") {\n setMode(\"direct\");\n return true;\n }\n\n // Handle composition\n if (isComposing.value) {\n switch (key) {\n case \"enter\":\n commit();\n return true;\n case \"escape\":\n cancel();\n return true;\n case \"backspace\":\n if (preedit.value.length > 0) {\n preedit.value = preedit.value.slice(0, -1);\n preeditCursor.value = Math.min(preeditCursor.value, preedit.value.length);\n onCompositionUpdate?.(preedit.value, preeditCursor.value);\n return true;\n }\n break;\n case \"space\":\n // Convert / select candidate\n if (candidates.value.length > 0) {\n nextCandidate();\n return true;\n }\n break;\n }\n\n // Number for candidate selection\n if (/^[1-9]$/.test(key)) {\n selectCandidate(parseInt(key, 10));\n return true;\n }\n }\n\n // Start/continue composition for printable characters\n if (key.length === 1 && !modifiers.ctrl && !modifiers.alt) {\n if (!isComposing.value) {\n isComposing.value = true;\n }\n preedit.value += key;\n preeditCursor.value = preedit.value.length;\n onCompositionUpdate?.(preedit.value, preeditCursor.value);\n return true;\n }\n\n return false;\n };\n\n const commit = () => {\n if (preedit.value) {\n const text = candidates.value[selectedCandidate.value] ?? preedit.value;\n onCommit?.(text);\n }\n preedit.value = \"\";\n preeditCursor.value = 0;\n candidates.value = [];\n selectedCandidate.value = 0;\n isComposing.value = false;\n };\n\n const cancel = () => {\n preedit.value = \"\";\n preeditCursor.value = 0;\n candidates.value = [];\n selectedCandidate.value = 0;\n isComposing.value = false;\n };\n\n const nextCandidate = () => {\n if (candidates.value.length > 0) {\n selectedCandidate.value = (selectedCandidate.value + 1) % candidates.value.length;\n }\n };\n\n const prevCandidate = () => {\n if (candidates.value.length > 0) {\n selectedCandidate.value =\n (selectedCandidate.value - 1 + candidates.value.length) % candidates.value.length;\n }\n };\n\n const selectCandidate = (num: number) => {\n if (num >= 1 && num <= candidates.value.length) {\n selectedCandidate.value = num - 1;\n commit();\n }\n };\n\n return {\n isActive,\n mode,\n isComposing,\n preedit,\n preeditCursor,\n candidates,\n selectedCandidate,\n modeDisplay,\n enable,\n disable,\n setMode,\n handleKey,\n commit,\n cancel,\n nextCandidate,\n prevCandidate,\n selectCandidate,\n };\n}\n","/**\n * useWindowSize - terminal dimensions.\n */\n\nimport { reactive } from \"@vue/runtime-core\";\nimport { useApp } from \"./useApp.js\";\n\nexport interface WindowSize {\n columns: number;\n rows: number;\n}\n\nexport function useWindowSize() {\n const { width, height } = useApp();\n\n return reactive({\n get columns() {\n return width.value;\n },\n get rows() {\n return height.value;\n },\n }) as WindowSize;\n}\n","/**\n * useAnimation - Ink-compatible shared animation state.\n */\n\nimport { computed, onMounted, onUnmounted, reactive, watch } from \"@vue/runtime-core\";\n\nexport interface UseAnimationOptions {\n /** Time between ticks in milliseconds */\n interval?: number;\n /** Whether the animation is running */\n isActive?: boolean;\n}\n\nexport interface AnimationResult {\n frame: number;\n time: number;\n delta: number;\n reset: () => void;\n}\n\nconst defaultAnimationInterval = 100;\nconst maximumTimerInterval = 2_147_483_647;\n\ntype AnimationCallback = (currentTime: number) => void;\n\ninterface AnimationSubscriber {\n callback: AnimationCallback;\n interval: number;\n startTime: number;\n nextDueTime: number;\n}\n\nconst animationSubscribers = new Map<AnimationCallback, AnimationSubscriber>();\nlet animationTimer: ReturnType<typeof setTimeout> | null = null;\n\nfunction currentTime(): number {\n return performance.now();\n}\n\nfunction normalizeAnimationInterval(interval: number): number {\n if (!Number.isFinite(interval)) {\n return defaultAnimationInterval;\n }\n\n return Math.min(maximumTimerInterval, Math.max(1, interval));\n}\n\nfunction clearAnimationTimer() {\n if (!animationTimer) return;\n clearTimeout(animationTimer);\n animationTimer = null;\n}\n\nfunction scheduleAnimationTick() {\n clearAnimationTimer();\n if (animationSubscribers.size === 0) return;\n\n let nextDueTime = Number.POSITIVE_INFINITY;\n for (const subscriber of animationSubscribers.values()) {\n nextDueTime = Math.min(nextDueTime, subscriber.nextDueTime);\n }\n\n animationTimer = setTimeout(\n () => {\n animationTimer = null;\n const now = currentTime();\n\n for (const subscriber of animationSubscribers.values()) {\n if (now < subscriber.nextDueTime) continue;\n\n subscriber.callback(now);\n\n const elapsedTime = now - subscriber.startTime;\n const elapsedFrames = Math.floor(elapsedTime / subscriber.interval) + 1;\n subscriber.nextDueTime = subscriber.startTime + elapsedFrames * subscriber.interval;\n }\n\n scheduleAnimationTick();\n },\n Math.max(0, nextDueTime - currentTime()),\n );\n}\n\nfunction subscribeToAnimation(callback: AnimationCallback, interval: number) {\n const startTime = currentTime();\n animationSubscribers.set(callback, {\n callback,\n interval,\n startTime,\n nextDueTime: startTime + interval,\n });\n scheduleAnimationTick();\n\n return {\n startTime,\n unsubscribe() {\n animationSubscribers.delete(callback);\n scheduleAnimationTick();\n },\n };\n}\n\nexport function useAnimation(options: UseAnimationOptions = {}): AnimationResult {\n const safeInterval = computed(() =>\n normalizeAnimationInterval(options.interval ?? defaultAnimationInterval),\n );\n const active = computed(() => options.isActive ?? true);\n let unsubscribe: (() => void) | null = null;\n let startedAt = currentTime();\n let previousTick = startedAt;\n\n const state = reactive<AnimationResult>({\n frame: 0,\n time: 0,\n delta: 0,\n reset: () => {\n if (active.value) {\n start();\n } else {\n resetState(currentTime());\n }\n },\n });\n\n const resetState = (now: number) => {\n startedAt = now;\n previousTick = now;\n state.frame = 0;\n state.time = 0;\n state.delta = 0;\n };\n\n const tick = (now: number) => {\n const elapsed = now - startedAt;\n state.frame = Math.floor(elapsed / safeInterval.value);\n state.time = elapsed;\n state.delta = now - previousTick;\n previousTick = now;\n };\n\n const stop = () => {\n unsubscribe?.();\n unsubscribe = null;\n };\n\n const start = () => {\n stop();\n resetState(currentTime());\n const subscription = subscribeToAnimation(tick, safeInterval.value);\n startedAt = subscription.startTime;\n previousTick = subscription.startTime;\n unsubscribe = () => subscription.unsubscribe();\n };\n\n onMounted(() => {\n if (active.value) {\n start();\n }\n });\n\n watch([active, safeInterval], ([isActive]) => {\n if (isActive) {\n start();\n } else {\n stop();\n }\n });\n\n onUnmounted(stop);\n\n return state;\n}\n","/**\n * useBoxMetrics - best-effort layout metrics for a rendered Fresco node.\n */\n\nimport { onMounted, onUnmounted, reactive, type Ref } from \"@vue/runtime-core\";\nimport { getLastRenderLayout, updateLastRenderLayouts, type DOMElement } from \"../layoutMetrics.js\";\n\nexport interface BoxMetrics {\n width: number;\n height: number;\n left: number;\n top: number;\n}\n\nexport interface UseBoxMetricsResult extends BoxMetrics {\n hasMeasured: boolean;\n}\n\nexport type MetricTarget = DOMElement;\n\nasync function loadNative() {\n return import(\"@vizejs/fresco-native\");\n}\n\nfunction targetId(target: MetricTarget | null | undefined): number | undefined {\n return target?.id ?? target?.$el?.id;\n}\n\nexport function useBoxMetrics(ref: Ref<MetricTarget | null>): UseBoxMetricsResult {\n const metrics = reactive<UseBoxMetricsResult>({\n width: 0,\n height: 0,\n left: 0,\n top: 0,\n hasMeasured: false,\n });\n\n let timer: ReturnType<typeof setInterval> | null = null;\n\n const refresh = () => {\n const id = targetId(ref.value);\n if (id === undefined) {\n metrics.width = 0;\n metrics.height = 0;\n metrics.left = 0;\n metrics.top = 0;\n metrics.hasMeasured = false;\n return;\n }\n\n void loadNative()\n .then((native) => {\n const layouts = \"getLastRenderLayouts\" in native ? native.getLastRenderLayouts() : [];\n updateLastRenderLayouts(layouts);\n const layout = layouts.find((item: { id: number }) => item.id === id);\n if (!layout) return;\n\n metrics.width = layout.width;\n metrics.height = layout.height;\n metrics.left = layout.x;\n metrics.top = layout.y;\n metrics.hasMeasured = true;\n })\n .catch(() => {});\n };\n\n onMounted(() => {\n const layout = getLastRenderLayout(ref.value);\n if (layout) {\n metrics.width = layout.width;\n metrics.height = layout.height;\n metrics.left = layout.x;\n metrics.top = layout.y;\n metrics.hasMeasured = true;\n }\n\n refresh();\n timer = setInterval(refresh, 100);\n });\n\n onUnmounted(() => {\n if (timer) clearInterval(timer);\n });\n\n return metrics;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"composables-D9lN8Kdo.mjs","names":[],"sources":["../src/composables/useIme.ts","../src/composables/useWindowSize.ts","../src/composables/useAnimation.ts","../src/composables/useBoxMetrics.ts"],"sourcesContent":["/**\n * useIme - IME (Input Method Editor) composable\n */\n\nimport { ref, computed, type Ref } from \"@vue/runtime-core\";\n\nexport interface UseImeOptions {\n /** Initial IME mode */\n mode?: ImeMode;\n /** Called when IME mode changes */\n onModeChange?: (mode: ImeMode) => void;\n /** Called when composition updates */\n onCompositionUpdate?: (text: string, cursor: number) => void;\n /** Called when text is committed */\n onCommit?: (text: string) => void;\n}\n\nexport type ImeMode =\n | \"direct\"\n | \"hiragana\"\n | \"katakana\"\n | \"half-katakana\"\n | \"full-alpha\"\n | \"pinyin\"\n | \"hangul\";\n\nexport interface ImeManager {\n /** Whether IME is active */\n isActive: Ref<boolean>;\n /** Current input mode */\n mode: Ref<ImeMode>;\n /** Whether currently composing */\n isComposing: Ref<boolean>;\n /** Preedit text */\n preedit: Ref<string>;\n /** Cursor position in preedit */\n preeditCursor: Ref<number>;\n /** Candidate list */\n candidates: Ref<string[]>;\n /** Selected candidate index */\n selectedCandidate: Ref<number>;\n /** Mode display name */\n modeDisplay: Ref<string>;\n /** Enable IME */\n enable: () => void;\n /** Disable IME */\n disable: () => void;\n /** Set input mode */\n setMode: (mode: ImeMode) => void;\n /** Handle key event for IME */\n handleKey: (key: string, modifiers: { ctrl: boolean; alt: boolean }) => boolean;\n /** Commit current composition */\n commit: () => void;\n /** Cancel current composition */\n cancel: () => void;\n /** Select next candidate */\n nextCandidate: () => void;\n /** Select previous candidate */\n prevCandidate: () => void;\n /** Select candidate by number (1-9) */\n selectCandidate: (num: number) => void;\n}\n\nconst MODE_DISPLAY: Record<ImeMode, string> = {\n direct: \"A\",\n hiragana: \"あ\",\n katakana: \"ア\",\n \"half-katakana\": \"ア\",\n \"full-alpha\": \"A\",\n pinyin: \"拼\",\n hangul: \"한\",\n};\n\nexport function useIme(options: UseImeOptions = {}): ImeManager {\n const { mode: initialMode = \"direct\", onModeChange, onCompositionUpdate, onCommit } = options;\n\n const isActive = ref(false);\n const mode = ref<ImeMode>(initialMode);\n const isComposing = ref(false);\n const preedit = ref(\"\");\n const preeditCursor = ref(0);\n const candidates = ref<string[]>([]);\n const selectedCandidate = ref(0);\n\n const modeDisplay = computed(() => MODE_DISPLAY[mode.value] ?? \"A\");\n\n const enable = () => {\n isActive.value = true;\n };\n\n const disable = () => {\n isActive.value = false;\n cancel();\n };\n\n const setMode = (newMode: ImeMode) => {\n if (mode.value !== newMode) {\n cancel();\n mode.value = newMode;\n onModeChange?.(newMode);\n }\n };\n\n const handleKey = (key: string, modifiers: { ctrl: boolean; alt: boolean }): boolean => {\n if (!isActive.value || mode.value === \"direct\") {\n return false;\n }\n\n // IME mode toggle (usually Ctrl+Space or similar)\n // If we're here, mode is not 'direct' (filtered above), so toggle to 'direct'\n if (modifiers.ctrl && key === \" \") {\n setMode(\"direct\");\n return true;\n }\n\n // Handle composition\n if (isComposing.value) {\n switch (key) {\n case \"enter\":\n commit();\n return true;\n case \"escape\":\n cancel();\n return true;\n case \"backspace\":\n if (preedit.value.length > 0) {\n preedit.value = preedit.value.slice(0, -1);\n preeditCursor.value = Math.min(preeditCursor.value, preedit.value.length);\n onCompositionUpdate?.(preedit.value, preeditCursor.value);\n return true;\n }\n break;\n case \"space\":\n // Convert / select candidate\n if (candidates.value.length > 0) {\n nextCandidate();\n return true;\n }\n break;\n }\n\n // Number for candidate selection\n if (/^[1-9]$/.test(key)) {\n selectCandidate(parseInt(key, 10));\n return true;\n }\n }\n\n // Start/continue composition for printable characters\n if (key.length === 1 && !modifiers.ctrl && !modifiers.alt) {\n if (!isComposing.value) {\n isComposing.value = true;\n }\n preedit.value += key;\n preeditCursor.value = preedit.value.length;\n onCompositionUpdate?.(preedit.value, preeditCursor.value);\n return true;\n }\n\n return false;\n };\n\n const commit = () => {\n if (preedit.value) {\n const text = candidates.value[selectedCandidate.value] ?? preedit.value;\n onCommit?.(text);\n }\n preedit.value = \"\";\n preeditCursor.value = 0;\n candidates.value = [];\n selectedCandidate.value = 0;\n isComposing.value = false;\n };\n\n const cancel = () => {\n preedit.value = \"\";\n preeditCursor.value = 0;\n candidates.value = [];\n selectedCandidate.value = 0;\n isComposing.value = false;\n };\n\n const nextCandidate = () => {\n if (candidates.value.length > 0) {\n selectedCandidate.value = (selectedCandidate.value + 1) % candidates.value.length;\n }\n };\n\n const prevCandidate = () => {\n if (candidates.value.length > 0) {\n selectedCandidate.value =\n (selectedCandidate.value - 1 + candidates.value.length) % candidates.value.length;\n }\n };\n\n const selectCandidate = (num: number) => {\n if (num >= 1 && num <= candidates.value.length) {\n selectedCandidate.value = num - 1;\n commit();\n }\n };\n\n return {\n isActive,\n mode,\n isComposing,\n preedit,\n preeditCursor,\n candidates,\n selectedCandidate,\n modeDisplay,\n enable,\n disable,\n setMode,\n handleKey,\n commit,\n cancel,\n nextCandidate,\n prevCandidate,\n selectCandidate,\n };\n}\n","/**\n * useWindowSize - terminal dimensions.\n */\n\nimport { reactive } from \"@vue/runtime-core\";\nimport { useApp } from \"./useApp.js\";\n\nexport interface WindowSize {\n columns: number;\n rows: number;\n}\n\nexport function useWindowSize() {\n const { width, height } = useApp();\n\n return reactive({\n get columns() {\n return width.value;\n },\n get rows() {\n return height.value;\n },\n }) as WindowSize;\n}\n","/**\n * useAnimation - Ink-compatible shared animation state.\n */\n\nimport { computed, onMounted, onUnmounted, reactive, watch } from \"@vue/runtime-core\";\n\nexport interface UseAnimationOptions {\n /** Time between ticks in milliseconds */\n interval?: number;\n /** Whether the animation is running */\n isActive?: boolean;\n}\n\nexport interface AnimationResult {\n frame: number;\n time: number;\n delta: number;\n reset: () => void;\n}\n\nconst defaultAnimationInterval = 100;\nconst maximumTimerInterval = 2_147_483_647;\n\ntype AnimationCallback = (currentTime: number) => void;\n\ninterface AnimationSubscriber {\n callback: AnimationCallback;\n interval: number;\n startTime: number;\n nextDueTime: number;\n}\n\nconst animationSubscribers = new Map<AnimationCallback, AnimationSubscriber>();\nlet animationTimer: ReturnType<typeof setTimeout> | null = null;\n\nfunction currentTime(): number {\n return performance.now();\n}\n\nfunction normalizeAnimationInterval(interval: number): number {\n if (!Number.isFinite(interval)) {\n return defaultAnimationInterval;\n }\n\n return Math.min(maximumTimerInterval, Math.max(1, interval));\n}\n\nfunction clearAnimationTimer() {\n if (!animationTimer) return;\n clearTimeout(animationTimer);\n animationTimer = null;\n}\n\nfunction scheduleAnimationTick() {\n clearAnimationTimer();\n if (animationSubscribers.size === 0) return;\n\n let nextDueTime = Number.POSITIVE_INFINITY;\n for (const subscriber of animationSubscribers.values()) {\n nextDueTime = Math.min(nextDueTime, subscriber.nextDueTime);\n }\n\n animationTimer = setTimeout(\n () => {\n animationTimer = null;\n const now = currentTime();\n\n for (const subscriber of animationSubscribers.values()) {\n if (now < subscriber.nextDueTime) continue;\n\n subscriber.callback(now);\n\n const elapsedTime = now - subscriber.startTime;\n const elapsedFrames = Math.floor(elapsedTime / subscriber.interval) + 1;\n subscriber.nextDueTime = subscriber.startTime + elapsedFrames * subscriber.interval;\n }\n\n scheduleAnimationTick();\n },\n Math.max(0, nextDueTime - currentTime()),\n );\n}\n\nfunction subscribeToAnimation(callback: AnimationCallback, interval: number) {\n const startTime = currentTime();\n animationSubscribers.set(callback, {\n callback,\n interval,\n startTime,\n nextDueTime: startTime + interval,\n });\n scheduleAnimationTick();\n\n return {\n startTime,\n unsubscribe() {\n animationSubscribers.delete(callback);\n scheduleAnimationTick();\n },\n };\n}\n\nexport function useAnimation(options: UseAnimationOptions = {}): AnimationResult {\n const safeInterval = computed(() =>\n normalizeAnimationInterval(options.interval ?? defaultAnimationInterval),\n );\n const active = computed(() => options.isActive ?? true);\n let unsubscribe: (() => void) | null = null;\n let startedAt = currentTime();\n let previousTick = startedAt;\n\n const state = reactive<AnimationResult>({\n frame: 0,\n time: 0,\n delta: 0,\n reset: () => {\n if (active.value) {\n start();\n } else {\n resetState(currentTime());\n }\n },\n });\n\n const resetState = (now: number) => {\n startedAt = now;\n previousTick = now;\n state.frame = 0;\n state.time = 0;\n state.delta = 0;\n };\n\n const tick = (now: number) => {\n const elapsed = now - startedAt;\n state.frame = Math.floor(elapsed / safeInterval.value);\n state.time = elapsed;\n state.delta = now - previousTick;\n previousTick = now;\n };\n\n const stop = () => {\n unsubscribe?.();\n unsubscribe = null;\n };\n\n const start = () => {\n stop();\n resetState(currentTime());\n const subscription = subscribeToAnimation(tick, safeInterval.value);\n startedAt = subscription.startTime;\n previousTick = subscription.startTime;\n unsubscribe = () => subscription.unsubscribe();\n };\n\n onMounted(() => {\n if (active.value) {\n start();\n }\n });\n\n watch([active, safeInterval], ([isActive]) => {\n if (isActive) {\n start();\n } else {\n stop();\n }\n });\n\n onUnmounted(stop);\n\n return state;\n}\n","/**\n * useBoxMetrics - best-effort layout metrics for a rendered Fresco node.\n */\n\nimport { onMounted, onUnmounted, reactive, type Ref } from \"@vue/runtime-core\";\nimport { getLastRenderLayout, updateLastRenderLayouts, type DOMElement } from \"../layoutMetrics.js\";\n\nexport interface BoxMetrics {\n width: number;\n height: number;\n left: number;\n top: number;\n}\n\nexport interface UseBoxMetricsResult extends BoxMetrics {\n hasMeasured: boolean;\n}\n\nexport type MetricTarget = DOMElement;\n\nasync function loadNative() {\n return import(\"@vizejs/fresco-native\");\n}\n\nfunction targetId(target: MetricTarget | null | undefined): number | undefined {\n return target?.id ?? target?.$el?.id;\n}\n\nexport function useBoxMetrics(ref: Ref<MetricTarget | null>): UseBoxMetricsResult {\n const metrics = reactive<UseBoxMetricsResult>({\n width: 0,\n height: 0,\n left: 0,\n top: 0,\n hasMeasured: false,\n });\n\n let timer: ReturnType<typeof setInterval> | null = null;\n\n const refresh = () => {\n const id = targetId(ref.value);\n if (id === undefined) {\n metrics.width = 0;\n metrics.height = 0;\n metrics.left = 0;\n metrics.top = 0;\n metrics.hasMeasured = false;\n return;\n }\n\n void loadNative()\n .then((native) => {\n const layouts = \"getLastRenderLayouts\" in native ? native.getLastRenderLayouts() : [];\n updateLastRenderLayouts(layouts);\n const layout = layouts.find((item: { id: number }) => item.id === id);\n if (!layout) return;\n\n metrics.width = layout.width;\n metrics.height = layout.height;\n metrics.left = layout.x;\n metrics.top = layout.y;\n metrics.hasMeasured = true;\n })\n .catch(() => {});\n };\n\n onMounted(() => {\n const layout = getLastRenderLayout(ref.value);\n if (layout) {\n metrics.width = layout.width;\n metrics.height = layout.height;\n metrics.left = layout.x;\n metrics.top = layout.y;\n metrics.hasMeasured = true;\n }\n\n refresh();\n timer = setInterval(refresh, 100);\n });\n\n onUnmounted(() => {\n if (timer) clearInterval(timer);\n });\n\n return metrics;\n}\n"],"mappings":";;;;;;AA+DA,MAAM,eAAwC;CAC5C,QAAQ;CACR,UAAU;CACV,UAAU;CACV,iBAAiB;CACjB,cAAc;CACd,QAAQ;CACR,QAAQ;CACT;AAED,SAAgB,OAAO,UAAyB,EAAE,EAAc;CAC9D,MAAM,EAAE,MAAM,cAAc,UAAU,cAAc,qBAAqB,aAAa;CAEtF,MAAM,WAAW,IAAI,MAAM;CAC3B,MAAM,OAAO,IAAa,YAAY;CACtC,MAAM,cAAc,IAAI,MAAM;CAC9B,MAAM,UAAU,IAAI,GAAG;CACvB,MAAM,gBAAgB,IAAI,EAAE;CAC5B,MAAM,aAAa,IAAc,EAAE,CAAC;CACpC,MAAM,oBAAoB,IAAI,EAAE;CAEhC,MAAM,cAAc,eAAe,aAAa,KAAK,UAAU,IAAI;CAEnE,MAAM,eAAe;EACnB,SAAS,QAAQ;;CAGnB,MAAM,gBAAgB;EACpB,SAAS,QAAQ;EACjB,QAAQ;;CAGV,MAAM,WAAW,YAAqB;EACpC,IAAI,KAAK,UAAU,SAAS;GAC1B,QAAQ;GACR,KAAK,QAAQ;GACb,eAAe,QAAQ;;;CAI3B,MAAM,aAAa,KAAa,cAAwD;EACtF,IAAI,CAAC,SAAS,SAAS,KAAK,UAAU,UACpC,OAAO;EAKT,IAAI,UAAU,QAAQ,QAAQ,KAAK;GACjC,QAAQ,SAAS;GACjB,OAAO;;EAIT,IAAI,YAAY,OAAO;GACrB,QAAQ,KAAR;IACE,KAAK;KACH,QAAQ;KACR,OAAO;IACT,KAAK;KACH,QAAQ;KACR,OAAO;IACT,KAAK;KACH,IAAI,QAAQ,MAAM,SAAS,GAAG;MAC5B,QAAQ,QAAQ,QAAQ,MAAM,MAAM,GAAG,GAAG;MAC1C,cAAc,QAAQ,KAAK,IAAI,cAAc,OAAO,QAAQ,MAAM,OAAO;MACzE,sBAAsB,QAAQ,OAAO,cAAc,MAAM;MACzD,OAAO;;KAET;IACF,KAAK;KAEH,IAAI,WAAW,MAAM,SAAS,GAAG;MAC/B,eAAe;MACf,OAAO;;KAET;;GAIJ,IAAI,UAAU,KAAK,IAAI,EAAE;IACvB,gBAAgB,SAAS,KAAK,GAAG,CAAC;IAClC,OAAO;;;EAKX,IAAI,IAAI,WAAW,KAAK,CAAC,UAAU,QAAQ,CAAC,UAAU,KAAK;GACzD,IAAI,CAAC,YAAY,OACf,YAAY,QAAQ;GAEtB,QAAQ,SAAS;GACjB,cAAc,QAAQ,QAAQ,MAAM;GACpC,sBAAsB,QAAQ,OAAO,cAAc,MAAM;GACzD,OAAO;;EAGT,OAAO;;CAGT,MAAM,eAAe;EACnB,IAAI,QAAQ,OAAO;GACjB,MAAM,OAAO,WAAW,MAAM,kBAAkB,UAAU,QAAQ;GAClE,WAAW,KAAK;;EAElB,QAAQ,QAAQ;EAChB,cAAc,QAAQ;EACtB,WAAW,QAAQ,EAAE;EACrB,kBAAkB,QAAQ;EAC1B,YAAY,QAAQ;;CAGtB,MAAM,eAAe;EACnB,QAAQ,QAAQ;EAChB,cAAc,QAAQ;EACtB,WAAW,QAAQ,EAAE;EACrB,kBAAkB,QAAQ;EAC1B,YAAY,QAAQ;;CAGtB,MAAM,sBAAsB;EAC1B,IAAI,WAAW,MAAM,SAAS,GAC5B,kBAAkB,SAAS,kBAAkB,QAAQ,KAAK,WAAW,MAAM;;CAI/E,MAAM,sBAAsB;EAC1B,IAAI,WAAW,MAAM,SAAS,GAC5B,kBAAkB,SACf,kBAAkB,QAAQ,IAAI,WAAW,MAAM,UAAU,WAAW,MAAM;;CAIjF,MAAM,mBAAmB,QAAgB;EACvC,IAAI,OAAO,KAAK,OAAO,WAAW,MAAM,QAAQ;GAC9C,kBAAkB,QAAQ,MAAM;GAChC,QAAQ;;;CAIZ,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;;;;;;;AChNH,SAAgB,gBAAgB;CAC9B,MAAM,EAAE,OAAO,WAAW,QAAQ;CAElC,OAAO,SAAS;EACd,IAAI,UAAU;GACZ,OAAO,MAAM;;EAEf,IAAI,OAAO;GACT,OAAO,OAAO;;EAEjB,CAAC;;;;;;;ACFJ,MAAM,2BAA2B;AACjC,MAAM,uBAAuB;AAW7B,MAAM,uCAAuB,IAAI,KAA6C;AAC9E,IAAI,iBAAuD;AAE3D,SAAS,cAAsB;CAC7B,OAAO,YAAY,KAAK;;AAG1B,SAAS,2BAA2B,UAA0B;CAC5D,IAAI,CAAC,OAAO,SAAS,SAAS,EAC5B,OAAO;CAGT,OAAO,KAAK,IAAI,sBAAsB,KAAK,IAAI,GAAG,SAAS,CAAC;;AAG9D,SAAS,sBAAsB;CAC7B,IAAI,CAAC,gBAAgB;CACrB,aAAa,eAAe;CAC5B,iBAAiB;;AAGnB,SAAS,wBAAwB;CAC/B,qBAAqB;CACrB,IAAI,qBAAqB,SAAS,GAAG;CAErC,IAAI,cAAc,OAAO;CACzB,KAAK,MAAM,cAAc,qBAAqB,QAAQ,EACpD,cAAc,KAAK,IAAI,aAAa,WAAW,YAAY;CAG7D,iBAAiB,iBACT;EACJ,iBAAiB;EACjB,MAAM,MAAM,aAAa;EAEzB,KAAK,MAAM,cAAc,qBAAqB,QAAQ,EAAE;GACtD,IAAI,MAAM,WAAW,aAAa;GAElC,WAAW,SAAS,IAAI;GAExB,MAAM,cAAc,MAAM,WAAW;GACrC,MAAM,gBAAgB,KAAK,MAAM,cAAc,WAAW,SAAS,GAAG;GACtE,WAAW,cAAc,WAAW,YAAY,gBAAgB,WAAW;;EAG7E,uBAAuB;IAEzB,KAAK,IAAI,GAAG,cAAc,aAAa,CAAC,CACzC;;AAGH,SAAS,qBAAqB,UAA6B,UAAkB;CAC3E,MAAM,YAAY,aAAa;CAC/B,qBAAqB,IAAI,UAAU;EACjC;EACA;EACA;EACA,aAAa,YAAY;EAC1B,CAAC;CACF,uBAAuB;CAEvB,OAAO;EACL;EACA,cAAc;GACZ,qBAAqB,OAAO,SAAS;GACrC,uBAAuB;;EAE1B;;AAGH,SAAgB,aAAa,UAA+B,EAAE,EAAmB;CAC/E,MAAM,eAAe,eACnB,2BAA2B,QAAQ,YAAY,yBAAyB,CACzE;CACD,MAAM,SAAS,eAAe,QAAQ,YAAY,KAAK;CACvD,IAAI,cAAmC;CACvC,IAAI,YAAY,aAAa;CAC7B,IAAI,eAAe;CAEnB,MAAM,QAAQ,SAA0B;EACtC,OAAO;EACP,MAAM;EACN,OAAO;EACP,aAAa;GACX,IAAI,OAAO,OACT,OAAO;QAEP,WAAW,aAAa,CAAC;;EAG9B,CAAC;CAEF,MAAM,cAAc,QAAgB;EAClC,YAAY;EACZ,eAAe;EACf,MAAM,QAAQ;EACd,MAAM,OAAO;EACb,MAAM,QAAQ;;CAGhB,MAAM,QAAQ,QAAgB;EAC5B,MAAM,UAAU,MAAM;EACtB,MAAM,QAAQ,KAAK,MAAM,UAAU,aAAa,MAAM;EACtD,MAAM,OAAO;EACb,MAAM,QAAQ,MAAM;EACpB,eAAe;;CAGjB,MAAM,aAAa;EACjB,eAAe;EACf,cAAc;;CAGhB,MAAM,cAAc;EAClB,MAAM;EACN,WAAW,aAAa,CAAC;EACzB,MAAM,eAAe,qBAAqB,MAAM,aAAa,MAAM;EACnE,YAAY,aAAa;EACzB,eAAe,aAAa;EAC5B,oBAAoB,aAAa,aAAa;;CAGhD,gBAAgB;EACd,IAAI,OAAO,OACT,OAAO;GAET;CAEF,MAAM,CAAC,QAAQ,aAAa,GAAG,CAAC,cAAc;EAC5C,IAAI,UACF,OAAO;OAEP,MAAM;GAER;CAEF,YAAY,KAAK;CAEjB,OAAO;;;;;;;ACtJT,eAAe,aAAa;CAC1B,OAAO,OAAO;;AAGhB,SAAS,SAAS,QAA6D;CAC7E,OAAO,QAAQ,MAAM,QAAQ,KAAK;;AAGpC,SAAgB,cAAc,KAAoD;CAChF,MAAM,UAAU,SAA8B;EAC5C,OAAO;EACP,QAAQ;EACR,MAAM;EACN,KAAK;EACL,aAAa;EACd,CAAC;CAEF,IAAI,QAA+C;CAEnD,MAAM,gBAAgB;EACpB,MAAM,KAAK,SAAS,IAAI,MAAM;EAC9B,IAAI,OAAO,KAAA,GAAW;GACpB,QAAQ,QAAQ;GAChB,QAAQ,SAAS;GACjB,QAAQ,OAAO;GACf,QAAQ,MAAM;GACd,QAAQ,cAAc;GACtB;;EAGF,YAAiB,CACd,MAAM,WAAW;GAChB,MAAM,UAAU,0BAA0B,SAAS,OAAO,sBAAsB,GAAG,EAAE;GACrF,wBAAwB,QAAQ;GAChC,MAAM,SAAS,QAAQ,MAAM,SAAyB,KAAK,OAAO,GAAG;GACrE,IAAI,CAAC,QAAQ;GAEb,QAAQ,QAAQ,OAAO;GACvB,QAAQ,SAAS,OAAO;GACxB,QAAQ,OAAO,OAAO;GACtB,QAAQ,MAAM,OAAO;GACrB,QAAQ,cAAc;IACtB,CACD,YAAY,GAAG;;CAGpB,gBAAgB;EACd,MAAM,SAAS,oBAAoB,IAAI,MAAM;EAC7C,IAAI,QAAQ;GACV,QAAQ,QAAQ,OAAO;GACvB,QAAQ,SAAS,OAAO;GACxB,QAAQ,OAAO,OAAO;GACtB,QAAQ,MAAM,OAAO;GACrB,QAAQ,cAAc;;EAGxB,SAAS;EACT,QAAQ,YAAY,SAAS,IAAI;GACjC;CAEF,kBAAkB;EAChB,IAAI,OAAO,cAAc,MAAM;GAC/B;CAEF,OAAO"}
@@ -215,10 +215,10 @@ declare const Box: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ext
215
215
  color: StringConstructor;
216
216
  bg: StringConstructor;
217
217
  backgroundColor: StringConstructor;
218
- "aria-label": StringConstructor;
219
- "aria-hidden": BooleanConstructor;
220
- "aria-role": PropType<BoxProps["aria-role"]>;
221
- "aria-state": PropType<BoxProps["aria-state"]>;
218
+ ariaLabel: StringConstructor;
219
+ ariaHidden: BooleanConstructor;
220
+ ariaRole: PropType<BoxProps["aria-role"]>;
221
+ ariaState: PropType<BoxProps["aria-state"]>;
222
222
  }>, () => _$_vue_runtime_core0.VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
223
223
  [key: string]: any;
224
224
  }> | null, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, {}, string, _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
@@ -289,10 +289,10 @@ declare const Box: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ext
289
289
  color: StringConstructor;
290
290
  bg: StringConstructor;
291
291
  backgroundColor: StringConstructor;
292
- "aria-label": StringConstructor;
293
- "aria-hidden": BooleanConstructor;
294
- "aria-role": PropType<BoxProps["aria-role"]>;
295
- "aria-state": PropType<BoxProps["aria-state"]>;
292
+ ariaLabel: StringConstructor;
293
+ ariaHidden: BooleanConstructor;
294
+ ariaRole: PropType<BoxProps["aria-role"]>;
295
+ ariaState: PropType<BoxProps["aria-state"]>;
296
296
  }>> & Readonly<{}>, {
297
297
  borderTop: boolean;
298
298
  borderRight: boolean;
@@ -303,7 +303,7 @@ declare const Box: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ext
303
303
  borderRightDimColor: boolean;
304
304
  borderBottomDimColor: boolean;
305
305
  borderLeftDimColor: boolean;
306
- "aria-hidden": boolean;
306
+ ariaHidden: boolean;
307
307
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
308
308
  //#endregion
309
309
  //#region src/components/Spacer.d.ts
@@ -354,8 +354,8 @@ declare const Divider: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0
354
354
  };
355
355
  titleFg: StringConstructor;
356
356
  }>> & Readonly<{}>, {
357
- fg: string;
358
357
  direction: "horizontal" | "vertical";
358
+ fg: string;
359
359
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
360
360
  //#endregion
361
361
  //#region src/components/Stack.d.ts
@@ -416,9 +416,9 @@ declare const Stack: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.E
416
416
  default: boolean;
417
417
  };
418
418
  }>> & Readonly<{}>, {
419
+ direction: "horizontal" | "vertical";
419
420
  wrap: boolean;
420
421
  gap: number;
421
- direction: "horizontal" | "vertical";
422
422
  align: "center" | "stretch" | "start" | "end" | undefined;
423
423
  justify: "center" | "start" | "end" | "between" | "around" | "evenly" | undefined;
424
424
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
@@ -559,9 +559,9 @@ declare const Card: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
559
559
  borderFg: StringConstructor;
560
560
  bg: StringConstructor;
561
561
  }>> & Readonly<{}>, {
562
+ titleFg: string;
562
563
  border: "none" | "single" | "double" | "rounded" | "heavy" | undefined;
563
564
  padding: number;
564
- titleFg: string;
565
565
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
566
566
  //#endregion
567
567
  //#region src/components/Text.d.ts
@@ -612,8 +612,8 @@ declare const Text: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
612
612
  underline: BooleanConstructor;
613
613
  strikethrough: BooleanConstructor;
614
614
  inverse: BooleanConstructor;
615
- "aria-label": StringConstructor;
616
- "aria-hidden": BooleanConstructor;
615
+ ariaLabel: StringConstructor;
616
+ ariaHidden: BooleanConstructor;
617
617
  }>, () => _$_vue_runtime_core0.VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
618
618
  [key: string]: any;
619
619
  }> | null, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, {}, string, _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
@@ -630,15 +630,15 @@ declare const Text: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
630
630
  underline: BooleanConstructor;
631
631
  strikethrough: BooleanConstructor;
632
632
  inverse: BooleanConstructor;
633
- "aria-label": StringConstructor;
634
- "aria-hidden": BooleanConstructor;
633
+ ariaLabel: StringConstructor;
634
+ ariaHidden: BooleanConstructor;
635
635
  }>> & Readonly<{}>, {
636
636
  bold: boolean;
637
- "aria-hidden": boolean;
637
+ ariaHidden: boolean;
638
+ underline: boolean;
638
639
  dim: boolean;
639
640
  dimColor: boolean;
640
641
  italic: boolean;
641
- underline: boolean;
642
642
  strikethrough: boolean;
643
643
  inverse: boolean;
644
644
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
@@ -809,12 +809,12 @@ declare const Code: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
809
809
  default: string;
810
810
  };
811
811
  }>> & Readonly<{}>, {
812
- border: "none" | "single" | "double" | "rounded" | undefined;
813
812
  fg: string;
813
+ border: "none" | "single" | "double" | "rounded" | undefined;
814
814
  lineNumbers: boolean;
815
+ lineNumberFg: string;
815
816
  startLine: number;
816
817
  highlightLines: number[];
817
- lineNumberFg: string;
818
818
  highlightBg: string;
819
819
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
820
820
  //#endregion
@@ -943,7 +943,7 @@ declare const TextInput: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_cor
943
943
  bg: StringConstructor;
944
944
  }>, () => _$_vue_runtime_core0.VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
945
945
  [key: string]: any;
946
- }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("cancel" | "compositionend" | "compositionstart" | "compositionupdate" | "submit" | "update:modelValue")[], "cancel" | "compositionend" | "compositionstart" | "compositionupdate" | "submit" | "update:modelValue", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
946
+ }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("update:modelValue" | "submit" | "cancel" | "compositionstart" | "compositionupdate" | "compositionend")[], "update:modelValue" | "submit" | "cancel" | "compositionstart" | "compositionupdate" | "compositionend", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
947
947
  modelValue: {
948
948
  type: StringConstructor;
949
949
  default: string;
@@ -972,17 +972,17 @@ declare const TextInput: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_cor
972
972
  fg: StringConstructor;
973
973
  bg: StringConstructor;
974
974
  }>> & Readonly<{
975
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
976
+ onSubmit?: ((...args: any[]) => any) | undefined;
975
977
  onCancel?: ((...args: any[]) => any) | undefined;
976
- onCompositionend?: ((...args: any[]) => any) | undefined;
977
978
  onCompositionstart?: ((...args: any[]) => any) | undefined;
978
979
  onCompositionupdate?: ((...args: any[]) => any) | undefined;
979
- onSubmit?: ((...args: any[]) => any) | undefined;
980
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
980
+ onCompositionend?: ((...args: any[]) => any) | undefined;
981
981
  }>, {
982
- focus: boolean;
983
982
  modelValue: string;
984
- placeholder: string;
985
983
  focused: boolean;
984
+ placeholder: string;
985
+ focus: boolean;
986
986
  mask: boolean;
987
987
  maskChar: string;
988
988
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
@@ -1109,10 +1109,10 @@ declare const TextArea: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core
1109
1109
  disabled: boolean;
1110
1110
  modelValue: string;
1111
1111
  focused: boolean;
1112
- lineNumbers: boolean;
1113
- lineNumberFg: string;
1114
1112
  rows: number;
1113
+ lineNumbers: boolean;
1115
1114
  placeholderFg: string;
1115
+ lineNumberFg: string;
1116
1116
  cursorLine: number;
1117
1117
  cursorColumn: number;
1118
1118
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
@@ -1176,7 +1176,7 @@ declare const Select: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.
1176
1176
  selectedBg: StringConstructor;
1177
1177
  }>, () => _$_vue_runtime_core0.VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
1178
1178
  [key: string]: any;
1179
- }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("select" | "update:modelValue")[], "select" | "update:modelValue", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
1179
+ }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("update:modelValue" | "select")[], "update:modelValue" | "select", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
1180
1180
  options: {
1181
1181
  type: PropType<SelectOption[]>;
1182
1182
  required: true;
@@ -1206,11 +1206,11 @@ declare const Select: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.
1206
1206
  };
1207
1207
  selectedBg: StringConstructor;
1208
1208
  }>> & Readonly<{
1209
- onSelect?: ((...args: any[]) => any) | undefined;
1210
1209
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
1210
+ onSelect?: ((...args: any[]) => any) | undefined;
1211
1211
  }>, {
1212
- placeholder: string;
1213
1212
  focused: boolean;
1213
+ placeholder: string;
1214
1214
  indicator: string;
1215
1215
  indicatorEmpty: string;
1216
1216
  selectedFg: string;
@@ -1267,7 +1267,7 @@ declare const Checkbox: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core
1267
1267
  };
1268
1268
  }>, () => _$_vue_runtime_core0.VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
1269
1269
  [key: string]: any;
1270
- }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
1270
+ }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
1271
1271
  modelValue: {
1272
1272
  type: BooleanConstructor;
1273
1273
  default: boolean;
@@ -1295,8 +1295,8 @@ declare const Checkbox: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core
1295
1295
  default: string;
1296
1296
  };
1297
1297
  }>> & Readonly<{
1298
- onChange?: ((...args: any[]) => any) | undefined;
1299
1298
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
1299
+ onChange?: ((...args: any[]) => any) | undefined;
1300
1300
  }>, {
1301
1301
  checked: string;
1302
1302
  disabled: boolean;
@@ -1356,7 +1356,7 @@ declare const RadioGroup: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_co
1356
1356
  };
1357
1357
  }>, () => _$_vue_runtime_core0.VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
1358
1358
  [key: string]: any;
1359
- }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
1359
+ }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
1360
1360
  options: {
1361
1361
  type: PropType<RadioOption[]>;
1362
1362
  required: true;
@@ -1381,11 +1381,11 @@ declare const RadioGroup: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_co
1381
1381
  default: string;
1382
1382
  };
1383
1383
  }>> & Readonly<{
1384
- onChange?: ((...args: any[]) => any) | undefined;
1385
1384
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
1385
+ onChange?: ((...args: any[]) => any) | undefined;
1386
1386
  }>, {
1387
- selected: string;
1388
1387
  direction: "horizontal" | "vertical";
1388
+ selected: string;
1389
1389
  selectedFg: string;
1390
1390
  unselected: string;
1391
1391
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
@@ -1804,8 +1804,8 @@ declare const Alert: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.E
1804
1804
  default: string;
1805
1805
  };
1806
1806
  }>> & Readonly<{}>, {
1807
- border: "none" | "single" | "double" | "rounded" | undefined;
1808
1807
  type: AlertType;
1808
+ border: "none" | "single" | "double" | "rounded" | undefined;
1809
1809
  showIcon: boolean;
1810
1810
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
1811
1811
  //#endregion
@@ -2031,10 +2031,10 @@ declare const Tooltip: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0
2031
2031
  default: string;
2032
2032
  };
2033
2033
  }>> & Readonly<{}>, {
2034
+ fg: string;
2034
2035
  position: TooltipPosition;
2035
2036
  visible: boolean;
2036
2037
  border: "none" | "single" | "rounded" | undefined;
2037
- fg: string;
2038
2038
  bg: string;
2039
2039
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
2040
2040
  //#endregion
@@ -2091,7 +2091,7 @@ declare const List: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
2091
2091
  selectedBg: StringConstructor;
2092
2092
  }>, () => VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
2093
2093
  [key: string]: any;
2094
- }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("select" | "update:modelValue")[], "select" | "update:modelValue", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
2094
+ }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("update:modelValue" | "select")[], "update:modelValue" | "select", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
2095
2095
  items: {
2096
2096
  type: PropType<ListItem[]>;
2097
2097
  required: true;
@@ -2117,8 +2117,8 @@ declare const List: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
2117
2117
  };
2118
2118
  selectedBg: StringConstructor;
2119
2119
  }>> & Readonly<{
2120
- onSelect?: ((...args: any[]) => any) | undefined;
2121
2120
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
2121
+ onSelect?: ((...args: any[]) => any) | undefined;
2122
2122
  }>, {
2123
2123
  focused: boolean;
2124
2124
  indicator: string;
@@ -2480,7 +2480,7 @@ declare const Tabs: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
2480
2480
  };
2481
2481
  }>, () => VNode<_$_vue_runtime_core0.RendererNode, _$_vue_runtime_core0.RendererElement, {
2482
2482
  [key: string]: any;
2483
- }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
2483
+ }>, {}, {}, {}, _$_vue_runtime_core0.ComponentOptionsMixin, _$_vue_runtime_core0.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _$_vue_runtime_core0.PublicProps, Readonly<_$_vue_runtime_core0.ExtractPropTypes<{
2484
2484
  tabs: {
2485
2485
  type: PropType<Tab[]>;
2486
2486
  required: true;
@@ -2505,8 +2505,8 @@ declare const Tabs: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.Ex
2505
2505
  default: boolean;
2506
2506
  };
2507
2507
  }>> & Readonly<{
2508
- onChange?: ((...args: any[]) => any) | undefined;
2509
2508
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
2509
+ onChange?: ((...args: any[]) => any) | undefined;
2510
2510
  }>, {
2511
2511
  position: "top" | "bottom";
2512
2512
  underline: boolean;
@@ -2782,11 +2782,11 @@ declare const Modal: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.E
2782
2782
  }>> & Readonly<{
2783
2783
  onClose?: ((...args: any[]) => any) | undefined;
2784
2784
  }>, {
2785
- visible: boolean;
2786
- border: "single" | "double" | "rounded" | "heavy" | undefined;
2787
2785
  width: string | number;
2788
2786
  height: string | number;
2789
2787
  titleFg: string;
2788
+ visible: boolean;
2789
+ border: "single" | "double" | "rounded" | "heavy" | undefined;
2790
2790
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
2791
2791
  //#endregion
2792
2792
  //#region src/components/StatusBar.d.ts
@@ -2914,8 +2914,8 @@ declare const Header: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.
2914
2914
  default: boolean;
2915
2915
  };
2916
2916
  }>> & Readonly<{}>, {
2917
- borderBottom: boolean;
2918
2917
  titleFg: string;
2918
+ borderBottom: boolean;
2919
2919
  subtitleFg: string;
2920
2920
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
2921
2921
  //#endregion
@@ -3062,11 +3062,11 @@ declare const Avatar: _$_vue_runtime_core0.DefineComponent<_$_vue_runtime_core0.
3062
3062
  type: PropType<AvatarProps["status"]>;
3063
3063
  };
3064
3064
  }>> & Readonly<{}>, {
3065
- border: boolean;
3066
3065
  fg: string;
3066
+ border: boolean;
3067
3067
  bg: string;
3068
3068
  size: "sm" | "md" | "lg";
3069
3069
  }, {}, {}, {}, string, _$_vue_runtime_core0.ComponentProvideOptions, true, {}, any>;
3070
3070
  //#endregion
3071
3071
  export { FormProps as $, TableColumn as A, HStack as At, TimerProps as B, Menu as C, NewlineProps as Ct, TreeNode as D, CardProps as Dt, Tree as E, Card as Et, Tooltip as F, DividerProps as Ft, AlertProps as G, BadgeProps as H, TooltipPosition as I, Spacer as It, ProgressBarProps as J, AlertType as K, TooltipProps as L, Box as Lt, List as M, StackProps as Mt, ListItem as N, VStack as Nt, TreeProps as O, Grid as Ot, ListProps as P, Divider as Pt, FormField as Q, Timer as R, BoxProps as Rt, TabsProps as S, Newline as St, MenuProps as T, TextProps as Tt, BadgeVariant as U, Badge as V, Alert as W, SpinnerProps as X, Spinner as Y, Form as Z, Breadcrumb as _, CodeProps as _t, KeyHintProps as a, Checkbox as at, Tab as b, Static as bt, StatusBar as c, SelectOption as ct, Modal as d, TextAreaProps as dt, Confirm as et, ModalProps as f, TextInput as ft, StepperProps as g, Code as gt, Stepper as h, LinkProps as ht, KeyHint as i, RadioOption as it, TableProps as j, Stack as jt, Table as k, GridProps as kt, StatusBarItem as l, SelectProps as lt, StepStatus as m, Link as mt, AvatarProps as n, RadioGroup as nt, Header as o, CheckboxProps as ot, Step as p, TextInputProps as pt, ProgressBar as q, KeyBinding as r, RadioGroupProps as rt, HeaderProps as s, Select as st, Avatar as t, ConfirmProps as tt, StatusBarProps as u, TextArea as ut, BreadcrumbItem as v, Transform as vt, MenuItem as w, Text as wt, Tabs as x, StaticProps as xt, BreadcrumbProps as y, TransformProps as yt, TimerMode as z, createRenderer$1 as zt };
3072
- //# sourceMappingURL=index-BY7bdksr.d.mts.map
3072
+ //# sourceMappingURL=index-CNLJdbEv.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CNLJdbEv.d.mts","names":[],"sources":["../src/renderer.ts","../src/accessibility.ts","../src/components/Box.ts","../src/components/Spacer.ts","../src/components/Divider.ts","../src/components/Stack.ts","../src/components/Grid.ts","../src/components/Card.ts","../src/components/Text.ts","../src/components/Newline.ts","../src/components/Static.ts","../src/components/Transform.ts","../src/components/Code.ts","../src/components/Link.ts","../src/components/TextInput.ts","../src/components/TextArea.ts","../src/components/Select.ts","../src/components/Checkbox.ts","../src/components/RadioGroup.ts","../src/components/Confirm.ts","../src/components/Form.ts","../src/components/Spinner.ts","../src/components/ProgressBar.ts","../src/components/Alert.ts","../src/components/Badge.ts","../src/components/Timer.ts","../src/components/Tooltip.ts","../src/components/List.ts","../src/components/Table.ts","../src/components/Tree.ts","../src/components/Menu.ts","../src/components/Tabs.ts","../src/components/Breadcrumb.ts","../src/components/Stepper.ts","../src/components/Modal.ts","../src/components/StatusBar.ts","../src/components/Header.ts","../src/components/KeyHint.ts","../src/components/Avatar.ts"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as FormProps, A as TableColumn, At as HStack, B as TimerProps, C as Menu, Ct as NewlineProps, D as TreeNode, Dt as CardProps, E as Tree, Et as Card, F as Tooltip, Ft as DividerProps, G as AlertProps, H as BadgeProps, I as TooltipPosition, It as Spacer, J as ProgressBarProps, K as AlertType, L as TooltipProps, Lt as Box, M as List, Mt as StackProps, N as ListItem, Nt as VStack, O as TreeProps, Ot as Grid, P as ListProps, Pt as Divider, Q as FormField, R as Timer, Rt as BoxProps, S as TabsProps, St as Newline, T as MenuProps, Tt as TextProps, U as BadgeVariant, V as Badge, W as Alert, X as SpinnerProps, Y as Spinner, Z as Form, _ as Breadcrumb, _t as CodeProps, a as KeyHintProps, at as Checkbox, b as Tab, bt as Static, c as StatusBar, ct as SelectOption, d as Modal, dt as TextAreaProps, et as Confirm, f as ModalProps, ft as TextInput, g as StepperProps, gt as Code, h as Stepper, ht as LinkProps, i as KeyHint, it as RadioOption, j as TableProps, jt as Stack, k as Table, kt as GridProps, l as StatusBarItem, lt as SelectProps, m as StepStatus, mt as Link, n as AvatarProps, nt as RadioGroup, o as Header, ot as CheckboxProps, p as Step, pt as TextInputProps, q as ProgressBar, r as KeyBinding, rt as RadioGroupProps, s as HeaderProps, st as Select, t as Avatar, tt as ConfirmProps, u as StatusBarProps, ut as TextArea, v as BreadcrumbItem, vt as Transform, w as MenuItem, wt as Text, x as Tabs, xt as StaticProps, y as BreadcrumbProps, yt as TransformProps, z as TimerMode, zt as createRenderer } from "./index-BY7bdksr.mjs";
1
+ import { $ as FormProps, A as TableColumn, At as HStack, B as TimerProps, C as Menu, Ct as NewlineProps, D as TreeNode, Dt as CardProps, E as Tree, Et as Card, F as Tooltip, Ft as DividerProps, G as AlertProps, H as BadgeProps, I as TooltipPosition, It as Spacer, J as ProgressBarProps, K as AlertType, L as TooltipProps, Lt as Box, M as List, Mt as StackProps, N as ListItem, Nt as VStack, O as TreeProps, Ot as Grid, P as ListProps, Pt as Divider, Q as FormField, R as Timer, Rt as BoxProps, S as TabsProps, St as Newline, T as MenuProps, Tt as TextProps, U as BadgeVariant, V as Badge, W as Alert, X as SpinnerProps, Y as Spinner, Z as Form, _ as Breadcrumb, _t as CodeProps, a as KeyHintProps, at as Checkbox, b as Tab, bt as Static, c as StatusBar, ct as SelectOption, d as Modal, dt as TextAreaProps, et as Confirm, f as ModalProps, ft as TextInput, g as StepperProps, gt as Code, h as Stepper, ht as LinkProps, i as KeyHint, it as RadioOption, j as TableProps, jt as Stack, k as Table, kt as GridProps, l as StatusBarItem, lt as SelectProps, m as StepStatus, mt as Link, n as AvatarProps, nt as RadioGroup, o as Header, ot as CheckboxProps, p as Step, pt as TextInputProps, q as ProgressBar, r as KeyBinding, rt as RadioGroupProps, s as HeaderProps, st as Select, t as Avatar, tt as ConfirmProps, u as StatusBarProps, ut as TextArea, v as BreadcrumbItem, vt as Transform, w as MenuItem, wt as Text, x as Tabs, xt as StaticProps, y as BreadcrumbProps, yt as TransformProps, z as TimerMode, zt as createRenderer } from "./index-CNLJdbEv.mjs";
2
2
  import { A as usePaste, C as UseAppReturn, D as useFocus, E as UseFocusOptions, F as UseInputReturn, I as useInput, L as useKeyPress, M as Key, N as KeyHandler, O as useFocusManager, P as UseInputOptions, S as useIme, T as FocusManager, _ as useStderr, a as DOMElement, b as ImeManager, c as UseAnimationOptions, d as useCursor, f as WindowSize, g as UseStdoutReturn, h as UseStdinReturn, i as useBoxMetrics, j as InputHandler, k as UsePasteOptions, l as useAnimation, m as UseStderrReturn, n as BoxMetrics, o as measureElement, p as useWindowSize, r as UseBoxMetricsResult, s as AnimationResult, t as useIsScreenReaderEnabled, u as CursorPosition, v as useStdin, w as useApp, x as UseImeOptions, y as useStdout } from "./index-43FxHkwF.mjs";
3
3
  import { Component, Ref, VNode } from "@vue/runtime-core";
4
4
  import { FlexStyleNapi, ImeStateNapi, InputEventNapi, LayoutResultNapi, ModifiersNapi, RenderNodeNapi, StyleNapi, TerminalInfoNapi, TerminalOptionsNapi } from "@vizejs/fresco-native";
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { C as useFocusManager, S as useFocus, a as createApp, b as useStdin, c as lastKeyEvent, d as lastResizeEvent, f as render, g as measureElement, i as useIsScreenReaderEnabled, l as lastMouseEvent, m as createRenderer, n as useKeyPress, o as lastCompositionEvent, p as renderToString, r as usePaste, s as lastFocusEvent, t as useInput, u as lastPasteEvent, v as useCursor, w as useApp, x as useStdout, y as useStderr } from "./useInput-DrlvpGkS.mjs";
2
- import { A as Newline, C as Select, D as Code, E as Link, F as Stack, I as VStack, L as Divider, M as Card, N as Grid, O as Transform, P as HStack, R as Spacer, S as Checkbox, T as TextInput, _ as ProgressBar, a as Modal, b as Confirm, c as Tabs, d as Table, f as List, g as Alert, h as Badge, i as StatusBar, j as Text, k as Static, l as Menu, m as Timer, n as KeyHint, o as Stepper, p as Tooltip, r as Header, s as Breadcrumb, t as Avatar, u as Tree, v as Spinner, w as TextArea, x as RadioGroup, y as Form, z as Box } from "./components-BFV7PBp6.mjs";
3
- import { i as useIme, n as useAnimation, r as useWindowSize, t as useBoxMetrics } from "./composables-BKj30tnc.mjs";
1
+ import { C as useFocusManager, S as useFocus, a as createApp, b as useStdin, c as lastKeyEvent, d as lastResizeEvent, f as render, g as measureElement, i as useIsScreenReaderEnabled, l as lastMouseEvent, m as createRenderer, n as useKeyPress, o as lastCompositionEvent, p as renderToString, r as usePaste, s as lastFocusEvent, t as useInput, u as lastPasteEvent, v as useCursor, w as useApp, x as useStdout, y as useStderr } from "./useInput-BopE5ia7.mjs";
2
+ import { A as Newline, C as Select, D as Code, E as Link, F as Stack, I as VStack, L as Divider, M as Card, N as Grid, O as Transform, P as HStack, R as Spacer, S as Checkbox, T as TextInput, _ as ProgressBar, a as Modal, b as Confirm, c as Tabs, d as Table, f as List, g as Alert, h as Badge, i as StatusBar, j as Text, k as Static, l as Menu, m as Timer, n as KeyHint, o as Stepper, p as Tooltip, r as Header, s as Breadcrumb, t as Avatar, u as Tree, v as Spinner, w as TextArea, x as RadioGroup, y as Form, z as Box } from "./components-JxATjNGp.mjs";
3
+ import { i as useIme, n as useAnimation, r as useWindowSize, t as useBoxMetrics } from "./composables-D9lN8Kdo.mjs";
4
4
  //#region src/kittyKeyboard.ts
5
5
  /**
6
6
  * Kitty keyboard protocol constants compatible with Ink.
@@ -455,6 +455,10 @@ const rendererOptions = {
455
455
  else el.props[key] = nextValue;
456
456
  },
457
457
  insert(child, parent, anchor) {
458
+ if (child.parent) {
459
+ const existing = child.parent.children.indexOf(child);
460
+ if (existing !== -1) child.parent.children.splice(existing, 1);
461
+ }
458
462
  child.parent = parent;
459
463
  if (anchor) {
460
464
  const index = parent.children.indexOf(anchor);
@@ -1460,4 +1464,4 @@ function useKeyPress(key, handler, options = {}) {
1460
1464
  //#endregion
1461
1465
  export { useFocusManager as C, useFocus as S, updateLastRenderLayouts as _, createApp as a, useStdin as b, lastKeyEvent as c, lastResizeEvent as d, render as f, measureElement as g, getLastRenderLayout as h, useIsScreenReaderEnabled as i, lastMouseEvent as l, createRenderer$1 as m, useKeyPress as n, lastCompositionEvent as o, renderToString as p, usePaste as r, lastFocusEvent as s, useInput as t, lastPasteEvent as u, useCursor as v, useApp as w, useStdout as x, useStderr as y };
1462
1466
 
1463
- //# sourceMappingURL=useInput-DrlvpGkS.mjs.map
1467
+ //# sourceMappingURL=useInput-BopE5ia7.mjs.map