basalt-ui 1.41.0 → 2.0.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/AGENTS.md +46 -43
- package/CHANGELOG.md +542 -518
- package/MIGRATING.md +964 -37
- package/README.md +171 -366
- package/agent/rules/basalt-batteries.md +19 -74
- package/agent/rules/basalt-charts.md +21 -95
- package/agent/rules/basalt-controls.md +23 -131
- package/agent/rules/basalt-mantine.md +26 -99
- package/agent/rules/basalt-state.md +21 -103
- package/agent/rules/basalt-tokens.md +33 -114
- package/agent/skills/basalt-app/SKILL.md +229 -72
- package/agent/skills/basalt-charts/SKILL.md +23 -57
- package/agent/skills/basalt-design/SKILL.md +12 -70
- package/agent/templates/AGENTS-block.md.tpl +16 -26
- package/agent/templates/DESIGN.md.tpl +1 -1
- package/agent/templates/__root.tpl +9 -16
- package/agent/templates/main.tpl +21 -0
- package/agent/templates/nav.tpl +18 -0
- package/configs/oxlint-basalt.json +4 -10
- package/configs/oxlint-plugin.js +465 -844
- package/configs/oxlint-plugin.test.ts +661 -709
- package/configs/oxlint.json +10 -2
- package/dist/agent/ai-sdk-transport.d.ts +19 -7
- package/dist/agent/ai-sdk-transport.d.ts.map +1 -1
- package/dist/agent/ai-sdk-transport.js +10 -7
- package/dist/{agent-chat → agent/chat}/composer.d.ts +16 -16
- package/dist/agent/chat/composer.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/composer.js +10 -9
- package/dist/{agent-chat → agent/chat}/message-affordances.d.ts +7 -6
- package/dist/agent/chat/message-affordances.d.ts.map +1 -0
- package/dist/agent/chat/relative-time.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/thread-feed-row.d.ts +18 -16
- package/dist/agent/chat/thread-feed-row.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/thread-feed-row.js +12 -11
- package/dist/{agent-chat → agent/chat}/thread-feed.d.ts +8 -8
- package/dist/agent/chat/thread-feed.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/thread-feed.js +12 -10
- package/dist/{agent-chat → agent/chat}/thread-message.d.ts +12 -9
- package/dist/agent/chat/thread-message.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/thread-message.js +15 -13
- package/dist/{agent-chat → agent/chat}/thread-outcome-card.d.ts +2 -2
- package/dist/agent/chat/thread-outcome-card.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/thread-outcome-card.js +3 -3
- package/dist/{agent-chat → agent/chat}/tool-chip.d.ts +5 -5
- package/dist/agent/chat/tool-chip.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/tool-chip.js +4 -4
- package/dist/agent/chat/use-keyboard-inset.d.ts.map +1 -0
- package/dist/{agent-chat → agent/chat}/use-keyboard-inset.js +1 -1
- package/dist/{agent-chat → agent/chat}/virtualize.d.ts +7 -7
- package/dist/agent/chat/virtualize.d.ts.map +1 -0
- package/dist/agent/error.d.ts +31 -0
- package/dist/agent/error.d.ts.map +1 -0
- package/dist/agent/error.js +18 -0
- package/dist/agent/history.d.ts +2 -36
- package/dist/agent/history.d.ts.map +1 -1
- package/dist/agent/history.js +0 -32
- package/dist/agent/id.d.ts +4 -5
- package/dist/agent/id.d.ts.map +1 -1
- package/dist/agent/index.d.ts +19 -52
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +10 -32
- package/dist/agent/outcome.d.ts +3 -14
- package/dist/agent/outcome.d.ts.map +1 -1
- package/dist/agent/outcome.js +0 -30
- package/dist/agent/part-list.d.ts +3 -3
- package/dist/agent/part-list.d.ts.map +1 -1
- package/dist/agent/parts.d.ts +23 -24
- package/dist/agent/parts.d.ts.map +1 -1
- package/dist/agent/run-committer.d.ts +23 -0
- package/dist/agent/run-committer.d.ts.map +1 -0
- package/dist/agent/run-committer.js +41 -0
- package/dist/agent/run-records.d.ts +77 -0
- package/dist/agent/run-records.d.ts.map +1 -0
- package/dist/agent/run-records.js +69 -0
- package/dist/agent/thread.d.ts +23 -47
- package/dist/agent/thread.d.ts.map +1 -1
- package/dist/agent/thread.js +3 -134
- package/dist/agent/transport.d.ts +6 -69
- package/dist/agent/transport.d.ts.map +1 -1
- package/dist/agent/transport.js +0 -18
- package/dist/agent/use-agent-thread-runs.d.ts +63 -26
- package/dist/agent/use-agent-thread-runs.d.ts.map +1 -1
- package/dist/agent/use-agent-thread-runs.js +202 -66
- package/dist/charts/BandStrip.d.ts +46 -0
- package/dist/charts/BandStrip.d.ts.map +1 -0
- package/dist/charts/BandStrip.js +151 -0
- package/dist/charts/Bars.d.ts +19 -0
- package/dist/charts/Bars.d.ts.map +1 -0
- package/dist/charts/Bars.js +77 -0
- package/dist/charts/CartesianChart.d.ts +57 -0
- package/dist/charts/CartesianChart.d.ts.map +1 -0
- package/dist/charts/CartesianChart.js +121 -0
- package/dist/charts/ChartCard.d.ts +34 -0
- package/dist/charts/ChartCard.d.ts.map +1 -0
- package/dist/charts/ChartCard.js +115 -0
- package/dist/charts/Donut.d.ts +25 -0
- package/dist/charts/Donut.d.ts.map +1 -0
- package/dist/charts/Donut.js +191 -0
- package/dist/charts/DualPanel.d.ts +47 -0
- package/dist/charts/DualPanel.d.ts.map +1 -0
- package/dist/charts/DualPanel.js +214 -0
- package/dist/charts/Heatmap.d.ts +41 -0
- package/dist/charts/Heatmap.d.ts.map +1 -0
- package/dist/charts/Heatmap.js +216 -0
- package/dist/charts/Lines.d.ts +11 -0
- package/dist/charts/Lines.d.ts.map +1 -0
- package/dist/charts/Lines.js +114 -0
- package/dist/charts/MirroredBars.d.ts +44 -0
- package/dist/charts/MirroredBars.d.ts.map +1 -0
- package/dist/charts/MirroredBars.js +190 -0
- package/dist/charts/Sparkline.d.ts +22 -0
- package/dist/charts/Sparkline.d.ts.map +1 -0
- package/dist/charts/Sparkline.js +129 -0
- package/dist/charts/StackedArea.d.ts +15 -0
- package/dist/charts/StackedArea.d.ts.map +1 -0
- package/dist/charts/StackedArea.js +46 -0
- package/dist/charts/box.d.ts +38 -0
- package/dist/charts/box.d.ts.map +1 -0
- package/dist/charts/box.js +72 -0
- package/dist/charts/card-context.d.ts +3 -0
- package/dist/charts/card-context.d.ts.map +1 -0
- package/dist/charts/card-context.js +7 -0
- package/dist/charts/chart-box.module.css +64 -0
- package/{src/content/article-card.module.css.d.ts → dist/charts/chart-box.module.css.d.ts} +5 -9
- package/dist/charts/chart-card.module.css +25 -0
- package/dist/{dashboard/widget-grid.module.css.d.ts → charts/chart-card.module.css.d.ts} +1 -3
- package/dist/charts/chart-legend.module.css +38 -0
- package/{src/dashboard/widget-grid.module.css.d.ts → dist/charts/chart-legend.module.css.d.ts} +3 -3
- package/dist/charts/compile.d.ts +62 -0
- package/dist/charts/compile.d.ts.map +1 -0
- package/dist/charts/compile.js +386 -0
- package/dist/charts/cursor.d.ts +50 -0
- package/dist/charts/cursor.d.ts.map +1 -0
- package/dist/charts/cursor.js +157 -0
- package/dist/charts/curves.d.ts +12 -0
- package/dist/charts/curves.d.ts.map +1 -0
- package/dist/charts/curves.js +86 -0
- package/dist/charts/donut.module.css +54 -0
- package/dist/{content/article-card.module.css.d.ts → charts/donut.module.css.d.ts} +2 -9
- package/dist/charts/host.d.ts +17 -0
- package/dist/charts/host.d.ts.map +1 -0
- package/dist/charts/host.js +35 -0
- package/dist/charts/index.d.ts +18 -53
- package/dist/charts/index.d.ts.map +1 -1
- package/dist/charts/index.js +17 -189
- package/dist/charts/legend.d.ts +23 -0
- package/dist/charts/legend.d.ts.map +1 -0
- package/dist/charts/legend.js +160 -0
- package/dist/charts/marks.d.ts +25 -0
- package/dist/charts/marks.d.ts.map +1 -0
- package/dist/charts/marks.js +128 -0
- package/dist/charts/panel.d.ts +56 -0
- package/dist/charts/panel.d.ts.map +1 -0
- package/dist/charts/panel.js +123 -0
- package/dist/charts/scales.d.ts +44 -0
- package/dist/charts/scales.d.ts.map +1 -0
- package/dist/charts/scales.js +163 -0
- package/dist/charts/sizing.d.ts +12 -0
- package/dist/charts/sizing.d.ts.map +1 -0
- package/dist/charts/sizing.js +33 -0
- package/dist/charts/state.d.ts +17 -0
- package/dist/charts/state.d.ts.map +1 -0
- package/dist/charts/state.js +53 -0
- package/dist/charts/theme.d.ts +38 -19
- package/dist/charts/theme.d.ts.map +1 -1
- package/dist/charts/theme.js +48 -26
- package/dist/charts/types.d.ts +227 -0
- package/dist/charts/types.d.ts.map +1 -0
- package/dist/charts/types.js +4 -0
- package/dist/cli/audit-allows.d.ts +4 -17
- package/dist/cli/audit-allows.d.ts.map +1 -1
- package/dist/cli/config.d.ts +18 -43
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +6 -0
- package/dist/cli/doctor-upgrade.d.ts +43 -0
- package/dist/cli/doctor-upgrade.d.ts.map +1 -0
- package/dist/cli/doctor-upgrade.js +314 -0
- package/dist/cli/doctor.d.ts +14 -29
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +58 -9
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +2 -4
- package/dist/cli/index.d.ts +48 -172
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +39 -132
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +43 -37
- package/dist/cli/sync.d.ts +5 -21
- package/dist/cli/sync.d.ts.map +1 -1
- package/dist/cli/sync.js +4 -23
- package/dist/cli/tokens-css.d.ts +7 -28
- package/dist/cli/tokens-css.d.ts.map +1 -1
- package/dist/commands/ShortcutsHelp.d.ts.map +1 -1
- package/dist/commands/ShortcutsHelp.js +4 -5
- package/dist/commands/define-commands.d.ts +15 -31
- package/dist/commands/define-commands.d.ts.map +1 -1
- package/dist/commands/define-commands.js +1 -11
- package/dist/commands/define-overlays.d.ts +5 -19
- package/dist/commands/define-overlays.d.ts.map +1 -1
- package/dist/commands/define-overlays.js +3 -11
- package/dist/commands/index.d.ts +10 -40
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +9 -46
- package/dist/{notifications → commands/notifications}/bell.d.ts +1 -1
- package/dist/commands/notifications/bell.d.ts.map +1 -0
- package/dist/{notifications → commands/notifications}/center.d.ts +2 -2
- package/dist/commands/notifications/center.d.ts.map +1 -0
- package/dist/{notifications → commands/notifications}/center.js +2 -2
- package/dist/{notifications → commands/notifications}/define-notifications.d.ts +3 -3
- package/dist/commands/notifications/define-notifications.d.ts.map +1 -0
- package/dist/commands/notifications/notify.d.ts +44 -0
- package/dist/commands/notifications/notify.d.ts.map +1 -0
- package/dist/commands/notifications/notify.js +79 -0
- package/dist/{notifications → commands/notifications}/store.d.ts +2 -0
- package/dist/commands/notifications/store.d.ts.map +1 -0
- package/dist/{notifications → commands/notifications}/store.js +4 -0
- package/dist/commands/projectors.d.ts +1 -131
- package/dist/commands/projectors.d.ts.map +1 -1
- package/dist/commands/projectors.js +2 -73
- package/dist/commands/shell-bridge.d.ts +3 -3
- package/dist/commands/shortcut-format.d.ts +5 -4
- package/dist/commands/shortcut-format.d.ts.map +1 -1
- package/dist/common/errors.d.ts +3 -3
- package/dist/common/use-measured-widths.d.ts.map +1 -1
- package/dist/common/use-measured-widths.js +5 -3
- package/dist/common/validate.d.ts +2 -2
- package/dist/content/article-layout.d.ts.map +1 -1
- package/dist/content/article-layout.js +3 -3
- package/dist/content/article-model.d.ts +1 -46
- package/dist/content/article-model.d.ts.map +1 -1
- package/dist/content/article-model.js +1 -29
- package/dist/content/index.d.ts +11 -41
- package/dist/content/index.d.ts.map +1 -1
- package/dist/content/index.js +3 -35
- package/dist/content/markdown.d.ts +1 -1
- package/dist/content/markdown.d.ts.map +1 -1
- package/dist/content/markdown.js +1 -1
- package/dist/content/mermaid.d.ts.map +1 -1
- package/dist/content/mermaid.js +7 -7
- package/dist/content/slug.d.ts +1 -8
- package/dist/content/slug.d.ts.map +1 -1
- package/dist/content/slug.js +1 -8
- package/dist/content/url-hardening.d.ts +2 -2
- package/dist/content/url-hardening.d.ts.map +1 -1
- package/dist/content/url-hardening.js +2 -0
- package/dist/controls/actions.d.ts +16 -1
- package/dist/controls/actions.d.ts.map +1 -1
- package/dist/controls/enum-filter.d.ts +1 -1
- package/dist/controls/enum-filter.d.ts.map +1 -1
- package/dist/controls/filter-context.d.ts.map +1 -1
- package/dist/controls/filter-context.js +3 -1
- package/dist/controls/filter-set.js +4 -6
- package/dist/controls/form-layout.d.ts +1 -1
- package/dist/controls/form-layout.d.ts.map +1 -1
- package/dist/controls/form-layout.js +1 -1
- package/dist/controls/glyphs.d.ts +0 -2
- package/dist/controls/glyphs.d.ts.map +1 -1
- package/dist/controls/glyphs.js +0 -7
- package/dist/controls/index.d.ts +12 -17
- package/dist/controls/index.d.ts.map +1 -1
- package/dist/controls/index.js +5 -39
- package/dist/controls/multi-select-filter.d.ts +4 -3
- package/dist/controls/multi-select-filter.d.ts.map +1 -1
- package/dist/controls/number-filter.d.ts +4 -3
- package/dist/controls/number-filter.d.ts.map +1 -1
- package/dist/controls/number-filter.js +3 -1
- package/dist/controls/range-filter.d.ts +4 -3
- package/dist/controls/range-filter.d.ts.map +1 -1
- package/dist/controls/search-filter.d.ts +4 -3
- package/dist/controls/search-filter.d.ts.map +1 -1
- package/dist/controls/search-filter.js +19 -14
- package/dist/controls/select-filter.d.ts +4 -3
- package/dist/controls/select-filter.d.ts.map +1 -1
- package/dist/controls/sync-button.d.ts.map +1 -1
- package/dist/controls/sync-button.js +12 -15
- package/dist/controls/toggle-filter.d.ts +4 -3
- package/dist/controls/toggle-filter.d.ts.map +1 -1
- package/dist/controls/uncontrolled.d.ts +12 -0
- package/dist/controls/uncontrolled.d.ts.map +1 -0
- package/dist/controls/view-tabs.d.ts +2 -2
- package/dist/controls/view-tabs.d.ts.map +1 -1
- package/dist/controls-dates/index.d.ts +0 -1
- package/dist/controls-dates/index.d.ts.map +1 -1
- package/dist/dashboard/index.d.ts +7 -9
- package/dist/dashboard/index.d.ts.map +1 -1
- package/dist/dashboard/index.js +3 -23
- package/dist/dashboard/section.d.ts +4 -6
- package/dist/dashboard/section.d.ts.map +1 -1
- package/dist/dashboard/section.js +4 -10
- package/dist/dashboard/stat-card.d.ts +4 -4
- package/dist/dashboard/stat-card.d.ts.map +1 -1
- package/dist/dashboard/stat-card.js +3 -3
- package/dist/dashboard/widget-header.module.css +9 -7
- package/dist/dev-dock.d.ts.map +1 -1
- package/dist/dev-dock.js +6 -1
- package/dist/format/date.d.ts +0 -34
- package/dist/format/date.d.ts.map +1 -1
- package/dist/format/date.js +0 -54
- package/dist/format/index.d.ts +7 -22
- package/dist/format/index.d.ts.map +1 -1
- package/dist/format/index.js +2 -43
- package/dist/format/number.d.ts +3 -14
- package/dist/format/number.d.ts.map +1 -1
- package/dist/format/number.js +0 -13
- package/dist/format/shared.d.ts +2 -3
- package/dist/format/shared.d.ts.map +1 -1
- package/dist/forms/index.d.ts +0 -11
- package/dist/forms/index.d.ts.map +1 -1
- package/dist/forms/index.js +1 -14
- package/dist/guard/index.d.ts +6 -21
- package/dist/guard/index.d.ts.map +1 -1
- package/dist/guard/index.js +27 -115
- package/dist/guard/types.d.ts +7 -18
- package/dist/guard/types.d.ts.map +1 -1
- package/dist/index.d.ts +16 -48
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -117
- package/dist/provider/create-router.d.ts +44 -0
- package/dist/provider/create-router.d.ts.map +1 -0
- package/dist/provider/create-router.js +62 -0
- package/dist/provider/hotkeys.d.ts +8 -0
- package/dist/provider/hotkeys.d.ts.map +1 -0
- package/dist/provider/hotkeys.js +50 -0
- package/dist/provider/index.d.ts +33 -110
- package/dist/provider/index.d.ts.map +1 -1
- package/dist/provider/index.js +182 -82
- package/dist/provider/lab-theme.d.ts.map +1 -1
- package/dist/provider/route-transition.d.ts +76 -0
- package/dist/provider/route-transition.d.ts.map +1 -0
- package/dist/provider/route-transition.js +98 -0
- package/dist/provider/spotlight-actions.d.ts +10 -0
- package/dist/provider/spotlight-actions.d.ts.map +1 -0
- package/dist/provider/spotlight-actions.js +55 -0
- package/dist/provider/test-router.d.ts +6 -0
- package/dist/provider/test-router.d.ts.map +1 -0
- package/dist/provider/test-router.js +18 -0
- package/dist/query-client.d.ts +4 -20
- package/dist/query-client.d.ts.map +1 -1
- package/dist/query-client.js +2 -2
- package/dist/router-tanstack/index.d.ts +18 -64
- package/dist/router-tanstack/index.d.ts.map +1 -1
- package/dist/router-tanstack/index.js +2 -16
- package/dist/router-tanstack/nav.d.ts +12 -1
- package/dist/router-tanstack/nav.d.ts.map +1 -1
- package/dist/router-tanstack/nav.js +8 -1
- package/dist/router-tanstack/search-store.d.ts +1 -1
- package/dist/router-tanstack/search-store.d.ts.map +1 -1
- package/dist/router-tanstack/use-nav.d.ts +8 -9
- package/dist/router-tanstack/use-nav.d.ts.map +1 -1
- package/dist/router-tanstack/use-nav.js +20 -1
- package/dist/shell/app-mobile-nav.d.ts.map +1 -1
- package/dist/shell/app-sidebar.js +1 -1
- package/dist/shell/index.d.ts +31 -10
- package/dist/shell/index.d.ts.map +1 -1
- package/dist/shell/index.js +14 -3
- package/dist/shell/page-aside.d.ts +2 -2
- package/dist/shell/page-aside.d.ts.map +1 -1
- package/dist/shell/page-aside.js +31 -12
- package/dist/shell/page-bar.d.ts +2 -2
- package/dist/shell/page-bar.d.ts.map +1 -1
- package/dist/shell/page-bar.js +1 -1
- package/dist/state.d.ts +10 -12
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +4 -6
- package/dist/styles.css +107 -7
- package/dist/surfaces.d.ts +28 -103
- package/dist/surfaces.d.ts.map +1 -1
- package/dist/surfaces.js +54 -143
- package/dist/{data → table}/data-table-state.d.ts +1 -1
- package/dist/table/data-table-state.d.ts.map +1 -0
- package/dist/{data → table}/data-table-state.js +4 -3
- package/dist/{data → table}/data-table.d.ts +28 -49
- package/dist/table/data-table.d.ts.map +1 -0
- package/dist/{data → table}/data-table.js +74 -60
- package/dist/table/index.d.ts +18 -0
- package/dist/table/index.d.ts.map +1 -0
- package/dist/{data/table.js → table/index.js} +1 -1
- package/dist/table/query-branch.d.ts.map +1 -0
- package/dist/table/table-features.d.ts +69 -0
- package/dist/table/table-features.d.ts.map +1 -0
- package/dist/table/table-features.js +49 -0
- package/dist/telemetry.d.ts +77 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +33 -0
- package/dist/theme/index.d.ts +10 -21
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js +3 -14
- package/dist/theme/theme-toggle.d.ts.map +1 -1
- package/dist/theme/theme-toggle.js +7 -33
- package/dist/theme/theme-toggle.module.css +30 -0
- package/dist/theme/theme-toggle.module.css.d.ts +10 -0
- package/dist/theme-lab/derive-controls.d.ts.map +1 -1
- package/dist/theme-lab/derive-controls.js +5 -3
- package/dist/theme-lab/derive-state.d.ts.map +1 -1
- package/dist/theme-lab/derive-state.js +2 -1
- package/dist/tokens/core.d.ts +360 -0
- package/dist/tokens/core.d.ts.map +1 -0
- package/dist/tokens/core.js +708 -0
- package/dist/tokens/derive.d.ts +1 -1
- package/dist/tokens/derive.d.ts.map +1 -1
- package/dist/tokens/index.d.ts +5 -373
- package/dist/tokens/index.d.ts.map +1 -1
- package/dist/tokens/index.js +8 -700
- package/dist/tokens/palette.d.ts +2 -6
- package/dist/tokens/palette.d.ts.map +1 -1
- package/dist/tokens/palette.js +1 -4
- package/dist/vite.d.ts +4 -3
- package/dist/vite.d.ts.map +1 -1
- package/llms.txt +43 -85
- package/package.json +80 -173
- package/src/agent/ai-sdk-transport.ts +57 -37
- package/src/{agent-chat → agent/chat}/composer.tsx +29 -30
- package/src/{agent-chat → agent/chat}/message-affordances.ts +8 -5
- package/src/{agent-chat → agent/chat}/thread-feed-row.tsx +30 -35
- package/src/{agent-chat → agent/chat}/thread-feed.tsx +40 -35
- package/src/{agent-chat → agent/chat}/thread-message.tsx +37 -35
- package/src/{agent-chat → agent/chat}/thread-outcome-card.tsx +5 -5
- package/src/{agent-chat → agent/chat}/tool-chip.tsx +12 -12
- package/src/{agent-chat → agent/chat}/use-keyboard-inset.ts +1 -1
- package/src/{agent-chat → agent/chat}/virtualize.ts +5 -5
- package/src/agent/error.ts +43 -0
- package/src/agent/history.ts +2 -107
- package/src/agent/id.ts +4 -5
- package/src/agent/index.ts +23 -112
- package/src/agent/outcome.ts +3 -56
- package/src/agent/part-list.tsx +3 -3
- package/src/agent/parts.ts +23 -22
- package/src/agent/run-committer.ts +64 -0
- package/src/agent/run-records.ts +147 -0
- package/src/agent/thread.ts +24 -231
- package/src/agent/transport.ts +6 -96
- package/src/agent/use-agent-thread-runs.ts +364 -199
- package/src/charts/BandStrip.tsx +276 -0
- package/src/charts/Bars.tsx +141 -0
- package/src/charts/CartesianChart.tsx +206 -0
- package/src/charts/ChartCard.tsx +178 -0
- package/src/charts/Donut.tsx +256 -0
- package/src/charts/DualPanel.tsx +326 -0
- package/src/charts/Heatmap.tsx +282 -0
- package/src/charts/Lines.tsx +151 -0
- package/src/charts/MirroredBars.tsx +303 -0
- package/src/charts/Sparkline.tsx +176 -0
- package/src/charts/StackedArea.tsx +80 -0
- package/src/charts/box.tsx +96 -0
- package/src/charts/card-context.ts +11 -0
- package/src/charts/chart-box.module.css +64 -0
- package/src/charts/chart-box.module.css.d.ts +12 -0
- package/src/charts/chart-card.module.css +25 -0
- package/src/charts/chart-card.module.css.d.ts +8 -0
- package/src/charts/chart-legend.module.css +38 -0
- package/src/charts/chart-legend.module.css.d.ts +10 -0
- package/src/charts/compile.ts +585 -0
- package/src/charts/cursor.ts +282 -0
- package/src/charts/curves.ts +111 -0
- package/src/charts/donut.module.css +54 -0
- package/src/charts/donut.module.css.d.ts +9 -0
- package/src/charts/host.tsx +60 -0
- package/src/charts/index.ts +41 -178
- package/src/charts/legend.tsx +204 -0
- package/src/charts/marks.ts +201 -0
- package/src/charts/panel.tsx +227 -0
- package/src/charts/scales.ts +237 -0
- package/src/charts/sizing.ts +47 -0
- package/src/charts/state.tsx +80 -0
- package/src/charts/theme.ts +65 -0
- package/src/charts/types.ts +242 -0
- package/src/cli/audit-allows.ts +8 -30
- package/src/cli/config.ts +26 -43
- package/src/cli/doctor-upgrade.ts +457 -0
- package/src/cli/doctor.ts +89 -72
- package/src/cli/help.ts +2 -4
- package/src/cli/index.ts +100 -384
- package/src/cli/init.ts +60 -51
- package/src/cli/sync.ts +13 -68
- package/src/cli/tokens-css.ts +7 -28
- package/src/commands/ShortcutsHelp.tsx +8 -9
- package/src/commands/define-commands.ts +16 -43
- package/src/commands/define-overlays.ts +12 -36
- package/src/commands/index.ts +11 -94
- package/src/{notifications → commands/notifications}/bell.tsx +2 -2
- package/src/{notifications → commands/notifications}/center.tsx +7 -5
- package/src/{notifications → commands/notifications}/define-notifications.ts +3 -3
- package/src/commands/notifications/notify.tsx +158 -0
- package/src/{notifications → commands/notifications}/store.ts +10 -2
- package/src/commands/projectors.ts +5 -225
- package/src/commands/shell-bridge.ts +5 -5
- package/src/commands/shortcut-format.ts +5 -4
- package/src/common/errors.ts +3 -3
- package/src/common/use-measured-widths.ts +6 -3
- package/src/common/validate.ts +2 -2
- package/src/content/article-layout.tsx +37 -38
- package/src/content/article-model.ts +1 -84
- package/src/content/index.ts +12 -83
- package/src/content/markdown.tsx +4 -3
- package/src/content/mermaid.tsx +9 -7
- package/src/content/slug.ts +1 -16
- package/src/content/url-hardening.ts +8 -2
- package/src/controls/actions.tsx +24 -1
- package/src/controls/enum-filter.tsx +1 -1
- package/src/controls/filter-context.tsx +3 -1
- package/src/controls/filter-set.tsx +5 -7
- package/src/controls/form-layout.tsx +2 -2
- package/src/controls/glyphs.tsx +0 -10
- package/src/controls/index.ts +13 -64
- package/src/controls/multi-select-filter.tsx +5 -4
- package/src/controls/number-filter.tsx +8 -4
- package/src/controls/range-filter.tsx +5 -4
- package/src/controls/search-filter.tsx +25 -19
- package/src/controls/select-filter.tsx +5 -4
- package/src/controls/sync-button.tsx +18 -20
- package/src/controls/toggle-filter.tsx +5 -4
- package/src/controls/uncontrolled.ts +12 -0
- package/src/controls/view-tabs.tsx +3 -3
- package/src/controls-dates/date-range-picker.tsx +1 -1
- package/src/controls-dates/index.ts +0 -1
- package/src/dashboard/index.ts +7 -48
- package/src/dashboard/section.tsx +11 -40
- package/src/dashboard/stat-card.tsx +14 -16
- package/src/dashboard/widget-header.module.css +9 -7
- package/src/dev-dock.tsx +14 -27
- package/src/format/date.ts +2 -92
- package/src/format/index.ts +7 -53
- package/src/format/number.ts +3 -26
- package/src/format/shared.ts +2 -3
- package/src/forms/index.ts +0 -23
- package/src/guard/index.ts +36 -191
- package/src/guard/types.ts +6 -19
- package/src/index.ts +30 -282
- package/src/provider/create-router.tsx +138 -0
- package/src/provider/hotkeys.ts +70 -0
- package/src/provider/index.tsx +260 -230
- package/src/provider/lab-theme.ts +3 -2
- package/src/provider/route-transition.ts +199 -0
- package/src/provider/spotlight-actions.tsx +69 -0
- package/src/provider/test-router.tsx +25 -0
- package/src/query-client.ts +4 -22
- package/src/router-tanstack/index.ts +18 -112
- package/src/router-tanstack/nav.ts +28 -2
- package/src/router-tanstack/search-store.ts +9 -2
- package/src/router-tanstack/use-nav.ts +47 -13
- package/src/shell/app-mobile-nav.tsx +3 -2
- package/src/shell/app-sidebar.tsx +1 -1
- package/src/shell/aside-docking.ts +1 -1
- package/src/shell/index.tsx +61 -20
- package/src/shell/page-aside.tsx +47 -23
- package/src/shell/page-bar.tsx +3 -3
- package/src/shell/page-title.tsx +1 -1
- package/src/state.ts +11 -37
- package/src/styles.css +107 -7
- package/src/surfaces.ts +56 -151
- package/src/{data → table}/data-table-state.ts +5 -4
- package/src/{data → table}/data-table.tsx +170 -161
- package/src/table/index.ts +18 -0
- package/src/table/table-features.ts +102 -0
- package/src/telemetry.ts +110 -0
- package/src/theme/index.ts +22 -47
- package/src/theme/theme-toggle.module.css +30 -0
- package/src/theme/theme-toggle.module.css.d.ts +10 -0
- package/src/theme/theme-toggle.tsx +15 -43
- package/src/theme-lab/derive-controls.tsx +5 -3
- package/src/theme-lab/derive-state.ts +2 -1
- package/src/tokens/core.ts +1163 -0
- package/src/tokens/derive.ts +1 -1
- package/src/tokens/index.ts +14 -1181
- package/src/tokens/palette.ts +3 -7
- package/src/vite.ts +3 -3
- package/agent/templates/query-client.ts.tpl +0 -26
- package/dist/agent/adapter.d.ts +0 -150
- package/dist/agent/adapter.d.ts.map +0 -1
- package/dist/agent/adapter.js +0 -482
- package/dist/agent/use-agent-stream.d.ts +0 -35
- package/dist/agent/use-agent-stream.d.ts.map +0 -1
- package/dist/agent/use-agent-stream.js +0 -59
- package/dist/agent-chat/composer.d.ts.map +0 -1
- package/dist/agent-chat/index.d.ts +0 -31
- package/dist/agent-chat/index.d.ts.map +0 -1
- package/dist/agent-chat/index.js +0 -19
- package/dist/agent-chat/message-affordances.d.ts.map +0 -1
- package/dist/agent-chat/relative-time.d.ts.map +0 -1
- package/dist/agent-chat/thread-detail-panel.d.ts +0 -28
- package/dist/agent-chat/thread-detail-panel.d.ts.map +0 -1
- package/dist/agent-chat/thread-detail-panel.js +0 -115
- package/dist/agent-chat/thread-feed-row.d.ts.map +0 -1
- package/dist/agent-chat/thread-feed.d.ts.map +0 -1
- package/dist/agent-chat/thread-message.d.ts.map +0 -1
- package/dist/agent-chat/thread-outcome-card.d.ts.map +0 -1
- package/dist/agent-chat/thread-workspace.d.ts +0 -44
- package/dist/agent-chat/thread-workspace.d.ts.map +0 -1
- package/dist/agent-chat/thread-workspace.js +0 -153
- package/dist/agent-chat/tool-chip.d.ts.map +0 -1
- package/dist/agent-chat/use-keyboard-inset.d.ts.map +0 -1
- package/dist/agent-chat/virtualize.d.ts.map +0 -1
- package/dist/charts/cursor/resolve.d.ts +0 -75
- package/dist/charts/cursor/resolve.d.ts.map +0 -1
- package/dist/charts/cursor/resolve.js +0 -91
- package/dist/charts/cursor/scope.d.ts +0 -20
- package/dist/charts/cursor/scope.d.ts.map +0 -1
- package/dist/charts/cursor/scope.js +0 -20
- package/dist/charts/cursor/store.d.ts +0 -35
- package/dist/charts/cursor/store.d.ts.map +0 -1
- package/dist/charts/cursor/store.js +0 -25
- package/dist/charts/cursor/touch-pin.d.ts +0 -45
- package/dist/charts/cursor/touch-pin.d.ts.map +0 -1
- package/dist/charts/cursor/touch-pin.js +0 -79
- package/dist/charts/hooks/use-discrete-cursor.d.ts +0 -66
- package/dist/charts/hooks/use-discrete-cursor.d.ts.map +0 -1
- package/dist/charts/hooks/use-discrete-cursor.js +0 -198
- package/dist/charts/hooks/use-hysteresis.d.ts +0 -18
- package/dist/charts/hooks/use-hysteresis.d.ts.map +0 -1
- package/dist/charts/hooks/use-hysteresis.js +0 -12
- package/dist/charts/hooks/useBandPlot.d.ts +0 -145
- package/dist/charts/hooks/useBandPlot.d.ts.map +0 -1
- package/dist/charts/hooks/useBandPlot.js +0 -178
- package/dist/charts/hooks/useChartCursor.d.ts +0 -75
- package/dist/charts/hooks/useChartCursor.d.ts.map +0 -1
- package/dist/charts/hooks/useChartCursor.js +0 -200
- package/dist/charts/hooks/useChartSize.d.ts +0 -29
- package/dist/charts/hooks/useChartSize.d.ts.map +0 -1
- package/dist/charts/hooks/useChartSize.js +0 -8
- package/dist/charts/kinds/BandStrip.d.ts +0 -132
- package/dist/charts/kinds/BandStrip.d.ts.map +0 -1
- package/dist/charts/kinds/BandStrip.js +0 -241
- package/dist/charts/kinds/Bars.d.ts +0 -141
- package/dist/charts/kinds/Bars.d.ts.map +0 -1
- package/dist/charts/kinds/Bars.js +0 -343
- package/dist/charts/kinds/Donut.d.ts +0 -77
- package/dist/charts/kinds/Donut.d.ts.map +0 -1
- package/dist/charts/kinds/Donut.js +0 -245
- package/dist/charts/kinds/DualPanel.d.ts +0 -111
- package/dist/charts/kinds/DualPanel.d.ts.map +0 -1
- package/dist/charts/kinds/DualPanel.js +0 -471
- package/dist/charts/kinds/Heatmap.d.ts +0 -85
- package/dist/charts/kinds/Heatmap.d.ts.map +0 -1
- package/dist/charts/kinds/Heatmap.js +0 -243
- package/dist/charts/kinds/MirroredBars.d.ts +0 -98
- package/dist/charts/kinds/MirroredBars.d.ts.map +0 -1
- package/dist/charts/kinds/MirroredBars.js +0 -292
- package/dist/charts/kinds/MultiLine.d.ts +0 -87
- package/dist/charts/kinds/MultiLine.d.ts.map +0 -1
- package/dist/charts/kinds/MultiLine.js +0 -176
- package/dist/charts/kinds/StackedArea.d.ts +0 -73
- package/dist/charts/kinds/StackedArea.d.ts.map +0 -1
- package/dist/charts/kinds/StackedArea.js +0 -135
- package/dist/charts/kinds/ZonedLine.d.ts +0 -97
- package/dist/charts/kinds/ZonedLine.d.ts.map +0 -1
- package/dist/charts/kinds/ZonedLine.js +0 -155
- package/dist/charts/kinds/band-chrome.d.ts +0 -31
- package/dist/charts/kinds/band-chrome.d.ts.map +0 -1
- package/dist/charts/kinds/band-chrome.js +0 -71
- package/dist/charts/kinds/donut-layout.d.ts +0 -47
- package/dist/charts/kinds/donut-layout.d.ts.map +0 -1
- package/dist/charts/kinds/donut-layout.js +0 -52
- package/dist/charts/layout/auto-margin.d.ts +0 -122
- package/dist/charts/layout/auto-margin.d.ts.map +0 -1
- package/dist/charts/layout/auto-margin.js +0 -81
- package/dist/charts/layout/end-labels.d.ts +0 -64
- package/dist/charts/layout/end-labels.d.ts.map +0 -1
- package/dist/charts/layout/end-labels.js +0 -76
- package/dist/charts/layout/log-ticks.d.ts +0 -27
- package/dist/charts/layout/log-ticks.d.ts.map +0 -1
- package/dist/charts/layout/log-ticks.js +0 -42
- package/dist/charts/primitives/AreaGradient.d.ts +0 -18
- package/dist/charts/primitives/AreaGradient.d.ts.map +0 -1
- package/dist/charts/primitives/AreaGradient.js +0 -13
- package/dist/charts/primitives/Axes.d.ts +0 -83
- package/dist/charts/primitives/Axes.d.ts.map +0 -1
- package/dist/charts/primitives/Axes.js +0 -168
- package/dist/charts/primitives/CartesianChart.d.ts +0 -257
- package/dist/charts/primitives/CartesianChart.d.ts.map +0 -1
- package/dist/charts/primitives/CartesianChart.js +0 -549
- package/dist/charts/primitives/ChartCard.d.ts +0 -66
- package/dist/charts/primitives/ChartCard.d.ts.map +0 -1
- package/dist/charts/primitives/ChartCard.js +0 -143
- package/dist/charts/primitives/ChartFrame.d.ts +0 -156
- package/dist/charts/primitives/ChartFrame.d.ts.map +0 -1
- package/dist/charts/primitives/ChartFrame.js +0 -241
- package/dist/charts/primitives/ChartLegend.d.ts +0 -67
- package/dist/charts/primitives/ChartLegend.d.ts.map +0 -1
- package/dist/charts/primitives/ChartLegend.js +0 -292
- package/dist/charts/primitives/ChartPending.d.ts +0 -113
- package/dist/charts/primitives/ChartPending.d.ts.map +0 -1
- package/dist/charts/primitives/ChartPending.js +0 -117
- package/dist/charts/primitives/ChartTooltip.d.ts +0 -59
- package/dist/charts/primitives/ChartTooltip.d.ts.map +0 -1
- package/dist/charts/primitives/ChartTooltip.js +0 -197
- package/dist/charts/primitives/Crosshair.d.ts +0 -26
- package/dist/charts/primitives/Crosshair.d.ts.map +0 -1
- package/dist/charts/primitives/Crosshair.js +0 -23
- package/dist/charts/primitives/HatchPattern.d.ts +0 -31
- package/dist/charts/primitives/HatchPattern.d.ts.map +0 -1
- package/dist/charts/primitives/HatchPattern.js +0 -31
- package/dist/charts/primitives/HoverOverlay.d.ts +0 -45
- package/dist/charts/primitives/HoverOverlay.d.ts.map +0 -1
- package/dist/charts/primitives/HoverOverlay.js +0 -72
- package/dist/charts/primitives/HoverOverlay.module.css +0 -13
- package/dist/charts/primitives/HoverOverlay.module.css.d.ts +0 -8
- package/dist/charts/primitives/XZoneRects.d.ts +0 -54
- package/dist/charts/primitives/XZoneRects.d.ts.map +0 -1
- package/dist/charts/primitives/XZoneRects.js +0 -65
- package/dist/charts/primitives/ZoneRects.d.ts +0 -38
- package/dist/charts/primitives/ZoneRects.d.ts.map +0 -1
- package/dist/charts/primitives/ZoneRects.js +0 -30
- package/dist/charts/primitives/chart-card-context.d.ts +0 -33
- package/dist/charts/primitives/chart-card-context.d.ts.map +0 -1
- package/dist/charts/primitives/chart-card-context.js +0 -18
- package/dist/charts/primitives/chart-frame-layout.d.ts +0 -185
- package/dist/charts/primitives/chart-frame-layout.d.ts.map +0 -1
- package/dist/charts/primitives/chart-frame-layout.js +0 -175
- package/dist/charts/primitives/chart-layout.d.ts +0 -112
- package/dist/charts/primitives/chart-layout.d.ts.map +0 -1
- package/dist/charts/primitives/chart-layout.js +0 -175
- package/dist/charts/primitives/chart-tier.d.ts +0 -16
- package/dist/charts/primitives/chart-tier.d.ts.map +0 -1
- package/dist/charts/primitives/chart-tier.js +0 -44
- package/dist/charts/primitives/legend-disclosure.d.ts +0 -27
- package/dist/charts/primitives/legend-disclosure.d.ts.map +0 -1
- package/dist/charts/primitives/legend-disclosure.js +0 -153
- package/dist/charts/series.d.ts +0 -189
- package/dist/charts/series.d.ts.map +0 -1
- package/dist/charts/series.js +0 -84
- package/dist/charts/sparklines/BarSparkline.d.ts +0 -37
- package/dist/charts/sparklines/BarSparkline.d.ts.map +0 -1
- package/dist/charts/sparklines/BarSparkline.js +0 -53
- package/dist/charts/sparklines/LineSparkline.d.ts +0 -15
- package/dist/charts/sparklines/LineSparkline.d.ts.map +0 -1
- package/dist/charts/sparklines/LineSparkline.js +0 -51
- package/dist/charts/sparklines/index.d.ts +0 -3
- package/dist/charts/sparklines/index.d.ts.map +0 -1
- package/dist/charts/sparklines/index.js +0 -6
- package/dist/charts/utils/domain.d.ts +0 -35
- package/dist/charts/utils/domain.d.ts.map +0 -1
- package/dist/charts/utils/domain.js +0 -12
- package/dist/charts/utils/format.d.ts +0 -8
- package/dist/charts/utils/format.d.ts.map +0 -1
- package/dist/charts/utils/format.js +0 -20
- package/dist/charts/utils/measure-text.d.ts +0 -25
- package/dist/charts/utils/measure-text.d.ts.map +0 -1
- package/dist/charts/utils/measure-text.js +0 -64
- package/dist/charts/utils/ticks.d.ts +0 -103
- package/dist/charts/utils/ticks.d.ts.map +0 -1
- package/dist/charts/utils/ticks.js +0 -92
- package/dist/commands/overlays-mount.d.ts +0 -122
- package/dist/commands/overlays-mount.d.ts.map +0 -1
- package/dist/commands/overlays-mount.js +0 -125
- package/dist/commands/useCommandHotkeys.d.ts +0 -14
- package/dist/commands/useCommandHotkeys.d.ts.map +0 -1
- package/dist/commands/useCommandHotkeys.js +0 -45
- package/dist/content/article-actions.d.ts +0 -39
- package/dist/content/article-actions.d.ts.map +0 -1
- package/dist/content/article-actions.js +0 -28
- package/dist/content/article-card.d.ts +0 -58
- package/dist/content/article-card.d.ts.map +0 -1
- package/dist/content/article-card.js +0 -79
- package/dist/content/article-card.module.css +0 -111
- package/dist/content/mdx.d.ts +0 -20
- package/dist/content/mdx.d.ts.map +0 -1
- package/dist/content/mdx.js +0 -64
- package/dist/controls/compare-filter.d.ts +0 -42
- package/dist/controls/compare-filter.d.ts.map +0 -1
- package/dist/controls/compare-filter.js +0 -38
- package/dist/controls/slider-control.d.ts +0 -36
- package/dist/controls/slider-control.d.ts.map +0 -1
- package/dist/controls/slider-control.js +0 -64
- package/dist/dashboard/widget-grid.d.ts +0 -27
- package/dist/dashboard/widget-grid.d.ts.map +0 -1
- package/dist/dashboard/widget-grid.js +0 -40
- package/dist/dashboard/widget-grid.module.css +0 -69
- package/dist/data/data-table-state.d.ts.map +0 -1
- package/dist/data/data-table.d.ts.map +0 -1
- package/dist/data/query-branch.d.ts.map +0 -1
- package/dist/data/table.d.ts +0 -24
- package/dist/data/table.d.ts.map +0 -1
- package/dist/data/virtual-list.d.ts +0 -133
- package/dist/data/virtual-list.d.ts.map +0 -1
- package/dist/data/virtual-list.js +0 -157
- package/dist/data/virtual.d.ts +0 -21
- package/dist/data/virtual.d.ts.map +0 -1
- package/dist/data/virtual.js +0 -4
- package/dist/forms/FormErrorSummary.d.ts +0 -30
- package/dist/forms/FormErrorSummary.d.ts.map +0 -1
- package/dist/forms/FormErrorSummary.js +0 -30
- package/dist/forms/use-field-array.d.ts +0 -60
- package/dist/forms/use-field-array.d.ts.map +0 -1
- package/dist/forms/use-field-array.js +0 -20
- package/dist/forms/use-form-draft.d.ts +0 -76
- package/dist/forms/use-form-draft.d.ts.map +0 -1
- package/dist/forms/use-form-draft.js +0 -92
- package/dist/forms/use-form-submit.d.ts +0 -88
- package/dist/forms/use-form-submit.d.ts.map +0 -1
- package/dist/forms/use-form-submit.js +0 -63
- package/dist/notifications/bell.d.ts.map +0 -1
- package/dist/notifications/center.d.ts.map +0 -1
- package/dist/notifications/define-notifications.d.ts.map +0 -1
- package/dist/notifications/index.d.ts +0 -40
- package/dist/notifications/index.d.ts.map +0 -1
- package/dist/notifications/index.js +0 -54
- package/dist/notifications/mount-guard.d.ts +0 -8
- package/dist/notifications/mount-guard.d.ts.map +0 -1
- package/dist/notifications/mount-guard.js +0 -18
- package/dist/notifications/notify.d.ts +0 -149
- package/dist/notifications/notify.d.ts.map +0 -1
- package/dist/notifications/notify.js +0 -171
- package/dist/notifications/store.d.ts.map +0 -1
- package/dist/provider/connectivity-indicator.d.ts +0 -13
- package/dist/provider/connectivity-indicator.d.ts.map +0 -1
- package/dist/provider/connectivity-indicator.js +0 -205
- package/dist/provider/connectivity-provider.d.ts +0 -7
- package/dist/provider/connectivity-provider.d.ts.map +0 -1
- package/dist/provider/connectivity-provider.js +0 -128
- package/dist/provider/connectivity-types.d.ts +0 -36
- package/dist/provider/connectivity-types.d.ts.map +0 -1
- package/dist/provider/use-connectivity.d.ts +0 -3
- package/dist/provider/use-connectivity.d.ts.map +0 -1
- package/dist/provider/use-connectivity.js +0 -14
- package/dist/query-devtools.d.ts +0 -21
- package/dist/query-devtools.d.ts.map +0 -1
- package/dist/query-devtools.js +0 -13
- package/src/agent/adapter.ts +0 -945
- package/src/agent/use-agent-stream.ts +0 -154
- package/src/agent-chat/index.ts +0 -54
- package/src/agent-chat/thread-detail-panel.tsx +0 -201
- package/src/agent-chat/thread-workspace.tsx +0 -279
- package/src/charts/cursor/resolve.ts +0 -198
- package/src/charts/cursor/scope.tsx +0 -35
- package/src/charts/cursor/store.ts +0 -58
- package/src/charts/cursor/touch-pin.ts +0 -138
- package/src/charts/hooks/use-discrete-cursor.ts +0 -335
- package/src/charts/hooks/use-hysteresis.ts +0 -26
- package/src/charts/hooks/useBandPlot.ts +0 -383
- package/src/charts/hooks/useChartCursor.ts +0 -367
- package/src/charts/hooks/useChartSize.ts +0 -35
- package/src/charts/kinds/BandStrip.tsx +0 -449
- package/src/charts/kinds/Bars.tsx +0 -589
- package/src/charts/kinds/Donut.tsx +0 -368
- package/src/charts/kinds/DualPanel.tsx +0 -712
- package/src/charts/kinds/Heatmap.tsx +0 -396
- package/src/charts/kinds/MirroredBars.tsx +0 -469
- package/src/charts/kinds/MultiLine.tsx +0 -322
- package/src/charts/kinds/StackedArea.tsx +0 -267
- package/src/charts/kinds/ZonedLine.tsx +0 -301
- package/src/charts/kinds/band-chrome.tsx +0 -91
- package/src/charts/kinds/donut-layout.ts +0 -82
- package/src/charts/layout/auto-margin.ts +0 -242
- package/src/charts/layout/end-labels.ts +0 -135
- package/src/charts/layout/log-ticks.ts +0 -90
- package/src/charts/primitives/AreaGradient.tsx +0 -26
- package/src/charts/primitives/Axes.tsx +0 -271
- package/src/charts/primitives/CartesianChart.tsx +0 -1002
- package/src/charts/primitives/ChartCard.tsx +0 -280
- package/src/charts/primitives/ChartFrame.tsx +0 -493
- package/src/charts/primitives/ChartLegend.tsx +0 -422
- package/src/charts/primitives/ChartPending.tsx +0 -243
- package/src/charts/primitives/ChartTooltip.tsx +0 -265
- package/src/charts/primitives/Crosshair.tsx +0 -43
- package/src/charts/primitives/HatchPattern.tsx +0 -55
- package/src/charts/primitives/HoverOverlay.module.css +0 -13
- package/src/charts/primitives/HoverOverlay.module.css.d.ts +0 -8
- package/src/charts/primitives/HoverOverlay.tsx +0 -109
- package/src/charts/primitives/XZoneRects.tsx +0 -132
- package/src/charts/primitives/ZoneRects.tsx +0 -67
- package/src/charts/primitives/chart-card-context.ts +0 -46
- package/src/charts/primitives/chart-frame-layout.ts +0 -430
- package/src/charts/primitives/chart-layout.ts +0 -318
- package/src/charts/primitives/chart-tier.tsx +0 -76
- package/src/charts/primitives/legend-disclosure.tsx +0 -178
- package/src/charts/series.ts +0 -276
- package/src/charts/sparklines/BarSparkline.tsx +0 -94
- package/src/charts/sparklines/LineSparkline.tsx +0 -71
- package/src/charts/sparklines/index.ts +0 -2
- package/src/charts/theme.tsx +0 -53
- package/src/charts/utils/domain.ts +0 -41
- package/src/charts/utils/format.ts +0 -19
- package/src/charts/utils/measure-text.ts +0 -109
- package/src/charts/utils/ticks.ts +0 -239
- package/src/commands/overlays-mount.tsx +0 -333
- package/src/commands/useCommandHotkeys.ts +0 -114
- package/src/content/article-actions.ts +0 -72
- package/src/content/article-card.module.css +0 -111
- package/src/content/article-card.tsx +0 -174
- package/src/content/mdx.tsx +0 -127
- package/src/controls/compare-filter.tsx +0 -81
- package/src/controls/slider-control.tsx +0 -159
- package/src/dashboard/widget-grid.module.css +0 -69
- package/src/dashboard/widget-grid.tsx +0 -146
- package/src/data/table.ts +0 -39
- package/src/data/virtual-list.tsx +0 -356
- package/src/data/virtual.ts +0 -26
- package/src/forms/FormErrorSummary.tsx +0 -71
- package/src/forms/use-field-array.ts +0 -94
- package/src/forms/use-form-draft.ts +0 -262
- package/src/forms/use-form-submit.ts +0 -199
- package/src/notifications/index.ts +0 -88
- package/src/notifications/mount-guard.ts +0 -38
- package/src/notifications/notify.tsx +0 -379
- package/src/provider/connectivity-indicator.tsx +0 -267
- package/src/provider/connectivity-provider.tsx +0 -189
- package/src/provider/connectivity-types.ts +0 -42
- package/src/provider/use-connectivity.ts +0 -26
- package/src/query-devtools.tsx +0 -40
- /package/dist/{agent-chat → agent/chat}/message-affordances.js +0 -0
- /package/dist/{agent-chat → agent/chat}/relative-time.d.ts +0 -0
- /package/dist/{agent-chat → agent/chat}/relative-time.js +0 -0
- /package/dist/{agent-chat → agent/chat}/use-keyboard-inset.d.ts +0 -0
- /package/dist/{agent-chat → agent/chat}/virtualize.js +0 -0
- /package/dist/{notifications → commands/notifications}/bell.js +0 -0
- /package/dist/{notifications → commands/notifications}/define-notifications.js +0 -0
- /package/dist/{provider/connectivity-types.js → controls/uncontrolled.js} +0 -0
- /package/dist/{data → table}/data-table.module.css +0 -0
- /package/dist/{data → table}/data-table.module.css.d.ts +0 -0
- /package/dist/{data → table}/query-branch.d.ts +0 -0
- /package/dist/{data → table}/query-branch.js +0 -0
- /package/src/{agent-chat → agent/chat}/relative-time.ts +0 -0
- /package/src/{data → table}/data-table.module.css +0 -0
- /package/src/{data → table}/data-table.module.css.d.ts +0 -0
- /package/src/{data → table}/query-branch.ts +0 -0
package/dist/surfaces.js
CHANGED
|
@@ -3,8 +3,6 @@ const PLUGIN_RULE_ID_LIST = [
|
|
|
3
3
|
"raw-size-literal",
|
|
4
4
|
"card-inset",
|
|
5
5
|
"chart-in-raw-surface",
|
|
6
|
-
"hand-rolled-plot",
|
|
7
|
-
"chart-legend-literal",
|
|
8
6
|
"shadow-basalt-export",
|
|
9
7
|
"hand-rolled-shell",
|
|
10
8
|
"raw-scroll-container",
|
|
@@ -12,23 +10,21 @@ const PLUGIN_RULE_ID_LIST = [
|
|
|
12
10
|
"control-outside-home",
|
|
13
11
|
"bound-control-outside-home",
|
|
14
12
|
"control-size-literal",
|
|
15
|
-
"page-bar-budget",
|
|
16
13
|
"in-body-page-title",
|
|
17
14
|
"responsive-twin",
|
|
18
15
|
"search-literal-link",
|
|
19
16
|
"use-search-from-literal",
|
|
20
|
-
"provider-above-router",
|
|
21
17
|
"query-fn-unwrap",
|
|
22
|
-
"deprecated-export",
|
|
23
18
|
"forms-field-key",
|
|
24
|
-
"
|
|
25
|
-
"
|
|
19
|
+
"chart-engine-boundary",
|
|
20
|
+
"chart-host-single",
|
|
26
21
|
"token-layer-boundary",
|
|
27
|
-
"agent-resume-guard",
|
|
28
22
|
"agent-no-raw-usechat",
|
|
29
23
|
"ai-sdk-major",
|
|
30
24
|
"no-import-meta-env",
|
|
31
|
-
"raw-breakpoint"
|
|
25
|
+
"raw-breakpoint",
|
|
26
|
+
"no-dev-helper",
|
|
27
|
+
"route-view-transition"
|
|
32
28
|
];
|
|
33
29
|
const v = (spec, message, extra) => ({
|
|
34
30
|
spec,
|
|
@@ -85,28 +81,26 @@ const SURFACES = {
|
|
|
85
81
|
"card-inset",
|
|
86
82
|
"in-body-page-title",
|
|
87
83
|
"raw-scroll-container",
|
|
88
|
-
"page-bar-budget",
|
|
89
84
|
"shadow-basalt-export",
|
|
90
|
-
//
|
|
91
|
-
//
|
|
92
|
-
"
|
|
93
|
-
|
|
85
|
+
// Route transitions are `createBasaltRouter`'s `defaultViewTransition`; a React
|
|
86
|
+
// `<ViewTransition>` around `<Outlet>` is inert and fights it.
|
|
87
|
+
"route-view-transition",
|
|
88
|
+
// Dev-only `import()`s need a literal NODE_ENV gate to fold out of production (repo-local).
|
|
89
|
+
"no-dev-helper",
|
|
94
90
|
// `import.meta.env` is a Vite-ism that fails outside a Vite build (SSR/server code, Node
|
|
95
91
|
// scripts, tests) — process.env.NODE_ENV works everywhere basalt code runs. Repo-local,
|
|
96
92
|
// scoped to all of src/**, one surface required by coverage (C2 consolidation).
|
|
97
93
|
"no-import-meta-env"
|
|
98
94
|
],
|
|
99
|
-
// agent/rules/basalt-mantine.md — stated, not guarded.
|
|
100
|
-
// `provider-above-router` at 1.28.0; this one has no AST form left to catch, because
|
|
95
|
+
// agent/rules/basalt-mantine.md — stated, not guarded. This law has no AST form to catch, because
|
|
101
96
|
// `cssVariablesResolver` is now `Omit`ted from the accepted prop type and a hand-built
|
|
102
97
|
// `createTheme` is a consumer's own call to make. (`duplicate-notifications-mount`, the
|
|
103
98
|
// other 1.28.0 mount-order rule, retired — `BasaltNotifications` no longer exists.)
|
|
104
99
|
advisoryLaws: [
|
|
105
100
|
"no second cssVariablesResolver \u2014 don't hand-build createTheme or re-add the resolver basalt already installs"
|
|
106
101
|
],
|
|
107
|
-
description: "BasaltProvider
|
|
102
|
+
description: "Wiring (`BasaltProvider`, `createBasaltTheme`, `createBasaltRouter`, `unwrap`), shell + nav (`BasaltShell`, `PageBar`, `PageAside`, `PageTitle`, `ThemeToggle`, `defineNav`/`navGroup`/`navTarget`/`flattenNav`, `useBasaltNav`, `useSizeClass`, `useCoarsePointer`), dashboard (`Section`, `WidgetHeader`, `StatCard`, `StatGroup`, `DeltaBadge`, `EmptyState`, `SettingsSection`/`SettingsRow`/`DangerZone`). Reaches no subpath-required peer.",
|
|
108
103
|
optionalPeers: [
|
|
109
|
-
"react-markdown",
|
|
110
104
|
"remark-gfm",
|
|
111
105
|
"rehype-sanitize",
|
|
112
106
|
"remend",
|
|
@@ -122,21 +116,17 @@ const SURFACES = {
|
|
|
122
116
|
layer: "headless",
|
|
123
117
|
rule: "charts",
|
|
124
118
|
skill: ["basalt-charts"],
|
|
125
|
-
guardKinds: ["raw-hex", "raw-color-fn"
|
|
126
|
-
pluginRules: [
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
"chart-in-raw-surface",
|
|
130
|
-
"visx-boundary",
|
|
131
|
-
"visx-tooltip"
|
|
132
|
-
],
|
|
133
|
-
description: "CartesianChart + visx chart primitives, kinds, sparklines, hooks, and token re-exports (Mantine-free)",
|
|
119
|
+
guardKinds: ["raw-hex", "raw-color-fn"],
|
|
120
|
+
pluginRules: ["chart-in-raw-surface", "chart-engine-boundary", "chart-host-single"],
|
|
121
|
+
description: "CartesianChart (the TanStack Charts rung), the Lines and Bars kinds, ChartCard and the shared chartCursor (Mantine-free; @tanstack/charts + d3-scale peers)",
|
|
122
|
+
optionalPeers: ["@tanstack/charts", "d3-scale"],
|
|
134
123
|
globs: {
|
|
135
124
|
shipped: ["**/charts/**"],
|
|
136
125
|
repo: ["packages/basalt-ui/src/charts/**"]
|
|
137
126
|
},
|
|
138
|
-
// The @visx
|
|
139
|
-
//
|
|
127
|
+
// The engine boundary (@visx/* banned, @tanstack/charts allowlisted) is enforced by the
|
|
128
|
+
// `basalt/chart-engine-boundary` oxlint plugin rule, `@tanstack/charts/react` by the
|
|
129
|
+
// repo-local `basalt/chart-host-single`, and the Mantine-free boundary by `basalt/token-layer-boundary` (repo-local only — see
|
|
140
130
|
// that rule's file-header comment for why) — both configs/oxlint-plugin.js, not
|
|
141
131
|
// no-restricted-imports.
|
|
142
132
|
forbiddenImports: [],
|
|
@@ -180,12 +170,6 @@ const SURFACES = {
|
|
|
180
170
|
// ./charts above and that rule's file-header comment for why).
|
|
181
171
|
forbiddenImports: []
|
|
182
172
|
},
|
|
183
|
-
"./theme-lab": {
|
|
184
|
-
kind: "tooling",
|
|
185
|
-
layer: "mantine-coupled",
|
|
186
|
-
description: "ThemeLabControls, applyOverrides, COLOR_GROUPS \u2014 a low-level inspector for the non-derived structural tokens; identity/color tuning lives in DeriveControls",
|
|
187
|
-
forbiddenImports: []
|
|
188
|
-
},
|
|
189
173
|
"./vite": {
|
|
190
174
|
kind: "tooling",
|
|
191
175
|
layer: "build-tooling",
|
|
@@ -193,45 +177,16 @@ const SURFACES = {
|
|
|
193
177
|
optionalPeers: ["vite-plugin-pwa"],
|
|
194
178
|
forbiddenImports: []
|
|
195
179
|
},
|
|
196
|
-
"./guard": {
|
|
197
|
-
kind: "tooling",
|
|
198
|
-
layer: "headless",
|
|
199
|
-
description: "checkSource, GUARD_RULES, Finding types \u2014 the headless theme-guard core",
|
|
200
|
-
globs: {
|
|
201
|
-
shipped: [],
|
|
202
|
-
repo: ["packages/basalt-ui/src/guard/**"]
|
|
203
|
-
},
|
|
204
|
-
// @visx/* ban dropped — `basalt/visx-boundary` now bans it universally outside charts.
|
|
205
|
-
forbiddenImports: [...MANTINE_BANS]
|
|
206
|
-
},
|
|
207
|
-
// 6th JS subpath
|
|
208
180
|
"./format": {
|
|
209
181
|
kind: "tooling",
|
|
210
182
|
layer: "headless",
|
|
211
|
-
description: "money/percent/
|
|
183
|
+
description: "integer/money/percent/durationClock/relativeTime/weekday/km/kcal \u2014 Intl-backed, Mantine-free, React-free formatting; the chart layer formats through the same implementation",
|
|
212
184
|
globs: {
|
|
213
185
|
shipped: [],
|
|
214
186
|
repo: ["packages/basalt-ui/src/format/**"]
|
|
215
187
|
},
|
|
216
188
|
forbiddenImports: [...MANTINE_BANS]
|
|
217
189
|
},
|
|
218
|
-
"./router-tanstack": {
|
|
219
|
-
kind: "doctrine",
|
|
220
|
-
layer: "headless",
|
|
221
|
-
rule: "state",
|
|
222
|
-
skill: ["basalt-app"],
|
|
223
|
-
guardKinds: [],
|
|
224
|
-
// Law C10 — a nav link's `search` and a reader's `from` are both this bridge's contract.
|
|
225
|
-
pluginRules: ["search-literal-link", "use-search-from-literal"],
|
|
226
|
-
description: "TanStack Router bridge: defineNav/navGroup/navTarget (one typed nav definition) + useNav (sections + mobileNav, spread onto BasaltShell) + useBasaltNav (active route) + useRouterBreadcrumbs + createSearchStore (typed URL > localStorage > fallback store over field.enum/multi/range/number/boolean/string; the deprecated createSearchParamStore/createMultiSearchParamStore wrappers were removed in 1.29.0, C1 consolidation)",
|
|
227
|
-
optionalPeers: ["@tanstack/react-router"],
|
|
228
|
-
globs: {
|
|
229
|
-
shipped: [],
|
|
230
|
-
repo: ["packages/basalt-ui/src/router-tanstack/**"]
|
|
231
|
-
},
|
|
232
|
-
// @visx/* ban dropped — `basalt/visx-boundary` now bans it universally outside charts.
|
|
233
|
-
forbiddenImports: [...MANTINE_BANS]
|
|
234
|
-
},
|
|
235
190
|
"./forms": {
|
|
236
191
|
kind: "doctrine",
|
|
237
192
|
layer: "mantine-coupled",
|
|
@@ -243,21 +198,10 @@ const SURFACES = {
|
|
|
243
198
|
// only stops resetting. `warn` through the 1.30.0 grace because it fires on what every
|
|
244
199
|
// consumer ships today (`PLUGIN_RULE_GRACE`).
|
|
245
200
|
pluginRules: ["forms-field-key"],
|
|
246
|
-
description: "Mantine form layer: useBasaltForm + inputProps/fieldKey (two calls \u2014 a spread `key` is a React 19 warning
|
|
201
|
+
description: "Mantine form layer: useBasaltForm + inputProps/fieldKey (two calls \u2014 a spread `key` is a React 19 warning), on @mantine/form",
|
|
247
202
|
optionalPeers: ["@mantine/form"],
|
|
248
203
|
forbiddenImports: []
|
|
249
204
|
},
|
|
250
|
-
"./notifications": {
|
|
251
|
-
kind: "doctrine",
|
|
252
|
-
layer: "mantine-coupled",
|
|
253
|
-
rule: "batteries",
|
|
254
|
-
skill: ["basalt-app"],
|
|
255
|
-
guardKinds: [],
|
|
256
|
-
pluginRules: [],
|
|
257
|
-
description: "Mantine notifications: notify helpers, typed registry, persisted history, NotificationBell, NotificationCenter",
|
|
258
|
-
optionalPeers: ["@mantine/notifications"],
|
|
259
|
-
forbiddenImports: []
|
|
260
|
-
},
|
|
261
205
|
"./commands": {
|
|
262
206
|
kind: "doctrine",
|
|
263
207
|
layer: "mantine-coupled",
|
|
@@ -265,71 +209,45 @@ const SURFACES = {
|
|
|
265
209
|
skill: ["basalt-app"],
|
|
266
210
|
guardKinds: [],
|
|
267
211
|
pluginRules: [],
|
|
268
|
-
description: "typed command bus
|
|
269
|
-
optionalPeers: ["@
|
|
212
|
+
description: "defineCommands (typed command bus), defineOverlays/overlays, setColorScheme, toggleSidebar, ShortcutsHelp, defineNotifications/emit/NotificationBell (folded in from ./notifications); BasaltProvider mounts Spotlight, Modals and Notifications",
|
|
213
|
+
optionalPeers: ["@tanstack/react-hotkeys"],
|
|
270
214
|
forbiddenImports: []
|
|
271
215
|
},
|
|
272
|
-
"./
|
|
216
|
+
"./table": {
|
|
273
217
|
kind: "doctrine",
|
|
274
218
|
layer: "mantine-coupled",
|
|
275
219
|
rule: "batteries",
|
|
276
220
|
skill: ["basalt-design"],
|
|
277
221
|
guardKinds: [],
|
|
278
222
|
pluginRules: [],
|
|
279
|
-
description: "BasaltDataTable: a
|
|
223
|
+
description: "BasaltDataTable and createColumnHelper: a data table over TanStack Table v9, rendered with Mantine (renamed from ./data/table)",
|
|
280
224
|
optionalPeers: ["@tanstack/react-table"],
|
|
281
225
|
forbiddenImports: []
|
|
282
226
|
},
|
|
283
|
-
"./data/virtual": {
|
|
284
|
-
kind: "doctrine",
|
|
285
|
-
layer: "mantine-coupled",
|
|
286
|
-
rule: "batteries",
|
|
287
|
-
skill: ["basalt-design"],
|
|
288
|
-
guardKinds: [],
|
|
289
|
-
pluginRules: [],
|
|
290
|
-
description: "BasaltVirtualList: a windowed virtual list over TanStack Virtual, rendered with Mantine (Mantine-rendered)",
|
|
291
|
-
optionalPeers: ["@tanstack/react-virtual"],
|
|
292
|
-
forbiddenImports: []
|
|
293
|
-
},
|
|
294
227
|
"./agent": {
|
|
295
|
-
kind: "doctrine",
|
|
296
|
-
layer: "headless",
|
|
297
|
-
rule: "batteries",
|
|
298
|
-
skill: ["basalt-app"],
|
|
299
|
-
guardKinds: [],
|
|
300
|
-
// The three agent-chat correctness rules — they honour `basalt-agent-allow`, not `theme-allow`.
|
|
301
|
-
pluginRules: ["agent-resume-guard", "agent-no-raw-usechat", "ai-sdk-major"],
|
|
302
|
-
description: "Headless streaming-chat layer: useAgentStream, aiSdkTransport (recommended default) + edenTransport, isResumable/ResumableAgentTransport (stream-resumption seam), PartList, coalesceParts, the ForeignPart/definePartRenderers/narrowAgentPart open part-registry seam, plus the multi-thread createThreadsStore + useAgentThreadRuns + outcome-resolver seam (Mantine-free)",
|
|
303
|
-
optionalPeers: ["ai", "use-stick-to-bottom"],
|
|
304
|
-
globs: {
|
|
305
|
-
shipped: [],
|
|
306
|
-
repo: ["packages/basalt-ui/src/agent/**"]
|
|
307
|
-
},
|
|
308
|
-
// @visx/* ban dropped — `basalt/visx-boundary` now bans it universally outside charts.
|
|
309
|
-
forbiddenImports: [...MANTINE_BANS]
|
|
310
|
-
},
|
|
311
|
-
"./agent-chat": {
|
|
312
228
|
kind: "doctrine",
|
|
313
229
|
layer: "mantine-coupled",
|
|
314
230
|
rule: "batteries",
|
|
315
231
|
skill: ["basalt-app"],
|
|
316
232
|
guardKinds: [],
|
|
317
|
-
|
|
318
|
-
|
|
233
|
+
// The agent-chat correctness rules — they honour `basalt-agent-allow`, not `theme-allow`.
|
|
234
|
+
pluginRules: ["agent-no-raw-usechat", "ai-sdk-major"],
|
|
235
|
+
description: "Streaming-chat surface: aiSdkTransport, useAgentThreadRuns, parseAgentPart, the open part-registry types, the consumer-owned thread contracts (AgentThread/ThreadsStore/ChatMessage), and the Mantine chat UI folded in from ./agent-chat (ThreadFeed, ThreadFeedRow, Composer, ToolChip). motion is subpath-required: the chat UI imports it eagerly",
|
|
319
236
|
optionalPeers: [
|
|
320
237
|
"ai",
|
|
238
|
+
"@ai-sdk/provider",
|
|
321
239
|
"motion",
|
|
322
|
-
"remend",
|
|
323
240
|
"use-stick-to-bottom",
|
|
324
|
-
"react-markdown",
|
|
325
|
-
"remark-gfm",
|
|
326
|
-
"shiki",
|
|
327
|
-
"@shikijs/langs",
|
|
328
|
-
"@shikijs/themes",
|
|
329
|
-
"beautiful-mermaid",
|
|
330
241
|
"@tanstack/react-virtual"
|
|
331
242
|
],
|
|
332
|
-
|
|
243
|
+
// The chat UI (src/agent/chat/**) is Mantine-styled; the runtime beside it stays Mantine-free.
|
|
244
|
+
// `*` does not cross `/`, so the two globs below cover the runtime files and not chat/.
|
|
245
|
+
globs: {
|
|
246
|
+
shipped: [],
|
|
247
|
+
repo: ["packages/basalt-ui/src/agent/*.ts", "packages/basalt-ui/src/agent/*.tsx"]
|
|
248
|
+
},
|
|
249
|
+
// @visx/* ban dropped — `basalt/chart-engine-boundary` bans it everywhere.
|
|
250
|
+
forbiddenImports: [...MANTINE_BANS]
|
|
333
251
|
},
|
|
334
252
|
"./content": {
|
|
335
253
|
kind: "doctrine",
|
|
@@ -338,7 +256,7 @@ const SURFACES = {
|
|
|
338
256
|
skill: ["basalt-design"],
|
|
339
257
|
guardKinds: [],
|
|
340
258
|
pluginRules: [],
|
|
341
|
-
description: 'Prose (article/chat typography),
|
|
259
|
+
description: 'Prose (article/chat typography), Callout, TableOfContents, Markdown (react-markdown + remark-gfm, optional peers; `streaming` is a rendering mode ONLY \u2014 `contentTrust` is the independent security input, and any surface rendering agent/model output must pin `contentTrust="untrusted"`, the sole input to the image-origin allowlist; `fenceRenderers` extends fenced-block rendering \u2014 settledOnly/FenceRenderer/FenceRenderers; `sanitizeSchema` is an additions-only SanitizeSchemaExtension merged over the default via mergeSanitizeSchema; shiki code blocks, beautiful-mermaid diagrams and the remend streaming repair load lazily from optional peers), ArticleLayout (docs-page frame), GuideLink (contextual-help link) \u2014 the content/prose surface',
|
|
342
260
|
optionalPeers: [
|
|
343
261
|
"shiki",
|
|
344
262
|
"@shikijs/langs",
|
|
@@ -347,8 +265,7 @@ const SURFACES = {
|
|
|
347
265
|
"react-markdown",
|
|
348
266
|
"remark-gfm",
|
|
349
267
|
"rehype-sanitize",
|
|
350
|
-
"remend"
|
|
351
|
-
"@mantine/spotlight"
|
|
268
|
+
"remend"
|
|
352
269
|
],
|
|
353
270
|
forbiddenImports: []
|
|
354
271
|
},
|
|
@@ -364,8 +281,8 @@ const SURFACES = {
|
|
|
364
281
|
// `responsive-twin` all ship `error`; the two C1 placement rules are the grace entries in
|
|
365
282
|
// `PLUGIN_RULE_GRACE`, both promoting at 1.30.0 — `control-outside-home` re-dated against the
|
|
366
283
|
// wave-7 measurement, `bound-control-outside-home` new since 1.28.0 (ASIDE-SPEC G5: the basalt
|
|
367
|
-
// half of C1, where a bound control in a section body rendered as a stray pill). The
|
|
368
|
-
//
|
|
284
|
+
// half of C1, where a bound control in a section body rendered as a stray pill). The action
|
|
285
|
+
// budgets are types now (`PageBarActions` / `SectionActions`, `controls/actions.tsx`).
|
|
369
286
|
pluginRules: [
|
|
370
287
|
"hand-rolled-filter",
|
|
371
288
|
"control-outside-home",
|
|
@@ -418,7 +335,7 @@ const SURFACES = {
|
|
|
418
335
|
guardKinds: [],
|
|
419
336
|
pluginRules: [],
|
|
420
337
|
description: "DateRangePicker \u2014 the @mantine/dates implementation of RangeFilter's customPicker seam. Its own subpath because @mantine/dates is an optional peer and basaltViteConfig pre-bundles the whole @mantine scope, so a consumer without the peer (linewatch) must never resolve it: nothing under src/controls may import it, statically or lazily (docs/CONTROLS-SPEC.md \xA73).",
|
|
421
|
-
optionalPeers: ["@mantine/dates"],
|
|
338
|
+
optionalPeers: ["@mantine/dates", "dayjs"],
|
|
422
339
|
forbiddenImports: []
|
|
423
340
|
},
|
|
424
341
|
"./state": {
|
|
@@ -427,17 +344,23 @@ const SURFACES = {
|
|
|
427
344
|
rule: "state",
|
|
428
345
|
skill: ["basalt-design"],
|
|
429
346
|
guardKinds: ["localstorage-theme"],
|
|
430
|
-
|
|
431
|
-
|
|
347
|
+
// Law C10 — a nav link's `search` and a reader's `from` are both the search store's contract
|
|
348
|
+
// (the store half of the former `./router-tanstack`).
|
|
349
|
+
pluginRules: ["search-literal-link", "use-search-from-literal"],
|
|
350
|
+
description: "field.enum/multi/range/number/boolean/string (the store field vocabulary), createSearchStore (typed URL > localStorage > fallback store), createLocalStore (the router-free store), createPersistedState (versioned localStorage)",
|
|
432
351
|
optionalPeers: [],
|
|
433
352
|
// Consumers import basalt-ui/state from node_modules (lint-ignored), so there is nothing to
|
|
434
353
|
// enforce consumer-side, and a shipped **/state* glob would wrongly hit consumers' own
|
|
435
354
|
// Mantine-using state files. Enforce basalt's own barrel AND its implementation files.
|
|
436
355
|
globs: {
|
|
437
356
|
shipped: [],
|
|
438
|
-
repo: [
|
|
357
|
+
repo: [
|
|
358
|
+
"packages/basalt-ui/src/state.ts",
|
|
359
|
+
"packages/basalt-ui/src/state/**",
|
|
360
|
+
"packages/basalt-ui/src/router-tanstack/search-store.ts"
|
|
361
|
+
]
|
|
439
362
|
},
|
|
440
|
-
// @visx/* ban dropped — `basalt/
|
|
363
|
+
// @visx/* ban dropped — `basalt/chart-engine-boundary` bans it everywhere.
|
|
441
364
|
forbiddenImports: [...MANTINE_BANS]
|
|
442
365
|
},
|
|
443
366
|
// ── Non-JS published assets (ToolingSpec; not JS subpaths — check-coverage exempts these) ─────
|
|
@@ -447,24 +370,12 @@ const SURFACES = {
|
|
|
447
370
|
description: "Mandatory CSS import (after the Mantine styles.layer.css bundles) \u2014 @layer basalt base styles, iOS input safety net, font stack",
|
|
448
371
|
forbiddenImports: []
|
|
449
372
|
},
|
|
450
|
-
"./tokens.css": {
|
|
451
|
-
kind: "tooling",
|
|
452
|
-
layer: "non-js-asset",
|
|
453
|
-
description: "Prebuilt --vx-* token stylesheet \u2014 the default buildPaletteCss() output as a plain file, for a consumer that has a bundler to resolve the subpath but no React and no Mantine; with no bundler, emit a file you own via `basalt-ui tokens:css`",
|
|
454
|
-
forbiddenImports: []
|
|
455
|
-
},
|
|
456
373
|
"./configs/*": {
|
|
457
374
|
kind: "tooling",
|
|
458
375
|
layer: "non-js-asset",
|
|
459
376
|
description: "Raw toolchain presets for consumer extends: oxlint.json (or the guards-only oxlint-basalt.json), oxfmt.json, tsconfig.*.json, lefthook.yml, check.yml",
|
|
460
377
|
forbiddenImports: []
|
|
461
378
|
},
|
|
462
|
-
"./llms.txt": {
|
|
463
|
-
kind: "tooling",
|
|
464
|
-
layer: "non-js-asset",
|
|
465
|
-
description: "Machine-readable surface map \u2014 one entry per published subpath with import specifier, description, layer, and optional peers",
|
|
466
|
-
forbiddenImports: []
|
|
467
|
-
},
|
|
468
379
|
// ── #-prefixed synthetic surfaces (advisory rules + global ban layer; NOT export keys) ────────
|
|
469
380
|
"#app": {
|
|
470
381
|
// synthetic global app-wide ban layer — the src/**+app/** glob
|
|
@@ -481,9 +392,9 @@ const SURFACES = {
|
|
|
481
392
|
pluginRules: ["query-fn-unwrap"],
|
|
482
393
|
globs: {
|
|
483
394
|
// Shipped is a catch-all (not just src/**+app/**) so consumer code under components/, lib/,
|
|
484
|
-
// features/, etc. is also covered. The
|
|
395
|
+
// features/, etc. is also covered. The chart-engine and Mantine-free charts/tokens
|
|
485
396
|
// boundaries used to live here too and need last-writer-wins EMIT_ORDER games against the
|
|
486
|
-
// narrower ./tokens/./charts overrides — they're now enforced by `basalt/
|
|
397
|
+
// narrower ./tokens/./charts overrides — they're now enforced by `basalt/chart-engine-boundary` and
|
|
487
398
|
// `basalt/token-layer-boundary` (plugin rules, immune to that class of clobbering) instead,
|
|
488
399
|
// so the bans left below (antd, framer-motion) are plain global bans with no narrower
|
|
489
400
|
// override to out-order.
|
|
@@ -41,7 +41,7 @@ export type DataTableStateProps = {
|
|
|
41
41
|
onColumnFiltersChange?: ((filters: ColumnFiltersState) => void) | undefined;
|
|
42
42
|
initialPagination?: PaginationState | undefined;
|
|
43
43
|
onPaginationChange?: ((pagination: PaginationState) => void) | undefined;
|
|
44
|
-
initialColumnPinning?: ColumnPinningState | undefined;
|
|
44
|
+
initialColumnPinning?: Partial<ColumnPinningState> | undefined;
|
|
45
45
|
rowSelection?: RowSelectionState | undefined;
|
|
46
46
|
onRowSelectionChange?: ((selection: RowSelectionState) => void) | undefined;
|
|
47
47
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table-state.d.ts","sourceRoot":"","sources":["../../src/table/data-table-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,OAAO,EACR,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EAAE,aAAa,IAAI,kBAAkB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAM3E,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAAa,CAAA;AAE5D;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,EAClC,IAAI,EACJ,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,SAAS,CAAC,EAAE,CAAA;IAClB,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;CAC1D,GAAG;IAAE,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,CA2BrE;AAuBD;oGACoG;AACpG,MAAM,MAAM,mBAAmB,GAAG;IAChC,cAAc,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;IACzC,eAAe,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAC/D,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,oBAAoB,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAC5D,qBAAqB,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAC3E,iBAAiB,CAAC,EAAE,eAAe,GAAG,SAAS,CAAA;IAC/C,kBAAkB,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IACxE,oBAAoB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAA;IAC9D,YAAY,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAA;IAC5C,oBAAoB,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,iBAAiB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;CAC5E,CAAA;AAED;;wCAEwC;AACxC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM;;yDAjCrD,IAAI;;wDAAJ,IAAI;;qEAAJ,IAAI;;+DAAJ,IAAI;;;;oCA4DtB,OAAO,CAAC,iBAAiB,CAAC;EAgCvC;AAED;;;0CAG0C;AAC1C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG;IACnD,OAAO,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;IACzC,KAAK,EAAE,OAAO,CAAA;CACf,CAcA;AAED;;2DAE2D;AAC3D,wBAAgB,eAAe,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,EAAE,GAAG,EAAE,CAAC;;;;;uBAOjE,kBAAkB,CAAC,WAAW,CAAC;cAUrD"}
|
|
@@ -67,9 +67,10 @@ function useDataTableState(props, defaultPageSize) {
|
|
|
67
67
|
props.initialPagination ?? { pageIndex: 0, pageSize: defaultPageSize },
|
|
68
68
|
props.onPaginationChange
|
|
69
69
|
);
|
|
70
|
-
const [columnPinning, setColumnPinning] = useState(
|
|
71
|
-
props.initialColumnPinning ??
|
|
72
|
-
|
|
70
|
+
const [columnPinning, setColumnPinning] = useState({
|
|
71
|
+
start: props.initialColumnPinning?.start ?? [],
|
|
72
|
+
end: props.initialColumnPinning?.end ?? []
|
|
73
|
+
});
|
|
73
74
|
const [internalRowSelection, setInternalRowSelection] = useState({});
|
|
74
75
|
const handleRowSelectionChange = useCallback(
|
|
75
76
|
(updater) => {
|
|
@@ -1,40 +1,10 @@
|
|
|
1
1
|
import type { MantineSpacing } from '@mantine/core';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ColumnFiltersState, PaginationState, RowData, RowSelectionState, SortingState } from '@tanstack/react-table';
|
|
3
3
|
import type { ReactNode } from 'react';
|
|
4
4
|
import type { BasaltProps, SlotStylesProps } from '../common/props.js';
|
|
5
5
|
import type { BarAction, SlotActions } from '../controls/actions.js';
|
|
6
6
|
import type { QueryStateLike } from '../dashboard/query-state.js';
|
|
7
|
-
|
|
8
|
-
export type DataTableAlign = 'left' | 'center' | 'right';
|
|
9
|
-
/**
|
|
10
|
-
* Alignment lives on the column def's `meta`, not on a parallel prop array, so it travels with the
|
|
11
|
-
* column it describes and survives reordering.
|
|
12
|
-
*
|
|
13
|
-
* Declared as a module augmentation of TanStack's own `ColumnMeta` so `meta: { aling: 'right' }` is
|
|
14
|
-
* a TYPE error (excess-property check on the object literal) rather than a silently ignored key —
|
|
15
|
-
* and a wrong VALUE (`'end'`, `'centre'`) throws at render. A misspelled alignment that quietly
|
|
16
|
-
* left-aligns a money column is the class of defect that looks correct in review.
|
|
17
|
-
*/
|
|
18
|
-
declare module '@tanstack/react-table' {
|
|
19
|
-
interface ColumnMeta<TData extends RowData, TValue> {
|
|
20
|
-
align?: DataTableAlign;
|
|
21
|
-
/**
|
|
22
|
-
* Opt OUT of the automatic mono-numeral cell style. The table applies it whenever the cell's
|
|
23
|
-
* raw value is a number — which is right for a plain figure and wrong for a numeric accessor
|
|
24
|
-
* whose `cell` renders its own chrome (a coloured `Text`, a `Badge`, a sparkline), because the
|
|
25
|
-
* `<td>`'s mono font then overrides what the cell asked for.
|
|
26
|
-
*/
|
|
27
|
-
numeral?: boolean;
|
|
28
|
-
/**
|
|
29
|
-
* Fold priority for the measured column fold (`docs/CONTROLS-SPEC.md` §2): once the
|
|
30
|
-
* table no longer fits its wrapper, the HIGHEST-numbered priority column folds first, moving
|
|
31
|
-
* into a per-row disclosure instead of forcing the table into horizontal scroll. Unset columns
|
|
32
|
-
* fall back to their declared position, so a bare `<BasaltDataTable data columns />` folds its
|
|
33
|
-
* LAST column first — nothing regresses with no `meta.priority` set anywhere. See `foldOrder`.
|
|
34
|
-
*/
|
|
35
|
-
priority?: number;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
7
|
+
import type { BasaltColumnDef } from './table-features.js';
|
|
38
8
|
/** A single selectable option inside a {@link DataTableFacet}'s `EnumFilter`/`MultiSelectFilter` pill. */
|
|
39
9
|
export type DataTableFacetOption = {
|
|
40
10
|
/** The raw filter value, compared against the column's stringified cell value. */
|
|
@@ -48,7 +18,7 @@ export type DataTableFacetOption = {
|
|
|
48
18
|
* synthetic/derived column id (no matching key on `T`) still type-checks. Defaults to `unknown` so
|
|
49
19
|
* a bare `DataTableFacet[]` / `DataTableColumnPinning` (no type argument) keeps working exactly as
|
|
50
20
|
* before. Shared by {@link DataTableFacet}'s `columnId` and {@link DataTableColumnPinning}'s
|
|
51
|
-
* `
|
|
21
|
+
* `start`/`end`.
|
|
52
22
|
*/
|
|
53
23
|
export type DataTableColumnId<T = unknown> = Extract<keyof T, string> | (string & {});
|
|
54
24
|
/**
|
|
@@ -74,13 +44,12 @@ export type DataTableFacet<T = unknown> = {
|
|
|
74
44
|
};
|
|
75
45
|
/**
|
|
76
46
|
* Column ids pinned to each edge — the same `T`-derived id union as {@link DataTableFacet}'s
|
|
77
|
-
* `columnId`, applied to
|
|
78
|
-
*
|
|
79
|
-
* cast is needed where this flows into `useState<ColumnPinningState>`.
|
|
47
|
+
* `columnId`, applied to the `{ start, end }` shape. Not itself a TanStack `ColumnPinningState`: both edges are
|
|
48
|
+
* optional here, and `useDataTableState` normalises a missing edge to `[]` before the table sees it.
|
|
80
49
|
*/
|
|
81
50
|
export type DataTableColumnPinning<T = unknown> = {
|
|
82
|
-
|
|
83
|
-
|
|
51
|
+
start?: DataTableColumnId<T>[];
|
|
52
|
+
end?: DataTableColumnId<T>[];
|
|
84
53
|
};
|
|
85
54
|
/**
|
|
86
55
|
* The four boxes `BasaltDataTable` paints: `root` is the outer fragment's replacement wrapper,
|
|
@@ -102,11 +71,12 @@ export type BasaltDataTableSlot = 'root' | 'toolbar' | 'table' | 'footer';
|
|
|
102
71
|
* emptyState: <Text c="dimmed">No results found.</Text>,
|
|
103
72
|
* }
|
|
104
73
|
*/
|
|
105
|
-
export type BasaltDataTableProps<T> = BasaltProps & SlotStylesProps<BasaltDataTableSlot> & {
|
|
74
|
+
export type BasaltDataTableProps<T extends RowData> = BasaltProps & SlotStylesProps<BasaltDataTableSlot> & {
|
|
106
75
|
/**
|
|
107
|
-
* Optional heading rendered above the toolbar via `WidgetHeader tier="widget"`.
|
|
108
|
-
*
|
|
109
|
-
* (post-filter/-pagination) rather
|
|
76
|
+
* Optional heading rendered above the toolbar via `WidgetHeader tier="widget"`. The count tag
|
|
77
|
+
* beside it is automatic, not a prop (there is no `count`): it reads `table.getRowCount()` (C11)
|
|
78
|
+
* — never a raw `data.length` — so it tracks the row model (post-filter/-pagination) rather
|
|
79
|
+
* than the unfiltered input.
|
|
110
80
|
*/
|
|
111
81
|
title?: string;
|
|
112
82
|
/** Optional leading icon, forwarded to `WidgetHeader`. */
|
|
@@ -116,10 +86,10 @@ export type BasaltDataTableProps<T> = BasaltProps & SlotStylesProps<BasaltDataTa
|
|
|
116
86
|
/** Row data array. */
|
|
117
87
|
data: T[];
|
|
118
88
|
/**
|
|
119
|
-
* Column definitions. Use `createColumnHelper<T>()` from
|
|
89
|
+
* Column definitions. Use `createColumnHelper<T>()` from `basalt-ui/table`
|
|
120
90
|
* for a typed accessor builder — `col.accessor('field', …)` columns sort by value.
|
|
121
91
|
*/
|
|
122
|
-
columns:
|
|
92
|
+
columns: BasaltColumnDef<T>[];
|
|
123
93
|
/**
|
|
124
94
|
* Enable column sorting via clickable headers. Client-side — the rows in `data` are what get
|
|
125
95
|
* reordered.
|
|
@@ -402,15 +372,15 @@ export type BasaltDataTableProps<T> = BasaltProps & SlotStylesProps<BasaltDataTa
|
|
|
402
372
|
/** Total page count, when known. Only consulted under `manualPagination`; omit to derive it from `rowCount`/`pageSize`. */
|
|
403
373
|
pageCount?: number;
|
|
404
374
|
/**
|
|
405
|
-
* Enables sticky
|
|
375
|
+
* Enables sticky start/end column pinning — pinned columns stick to the edge with a panel
|
|
406
376
|
* background and a hairline shadow separator while the table scrolls horizontally. Pin columns
|
|
407
|
-
* via `initialColumnPinning` (`{
|
|
377
|
+
* via `initialColumnPinning` (`{ start: string[], end: string[] }`).
|
|
408
378
|
* @default false
|
|
409
379
|
* @example
|
|
410
|
-
* <BasaltDataTable data={rows} columns={columns} enablePinning initialColumnPinning={{
|
|
380
|
+
* <BasaltDataTable data={rows} columns={columns} enablePinning initialColumnPinning={{ start: ['name'] }} />
|
|
411
381
|
*/
|
|
412
382
|
enablePinning?: boolean;
|
|
413
|
-
/** Initial column-pinning state — which column ids stick to the
|
|
383
|
+
/** Initial column-pinning state — which column ids stick to the start/end edge. */
|
|
414
384
|
initialColumnPinning?: DataTableColumnPinning<T>;
|
|
415
385
|
/**
|
|
416
386
|
* Caps the scrolling body (px number or CSS length) so a long table cannot blow a card out
|
|
@@ -500,11 +470,20 @@ export type BasaltDataTableProps<T> = BasaltProps & SlotStylesProps<BasaltDataTa
|
|
|
500
470
|
* width, once anything is folded — fit `room`. A candidate with no measured width yet (never
|
|
501
471
|
* rendered) is skipped rather than folded blind, since folding it would remove the one place its
|
|
502
472
|
* width could ever be read from.
|
|
473
|
+
*
|
|
474
|
+
* Every width is a rounded integer (`offsetWidth`, `clientWidth`), and a table that fills its
|
|
475
|
+
* wrapper stretches its columns to sum to `room` exactly — so the rounded sum lands up to half a
|
|
476
|
+
* pixel per column over it, and a table that fits folded a column on hydration (a server-painted
|
|
477
|
+
* table whose cells then moved). The fit check forgives that rounding and nothing more: half a
|
|
478
|
+
* pixel for each measured width (the foldable columns AND `fixedCount`, the pinned / non-hiding
|
|
479
|
+
* ones `overhead` sums), plus half a pixel for `room`'s own rounding (the `+ 1` in the slack).
|
|
503
480
|
*/
|
|
504
481
|
export declare function planColumnFold(input: {
|
|
505
482
|
room: number;
|
|
506
483
|
toggleWidth: number;
|
|
507
484
|
overhead: number;
|
|
485
|
+
/** How many columns `overhead` sums, for the rounding slack. */
|
|
486
|
+
fixedCount?: number;
|
|
508
487
|
order: readonly string[];
|
|
509
488
|
widths: ReadonlyMap<string, number>;
|
|
510
489
|
}): ReadonlySet<string>;
|
|
@@ -533,5 +512,5 @@ export declare function planColumnFold(input: {
|
|
|
533
512
|
* emptyState={<Text c="dimmed">No users found.</Text>}
|
|
534
513
|
* />
|
|
535
514
|
*/
|
|
536
|
-
export declare function BasaltDataTable<T>(props: BasaltDataTableProps<T>): import("react").JSX.Element;
|
|
515
|
+
export declare function BasaltDataTable<T extends RowData>(props: BasaltDataTableProps<T>): import("react").JSX.Element;
|
|
537
516
|
//# sourceMappingURL=data-table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../src/table/data-table.tsx"],"names":[],"mappings":"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"}
|