banhaten 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +139 -73
- package/CONTRIBUTING.md +46 -44
- package/README.md +192 -190
- package/SECURITY.md +15 -15
- package/banhaten.config.example.json +11 -11
- package/docs/design-spacing.md +13 -0
- package/docs/design-system/README.md +22 -20
- package/docs/design-system/adoption-quality-remediation.md +87 -87
- package/docs/design-system/agent-usage.md +13 -13
- package/docs/design-system/appearance-presets.md +189 -189
- package/docs/design-system/appearances/default.md +94 -94
- package/docs/design-system/appearances/rounded.md +95 -95
- package/docs/design-system/appearances/sharp.md +95 -95
- package/docs/design-system/component-docs-pattern.md +81 -81
- package/docs/design-system/component-implementation-ownership-audit.md +245 -244
- package/docs/design-system/component-quality-audit-2026-08-20.md +225 -223
- package/docs/design-system/component-showcase-consistency-report.md +219 -219
- package/docs/design-system/component-token-consistency-audit.md +173 -173
- package/docs/design-system/components/README.md +90 -76
- package/docs/design-system/components/accordion.md +53 -53
- package/docs/design-system/components/activity-feed.md +94 -94
- package/docs/design-system/components/activity-heatmap.md +57 -57
- package/docs/design-system/components/agent-input.md +85 -0
- package/docs/design-system/components/alert-dialog.md +72 -72
- package/docs/design-system/components/alert.md +98 -98
- package/docs/design-system/components/approval-card.md +134 -0
- package/docs/design-system/components/aspect-ratio.md +45 -45
- package/docs/design-system/components/attribute.md +89 -89
- package/docs/design-system/components/autocomplete.md +75 -75
- package/docs/design-system/components/avatar.md +54 -54
- package/docs/design-system/components/badge.md +54 -54
- package/docs/design-system/components/banner.md +87 -87
- package/docs/design-system/components/breadcrumbs.md +177 -176
- package/docs/design-system/components/button-group.md +98 -98
- package/docs/design-system/components/button.md +83 -80
- package/docs/design-system/components/card.md +88 -88
- package/docs/design-system/components/carousel.md +46 -46
- package/docs/design-system/components/catalog-components.md +47 -47
- package/docs/design-system/components/chart.md +95 -24
- package/docs/design-system/components/checkbox.md +54 -54
- package/docs/design-system/components/collapsible.md +67 -53
- package/docs/design-system/components/command.md +62 -62
- package/docs/design-system/components/context-menu.md +46 -46
- package/docs/design-system/components/date-picker.md +81 -79
- package/docs/design-system/components/divider.md +102 -102
- package/docs/design-system/components/empty-state.md +56 -56
- package/docs/design-system/components/field.md +70 -70
- package/docs/design-system/components/file-upload.md +187 -187
- package/docs/design-system/components/hover-card.md +48 -48
- package/docs/design-system/components/icons.md +48 -48
- package/docs/design-system/components/inline-citations.md +93 -0
- package/docs/design-system/components/input-group.md +58 -58
- package/docs/design-system/components/input-otp.md +56 -56
- package/docs/design-system/components/input.md +117 -61
- package/docs/design-system/components/item.md +59 -57
- package/docs/design-system/components/kbd.md +54 -49
- package/docs/design-system/components/label.md +49 -49
- package/docs/design-system/components/menu.md +71 -61
- package/docs/design-system/components/menubar.md +47 -47
- package/docs/design-system/components/modal.md +105 -105
- package/docs/design-system/components/native-select.md +54 -54
- package/docs/design-system/components/navigation-menu.md +50 -50
- package/docs/design-system/components/onboarding-step-list-item.md +82 -82
- package/docs/design-system/components/page-header.md +93 -86
- package/docs/design-system/components/pagination.md +57 -57
- package/docs/design-system/components/popover.md +60 -60
- package/docs/design-system/components/progress-slider.md +50 -50
- package/docs/design-system/components/progress.md +76 -76
- package/docs/design-system/components/radio-card.md +51 -51
- package/docs/design-system/components/radio-group.md +57 -57
- package/docs/design-system/components/resizable.md +44 -44
- package/docs/design-system/components/rolling-count.md +61 -0
- package/docs/design-system/components/scroll-area.md +51 -51
- package/docs/design-system/components/segmented-control.md +54 -54
- package/docs/design-system/components/select.md +68 -62
- package/docs/design-system/components/sheet.md +67 -67
- package/docs/design-system/components/shimmer-text.md +67 -0
- package/docs/design-system/components/sidebar.md +127 -76
- package/docs/design-system/components/skeleton.md +75 -75
- package/docs/design-system/components/slideout.md +65 -65
- package/docs/design-system/components/slider.md +63 -63
- package/docs/design-system/components/social-button.md +50 -50
- package/docs/design-system/components/spinner.md +62 -62
- package/docs/design-system/components/steps.md +65 -65
- package/docs/design-system/components/streaming-text.md +82 -0
- package/docs/design-system/components/table.md +419 -414
- package/docs/design-system/components/tabs.md +59 -55
- package/docs/design-system/components/tag.md +80 -80
- package/docs/design-system/components/task-list.md +95 -0
- package/docs/design-system/components/textarea.md +50 -50
- package/docs/design-system/components/thinking-reasoning.md +72 -0
- package/docs/design-system/components/thinking-state.md +67 -0
- package/docs/design-system/components/timeline.md +83 -83
- package/docs/design-system/components/toast.md +58 -58
- package/docs/design-system/components/toggle.md +81 -81
- package/docs/design-system/components/toolbar.md +92 -87
- package/docs/design-system/components/tooltip.md +94 -92
- package/docs/design-system/components/typography.md +18 -18
- package/docs/design-system/density-and-elevation.md +65 -61
- package/docs/design-system/design-system-test-missing-items.md +368 -368
- package/docs/design-system/direction-and-localization.md +23 -23
- package/docs/design-system/form-recipes.md +73 -73
- package/docs/design-system/gap-promotion-policy.md +21 -21
- package/docs/design-system/icons.md +74 -69
- package/docs/design-system/installation.md +70 -68
- package/docs/design-system/launch-comparison-shadcn.md +98 -98
- package/docs/design-system/registry-and-cli.md +64 -64
- package/docs/design-system/release-policy.md +30 -30
- package/docs/design-system/roadmap.md +14 -14
- package/docs/design-system/support-matrix.md +23 -23
- package/docs/design-system/tabs.md +54 -53
- package/docs/design-system/template-gap-audit.md +32 -0
- package/docs/design-system/templates.md +59 -0
- package/docs/design-system/token-governance.md +72 -60
- package/package.json +98 -98
- package/registry/component-contract.json +40 -40
- package/registry/components/accordion.tsx +155 -155
- package/registry/components/agent-input-parts.tsx +552 -0
- package/registry/components/agent-input-state.ts +156 -0
- package/registry/components/agent-input.css +307 -0
- package/registry/components/agent-input.tsx +382 -0
- package/registry/components/alert-dialog.tsx +297 -297
- package/registry/components/alert.tsx +293 -293
- package/registry/components/approval-card.css +409 -0
- package/registry/components/approval-card.tsx +401 -0
- package/registry/components/approval-frame.tsx +108 -0
- package/registry/components/approval-questions.tsx +559 -0
- package/registry/components/aspect-ratio.tsx +30 -30
- package/registry/components/attribute.tsx +454 -448
- package/registry/components/autocomplete.tsx +598 -651
- package/registry/components/avatar.tsx +385 -381
- package/registry/components/badge.tsx +629 -629
- package/registry/components/button-group.tsx +565 -565
- package/registry/components/button.tsx +127 -123
- package/registry/components/card.tsx +638 -638
- package/registry/components/carousel.tsx +296 -296
- package/registry/components/chart-block-data.ts +177 -0
- package/registry/components/chart-block.css +171 -0
- package/registry/components/chart-block.tsx +260 -0
- package/registry/components/chart-interactions.ts +123 -0
- package/registry/components/chart-options.cartesian.ts +162 -0
- package/registry/components/chart-options.paint.ts +99 -0
- package/registry/components/chart-options.parts.ts +72 -0
- package/registry/components/chart-options.radial.ts +109 -0
- package/registry/components/chart-options.ts +44 -0
- package/registry/components/chart-options.types.ts +67 -0
- package/registry/components/chart.tsx +203 -203
- package/registry/components/checkbox.tsx +247 -247
- package/registry/components/collapsible.tsx +109 -69
- package/registry/components/command.tsx +208 -208
- package/registry/components/context-menu.tsx +236 -236
- package/registry/components/data-chart.tsx +40 -0
- package/registry/components/date-picker.tsx +1289 -1277
- package/registry/components/echart-theme.ts +246 -0
- package/registry/components/echart.css +49 -0
- package/registry/components/echart.tsx +178 -0
- package/registry/components/expanded/ActivityFeed.tsx +227 -227
- package/registry/components/expanded/ActivityHeatmap.tsx +64 -64
- package/registry/components/expanded/Banner.tsx +179 -179
- package/registry/components/expanded/Breadcrumbs.tsx +131 -131
- package/registry/components/expanded/CatalogComponentsShowcase.tsx +205 -205
- package/registry/components/expanded/CatalogDivider.tsx +49 -49
- package/registry/components/expanded/EmptyState.tsx +155 -155
- package/registry/components/expanded/FileUpload.tsx +543 -543
- package/registry/components/expanded/OnboardingStepListItem.tsx +60 -59
- package/registry/components/expanded/PageHeader.tsx +179 -166
- package/registry/components/expanded/Slideout.tsx +108 -108
- package/registry/components/expanded/Steps.tsx +402 -402
- package/registry/components/expanded/Table.tsx +1092 -1071
- package/registry/components/expanded/Timeline.tsx +203 -203
- package/registry/components/expanded/activityFeed.css +248 -248
- package/registry/components/expanded/activityHeatmap.css +66 -66
- package/registry/components/expanded/banner.css +260 -255
- package/registry/components/expanded/breadcrumbs.css +140 -140
- package/registry/components/expanded/catalogComponentsShowcase.css +87 -87
- package/registry/components/expanded/divider.css +75 -75
- package/registry/components/expanded/emptyState.css +111 -111
- package/registry/components/expanded/fileUpload.css +457 -457
- package/registry/components/expanded/onboardingStepListItem.css +135 -126
- package/registry/components/expanded/pageHeader.css +248 -290
- package/registry/components/expanded/slideout.css +276 -276
- package/registry/components/expanded/steps.css +356 -356
- package/registry/components/expanded/table.css +606 -603
- package/registry/components/expanded/timeline.css +286 -286
- package/registry/components/field.tsx +283 -283
- package/registry/components/hover-card.tsx +48 -48
- package/registry/components/inline-citations.css +126 -0
- package/registry/components/inline-citations.tsx +292 -0
- package/registry/components/input-content.ts +107 -107
- package/registry/components/input-group.tsx +130 -130
- package/registry/components/input-otp.tsx +584 -584
- package/registry/components/input.tsx +990 -972
- package/registry/components/item.tsx +189 -189
- package/registry/components/kbd.tsx +246 -151
- package/registry/components/label.tsx +78 -78
- package/registry/components/menu.tsx +978 -986
- package/registry/components/menubar.tsx +226 -226
- package/registry/components/modal.tsx +872 -872
- package/registry/components/native-select.tsx +205 -205
- package/registry/components/navigation-menu.tsx +171 -171
- package/registry/components/pagination.css +36 -36
- package/registry/components/pagination.tsx +560 -555
- package/registry/components/popover.tsx +338 -338
- package/registry/components/progress-slider.tsx +216 -216
- package/registry/components/radio-card.tsx +676 -677
- package/registry/components/radio-group.tsx +570 -570
- package/registry/components/resizable.tsx +108 -108
- package/registry/components/rolling-count.css +37 -0
- package/registry/components/rolling-count.tsx +110 -0
- package/registry/components/scroll-area.tsx +91 -91
- package/registry/components/segmented-control.tsx +87 -87
- package/registry/components/select-content.tsx +218 -218
- package/registry/components/select.tsx +937 -932
- package/registry/components/sheet.tsx +305 -305
- package/registry/components/shimmer-text.css +69 -0
- package/registry/components/shimmer-text.tsx +43 -0
- package/registry/components/sidebar.tsx +1433 -358
- package/registry/components/skeleton.css +54 -54
- package/registry/components/skeleton.tsx +482 -482
- package/registry/components/slider.tsx +380 -380
- package/registry/components/social-button.tsx +387 -387
- package/registry/components/spinner.tsx +78 -78
- package/registry/components/streaming-text.css +45 -0
- package/registry/components/streaming-text.tsx +165 -0
- package/registry/components/table-elements.tsx +128 -128
- package/registry/components/tabs.css +222 -218
- package/registry/components/tabs.tsx +241 -241
- package/registry/components/tag.tsx +423 -423
- package/registry/components/task-list.css +328 -0
- package/registry/components/task-list.tsx +429 -0
- package/registry/components/textarea.tsx +610 -610
- package/registry/components/thinking-reasoning.css +178 -0
- package/registry/components/thinking-reasoning.tsx +253 -0
- package/registry/components/thinking-state.css +8 -0
- package/registry/components/thinking-state.tsx +46 -0
- package/registry/components/toast.tsx +136 -136
- package/registry/components/toggle.tsx +256 -256
- package/registry/components/toolbar.tsx +539 -539
- package/registry/components/tooltip.tsx +433 -431
- package/registry/examples/agent-input-demo.tsx +90 -0
- package/registry/examples/alert-demo.tsx +34 -34
- package/registry/examples/alert-dialog-demo.tsx +42 -42
- package/registry/examples/approval-card-demo.tsx +83 -0
- package/registry/examples/aspect-ratio-demo.tsx +11 -11
- package/registry/examples/attribute-demo.tsx +65 -65
- package/registry/examples/autocomplete-demo.tsx +109 -109
- package/registry/examples/avatar-demo.tsx +132 -132
- package/registry/examples/badge-demo.tsx +69 -69
- package/registry/examples/button-demo.tsx +86 -83
- package/registry/examples/button-group-demo.tsx +63 -63
- package/registry/examples/card-demo.tsx +86 -86
- package/registry/examples/carousel-demo.tsx +43 -43
- package/registry/examples/chart-block-demo.tsx +5 -0
- package/registry/examples/chart-demo.tsx +18 -33
- package/registry/examples/checkbox-demo.tsx +62 -62
- package/registry/examples/collapsible-demo.tsx +16 -16
- package/registry/examples/collection-filter-bar-demo.tsx +135 -135
- package/registry/examples/command-demo.tsx +42 -42
- package/registry/examples/command-palette-demo.tsx +235 -236
- package/registry/examples/context-menu-demo.tsx +29 -29
- package/registry/examples/control-density-contract-demo.tsx +65 -61
- package/registry/examples/date-picker-demo.tsx +127 -127
- package/registry/examples/divider-demo.tsx +17 -17
- package/registry/examples/expanded/activity-heatmap-demo.tsx +29 -29
- package/registry/examples/expanded/banner-demo.tsx +48 -48
- package/registry/examples/expanded/breadcrumbs-demo.tsx +59 -59
- package/registry/examples/expanded/empty-state-demo.tsx +39 -39
- package/registry/examples/expanded/file-upload-demo.tsx +60 -60
- package/registry/examples/expanded/onboarding-step-demo.tsx +11 -11
- package/registry/examples/expanded/slideout-demo.tsx +15 -15
- package/registry/examples/expanded/steps-demo.tsx +29 -29
- package/registry/examples/expanded/tabs-demo.tsx +13 -13
- package/registry/examples/expanded/timeline-demo.tsx +18 -18
- package/registry/examples/field-demo.tsx +51 -51
- package/registry/examples/hover-card-demo.tsx +23 -23
- package/registry/examples/inline-citations-demo.tsx +31 -0
- package/registry/examples/input-actions-demo.tsx +36 -0
- package/registry/examples/input-demo.tsx +87 -87
- package/registry/examples/input-group-demo.tsx +16 -16
- package/registry/examples/input-otp-demo.tsx +72 -72
- package/registry/examples/item-demo.tsx +46 -46
- package/registry/examples/kbd-demo.tsx +12 -11
- package/registry/examples/label-demo.tsx +20 -20
- package/registry/examples/menu-demo.tsx +122 -122
- package/registry/examples/menubar-demo.tsx +34 -34
- package/registry/examples/modal-demo.tsx +74 -74
- package/registry/examples/native-select-demo.tsx +16 -16
- package/registry/examples/navigation-menu-demo.tsx +29 -29
- package/registry/examples/pagination-demo.tsx +20 -20
- package/registry/examples/popover-demo.tsx +547 -546
- package/registry/examples/progress-demo.tsx +37 -37
- package/registry/examples/progress-slider-demo.tsx +29 -29
- package/registry/examples/radio-card-demo.tsx +51 -51
- package/registry/examples/radio-group-demo.tsx +62 -62
- package/registry/examples/resizable-demo.tsx +22 -22
- package/registry/examples/results-toolbar-demo.tsx +44 -44
- package/registry/examples/rolling-count-demo.tsx +39 -0
- package/registry/examples/scroll-area-demo.tsx +15 -15
- package/registry/examples/segmented-control-demo.tsx +39 -39
- package/registry/examples/select-demo.tsx +87 -87
- package/registry/examples/sheet-demo.tsx +47 -47
- package/registry/examples/shimmer-text-demo.tsx +20 -0
- package/registry/examples/sidebar-demo.tsx +101 -57
- package/registry/examples/slider-demo.tsx +31 -31
- package/registry/examples/social-button-demo.tsx +61 -61
- package/registry/examples/spinner-demo.tsx +59 -59
- package/registry/examples/streaming-text-demo.tsx +28 -0
- package/registry/examples/tabs-demo.tsx +13 -13
- package/registry/examples/tag-demo.tsx +29 -29
- package/registry/examples/task-list-demo.tsx +74 -0
- package/registry/examples/textarea-demo.tsx +79 -79
- package/registry/examples/thinking-reasoning-demo.tsx +74 -0
- package/registry/examples/thinking-state-demo.tsx +13 -0
- package/registry/examples/toast-demo.tsx +35 -35
- package/registry/examples/toggle-demo.tsx +59 -59
- package/registry/examples/tooltip-demo.tsx +115 -115
- package/registry/guidance/USAGE.md +27 -27
- package/registry/guidance/charts.LICENSE.txt +24 -0
- package/registry/hooks/use-controllable-state.ts +33 -0
- package/registry/hooks/use-direction.ts +207 -207
- package/registry/hooks/use-listbox-navigation.ts +73 -0
- package/registry/hooks/use-motion-end.ts +55 -0
- package/registry/hooks/use-reduced-motion.ts +28 -0
- package/registry/index.json +1634 -184
- package/registry/styles/globals.css +1462 -1570
- package/registry.json +364 -10
- package/schema/config.schema.json +51 -51
- package/schema/registry.schema.json +194 -190
- package/schema/tokens.schema.json +167 -163
- package/src/cli/command-line.js +194 -194
- package/src/cli/config-editors.js +9 -9
- package/src/cli/doctor.js +399 -399
- package/src/cli/file-transaction.js +302 -295
- package/src/cli/global-css.js +153 -153
- package/src/cli/index.js +1002 -1009
- package/src/cli/install-plan.js +592 -592
- package/src/cli/install-receipt.js +171 -171
- package/src/cli/jsonc.js +203 -203
- package/src/cli/package-install-state.js +254 -254
- package/src/cli/package-manager.js +238 -238
- package/src/cli/package-plan.js +185 -185
- package/src/cli/package-version.js +97 -97
- package/src/cli/registry-query.js +207 -207
- package/src/cli/reporting.js +55 -55
- package/src/cli/schema-validation.js +19 -19
- package/src/cli/source-scanner.js +686 -686
- package/src/cli/vite-config.js +478 -478
- package/tokens/banhaten.tokens.json +458 -224
package/registry.json
CHANGED
|
@@ -27,6 +27,26 @@
|
|
|
27
27
|
"type": "registry:hook",
|
|
28
28
|
"target": "@hooks/use-direction.ts"
|
|
29
29
|
},
|
|
30
|
+
{
|
|
31
|
+
"path": "registry/hooks/use-controllable-state.ts",
|
|
32
|
+
"type": "registry:hook",
|
|
33
|
+
"target": "@hooks/use-controllable-state.ts"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"path": "registry/hooks/use-listbox-navigation.ts",
|
|
37
|
+
"type": "registry:hook",
|
|
38
|
+
"target": "@hooks/use-listbox-navigation.ts"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"path": "registry/hooks/use-motion-end.ts",
|
|
42
|
+
"type": "registry:hook",
|
|
43
|
+
"target": "@hooks/use-motion-end.ts"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"path": "registry/hooks/use-reduced-motion.ts",
|
|
47
|
+
"type": "registry:hook",
|
|
48
|
+
"target": "@hooks/use-reduced-motion.ts"
|
|
49
|
+
},
|
|
30
50
|
{
|
|
31
51
|
"path": "registry/guidance/USAGE.md",
|
|
32
52
|
"type": "registry:file",
|
|
@@ -224,19 +244,98 @@
|
|
|
224
244
|
"name": "chart",
|
|
225
245
|
"type": "registry:component",
|
|
226
246
|
"title": "Chart",
|
|
227
|
-
"description": "
|
|
247
|
+
"description": "Eight token-driven ECharts families and 18 ready-made chart blocks, with responsive SVG rendering, theme-aware typography, tooltips, legends, brushes, and compatible Recharts wrappers.",
|
|
228
248
|
"author": "Ahmad Galal",
|
|
229
249
|
"registryDependencies": [
|
|
230
|
-
"base"
|
|
250
|
+
"base",
|
|
251
|
+
"button",
|
|
252
|
+
"progress"
|
|
231
253
|
],
|
|
232
254
|
"dependencies": [
|
|
233
|
-
"recharts@^3.9.2"
|
|
255
|
+
"recharts@^3.9.2",
|
|
256
|
+
"echarts@^6.1.0",
|
|
257
|
+
"lucide-react@^1.17.0"
|
|
234
258
|
],
|
|
235
259
|
"files": [
|
|
236
260
|
{
|
|
237
261
|
"path": "registry/components/chart.tsx",
|
|
238
262
|
"type": "registry:component",
|
|
239
263
|
"target": "@ui/chart.tsx"
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"path": "registry/guidance/charts.LICENSE.txt",
|
|
267
|
+
"type": "registry:file",
|
|
268
|
+
"target": "@ui/charts.LICENSE.txt"
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"path": "registry/components/chart-block-data.ts",
|
|
272
|
+
"type": "registry:component",
|
|
273
|
+
"target": "@ui/chart-block-data.ts"
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
"path": "registry/components/chart-block.css",
|
|
277
|
+
"type": "registry:style",
|
|
278
|
+
"target": "@ui/chart-block.css"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"path": "registry/components/chart-block.tsx",
|
|
282
|
+
"type": "registry:component",
|
|
283
|
+
"target": "@ui/chart-block.tsx"
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
"path": "registry/components/chart-interactions.ts",
|
|
287
|
+
"type": "registry:component",
|
|
288
|
+
"target": "@ui/chart-interactions.ts"
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
"path": "registry/components/chart-options.cartesian.ts",
|
|
292
|
+
"type": "registry:component",
|
|
293
|
+
"target": "@ui/chart-options.cartesian.ts"
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
"path": "registry/components/chart-options.paint.ts",
|
|
297
|
+
"type": "registry:component",
|
|
298
|
+
"target": "@ui/chart-options.paint.ts"
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"path": "registry/components/chart-options.parts.ts",
|
|
302
|
+
"type": "registry:component",
|
|
303
|
+
"target": "@ui/chart-options.parts.ts"
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
"path": "registry/components/chart-options.radial.ts",
|
|
307
|
+
"type": "registry:component",
|
|
308
|
+
"target": "@ui/chart-options.radial.ts"
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"path": "registry/components/chart-options.ts",
|
|
312
|
+
"type": "registry:component",
|
|
313
|
+
"target": "@ui/chart-options.ts"
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
"path": "registry/components/chart-options.types.ts",
|
|
317
|
+
"type": "registry:component",
|
|
318
|
+
"target": "@ui/chart-options.types.ts"
|
|
319
|
+
},
|
|
320
|
+
{
|
|
321
|
+
"path": "registry/components/data-chart.tsx",
|
|
322
|
+
"type": "registry:component",
|
|
323
|
+
"target": "@ui/data-chart.tsx"
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
"path": "registry/components/echart-theme.ts",
|
|
327
|
+
"type": "registry:component",
|
|
328
|
+
"target": "@ui/echart-theme.ts"
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
"path": "registry/components/echart.css",
|
|
332
|
+
"type": "registry:style",
|
|
333
|
+
"target": "@ui/echart.css"
|
|
334
|
+
},
|
|
335
|
+
{
|
|
336
|
+
"path": "registry/components/echart.tsx",
|
|
337
|
+
"type": "registry:component",
|
|
338
|
+
"target": "@ui/echart.tsx"
|
|
240
339
|
}
|
|
241
340
|
]
|
|
242
341
|
},
|
|
@@ -548,7 +647,7 @@
|
|
|
548
647
|
"name": "collapsible",
|
|
549
648
|
"type": "registry:component",
|
|
550
649
|
"title": "Collapsible",
|
|
551
|
-
"description": "Radix Collapsible wrapper for disclosure sections with tokenized trigger, icon rotation, and
|
|
650
|
+
"description": "Radix Collapsible wrapper for disclosure sections with tokenized trigger, icon rotation, content slots, and an unstyled animated panel.",
|
|
552
651
|
"author": "Ahmad Galal",
|
|
553
652
|
"registryDependencies": [
|
|
554
653
|
"base"
|
|
@@ -656,7 +755,7 @@
|
|
|
656
755
|
"name": "toolbar",
|
|
657
756
|
"type": "registry:component",
|
|
658
757
|
"title": "Toolbar",
|
|
659
|
-
"description": "Figma Filter Toolbar primitive with eight filter/action styles, search fields, select triggers, icon actions, chips, selected-count badges, desktop/mobile wrapping, and RTL-safe composition.",
|
|
758
|
+
"description": "Figma Filter Toolbar layout primitive with native Tab-order group semantics, eight filter/action styles, search fields, select triggers, icon actions, chips, selected-count badges, desktop/mobile wrapping, and RTL-safe composition.",
|
|
660
759
|
"author": "Ahmad Galal",
|
|
661
760
|
"registryDependencies": [
|
|
662
761
|
"base",
|
|
@@ -701,7 +800,7 @@
|
|
|
701
800
|
"name": "input",
|
|
702
801
|
"type": "registry:component",
|
|
703
802
|
"title": "Input",
|
|
704
|
-
"description": "Tokenized input field with semantic control density, labels, helper and error text,
|
|
803
|
+
"description": "Tokenized input field with native quantity stepping, action-button contracts, semantic control density, labels, helper and error text, icons, shortcuts, add-ons, tags, default and soft styles, and RTL states.",
|
|
705
804
|
"author": "Ahmad Galal",
|
|
706
805
|
"registryDependencies": [
|
|
707
806
|
"base",
|
|
@@ -771,7 +870,7 @@
|
|
|
771
870
|
"name": "kbd",
|
|
772
871
|
"type": "registry:component",
|
|
773
872
|
"title": "Kbd",
|
|
774
|
-
"description": "Keyboard key and platform-aware shortcut primitives
|
|
873
|
+
"description": "Keyboard key and platform-aware shortcut primitives: physical keycaps, separated chords, and compact combined hints for inputs and command rows.",
|
|
775
874
|
"author": "Ahmad Galal",
|
|
776
875
|
"registryDependencies": [
|
|
777
876
|
"base"
|
|
@@ -925,10 +1024,11 @@
|
|
|
925
1024
|
"name": "sidebar",
|
|
926
1025
|
"type": "registry:component",
|
|
927
1026
|
"title": "Sidebar",
|
|
928
|
-
"description": "
|
|
1027
|
+
"description": "Figma-aligned application sidebar with a tokenized 900px minimum height, staged motion between 280px expanded and 48px collapsed shells, brand and workspace headers, search and actions, default/avatar/nested/tree menu variants, badges, group actions, user footers with hover identity previews, controlled state, tooltips, logical placement, and RTL mirroring.",
|
|
929
1028
|
"author": "Ahmad Galal",
|
|
930
1029
|
"registryDependencies": [
|
|
931
|
-
"base"
|
|
1030
|
+
"base",
|
|
1031
|
+
"tooltip"
|
|
932
1032
|
],
|
|
933
1033
|
"dependencies": [
|
|
934
1034
|
"@radix-ui/react-slot@^1.2.3",
|
|
@@ -1489,7 +1589,7 @@
|
|
|
1489
1589
|
"name": "page-header",
|
|
1490
1590
|
"type": "registry:block",
|
|
1491
1591
|
"title": "Page Header",
|
|
1492
|
-
"description": "Expanded page header composition with breadcrumbs, metadata, description copy, action groups, responsive layout, and
|
|
1592
|
+
"description": "Expanded page header composition with breadcrumbs, metadata, description copy, action groups, responsive layout, and content-safe scrollable local tabs.",
|
|
1493
1593
|
"author": "Ahmad Galal",
|
|
1494
1594
|
"registryDependencies": [
|
|
1495
1595
|
"base",
|
|
@@ -1614,6 +1714,260 @@
|
|
|
1614
1714
|
"target": "@ui/expanded/Timeline.tsx"
|
|
1615
1715
|
}
|
|
1616
1716
|
]
|
|
1717
|
+
},
|
|
1718
|
+
{
|
|
1719
|
+
"name": "shimmer-text",
|
|
1720
|
+
"type": "registry:component",
|
|
1721
|
+
"title": "Shimmer Text",
|
|
1722
|
+
"description": "Text with a soft brightness valley sweeping through it in reading direction, for labels of work in progress such as syncing, reading, or thinking.",
|
|
1723
|
+
"author": "Ahmad Galal",
|
|
1724
|
+
"registryDependencies": [
|
|
1725
|
+
"base"
|
|
1726
|
+
],
|
|
1727
|
+
"dependencies": [],
|
|
1728
|
+
"files": [
|
|
1729
|
+
{
|
|
1730
|
+
"path": "registry/components/shimmer-text.css",
|
|
1731
|
+
"type": "registry:style",
|
|
1732
|
+
"target": "@ui/shimmer-text.css"
|
|
1733
|
+
},
|
|
1734
|
+
{
|
|
1735
|
+
"path": "registry/components/shimmer-text.tsx",
|
|
1736
|
+
"type": "registry:component",
|
|
1737
|
+
"target": "@ui/shimmer-text.tsx"
|
|
1738
|
+
}
|
|
1739
|
+
]
|
|
1740
|
+
},
|
|
1741
|
+
{
|
|
1742
|
+
"name": "thinking-state",
|
|
1743
|
+
"type": "registry:component",
|
|
1744
|
+
"title": "Thinking State",
|
|
1745
|
+
"description": "Minimal shimmering status label that signals an agent is working before its first token arrives.",
|
|
1746
|
+
"author": "Ahmad Galal",
|
|
1747
|
+
"registryDependencies": [
|
|
1748
|
+
"base",
|
|
1749
|
+
"shimmer-text"
|
|
1750
|
+
],
|
|
1751
|
+
"dependencies": [],
|
|
1752
|
+
"files": [
|
|
1753
|
+
{
|
|
1754
|
+
"path": "registry/components/thinking-state.css",
|
|
1755
|
+
"type": "registry:style",
|
|
1756
|
+
"target": "@ui/thinking-state.css"
|
|
1757
|
+
},
|
|
1758
|
+
{
|
|
1759
|
+
"path": "registry/components/thinking-state.tsx",
|
|
1760
|
+
"type": "registry:component",
|
|
1761
|
+
"target": "@ui/thinking-state.tsx"
|
|
1762
|
+
}
|
|
1763
|
+
]
|
|
1764
|
+
},
|
|
1765
|
+
{
|
|
1766
|
+
"name": "thinking-reasoning",
|
|
1767
|
+
"type": "registry:component",
|
|
1768
|
+
"title": "Thinking Reasoning",
|
|
1769
|
+
"description": "Animated, collapsible reasoning block: a shimmering label reveals sentences as they arrive, auto-scrolls behind soft fades, then folds into a Thought for Ns summary that unfolds on demand.",
|
|
1770
|
+
"author": "Ahmad Galal",
|
|
1771
|
+
"registryDependencies": [
|
|
1772
|
+
"base",
|
|
1773
|
+
"collapsible",
|
|
1774
|
+
"shimmer-text"
|
|
1775
|
+
],
|
|
1776
|
+
"dependencies": [
|
|
1777
|
+
"lucide-react@^1.17.0"
|
|
1778
|
+
],
|
|
1779
|
+
"files": [
|
|
1780
|
+
{
|
|
1781
|
+
"path": "registry/components/thinking-reasoning.css",
|
|
1782
|
+
"type": "registry:style",
|
|
1783
|
+
"target": "@ui/thinking-reasoning.css"
|
|
1784
|
+
},
|
|
1785
|
+
{
|
|
1786
|
+
"path": "registry/components/thinking-reasoning.tsx",
|
|
1787
|
+
"type": "registry:component",
|
|
1788
|
+
"target": "@ui/thinking-reasoning.tsx"
|
|
1789
|
+
}
|
|
1790
|
+
]
|
|
1791
|
+
},
|
|
1792
|
+
{
|
|
1793
|
+
"name": "streaming-text",
|
|
1794
|
+
"type": "registry:component",
|
|
1795
|
+
"title": "Streaming Text",
|
|
1796
|
+
"description": "Token-by-token text with a slim caret that stays solid while streaming and blinks once the response is complete, plus a useTypewriter hook that reveals a finished text locally.",
|
|
1797
|
+
"author": "Ahmad Galal",
|
|
1798
|
+
"registryDependencies": [
|
|
1799
|
+
"base"
|
|
1800
|
+
],
|
|
1801
|
+
"dependencies": [],
|
|
1802
|
+
"files": [
|
|
1803
|
+
{
|
|
1804
|
+
"path": "registry/components/streaming-text.css",
|
|
1805
|
+
"type": "registry:style",
|
|
1806
|
+
"target": "@ui/streaming-text.css"
|
|
1807
|
+
},
|
|
1808
|
+
{
|
|
1809
|
+
"path": "registry/components/streaming-text.tsx",
|
|
1810
|
+
"type": "registry:component",
|
|
1811
|
+
"target": "@ui/streaming-text.tsx"
|
|
1812
|
+
}
|
|
1813
|
+
]
|
|
1814
|
+
},
|
|
1815
|
+
{
|
|
1816
|
+
"name": "inline-citations",
|
|
1817
|
+
"type": "registry:component",
|
|
1818
|
+
"title": "Inline Citations",
|
|
1819
|
+
"description": "Prose composed with superscript citation marks that link to numbered sources and reveal the reference name on hover, plus a compact source list with host and external-link affordance.",
|
|
1820
|
+
"author": "Ahmad Galal",
|
|
1821
|
+
"registryDependencies": [
|
|
1822
|
+
"base",
|
|
1823
|
+
"tooltip"
|
|
1824
|
+
],
|
|
1825
|
+
"dependencies": [
|
|
1826
|
+
"lucide-react@^1.17.0"
|
|
1827
|
+
],
|
|
1828
|
+
"files": [
|
|
1829
|
+
{
|
|
1830
|
+
"path": "registry/components/inline-citations.css",
|
|
1831
|
+
"type": "registry:style",
|
|
1832
|
+
"target": "@ui/inline-citations.css"
|
|
1833
|
+
},
|
|
1834
|
+
{
|
|
1835
|
+
"path": "registry/components/inline-citations.tsx",
|
|
1836
|
+
"type": "registry:component",
|
|
1837
|
+
"target": "@ui/inline-citations.tsx"
|
|
1838
|
+
}
|
|
1839
|
+
]
|
|
1840
|
+
},
|
|
1841
|
+
{
|
|
1842
|
+
"name": "rolling-count",
|
|
1843
|
+
"type": "registry:component",
|
|
1844
|
+
"title": "Rolling Count",
|
|
1845
|
+
"description": "Tabular figures that roll each changed character into place like an odometer while assistive technology reads the plain value.",
|
|
1846
|
+
"author": "Ahmad Galal",
|
|
1847
|
+
"registryDependencies": [
|
|
1848
|
+
"base"
|
|
1849
|
+
],
|
|
1850
|
+
"dependencies": [],
|
|
1851
|
+
"files": [
|
|
1852
|
+
{
|
|
1853
|
+
"path": "registry/components/rolling-count.css",
|
|
1854
|
+
"type": "registry:style",
|
|
1855
|
+
"target": "@ui/rolling-count.css"
|
|
1856
|
+
},
|
|
1857
|
+
{
|
|
1858
|
+
"path": "registry/components/rolling-count.tsx",
|
|
1859
|
+
"type": "registry:component",
|
|
1860
|
+
"target": "@ui/rolling-count.tsx"
|
|
1861
|
+
}
|
|
1862
|
+
]
|
|
1863
|
+
},
|
|
1864
|
+
{
|
|
1865
|
+
"name": "task-list",
|
|
1866
|
+
"type": "registry:component",
|
|
1867
|
+
"title": "Task List",
|
|
1868
|
+
"description": "Collapsible agent progress tracker with pending, active, and done rows, a header icon that moves from list to pie to check, and rolling counters, plus parts that compose static and folded lists.",
|
|
1869
|
+
"author": "Ahmad Galal",
|
|
1870
|
+
"registryDependencies": [
|
|
1871
|
+
"base",
|
|
1872
|
+
"collapsible",
|
|
1873
|
+
"rolling-count",
|
|
1874
|
+
"shimmer-text"
|
|
1875
|
+
],
|
|
1876
|
+
"dependencies": [
|
|
1877
|
+
"lucide-react@^1.17.0"
|
|
1878
|
+
],
|
|
1879
|
+
"files": [
|
|
1880
|
+
{
|
|
1881
|
+
"path": "registry/components/task-list.css",
|
|
1882
|
+
"type": "registry:style",
|
|
1883
|
+
"target": "@ui/task-list.css"
|
|
1884
|
+
},
|
|
1885
|
+
{
|
|
1886
|
+
"path": "registry/components/task-list.tsx",
|
|
1887
|
+
"type": "registry:component",
|
|
1888
|
+
"target": "@ui/task-list.tsx"
|
|
1889
|
+
}
|
|
1890
|
+
]
|
|
1891
|
+
},
|
|
1892
|
+
{
|
|
1893
|
+
"name": "agent-input",
|
|
1894
|
+
"type": "registry:component",
|
|
1895
|
+
"title": "Agent Input",
|
|
1896
|
+
"description": "Composable AI prompt field with an auto-growing editor, slash-command skill palette, skill and attachment chips, an add menu for files, skills, and models, prompt enhancement with a sweeping ring, and a send action.",
|
|
1897
|
+
"author": "Ahmad Galal",
|
|
1898
|
+
"registryDependencies": [
|
|
1899
|
+
"base",
|
|
1900
|
+
"button",
|
|
1901
|
+
"menu",
|
|
1902
|
+
"shimmer-text",
|
|
1903
|
+
"spinner",
|
|
1904
|
+
"tag"
|
|
1905
|
+
],
|
|
1906
|
+
"dependencies": [
|
|
1907
|
+
"lucide-react@^1.17.0"
|
|
1908
|
+
],
|
|
1909
|
+
"files": [
|
|
1910
|
+
{
|
|
1911
|
+
"path": "registry/components/agent-input.css",
|
|
1912
|
+
"type": "registry:style",
|
|
1913
|
+
"target": "@ui/agent-input.css"
|
|
1914
|
+
},
|
|
1915
|
+
{
|
|
1916
|
+
"path": "registry/components/agent-input.tsx",
|
|
1917
|
+
"type": "registry:component",
|
|
1918
|
+
"target": "@ui/agent-input.tsx"
|
|
1919
|
+
},
|
|
1920
|
+
{
|
|
1921
|
+
"path": "registry/components/agent-input-parts.tsx",
|
|
1922
|
+
"type": "registry:component",
|
|
1923
|
+
"target": "@ui/agent-input-parts.tsx"
|
|
1924
|
+
},
|
|
1925
|
+
{
|
|
1926
|
+
"path": "registry/components/agent-input-state.ts",
|
|
1927
|
+
"type": "registry:component",
|
|
1928
|
+
"target": "@ui/agent-input-state.ts"
|
|
1929
|
+
}
|
|
1930
|
+
]
|
|
1931
|
+
},
|
|
1932
|
+
{
|
|
1933
|
+
"name": "approval-card",
|
|
1934
|
+
"type": "registry:component",
|
|
1935
|
+
"title": "Approval Card",
|
|
1936
|
+
"description": "Human-in-the-loop decision cards that pause the agent: ApprovalQuestions for up to a few questions, ApprovalCommand to approve a shell command, and ApprovalPlan to green-light a short plan with an optional auto-approve countdown, all built on the ApprovalFrame shell for custom decisions.",
|
|
1937
|
+
"author": "Ahmad Galal",
|
|
1938
|
+
"registryDependencies": [
|
|
1939
|
+
"base",
|
|
1940
|
+
"button",
|
|
1941
|
+
"kbd",
|
|
1942
|
+
"rolling-count",
|
|
1943
|
+
"task-list",
|
|
1944
|
+
"tooltip"
|
|
1945
|
+
],
|
|
1946
|
+
"dependencies": [
|
|
1947
|
+
"lucide-react@^1.17.0"
|
|
1948
|
+
],
|
|
1949
|
+
"files": [
|
|
1950
|
+
{
|
|
1951
|
+
"path": "registry/components/approval-card.css",
|
|
1952
|
+
"type": "registry:style",
|
|
1953
|
+
"target": "@ui/approval-card.css"
|
|
1954
|
+
},
|
|
1955
|
+
{
|
|
1956
|
+
"path": "registry/components/approval-card.tsx",
|
|
1957
|
+
"type": "registry:component",
|
|
1958
|
+
"target": "@ui/approval-card.tsx"
|
|
1959
|
+
},
|
|
1960
|
+
{
|
|
1961
|
+
"path": "registry/components/approval-frame.tsx",
|
|
1962
|
+
"type": "registry:component",
|
|
1963
|
+
"target": "@ui/approval-frame.tsx"
|
|
1964
|
+
},
|
|
1965
|
+
{
|
|
1966
|
+
"path": "registry/components/approval-questions.tsx",
|
|
1967
|
+
"type": "registry:component",
|
|
1968
|
+
"target": "@ui/approval-questions.tsx"
|
|
1969
|
+
}
|
|
1970
|
+
]
|
|
1617
1971
|
}
|
|
1618
1972
|
]
|
|
1619
1973
|
}
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "urn:banhaten:schema:config",
|
|
4
|
-
"title": "Banhaten CLI config",
|
|
5
|
-
"type": "object",
|
|
6
|
-
"required": ["tailwind", "aliases"],
|
|
7
|
-
"additionalProperties": false,
|
|
8
|
-
"properties": {
|
|
9
|
-
"$schema": {
|
|
10
|
-
"type": "string"
|
|
11
|
-
},
|
|
12
|
-
"tailwind": {
|
|
13
|
-
"type": "object",
|
|
14
|
-
"required": ["css"],
|
|
15
|
-
"additionalProperties": false,
|
|
16
|
-
"properties": {
|
|
17
|
-
"css": {
|
|
18
|
-
"type": "string",
|
|
19
|
-
"minLength": 1,
|
|
20
|
-
"pattern": "^\\S(?:.*\\S)?$",
|
|
21
|
-
"description": "Path to the global CSS file that imports Tailwind and receives Banhaten tokens."
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
"aliases": {
|
|
26
|
-
"type": "object",
|
|
27
|
-
"required": ["ui", "utils", "hooks"],
|
|
28
|
-
"additionalProperties": false,
|
|
29
|
-
"properties": {
|
|
30
|
-
"ui": {
|
|
31
|
-
"type": "string",
|
|
32
|
-
"minLength": 1,
|
|
33
|
-
"pattern": "^\\S(?:.*\\S)?$",
|
|
34
|
-
"description": "Import alias where Banhaten UI components are installed."
|
|
35
|
-
},
|
|
36
|
-
"utils": {
|
|
37
|
-
"type": "string",
|
|
38
|
-
"minLength": 1,
|
|
39
|
-
"pattern": "^\\S(?:.*\\S)?$",
|
|
40
|
-
"description": "Import alias for the cn utility file."
|
|
41
|
-
},
|
|
42
|
-
"hooks": {
|
|
43
|
-
"type": "string",
|
|
44
|
-
"minLength": 1,
|
|
45
|
-
"pattern": "^\\S(?:.*\\S)?$",
|
|
46
|
-
"description": "Import alias for generated hooks."
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "urn:banhaten:schema:config",
|
|
4
|
+
"title": "Banhaten CLI config",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": ["tailwind", "aliases"],
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"properties": {
|
|
9
|
+
"$schema": {
|
|
10
|
+
"type": "string"
|
|
11
|
+
},
|
|
12
|
+
"tailwind": {
|
|
13
|
+
"type": "object",
|
|
14
|
+
"required": ["css"],
|
|
15
|
+
"additionalProperties": false,
|
|
16
|
+
"properties": {
|
|
17
|
+
"css": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"minLength": 1,
|
|
20
|
+
"pattern": "^\\S(?:.*\\S)?$",
|
|
21
|
+
"description": "Path to the global CSS file that imports Tailwind and receives Banhaten tokens."
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"aliases": {
|
|
26
|
+
"type": "object",
|
|
27
|
+
"required": ["ui", "utils", "hooks"],
|
|
28
|
+
"additionalProperties": false,
|
|
29
|
+
"properties": {
|
|
30
|
+
"ui": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"minLength": 1,
|
|
33
|
+
"pattern": "^\\S(?:.*\\S)?$",
|
|
34
|
+
"description": "Import alias where Banhaten UI components are installed."
|
|
35
|
+
},
|
|
36
|
+
"utils": {
|
|
37
|
+
"type": "string",
|
|
38
|
+
"minLength": 1,
|
|
39
|
+
"pattern": "^\\S(?:.*\\S)?$",
|
|
40
|
+
"description": "Import alias for the cn utility file."
|
|
41
|
+
},
|
|
42
|
+
"hooks": {
|
|
43
|
+
"type": "string",
|
|
44
|
+
"minLength": 1,
|
|
45
|
+
"pattern": "^\\S(?:.*\\S)?$",
|
|
46
|
+
"description": "Import alias for generated hooks."
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|