@robr0/design-system 0.8.0 → 0.9.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/README.md +3 -3
- package/components/Accordion/Accordion.js +1 -0
- package/components/AgentPlan/AgentPlan.css +2 -2
- package/components/AgentPlan/AgentPlan.js +1 -0
- package/components/AgentStatus/AgentStatus.js +1 -0
- package/components/AiButton/AiButton.js +1 -0
- package/components/AlertDialog/AlertDialog.js +1 -0
- package/components/AnchorNav/AnchorNav.css +63 -0
- package/components/AnchorNav/AnchorNav.d.ts +33 -0
- package/components/AnchorNav/AnchorNav.js +82 -0
- package/components/AppLayout/AppLayout.js +1 -0
- package/components/AppSidebar/AppSidebar.js +1 -0
- package/components/Avatar/Avatar.js +1 -0
- package/components/Button/Button.js +1 -0
- package/components/Card/Card.js +1 -0
- package/components/Carousel/Carousel.js +1 -0
- package/components/ChatThread/ChatThread.js +1 -0
- package/components/Checkbox/Checkbox.js +1 -0
- package/components/CodeBlock/CodeBlock.js +1 -0
- package/components/CodeDiff/CodeDiff.css +175 -0
- package/components/CodeDiff/CodeDiff.d.ts +58 -0
- package/components/CodeDiff/CodeDiff.js +114 -0
- package/components/ColorPicker/ColorPicker.js +1 -0
- package/components/Combobox/Combobox.js +1 -0
- package/components/CommandPalette/CommandPalette.js +1 -0
- package/components/Composer/Composer.js +1 -0
- package/components/ContactCard/ContactCard.js +1 -0
- package/components/ContextMenu/ContextMenu.js +1 -0
- package/components/DataTable/DataTable.js +1 -0
- package/components/DateInput/DateInput.js +1 -0
- package/components/DatePicker/DatePicker.js +1 -0
- package/components/Dialog/Dialog.js +1 -0
- package/components/Drawer/Drawer.js +1 -0
- package/components/Dropdown/Dropdown.js +1 -0
- package/components/DropdownMenu/DropdownMenu.css +1 -1
- package/components/DropdownMenu/DropdownMenu.js +1 -0
- package/components/EventCalendar/EventCalendar.js +1 -0
- package/components/Field/Field.js +1 -0
- package/components/Field/FieldContext.js +1 -0
- package/components/FileInput/FileInput.js +1 -0
- package/components/Input/Input.js +1 -0
- package/components/InterruptCard/InterruptCard.css +11 -21
- package/components/InterruptCard/InterruptCard.d.ts +5 -6
- package/components/MessageCard/MessageCard.css +1 -2
- package/components/ModelPicker/ModelPicker.css +3 -1
- package/components/ModelPicker/ModelPicker.js +1 -0
- package/components/NavList/NavList.js +1 -0
- package/components/NotificationCenter/NotificationCenter.js +1 -0
- package/components/NumberInput/NumberInput.css +154 -0
- package/components/NumberInput/NumberInput.d.ts +44 -0
- package/components/NumberInput/NumberInput.js +147 -0
- package/components/Pagination/Pagination.js +1 -0
- package/components/PinInput/PinInput.css +92 -0
- package/components/PinInput/PinInput.d.ts +46 -0
- package/components/PinInput/PinInput.js +161 -0
- package/components/Popover/Popover.css +5 -6
- package/components/Popover/Popover.js +1 -0
- package/components/RadioButton/RadioButton.js +1 -0
- package/components/Reasoning/Reasoning.js +1 -0
- package/components/SegmentedControl/SegmentedControl.js +1 -0
- package/components/SelectionCard/SelectionCard.js +1 -0
- package/components/ShaderField/ShaderField.js +1 -0
- package/components/ShaderField/useShaderField.js +1 -0
- package/components/Slider/Slider.js +1 -0
- package/components/Sparkline/Sparkline.css +52 -0
- package/components/Sparkline/Sparkline.d.ts +49 -0
- package/components/Sparkline/Sparkline.js +86 -0
- package/components/Stepper/Stepper.css +207 -0
- package/components/Stepper/Stepper.d.ts +41 -0
- package/components/Stepper/Stepper.js +61 -0
- package/components/Tabs/Tabs.js +1 -0
- package/components/TagInput/TagInput.css +160 -0
- package/components/TagInput/TagInput.d.ts +43 -0
- package/components/TagInput/TagInput.js +137 -0
- package/components/Textarea/Textarea.js +1 -0
- package/components/TimePicker/TimePicker.css +230 -0
- package/components/TimePicker/TimePicker.d.ts +46 -0
- package/components/TimePicker/TimePicker.js +246 -0
- package/components/Toast/Toast.js +1 -0
- package/components/ToggleGroup/ToggleGroup.js +1 -0
- package/components/ToggleSwitch/ToggleSwitch.js +1 -0
- package/components/ToolCall/ToolCall.css +7 -11
- package/components/ToolCall/ToolCall.js +1 -0
- package/components/Tooltip/Tooltip.js +1 -0
- package/components/TreeView/TreeView.css +119 -0
- package/components/TreeView/TreeView.d.ts +45 -0
- package/components/TreeView/TreeView.js +232 -0
- package/components/registry.d.ts +22 -6
- package/components/registry.js +3 -1
- package/components/registry.json +206 -20
- package/components/registry.json.d.ts +206 -20
- package/components/registry.json.js +2 -2
- package/index.d.ts +11 -2
- package/index.js +21 -1
- package/package.json +1 -1
package/components/registry.json
CHANGED
|
@@ -1,15 +1,56 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$comment": "SINGLE SOURCE OF TRUTH for the public component count. Every folder in src/components must appear in exactly one of these lists; scripts/validate-component-registry.mjs enforces this at build time. Import COMPONENT_COUNT from src/components/registry.ts wherever a count is displayed - never hardcode the number.",
|
|
3
3
|
"categories": [
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
4
|
+
{
|
|
5
|
+
"id": "actions",
|
|
6
|
+
"label": "Actions",
|
|
7
|
+
"description": "Buttons, button groups, and toggles for triggering actions and switching modes."
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"id": "ai",
|
|
11
|
+
"label": "AI",
|
|
12
|
+
"description": "Chat, agent, and model surfaces for building AI products, from the composer to the reasoning trace and the diff an agent proposes."
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"id": "charts",
|
|
16
|
+
"label": "Charts",
|
|
17
|
+
"description": "Data visualisation components for plotting series and activity over time."
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"id": "data-display",
|
|
21
|
+
"label": "Data display",
|
|
22
|
+
"description": "Cards, tables, lists, and badges for presenting structured content."
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"id": "effects",
|
|
26
|
+
"label": "Effects",
|
|
27
|
+
"description": "Ambient and decorative surfaces that sit behind or around the interface."
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"id": "feedback",
|
|
31
|
+
"label": "Feedback",
|
|
32
|
+
"description": "Alerts, toasts, progress, and empty states that tell people what is happening."
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"id": "forms",
|
|
36
|
+
"label": "Forms",
|
|
37
|
+
"description": "Inputs, pickers, and selection controls for collecting and editing values."
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"id": "layout",
|
|
41
|
+
"label": "Layout",
|
|
42
|
+
"description": "Page scaffolding: app shells, sidebars, dividers, and section headings."
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"id": "navigation",
|
|
46
|
+
"label": "Navigation",
|
|
47
|
+
"description": "Top bars, breadcrumbs, tabs, steppers, and pagination for moving through a product."
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"id": "overlays",
|
|
51
|
+
"label": "Overlays",
|
|
52
|
+
"description": "Dialogs, drawers, menus, and tooltips that float above the page."
|
|
53
|
+
}
|
|
13
54
|
],
|
|
14
55
|
"components": [
|
|
15
56
|
{
|
|
@@ -60,6 +101,14 @@
|
|
|
60
101
|
"category": "overlays",
|
|
61
102
|
"client": true
|
|
62
103
|
},
|
|
104
|
+
{
|
|
105
|
+
"name": "AnchorNav",
|
|
106
|
+
"label": "Anchor nav",
|
|
107
|
+
"slug": "anchor-nav",
|
|
108
|
+
"description": "An on-page list of anchor links that tracks the reader's position and jumps between sections.",
|
|
109
|
+
"category": "navigation",
|
|
110
|
+
"client": true
|
|
111
|
+
},
|
|
63
112
|
{
|
|
64
113
|
"name": "AppLayout",
|
|
65
114
|
"label": "App layout",
|
|
@@ -76,6 +125,15 @@
|
|
|
76
125
|
"category": "layout",
|
|
77
126
|
"client": true
|
|
78
127
|
},
|
|
128
|
+
{
|
|
129
|
+
"name": "AreaChart",
|
|
130
|
+
"label": "Area chart",
|
|
131
|
+
"slug": "area-chart",
|
|
132
|
+
"description": "Filled area chart for showing volume over time, with stacked and single-series variants.",
|
|
133
|
+
"category": "charts",
|
|
134
|
+
"client": false,
|
|
135
|
+
"folder": "Chart"
|
|
136
|
+
},
|
|
79
137
|
{
|
|
80
138
|
"name": "Avatar",
|
|
81
139
|
"label": "Avatar",
|
|
@@ -92,6 +150,15 @@
|
|
|
92
150
|
"category": "data-display",
|
|
93
151
|
"client": false
|
|
94
152
|
},
|
|
153
|
+
{
|
|
154
|
+
"name": "BarChart",
|
|
155
|
+
"label": "Bar chart",
|
|
156
|
+
"slug": "bar-chart",
|
|
157
|
+
"description": "Vertical bars for comparing values across categories or time, with summary stats and tooltips.",
|
|
158
|
+
"category": "charts",
|
|
159
|
+
"client": false,
|
|
160
|
+
"folder": "Chart"
|
|
161
|
+
},
|
|
95
162
|
{
|
|
96
163
|
"name": "Breadcrumb",
|
|
97
164
|
"label": "Breadcrumb",
|
|
@@ -132,14 +199,6 @@
|
|
|
132
199
|
"category": "data-display",
|
|
133
200
|
"client": true
|
|
134
201
|
},
|
|
135
|
-
{
|
|
136
|
-
"name": "Chart",
|
|
137
|
-
"label": "Chart",
|
|
138
|
-
"slug": "chart",
|
|
139
|
-
"description": "Data visualisation components built on Recharts. Includes bar, line, pie, and radial chart types with design-system token integration.",
|
|
140
|
-
"category": "charts",
|
|
141
|
-
"client": false
|
|
142
|
-
},
|
|
143
202
|
{
|
|
144
203
|
"name": "ChatHeader",
|
|
145
204
|
"label": "Chat header",
|
|
@@ -204,6 +263,14 @@
|
|
|
204
263
|
"category": "data-display",
|
|
205
264
|
"client": true
|
|
206
265
|
},
|
|
266
|
+
{
|
|
267
|
+
"name": "CodeDiff",
|
|
268
|
+
"label": "Code diff",
|
|
269
|
+
"slug": "code-diff",
|
|
270
|
+
"description": "Unified diff view for code changes, with added, removed, and context lines.",
|
|
271
|
+
"category": "ai",
|
|
272
|
+
"client": false
|
|
273
|
+
},
|
|
207
274
|
{
|
|
208
275
|
"name": "ColorPicker",
|
|
209
276
|
"label": "Colour picker",
|
|
@@ -412,6 +479,15 @@
|
|
|
412
479
|
"category": "data-display",
|
|
413
480
|
"client": false
|
|
414
481
|
},
|
|
482
|
+
{
|
|
483
|
+
"name": "LineChart",
|
|
484
|
+
"label": "Line chart",
|
|
485
|
+
"slug": "line-chart",
|
|
486
|
+
"description": "Multi-series line chart for trends over time, with per-series colours and a summary row.",
|
|
487
|
+
"category": "charts",
|
|
488
|
+
"client": false,
|
|
489
|
+
"folder": "Chart"
|
|
490
|
+
},
|
|
415
491
|
{
|
|
416
492
|
"name": "LinkList",
|
|
417
493
|
"label": "Link list",
|
|
@@ -446,8 +522,8 @@
|
|
|
446
522
|
},
|
|
447
523
|
{
|
|
448
524
|
"name": "Nav",
|
|
449
|
-
"label": "
|
|
450
|
-
"slug": "
|
|
525
|
+
"label": "Nav",
|
|
526
|
+
"slug": "nav",
|
|
451
527
|
"description": "Desktop top navigation bar with a brand slot, horizontal button group, and optional trailing content.",
|
|
452
528
|
"category": "navigation",
|
|
453
529
|
"client": false
|
|
@@ -468,6 +544,14 @@
|
|
|
468
544
|
"category": "feedback",
|
|
469
545
|
"client": true
|
|
470
546
|
},
|
|
547
|
+
{
|
|
548
|
+
"name": "NumberInput",
|
|
549
|
+
"label": "Number input",
|
|
550
|
+
"slug": "number-input",
|
|
551
|
+
"description": "Numeric field with increment and decrement steppers and min/max clamping.",
|
|
552
|
+
"category": "forms",
|
|
553
|
+
"client": true
|
|
554
|
+
},
|
|
471
555
|
{
|
|
472
556
|
"name": "Pagination",
|
|
473
557
|
"label": "Pagination",
|
|
@@ -476,6 +560,23 @@
|
|
|
476
560
|
"category": "navigation",
|
|
477
561
|
"client": true
|
|
478
562
|
},
|
|
563
|
+
{
|
|
564
|
+
"name": "PieChart",
|
|
565
|
+
"label": "Pie chart",
|
|
566
|
+
"slug": "pie-chart",
|
|
567
|
+
"description": "Proportional share of a whole as a pie or donut, with per-slice colours.",
|
|
568
|
+
"category": "charts",
|
|
569
|
+
"client": false,
|
|
570
|
+
"folder": "Chart"
|
|
571
|
+
},
|
|
572
|
+
{
|
|
573
|
+
"name": "PinInput",
|
|
574
|
+
"label": "Pin input",
|
|
575
|
+
"slug": "pin-input",
|
|
576
|
+
"description": "Segmented one-time-code input with auto-advance, paste support, and completion callback.",
|
|
577
|
+
"category": "forms",
|
|
578
|
+
"client": true
|
|
579
|
+
},
|
|
479
580
|
{
|
|
480
581
|
"name": "Popover",
|
|
481
582
|
"label": "Popover",
|
|
@@ -516,6 +617,24 @@
|
|
|
516
617
|
"category": "data-display",
|
|
517
618
|
"client": false
|
|
518
619
|
},
|
|
620
|
+
{
|
|
621
|
+
"name": "RadarChart",
|
|
622
|
+
"label": "Radar chart",
|
|
623
|
+
"slug": "radar-chart",
|
|
624
|
+
"description": "Multi-axis comparison of series across categories on a radial grid.",
|
|
625
|
+
"category": "charts",
|
|
626
|
+
"client": false,
|
|
627
|
+
"folder": "Chart"
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
"name": "RadialChart",
|
|
631
|
+
"label": "Radial chart",
|
|
632
|
+
"slug": "radial-chart",
|
|
633
|
+
"description": "Concentric progress rings for completion and KPI readouts.",
|
|
634
|
+
"category": "charts",
|
|
635
|
+
"client": false,
|
|
636
|
+
"folder": "Chart"
|
|
637
|
+
},
|
|
519
638
|
{
|
|
520
639
|
"name": "RadioButton",
|
|
521
640
|
"label": "Radio button",
|
|
@@ -532,6 +651,15 @@
|
|
|
532
651
|
"category": "ai",
|
|
533
652
|
"client": true
|
|
534
653
|
},
|
|
654
|
+
{
|
|
655
|
+
"name": "ScatterChart",
|
|
656
|
+
"label": "Scatter chart",
|
|
657
|
+
"slug": "scatter-chart",
|
|
658
|
+
"description": "Plots point clusters across two axes to show correlation and distribution.",
|
|
659
|
+
"category": "charts",
|
|
660
|
+
"client": false,
|
|
661
|
+
"folder": "Chart"
|
|
662
|
+
},
|
|
535
663
|
{
|
|
536
664
|
"name": "SectionTitle",
|
|
537
665
|
"label": "Section title",
|
|
@@ -561,7 +689,7 @@
|
|
|
561
689
|
"label": "Shader field",
|
|
562
690
|
"slug": "shader-field",
|
|
563
691
|
"description": "An ambient WebGL2 field of soft light sources that sample colour tokens, with a reported fallback status.",
|
|
564
|
-
"category": "
|
|
692
|
+
"category": "effects",
|
|
565
693
|
"client": true
|
|
566
694
|
},
|
|
567
695
|
{
|
|
@@ -588,6 +716,14 @@
|
|
|
588
716
|
"category": "ai",
|
|
589
717
|
"client": false
|
|
590
718
|
},
|
|
719
|
+
{
|
|
720
|
+
"name": "Sparkline",
|
|
721
|
+
"label": "Sparkline",
|
|
722
|
+
"slug": "sparkline",
|
|
723
|
+
"description": "Inline trend line for stats and table cells, drawn without axes or chrome.",
|
|
724
|
+
"category": "charts",
|
|
725
|
+
"client": false
|
|
726
|
+
},
|
|
591
727
|
{
|
|
592
728
|
"name": "Spinner",
|
|
593
729
|
"label": "Spinner",
|
|
@@ -596,6 +732,15 @@
|
|
|
596
732
|
"category": "feedback",
|
|
597
733
|
"client": false
|
|
598
734
|
},
|
|
735
|
+
{
|
|
736
|
+
"name": "StackedBarChart",
|
|
737
|
+
"label": "Stacked bar chart",
|
|
738
|
+
"slug": "stacked-bar-chart",
|
|
739
|
+
"description": "Bars split into stacked segments to compare totals and their composition.",
|
|
740
|
+
"category": "charts",
|
|
741
|
+
"client": false,
|
|
742
|
+
"folder": "Chart"
|
|
743
|
+
},
|
|
599
744
|
{
|
|
600
745
|
"name": "Stat",
|
|
601
746
|
"label": "Stat",
|
|
@@ -604,6 +749,14 @@
|
|
|
604
749
|
"category": "data-display",
|
|
605
750
|
"client": false
|
|
606
751
|
},
|
|
752
|
+
{
|
|
753
|
+
"name": "Stepper",
|
|
754
|
+
"label": "Stepper",
|
|
755
|
+
"slug": "stepper",
|
|
756
|
+
"description": "Step-by-step progress indicator for wizards and multi-stage flows.",
|
|
757
|
+
"category": "navigation",
|
|
758
|
+
"client": true
|
|
759
|
+
},
|
|
607
760
|
{
|
|
608
761
|
"name": "Swatch",
|
|
609
762
|
"label": "Swatch",
|
|
@@ -628,6 +781,14 @@
|
|
|
628
781
|
"category": "navigation",
|
|
629
782
|
"client": true
|
|
630
783
|
},
|
|
784
|
+
{
|
|
785
|
+
"name": "TagInput",
|
|
786
|
+
"label": "Tag input",
|
|
787
|
+
"slug": "tag-input",
|
|
788
|
+
"description": "Multi-value text input with entries held as removable tags.",
|
|
789
|
+
"category": "forms",
|
|
790
|
+
"client": true
|
|
791
|
+
},
|
|
631
792
|
{
|
|
632
793
|
"name": "Textarea",
|
|
633
794
|
"label": "Textarea",
|
|
@@ -636,6 +797,14 @@
|
|
|
636
797
|
"category": "forms",
|
|
637
798
|
"client": true
|
|
638
799
|
},
|
|
800
|
+
{
|
|
801
|
+
"name": "TimePicker",
|
|
802
|
+
"label": "Time picker",
|
|
803
|
+
"slug": "time-picker",
|
|
804
|
+
"description": "Time-of-day field with a dropdown list of selectable times.",
|
|
805
|
+
"category": "forms",
|
|
806
|
+
"client": true
|
|
807
|
+
},
|
|
639
808
|
{
|
|
640
809
|
"name": "Timeline",
|
|
641
810
|
"label": "Timeline",
|
|
@@ -683,6 +852,23 @@
|
|
|
683
852
|
"description": "Contextual text label that appears on hover or focus with position and delay options.",
|
|
684
853
|
"category": "overlays",
|
|
685
854
|
"client": true
|
|
855
|
+
},
|
|
856
|
+
{
|
|
857
|
+
"name": "TreeView",
|
|
858
|
+
"label": "Tree view",
|
|
859
|
+
"slug": "tree-view",
|
|
860
|
+
"description": "Collapsible hierarchy for files, folders, and nested structures.",
|
|
861
|
+
"category": "data-display",
|
|
862
|
+
"client": true
|
|
863
|
+
},
|
|
864
|
+
{
|
|
865
|
+
"name": "Treemap",
|
|
866
|
+
"label": "Treemap",
|
|
867
|
+
"slug": "treemap",
|
|
868
|
+
"description": "Nested rectangles sized by value for part-to-whole breakdowns.",
|
|
869
|
+
"category": "charts",
|
|
870
|
+
"client": false,
|
|
871
|
+
"folder": "Chart"
|
|
686
872
|
}
|
|
687
873
|
],
|
|
688
874
|
"docOnlyHelpers": [
|