tuiuiu.js 0.1.1 → 0.1.4-next.64ff654
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/README.md +67 -36
- package/dist/atoms/button.d.ts.map +1 -1
- package/dist/atoms/button.js +17 -9
- package/dist/atoms/button.js.map +1 -1
- package/dist/atoms/text-input.d.ts +2 -0
- package/dist/atoms/text-input.d.ts.map +1 -1
- package/dist/atoms/text-input.js +13 -7
- package/dist/atoms/text-input.js.map +1 -1
- package/dist/atoms/tooltip.d.ts.map +1 -1
- package/dist/atoms/tooltip.js +2 -1
- package/dist/atoms/tooltip.js.map +1 -1
- package/dist/cli/commands/help.d.ts +5 -0
- package/dist/cli/commands/help.d.ts.map +1 -0
- package/dist/cli/commands/help.js +31 -0
- package/dist/cli/commands/help.js.map +1 -0
- package/dist/cli/commands/mcp.d.ts +11 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -0
- package/dist/cli/commands/mcp.js +21 -0
- package/dist/cli/commands/mcp.js.map +1 -0
- package/dist/cli/commands/storybook.d.ts +5 -0
- package/dist/cli/commands/storybook.d.ts.map +1 -0
- package/dist/cli/commands/storybook.js +9 -0
- package/dist/cli/commands/storybook.js.map +1 -0
- package/dist/cli/index.d.ts +14 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +50 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core/error-boundary.d.ts.map +1 -1
- package/dist/core/error-boundary.js +2 -1
- package/dist/core/error-boundary.js.map +1 -1
- package/dist/core/hotkeys.d.ts +62 -0
- package/dist/core/hotkeys.d.ts.map +1 -0
- package/dist/core/hotkeys.js +0 -0
- package/dist/core/hotkeys.js.map +1 -0
- package/dist/core/index.d.ts +3 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +9 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/screen.d.ts.map +1 -1
- package/dist/core/screen.js +2 -0
- package/dist/core/screen.js.map +1 -1
- package/dist/core/theme.d.ts +79 -0
- package/dist/core/theme.d.ts.map +1 -1
- package/dist/core/theme.js +358 -0
- package/dist/core/theme.js.map +1 -1
- package/dist/design-system/data-display/index.d.ts +9 -6
- package/dist/design-system/data-display/index.d.ts.map +1 -1
- package/dist/design-system/data-display/index.js +16 -7
- package/dist/design-system/data-display/index.js.map +1 -1
- package/dist/design-system/feedback/badge.d.ts +21 -4
- package/dist/design-system/feedback/badge.d.ts.map +1 -1
- package/dist/design-system/feedback/badge.js +15 -2
- package/dist/design-system/feedback/badge.js.map +1 -1
- package/dist/design-system/forms/index.d.ts +11 -8
- package/dist/design-system/forms/index.d.ts.map +1 -1
- package/dist/design-system/forms/index.js +19 -10
- package/dist/design-system/forms/index.js.map +1 -1
- package/dist/design-system/layout/index.d.ts +7 -4
- package/dist/design-system/layout/index.d.ts.map +1 -1
- package/dist/design-system/layout/index.js +18 -6
- package/dist/design-system/layout/index.js.map +1 -1
- package/dist/design-system/media/picture.d.ts.map +1 -1
- package/dist/design-system/media/picture.js +2 -1
- package/dist/design-system/media/picture.js.map +1 -1
- package/dist/design-system/overlays/index.d.ts +6 -3
- package/dist/design-system/overlays/index.d.ts.map +1 -1
- package/dist/design-system/overlays/index.js +9 -3
- package/dist/design-system/overlays/index.js.map +1 -1
- package/dist/design-system/visual/splash-screen.d.ts.map +1 -1
- package/dist/design-system/visual/splash-screen.js +38 -18
- package/dist/design-system/visual/splash-screen.js.map +1 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/use-hotkeys.d.ts +153 -0
- package/dist/hooks/use-hotkeys.d.ts.map +1 -0
- package/dist/hooks/use-hotkeys.js +379 -0
- package/dist/hooks/use-hotkeys.js.map +1 -0
- package/dist/hooks/use-input.d.ts +2 -10
- package/dist/hooks/use-input.d.ts.map +1 -1
- package/dist/hooks/use-input.js +2 -287
- package/dist/hooks/use-input.js.map +1 -1
- package/dist/hooks/use-mouse.d.ts +5 -0
- package/dist/hooks/use-mouse.d.ts.map +1 -1
- package/dist/hooks/use-mouse.js +29 -11
- package/dist/hooks/use-mouse.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -3
- package/dist/index.js.map +1 -1
- package/dist/mcp/docs-data.d.ts +31 -0
- package/dist/mcp/docs-data.d.ts.map +1 -0
- package/dist/mcp/docs-data.js +637 -0
- package/dist/mcp/docs-data.js.map +1 -0
- package/dist/mcp/index.d.ts +14 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +12 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/server.d.ts +31 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +597 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/types.d.ts +114 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +16 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/molecules/autocomplete.d.ts.map +1 -1
- package/dist/molecules/autocomplete.js +2 -1
- package/dist/molecules/autocomplete.js.map +1 -1
- package/dist/molecules/calendar.d.ts.map +1 -1
- package/dist/molecules/calendar.js +5 -3
- package/dist/molecules/calendar.js.map +1 -1
- package/dist/molecules/data-viz/annotations.d.ts +75 -0
- package/dist/molecules/data-viz/annotations.d.ts.map +1 -0
- package/dist/molecules/data-viz/annotations.js +40 -0
- package/dist/molecules/data-viz/annotations.js.map +1 -0
- package/dist/molecules/data-viz/gantt-chart.d.ts +66 -0
- package/dist/molecules/data-viz/gantt-chart.d.ts.map +1 -0
- package/dist/molecules/data-viz/gantt-chart.js +134 -0
- package/dist/molecules/data-viz/gantt-chart.js.map +1 -0
- package/dist/molecules/data-viz/gauge.d.ts +2 -2
- package/dist/molecules/data-viz/gauge.d.ts.map +1 -1
- package/dist/molecules/data-viz/gauge.js +24 -8
- package/dist/molecules/data-viz/gauge.js.map +1 -1
- package/dist/molecules/data-viz/heatmap.d.ts +8 -2
- package/dist/molecules/data-viz/heatmap.d.ts.map +1 -1
- package/dist/molecules/data-viz/heatmap.js +41 -9
- package/dist/molecules/data-viz/heatmap.js.map +1 -1
- package/dist/molecules/data-viz/hooks.d.ts +264 -0
- package/dist/molecules/data-viz/hooks.d.ts.map +1 -0
- package/dist/molecules/data-viz/hooks.js +373 -0
- package/dist/molecules/data-viz/hooks.js.map +1 -0
- package/dist/molecules/data-viz/index.d.ts +14 -0
- package/dist/molecules/data-viz/index.d.ts.map +1 -1
- package/dist/molecules/data-viz/index.js +14 -0
- package/dist/molecules/data-viz/index.js.map +1 -1
- package/dist/molecules/data-viz/legend.d.ts +82 -0
- package/dist/molecules/data-viz/legend.d.ts.map +1 -0
- package/dist/molecules/data-viz/legend.js +146 -0
- package/dist/molecules/data-viz/legend.js.map +1 -0
- package/dist/molecules/data-viz/line-chart.d.ts.map +1 -1
- package/dist/molecules/data-viz/line-chart.js +48 -12
- package/dist/molecules/data-viz/line-chart.js.map +1 -1
- package/dist/molecules/data-viz/radar-chart.d.ts +61 -0
- package/dist/molecules/data-viz/radar-chart.d.ts.map +1 -0
- package/dist/molecules/data-viz/radar-chart.js +86 -0
- package/dist/molecules/data-viz/radar-chart.js.map +1 -0
- package/dist/molecules/data-viz/scatter-plot.d.ts +97 -0
- package/dist/molecules/data-viz/scatter-plot.d.ts.map +1 -0
- package/dist/molecules/data-viz/scatter-plot.js +205 -0
- package/dist/molecules/data-viz/scatter-plot.js.map +1 -0
- package/dist/molecules/data-viz/time-heatmap.d.ts +48 -0
- package/dist/molecules/data-viz/time-heatmap.d.ts.map +1 -0
- package/dist/molecules/data-viz/time-heatmap.js +145 -0
- package/dist/molecules/data-viz/time-heatmap.js.map +1 -0
- package/dist/molecules/select.d.ts +2 -0
- package/dist/molecules/select.d.ts.map +1 -1
- package/dist/molecules/select.js +4 -3
- package/dist/molecules/select.js.map +1 -1
- package/dist/molecules/tabs.d.ts.map +1 -1
- package/dist/molecules/tabs.js +14 -2
- package/dist/molecules/tabs.js.map +1 -1
- package/dist/organisms/command-palette.d.ts.map +1 -1
- package/dist/organisms/command-palette.js +2 -1
- package/dist/organisms/command-palette.js.map +1 -1
- package/dist/storybook/app.d.ts.map +1 -1
- package/dist/storybook/app.js +53 -44
- package/dist/storybook/app.js.map +1 -1
- package/dist/storybook/components/compare-view.d.ts.map +1 -1
- package/dist/storybook/components/compare-view.js +19 -18
- package/dist/storybook/components/compare-view.js.map +1 -1
- package/dist/storybook/components/log-viewer.d.ts.map +1 -1
- package/dist/storybook/components/log-viewer.js +9 -8
- package/dist/storybook/components/log-viewer.js.map +1 -1
- package/dist/storybook/components/preview.d.ts.map +1 -1
- package/dist/storybook/components/preview.js +34 -33
- package/dist/storybook/components/preview.js.map +1 -1
- package/dist/storybook/components/sidebar.d.ts.map +1 -1
- package/dist/storybook/components/sidebar.js +21 -20
- package/dist/storybook/components/sidebar.js.map +1 -1
- package/dist/storybook/stories/apps/index.d.ts.map +1 -1
- package/dist/storybook/stories/apps/index.js +306 -209
- package/dist/storybook/stories/apps/index.js.map +1 -1
- package/dist/storybook/stories/atoms/index.d.ts.map +1 -1
- package/dist/storybook/stories/atoms/index.js.map +1 -1
- package/dist/storybook/stories/molecules/index.d.ts +25 -0
- package/dist/storybook/stories/molecules/index.d.ts.map +1 -1
- package/dist/storybook/stories/molecules/index.js +402 -20
- package/dist/storybook/stories/molecules/index.js.map +1 -1
- package/dist/storybook/stories/organisms/index.d.ts.map +1 -1
- package/dist/storybook/stories/organisms/index.js +1 -1
- package/dist/storybook/stories/organisms/index.js.map +1 -1
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/system-data.d.ts +73 -0
- package/dist/utils/system-data.d.ts.map +1 -0
- package/dist/utils/system-data.js +367 -0
- package/dist/utils/system-data.js.map +1 -0
- package/dist/version.d.ts +43 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +82 -0
- package/dist/version.js.map +1 -0
- package/package.json +22 -22
- package/dist/components/canvas.d.ts +0 -322
- package/dist/components/canvas.d.ts.map +0 -1
- package/dist/components/canvas.js +0 -833
- package/dist/components/canvas.js.map +0 -1
- package/dist/components/code-block.d.ts +0 -75
- package/dist/components/code-block.d.ts.map +0 -1
- package/dist/components/code-block.js +0 -322
- package/dist/components/code-block.js.map +0 -1
- package/dist/components/components.d.ts +0 -122
- package/dist/components/components.d.ts.map +0 -1
- package/dist/components/components.js +0 -151
- package/dist/components/components.js.map +0 -1
- package/dist/components/data-viz/bar-chart.d.ts +0 -167
- package/dist/components/data-viz/bar-chart.d.ts.map +0 -1
- package/dist/components/data-viz/bar-chart.js +0 -375
- package/dist/components/data-viz/bar-chart.js.map +0 -1
- package/dist/components/data-viz/gauge.d.ts +0 -163
- package/dist/components/data-viz/gauge.d.ts.map +0 -1
- package/dist/components/data-viz/gauge.js +0 -451
- package/dist/components/data-viz/gauge.js.map +0 -1
- package/dist/components/data-viz/heatmap.d.ts +0 -154
- package/dist/components/data-viz/heatmap.d.ts.map +0 -1
- package/dist/components/data-viz/heatmap.js +0 -458
- package/dist/components/data-viz/heatmap.js.map +0 -1
- package/dist/components/data-viz/index.d.ts +0 -16
- package/dist/components/data-viz/index.d.ts.map +0 -1
- package/dist/components/data-viz/index.js +0 -16
- package/dist/components/data-viz/index.js.map +0 -1
- package/dist/components/data-viz/line-chart.d.ts +0 -157
- package/dist/components/data-viz/line-chart.d.ts.map +0 -1
- package/dist/components/data-viz/line-chart.js +0 -578
- package/dist/components/data-viz/line-chart.js.map +0 -1
- package/dist/components/data-viz/sparkline.d.ts +0 -156
- package/dist/components/data-viz/sparkline.d.ts.map +0 -1
- package/dist/components/data-viz/sparkline.js +0 -325
- package/dist/components/data-viz/sparkline.js.map +0 -1
- package/dist/components/grid.d.ts +0 -234
- package/dist/components/grid.d.ts.map +0 -1
- package/dist/components/grid.js +0 -719
- package/dist/components/grid.js.map +0 -1
- package/dist/components/index.d.ts +0 -33
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/index.js +0 -69
- package/dist/components/index.js.map +0 -1
- package/dist/components/markdown.d.ts +0 -52
- package/dist/components/markdown.d.ts.map +0 -1
- package/dist/components/markdown.js +0 -341
- package/dist/components/markdown.js.map +0 -1
- package/dist/components/modal.d.ts +0 -237
- package/dist/components/modal.d.ts.map +0 -1
- package/dist/components/modal.js +0 -396
- package/dist/components/modal.js.map +0 -1
- package/dist/components/progress-bar.d.ts +0 -89
- package/dist/components/progress-bar.d.ts.map +0 -1
- package/dist/components/progress-bar.js +0 -288
- package/dist/components/progress-bar.js.map +0 -1
- package/dist/components/select.d.ts +0 -114
- package/dist/components/select.d.ts.map +0 -1
- package/dist/components/select.js +0 -415
- package/dist/components/select.js.map +0 -1
- package/dist/components/spinner.d.ts +0 -71
- package/dist/components/spinner.d.ts.map +0 -1
- package/dist/components/spinner.js +0 -300
- package/dist/components/spinner.js.map +0 -1
- package/dist/components/split-panel.d.ts +0 -175
- package/dist/components/split-panel.d.ts.map +0 -1
- package/dist/components/split-panel.js +0 -322
- package/dist/components/split-panel.js.map +0 -1
- package/dist/components/table.d.ts +0 -103
- package/dist/components/table.d.ts.map +0 -1
- package/dist/components/table.js +0 -359
- package/dist/components/table.js.map +0 -1
- package/dist/components/text-input.d.ts +0 -79
- package/dist/components/text-input.d.ts.map +0 -1
- package/dist/components/text-input.js +0 -332
- package/dist/components/text-input.js.map +0 -1
- package/dist/design-system/data-display/calendar.d.ts +0 -141
- package/dist/design-system/data-display/calendar.d.ts.map +0 -1
- package/dist/design-system/data-display/calendar.js +0 -524
- package/dist/design-system/data-display/calendar.js.map +0 -1
- package/dist/design-system/data-display/code-block.d.ts +0 -75
- package/dist/design-system/data-display/code-block.d.ts.map +0 -1
- package/dist/design-system/data-display/code-block.js +0 -311
- package/dist/design-system/data-display/code-block.js.map +0 -1
- package/dist/design-system/data-display/data-table.d.ts +0 -173
- package/dist/design-system/data-display/data-table.d.ts.map +0 -1
- package/dist/design-system/data-display/data-table.js +0 -428
- package/dist/design-system/data-display/data-table.js.map +0 -1
- package/dist/design-system/data-display/markdown.d.ts +0 -52
- package/dist/design-system/data-display/markdown.d.ts.map +0 -1
- package/dist/design-system/data-display/markdown.js +0 -341
- package/dist/design-system/data-display/markdown.js.map +0 -1
- package/dist/design-system/data-display/table.d.ts +0 -103
- package/dist/design-system/data-display/table.d.ts.map +0 -1
- package/dist/design-system/data-display/table.js +0 -342
- package/dist/design-system/data-display/table.js.map +0 -1
- package/dist/design-system/data-display/tree.d.ts +0 -166
- package/dist/design-system/data-display/tree.d.ts.map +0 -1
- package/dist/design-system/data-display/tree.js +0 -428
- package/dist/design-system/data-display/tree.js.map +0 -1
- package/dist/design-system/forms/autocomplete.d.ts +0 -163
- package/dist/design-system/forms/autocomplete.d.ts.map +0 -1
- package/dist/design-system/forms/autocomplete.js +0 -455
- package/dist/design-system/forms/autocomplete.js.map +0 -1
- package/dist/design-system/forms/button.d.ts +0 -106
- package/dist/design-system/forms/button.d.ts.map +0 -1
- package/dist/design-system/forms/button.js +0 -170
- package/dist/design-system/forms/button.js.map +0 -1
- package/dist/design-system/forms/multi-select.d.ts +0 -102
- package/dist/design-system/forms/multi-select.d.ts.map +0 -1
- package/dist/design-system/forms/multi-select.js +0 -309
- package/dist/design-system/forms/multi-select.js.map +0 -1
- package/dist/design-system/forms/radio-group.d.ts +0 -88
- package/dist/design-system/forms/radio-group.d.ts.map +0 -1
- package/dist/design-system/forms/radio-group.js +0 -145
- package/dist/design-system/forms/radio-group.js.map +0 -1
- package/dist/design-system/forms/select.d.ts +0 -116
- package/dist/design-system/forms/select.d.ts.map +0 -1
- package/dist/design-system/forms/select.js +0 -441
- package/dist/design-system/forms/select.js.map +0 -1
- package/dist/design-system/forms/slider.d.ts +0 -134
- package/dist/design-system/forms/slider.d.ts.map +0 -1
- package/dist/design-system/forms/slider.js +0 -314
- package/dist/design-system/forms/slider.js.map +0 -1
- package/dist/design-system/forms/switch.d.ts +0 -99
- package/dist/design-system/forms/switch.d.ts.map +0 -1
- package/dist/design-system/forms/switch.js +0 -173
- package/dist/design-system/forms/switch.js.map +0 -1
- package/dist/design-system/forms/text-input.d.ts +0 -79
- package/dist/design-system/forms/text-input.d.ts.map +0 -1
- package/dist/design-system/forms/text-input.js +0 -344
- package/dist/design-system/forms/text-input.js.map +0 -1
- package/dist/design-system/layout/collapsible.d.ts +0 -166
- package/dist/design-system/layout/collapsible.d.ts.map +0 -1
- package/dist/design-system/layout/collapsible.js +0 -286
- package/dist/design-system/layout/collapsible.js.map +0 -1
- package/dist/design-system/layout/scroll-area.d.ts +0 -188
- package/dist/design-system/layout/scroll-area.d.ts.map +0 -1
- package/dist/design-system/layout/scroll-area.js +0 -348
- package/dist/design-system/layout/scroll-area.js.map +0 -1
- package/dist/design-system/layout/split-panel.d.ts +0 -183
- package/dist/design-system/layout/split-panel.d.ts.map +0 -1
- package/dist/design-system/layout/split-panel.js +0 -323
- package/dist/design-system/layout/split-panel.js.map +0 -1
- package/dist/design-system/layout/tabs.d.ts +0 -129
- package/dist/design-system/layout/tabs.d.ts.map +0 -1
- package/dist/design-system/layout/tabs.js +0 -373
- package/dist/design-system/layout/tabs.js.map +0 -1
- package/dist/design-system/overlays/command-palette.d.ts +0 -217
- package/dist/design-system/overlays/command-palette.d.ts.map +0 -1
- package/dist/design-system/overlays/command-palette.js +0 -443
- package/dist/design-system/overlays/command-palette.js.map +0 -1
- package/dist/design-system/overlays/modal.d.ts +0 -251
- package/dist/design-system/overlays/modal.d.ts.map +0 -1
- package/dist/design-system/overlays/modal.js +0 -461
- package/dist/design-system/overlays/modal.js.map +0 -1
- package/dist/design-system/overlays/overlay-stack.d.ts +0 -200
- package/dist/design-system/overlays/overlay-stack.d.ts.map +0 -1
- package/dist/design-system/overlays/overlay-stack.js +0 -341
- package/dist/design-system/overlays/overlay-stack.js.map +0 -1
- package/dist/design-system/primitives/box.d.ts +0 -16
- package/dist/design-system/primitives/box.d.ts.map +0 -1
- package/dist/design-system/primitives/box.js +0 -23
- package/dist/design-system/primitives/box.js.map +0 -1
- package/dist/design-system/primitives/divider.d.ts +0 -52
- package/dist/design-system/primitives/divider.d.ts.map +0 -1
- package/dist/design-system/primitives/divider.js +0 -72
- package/dist/design-system/primitives/divider.js.map +0 -1
- package/dist/design-system/primitives/helpers.d.ts +0 -10
- package/dist/design-system/primitives/helpers.d.ts.map +0 -1
- package/dist/design-system/primitives/helpers.js +0 -27
- package/dist/design-system/primitives/helpers.js.map +0 -1
- package/dist/design-system/primitives/index.d.ts +0 -11
- package/dist/design-system/primitives/index.d.ts.map +0 -1
- package/dist/design-system/primitives/index.js +0 -14
- package/dist/design-system/primitives/index.js.map +0 -1
- package/dist/design-system/primitives/slot.d.ts +0 -35
- package/dist/design-system/primitives/slot.d.ts.map +0 -1
- package/dist/design-system/primitives/slot.js +0 -17
- package/dist/design-system/primitives/slot.js.map +0 -1
- package/dist/design-system/primitives/spacer.d.ts +0 -34
- package/dist/design-system/primitives/spacer.d.ts.map +0 -1
- package/dist/design-system/primitives/spacer.js +0 -53
- package/dist/design-system/primitives/spacer.js.map +0 -1
- package/dist/design-system/primitives/text.d.ts +0 -12
- package/dist/design-system/primitives/text.d.ts.map +0 -1
- package/dist/design-system/primitives/text.js +0 -25
- package/dist/design-system/primitives/text.js.map +0 -1
- package/dist/design-system/primitives/utilities.d.ts +0 -70
- package/dist/design-system/primitives/utilities.d.ts.map +0 -1
- package/dist/design-system/primitives/utilities.js +0 -56
- package/dist/design-system/primitives/utilities.js.map +0 -1
- package/dist/storybook/cli.d.ts +0 -10
- package/dist/storybook/cli.d.ts.map +0 -1
- package/dist/storybook/cli.js +0 -14
- package/dist/storybook/cli.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-data.d.ts","sourceRoot":"","sources":["../../src/mcp/docs-data.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAMlE,eAAO,MAAM,UAAU,EAAE,YAAY,EAwEpC,CAAC;AAMF,eAAO,MAAM,KAAK,EAAE,YAAY,EAwF/B,CAAC;AAMF,eAAO,MAAM,SAAS,EAAE,YAAY,EAyDnC,CAAC;AAMF,eAAO,MAAM,OAAO,EAAE,YAAY,EAyDjC,CAAC;AAMF,eAAO,MAAM,SAAS,EAAE,YAAY,EA2CnC,CAAC;AAMF,eAAO,MAAM,OAAO,EAAE,YAAY,EA0EjC,CAAC;AAMF,eAAO,MAAM,KAAK,EAAE,OAAO,EA+F1B,CAAC;AAMF,eAAO,MAAM,WAAW,EAAE,YAqBzB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,QAAQ,EASrC,CAAC;AAMF,eAAO,MAAM,OAAO,EAAE,OAAO,EAiD5B,CAAC;AAMF,eAAO,MAAM,aAAa,EAAE,YAAY,EAQvC,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,OAAO,EAG7B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,QAAQ,EAAoB,CAAC;AAGrD,eAAO,MAAM,UAAU;;;;;;;;;CAStB,CAAC"}
|
|
@@ -0,0 +1,637 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tuiuiu Documentation Data
|
|
3
|
+
*
|
|
4
|
+
* Structured documentation for all components, hooks, and utilities.
|
|
5
|
+
* This data is served via MCP to AI assistants.
|
|
6
|
+
*/
|
|
7
|
+
// =============================================================================
|
|
8
|
+
// Primitives
|
|
9
|
+
// =============================================================================
|
|
10
|
+
export const primitives = [
|
|
11
|
+
{
|
|
12
|
+
name: 'Box',
|
|
13
|
+
category: 'primitives',
|
|
14
|
+
description: 'Flexbox container for layout. The fundamental building block for all layouts.',
|
|
15
|
+
props: [
|
|
16
|
+
{ name: 'flexDirection', type: "'row' | 'column'", required: false, default: "'row'", description: 'Main axis direction' },
|
|
17
|
+
{ name: 'justifyContent', type: "'flex-start' | 'center' | 'flex-end' | 'space-between' | 'space-around'", required: false, default: "'flex-start'", description: 'Alignment along main axis' },
|
|
18
|
+
{ name: 'alignItems', type: "'flex-start' | 'center' | 'flex-end' | 'stretch'", required: false, default: "'stretch'", description: 'Alignment along cross axis' },
|
|
19
|
+
{ name: 'width', type: "number | string", required: false, description: 'Width in columns or percentage' },
|
|
20
|
+
{ name: 'height', type: "number | string", required: false, description: 'Height in rows or percentage' },
|
|
21
|
+
{ name: 'padding', type: "number", required: false, default: '0', description: 'Padding on all sides' },
|
|
22
|
+
{ name: 'paddingX', type: "number", required: false, description: 'Horizontal padding' },
|
|
23
|
+
{ name: 'paddingY', type: "number", required: false, description: 'Vertical padding' },
|
|
24
|
+
{ name: 'margin', type: "number", required: false, default: '0', description: 'Margin on all sides' },
|
|
25
|
+
{ name: 'gap', type: "number", required: false, description: 'Gap between children' },
|
|
26
|
+
{ name: 'flexGrow', type: "number", required: false, description: 'Flex grow factor' },
|
|
27
|
+
{ name: 'flexShrink', type: "number", required: false, description: 'Flex shrink factor' },
|
|
28
|
+
{ name: 'borderStyle', type: "'single' | 'double' | 'round' | 'bold' | 'none'", required: false, description: 'Border style' },
|
|
29
|
+
{ name: 'borderColor', type: "ColorValue", required: false, description: 'Border color' },
|
|
30
|
+
{ name: 'backgroundColor', type: "ColorValue", required: false, description: 'Background color' },
|
|
31
|
+
],
|
|
32
|
+
examples: [
|
|
33
|
+
`Box({ flexDirection: 'column', padding: 1 },\n Text({}, 'Hello'),\n Text({}, 'World')\n)`,
|
|
34
|
+
`Box({ borderStyle: 'round', borderColor: 'cyan', padding: 2 },\n Text({ bold: true }, 'Bordered Box')\n)`,
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'Text',
|
|
39
|
+
category: 'primitives',
|
|
40
|
+
description: 'Text element with styling support. Renders styled text content.',
|
|
41
|
+
props: [
|
|
42
|
+
{ name: 'color', type: "ColorValue", required: false, description: 'Text color (named, hex, or rgb)' },
|
|
43
|
+
{ name: 'backgroundColor', type: "ColorValue", required: false, description: 'Background color' },
|
|
44
|
+
{ name: 'bold', type: "boolean", required: false, default: 'false', description: 'Bold text' },
|
|
45
|
+
{ name: 'italic', type: "boolean", required: false, default: 'false', description: 'Italic text' },
|
|
46
|
+
{ name: 'underline', type: "boolean", required: false, default: 'false', description: 'Underlined text' },
|
|
47
|
+
{ name: 'strikethrough', type: "boolean", required: false, default: 'false', description: 'Strikethrough text' },
|
|
48
|
+
{ name: 'dim', type: "boolean", required: false, default: 'false', description: 'Dimmed text' },
|
|
49
|
+
{ name: 'inverse', type: "boolean", required: false, default: 'false', description: 'Inverted colors' },
|
|
50
|
+
],
|
|
51
|
+
examples: [
|
|
52
|
+
`Text({ color: 'cyan', bold: true }, 'Hello World')`,
|
|
53
|
+
`Text({ color: '#ff6b6b', backgroundColor: 'black' }, 'Custom colors')`,
|
|
54
|
+
],
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: 'Spacer',
|
|
58
|
+
category: 'primitives',
|
|
59
|
+
description: 'Flexible spacer that expands to fill available space.',
|
|
60
|
+
props: [
|
|
61
|
+
{ name: 'x', type: "number", required: false, description: 'Fixed horizontal size' },
|
|
62
|
+
{ name: 'y', type: "number", required: false, description: 'Fixed vertical size' },
|
|
63
|
+
],
|
|
64
|
+
examples: [
|
|
65
|
+
`Box({ flexDirection: 'row' },\n Text({}, 'Left'),\n Spacer(),\n Text({}, 'Right')\n)`,
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
name: 'Divider',
|
|
70
|
+
category: 'primitives',
|
|
71
|
+
description: 'Horizontal or vertical divider line.',
|
|
72
|
+
props: [
|
|
73
|
+
{ name: 'direction', type: "'horizontal' | 'vertical'", required: false, default: "'horizontal'", description: 'Divider direction' },
|
|
74
|
+
{ name: 'char', type: "string", required: false, default: "'─'", description: 'Character to use for the line' },
|
|
75
|
+
{ name: 'color', type: "ColorValue", required: false, description: 'Line color' },
|
|
76
|
+
],
|
|
77
|
+
examples: [
|
|
78
|
+
`Divider({ color: 'gray' })`,
|
|
79
|
+
`Divider({ direction: 'vertical', char: '│' })`,
|
|
80
|
+
],
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
// =============================================================================
|
|
84
|
+
// Atoms
|
|
85
|
+
// =============================================================================
|
|
86
|
+
export const atoms = [
|
|
87
|
+
{
|
|
88
|
+
name: 'Button',
|
|
89
|
+
category: 'atoms',
|
|
90
|
+
description: 'Interactive button with multiple variants and states.',
|
|
91
|
+
props: [
|
|
92
|
+
{ name: 'label', type: "string", required: true, description: 'Button label text' },
|
|
93
|
+
{ name: 'variant', type: "'primary' | 'secondary' | 'danger' | 'ghost'", required: false, default: "'primary'", description: 'Visual variant' },
|
|
94
|
+
{ name: 'disabled', type: "boolean", required: false, default: 'false', description: 'Disable interaction' },
|
|
95
|
+
{ name: 'focused', type: "boolean", required: false, default: 'false', description: 'Focus state' },
|
|
96
|
+
{ name: 'onPress', type: "() => void", required: false, description: 'Press handler' },
|
|
97
|
+
{ name: 'width', type: "number", required: false, description: 'Fixed width' },
|
|
98
|
+
],
|
|
99
|
+
examples: [
|
|
100
|
+
`Button({ label: 'Submit', variant: 'primary', onPress: () => console.log('clicked') })`,
|
|
101
|
+
`Button({ label: 'Cancel', variant: 'ghost' })`,
|
|
102
|
+
],
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
name: 'TextInput',
|
|
106
|
+
category: 'atoms',
|
|
107
|
+
description: 'Single-line text input field with cursor support.',
|
|
108
|
+
props: [
|
|
109
|
+
{ name: 'value', type: "string", required: true, description: 'Current value' },
|
|
110
|
+
{ name: 'onChange', type: "(value: string) => void", required: true, description: 'Change handler' },
|
|
111
|
+
{ name: 'placeholder', type: "string", required: false, description: 'Placeholder text' },
|
|
112
|
+
{ name: 'focused', type: "boolean", required: false, default: 'false', description: 'Focus state' },
|
|
113
|
+
{ name: 'password', type: "boolean", required: false, default: 'false', description: 'Hide input as password' },
|
|
114
|
+
{ name: 'width', type: "number", required: false, default: '20', description: 'Input width' },
|
|
115
|
+
],
|
|
116
|
+
examples: [
|
|
117
|
+
`TextInput({ value: name(), onChange: setName, placeholder: 'Enter name' })`,
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
name: 'Checkbox',
|
|
122
|
+
category: 'atoms',
|
|
123
|
+
description: 'Checkbox with label.',
|
|
124
|
+
props: [
|
|
125
|
+
{ name: 'checked', type: "boolean", required: true, description: 'Checked state' },
|
|
126
|
+
{ name: 'onChange', type: "(checked: boolean) => void", required: false, description: 'Change handler' },
|
|
127
|
+
{ name: 'label', type: "string", required: false, description: 'Label text' },
|
|
128
|
+
{ name: 'disabled', type: "boolean", required: false, default: 'false', description: 'Disable interaction' },
|
|
129
|
+
],
|
|
130
|
+
examples: [
|
|
131
|
+
`Checkbox({ checked: agreed(), onChange: setAgreed, label: 'I agree to terms' })`,
|
|
132
|
+
],
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
name: 'ProgressBar',
|
|
136
|
+
category: 'atoms',
|
|
137
|
+
description: 'Progress indicator with multiple styles.',
|
|
138
|
+
props: [
|
|
139
|
+
{ name: 'value', type: "number", required: true, description: 'Progress value (0-100)' },
|
|
140
|
+
{ name: 'width', type: "number", required: false, default: '20', description: 'Bar width' },
|
|
141
|
+
{ name: 'showPercentage', type: "boolean", required: false, default: 'false', description: 'Show percentage text' },
|
|
142
|
+
{ name: 'color', type: "ColorValue", required: false, default: "'cyan'", description: 'Fill color' },
|
|
143
|
+
{ name: 'style', type: "'block' | 'ascii' | 'gradient'", required: false, default: "'block'", description: 'Visual style' },
|
|
144
|
+
],
|
|
145
|
+
examples: [
|
|
146
|
+
`ProgressBar({ value: 75, width: 30, showPercentage: true })`,
|
|
147
|
+
],
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
name: 'Spinner',
|
|
151
|
+
category: 'atoms',
|
|
152
|
+
description: 'Animated loading spinner.',
|
|
153
|
+
props: [
|
|
154
|
+
{ name: 'style', type: "'dots' | 'line' | 'circle' | 'bounce' | 'pong'", required: false, default: "'dots'", description: 'Animation style' },
|
|
155
|
+
{ name: 'color', type: "ColorValue", required: false, default: "'cyan'", description: 'Spinner color' },
|
|
156
|
+
{ name: 'label', type: "string", required: false, description: 'Loading label' },
|
|
157
|
+
],
|
|
158
|
+
examples: [
|
|
159
|
+
`Spinner({ style: 'dots', label: 'Loading...' })`,
|
|
160
|
+
],
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
name: 'Badge',
|
|
164
|
+
category: 'atoms',
|
|
165
|
+
description: 'Status badge or label.',
|
|
166
|
+
props: [
|
|
167
|
+
{ name: 'text', type: "string", required: true, description: 'Badge text' },
|
|
168
|
+
{ name: 'variant', type: "'default' | 'success' | 'warning' | 'error' | 'info'", required: false, default: "'default'", description: 'Color variant' },
|
|
169
|
+
],
|
|
170
|
+
examples: [
|
|
171
|
+
`Badge({ text: 'NEW', variant: 'success' })`,
|
|
172
|
+
],
|
|
173
|
+
},
|
|
174
|
+
];
|
|
175
|
+
// =============================================================================
|
|
176
|
+
// Molecules
|
|
177
|
+
// =============================================================================
|
|
178
|
+
export const molecules = [
|
|
179
|
+
{
|
|
180
|
+
name: 'Select',
|
|
181
|
+
category: 'molecules',
|
|
182
|
+
description: 'Dropdown selection with keyboard navigation.',
|
|
183
|
+
props: [
|
|
184
|
+
{ name: 'options', type: "SelectOption[]", required: true, description: 'Array of { value, label } options' },
|
|
185
|
+
{ name: 'value', type: "string", required: true, description: 'Selected value' },
|
|
186
|
+
{ name: 'onChange', type: "(value: string) => void", required: true, description: 'Change handler' },
|
|
187
|
+
{ name: 'placeholder', type: "string", required: false, description: 'Placeholder text' },
|
|
188
|
+
{ name: 'focused', type: "boolean", required: false, default: 'false', description: 'Focus state' },
|
|
189
|
+
],
|
|
190
|
+
examples: [
|
|
191
|
+
`Select({\n options: [{ value: 'a', label: 'Option A' }, { value: 'b', label: 'Option B' }],\n value: selected(),\n onChange: setSelected\n})`,
|
|
192
|
+
],
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
name: 'Table',
|
|
196
|
+
category: 'molecules',
|
|
197
|
+
description: 'Data table with headers and rows.',
|
|
198
|
+
props: [
|
|
199
|
+
{ name: 'columns', type: "TableColumn[]", required: true, description: 'Column definitions { key, header, width }' },
|
|
200
|
+
{ name: 'data', type: "Record<string, unknown>[]", required: true, description: 'Row data' },
|
|
201
|
+
{ name: 'borderStyle', type: "BorderStyle", required: false, default: "'single'", description: 'Table border style' },
|
|
202
|
+
],
|
|
203
|
+
examples: [
|
|
204
|
+
`Table({\n columns: [\n { key: 'name', header: 'Name', width: 20 },\n { key: 'age', header: 'Age', width: 5 }\n ],\n data: [{ name: 'Alice', age: 30 }]\n})`,
|
|
205
|
+
],
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
name: 'Tabs',
|
|
209
|
+
category: 'molecules',
|
|
210
|
+
description: 'Tabbed navigation container.',
|
|
211
|
+
props: [
|
|
212
|
+
{ name: 'tabs', type: "Tab[]", required: true, description: 'Array of { id, label, content } tabs' },
|
|
213
|
+
{ name: 'activeTab', type: "string", required: true, description: 'Active tab id' },
|
|
214
|
+
{ name: 'onChange', type: "(id: string) => void", required: true, description: 'Tab change handler' },
|
|
215
|
+
],
|
|
216
|
+
examples: [
|
|
217
|
+
`Tabs({\n tabs: [\n { id: 'home', label: 'Home', content: HomePanel },\n { id: 'settings', label: 'Settings', content: SettingsPanel }\n ],\n activeTab: tab(),\n onChange: setTab\n})`,
|
|
218
|
+
],
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
name: 'Modal',
|
|
222
|
+
category: 'molecules',
|
|
223
|
+
description: 'Modal dialog overlay.',
|
|
224
|
+
props: [
|
|
225
|
+
{ name: 'title', type: "string", required: false, description: 'Modal title' },
|
|
226
|
+
{ name: 'visible', type: "boolean", required: true, description: 'Visibility state' },
|
|
227
|
+
{ name: 'onClose', type: "() => void", required: false, description: 'Close handler' },
|
|
228
|
+
{ name: 'width', type: "number", required: false, default: '50', description: 'Modal width' },
|
|
229
|
+
{ name: 'children', type: "VNode", required: true, description: 'Modal content' },
|
|
230
|
+
],
|
|
231
|
+
examples: [
|
|
232
|
+
`Modal({\n title: 'Confirm',\n visible: showModal(),\n onClose: () => setShowModal(false)\n}, Text({}, 'Are you sure?'))`,
|
|
233
|
+
],
|
|
234
|
+
},
|
|
235
|
+
];
|
|
236
|
+
// =============================================================================
|
|
237
|
+
// Data Visualization
|
|
238
|
+
// =============================================================================
|
|
239
|
+
export const dataViz = [
|
|
240
|
+
{
|
|
241
|
+
name: 'Sparkline',
|
|
242
|
+
category: 'molecules',
|
|
243
|
+
description: 'Inline mini chart for data trends.',
|
|
244
|
+
props: [
|
|
245
|
+
{ name: 'data', type: "number[]", required: true, description: 'Data points' },
|
|
246
|
+
{ name: 'width', type: "number", required: false, description: 'Chart width' },
|
|
247
|
+
{ name: 'height', type: "number", required: false, default: '1', description: 'Chart height in rows' },
|
|
248
|
+
{ name: 'color', type: "ColorValue", required: false, description: 'Line color' },
|
|
249
|
+
],
|
|
250
|
+
examples: [
|
|
251
|
+
`Sparkline({ data: [1, 5, 3, 9, 2, 7], width: 20 })`,
|
|
252
|
+
],
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
name: 'BarChart',
|
|
256
|
+
category: 'molecules',
|
|
257
|
+
description: 'Horizontal or vertical bar chart.',
|
|
258
|
+
props: [
|
|
259
|
+
{ name: 'data', type: "BarData[]", required: true, description: 'Array of { label, value, color? }' },
|
|
260
|
+
{ name: 'orientation', type: "'horizontal' | 'vertical'", required: false, default: "'horizontal'", description: 'Bar orientation' },
|
|
261
|
+
{ name: 'width', type: "number", required: false, description: 'Chart width' },
|
|
262
|
+
{ name: 'showValues', type: "boolean", required: false, default: 'true', description: 'Show value labels' },
|
|
263
|
+
],
|
|
264
|
+
examples: [
|
|
265
|
+
`BarChart({\n data: [\n { label: 'A', value: 30 },\n { label: 'B', value: 50 },\n { label: 'C', value: 20 }\n ]\n})`,
|
|
266
|
+
],
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
name: 'Gauge',
|
|
270
|
+
category: 'molecules',
|
|
271
|
+
description: 'Gauge/meter display for single values.',
|
|
272
|
+
props: [
|
|
273
|
+
{ name: 'value', type: "number", required: true, description: 'Current value' },
|
|
274
|
+
{ name: 'max', type: "number", required: false, default: '100', description: 'Maximum value' },
|
|
275
|
+
{ name: 'width', type: "number", required: false, description: 'Gauge width' },
|
|
276
|
+
{ name: 'showValue', type: "boolean", required: false, default: 'true', description: 'Show numeric value' },
|
|
277
|
+
{ name: 'zones', type: "GaugeZone[]", required: false, description: 'Color zones { min, max, color }' },
|
|
278
|
+
],
|
|
279
|
+
examples: [
|
|
280
|
+
`Gauge({ value: 75, max: 100, width: 30 })`,
|
|
281
|
+
],
|
|
282
|
+
},
|
|
283
|
+
{
|
|
284
|
+
name: 'Heatmap',
|
|
285
|
+
category: 'molecules',
|
|
286
|
+
description: 'Grid-based heatmap visualization.',
|
|
287
|
+
props: [
|
|
288
|
+
{ name: 'data', type: "HeatmapCell[][]", required: true, description: '2D array of { value, label? }' },
|
|
289
|
+
{ name: 'colorScale', type: "ColorScale", required: false, default: "'blues'", description: 'Color scale name' },
|
|
290
|
+
{ name: 'showValues', type: "boolean", required: false, default: 'false', description: 'Show cell values' },
|
|
291
|
+
],
|
|
292
|
+
examples: [
|
|
293
|
+
`Heatmap({\n data: [[{ value: 1 }, { value: 5 }], [{ value: 3 }, { value: 8 }]],\n colorScale: 'greens'\n})`,
|
|
294
|
+
],
|
|
295
|
+
},
|
|
296
|
+
];
|
|
297
|
+
// =============================================================================
|
|
298
|
+
// Organisms
|
|
299
|
+
// =============================================================================
|
|
300
|
+
export const organisms = [
|
|
301
|
+
{
|
|
302
|
+
name: 'CommandPalette',
|
|
303
|
+
category: 'organisms',
|
|
304
|
+
description: 'Command palette with fuzzy search (like VS Code Ctrl+Shift+P).',
|
|
305
|
+
props: [
|
|
306
|
+
{ name: 'commands', type: "Command[]", required: true, description: 'Available commands { id, label, shortcut?, action }' },
|
|
307
|
+
{ name: 'visible', type: "boolean", required: true, description: 'Visibility state' },
|
|
308
|
+
{ name: 'onClose', type: "() => void", required: true, description: 'Close handler' },
|
|
309
|
+
{ name: 'onSelect', type: "(command: Command) => void", required: true, description: 'Command selection handler' },
|
|
310
|
+
],
|
|
311
|
+
examples: [
|
|
312
|
+
`CommandPalette({\n commands: [\n { id: 'save', label: 'Save File', shortcut: 'Ctrl+S', action: save },\n { id: 'quit', label: 'Quit', shortcut: 'Ctrl+Q', action: quit }\n ],\n visible: paletteOpen(),\n onClose: () => setPaletteOpen(false),\n onSelect: (cmd) => cmd.action()\n})`,
|
|
313
|
+
],
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
name: 'FileManager',
|
|
317
|
+
category: 'organisms',
|
|
318
|
+
description: 'File browser with tree navigation.',
|
|
319
|
+
props: [
|
|
320
|
+
{ name: 'root', type: "string", required: true, description: 'Root directory path' },
|
|
321
|
+
{ name: 'onSelect', type: "(path: string) => void", required: false, description: 'File selection handler' },
|
|
322
|
+
{ name: 'showHidden', type: "boolean", required: false, default: 'false', description: 'Show hidden files' },
|
|
323
|
+
],
|
|
324
|
+
examples: [
|
|
325
|
+
`FileManager({ root: '/home/user', onSelect: (path) => openFile(path) })`,
|
|
326
|
+
],
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
name: 'DataTable',
|
|
330
|
+
category: 'organisms',
|
|
331
|
+
description: 'Advanced data table with sorting, filtering, and pagination.',
|
|
332
|
+
props: [
|
|
333
|
+
{ name: 'columns', type: "DataTableColumn[]", required: true, description: 'Column definitions with sorting/filtering options' },
|
|
334
|
+
{ name: 'data', type: "Record<string, unknown>[]", required: true, description: 'Row data' },
|
|
335
|
+
{ name: 'pageSize', type: "number", required: false, default: '10', description: 'Rows per page' },
|
|
336
|
+
{ name: 'sortable', type: "boolean", required: false, default: 'true', description: 'Enable column sorting' },
|
|
337
|
+
{ name: 'filterable', type: "boolean", required: false, default: 'false', description: 'Enable column filtering' },
|
|
338
|
+
],
|
|
339
|
+
examples: [
|
|
340
|
+
`DataTable({\n columns: [\n { key: 'name', header: 'Name', sortable: true },\n { key: 'email', header: 'Email', width: 30 }\n ],\n data: users,\n pageSize: 20\n})`,
|
|
341
|
+
],
|
|
342
|
+
},
|
|
343
|
+
];
|
|
344
|
+
// =============================================================================
|
|
345
|
+
// Layout Components
|
|
346
|
+
// =============================================================================
|
|
347
|
+
export const layouts = [
|
|
348
|
+
{
|
|
349
|
+
name: 'VStack',
|
|
350
|
+
category: 'primitives',
|
|
351
|
+
description: 'Vertical stack layout (shorthand for Box with column direction).',
|
|
352
|
+
props: [
|
|
353
|
+
{ name: 'gap', type: "number", required: false, default: '0', description: 'Gap between children' },
|
|
354
|
+
{ name: 'align', type: "'start' | 'center' | 'end' | 'stretch'", required: false, default: "'stretch'", description: 'Cross-axis alignment' },
|
|
355
|
+
],
|
|
356
|
+
examples: [
|
|
357
|
+
`VStack({ gap: 1 },\n Text({}, 'Line 1'),\n Text({}, 'Line 2'),\n Text({}, 'Line 3')\n)`,
|
|
358
|
+
],
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
name: 'HStack',
|
|
362
|
+
category: 'primitives',
|
|
363
|
+
description: 'Horizontal stack layout (shorthand for Box with row direction).',
|
|
364
|
+
props: [
|
|
365
|
+
{ name: 'gap', type: "number", required: false, default: '0', description: 'Gap between children' },
|
|
366
|
+
{ name: 'align', type: "'start' | 'center' | 'end' | 'stretch'", required: false, default: "'center'", description: 'Cross-axis alignment' },
|
|
367
|
+
],
|
|
368
|
+
examples: [
|
|
369
|
+
`HStack({ gap: 2 },\n Button({ label: 'OK' }),\n Button({ label: 'Cancel' })\n)`,
|
|
370
|
+
],
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
name: 'Center',
|
|
374
|
+
category: 'primitives',
|
|
375
|
+
description: 'Centers content both horizontally and vertically.',
|
|
376
|
+
props: [],
|
|
377
|
+
examples: [
|
|
378
|
+
`Center({},\n Text({ bold: true }, 'Centered Content')\n)`,
|
|
379
|
+
],
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
name: 'SplitPanel',
|
|
383
|
+
category: 'molecules',
|
|
384
|
+
description: 'Resizable split panel layout.',
|
|
385
|
+
props: [
|
|
386
|
+
{ name: 'direction', type: "'horizontal' | 'vertical'", required: false, default: "'horizontal'", description: 'Split direction' },
|
|
387
|
+
{ name: 'initialSize', type: "number", required: false, default: '50', description: 'Initial size percentage' },
|
|
388
|
+
{ name: 'minSize', type: "number", required: false, default: '10', description: 'Minimum size percentage' },
|
|
389
|
+
{ name: 'left', type: "VNode", required: true, description: 'Left/top panel content' },
|
|
390
|
+
{ name: 'right', type: "VNode", required: true, description: 'Right/bottom panel content' },
|
|
391
|
+
],
|
|
392
|
+
examples: [
|
|
393
|
+
`SplitPanel({\n direction: 'horizontal',\n initialSize: 30,\n left: Sidebar(),\n right: MainContent()\n})`,
|
|
394
|
+
],
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
name: 'ScrollArea',
|
|
398
|
+
category: 'molecules',
|
|
399
|
+
description: 'Scrollable content area with keyboard navigation.',
|
|
400
|
+
props: [
|
|
401
|
+
{ name: 'height', type: "number", required: true, description: 'Visible height in rows' },
|
|
402
|
+
{ name: 'showScrollbar', type: "boolean", required: false, default: 'true', description: 'Show scrollbar indicator' },
|
|
403
|
+
],
|
|
404
|
+
examples: [
|
|
405
|
+
`ScrollArea({ height: 10 },\n ...items.map(item => Text({}, item))\n)`,
|
|
406
|
+
],
|
|
407
|
+
},
|
|
408
|
+
{
|
|
409
|
+
name: 'Grid',
|
|
410
|
+
category: 'molecules',
|
|
411
|
+
description: 'CSS Grid-like layout for terminal.',
|
|
412
|
+
props: [
|
|
413
|
+
{ name: 'columns', type: "number | string", required: true, description: 'Number of columns or template' },
|
|
414
|
+
{ name: 'rows', type: "number | string", required: false, description: 'Number of rows or template' },
|
|
415
|
+
{ name: 'gap', type: "number", required: false, default: '0', description: 'Gap between cells' },
|
|
416
|
+
],
|
|
417
|
+
examples: [
|
|
418
|
+
`Grid({ columns: 3, gap: 1 },\n ...cards.map(card => Card(card))\n)`,
|
|
419
|
+
],
|
|
420
|
+
},
|
|
421
|
+
];
|
|
422
|
+
// =============================================================================
|
|
423
|
+
// Hooks
|
|
424
|
+
// =============================================================================
|
|
425
|
+
export const hooks = [
|
|
426
|
+
{
|
|
427
|
+
name: 'useState',
|
|
428
|
+
description: 'Create reactive state that triggers re-renders when updated.',
|
|
429
|
+
signature: 'useState<T>(initialValue: T): [Accessor<T>, Setter<T>]',
|
|
430
|
+
params: [
|
|
431
|
+
{ name: 'initialValue', type: 'T', required: true, description: 'Initial state value' },
|
|
432
|
+
],
|
|
433
|
+
returns: 'Tuple of [getter function, setter function]',
|
|
434
|
+
examples: [
|
|
435
|
+
`const [count, setCount] = useState(0);\n// Read: count()\n// Write: setCount(5) or setCount(c => c + 1)`,
|
|
436
|
+
],
|
|
437
|
+
},
|
|
438
|
+
{
|
|
439
|
+
name: 'useEffect',
|
|
440
|
+
description: 'Run side effects when dependencies change.',
|
|
441
|
+
signature: 'useEffect(fn: () => void | (() => void)): void',
|
|
442
|
+
params: [
|
|
443
|
+
{ name: 'fn', type: '() => void | (() => void)', required: true, description: 'Effect function, optionally returning cleanup' },
|
|
444
|
+
],
|
|
445
|
+
returns: 'void',
|
|
446
|
+
examples: [
|
|
447
|
+
`useEffect(() => {\n console.log('Count changed:', count());\n return () => console.log('Cleanup');\n});`,
|
|
448
|
+
],
|
|
449
|
+
},
|
|
450
|
+
{
|
|
451
|
+
name: 'useInput',
|
|
452
|
+
description: 'Handle keyboard input events.',
|
|
453
|
+
signature: 'useInput(handler: InputHandler): void',
|
|
454
|
+
params: [
|
|
455
|
+
{ name: 'handler', type: '(input: string, key: Key) => void', required: true, description: 'Input event handler' },
|
|
456
|
+
],
|
|
457
|
+
returns: 'void',
|
|
458
|
+
examples: [
|
|
459
|
+
`useInput((input, key) => {\n if (key.upArrow) setIndex(i => i - 1);\n if (key.downArrow) setIndex(i => i + 1);\n if (key.return) select();\n if (key.escape) cancel();\n});`,
|
|
460
|
+
],
|
|
461
|
+
},
|
|
462
|
+
{
|
|
463
|
+
name: 'useApp',
|
|
464
|
+
description: 'Access app context for exit control and terminal info.',
|
|
465
|
+
signature: 'useApp(): AppContext',
|
|
466
|
+
params: [],
|
|
467
|
+
returns: 'AppContext with exit() method and terminal dimensions',
|
|
468
|
+
examples: [
|
|
469
|
+
`const app = useApp();\nuseInput((_, key) => {\n if (key.escape) app.exit();\n});`,
|
|
470
|
+
],
|
|
471
|
+
},
|
|
472
|
+
{
|
|
473
|
+
name: 'useFocus',
|
|
474
|
+
description: 'Manage focus state for interactive components.',
|
|
475
|
+
signature: 'useFocus(options?: FocusOptions): FocusResult',
|
|
476
|
+
params: [
|
|
477
|
+
{ name: 'options.autoFocus', type: 'boolean', required: false, default: 'false', description: 'Auto-focus on mount' },
|
|
478
|
+
{ name: 'options.id', type: 'string', required: false, description: 'Focus element ID' },
|
|
479
|
+
],
|
|
480
|
+
returns: 'Object with isFocused() accessor and focus control methods',
|
|
481
|
+
examples: [
|
|
482
|
+
`const { isFocused, focus } = useFocus({ autoFocus: true });\n// isFocused() returns true/false`,
|
|
483
|
+
],
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
name: 'useMouse',
|
|
487
|
+
description: 'Handle mouse events (click, scroll, move).',
|
|
488
|
+
signature: 'useMouse(handler: MouseHandler): void',
|
|
489
|
+
params: [
|
|
490
|
+
{ name: 'handler', type: 'MouseHandler', required: true, description: 'Mouse event handler' },
|
|
491
|
+
],
|
|
492
|
+
returns: 'void',
|
|
493
|
+
examples: [
|
|
494
|
+
`useMouse((event) => {\n if (event.type === 'click') handleClick(event.x, event.y);\n if (event.type === 'scroll') handleScroll(event.direction);\n});`,
|
|
495
|
+
],
|
|
496
|
+
},
|
|
497
|
+
{
|
|
498
|
+
name: 'useHotkeys',
|
|
499
|
+
description: 'Register keyboard shortcuts with human-readable syntax.',
|
|
500
|
+
signature: 'useHotkeys(bindings: HotkeyBinding[], options?: HotkeyOptions): void',
|
|
501
|
+
params: [
|
|
502
|
+
{ name: 'bindings', type: 'HotkeyBinding[]', required: true, description: 'Array of { key, handler, description? }' },
|
|
503
|
+
{ name: 'options.scope', type: 'string', required: false, description: 'Hotkey scope for context-specific shortcuts' },
|
|
504
|
+
],
|
|
505
|
+
returns: 'void',
|
|
506
|
+
examples: [
|
|
507
|
+
`useHotkeys([\n { key: 'ctrl+s', handler: save, description: 'Save file' },\n { key: 'ctrl+q', handler: quit, description: 'Quit' },\n { key: 'cmd+shift+p', handler: openPalette, description: 'Command palette' }\n]);`,
|
|
508
|
+
],
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
name: 'useTerminalSize',
|
|
512
|
+
description: 'Get reactive terminal dimensions that update on resize.',
|
|
513
|
+
signature: 'useTerminalSize(): { columns: Accessor<number>, rows: Accessor<number> }',
|
|
514
|
+
params: [],
|
|
515
|
+
returns: 'Object with reactive columns() and rows() accessors',
|
|
516
|
+
examples: [
|
|
517
|
+
`const { columns, rows } = useTerminalSize();\n// columns() and rows() update automatically on terminal resize`,
|
|
518
|
+
],
|
|
519
|
+
},
|
|
520
|
+
];
|
|
521
|
+
// =============================================================================
|
|
522
|
+
// Theme System
|
|
523
|
+
// =============================================================================
|
|
524
|
+
export const themeSystem = {
|
|
525
|
+
name: 'Theme System',
|
|
526
|
+
category: 'utils',
|
|
527
|
+
description: 'Global theming with semantic colors, spacing, and multiple built-in themes.',
|
|
528
|
+
props: [
|
|
529
|
+
{ name: 'primary', type: "ColorValue", required: true, description: 'Primary brand color' },
|
|
530
|
+
{ name: 'secondary', type: "ColorValue", required: true, description: 'Secondary color' },
|
|
531
|
+
{ name: 'background', type: "ColorValue", required: true, description: 'Background color' },
|
|
532
|
+
{ name: 'surface', type: "ColorValue", required: true, description: 'Surface/card color' },
|
|
533
|
+
{ name: 'text', type: "ColorValue", required: true, description: 'Primary text color' },
|
|
534
|
+
{ name: 'textMuted', type: "ColorValue", required: true, description: 'Muted text color' },
|
|
535
|
+
{ name: 'border', type: "ColorValue", required: true, description: 'Border color' },
|
|
536
|
+
{ name: 'success', type: "ColorValue", required: true, description: 'Success state color' },
|
|
537
|
+
{ name: 'warning', type: "ColorValue", required: true, description: 'Warning state color' },
|
|
538
|
+
{ name: 'error', type: "ColorValue", required: true, description: 'Error state color' },
|
|
539
|
+
],
|
|
540
|
+
examples: [
|
|
541
|
+
`// Use theme colors\nText({ color: themeColor('primary') }, 'Themed text')`,
|
|
542
|
+
`// Switch themes\nsetTheme(draculaTheme);`,
|
|
543
|
+
`// Available themes: darkTheme, lightTheme, draculaTheme, nordTheme, monokaiTheme, etc.`,
|
|
544
|
+
],
|
|
545
|
+
};
|
|
546
|
+
export const availableThemes = [
|
|
547
|
+
{ name: 'darkTheme', description: 'Default dark theme', colors: { primary: 'cyan', background: '#1a1a2e' } },
|
|
548
|
+
{ name: 'lightTheme', description: 'Light theme for bright terminals', colors: { primary: 'blue', background: '#ffffff' } },
|
|
549
|
+
{ name: 'draculaTheme', description: 'Dracula color scheme', colors: { primary: '#bd93f9', background: '#282a36' } },
|
|
550
|
+
{ name: 'nordTheme', description: 'Nord color scheme', colors: { primary: '#88c0d0', background: '#2e3440' } },
|
|
551
|
+
{ name: 'monokaiTheme', description: 'Monokai color scheme', colors: { primary: '#66d9ef', background: '#272822' } },
|
|
552
|
+
{ name: 'tokyoNightTheme', description: 'Tokyo Night color scheme', colors: { primary: '#7aa2f7', background: '#1a1b26' } },
|
|
553
|
+
{ name: 'catppuccinTheme', description: 'Catppuccin Mocha theme', colors: { primary: '#cba6f7', background: '#1e1e2e' } },
|
|
554
|
+
{ name: 'gruvboxTheme', description: 'Gruvbox dark theme', colors: { primary: '#fabd2f', background: '#282828' } },
|
|
555
|
+
];
|
|
556
|
+
// =============================================================================
|
|
557
|
+
// Signals (Core Reactivity)
|
|
558
|
+
// =============================================================================
|
|
559
|
+
export const signals = [
|
|
560
|
+
{
|
|
561
|
+
name: 'createSignal',
|
|
562
|
+
description: 'Create a reactive signal (core primitive for state management).',
|
|
563
|
+
signature: 'createSignal<T>(value: T): [Accessor<T>, Setter<T>]',
|
|
564
|
+
params: [
|
|
565
|
+
{ name: 'value', type: 'T', required: true, description: 'Initial value' },
|
|
566
|
+
],
|
|
567
|
+
returns: 'Tuple of [getter, setter]',
|
|
568
|
+
examples: [
|
|
569
|
+
`const [count, setCount] = createSignal(0);\nconsole.log(count()); // 0\nsetCount(5);\nconsole.log(count()); // 5`,
|
|
570
|
+
],
|
|
571
|
+
},
|
|
572
|
+
{
|
|
573
|
+
name: 'createEffect',
|
|
574
|
+
description: 'Run a function that auto-tracks signal dependencies and re-runs when they change.',
|
|
575
|
+
signature: 'createEffect(fn: () => void): void',
|
|
576
|
+
params: [
|
|
577
|
+
{ name: 'fn', type: '() => void', required: true, description: 'Effect function' },
|
|
578
|
+
],
|
|
579
|
+
returns: 'void',
|
|
580
|
+
examples: [
|
|
581
|
+
`createEffect(() => {\n console.log('Count is now:', count());\n});`,
|
|
582
|
+
],
|
|
583
|
+
},
|
|
584
|
+
{
|
|
585
|
+
name: 'createMemo',
|
|
586
|
+
description: 'Create a derived/computed value that caches and updates automatically.',
|
|
587
|
+
signature: 'createMemo<T>(fn: () => T): Accessor<T>',
|
|
588
|
+
params: [
|
|
589
|
+
{ name: 'fn', type: '() => T', required: true, description: 'Computation function' },
|
|
590
|
+
],
|
|
591
|
+
returns: 'Accessor function returning the memoized value',
|
|
592
|
+
examples: [
|
|
593
|
+
`const doubled = createMemo(() => count() * 2);\nconsole.log(doubled()); // auto-updates when count changes`,
|
|
594
|
+
],
|
|
595
|
+
},
|
|
596
|
+
{
|
|
597
|
+
name: 'batch',
|
|
598
|
+
description: 'Batch multiple signal updates into a single re-render.',
|
|
599
|
+
signature: 'batch(fn: () => void): void',
|
|
600
|
+
params: [
|
|
601
|
+
{ name: 'fn', type: '() => void', required: true, description: 'Function with multiple updates' },
|
|
602
|
+
],
|
|
603
|
+
returns: 'void',
|
|
604
|
+
examples: [
|
|
605
|
+
`batch(() => {\n setX(1);\n setY(2);\n setZ(3);\n}); // Only one re-render`,
|
|
606
|
+
],
|
|
607
|
+
},
|
|
608
|
+
];
|
|
609
|
+
// =============================================================================
|
|
610
|
+
// All Documentation Combined
|
|
611
|
+
// =============================================================================
|
|
612
|
+
export const allComponents = [
|
|
613
|
+
...primitives,
|
|
614
|
+
...atoms,
|
|
615
|
+
...molecules,
|
|
616
|
+
...dataViz,
|
|
617
|
+
...organisms,
|
|
618
|
+
...layouts,
|
|
619
|
+
themeSystem,
|
|
620
|
+
];
|
|
621
|
+
export const allHooks = [
|
|
622
|
+
...hooks,
|
|
623
|
+
...signals,
|
|
624
|
+
];
|
|
625
|
+
export const allThemes = availableThemes;
|
|
626
|
+
// Category groupings for listing
|
|
627
|
+
export const categories = {
|
|
628
|
+
primitives: primitives.map(c => c.name),
|
|
629
|
+
atoms: atoms.map(c => c.name),
|
|
630
|
+
molecules: [...molecules, ...dataViz].map(c => c.name),
|
|
631
|
+
organisms: organisms.map(c => c.name),
|
|
632
|
+
layouts: layouts.map(c => c.name),
|
|
633
|
+
hooks: hooks.map(h => h.name),
|
|
634
|
+
signals: signals.map(s => s.name),
|
|
635
|
+
themes: availableThemes.map(t => t.name),
|
|
636
|
+
};
|
|
637
|
+
//# sourceMappingURL=docs-data.js.map
|