tuiuiu.js 0.1.1
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.
- package/LICENSE +21 -0
- package/README.md +324 -0
- package/dist/app/index.d.ts +9 -0
- package/dist/app/index.d.ts.map +1 -0
- package/dist/app/index.js +12 -0
- package/dist/app/index.js.map +1 -0
- package/dist/app/render-loop.d.ts +51 -0
- package/dist/app/render-loop.d.ts.map +1 -0
- package/dist/app/render-loop.js +263 -0
- package/dist/app/render-loop.js.map +1 -0
- package/dist/atoms/button.d.ts +109 -0
- package/dist/atoms/button.d.ts.map +1 -0
- package/dist/atoms/button.js +173 -0
- package/dist/atoms/button.js.map +1 -0
- package/dist/atoms/index.d.ts +29 -0
- package/dist/atoms/index.d.ts.map +1 -0
- package/dist/atoms/index.js +53 -0
- package/dist/atoms/index.js.map +1 -0
- package/dist/atoms/progress-bar.d.ts +96 -0
- package/dist/atoms/progress-bar.d.ts.map +1 -0
- package/dist/atoms/progress-bar.js +443 -0
- package/dist/atoms/progress-bar.js.map +1 -0
- package/dist/atoms/slider.d.ts +137 -0
- package/dist/atoms/slider.d.ts.map +1 -0
- package/dist/atoms/slider.js +317 -0
- package/dist/atoms/slider.js.map +1 -0
- package/dist/atoms/spinner.d.ts +91 -0
- package/dist/atoms/spinner.d.ts.map +1 -0
- package/dist/atoms/spinner.js +650 -0
- package/dist/atoms/spinner.js.map +1 -0
- package/dist/atoms/switch.d.ts +102 -0
- package/dist/atoms/switch.d.ts.map +1 -0
- package/dist/atoms/switch.js +176 -0
- package/dist/atoms/switch.js.map +1 -0
- package/dist/atoms/text-input.d.ts +82 -0
- package/dist/atoms/text-input.d.ts.map +1 -0
- package/dist/atoms/text-input.js +347 -0
- package/dist/atoms/text-input.js.map +1 -0
- package/dist/atoms/timer.d.ts +178 -0
- package/dist/atoms/timer.d.ts.map +1 -0
- package/dist/atoms/timer.js +355 -0
- package/dist/atoms/timer.js.map +1 -0
- package/dist/atoms/tooltip.d.ts +191 -0
- package/dist/atoms/tooltip.d.ts.map +1 -0
- package/dist/atoms/tooltip.js +279 -0
- package/dist/atoms/tooltip.js.map +1 -0
- package/dist/components/canvas.d.ts +322 -0
- package/dist/components/canvas.d.ts.map +1 -0
- package/dist/components/canvas.js +833 -0
- package/dist/components/canvas.js.map +1 -0
- package/dist/components/code-block.d.ts +75 -0
- package/dist/components/code-block.d.ts.map +1 -0
- package/dist/components/code-block.js +322 -0
- package/dist/components/code-block.js.map +1 -0
- package/dist/components/components.d.ts +122 -0
- package/dist/components/components.d.ts.map +1 -0
- package/dist/components/components.js +151 -0
- package/dist/components/components.js.map +1 -0
- package/dist/components/data-viz/bar-chart.d.ts +167 -0
- package/dist/components/data-viz/bar-chart.d.ts.map +1 -0
- package/dist/components/data-viz/bar-chart.js +375 -0
- package/dist/components/data-viz/bar-chart.js.map +1 -0
- package/dist/components/data-viz/gauge.d.ts +163 -0
- package/dist/components/data-viz/gauge.d.ts.map +1 -0
- package/dist/components/data-viz/gauge.js +451 -0
- package/dist/components/data-viz/gauge.js.map +1 -0
- package/dist/components/data-viz/heatmap.d.ts +154 -0
- package/dist/components/data-viz/heatmap.d.ts.map +1 -0
- package/dist/components/data-viz/heatmap.js +458 -0
- package/dist/components/data-viz/heatmap.js.map +1 -0
- package/dist/components/data-viz/index.d.ts +16 -0
- package/dist/components/data-viz/index.d.ts.map +1 -0
- package/dist/components/data-viz/index.js +16 -0
- package/dist/components/data-viz/index.js.map +1 -0
- package/dist/components/data-viz/line-chart.d.ts +157 -0
- package/dist/components/data-viz/line-chart.d.ts.map +1 -0
- package/dist/components/data-viz/line-chart.js +578 -0
- package/dist/components/data-viz/line-chart.js.map +1 -0
- package/dist/components/data-viz/sparkline.d.ts +156 -0
- package/dist/components/data-viz/sparkline.d.ts.map +1 -0
- package/dist/components/data-viz/sparkline.js +325 -0
- package/dist/components/data-viz/sparkline.js.map +1 -0
- package/dist/components/grid.d.ts +234 -0
- package/dist/components/grid.d.ts.map +1 -0
- package/dist/components/grid.js +719 -0
- package/dist/components/grid.js.map +1 -0
- package/dist/components/index.d.ts +33 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +69 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/markdown.d.ts +52 -0
- package/dist/components/markdown.d.ts.map +1 -0
- package/dist/components/markdown.js +341 -0
- package/dist/components/markdown.js.map +1 -0
- package/dist/components/modal.d.ts +237 -0
- package/dist/components/modal.d.ts.map +1 -0
- package/dist/components/modal.js +396 -0
- package/dist/components/modal.js.map +1 -0
- package/dist/components/progress-bar.d.ts +89 -0
- package/dist/components/progress-bar.d.ts.map +1 -0
- package/dist/components/progress-bar.js +288 -0
- package/dist/components/progress-bar.js.map +1 -0
- package/dist/components/select.d.ts +114 -0
- package/dist/components/select.d.ts.map +1 -0
- package/dist/components/select.js +415 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/spinner.d.ts +71 -0
- package/dist/components/spinner.d.ts.map +1 -0
- package/dist/components/spinner.js +300 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/split-panel.d.ts +175 -0
- package/dist/components/split-panel.d.ts.map +1 -0
- package/dist/components/split-panel.js +322 -0
- package/dist/components/split-panel.js.map +1 -0
- package/dist/components/table.d.ts +103 -0
- package/dist/components/table.d.ts.map +1 -0
- package/dist/components/table.js +359 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/text-input.d.ts +79 -0
- package/dist/components/text-input.d.ts.map +1 -0
- package/dist/components/text-input.js +332 -0
- package/dist/components/text-input.js.map +1 -0
- package/dist/core/animation.d.ts +262 -0
- package/dist/core/animation.d.ts.map +1 -0
- package/dist/core/animation.js +626 -0
- package/dist/core/animation.js.map +1 -0
- package/dist/core/buffer.d.ts +179 -0
- package/dist/core/buffer.d.ts.map +1 -0
- package/dist/core/buffer.js +549 -0
- package/dist/core/buffer.js.map +1 -0
- package/dist/core/capabilities.d.ts +184 -0
- package/dist/core/capabilities.d.ts.map +1 -0
- package/dist/core/capabilities.js +393 -0
- package/dist/core/capabilities.js.map +1 -0
- package/dist/core/colors.d.ts +111 -0
- package/dist/core/colors.d.ts.map +1 -0
- package/dist/core/colors.js +417 -0
- package/dist/core/colors.js.map +1 -0
- package/dist/core/command-palette.d.ts +220 -0
- package/dist/core/command-palette.d.ts.map +1 -0
- package/dist/core/command-palette.js +564 -0
- package/dist/core/command-palette.js.map +1 -0
- package/dist/core/constraint.d.ts +315 -0
- package/dist/core/constraint.d.ts.map +1 -0
- package/dist/core/constraint.js +651 -0
- package/dist/core/constraint.js.map +1 -0
- package/dist/core/delta-render.d.ts +64 -0
- package/dist/core/delta-render.d.ts.map +1 -0
- package/dist/core/delta-render.js +367 -0
- package/dist/core/delta-render.js.map +1 -0
- package/dist/core/dirty.d.ts +181 -0
- package/dist/core/dirty.d.ts.map +1 -0
- package/dist/core/dirty.js +335 -0
- package/dist/core/dirty.js.map +1 -0
- package/dist/core/error-boundary.d.ts +79 -0
- package/dist/core/error-boundary.d.ts.map +1 -0
- package/dist/core/error-boundary.js +258 -0
- package/dist/core/error-boundary.js.map +1 -0
- package/dist/core/events.d.ts +206 -0
- package/dist/core/events.d.ts.map +1 -0
- package/dist/core/events.js +411 -0
- package/dist/core/events.js.map +1 -0
- package/dist/core/focus.d.ts +294 -0
- package/dist/core/focus.d.ts.map +1 -0
- package/dist/core/focus.js +589 -0
- package/dist/core/focus.js.map +1 -0
- package/dist/core/graphics.d.ts +146 -0
- package/dist/core/graphics.d.ts.map +1 -0
- package/dist/core/graphics.js +561 -0
- package/dist/core/graphics.js.map +1 -0
- package/dist/core/highlighter.d.ts +148 -0
- package/dist/core/highlighter.d.ts.map +1 -0
- package/dist/core/highlighter.js +2726 -0
- package/dist/core/highlighter.js.map +1 -0
- package/dist/core/hit-test.d.ts +126 -0
- package/dist/core/hit-test.d.ts.map +1 -0
- package/dist/core/hit-test.js +336 -0
- package/dist/core/hit-test.js.map +1 -0
- package/dist/core/index.d.ts +58 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +254 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/input.d.ts +241 -0
- package/dist/core/input.d.ts.map +1 -0
- package/dist/core/input.js +768 -0
- package/dist/core/input.js.map +1 -0
- package/dist/core/keybindings.d.ts +256 -0
- package/dist/core/keybindings.d.ts.map +1 -0
- package/dist/core/keybindings.js +532 -0
- package/dist/core/keybindings.js.map +1 -0
- package/dist/core/layout.d.ts +30 -0
- package/dist/core/layout.d.ts.map +1 -0
- package/dist/core/layout.js +347 -0
- package/dist/core/layout.js.map +1 -0
- package/dist/core/overlay.d.ts +318 -0
- package/dist/core/overlay.d.ts.map +1 -0
- package/dist/core/overlay.js +794 -0
- package/dist/core/overlay.js.map +1 -0
- package/dist/core/query.d.ts +155 -0
- package/dist/core/query.d.ts.map +1 -0
- package/dist/core/query.js +616 -0
- package/dist/core/query.js.map +1 -0
- package/dist/core/renderer.d.ts +28 -0
- package/dist/core/renderer.d.ts.map +1 -0
- package/dist/core/renderer.js +403 -0
- package/dist/core/renderer.js.map +1 -0
- package/dist/core/router.d.ts +401 -0
- package/dist/core/router.d.ts.map +1 -0
- package/dist/core/router.js +766 -0
- package/dist/core/router.js.map +1 -0
- package/dist/core/screen.d.ts +302 -0
- package/dist/core/screen.d.ts.map +1 -0
- package/dist/core/screen.js +537 -0
- package/dist/core/screen.js.map +1 -0
- package/dist/core/signal.d.ts +136 -0
- package/dist/core/signal.d.ts.map +1 -0
- package/dist/core/signal.js +336 -0
- package/dist/core/signal.js.map +1 -0
- package/dist/core/theme.d.ts +220 -0
- package/dist/core/theme.d.ts.map +1 -0
- package/dist/core/theme.js +499 -0
- package/dist/core/theme.js.map +1 -0
- package/dist/core/tick.d.ts +107 -0
- package/dist/core/tick.d.ts.map +1 -0
- package/dist/core/tick.js +174 -0
- package/dist/core/tick.js.map +1 -0
- package/dist/core/transitions.d.ts +335 -0
- package/dist/core/transitions.d.ts.map +1 -0
- package/dist/core/transitions.js +650 -0
- package/dist/core/transitions.js.map +1 -0
- package/dist/core/virtual-scroll.d.ts +241 -0
- package/dist/core/virtual-scroll.d.ts.map +1 -0
- package/dist/core/virtual-scroll.js +476 -0
- package/dist/core/virtual-scroll.js.map +1 -0
- package/dist/core/visualization.d.ts +248 -0
- package/dist/core/visualization.d.ts.map +1 -0
- package/dist/core/visualization.js +709 -0
- package/dist/core/visualization.js.map +1 -0
- package/dist/design-system/core/index.d.ts +6 -0
- package/dist/design-system/core/index.d.ts.map +1 -0
- package/dist/design-system/core/index.js +6 -0
- package/dist/design-system/core/index.js.map +1 -0
- package/dist/design-system/core/layout.d.ts +30 -0
- package/dist/design-system/core/layout.d.ts.map +1 -0
- package/dist/design-system/core/layout.js +344 -0
- package/dist/design-system/core/layout.js.map +1 -0
- package/dist/design-system/core/renderer.d.ts +28 -0
- package/dist/design-system/core/renderer.d.ts.map +1 -0
- package/dist/design-system/core/renderer.js +418 -0
- package/dist/design-system/core/renderer.js.map +1 -0
- package/dist/design-system/data-display/calendar.d.ts +141 -0
- package/dist/design-system/data-display/calendar.d.ts.map +1 -0
- package/dist/design-system/data-display/calendar.js +524 -0
- package/dist/design-system/data-display/calendar.js.map +1 -0
- package/dist/design-system/data-display/code-block.d.ts +75 -0
- package/dist/design-system/data-display/code-block.d.ts.map +1 -0
- package/dist/design-system/data-display/code-block.js +311 -0
- package/dist/design-system/data-display/code-block.js.map +1 -0
- package/dist/design-system/data-display/data-table.d.ts +173 -0
- package/dist/design-system/data-display/data-table.d.ts.map +1 -0
- package/dist/design-system/data-display/data-table.js +428 -0
- package/dist/design-system/data-display/data-table.js.map +1 -0
- package/dist/design-system/data-display/index.d.ts +10 -0
- package/dist/design-system/data-display/index.d.ts.map +1 -0
- package/dist/design-system/data-display/index.js +16 -0
- package/dist/design-system/data-display/index.js.map +1 -0
- package/dist/design-system/data-display/markdown.d.ts +52 -0
- package/dist/design-system/data-display/markdown.d.ts.map +1 -0
- package/dist/design-system/data-display/markdown.js +341 -0
- package/dist/design-system/data-display/markdown.js.map +1 -0
- package/dist/design-system/data-display/table.d.ts +103 -0
- package/dist/design-system/data-display/table.d.ts.map +1 -0
- package/dist/design-system/data-display/table.js +342 -0
- package/dist/design-system/data-display/table.js.map +1 -0
- package/dist/design-system/data-display/tree.d.ts +166 -0
- package/dist/design-system/data-display/tree.d.ts.map +1 -0
- package/dist/design-system/data-display/tree.js +428 -0
- package/dist/design-system/data-display/tree.js.map +1 -0
- package/dist/design-system/feedback/badge.d.ts +21 -0
- package/dist/design-system/feedback/badge.d.ts.map +1 -0
- package/dist/design-system/feedback/badge.js +9 -0
- package/dist/design-system/feedback/badge.js.map +1 -0
- package/dist/design-system/feedback/index.d.ts +8 -0
- package/dist/design-system/feedback/index.d.ts.map +1 -0
- package/dist/design-system/feedback/index.js +12 -0
- package/dist/design-system/feedback/index.js.map +1 -0
- package/dist/design-system/feedback/progress-bar.d.ts +93 -0
- package/dist/design-system/feedback/progress-bar.d.ts.map +1 -0
- package/dist/design-system/feedback/progress-bar.js +440 -0
- package/dist/design-system/feedback/progress-bar.js.map +1 -0
- package/dist/design-system/feedback/spinner.d.ts +88 -0
- package/dist/design-system/feedback/spinner.d.ts.map +1 -0
- package/dist/design-system/feedback/spinner.js +679 -0
- package/dist/design-system/feedback/spinner.js.map +1 -0
- package/dist/design-system/feedback/timer.d.ts +175 -0
- package/dist/design-system/feedback/timer.d.ts.map +1 -0
- package/dist/design-system/feedback/timer.js +352 -0
- package/dist/design-system/feedback/timer.js.map +1 -0
- package/dist/design-system/forms/autocomplete.d.ts +163 -0
- package/dist/design-system/forms/autocomplete.d.ts.map +1 -0
- package/dist/design-system/forms/autocomplete.js +455 -0
- package/dist/design-system/forms/autocomplete.js.map +1 -0
- package/dist/design-system/forms/button.d.ts +106 -0
- package/dist/design-system/forms/button.d.ts.map +1 -0
- package/dist/design-system/forms/button.js +170 -0
- package/dist/design-system/forms/button.js.map +1 -0
- package/dist/design-system/forms/index.d.ts +12 -0
- package/dist/design-system/forms/index.d.ts.map +1 -0
- package/dist/design-system/forms/index.js +20 -0
- package/dist/design-system/forms/index.js.map +1 -0
- package/dist/design-system/forms/multi-select.d.ts +102 -0
- package/dist/design-system/forms/multi-select.d.ts.map +1 -0
- package/dist/design-system/forms/multi-select.js +309 -0
- package/dist/design-system/forms/multi-select.js.map +1 -0
- package/dist/design-system/forms/radio-group.d.ts +88 -0
- package/dist/design-system/forms/radio-group.d.ts.map +1 -0
- package/dist/design-system/forms/radio-group.js +145 -0
- package/dist/design-system/forms/radio-group.js.map +1 -0
- package/dist/design-system/forms/select.d.ts +116 -0
- package/dist/design-system/forms/select.d.ts.map +1 -0
- package/dist/design-system/forms/select.js +441 -0
- package/dist/design-system/forms/select.js.map +1 -0
- package/dist/design-system/forms/slider.d.ts +134 -0
- package/dist/design-system/forms/slider.d.ts.map +1 -0
- package/dist/design-system/forms/slider.js +314 -0
- package/dist/design-system/forms/slider.js.map +1 -0
- package/dist/design-system/forms/switch.d.ts +99 -0
- package/dist/design-system/forms/switch.d.ts.map +1 -0
- package/dist/design-system/forms/switch.js +173 -0
- package/dist/design-system/forms/switch.js.map +1 -0
- package/dist/design-system/forms/text-input.d.ts +79 -0
- package/dist/design-system/forms/text-input.d.ts.map +1 -0
- package/dist/design-system/forms/text-input.js +344 -0
- package/dist/design-system/forms/text-input.js.map +1 -0
- package/dist/design-system/index.d.ts +23 -0
- package/dist/design-system/index.d.ts.map +1 -0
- package/dist/design-system/index.js +74 -0
- package/dist/design-system/index.js.map +1 -0
- package/dist/design-system/layout/app.d.ts +205 -0
- package/dist/design-system/layout/app.d.ts.map +1 -0
- package/dist/design-system/layout/app.js +286 -0
- package/dist/design-system/layout/app.js.map +1 -0
- package/dist/design-system/layout/collapsible.d.ts +166 -0
- package/dist/design-system/layout/collapsible.d.ts.map +1 -0
- package/dist/design-system/layout/collapsible.js +286 -0
- package/dist/design-system/layout/collapsible.js.map +1 -0
- package/dist/design-system/layout/grid.d.ts +232 -0
- package/dist/design-system/layout/grid.d.ts.map +1 -0
- package/dist/design-system/layout/grid.js +333 -0
- package/dist/design-system/layout/grid.js.map +1 -0
- package/dist/design-system/layout/index.d.ts +27 -0
- package/dist/design-system/layout/index.d.ts.map +1 -0
- package/dist/design-system/layout/index.js +34 -0
- package/dist/design-system/layout/index.js.map +1 -0
- package/dist/design-system/layout/scroll-area.d.ts +188 -0
- package/dist/design-system/layout/scroll-area.d.ts.map +1 -0
- package/dist/design-system/layout/scroll-area.js +348 -0
- package/dist/design-system/layout/scroll-area.js.map +1 -0
- package/dist/design-system/layout/split-panel.d.ts +183 -0
- package/dist/design-system/layout/split-panel.d.ts.map +1 -0
- package/dist/design-system/layout/split-panel.js +323 -0
- package/dist/design-system/layout/split-panel.js.map +1 -0
- package/dist/design-system/layout/stack.d.ts +189 -0
- package/dist/design-system/layout/stack.d.ts.map +1 -0
- package/dist/design-system/layout/stack.js +170 -0
- package/dist/design-system/layout/stack.js.map +1 -0
- package/dist/design-system/layout/tabs.d.ts +129 -0
- package/dist/design-system/layout/tabs.d.ts.map +1 -0
- package/dist/design-system/layout/tabs.js +373 -0
- package/dist/design-system/layout/tabs.js.map +1 -0
- package/dist/design-system/media/index.d.ts +13 -0
- package/dist/design-system/media/index.d.ts.map +1 -0
- package/dist/design-system/media/index.js +23 -0
- package/dist/design-system/media/index.js.map +1 -0
- package/dist/design-system/media/picture.d.ts +304 -0
- package/dist/design-system/media/picture.d.ts.map +1 -0
- package/dist/design-system/media/picture.js +681 -0
- package/dist/design-system/media/picture.js.map +1 -0
- package/dist/design-system/navigation/file-manager.d.ts +492 -0
- package/dist/design-system/navigation/file-manager.d.ts.map +1 -0
- package/dist/design-system/navigation/file-manager.js +807 -0
- package/dist/design-system/navigation/file-manager.js.map +1 -0
- package/dist/design-system/navigation/index.d.ts +13 -0
- package/dist/design-system/navigation/index.d.ts.map +1 -0
- package/dist/design-system/navigation/index.js +19 -0
- package/dist/design-system/navigation/index.js.map +1 -0
- package/dist/design-system/overlays/command-palette.d.ts +217 -0
- package/dist/design-system/overlays/command-palette.d.ts.map +1 -0
- package/dist/design-system/overlays/command-palette.js +443 -0
- package/dist/design-system/overlays/command-palette.js.map +1 -0
- package/dist/design-system/overlays/index.d.ts +7 -0
- package/dist/design-system/overlays/index.d.ts.map +1 -0
- package/dist/design-system/overlays/index.js +10 -0
- package/dist/design-system/overlays/index.js.map +1 -0
- package/dist/design-system/overlays/modal.d.ts +251 -0
- package/dist/design-system/overlays/modal.d.ts.map +1 -0
- package/dist/design-system/overlays/modal.js +461 -0
- package/dist/design-system/overlays/modal.js.map +1 -0
- package/dist/design-system/overlays/overlay-stack.d.ts +200 -0
- package/dist/design-system/overlays/overlay-stack.d.ts.map +1 -0
- package/dist/design-system/overlays/overlay-stack.js +341 -0
- package/dist/design-system/overlays/overlay-stack.js.map +1 -0
- package/dist/design-system/primitives/box.d.ts +16 -0
- package/dist/design-system/primitives/box.d.ts.map +1 -0
- package/dist/design-system/primitives/box.js +23 -0
- package/dist/design-system/primitives/box.js.map +1 -0
- package/dist/design-system/primitives/divider.d.ts +52 -0
- package/dist/design-system/primitives/divider.d.ts.map +1 -0
- package/dist/design-system/primitives/divider.js +72 -0
- package/dist/design-system/primitives/divider.js.map +1 -0
- package/dist/design-system/primitives/helpers.d.ts +10 -0
- package/dist/design-system/primitives/helpers.d.ts.map +1 -0
- package/dist/design-system/primitives/helpers.js +27 -0
- package/dist/design-system/primitives/helpers.js.map +1 -0
- package/dist/design-system/primitives/index.d.ts +11 -0
- package/dist/design-system/primitives/index.d.ts.map +1 -0
- package/dist/design-system/primitives/index.js +14 -0
- package/dist/design-system/primitives/index.js.map +1 -0
- package/dist/design-system/primitives/slot.d.ts +35 -0
- package/dist/design-system/primitives/slot.d.ts.map +1 -0
- package/dist/design-system/primitives/slot.js +17 -0
- package/dist/design-system/primitives/slot.js.map +1 -0
- package/dist/design-system/primitives/spacer.d.ts +34 -0
- package/dist/design-system/primitives/spacer.d.ts.map +1 -0
- package/dist/design-system/primitives/spacer.js +53 -0
- package/dist/design-system/primitives/spacer.js.map +1 -0
- package/dist/design-system/primitives/text.d.ts +12 -0
- package/dist/design-system/primitives/text.d.ts.map +1 -0
- package/dist/design-system/primitives/text.js +25 -0
- package/dist/design-system/primitives/text.js.map +1 -0
- package/dist/design-system/primitives/utilities.d.ts +70 -0
- package/dist/design-system/primitives/utilities.d.ts.map +1 -0
- package/dist/design-system/primitives/utilities.js +56 -0
- package/dist/design-system/primitives/utilities.js.map +1 -0
- package/dist/design-system/visual/big-text.d.ts +151 -0
- package/dist/design-system/visual/big-text.d.ts.map +1 -0
- package/dist/design-system/visual/big-text.js +578 -0
- package/dist/design-system/visual/big-text.js.map +1 -0
- package/dist/design-system/visual/digits.d.ts +159 -0
- package/dist/design-system/visual/digits.d.ts.map +1 -0
- package/dist/design-system/visual/digits.js +287 -0
- package/dist/design-system/visual/digits.js.map +1 -0
- package/dist/design-system/visual/index.d.ts +20 -0
- package/dist/design-system/visual/index.d.ts.map +1 -0
- package/dist/design-system/visual/index.js +23 -0
- package/dist/design-system/visual/index.js.map +1 -0
- package/dist/design-system/visual/splash-screen.d.ts +93 -0
- package/dist/design-system/visual/splash-screen.d.ts.map +1 -0
- package/dist/design-system/visual/splash-screen.js +219 -0
- package/dist/design-system/visual/splash-screen.js.map +1 -0
- package/dist/design-system/visual/tooltip.d.ts +188 -0
- package/dist/design-system/visual/tooltip.d.ts.map +1 -0
- package/dist/design-system/visual/tooltip.js +276 -0
- package/dist/design-system/visual/tooltip.js.map +1 -0
- package/dist/dev-tools/debugger.d.ts +223 -0
- package/dist/dev-tools/debugger.d.ts.map +1 -0
- package/dist/dev-tools/debugger.js +489 -0
- package/dist/dev-tools/debugger.js.map +1 -0
- package/dist/dev-tools/index.d.ts +22 -0
- package/dist/dev-tools/index.d.ts.map +1 -0
- package/dist/dev-tools/index.js +63 -0
- package/dist/dev-tools/index.js.map +1 -0
- package/dist/dev-tools/mouse-simulator.d.ts +155 -0
- package/dist/dev-tools/mouse-simulator.d.ts.map +1 -0
- package/dist/dev-tools/mouse-simulator.js +314 -0
- package/dist/dev-tools/mouse-simulator.js.map +1 -0
- package/dist/dev-tools/testing.d.ts +262 -0
- package/dist/dev-tools/testing.d.ts.map +1 -0
- package/dist/dev-tools/testing.js +858 -0
- package/dist/dev-tools/testing.js.map +1 -0
- package/dist/hooks/context.d.ts +47 -0
- package/dist/hooks/context.d.ts.map +1 -0
- package/dist/hooks/context.js +108 -0
- package/dist/hooks/context.js.map +1 -0
- package/dist/hooks/focus-context.d.ts +65 -0
- package/dist/hooks/focus-context.d.ts.map +1 -0
- package/dist/hooks/focus-context.js +79 -0
- package/dist/hooks/focus-context.js.map +1 -0
- package/dist/hooks/index.d.ts +16 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +22 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/types.d.ts +76 -0
- package/dist/hooks/types.d.ts.map +1 -0
- package/dist/hooks/types.js +5 -0
- package/dist/hooks/types.js.map +1 -0
- package/dist/hooks/use-app.d.ts +27 -0
- package/dist/hooks/use-app.d.ts.map +1 -0
- package/dist/hooks/use-app.js +179 -0
- package/dist/hooks/use-app.js.map +1 -0
- package/dist/hooks/use-effect.d.ts +20 -0
- package/dist/hooks/use-effect.d.ts.map +1 -0
- package/dist/hooks/use-effect.js +55 -0
- package/dist/hooks/use-effect.js.map +1 -0
- package/dist/hooks/use-focus.d.ts +48 -0
- package/dist/hooks/use-focus.d.ts.map +1 -0
- package/dist/hooks/use-focus.js +152 -0
- package/dist/hooks/use-focus.js.map +1 -0
- package/dist/hooks/use-input.d.ts +35 -0
- package/dist/hooks/use-input.d.ts.map +1 -0
- package/dist/hooks/use-input.js +352 -0
- package/dist/hooks/use-input.js.map +1 -0
- package/dist/hooks/use-mouse.d.ts +82 -0
- package/dist/hooks/use-mouse.d.ts.map +1 -0
- package/dist/hooks/use-mouse.js +328 -0
- package/dist/hooks/use-mouse.js.map +1 -0
- package/dist/hooks/use-navigation.d.ts +206 -0
- package/dist/hooks/use-navigation.d.ts.map +1 -0
- package/dist/hooks/use-navigation.js +319 -0
- package/dist/hooks/use-navigation.js.map +1 -0
- package/dist/hooks/use-state.d.ts +15 -0
- package/dist/hooks/use-state.d.ts.map +1 -0
- package/dist/hooks/use-state.js +29 -0
- package/dist/hooks/use-state.js.map +1 -0
- package/dist/hooks/use-terminal-size.d.ts +12 -0
- package/dist/hooks/use-terminal-size.d.ts.map +1 -0
- package/dist/hooks/use-terminal-size.js +20 -0
- package/dist/hooks/use-terminal-size.js.map +1 -0
- package/dist/index.d.ts +85 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +334 -0
- package/dist/index.js.map +1 -0
- package/dist/molecules/autocomplete.d.ts +166 -0
- package/dist/molecules/autocomplete.d.ts.map +1 -0
- package/dist/molecules/autocomplete.js +458 -0
- package/dist/molecules/autocomplete.js.map +1 -0
- package/dist/molecules/calendar.d.ts +144 -0
- package/dist/molecules/calendar.d.ts.map +1 -0
- package/dist/molecules/calendar.js +527 -0
- package/dist/molecules/calendar.js.map +1 -0
- package/dist/molecules/code-block.d.ts +88 -0
- package/dist/molecules/code-block.d.ts.map +1 -0
- package/dist/molecules/code-block.js +324 -0
- package/dist/molecules/code-block.js.map +1 -0
- package/dist/molecules/collapsible.d.ts +169 -0
- package/dist/molecules/collapsible.d.ts.map +1 -0
- package/dist/molecules/collapsible.js +289 -0
- package/dist/molecules/collapsible.js.map +1 -0
- package/dist/molecules/data-viz/bar-chart.d.ts +167 -0
- package/dist/molecules/data-viz/bar-chart.d.ts.map +1 -0
- package/dist/molecules/data-viz/bar-chart.js +375 -0
- package/dist/molecules/data-viz/bar-chart.js.map +1 -0
- package/dist/molecules/data-viz/gauge.d.ts +163 -0
- package/dist/molecules/data-viz/gauge.d.ts.map +1 -0
- package/dist/molecules/data-viz/gauge.js +451 -0
- package/dist/molecules/data-viz/gauge.js.map +1 -0
- package/dist/molecules/data-viz/heatmap.d.ts +154 -0
- package/dist/molecules/data-viz/heatmap.d.ts.map +1 -0
- package/dist/molecules/data-viz/heatmap.js +458 -0
- package/dist/molecules/data-viz/heatmap.js.map +1 -0
- package/dist/molecules/data-viz/index.d.ts +16 -0
- package/dist/molecules/data-viz/index.d.ts.map +1 -0
- package/dist/molecules/data-viz/index.js +16 -0
- package/dist/molecules/data-viz/index.js.map +1 -0
- package/dist/molecules/data-viz/line-chart.d.ts +157 -0
- package/dist/molecules/data-viz/line-chart.d.ts.map +1 -0
- package/dist/molecules/data-viz/line-chart.js +578 -0
- package/dist/molecules/data-viz/line-chart.js.map +1 -0
- package/dist/molecules/data-viz/sparkline.d.ts +156 -0
- package/dist/molecules/data-viz/sparkline.d.ts.map +1 -0
- package/dist/molecules/data-viz/sparkline.js +325 -0
- package/dist/molecules/data-viz/sparkline.js.map +1 -0
- package/dist/molecules/index.d.ts +22 -0
- package/dist/molecules/index.d.ts.map +1 -0
- package/dist/molecules/index.js +26 -0
- package/dist/molecules/index.js.map +1 -0
- package/dist/molecules/markdown.d.ts +61 -0
- package/dist/molecules/markdown.d.ts.map +1 -0
- package/dist/molecules/markdown.js +350 -0
- package/dist/molecules/markdown.js.map +1 -0
- package/dist/molecules/multi-select.d.ts +105 -0
- package/dist/molecules/multi-select.d.ts.map +1 -0
- package/dist/molecules/multi-select.js +312 -0
- package/dist/molecules/multi-select.js.map +1 -0
- package/dist/molecules/radio-group.d.ts +91 -0
- package/dist/molecules/radio-group.d.ts.map +1 -0
- package/dist/molecules/radio-group.js +148 -0
- package/dist/molecules/radio-group.js.map +1 -0
- package/dist/molecules/select.d.ts +119 -0
- package/dist/molecules/select.d.ts.map +1 -0
- package/dist/molecules/select.js +444 -0
- package/dist/molecules/select.js.map +1 -0
- package/dist/molecules/table.d.ts +106 -0
- package/dist/molecules/table.d.ts.map +1 -0
- package/dist/molecules/table.js +345 -0
- package/dist/molecules/table.js.map +1 -0
- package/dist/molecules/tabs.d.ts +132 -0
- package/dist/molecules/tabs.d.ts.map +1 -0
- package/dist/molecules/tabs.js +376 -0
- package/dist/molecules/tabs.js.map +1 -0
- package/dist/molecules/tree.d.ts +169 -0
- package/dist/molecules/tree.d.ts.map +1 -0
- package/dist/molecules/tree.js +431 -0
- package/dist/molecules/tree.js.map +1 -0
- package/dist/organisms/command-palette.d.ts +217 -0
- package/dist/organisms/command-palette.d.ts.map +1 -0
- package/dist/organisms/command-palette.js +443 -0
- package/dist/organisms/command-palette.js.map +1 -0
- package/dist/organisms/data-table.d.ts +173 -0
- package/dist/organisms/data-table.d.ts.map +1 -0
- package/dist/organisms/data-table.js +428 -0
- package/dist/organisms/data-table.js.map +1 -0
- package/dist/organisms/file-browser.d.ts +492 -0
- package/dist/organisms/file-browser.d.ts.map +1 -0
- package/dist/organisms/file-browser.js +807 -0
- package/dist/organisms/file-browser.js.map +1 -0
- package/dist/organisms/grid.d.ts +234 -0
- package/dist/organisms/grid.d.ts.map +1 -0
- package/dist/organisms/grid.js +719 -0
- package/dist/organisms/grid.js.map +1 -0
- package/dist/organisms/index.d.ts +30 -0
- package/dist/organisms/index.d.ts.map +1 -0
- package/dist/organisms/index.js +92 -0
- package/dist/organisms/index.js.map +1 -0
- package/dist/organisms/modal.d.ts +251 -0
- package/dist/organisms/modal.d.ts.map +1 -0
- package/dist/organisms/modal.js +461 -0
- package/dist/organisms/modal.js.map +1 -0
- package/dist/organisms/overlay-stack.d.ts +200 -0
- package/dist/organisms/overlay-stack.d.ts.map +1 -0
- package/dist/organisms/overlay-stack.js +341 -0
- package/dist/organisms/overlay-stack.js.map +1 -0
- package/dist/organisms/scroll-area.d.ts +188 -0
- package/dist/organisms/scroll-area.d.ts.map +1 -0
- package/dist/organisms/scroll-area.js +348 -0
- package/dist/organisms/scroll-area.js.map +1 -0
- package/dist/organisms/split-panel.d.ts +183 -0
- package/dist/organisms/split-panel.d.ts.map +1 -0
- package/dist/organisms/split-panel.js +323 -0
- package/dist/organisms/split-panel.js.map +1 -0
- package/dist/primitives/canvas.d.ts +322 -0
- package/dist/primitives/canvas.d.ts.map +1 -0
- package/dist/primitives/canvas.js +833 -0
- package/dist/primitives/canvas.js.map +1 -0
- package/dist/primitives/context.d.ts +83 -0
- package/dist/primitives/context.d.ts.map +1 -0
- package/dist/primitives/context.js +101 -0
- package/dist/primitives/context.js.map +1 -0
- package/dist/primitives/divider.d.ts +52 -0
- package/dist/primitives/divider.d.ts.map +1 -0
- package/dist/primitives/divider.js +71 -0
- package/dist/primitives/divider.js.map +1 -0
- package/dist/primitives/index.d.ts +10 -0
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/index.js +10 -0
- package/dist/primitives/index.js.map +1 -0
- package/dist/primitives/nodes.d.ts +152 -0
- package/dist/primitives/nodes.d.ts.map +1 -0
- package/dist/primitives/nodes.js +164 -0
- package/dist/primitives/nodes.js.map +1 -0
- package/dist/primitives/signal.d.ts +136 -0
- package/dist/primitives/signal.d.ts.map +1 -0
- package/dist/primitives/signal.js +338 -0
- package/dist/primitives/signal.js.map +1 -0
- package/dist/primitives/store.d.ts +86 -0
- package/dist/primitives/store.d.ts.map +1 -0
- package/dist/primitives/store.js +147 -0
- package/dist/primitives/store.js.map +1 -0
- package/dist/storybook/app.d.ts +16 -0
- package/dist/storybook/app.d.ts.map +1 -0
- package/dist/storybook/app.js +697 -0
- package/dist/storybook/app.js.map +1 -0
- package/dist/storybook/cli.d.ts +10 -0
- package/dist/storybook/cli.d.ts.map +1 -0
- package/dist/storybook/cli.js +14 -0
- package/dist/storybook/cli.js.map +1 -0
- package/dist/storybook/components/compare-view.d.ts +46 -0
- package/dist/storybook/components/compare-view.d.ts.map +1 -0
- package/dist/storybook/components/compare-view.js +235 -0
- package/dist/storybook/components/compare-view.js.map +1 -0
- package/dist/storybook/components/index.d.ts +7 -0
- package/dist/storybook/components/index.d.ts.map +1 -0
- package/dist/storybook/components/index.js +7 -0
- package/dist/storybook/components/index.js.map +1 -0
- package/dist/storybook/components/log-viewer.d.ts +9 -0
- package/dist/storybook/components/log-viewer.d.ts.map +1 -0
- package/dist/storybook/components/log-viewer.js +46 -0
- package/dist/storybook/components/log-viewer.js.map +1 -0
- package/dist/storybook/components/preview.d.ts +28 -0
- package/dist/storybook/components/preview.d.ts.map +1 -0
- package/dist/storybook/components/preview.js +248 -0
- package/dist/storybook/components/preview.js.map +1 -0
- package/dist/storybook/components/sidebar.d.ts +29 -0
- package/dist/storybook/components/sidebar.d.ts.map +1 -0
- package/dist/storybook/components/sidebar.js +176 -0
- package/dist/storybook/components/sidebar.js.map +1 -0
- package/dist/storybook/core/comparatives.d.ts +94 -0
- package/dist/storybook/core/comparatives.d.ts.map +1 -0
- package/dist/storybook/core/comparatives.js +301 -0
- package/dist/storybook/core/comparatives.js.map +1 -0
- package/dist/storybook/core/index.d.ts +8 -0
- package/dist/storybook/core/index.d.ts.map +1 -0
- package/dist/storybook/core/index.js +8 -0
- package/dist/storybook/core/index.js.map +1 -0
- package/dist/storybook/core/navigator.d.ts +64 -0
- package/dist/storybook/core/navigator.d.ts.map +1 -0
- package/dist/storybook/core/navigator.js +279 -0
- package/dist/storybook/core/navigator.js.map +1 -0
- package/dist/storybook/core/playground.d.ts +73 -0
- package/dist/storybook/core/playground.d.ts.map +1 -0
- package/dist/storybook/core/playground.js +338 -0
- package/dist/storybook/core/playground.js.map +1 -0
- package/dist/storybook/core/registry.d.ts +87 -0
- package/dist/storybook/core/registry.d.ts.map +1 -0
- package/dist/storybook/core/registry.js +222 -0
- package/dist/storybook/core/registry.js.map +1 -0
- package/dist/storybook/data/ascii-art.d.ts +18 -0
- package/dist/storybook/data/ascii-art.d.ts.map +1 -0
- package/dist/storybook/data/ascii-art.js +62 -0
- package/dist/storybook/data/ascii-art.js.map +1 -0
- package/dist/storybook/data/tuiuiu-bird-colored.d.ts +13 -0
- package/dist/storybook/data/tuiuiu-bird-colored.d.ts.map +1 -0
- package/dist/storybook/data/tuiuiu-bird-colored.js +12 -0
- package/dist/storybook/data/tuiuiu-bird-colored.js.map +1 -0
- package/dist/storybook/index.d.ts +33 -0
- package/dist/storybook/index.d.ts.map +1 -0
- package/dist/storybook/index.js +44 -0
- package/dist/storybook/index.js.map +1 -0
- package/dist/storybook/store.d.ts +39 -0
- package/dist/storybook/store.d.ts.map +1 -0
- package/dist/storybook/store.js +91 -0
- package/dist/storybook/store.js.map +1 -0
- package/dist/storybook/stories/apps/index.d.ts +24 -0
- package/dist/storybook/stories/apps/index.d.ts.map +1 -0
- package/dist/storybook/stories/apps/index.js +434 -0
- package/dist/storybook/stories/apps/index.js.map +1 -0
- package/dist/storybook/stories/atoms/index.d.ts +40 -0
- package/dist/storybook/stories/atoms/index.d.ts.map +1 -0
- package/dist/storybook/stories/atoms/index.js +462 -0
- package/dist/storybook/stories/atoms/index.js.map +1 -0
- package/dist/storybook/stories/index.d.ts +37 -0
- package/dist/storybook/stories/index.d.ts.map +1 -0
- package/dist/storybook/stories/index.js +56 -0
- package/dist/storybook/stories/index.js.map +1 -0
- package/dist/storybook/stories/molecules/index.d.ts +68 -0
- package/dist/storybook/stories/molecules/index.d.ts.map +1 -0
- package/dist/storybook/stories/molecules/index.js +587 -0
- package/dist/storybook/stories/molecules/index.js.map +1 -0
- package/dist/storybook/stories/organisms/index.d.ts +29 -0
- package/dist/storybook/stories/organisms/index.d.ts.map +1 -0
- package/dist/storybook/stories/organisms/index.js +677 -0
- package/dist/storybook/stories/organisms/index.js.map +1 -0
- package/dist/storybook/types.d.ts +40 -0
- package/dist/storybook/types.d.ts.map +1 -0
- package/dist/storybook/types.js +5 -0
- package/dist/storybook/types.js.map +1 -0
- package/dist/styling/index.d.ts +12 -0
- package/dist/styling/index.d.ts.map +1 -0
- package/dist/styling/index.js +24 -0
- package/dist/styling/index.js.map +1 -0
- package/dist/styling/parser.d.ts +217 -0
- package/dist/styling/parser.d.ts.map +1 -0
- package/dist/styling/parser.js +901 -0
- package/dist/styling/parser.js.map +1 -0
- package/dist/styling/resolver.d.ts +217 -0
- package/dist/styling/resolver.d.ts.map +1 -0
- package/dist/styling/resolver.js +628 -0
- package/dist/styling/resolver.js.map +1 -0
- package/dist/styling/tokenizer.d.ts +121 -0
- package/dist/styling/tokenizer.d.ts.map +1 -0
- package/dist/styling/tokenizer.js +553 -0
- package/dist/styling/tokenizer.js.map +1 -0
- package/dist/templates/app.d.ts +205 -0
- package/dist/templates/app.d.ts.map +1 -0
- package/dist/templates/app.js +286 -0
- package/dist/templates/app.js.map +1 -0
- package/dist/templates/index.d.ts +30 -0
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +40 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/templates/stack.d.ts +189 -0
- package/dist/templates/stack.d.ts.map +1 -0
- package/dist/templates/stack.js +170 -0
- package/dist/templates/stack.js.map +1 -0
- package/dist/utils/batcher.d.ts +88 -0
- package/dist/utils/batcher.d.ts.map +1 -0
- package/dist/utils/batcher.js +172 -0
- package/dist/utils/batcher.js.map +1 -0
- package/dist/utils/cursor.d.ts +28 -0
- package/dist/utils/cursor.d.ts.map +1 -0
- package/dist/utils/cursor.js +86 -0
- package/dist/utils/cursor.js.map +1 -0
- package/dist/utils/fs-storage.d.ts +23 -0
- package/dist/utils/fs-storage.d.ts.map +1 -0
- package/dist/utils/fs-storage.js +34 -0
- package/dist/utils/fs-storage.js.map +1 -0
- package/dist/utils/index.d.ts +14 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +15 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/log-update.d.ts +31 -0
- package/dist/utils/log-update.d.ts.map +1 -0
- package/dist/utils/log-update.js +147 -0
- package/dist/utils/log-update.js.map +1 -0
- package/dist/utils/text-utils.d.ts +151 -0
- package/dist/utils/text-utils.d.ts.map +1 -0
- package/dist/utils/text-utils.js +699 -0
- package/dist/utils/text-utils.js.map +1 -0
- package/dist/utils/types.d.ts +205 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/types.js +430 -0
- package/dist/utils/types.js.map +1 -0
- package/package.json +142 -0
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global Tick System
|
|
3
|
+
*
|
|
4
|
+
* A single timer that drives all animations in the application.
|
|
5
|
+
* Components subscribe to this tick instead of creating their own timers.
|
|
6
|
+
*
|
|
7
|
+
* Benefits:
|
|
8
|
+
* - Single setInterval for all animations (efficient)
|
|
9
|
+
* - Synchronized animations across components
|
|
10
|
+
* - Easy to pause/resume globally
|
|
11
|
+
* - Storybook can control the tick externally
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // Start the global tick (usually done once at app level)
|
|
15
|
+
* startTick();
|
|
16
|
+
*
|
|
17
|
+
* // In a component, use the tick value
|
|
18
|
+
* function MySpinner() {
|
|
19
|
+
* const frame = getTick() % spinnerFrames.length;
|
|
20
|
+
* return Text({}, spinnerFrames[frame]);
|
|
21
|
+
* }
|
|
22
|
+
*
|
|
23
|
+
* // Or subscribe to tick changes
|
|
24
|
+
* onTick(() => {
|
|
25
|
+
* // Called every tick
|
|
26
|
+
* });
|
|
27
|
+
*/
|
|
28
|
+
import { createSignal } from '../primitives/signal.js';
|
|
29
|
+
// Global tick state
|
|
30
|
+
const [tick, setTick] = createSignal(0);
|
|
31
|
+
const [isRunning, setIsRunning] = createSignal(false);
|
|
32
|
+
let tickInterval = null;
|
|
33
|
+
let tickRate = 100; // ms between ticks
|
|
34
|
+
const tickListeners = new Set();
|
|
35
|
+
/**
|
|
36
|
+
* Get current tick value (reactive)
|
|
37
|
+
*/
|
|
38
|
+
export function getTick() {
|
|
39
|
+
return tick();
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Get tick as a signal getter (for direct use in reactive contexts)
|
|
43
|
+
*/
|
|
44
|
+
export { tick };
|
|
45
|
+
/**
|
|
46
|
+
* Check if tick is running
|
|
47
|
+
*/
|
|
48
|
+
export function isTickRunning() {
|
|
49
|
+
return isRunning();
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Start the global tick
|
|
53
|
+
* @param rate - Tick interval in ms (default: 100)
|
|
54
|
+
*/
|
|
55
|
+
export function startTick(rate = 100) {
|
|
56
|
+
if (tickInterval)
|
|
57
|
+
return; // Already running
|
|
58
|
+
tickRate = rate;
|
|
59
|
+
setIsRunning(true);
|
|
60
|
+
tickInterval = setInterval(() => {
|
|
61
|
+
const newTick = tick() + 1;
|
|
62
|
+
setTick(newTick);
|
|
63
|
+
// Notify listeners
|
|
64
|
+
tickListeners.forEach(fn => fn(newTick));
|
|
65
|
+
}, tickRate);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Stop the global tick
|
|
69
|
+
*/
|
|
70
|
+
export function stopTick() {
|
|
71
|
+
if (tickInterval) {
|
|
72
|
+
clearInterval(tickInterval);
|
|
73
|
+
tickInterval = null;
|
|
74
|
+
}
|
|
75
|
+
setIsRunning(false);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Pause the tick (keeps current value)
|
|
79
|
+
*/
|
|
80
|
+
export function pauseTick() {
|
|
81
|
+
stopTick();
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Resume the tick from current value
|
|
85
|
+
*/
|
|
86
|
+
export function resumeTick() {
|
|
87
|
+
if (!isRunning()) {
|
|
88
|
+
startTick(tickRate);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Reset tick to 0
|
|
93
|
+
*/
|
|
94
|
+
export function resetTick() {
|
|
95
|
+
setTick(0);
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Set tick rate (restarts if running)
|
|
99
|
+
*/
|
|
100
|
+
export function setTickRate(rate) {
|
|
101
|
+
const wasRunning = isRunning();
|
|
102
|
+
stopTick();
|
|
103
|
+
tickRate = rate;
|
|
104
|
+
if (wasRunning) {
|
|
105
|
+
startTick(rate);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Get current tick rate
|
|
110
|
+
*/
|
|
111
|
+
export function getTickRate() {
|
|
112
|
+
return tickRate;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Subscribe to tick changes
|
|
116
|
+
* @returns Unsubscribe function
|
|
117
|
+
*/
|
|
118
|
+
export function onTick(callback) {
|
|
119
|
+
tickListeners.add(callback);
|
|
120
|
+
return () => tickListeners.delete(callback);
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Manually advance tick by N steps (useful for testing/storybook)
|
|
124
|
+
*/
|
|
125
|
+
export function advanceTick(steps = 1) {
|
|
126
|
+
setTick(tick() + steps);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Set tick to specific value (useful for testing/storybook)
|
|
130
|
+
*/
|
|
131
|
+
export function setTickValue(value) {
|
|
132
|
+
setTick(value);
|
|
133
|
+
}
|
|
134
|
+
// ============================================================================
|
|
135
|
+
// Utility functions for common animation patterns
|
|
136
|
+
// ============================================================================
|
|
137
|
+
/**
|
|
138
|
+
* Get a frame index for cycling through an array
|
|
139
|
+
* @param frames - Number of frames or array
|
|
140
|
+
* @param speed - How many ticks per frame change (default: 1)
|
|
141
|
+
*/
|
|
142
|
+
export function getFrame(frames, speed = 1) {
|
|
143
|
+
const length = typeof frames === 'number' ? frames : frames.length;
|
|
144
|
+
return Math.floor(tick() / speed) % length;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Get current item from an array based on tick
|
|
148
|
+
*/
|
|
149
|
+
export function getFrameItem(frames, speed = 1) {
|
|
150
|
+
return frames[getFrame(frames, speed)];
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Get a value that oscillates between 0 and max
|
|
154
|
+
* Useful for ping-pong animations
|
|
155
|
+
*/
|
|
156
|
+
export function oscillate(max, speed = 1) {
|
|
157
|
+
const period = max * 2;
|
|
158
|
+
const pos = Math.floor(tick() / speed) % period;
|
|
159
|
+
return pos < max ? pos : period - pos;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Get elapsed time in seconds since tick started
|
|
163
|
+
*/
|
|
164
|
+
export function getElapsedSeconds() {
|
|
165
|
+
return (tick() * tickRate) / 1000;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Check if we're on a specific tick interval
|
|
169
|
+
* Useful for: "do something every 10 ticks"
|
|
170
|
+
*/
|
|
171
|
+
export function everyNTicks(n) {
|
|
172
|
+
return tick() % n === 0;
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=tick.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tick.js","sourceRoot":"","sources":["../../src/core/tick.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Screen Transitions - Animated transitions between screens
|
|
3
|
+
*
|
|
4
|
+
* Provides smooth animated transitions for the Screen Manager,
|
|
5
|
+
* including slide, fade, and custom transition effects.
|
|
6
|
+
*
|
|
7
|
+
* Integrates with the animation system from Phase 004 including
|
|
8
|
+
* spring physics for natural-feeling animations.
|
|
9
|
+
*/
|
|
10
|
+
import { type HarmonicaSpringOptions, type EasingName, type EasingFunction } from './animation.js';
|
|
11
|
+
import type { Screen } from './screen.js';
|
|
12
|
+
/**
|
|
13
|
+
* Available screen transition effects
|
|
14
|
+
*/
|
|
15
|
+
export type ScreenTransitionType = 'slide-left' | 'slide-right' | 'slide-up' | 'slide-down' | 'fade' | 'scale' | 'none';
|
|
16
|
+
/**
|
|
17
|
+
* Configuration for a screen transition
|
|
18
|
+
*/
|
|
19
|
+
export interface ScreenTransitionConfig {
|
|
20
|
+
/** Type of transition animation */
|
|
21
|
+
type: ScreenTransitionType;
|
|
22
|
+
/** Duration in milliseconds (default: 300) */
|
|
23
|
+
duration?: number;
|
|
24
|
+
/** Easing function or name (default: 'ease-out') */
|
|
25
|
+
easing?: EasingName | EasingFunction;
|
|
26
|
+
/** Use spring physics instead of easing (default: false) */
|
|
27
|
+
useSpring?: boolean;
|
|
28
|
+
/** Spring configuration (if useSpring is true) */
|
|
29
|
+
springOptions?: HarmonicaSpringOptions;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* State of an in-progress screen transition
|
|
33
|
+
*/
|
|
34
|
+
export interface ScreenTransitionState {
|
|
35
|
+
/** Whether a transition is currently running */
|
|
36
|
+
isTransitioning: boolean;
|
|
37
|
+
/** Current progress (0-1) */
|
|
38
|
+
progress: number;
|
|
39
|
+
/** The transition type being used */
|
|
40
|
+
type: ScreenTransitionType;
|
|
41
|
+
/** Direction of navigation ('forward' | 'backward') */
|
|
42
|
+
direction: 'forward' | 'backward';
|
|
43
|
+
/** The screen being transitioned from */
|
|
44
|
+
fromScreen: Screen | null;
|
|
45
|
+
/** The screen being transitioned to */
|
|
46
|
+
toScreen: Screen | null;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Computed render offsets for transition rendering
|
|
50
|
+
*/
|
|
51
|
+
export interface TransitionOffsets {
|
|
52
|
+
/** Offset for the exiting screen */
|
|
53
|
+
from: {
|
|
54
|
+
x: number;
|
|
55
|
+
y: number;
|
|
56
|
+
opacity: number;
|
|
57
|
+
scale: number;
|
|
58
|
+
};
|
|
59
|
+
/** Offset for the entering screen */
|
|
60
|
+
to: {
|
|
61
|
+
x: number;
|
|
62
|
+
y: number;
|
|
63
|
+
opacity: number;
|
|
64
|
+
scale: number;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Options for the ScreenTransitionManager
|
|
69
|
+
*/
|
|
70
|
+
export interface ScreenTransitionManagerOptions {
|
|
71
|
+
/** Default transition for forward navigation */
|
|
72
|
+
defaultForward?: ScreenTransitionConfig;
|
|
73
|
+
/** Default transition for backward navigation */
|
|
74
|
+
defaultBackward?: ScreenTransitionConfig;
|
|
75
|
+
/** Terminal width for calculating offsets */
|
|
76
|
+
width?: number;
|
|
77
|
+
/** Terminal height for calculating offsets */
|
|
78
|
+
height?: number;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Callback for frame updates during transition
|
|
82
|
+
*/
|
|
83
|
+
export type TransitionFrameCallback = (state: ScreenTransitionState, offsets: TransitionOffsets) => void;
|
|
84
|
+
/** Default forward transition (slide left) */
|
|
85
|
+
export declare const DEFAULT_FORWARD_TRANSITION: ScreenTransitionConfig;
|
|
86
|
+
/** Default backward transition (slide right) */
|
|
87
|
+
export declare const DEFAULT_BACKWARD_TRANSITION: ScreenTransitionConfig;
|
|
88
|
+
/** Spring-based forward transition */
|
|
89
|
+
export declare const SPRING_FORWARD_TRANSITION: ScreenTransitionConfig;
|
|
90
|
+
/** Spring-based backward transition */
|
|
91
|
+
export declare const SPRING_BACKWARD_TRANSITION: ScreenTransitionConfig;
|
|
92
|
+
/** Fade transition */
|
|
93
|
+
export declare const FADE_TRANSITION: ScreenTransitionConfig;
|
|
94
|
+
/** No transition (instant) */
|
|
95
|
+
export declare const NO_TRANSITION: ScreenTransitionConfig;
|
|
96
|
+
/**
|
|
97
|
+
* Collection of pre-configured transition presets
|
|
98
|
+
*/
|
|
99
|
+
export declare const transitionPresets: {
|
|
100
|
+
/** iOS-style slide transitions */
|
|
101
|
+
readonly ios: {
|
|
102
|
+
readonly forward: {
|
|
103
|
+
readonly type: "slide-left";
|
|
104
|
+
readonly useSpring: true;
|
|
105
|
+
readonly springOptions: {
|
|
106
|
+
readonly frequency: 12;
|
|
107
|
+
readonly damping: 0.9;
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
readonly backward: {
|
|
111
|
+
readonly type: "slide-right";
|
|
112
|
+
readonly useSpring: true;
|
|
113
|
+
readonly springOptions: {
|
|
114
|
+
readonly frequency: 12;
|
|
115
|
+
readonly damping: 0.9;
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
/** Android-style fade transitions */
|
|
120
|
+
readonly android: {
|
|
121
|
+
readonly forward: {
|
|
122
|
+
readonly type: "fade";
|
|
123
|
+
readonly duration: 200;
|
|
124
|
+
readonly easing: "ease-out";
|
|
125
|
+
};
|
|
126
|
+
readonly backward: {
|
|
127
|
+
readonly type: "fade";
|
|
128
|
+
readonly duration: 150;
|
|
129
|
+
readonly easing: "ease-in";
|
|
130
|
+
};
|
|
131
|
+
};
|
|
132
|
+
/** Material Design style */
|
|
133
|
+
readonly material: {
|
|
134
|
+
readonly forward: {
|
|
135
|
+
readonly type: "slide-up";
|
|
136
|
+
readonly duration: 250;
|
|
137
|
+
readonly easing: "ease-out";
|
|
138
|
+
};
|
|
139
|
+
readonly backward: {
|
|
140
|
+
readonly type: "slide-down";
|
|
141
|
+
readonly duration: 200;
|
|
142
|
+
readonly easing: "ease-in";
|
|
143
|
+
};
|
|
144
|
+
};
|
|
145
|
+
/** Quick slide transitions */
|
|
146
|
+
readonly quick: {
|
|
147
|
+
readonly forward: {
|
|
148
|
+
readonly type: "slide-left";
|
|
149
|
+
readonly duration: 150;
|
|
150
|
+
readonly easing: "ease-out";
|
|
151
|
+
};
|
|
152
|
+
readonly backward: {
|
|
153
|
+
readonly type: "slide-right";
|
|
154
|
+
readonly duration: 150;
|
|
155
|
+
readonly easing: "ease-out";
|
|
156
|
+
};
|
|
157
|
+
};
|
|
158
|
+
/** Smooth spring transitions */
|
|
159
|
+
readonly smooth: {
|
|
160
|
+
readonly forward: {
|
|
161
|
+
readonly type: "slide-left";
|
|
162
|
+
readonly useSpring: true;
|
|
163
|
+
readonly springOptions: {
|
|
164
|
+
readonly frequency: 6;
|
|
165
|
+
readonly damping: 0.75;
|
|
166
|
+
};
|
|
167
|
+
};
|
|
168
|
+
readonly backward: {
|
|
169
|
+
readonly type: "slide-right";
|
|
170
|
+
readonly useSpring: true;
|
|
171
|
+
readonly springOptions: {
|
|
172
|
+
readonly frequency: 6;
|
|
173
|
+
readonly damping: 0.75;
|
|
174
|
+
};
|
|
175
|
+
};
|
|
176
|
+
};
|
|
177
|
+
/** Instant transitions (no animation) */
|
|
178
|
+
readonly instant: {
|
|
179
|
+
readonly forward: ScreenTransitionConfig;
|
|
180
|
+
readonly backward: ScreenTransitionConfig;
|
|
181
|
+
};
|
|
182
|
+
};
|
|
183
|
+
/**
|
|
184
|
+
* Calculate render offsets for a given transition state
|
|
185
|
+
*/
|
|
186
|
+
export declare function calculateTransitionOffsets(state: ScreenTransitionState, width: number, height: number): TransitionOffsets;
|
|
187
|
+
/**
|
|
188
|
+
* ScreenTransitionManager - Manages animated transitions between screens
|
|
189
|
+
*
|
|
190
|
+
* Integrates with the ScreenManager to provide smooth animated transitions
|
|
191
|
+
* when navigating between screens.
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* ```typescript
|
|
195
|
+
* const transitionManager = createScreenTransitionManager({
|
|
196
|
+
* width: 80,
|
|
197
|
+
* height: 24,
|
|
198
|
+
* defaultForward: transitionPresets.ios.forward,
|
|
199
|
+
* defaultBackward: transitionPresets.ios.backward,
|
|
200
|
+
* });
|
|
201
|
+
*
|
|
202
|
+
* // Start a transition
|
|
203
|
+
* transitionManager.start(fromScreen, toScreen, 'forward', (state, offsets) => {
|
|
204
|
+
* // Render both screens with offsets
|
|
205
|
+
* renderWithOffsets(fromScreen, offsets.from);
|
|
206
|
+
* renderWithOffsets(toScreen, offsets.to);
|
|
207
|
+
* });
|
|
208
|
+
* ```
|
|
209
|
+
*/
|
|
210
|
+
export declare class ScreenTransitionManager {
|
|
211
|
+
private width;
|
|
212
|
+
private height;
|
|
213
|
+
private defaultForward;
|
|
214
|
+
private defaultBackward;
|
|
215
|
+
private _state;
|
|
216
|
+
private animation;
|
|
217
|
+
private spring;
|
|
218
|
+
private frameCallback;
|
|
219
|
+
private completeCallback;
|
|
220
|
+
constructor(options?: ScreenTransitionManagerOptions);
|
|
221
|
+
/**
|
|
222
|
+
* Get current transition state signal
|
|
223
|
+
*/
|
|
224
|
+
get state(): () => ScreenTransitionState;
|
|
225
|
+
/**
|
|
226
|
+
* Check if a transition is currently running
|
|
227
|
+
*/
|
|
228
|
+
get isTransitioning(): boolean;
|
|
229
|
+
/**
|
|
230
|
+
* Get current progress (0-1)
|
|
231
|
+
*/
|
|
232
|
+
get progress(): number;
|
|
233
|
+
/**
|
|
234
|
+
* Set terminal dimensions
|
|
235
|
+
*/
|
|
236
|
+
setDimensions(width: number, height: number): void;
|
|
237
|
+
/**
|
|
238
|
+
* Set default transition configurations
|
|
239
|
+
*/
|
|
240
|
+
setDefaults(forward?: ScreenTransitionConfig, backward?: ScreenTransitionConfig): void;
|
|
241
|
+
/**
|
|
242
|
+
* Start a screen transition
|
|
243
|
+
*
|
|
244
|
+
* @param from - Screen being transitioned from
|
|
245
|
+
* @param to - Screen being transitioned to
|
|
246
|
+
* @param direction - Navigation direction
|
|
247
|
+
* @param onFrame - Callback for each animation frame
|
|
248
|
+
* @param config - Optional transition configuration override
|
|
249
|
+
* @returns Promise that resolves when transition completes
|
|
250
|
+
*/
|
|
251
|
+
start(from: Screen | null, to: Screen, direction: 'forward' | 'backward', onFrame?: TransitionFrameCallback, config?: ScreenTransitionConfig): Promise<void>;
|
|
252
|
+
/**
|
|
253
|
+
* Stop the current transition
|
|
254
|
+
*/
|
|
255
|
+
stop(): void;
|
|
256
|
+
/**
|
|
257
|
+
* Get current offsets for rendering
|
|
258
|
+
*/
|
|
259
|
+
getOffsets(): TransitionOffsets;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Create a new ScreenTransitionManager
|
|
263
|
+
*/
|
|
264
|
+
export declare function createScreenTransitionManager(options?: ScreenTransitionManagerOptions): ScreenTransitionManager;
|
|
265
|
+
/**
|
|
266
|
+
* Get the global transition manager instance
|
|
267
|
+
*/
|
|
268
|
+
export declare function getTransitionManager(): ScreenTransitionManager;
|
|
269
|
+
/**
|
|
270
|
+
* Reset the global transition manager
|
|
271
|
+
*/
|
|
272
|
+
export declare function resetTransitionManager(): void;
|
|
273
|
+
/**
|
|
274
|
+
* Create a custom transition configuration
|
|
275
|
+
*/
|
|
276
|
+
export declare function createTransition(type: ScreenTransitionType, options?: Partial<Omit<ScreenTransitionConfig, 'type'>>): ScreenTransitionConfig;
|
|
277
|
+
/**
|
|
278
|
+
* Create a spring-based transition
|
|
279
|
+
*/
|
|
280
|
+
export declare function createSpringTransition(type: ScreenTransitionType, springOptions?: HarmonicaSpringOptions): ScreenTransitionConfig;
|
|
281
|
+
/**
|
|
282
|
+
* Apply horizontal offset to content lines
|
|
283
|
+
* Shifts content left (negative) or right (positive)
|
|
284
|
+
*/
|
|
285
|
+
export declare function applyHorizontalOffset(content: string, offset: number, width: number): string;
|
|
286
|
+
/**
|
|
287
|
+
* Apply vertical offset to content lines
|
|
288
|
+
* Shifts content up (negative) or down (positive)
|
|
289
|
+
*/
|
|
290
|
+
export declare function applyVerticalOffset(content: string, offset: number, height: number): string;
|
|
291
|
+
/**
|
|
292
|
+
* Apply opacity effect using dimmed characters
|
|
293
|
+
* This is a simplified terminal approximation of opacity
|
|
294
|
+
*/
|
|
295
|
+
export declare function applyOpacity(content: string, opacity: number): string;
|
|
296
|
+
/**
|
|
297
|
+
* Composite two screens during transition
|
|
298
|
+
* Handles overlaying exiting and entering screens based on offsets
|
|
299
|
+
*/
|
|
300
|
+
export declare function compositeScreens(fromContent: string, toContent: string, offsets: TransitionOffsets, width: number, height: number): string;
|
|
301
|
+
/**
|
|
302
|
+
* Hook for using screen transitions in components
|
|
303
|
+
*
|
|
304
|
+
* @example
|
|
305
|
+
* ```typescript
|
|
306
|
+
* function NavigationView() {
|
|
307
|
+
* const transition = useScreenTransition({
|
|
308
|
+
* width: 80,
|
|
309
|
+
* height: 24,
|
|
310
|
+
* });
|
|
311
|
+
*
|
|
312
|
+
* const handleNavigate = async (toScreen: Screen) => {
|
|
313
|
+
* await transition.run(currentScreen, toScreen, 'forward');
|
|
314
|
+
* setCurrentScreen(toScreen);
|
|
315
|
+
* };
|
|
316
|
+
*
|
|
317
|
+
* return Box({},
|
|
318
|
+
* transition.isTransitioning()
|
|
319
|
+
* ? Text({}, transition.render(fromContent, toContent))
|
|
320
|
+
* : renderScreen(currentScreen)
|
|
321
|
+
* );
|
|
322
|
+
* }
|
|
323
|
+
* ```
|
|
324
|
+
*/
|
|
325
|
+
export declare function useScreenTransition(options?: ScreenTransitionManagerOptions): {
|
|
326
|
+
run: (from: Screen | null, to: Screen, direction: "forward" | "backward", config?: ScreenTransitionConfig) => Promise<void>;
|
|
327
|
+
stop: () => void;
|
|
328
|
+
isTransitioning: () => boolean;
|
|
329
|
+
progress: () => number;
|
|
330
|
+
state: () => ScreenTransitionState;
|
|
331
|
+
getOffsets: () => TransitionOffsets;
|
|
332
|
+
render: (fromContent: string, toContent: string) => string;
|
|
333
|
+
manager: ScreenTransitionManager;
|
|
334
|
+
};
|
|
335
|
+
//# sourceMappingURL=transitions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transitions.d.ts","sourceRoot":"","sources":["../../src/core/transitions.ts"],"names":[],"mappings":"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"}
|