@cloudflare/kumo 1.6.0 → 1.8.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 +47 -0
- package/ai/component-registry.json +30 -35
- package/ai/component-registry.md +54 -117
- package/ai/schemas.ts +4 -2
- package/dist/.build-complete +1 -1
- package/dist/ai/schemas.d.ts +11 -3
- package/dist/ai/schemas.d.ts.map +1 -1
- package/dist/banner-BKDBfLHA.js +75 -0
- package/dist/banner-BKDBfLHA.js.map +1 -0
- package/dist/catalog.js +1 -1
- package/dist/{checkbox-Dt8iSNOg.js → checkbox-BUV90tNU.js} +56 -56
- package/dist/checkbox-BUV90tNU.js.map +1 -0
- package/dist/{clipboard-text-Bw5rKPXz.js → clipboard-text-BVKGunue.js} +4 -4
- package/dist/{clipboard-text-Bw5rKPXz.js.map → clipboard-text-BVKGunue.js.map} +1 -1
- package/dist/{combobox-BIC-YZ2L.js → combobox-DyTgHki4.js} +83 -61
- package/dist/combobox-DyTgHki4.js.map +1 -0
- package/dist/{command-palette-D3MNR7w9.js → command-palette-B2hkPSQm.js} +2 -2
- package/dist/{command-palette-D3MNR7w9.js.map → command-palette-B2hkPSQm.js.map} +1 -1
- package/dist/components/banner.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/clipboard-text.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/command-palette.js +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/field.js +1 -1
- package/dist/components/flow.js +5640 -0
- package/dist/components/flow.js.map +1 -0
- package/dist/components/input.js +3 -3
- package/dist/components/label.js +1 -1
- package/dist/components/link.js +1 -1
- package/dist/components/menubar.js +1 -1
- package/dist/components/meter.js +1 -1
- package/dist/components/pagination.js +1 -1
- package/dist/components/popover.js +1 -1
- package/dist/components/radio.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/sensitive-input.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/toast.js +2 -2
- package/dist/components/tooltip.js +1 -1
- package/dist/date-range-picker-CbKEQ9pi.js.map +1 -1
- package/dist/{dialog-toS9krNF.js → dialog-B2EHaSoL.js} +2 -2
- package/dist/{dialog-toS9krNF.js.map → dialog-B2EHaSoL.js.map} +1 -1
- package/dist/{dropdown-BquiYKKC.js → dropdown-mGDt95gv.js} +3 -3
- package/dist/{dropdown-BquiYKKC.js.map → dropdown-mGDt95gv.js.map} +1 -1
- package/dist/{field-DCq04TgZ.js → field-Bkh5pJay.js} +3 -3
- package/dist/{field-DCq04TgZ.js.map → field-Bkh5pJay.js.map} +1 -1
- package/dist/index.js +37 -35
- package/dist/index.js.map +1 -1
- package/dist/{input-CCR8NGG7.js → input-DjItb3_k.js} +3 -3
- package/dist/{input-CCR8NGG7.js.map → input-DjItb3_k.js.map} +1 -1
- package/dist/{input-area-DU2Yvp_t.js → input-area-BcidmGaO.js} +3 -3
- package/dist/{input-area-DU2Yvp_t.js.map → input-area-BcidmGaO.js.map} +1 -1
- package/dist/{input-group-C365-qBq.js → input-group-CMAvOKIV.js} +2 -2
- package/dist/{input-group-C365-qBq.js.map → input-group-CMAvOKIV.js.map} +1 -1
- package/dist/{label-zjtV7oXa.js → label-Cjpb7l1F.js} +2 -2
- package/dist/{label-zjtV7oXa.js.map → label-Cjpb7l1F.js.map} +1 -1
- package/dist/{link-C8pUZ4Q-.js → link-DUqZGMVk.js} +2 -2
- package/dist/{link-C8pUZ4Q-.js.map → link-DUqZGMVk.js.map} +1 -1
- package/dist/{menubar-D7WvAf6x.js → menubar-bgBP3EJi.js} +2 -2
- package/dist/{menubar-D7WvAf6x.js.map → menubar-bgBP3EJi.js.map} +1 -1
- package/dist/{meter-jQGKS1z4.js → meter-BziPAH9D.js} +2 -2
- package/dist/{meter-jQGKS1z4.js.map → meter-BziPAH9D.js.map} +1 -1
- package/dist/{pagination-BN80iKY6.js → pagination-dNzgZRjV.js} +2 -2
- package/dist/{pagination-BN80iKY6.js.map → pagination-dNzgZRjV.js.map} +1 -1
- package/dist/{popover-syU1104E.js → popover-C2w2uRlu.js} +2 -2
- package/dist/{popover-syU1104E.js.map → popover-C2w2uRlu.js.map} +1 -1
- package/dist/primitives/accordion.js +1 -1
- package/dist/primitives/alert-dialog.js +1 -1
- package/dist/primitives/autocomplete.js +1 -1
- package/dist/primitives/avatar.js +1 -1
- package/dist/primitives/button.js +1 -1
- package/dist/primitives/checkbox-group.js +1 -1
- package/dist/primitives/checkbox.js +1 -1
- package/dist/primitives/collapsible.js +1 -1
- package/dist/primitives/combobox.js +1 -1
- package/dist/primitives/context-menu.js +1 -1
- package/dist/primitives/dialog.js +1 -1
- package/dist/primitives/direction-provider.js +1 -1
- package/dist/primitives/field.js +1 -1
- package/dist/primitives/fieldset.js +1 -1
- package/dist/primitives/form.js +1 -1
- package/dist/primitives/input.js +1 -1
- package/dist/primitives/menu.js +1 -1
- package/dist/primitives/menubar.js +1 -1
- package/dist/primitives/meter.js +1 -1
- package/dist/primitives/navigation-menu.js +1 -1
- package/dist/primitives/number-field.js +1 -1
- package/dist/primitives/popover.js +1 -1
- package/dist/primitives/preview-card.js +1 -1
- package/dist/primitives/progress.js +1 -1
- package/dist/primitives/radio-group.js +1 -1
- package/dist/primitives/radio.js +1 -1
- package/dist/primitives/scroll-area.js +1 -1
- package/dist/primitives/select.js +1 -1
- package/dist/primitives/separator.js +1 -1
- package/dist/primitives/slider.js +1 -1
- package/dist/primitives/switch.js +1 -1
- package/dist/primitives/tabs.js +1 -1
- package/dist/primitives/toast.js +1 -1
- package/dist/primitives/toggle-group.js +1 -1
- package/dist/primitives/toggle.js +1 -1
- package/dist/primitives/toolbar.js +1 -1
- package/dist/primitives/tooltip.js +1 -1
- package/dist/primitives.js +1 -1
- package/dist/{radio-CWMtSx65.js → radio-B8Jk1PFe.js} +2 -2
- package/dist/{radio-CWMtSx65.js.map → radio-B8Jk1PFe.js.map} +1 -1
- package/dist/{schemas-DbIwo0ET.js → schemas-DKFFjjzb.js} +216 -213
- package/dist/{schemas-DbIwo0ET.js.map → schemas-DKFFjjzb.js.map} +1 -1
- package/dist/{select-G6JqBVkg.js → select-BWTULnCR.js} +3 -3
- package/dist/{select-G6JqBVkg.js.map → select-BWTULnCR.js.map} +1 -1
- package/dist/{sensitive-input-DNFpycoy.js → sensitive-input-CgjTfZLO.js} +4 -4
- package/dist/{sensitive-input-DNFpycoy.js.map → sensitive-input-CgjTfZLO.js.map} +1 -1
- package/dist/src/components/banner/banner.d.ts +28 -11
- package/dist/src/components/banner/banner.d.ts.map +1 -1
- package/dist/src/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/src/components/combobox/combobox.d.ts +4 -1
- package/dist/src/components/combobox/combobox.d.ts.map +1 -1
- package/dist/src/components/date-range-picker/date-range-picker.d.ts +7 -0
- package/dist/src/components/date-range-picker/date-range-picker.d.ts.map +1 -1
- package/dist/src/components/date-range-picker/index.d.ts +3 -0
- package/dist/src/components/date-range-picker/index.d.ts.map +1 -1
- package/dist/src/components/flow/connectors.d.ts +35 -0
- package/dist/src/components/flow/connectors.d.ts.map +1 -0
- package/dist/src/components/flow/diagram.d.ts +62 -0
- package/dist/src/components/flow/diagram.d.ts.map +1 -0
- package/dist/src/components/flow/index.d.ts +26 -0
- package/dist/src/components/flow/index.d.ts.map +1 -0
- package/dist/src/components/flow/node.d.ts +52 -0
- package/dist/src/components/flow/node.d.ts.map +1 -0
- package/dist/src/components/flow/parallel.d.ts +5 -0
- package/dist/src/components/flow/parallel.d.ts.map +1 -0
- package/dist/src/components/flow/use-children.d.ts +69 -0
- package/dist/src/components/flow/use-children.d.ts.map +1 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/styles/kumo-standalone.css +1 -1
- package/dist/styles/theme-kumo.css +1 -1
- package/dist/{switch-CmsZ4z-g.js → switch-DdjM7eh6.js} +3 -3
- package/dist/{switch-CmsZ4z-g.js.map → switch-DdjM7eh6.js.map} +1 -1
- package/dist/{table-Dc0AGcLV.js → table-D1EXUDHL.js} +2 -2
- package/dist/{table-Dc0AGcLV.js.map → table-D1EXUDHL.js.map} +1 -1
- package/dist/{tabs-BpD1iUiz.js → tabs-Bs43O3E4.js} +2 -2
- package/dist/{tabs-BpD1iUiz.js.map → tabs-Bs43O3E4.js.map} +1 -1
- package/dist/{toast-BrR0pjLE.js → toast-BqZw7a2p.js} +2 -2
- package/dist/{toast-BrR0pjLE.js.map → toast-BqZw7a2p.js.map} +1 -1
- package/dist/{tooltip-daVJYtXY.js → tooltip-BwOFPK5h.js} +2 -2
- package/dist/{tooltip-daVJYtXY.js.map → tooltip-BwOFPK5h.js.map} +1 -1
- package/dist/{vendor-base-ui-9w7J6BvW.js → vendor-base-ui-B61LL9jT.js} +3 -3
- package/dist/{vendor-base-ui-9w7J6BvW.js.map → vendor-base-ui-B61LL9jT.js.map} +1 -1
- package/package.json +7 -1
- package/scripts/theme-generator/config.ts +1 -1
- package/dist/banner-4fkH6Sbt.js +0 -51
- package/dist/banner-4fkH6Sbt.js.map +0 -1
- package/dist/checkbox-Dt8iSNOg.js.map +0 -1
- package/dist/combobox-BIC-YZ2L.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,52 @@
|
|
|
1
1
|
# @cloudflare/kumo
|
|
2
2
|
|
|
3
|
+
## 1.8.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- cf4ff38: Refactor Banner component with softer styling and i18n-friendly props
|
|
8
|
+
- Added `title` and `description` props for structured content with i18n support
|
|
9
|
+
- Softened visual appearance: reduced background opacity (20% -> 10%), muted border colors
|
|
10
|
+
- Text now uses `text-kumo-default` for readability, with colored icons for variant indication
|
|
11
|
+
- Added `iconClasses` to variant config for per-variant icon coloring
|
|
12
|
+
- Component now uses `forwardRef` and sets `displayName` per conventions
|
|
13
|
+
- Deprecated `children` and `text` props in favor of `title`/`description`
|
|
14
|
+
- Legacy `children` prop still works for backwards compatibility
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- 0ca3b05: Fix Checkbox ring color to use `ring-kumo-contrast` when checked or indeterminate
|
|
19
|
+
- f69df6d: Fix Combobox dropdown scrolling regression and improve scroll behavior.
|
|
20
|
+
|
|
21
|
+
**Bug fix:** The `overflow-hidden` class was accidentally re-introduced during a semantic color token migration, which overrode `overflow-y-auto` and caused dropdown content to be clipped instead of scrollable.
|
|
22
|
+
|
|
23
|
+
**Improvement:** Restructured Combobox.Content to use flexbox layout so that when using `Combobox.Input` inside the dropdown (searchable popup pattern), the input stays fixed at the top while only the list scrolls. Previously, the entire popup content would scroll together.
|
|
24
|
+
|
|
25
|
+
**Scrollbar fix:** Moved horizontal padding from the popup container to individual child components, so the scrollbar renders flush with the popup edge instead of being inset (which was clipping the checkmark indicators).
|
|
26
|
+
|
|
27
|
+
## 1.7.0
|
|
28
|
+
|
|
29
|
+
### Minor Changes
|
|
30
|
+
|
|
31
|
+
- d9b6498: feat(flow): add FlowDiagram components for building directed flow diagrams
|
|
32
|
+
|
|
33
|
+
New components for visualizing workflows and data flows:
|
|
34
|
+
- `FlowDiagram` - Root container with pan/scroll support for large diagrams
|
|
35
|
+
- `FlowNode` - Individual node with automatic connector points
|
|
36
|
+
- `FlowNode.Anchor` - Custom attachment points for connectors within nodes
|
|
37
|
+
- `FlowParallelNode` - Container for parallel branches with junction connectors
|
|
38
|
+
|
|
39
|
+
Adds `motion` as a new dependency for smooth panning interactions.
|
|
40
|
+
|
|
41
|
+
### Patch Changes
|
|
42
|
+
|
|
43
|
+
- 835a7c0: Deprecate DateRangePicker in favor of DatePicker with `mode="range"`
|
|
44
|
+
- Added `@deprecated` JSDoc comments to DateRangePicker component and its exports
|
|
45
|
+
- IDEs will now show deprecation warnings guiding users to use DatePicker instead
|
|
46
|
+
|
|
47
|
+
- 391f13a: Prevented ClipboardText from overflowing with long text values.
|
|
48
|
+
- d0e1d29: chore(kumo): add test scripts to root package.json
|
|
49
|
+
|
|
3
50
|
## 1.6.0
|
|
4
51
|
|
|
5
52
|
### Minor Changes
|
|
@@ -70,14 +70,24 @@
|
|
|
70
70
|
"Banner": {
|
|
71
71
|
"name": "Banner",
|
|
72
72
|
"type": "component",
|
|
73
|
-
"description": "Full-width message bar for informational, warning, or error notices.",
|
|
73
|
+
"description": "Full-width message bar for informational, warning, or error notices. Supports structured title/description for i18n, or simple children for basic usage.",
|
|
74
74
|
"importPath": "@cloudflare/kumo",
|
|
75
75
|
"category": "Feedback",
|
|
76
76
|
"props": {
|
|
77
77
|
"icon": {
|
|
78
78
|
"type": "ReactNode",
|
|
79
79
|
"optional": true,
|
|
80
|
-
"description": "Icon element rendered before the banner
|
|
80
|
+
"description": "Icon element rendered before the banner content (e.g. from `@phosphor-icons/react`)."
|
|
81
|
+
},
|
|
82
|
+
"title": {
|
|
83
|
+
"type": "string",
|
|
84
|
+
"optional": true,
|
|
85
|
+
"description": "Primary heading text for the banner. Use for i18n string injection."
|
|
86
|
+
},
|
|
87
|
+
"description": {
|
|
88
|
+
"type": "ReactNode",
|
|
89
|
+
"optional": true,
|
|
90
|
+
"description": "Secondary description text displayed below the title. Use for i18n string injection."
|
|
81
91
|
},
|
|
82
92
|
"text": {
|
|
83
93
|
"type": "string",
|
|
@@ -85,8 +95,7 @@
|
|
|
85
95
|
},
|
|
86
96
|
"children": {
|
|
87
97
|
"type": "ReactNode",
|
|
88
|
-
"optional": true
|
|
89
|
-
"description": "Banner message content. Accepts strings or custom React elements."
|
|
98
|
+
"optional": true
|
|
90
99
|
},
|
|
91
100
|
"variant": {
|
|
92
101
|
"type": "enum",
|
|
@@ -103,9 +112,9 @@
|
|
|
103
112
|
"error": "Error banner for critical issues"
|
|
104
113
|
},
|
|
105
114
|
"classes": {
|
|
106
|
-
"default": "bg-kumo-info/
|
|
107
|
-
"alert": "bg-kumo-warning/
|
|
108
|
-
"error": "bg-kumo-danger/
|
|
115
|
+
"default": "bg-kumo-info/10 border-kumo-info/30 text-kumo-info selection:bg-kumo-info-tint",
|
|
116
|
+
"alert": "bg-kumo-warning/10 border-kumo-warning/30 text-kumo-warning selection:bg-kumo-warning-tint",
|
|
117
|
+
"error": "bg-kumo-danger/10 border-kumo-danger/30 text-kumo-danger selection:bg-kumo-danger-tint"
|
|
109
118
|
},
|
|
110
119
|
"default": "default"
|
|
111
120
|
},
|
|
@@ -116,12 +125,14 @@
|
|
|
116
125
|
}
|
|
117
126
|
},
|
|
118
127
|
"examples": [
|
|
119
|
-
"<div className=\"space-y-3\">\n <Banner
|
|
120
|
-
"<Banner
|
|
121
|
-
"<Banner variant=\"alert\"
|
|
122
|
-
"<Banner variant=\"error\"
|
|
123
|
-
"<Banner
|
|
124
|
-
"<Banner
|
|
128
|
+
"<div className=\"space-y-3\">\n <Banner\n icon={<Info weight=\"fill\" />}\n title=\"Update available\"\n description=\"A new version is ready to install.\"\n />\n <Banner\n icon={<Warning weight=\"fill\" />}\n variant=\"alert\"\n title=\"Session expiring\"\n description=\"Your session will expire in 5 minutes.\"\n />\n <Banner\n icon={<WarningCircle weight=\"fill\" />}\n variant=\"error\"\n title=\"Save failed\"\n description=\"We couldn't save your changes. Please try again.\"\n />\n </div>",
|
|
129
|
+
"<Banner\n icon={<Info weight=\"fill\" />}\n title=\"Update available\"\n description=\"A new version is ready to install.\"\n />",
|
|
130
|
+
"<Banner\n icon={<Warning weight=\"fill\" />}\n variant=\"alert\"\n title=\"Session expiring\"\n description=\"Your session will expire in 5 minutes.\"\n />",
|
|
131
|
+
"<Banner\n icon={<WarningCircle weight=\"fill\" />}\n variant=\"error\"\n title=\"Save failed\"\n description=\"We couldn't save your changes. Please try again.\"\n />",
|
|
132
|
+
"<Banner\n icon={<Info weight=\"fill\" />}\n title=\"Your changes have been saved.\"\n />",
|
|
133
|
+
"<Banner\n icon={<Warning weight=\"fill\" />}\n variant=\"alert\"\n title=\"Review required\"\n description=\"Please review your billing information before proceeding.\"\n />",
|
|
134
|
+
"<Banner\n icon={<Info weight=\"fill\" />}\n title=\"Custom content supported\"\n description={\n <Text DANGEROUS_className=\"text-inherit\">\n This banner supports <strong>custom content</strong> with Text.\n </Text>\n }\n />",
|
|
135
|
+
"<Banner icon={<Info />}>This is a simple banner using children.</Banner>"
|
|
125
136
|
],
|
|
126
137
|
"colors": [
|
|
127
138
|
"bg-kumo-danger",
|
|
@@ -134,10 +145,10 @@
|
|
|
134
145
|
"border-kumo-info",
|
|
135
146
|
"border-kumo-warning",
|
|
136
147
|
"text-kumo-danger",
|
|
137
|
-
"text-kumo-
|
|
148
|
+
"text-kumo-info",
|
|
138
149
|
"text-kumo-warning"
|
|
139
150
|
],
|
|
140
|
-
"baseStyles": "flex w-full items-
|
|
151
|
+
"baseStyles": "flex w-full items-start gap-3 rounded-lg border px-4 py-3 text-base"
|
|
141
152
|
},
|
|
142
153
|
"Breadcrumbs": {
|
|
143
154
|
"name": "Breadcrumbs",
|
|
@@ -509,6 +520,7 @@
|
|
|
509
520
|
"bg-kumo-base",
|
|
510
521
|
"bg-kumo-contrast",
|
|
511
522
|
"border-kumo-line",
|
|
523
|
+
"ring-kumo-contrast",
|
|
512
524
|
"ring-kumo-danger",
|
|
513
525
|
"ring-kumo-line",
|
|
514
526
|
"ring-kumo-ring",
|
|
@@ -2182,19 +2194,8 @@
|
|
|
2182
2194
|
},
|
|
2183
2195
|
"List": {
|
|
2184
2196
|
"name": "List",
|
|
2185
|
-
"description": "
|
|
2186
|
-
"props": {
|
|
2187
|
-
"children": {
|
|
2188
|
-
"type": "ReactNode | ((item: T, index: number) => ReactNode)",
|
|
2189
|
-
"description": "Items to render, or a function that receives each item and returns a node"
|
|
2190
|
-
}
|
|
2191
|
-
},
|
|
2192
|
-
"isPassThrough": true,
|
|
2193
|
-
"baseComponent": "ComboboxBase.List",
|
|
2194
|
-
"usageExamples": [
|
|
2195
|
-
"<Combobox.List>\n {(item) => <Combobox.Item value={item}>{item.label}</Combobox.Item>}\n</Combobox.List>"
|
|
2196
|
-
],
|
|
2197
|
-
"renderElement": "<div>"
|
|
2197
|
+
"description": "List sub-component",
|
|
2198
|
+
"props": {}
|
|
2198
2199
|
},
|
|
2199
2200
|
"Collection": {
|
|
2200
2201
|
"name": "Collection",
|
|
@@ -2344,13 +2345,7 @@
|
|
|
2344
2345
|
"description": "Callback when end date changes"
|
|
2345
2346
|
}
|
|
2346
2347
|
},
|
|
2347
|
-
"examples": [
|
|
2348
|
-
"<div className=\"flex flex-col gap-4\">\n <DateRangePicker\n onStartDateChange={setStartDate}\n onEndDateChange={setEndDate}\n />\n <div className=\"text-sm text-kumo-subtle\">\n {startDate && endDate ? (\n <span>\n Selected: {startDate.toLocaleDateString()} -{\" \"}\n {endDate.toLocaleDateString()}\n </span>\n ) : startDate ? (\n <span>Start: {startDate.toLocaleDateString()} (select end date)</span>\n ) : (\n <span>Select a date range</span>\n )}\n </div>\n </div>",
|
|
2349
|
-
"<div className=\"flex flex-col gap-8\">\n <div>\n <p className=\"mb-2 text-sm font-medium text-kumo-default\">Small</p>\n <DateRangePicker\n size=\"sm\"\n onStartDateChange={() => {}}\n onEndDateChange={() => {}}\n />\n </div>\n <div>\n <p className=\"mb-2 text-sm font-medium text-kumo-default\">\n Base (default)\n </p>\n <DateRangePicker\n size=\"base\"\n onStartDateChange={() => {}}\n onEndDateChange={() => {}}\n />\n </div>\n <div>\n <p className=\"mb-2 text-sm font-medium text-kumo-default\">Large</p>\n <DateRangePicker\n size=\"lg\"\n onStartDateChange={() => {}}\n onEndDateChange={() => {}}\n />\n </div>\n </div>",
|
|
2350
|
-
"<div className=\"flex flex-col gap-8\">\n <div>\n <p className=\"mb-2 text-sm font-medium text-kumo-default\">\n Default variant\n </p>\n <DateRangePicker\n variant=\"default\"\n onStartDateChange={() => {}}\n onEndDateChange={() => {}}\n />\n </div>\n <div>\n <p className=\"mb-2 text-sm font-medium text-kumo-default\">\n Subtle variant\n </p>\n <DateRangePicker\n variant=\"subtle\"\n onStartDateChange={() => {}}\n onEndDateChange={() => {}}\n />\n </div>\n </div>",
|
|
2351
|
-
"<DateRangePicker\n timezone=\"London, UK (GMT+0)\"\n onStartDateChange={() => {}}\n onEndDateChange={() => {}}\n />",
|
|
2352
|
-
"<div className=\"flex flex-col gap-4\">\n <DateRangePicker\n onStartDateChange={setStartDate}\n onEndDateChange={setEndDate}\n />\n <div className=\"rounded-lg bg-kumo-control p-3 text-sm text-kumo-default\">\n <strong>Selection:</strong> {formatDateRange()}\n </div>\n </div>"
|
|
2353
|
-
],
|
|
2348
|
+
"examples": [],
|
|
2354
2349
|
"colors": [
|
|
2355
2350
|
"bg-kumo-base",
|
|
2356
2351
|
"bg-kumo-contrast",
|
package/ai/component-registry.md
CHANGED
|
@@ -59,7 +59,7 @@ Small status label for categorizing or highlighting content.
|
|
|
59
59
|
|
|
60
60
|
### Banner
|
|
61
61
|
|
|
62
|
-
Full-width message bar for informational, warning, or error notices.
|
|
62
|
+
Full-width message bar for informational, warning, or error notices. Supports structured title/description for i18n, or simple children for basic usage.
|
|
63
63
|
|
|
64
64
|
**Type:** component
|
|
65
65
|
|
|
@@ -70,10 +70,13 @@ Full-width message bar for informational, warning, or error notices.
|
|
|
70
70
|
**Props:**
|
|
71
71
|
|
|
72
72
|
- `icon`: ReactNode
|
|
73
|
-
Icon element rendered before the banner
|
|
73
|
+
Icon element rendered before the banner content (e.g. from `@phosphor-icons/react`).
|
|
74
|
+
- `title`: string
|
|
75
|
+
Primary heading text for the banner. Use for i18n string injection.
|
|
76
|
+
- `description`: ReactNode
|
|
77
|
+
Secondary description text displayed below the title. Use for i18n string injection.
|
|
74
78
|
- `text`: string
|
|
75
79
|
- `children`: ReactNode
|
|
76
|
-
Banner message content. Accepts strings or custom React elements.
|
|
77
80
|
- `variant`: enum [default: default]
|
|
78
81
|
- `"default"`: Informational banner for general messages
|
|
79
82
|
- `"alert"`: Warning banner for cautionary messages
|
|
@@ -83,38 +86,70 @@ Full-width message bar for informational, warning, or error notices.
|
|
|
83
86
|
|
|
84
87
|
**Colors (kumo tokens used):**
|
|
85
88
|
|
|
86
|
-
`bg-kumo-danger`, `bg-kumo-danger-tint`, `bg-kumo-info`, `bg-kumo-info-tint`, `bg-kumo-warning`, `bg-kumo-warning-tint`, `border-kumo-danger`, `border-kumo-info`, `border-kumo-warning`, `text-kumo-danger`, `text-kumo-
|
|
89
|
+
`bg-kumo-danger`, `bg-kumo-danger-tint`, `bg-kumo-info`, `bg-kumo-info-tint`, `bg-kumo-warning`, `bg-kumo-warning-tint`, `border-kumo-danger`, `border-kumo-info`, `border-kumo-warning`, `text-kumo-danger`, `text-kumo-info`, `text-kumo-warning`
|
|
87
90
|
|
|
88
91
|
**Examples:**
|
|
89
92
|
|
|
90
93
|
```tsx
|
|
91
94
|
<div className="space-y-3">
|
|
92
|
-
<Banner
|
|
93
|
-
|
|
94
|
-
|
|
95
|
+
<Banner
|
|
96
|
+
icon={<Info weight="fill" />}
|
|
97
|
+
title="Update available"
|
|
98
|
+
description="A new version is ready to install."
|
|
99
|
+
/>
|
|
100
|
+
<Banner
|
|
101
|
+
icon={<Warning weight="fill" />}
|
|
102
|
+
variant="alert"
|
|
103
|
+
title="Session expiring"
|
|
104
|
+
description="Your session will expire in 5 minutes."
|
|
105
|
+
/>
|
|
106
|
+
<Banner
|
|
107
|
+
icon={<WarningCircle weight="fill" />}
|
|
108
|
+
variant="error"
|
|
109
|
+
title="Save failed"
|
|
110
|
+
description="We couldn't save your changes. Please try again."
|
|
111
|
+
/>
|
|
95
112
|
</div>
|
|
96
113
|
```
|
|
97
114
|
|
|
98
115
|
```tsx
|
|
99
|
-
<Banner
|
|
116
|
+
<Banner
|
|
117
|
+
icon={<Info weight="fill" />}
|
|
118
|
+
title="Update available"
|
|
119
|
+
description="A new version is ready to install."
|
|
120
|
+
/>
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
```tsx
|
|
124
|
+
<Banner
|
|
125
|
+
icon={<Warning weight="fill" />}
|
|
126
|
+
variant="alert"
|
|
127
|
+
title="Session expiring"
|
|
128
|
+
description="Your session will expire in 5 minutes."
|
|
129
|
+
/>
|
|
100
130
|
```
|
|
101
131
|
|
|
102
132
|
```tsx
|
|
103
|
-
<Banner
|
|
133
|
+
<Banner
|
|
134
|
+
icon={<Info weight="fill" />}
|
|
135
|
+
title="Your changes have been saved."
|
|
136
|
+
/>
|
|
104
137
|
```
|
|
105
138
|
|
|
106
139
|
```tsx
|
|
107
|
-
<Banner
|
|
108
|
-
|
|
109
|
-
|
|
140
|
+
<Banner
|
|
141
|
+
icon={<Info weight="fill" />}
|
|
142
|
+
title="Custom content supported"
|
|
143
|
+
description={
|
|
144
|
+
<Text DANGEROUS_className="text-inherit">
|
|
145
|
+
This banner supports <strong>custom content</strong> with Text.
|
|
146
|
+
</Text>
|
|
147
|
+
}
|
|
148
|
+
/>
|
|
110
149
|
```
|
|
111
150
|
|
|
112
151
|
```tsx
|
|
113
|
-
<Banner icon={<Info />}>
|
|
114
|
-
<Text DANGEROUS_className="text-inherit">
|
|
115
|
-
This banner supports <strong>custom content</strong> with Text.
|
|
116
|
-
</Text>
|
|
117
|
-
</Banner>
|
|
152
|
+
<Banner icon={<Info />}>This is a simple banner using children.</Banner>
|
|
118
153
|
```
|
|
119
154
|
|
|
120
155
|
|
|
@@ -387,7 +422,7 @@ Checkbox component
|
|
|
387
422
|
|
|
388
423
|
**Colors (kumo tokens used):**
|
|
389
424
|
|
|
390
|
-
`bg-kumo-base`, `bg-kumo-contrast`, `border-kumo-line`, `ring-kumo-danger`, `ring-kumo-line`, `ring-kumo-ring`, `text-kumo-danger`, `text-kumo-default`, `text-kumo-inverse`, `text-kumo-subtle`
|
|
425
|
+
`bg-kumo-base`, `bg-kumo-contrast`, `border-kumo-line`, `ring-kumo-contrast`, `ring-kumo-danger`, `ring-kumo-line`, `ring-kumo-ring`, `text-kumo-danger`, `text-kumo-default`, `text-kumo-inverse`, `text-kumo-subtle`
|
|
391
426
|
|
|
392
427
|
**Styling:**
|
|
393
428
|
|
|
@@ -1221,17 +1256,7 @@ Group sub-component
|
|
|
1221
1256
|
|
|
1222
1257
|
#### Combobox.List
|
|
1223
1258
|
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
Props:
|
|
1227
|
-
- `children`: ReactNode | ((item: T, index: number) => ReactNode) - Items to render, or a function that receives each item and returns a node
|
|
1228
|
-
|
|
1229
|
-
Usage:
|
|
1230
|
-
```tsx
|
|
1231
|
-
<Combobox.List>
|
|
1232
|
-
{(item) => <Combobox.Item value={item}>{item.label}</Combobox.Item>}
|
|
1233
|
-
</Combobox.List>
|
|
1234
|
-
```
|
|
1259
|
+
List sub-component
|
|
1235
1260
|
|
|
1236
1261
|
#### Combobox.Collection
|
|
1237
1262
|
|
|
@@ -1892,94 +1917,6 @@ DateRangePicker — dual-calendar date range selector. Renders two side-by-side
|
|
|
1892
1917
|
- padding: 20
|
|
1893
1918
|
- gap: 12
|
|
1894
1919
|
|
|
1895
|
-
**Examples:**
|
|
1896
|
-
|
|
1897
|
-
```tsx
|
|
1898
|
-
<div className="flex flex-col gap-4">
|
|
1899
|
-
<DateRangePicker
|
|
1900
|
-
onStartDateChange={setStartDate}
|
|
1901
|
-
onEndDateChange={setEndDate}
|
|
1902
|
-
/>
|
|
1903
|
-
<div className="text-sm text-kumo-subtle">
|
|
1904
|
-
{startDate && endDate ? (
|
|
1905
|
-
<span>
|
|
1906
|
-
Selected: {startDate.toLocaleDateString()} -{" "}
|
|
1907
|
-
{endDate.toLocaleDateString()}
|
|
1908
|
-
</span>
|
|
1909
|
-
) : startDate ? (
|
|
1910
|
-
<span>Start: {startDate.toLocaleDateString()} (select end date)</span>
|
|
1911
|
-
) : (
|
|
1912
|
-
<span>Select a date range</span>
|
|
1913
|
-
)}
|
|
1914
|
-
</div>
|
|
1915
|
-
</div>
|
|
1916
|
-
```
|
|
1917
|
-
|
|
1918
|
-
```tsx
|
|
1919
|
-
<div className="flex flex-col gap-8">
|
|
1920
|
-
<div>
|
|
1921
|
-
<p className="mb-2 text-sm font-medium text-kumo-default">Small</p>
|
|
1922
|
-
<DateRangePicker
|
|
1923
|
-
size="sm"
|
|
1924
|
-
onStartDateChange={() => {}}
|
|
1925
|
-
onEndDateChange={() => {}}
|
|
1926
|
-
/>
|
|
1927
|
-
</div>
|
|
1928
|
-
<div>
|
|
1929
|
-
<p className="mb-2 text-sm font-medium text-kumo-default">
|
|
1930
|
-
Base (default)
|
|
1931
|
-
</p>
|
|
1932
|
-
<DateRangePicker
|
|
1933
|
-
size="base"
|
|
1934
|
-
onStartDateChange={() => {}}
|
|
1935
|
-
onEndDateChange={() => {}}
|
|
1936
|
-
/>
|
|
1937
|
-
</div>
|
|
1938
|
-
<div>
|
|
1939
|
-
<p className="mb-2 text-sm font-medium text-kumo-default">Large</p>
|
|
1940
|
-
<DateRangePicker
|
|
1941
|
-
size="lg"
|
|
1942
|
-
onStartDateChange={() => {}}
|
|
1943
|
-
onEndDateChange={() => {}}
|
|
1944
|
-
/>
|
|
1945
|
-
</div>
|
|
1946
|
-
</div>
|
|
1947
|
-
```
|
|
1948
|
-
|
|
1949
|
-
```tsx
|
|
1950
|
-
<div className="flex flex-col gap-8">
|
|
1951
|
-
<div>
|
|
1952
|
-
<p className="mb-2 text-sm font-medium text-kumo-default">
|
|
1953
|
-
Default variant
|
|
1954
|
-
</p>
|
|
1955
|
-
<DateRangePicker
|
|
1956
|
-
variant="default"
|
|
1957
|
-
onStartDateChange={() => {}}
|
|
1958
|
-
onEndDateChange={() => {}}
|
|
1959
|
-
/>
|
|
1960
|
-
</div>
|
|
1961
|
-
<div>
|
|
1962
|
-
<p className="mb-2 text-sm font-medium text-kumo-default">
|
|
1963
|
-
Subtle variant
|
|
1964
|
-
</p>
|
|
1965
|
-
<DateRangePicker
|
|
1966
|
-
variant="subtle"
|
|
1967
|
-
onStartDateChange={() => {}}
|
|
1968
|
-
onEndDateChange={() => {}}
|
|
1969
|
-
/>
|
|
1970
|
-
</div>
|
|
1971
|
-
</div>
|
|
1972
|
-
```
|
|
1973
|
-
|
|
1974
|
-
```tsx
|
|
1975
|
-
<DateRangePicker
|
|
1976
|
-
timezone="London, UK (GMT+0)"
|
|
1977
|
-
onStartDateChange={() => {}}
|
|
1978
|
-
onEndDateChange={() => {}}
|
|
1979
|
-
/>
|
|
1980
|
-
```
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
1920
|
---
|
|
1984
1921
|
|
|
1985
1922
|
### Dialog
|
package/ai/schemas.ts
CHANGED
|
@@ -117,9 +117,11 @@ export const BadgePropsSchema = z.object({
|
|
|
117
117
|
});
|
|
118
118
|
|
|
119
119
|
export const BannerPropsSchema = z.object({
|
|
120
|
-
icon: z.union([z.string(), z.number(), z.boolean(), z.null(), DynamicValueSchema]).optional(), // Icon element rendered before the banner
|
|
120
|
+
icon: z.union([z.string(), z.number(), z.boolean(), z.null(), DynamicValueSchema]).optional(), // Icon element rendered before the banner content (e.g. from `@phosphor-icons/react`).
|
|
121
|
+
title: z.string().optional(), // Primary heading text for the banner. Use for i18n string injection.
|
|
122
|
+
description: z.union([z.string(), z.number(), z.boolean(), z.null(), DynamicValueSchema]).optional(), // Secondary description text displayed below the title. Use for i18n string injection.
|
|
121
123
|
text: z.string().optional(),
|
|
122
|
-
children: z.union([z.string(), z.number(), z.boolean(), z.null(), DynamicValueSchema]).optional(),
|
|
124
|
+
children: z.union([z.string(), z.number(), z.boolean(), z.null(), DynamicValueSchema]).optional(),
|
|
123
125
|
variant: z.enum(["default", "alert", "error"]).optional(), // Visual style of the banner. - `"default"` — Informational blue banner for general messages - `"alert"` — Warning yellow banner for cautionary messages - `"error"` — Error red banner for critical issues
|
|
124
126
|
className: z.string().optional(), // Additional CSS classes merged via `cn()`.
|
|
125
127
|
});
|
package/dist/.build-complete
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
1771946430289
|
package/dist/ai/schemas.d.ts
CHANGED
|
@@ -112,6 +112,10 @@ export declare const BannerPropsSchema: z.ZodObject<{
|
|
|
112
112
|
icon: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodObject<{
|
|
113
113
|
path: z.ZodString;
|
|
114
114
|
}, z.core.$strip>]>]>>;
|
|
115
|
+
title: z.ZodOptional<z.ZodString>;
|
|
116
|
+
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodObject<{
|
|
117
|
+
path: z.ZodString;
|
|
118
|
+
}, z.core.$strip>]>]>>;
|
|
115
119
|
text: z.ZodOptional<z.ZodString>;
|
|
116
120
|
children: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodObject<{
|
|
117
121
|
path: z.ZodString;
|
|
@@ -1018,6 +1022,7 @@ export declare const TooltipPropsSchema: z.ZodObject<{
|
|
|
1018
1022
|
*/
|
|
1019
1023
|
export type KumoComponentType = "Badge" | "Banner" | "Breadcrumbs" | "Button" | "Checkbox" | "ClipboardText" | "CloudflareLogo" | "Code" | "Collapsible" | "Combobox" | "CommandPalette" | "DatePicker" | "DateRangePicker" | "Dialog" | "DropdownMenu" | "Empty" | "Field" | "Grid" | "Input" | "InputArea" | "Label" | "LayerCard" | "Link" | "Loader" | "MenuBar" | "Meter" | "Pagination" | "Popover" | "Radio" | "Select" | "SensitiveInput" | "Surface" | "Switch" | "Table" | "Tabs" | "Text" | "Toasty" | "Tooltip";
|
|
1020
1024
|
export declare const KumoComponentTypeSchema: z.ZodEnum<{
|
|
1025
|
+
Banner: "Banner";
|
|
1021
1026
|
Button: "Button";
|
|
1022
1027
|
Label: "Label";
|
|
1023
1028
|
Checkbox: "Checkbox";
|
|
@@ -1036,7 +1041,6 @@ export declare const KumoComponentTypeSchema: z.ZodEnum<{
|
|
|
1036
1041
|
DatePicker: "DatePicker";
|
|
1037
1042
|
Select: "Select";
|
|
1038
1043
|
Badge: "Badge";
|
|
1039
|
-
Banner: "Banner";
|
|
1040
1044
|
Breadcrumbs: "Breadcrumbs";
|
|
1041
1045
|
Combobox: "Combobox";
|
|
1042
1046
|
CommandPalette: "CommandPalette";
|
|
@@ -1078,6 +1082,10 @@ export declare const ComponentPropsSchemas: {
|
|
|
1078
1082
|
icon: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodObject<{
|
|
1079
1083
|
path: z.ZodString;
|
|
1080
1084
|
}, z.core.$strip>]>]>>;
|
|
1085
|
+
title: z.ZodOptional<z.ZodString>;
|
|
1086
|
+
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodObject<{
|
|
1087
|
+
path: z.ZodString;
|
|
1088
|
+
}, z.core.$strip>]>]>>;
|
|
1081
1089
|
text: z.ZodOptional<z.ZodString>;
|
|
1082
1090
|
children: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull, z.ZodObject<{
|
|
1083
1091
|
path: z.ZodString;
|
|
@@ -1986,6 +1994,7 @@ export declare const ComponentPropsSchemas: {
|
|
|
1986
1994
|
export declare const UIElementBaseSchema: z.ZodObject<{
|
|
1987
1995
|
key: z.ZodString;
|
|
1988
1996
|
type: z.ZodEnum<{
|
|
1997
|
+
Banner: "Banner";
|
|
1989
1998
|
Button: "Button";
|
|
1990
1999
|
Label: "Label";
|
|
1991
2000
|
Checkbox: "Checkbox";
|
|
@@ -2004,7 +2013,6 @@ export declare const UIElementBaseSchema: z.ZodObject<{
|
|
|
2004
2013
|
DatePicker: "DatePicker";
|
|
2005
2014
|
Select: "Select";
|
|
2006
2015
|
Badge: "Badge";
|
|
2007
|
-
Banner: "Banner";
|
|
2008
2016
|
Breadcrumbs: "Breadcrumbs";
|
|
2009
2017
|
Combobox: "Combobox";
|
|
2010
2018
|
CommandPalette: "CommandPalette";
|
|
@@ -2072,6 +2080,7 @@ export declare const UITreeSchema: z.ZodObject<{
|
|
|
2072
2080
|
elements: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
2073
2081
|
key: z.ZodString;
|
|
2074
2082
|
type: z.ZodEnum<{
|
|
2083
|
+
Banner: "Banner";
|
|
2075
2084
|
Button: "Button";
|
|
2076
2085
|
Label: "Label";
|
|
2077
2086
|
Checkbox: "Checkbox";
|
|
@@ -2090,7 +2099,6 @@ export declare const UITreeSchema: z.ZodObject<{
|
|
|
2090
2099
|
DatePicker: "DatePicker";
|
|
2091
2100
|
Select: "Select";
|
|
2092
2101
|
Badge: "Badge";
|
|
2093
|
-
Banner: "Banner";
|
|
2094
2102
|
Breadcrumbs: "Breadcrumbs";
|
|
2095
2103
|
Combobox: "Combobox";
|
|
2096
2104
|
CommandPalette: "CommandPalette";
|
package/dist/ai/schemas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../ai/schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,MAAM,eAAe,CAAC,CAAC,IACzB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,GACzC;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAM7D;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;mBAM7B,CAAC;AAEH,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAM7D;;;GAGG;AAIH,MAAM,MAAM,eAAe,GACvB;IAAE,GAAG,EAAE,eAAe,EAAE,CAAA;CAAE,GAC1B;IAAE,EAAE,EAAE,eAAe,EAAE,CAAA;CAAE,GACzB;IAAE,GAAG,EAAE,eAAe,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;CAAE,GACpC;IAAE,GAAG,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;CAAE,GACrC;IAAE,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;CAAE,GACpC;IAAE,GAAG,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;CAAE,GACrC;IAAE,EAAE,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;CAAE,GACpC;IAAE,GAAG,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;CAAE,CAAC;AAkB1C,eAAO,MAAM,yBAAyB;;;;;;;4GAKpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAM5E;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;iBAM9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;iBAMvB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAMlD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;iBAI3B,CAAC;AAEH,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../ai/schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as l, jsx as n } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef as E, isValidElement as d } from "react";
|
|
4
|
+
import { c as r } from "./cn-Bhsu1vx2.js";
|
|
5
|
+
const R = "flex w-full items-start gap-3 rounded-lg border px-4 py-3 text-base", f = {
|
|
6
|
+
variant: {
|
|
7
|
+
default: {
|
|
8
|
+
classes: "bg-kumo-info/10 border-kumo-info/30 text-kumo-info selection:bg-kumo-info-tint",
|
|
9
|
+
iconClasses: "text-kumo-info",
|
|
10
|
+
description: "Informational banner for general messages"
|
|
11
|
+
},
|
|
12
|
+
alert: {
|
|
13
|
+
classes: "bg-kumo-warning/10 border-kumo-warning/30 text-kumo-warning selection:bg-kumo-warning-tint",
|
|
14
|
+
iconClasses: "text-kumo-warning",
|
|
15
|
+
description: "Warning banner for cautionary messages"
|
|
16
|
+
},
|
|
17
|
+
error: {
|
|
18
|
+
classes: "bg-kumo-danger/10 border-kumo-danger/30 text-kumo-danger selection:bg-kumo-danger-tint",
|
|
19
|
+
iconClasses: "text-kumo-danger",
|
|
20
|
+
description: "Error banner for critical issues"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}, k = {
|
|
24
|
+
variant: "default"
|
|
25
|
+
};
|
|
26
|
+
function g({
|
|
27
|
+
variant: e = k.variant
|
|
28
|
+
} = {}) {
|
|
29
|
+
return r(
|
|
30
|
+
// Base styles (exported as KUMO_BANNER_BASE_STYLES for Figma plugin)
|
|
31
|
+
R,
|
|
32
|
+
// Apply variant styles from KUMO_BANNER_VARIANTS
|
|
33
|
+
f.variant[e].classes
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
var p = /* @__PURE__ */ ((e) => (e[e.DEFAULT = 0] = "DEFAULT", e[e.ALERT = 1] = "ALERT", e[e.ERROR = 2] = "ERROR", e))(p || {});
|
|
37
|
+
const A = E(function({
|
|
38
|
+
icon: a,
|
|
39
|
+
title: o,
|
|
40
|
+
description: s,
|
|
41
|
+
children: x,
|
|
42
|
+
text: b,
|
|
43
|
+
variant: t = k.variant,
|
|
44
|
+
className: c
|
|
45
|
+
}, m) {
|
|
46
|
+
const u = f.variant[t];
|
|
47
|
+
if (o || s)
|
|
48
|
+
return /* @__PURE__ */ l("div", { ref: m, className: r(g({ variant: t }), c), children: [
|
|
49
|
+
a && /* @__PURE__ */ n(
|
|
50
|
+
"span",
|
|
51
|
+
{
|
|
52
|
+
className: r(
|
|
53
|
+
"shrink-0 flex items-center h-[1.375em]",
|
|
54
|
+
u.iconClasses
|
|
55
|
+
),
|
|
56
|
+
children: a
|
|
57
|
+
}
|
|
58
|
+
),
|
|
59
|
+
/* @__PURE__ */ l("div", { className: "flex flex-col gap-0.5", children: [
|
|
60
|
+
o && /* @__PURE__ */ n("p", { className: "font-medium leading-snug", children: o }),
|
|
61
|
+
s && /* @__PURE__ */ n("div", { className: "text-sm leading-snug", children: d(s) ? s : /* @__PURE__ */ n("p", { children: s }) })
|
|
62
|
+
] })
|
|
63
|
+
] });
|
|
64
|
+
const i = x ?? b, N = d(i) ? i : /* @__PURE__ */ n("p", { children: i });
|
|
65
|
+
return /* @__PURE__ */ l("div", { ref: m, className: r(g({ variant: t }), c), children: [
|
|
66
|
+
a && /* @__PURE__ */ n("span", { className: r("shrink-0", u.iconClasses), children: a }),
|
|
67
|
+
N
|
|
68
|
+
] });
|
|
69
|
+
});
|
|
70
|
+
A.displayName = "Banner";
|
|
71
|
+
export {
|
|
72
|
+
A as B,
|
|
73
|
+
p as a
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=banner-BKDBfLHA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"banner-BKDBfLHA.js","sources":["../src/components/banner/banner.tsx"],"sourcesContent":["import { type ReactNode, isValidElement, forwardRef } from \"react\";\nimport { cn } from \"../../utils/cn\";\n\n/** Base styles applied to all banner variants. */\nexport const KUMO_BANNER_BASE_STYLES =\n \"flex w-full items-start gap-3 rounded-lg border px-4 py-3 text-base\";\n\n/** Banner variant definitions mapping variant names to their Tailwind classes and descriptions. */\nexport const KUMO_BANNER_VARIANTS = {\n variant: {\n default: {\n classes:\n \"bg-kumo-info/10 border-kumo-info/30 text-kumo-info selection:bg-kumo-info-tint\",\n iconClasses: \"text-kumo-info\",\n description: \"Informational banner for general messages\",\n },\n alert: {\n classes:\n \"bg-kumo-warning/10 border-kumo-warning/30 text-kumo-warning selection:bg-kumo-warning-tint\",\n iconClasses: \"text-kumo-warning\",\n description: \"Warning banner for cautionary messages\",\n },\n error: {\n classes:\n \"bg-kumo-danger/10 border-kumo-danger/30 text-kumo-danger selection:bg-kumo-danger-tint\",\n iconClasses: \"text-kumo-danger\",\n description: \"Error banner for critical issues\",\n },\n },\n} as const;\n\nexport const KUMO_BANNER_DEFAULT_VARIANTS = {\n variant: \"default\",\n} as const;\n\n// Derived types from KUMO_BANNER_VARIANTS\nexport type KumoBannerVariant = keyof typeof KUMO_BANNER_VARIANTS.variant;\n\nexport interface KumoBannerVariantsProps {\n /**\n * Visual style of the banner.\n * - `\"default\"` — Informational banner for general messages\n * - `\"alert\"` — Warning banner for cautionary messages\n * - `\"error\"` — Error banner for critical issues\n * @default \"default\"\n */\n variant?: KumoBannerVariant;\n}\n\nexport function bannerVariants({\n variant = KUMO_BANNER_DEFAULT_VARIANTS.variant,\n}: KumoBannerVariantsProps = {}) {\n return cn(\n // Base styles (exported as KUMO_BANNER_BASE_STYLES for Figma plugin)\n KUMO_BANNER_BASE_STYLES,\n // Apply variant styles from KUMO_BANNER_VARIANTS\n KUMO_BANNER_VARIANTS.variant[variant].classes,\n );\n}\n\n// Legacy enum for backwards compatibility\nexport enum BannerVariant {\n DEFAULT,\n ALERT,\n ERROR,\n}\n\n/**\n * Banner component props.\n *\n * @example\n * ```tsx\n * <Banner title=\"Update available\" description=\"A new version is ready to install.\" />\n * <Banner variant=\"alert\" title=\"Session expiring\" description=\"Your session will expire soon.\" />\n * <Banner variant=\"error\" title=\"Save failed\" description=\"We couldn't save your changes.\" />\n * ```\n */\nexport interface BannerProps {\n /** Icon element rendered before the banner content (e.g. from `@phosphor-icons/react`). */\n icon?: ReactNode;\n /** Primary heading text for the banner. Use for i18n string injection. */\n title?: string;\n /** Secondary description text displayed below the title. Use for i18n string injection. */\n description?: ReactNode;\n /** @deprecated Use `title` and `description` instead. Will be removed in a future major version. */\n text?: string;\n /** @deprecated Use `title` and `description` instead for better i18n support. */\n children?: ReactNode;\n /**\n * Visual style of the banner.\n * - `\"default\"` — Informational blue banner for general messages\n * - `\"alert\"` — Warning yellow banner for cautionary messages\n * - `\"error\"` — Error red banner for critical issues\n * @default \"default\"\n */\n variant?: KumoBannerVariant;\n /** Additional CSS classes merged via `cn()`. */\n className?: string;\n}\n\n/**\n * Full-width message bar for informational, warning, or error notices.\n * Supports structured title/description for i18n, or simple children for basic usage.\n *\n * @example\n * ```tsx\n * // Structured (recommended for i18n)\n * <Banner\n * variant=\"alert\"\n * icon={<WarningCircle />}\n * title=\"Review required\"\n * description=\"Please review your billing information.\"\n * />\n *\n * // Simple (backwards compatible)\n * <Banner variant=\"alert\" icon={<WarningCircle />}>\n * Review your billing information.\n * </Banner>\n * ```\n */\nexport const Banner = forwardRef<HTMLDivElement, BannerProps>(function Banner(\n {\n icon,\n title,\n description,\n children,\n text,\n variant = KUMO_BANNER_DEFAULT_VARIANTS.variant,\n className,\n },\n ref,\n) {\n const variantConfig = KUMO_BANNER_VARIANTS.variant[variant];\n\n // Structured mode: title and/or description provided\n if (title || description) {\n return (\n <div ref={ref} className={cn(bannerVariants({ variant }), className)}>\n {icon && (\n <span\n className={cn(\n \"shrink-0 flex items-center h-[1.375em]\",\n variantConfig.iconClasses,\n )}\n >\n {icon}\n </span>\n )}\n <div className=\"flex flex-col gap-0.5\">\n {title && <p className=\"font-medium leading-snug\">{title}</p>}\n {description && (\n <div className=\"text-sm leading-snug\">\n {isValidElement(description) ? description : <p>{description}</p>}\n </div>\n )}\n </div>\n </div>\n );\n }\n\n // Legacy mode: children or text prop\n const value = children ?? text;\n const content = isValidElement(value) ? value : <p>{value}</p>;\n\n return (\n <div ref={ref} className={cn(bannerVariants({ variant }), className)}>\n {icon && (\n <span className={cn(\"shrink-0\", variantConfig.iconClasses)}>\n {icon}\n </span>\n )}\n {content}\n </div>\n );\n});\n\nBanner.displayName = \"Banner\";\n"],"names":["KUMO_BANNER_BASE_STYLES","KUMO_BANNER_VARIANTS","KUMO_BANNER_DEFAULT_VARIANTS","bannerVariants","variant","cn","BannerVariant","Banner","forwardRef","icon","title","description","children","text","className","ref","variantConfig","jsxs","jsx","isValidElement","value","content"],"mappings":";;;;AAIO,MAAMA,IACX,uEAGWC,IAAuB;AAAA,EAClC,SAAS;AAAA,IACP,SAAS;AAAA,MACP,SACE;AAAA,MACF,aAAa;AAAA,MACb,aAAa;AAAA,IAAA;AAAA,IAEf,OAAO;AAAA,MACL,SACE;AAAA,MACF,aAAa;AAAA,MACb,aAAa;AAAA,IAAA;AAAA,IAEf,OAAO;AAAA,MACL,SACE;AAAA,MACF,aAAa;AAAA,MACb,aAAa;AAAA,IAAA;AAAA,EACf;AAEJ,GAEaC,IAA+B;AAAA,EAC1C,SAAS;AACX;AAgBO,SAASC,EAAe;AAAA,EAC7B,SAAAC,IAAUF,EAA6B;AACzC,IAA6B,IAAI;AAC/B,SAAOG;AAAA;AAAA,IAELL;AAAA;AAAA,IAEAC,EAAqB,QAAQG,CAAO,EAAE;AAAA,EAAA;AAE1C;AAGO,IAAKE,sBAAAA,OACVA,EAAAA,EAAA,UAAA,CAAA,IAAA,WACAA,EAAAA,EAAA,QAAA,CAAA,IAAA,SACAA,EAAAA,EAAA,QAAA,CAAA,IAAA,SAHUA,IAAAA,KAAA,CAAA,CAAA;AA2DL,MAAMC,IAASC,EAAwC,SAC5D;AAAA,EACE,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,SAAAT,IAAUF,EAA6B;AAAA,EACvC,WAAAY;AACF,GACAC,GACA;AACA,QAAMC,IAAgBf,EAAqB,QAAQG,CAAO;AAG1D,MAAIM,KAASC;AACX,WACE,gBAAAM,EAAC,OAAA,EAAI,KAAAF,GAAU,WAAWV,EAAGF,EAAe,EAAE,SAAAC,EAAA,CAAS,GAAGU,CAAS,GAChE,UAAA;AAAA,MAAAL,KACC,gBAAAS;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAWb;AAAA,YACT;AAAA,YACAW,EAAc;AAAA,UAAA;AAAA,UAGf,UAAAP;AAAA,QAAA;AAAA,MAAA;AAAA,MAGL,gBAAAQ,EAAC,OAAA,EAAI,WAAU,yBACZ,UAAA;AAAA,QAAAP,KAAS,gBAAAQ,EAAC,KAAA,EAAE,WAAU,4BAA4B,UAAAR,GAAM;AAAA,QACxDC,KACC,gBAAAO,EAAC,OAAA,EAAI,WAAU,wBACZ,UAAAC,EAAeR,CAAW,IAAIA,IAAc,gBAAAO,EAAC,KAAA,EAAG,UAAAP,EAAA,CAAY,EAAA,CAC/D;AAAA,MAAA,EAAA,CAEJ;AAAA,IAAA,GACF;AAKJ,QAAMS,IAAQR,KAAYC,GACpBQ,IAAUF,EAAeC,CAAK,IAAIA,IAAQ,gBAAAF,EAAC,OAAG,UAAAE,GAAM;AAE1D,SACE,gBAAAH,EAAC,OAAA,EAAI,KAAAF,GAAU,WAAWV,EAAGF,EAAe,EAAE,SAAAC,EAAA,CAAS,GAAGU,CAAS,GAChE,UAAA;AAAA,IAAAL,KACC,gBAAAS,EAAC,UAAK,WAAWb,EAAG,YAAYW,EAAc,WAAW,GACtD,UAAAP,EAAA,CACH;AAAA,IAEDY;AAAA,EAAA,GACH;AAEJ,CAAC;AAEDd,EAAO,cAAc;"}
|
package/dist/catalog.js
CHANGED