@godxjp/ui 20.2.1 → 22.0.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/dist/app/app-provider.js +2 -1
- package/dist/components/data-display/badge.d.ts +28 -1
- package/dist/components/data-display/badge.js +2 -0
- package/dist/components/data-display/chat-bubble.d.ts +30 -0
- package/dist/components/data-display/chat-bubble.js +229 -0
- package/dist/components/data-display/data-table.d.ts +18 -2
- package/dist/components/data-display/data-table.js +4 -0
- package/dist/components/data-display/descriptions.js +4 -1
- package/dist/components/data-display/index.d.ts +5 -3
- package/dist/components/data-display/index.js +5 -2
- package/dist/components/data-display/popover.d.ts +19 -1
- package/dist/components/data-display/popover.js +12 -3
- package/dist/components/data-display/progress.d.ts +37 -0
- package/dist/components/data-display/progress.js +57 -5
- package/dist/components/data-display/scroll-area.js +26 -1
- package/dist/components/data-display/tree.d.ts +8 -0
- package/dist/components/data-display/tree.js +426 -0
- package/dist/components/data-entry/chat-composer.d.ts +50 -0
- package/dist/components/data-entry/chat-composer.js +163 -0
- package/dist/components/data-entry/chat-suggestion.d.ts +28 -0
- package/dist/components/data-entry/chat-suggestion.js +285 -0
- package/dist/components/data-entry/date-picker.d.ts +10 -3
- package/dist/components/data-entry/date-picker.js +503 -238
- package/dist/components/data-entry/form-field.d.ts +1 -1
- package/dist/components/data-entry/form-field.js +4 -1
- package/dist/components/data-entry/form.js +10 -1
- package/dist/components/data-entry/index.d.ts +4 -6
- package/dist/components/data-entry/index.js +4 -6
- package/dist/components/data-entry/label.d.ts +14 -1
- package/dist/components/data-entry/label.js +6 -1
- package/dist/components/data-entry/radio.d.ts +27 -6
- package/dist/components/data-entry/radio.js +88 -43
- package/dist/components/data-entry/search-select.js +8 -1
- package/dist/components/data-entry/select.js +2 -0
- package/dist/components/data-entry/switch.d.ts +6 -3
- package/dist/components/data-entry/switch.js +34 -11
- package/dist/components/data-entry/textarea.js +3 -1
- package/dist/components/data-entry/tree-utils.d.ts +10 -48
- package/dist/components/data-entry/tree-utils.js +1 -154
- package/dist/components/layout/mobile-shell.d.ts +1 -1
- package/dist/components/layout/mobile-shell.js +2 -0
- package/dist/components/navigation/menubar.d.ts +10 -3
- package/dist/components/navigation/steps.d.ts +1 -1
- package/dist/components/navigation/steps.js +3 -1
- package/dist/components/navigation/tabs-scroll.d.ts +27 -0
- package/dist/components/navigation/tabs-scroll.js +52 -1
- package/dist/components/navigation/tabs.d.ts +2 -2
- package/dist/components/navigation/tabs.js +88 -23
- package/dist/components/ui/index.d.ts +0 -1
- package/dist/components/ui/index.js +0 -1
- package/dist/components/ui/segmented.d.ts +15 -1
- package/dist/components/ui/segmented.js +13 -6
- package/dist/i18n/messages/en.json +48 -2
- package/dist/i18n/messages/ja.json +46 -2
- package/dist/i18n/messages/vi.json +47 -2
- package/dist/lib/datetime/picker-format.d.ts +18 -0
- package/dist/lib/datetime/picker-format.js +35 -1
- package/dist/lib/field-a11y.d.ts +12 -0
- package/dist/lib/field-a11y.js +14 -1
- package/dist/lib/tree.d.ts +53 -0
- package/dist/lib/tree.js +155 -0
- package/dist/props/components/data-display.prop.d.ts +194 -1
- package/dist/props/components/data-entry.prop.d.ts +307 -99
- package/dist/props/components/index.d.ts +1 -1
- package/dist/props/components/layout.prop.d.ts +12 -1
- package/dist/props/components/navigation.prop.d.ts +76 -1
- package/dist/props/registry.d.ts +156 -19
- package/dist/props/registry.js +218 -18
- package/dist/props/vocabulary/data.prop.d.ts +12 -0
- package/dist/props/vocabulary/index.d.ts +2 -2
- package/dist/props/vocabulary/layout.prop.d.ts +11 -0
- package/dist/styles/badge-layout.css +4 -0
- package/dist/styles/card-layout.css +6 -6
- package/dist/styles/control.css +22 -6
- package/dist/styles/data-display-layout.css +385 -68
- package/dist/styles/data-entry-layout.css +64 -0
- package/dist/styles/focus-ring.css +4 -2
- package/dist/styles/navigation-layout.css +25 -0
- package/dist/styles/shell-layout.css +7 -1
- package/dist/styles/table-layout.css +34 -0
- package/dist/tokens/base.css +3 -0
- package/dist/tokens/components/chat-bubble.css +36 -0
- package/dist/tokens/components/chat-composer.css +19 -0
- package/dist/tokens/components/data-display.css +9 -6
- package/dist/tokens/components/descriptions.css +4 -0
- package/dist/tokens/components/navigation.css +6 -0
- package/dist/tokens/components/segmented.css +0 -2
- package/dist/tokens/components/shell.css +3 -0
- package/dist/tokens/components/table.css +3 -0
- package/dist/tokens/components/tree.css +27 -0
- package/dist/tokens/foundation.css +7 -0
- package/docs/COMPONENTS.md +14 -14
- package/docs/CONSUMER-RULES.md +24 -1
- package/docs/FRAME-COVERAGE-LEDGER.md +1 -1
- package/docs/FRAME-COVERAGE-REPORT.md +9 -7
- package/docs/TOKENS.md +65 -0
- package/docs/data-display/badge.tsx +37 -0
- package/docs/data-display/chat-bubble.tsx +397 -0
- package/docs/data-display/data-table/index.tsx +18 -0
- package/docs/data-display/popover.tsx +41 -1
- package/docs/data-display/progress.tsx +28 -0
- package/docs/data-display/timeline.tsx +46 -0
- package/docs/data-display/tree.tsx +394 -0
- package/docs/data-entry/calendar.tsx +2 -2
- package/docs/data-entry/chat-composer.tsx +464 -0
- package/docs/data-entry/chat-suggestion.tsx +301 -0
- package/docs/data-entry/date-picker.tsx +143 -3
- package/docs/data-entry/form/examples/invoice-form.tsx +2 -2
- package/docs/data-entry/form-field/examples/a11y-contract.tsx +3 -5
- package/docs/data-entry/form.tsx +4 -4
- package/docs/data-entry/number-input.tsx +31 -0
- package/docs/data-entry/segmented.tsx +103 -1
- package/docs/layout/mobile-shell.tsx +5 -0
- package/docs/navigation/tabs.tsx +149 -0
- package/docs/roadmap/ai-chat-components.md +207 -0
- package/docs/roadmap/antd-parity.md +155 -0
- package/docs/roadmap/badge-tag-chip-count.md +172 -0
- package/docs/roadmap/list-masonry.md +159 -0
- package/docs/roadmap/parity-audit-data-display-feedback.md +567 -0
- package/docs/roadmap/parity-audit-data-entry.md +357 -0
- package/docs/roadmap/parity-audit-layout-navigation-general.md +464 -0
- package/docs/roadmap/parity-backlog.md +78 -0
- package/docs/roadmap/tree-components.md +151 -0
- package/docs/showcase/acme-portal.tsx +7 -0
- package/docs/showcase/table-tree-rows.tsx +4 -4
- package/package.json +13 -23
- package/scripts/ui-audit.mjs +17 -4
- package/dist/components/data-display/tree-list.d.ts +0 -13
- package/dist/components/data-display/tree-list.js +0 -26
- package/dist/components/data-entry/date-range-picker.d.ts +0 -11
- package/dist/components/data-entry/date-range-picker.js +0 -349
- package/dist/components/data-entry/month-picker.d.ts +0 -10
- package/dist/components/data-entry/month-picker.js +0 -241
- package/dist/components/data-entry/month-range-picker.d.ts +0 -10
- package/dist/components/data-entry/month-range-picker.js +0 -301
- package/dist/components/ui/date-range-picker.d.ts +0 -1
- package/dist/components/ui/date-range-picker.js +0 -2
- package/docs/data-display/tree-list.tsx +0 -107
- package/docs/data-entry/date-range-picker.tsx +0 -175
- package/docs/data-entry/month-picker.tsx +0 -101
- package/docs/data-entry/month-range-picker.tsx +0 -115
package/dist/styles/control.css
CHANGED
|
@@ -452,7 +452,7 @@
|
|
|
452
452
|
fill: currentColor;
|
|
453
453
|
}
|
|
454
454
|
|
|
455
|
-
.ui-switch[aria-invalid="true"] {
|
|
455
|
+
.ui-switch:has(input[aria-invalid="true"]) {
|
|
456
456
|
--tw-ring-shadow: 0 0 0 var(--focus-ring-width) hsl(var(--destructive));
|
|
457
457
|
box-shadow: 0 0 0 var(--focus-ring-width) hsl(var(--destructive));
|
|
458
458
|
}
|
|
@@ -988,6 +988,8 @@
|
|
|
988
988
|
}
|
|
989
989
|
|
|
990
990
|
.ui-segmented {
|
|
991
|
+
|
|
992
|
+
--segmented-item-height: calc(var(--control-height) - var(--segmented-track-padding) * 2);
|
|
991
993
|
display: inline-flex;
|
|
992
994
|
max-width: 100%;
|
|
993
995
|
align-items: stretch;
|
|
@@ -1222,14 +1224,15 @@
|
|
|
1222
1224
|
font-size: var(--font-size-base);
|
|
1223
1225
|
pointer-events: none;
|
|
1224
1226
|
}
|
|
1225
|
-
|
|
1227
|
+
|
|
1228
|
+
[data-slot="number-input-prefix"] {
|
|
1226
1229
|
inset-inline-start: var(--control-padding-x);
|
|
1227
1230
|
}
|
|
1228
1231
|
|
|
1229
|
-
.ui-number-input:has(
|
|
1232
|
+
.ui-number-input:has([data-slot="number-input-prefix"]) .ui-number-input-field {
|
|
1230
1233
|
padding-inline-start: calc(var(--control-padding-x) + 1.25rem);
|
|
1231
1234
|
}
|
|
1232
|
-
|
|
1235
|
+
[data-slot="number-input-suffix"] {
|
|
1233
1236
|
inset-inline-end: calc(var(--control-height) + var(--space-2));
|
|
1234
1237
|
}
|
|
1235
1238
|
.ui-number-input-steppers {
|
|
@@ -1840,6 +1843,13 @@
|
|
|
1840
1843
|
}
|
|
1841
1844
|
}
|
|
1842
1845
|
|
|
1846
|
+
@layer components {
|
|
1847
|
+
|
|
1848
|
+
.ui-chat-suggestion-panel {
|
|
1849
|
+
--popover-surface-inline-size: var(--radix-popover-trigger-width);
|
|
1850
|
+
}
|
|
1851
|
+
}
|
|
1852
|
+
|
|
1843
1853
|
@layer components {
|
|
1844
1854
|
|
|
1845
1855
|
.ui-tree-select-popover {
|
|
@@ -2400,6 +2410,11 @@
|
|
|
2400
2410
|
gap: var(--month-picker-grid-space-gap);
|
|
2401
2411
|
}
|
|
2402
2412
|
|
|
2413
|
+
.ui-month-picker-row,
|
|
2414
|
+
.ui-month-picker-gridcell {
|
|
2415
|
+
display: contents;
|
|
2416
|
+
}
|
|
2417
|
+
|
|
2403
2418
|
.ui-month-picker-cell {
|
|
2404
2419
|
padding-inline: var(--month-picker-cell-space-inline);
|
|
2405
2420
|
font-weight: var(--font-weight-normal);
|
|
@@ -2775,7 +2790,7 @@
|
|
|
2775
2790
|
border-color: hsl(var(--choice-button-solid-background));
|
|
2776
2791
|
}
|
|
2777
2792
|
|
|
2778
|
-
.ui-radio-button
|
|
2793
|
+
.ui-radio-button[data-disabled] {
|
|
2779
2794
|
cursor: not-allowed;
|
|
2780
2795
|
opacity: var(--disabled-opacity);
|
|
2781
2796
|
}
|
|
@@ -2785,7 +2800,7 @@
|
|
|
2785
2800
|
inline-size: 100%;
|
|
2786
2801
|
}
|
|
2787
2802
|
|
|
2788
|
-
.ui-segmented[data-block="true"] > .ui-segmented-item {
|
|
2803
|
+
.ui-segmented[data-block="true"]:not([data-orientation="vertical"]) > .ui-segmented-item {
|
|
2789
2804
|
flex: 1 1 0;
|
|
2790
2805
|
min-inline-size: 0;
|
|
2791
2806
|
justify-content: center;
|
|
@@ -2796,6 +2811,7 @@
|
|
|
2796
2811
|
}
|
|
2797
2812
|
|
|
2798
2813
|
.ui-segmented[data-orientation="vertical"] > .ui-segmented-item {
|
|
2814
|
+
block-size: var(--control-height);
|
|
2799
2815
|
justify-content: flex-start;
|
|
2800
2816
|
}
|
|
2801
2817
|
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
}
|
|
144
144
|
|
|
145
145
|
.ui-progress-track {
|
|
146
|
-
height:
|
|
146
|
+
height: var(--progress-meter-block-size);
|
|
147
147
|
overflow: hidden;
|
|
148
148
|
border-radius: var(--radius-pill);
|
|
149
149
|
background: var(--progress-track-background, hsl(var(--secondary)));
|
|
@@ -152,19 +152,19 @@
|
|
|
152
152
|
.ui-progress-bar {
|
|
153
153
|
height: 100%;
|
|
154
154
|
border-radius: inherit;
|
|
155
|
-
background: var(--progress-fill-background, hsl(var(--success)));
|
|
155
|
+
background: var(--progress-fill-background, hsl(var(--mark-success)));
|
|
156
156
|
}
|
|
157
157
|
|
|
158
158
|
.ui-progress[data-tone="warning"] .ui-progress-bar {
|
|
159
|
-
background: hsl(var(--warning));
|
|
159
|
+
background: hsl(var(--mark-warning));
|
|
160
160
|
}
|
|
161
161
|
|
|
162
162
|
.ui-progress[data-tone="destructive"] .ui-progress-bar {
|
|
163
|
-
background: hsl(var(--destructive));
|
|
163
|
+
background: hsl(var(--mark-destructive));
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
.ui-progress[data-over] .ui-progress-bar {
|
|
167
|
-
background-color: hsl(var(--destructive));
|
|
167
|
+
background-color: hsl(var(--mark-destructive));
|
|
168
168
|
background-image: repeating-linear-gradient(
|
|
169
169
|
45deg,
|
|
170
170
|
hsl(var(--destructive-foreground) / 0.4) 0,
|
|
@@ -180,20 +180,28 @@
|
|
|
180
180
|
border-radius: var(--progress-breakdown-radius);
|
|
181
181
|
}
|
|
182
182
|
|
|
183
|
+
.ui-progress[data-size="sm"] .ui-progress-track {
|
|
184
|
+
height: var(--progress-meter-block-size-sm);
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
.ui-progress[data-breakdown][data-size="sm"] .ui-progress-track {
|
|
188
|
+
height: var(--progress-breakdown-block-size-sm);
|
|
189
|
+
}
|
|
190
|
+
|
|
183
191
|
.ui-progress-segment {
|
|
184
192
|
height: 100%;
|
|
185
193
|
}
|
|
186
194
|
|
|
187
195
|
.ui-progress-segment[data-tone="success"] {
|
|
188
|
-
background: hsl(var(--success));
|
|
196
|
+
background: hsl(var(--mark-success));
|
|
189
197
|
}
|
|
190
198
|
|
|
191
199
|
.ui-progress-segment[data-tone="warning"] {
|
|
192
|
-
background: hsl(var(--warning));
|
|
200
|
+
background: hsl(var(--mark-warning));
|
|
193
201
|
}
|
|
194
202
|
|
|
195
203
|
.ui-progress-segment[data-tone="destructive"] {
|
|
196
|
-
background: hsl(var(--destructive));
|
|
204
|
+
background: hsl(var(--mark-destructive));
|
|
197
205
|
}
|
|
198
206
|
|
|
199
207
|
.ui-progress-label {
|
|
@@ -201,6 +209,61 @@
|
|
|
201
209
|
font-size: var(--progress-label-font-size);
|
|
202
210
|
}
|
|
203
211
|
|
|
212
|
+
.ui-progress[data-shape="ring"] {
|
|
213
|
+
display: inline-flex;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
.ui-progress-ring {
|
|
217
|
+
position: relative;
|
|
218
|
+
display: inline-grid;
|
|
219
|
+
inline-size: var(--progress-ring-size);
|
|
220
|
+
block-size: var(--progress-ring-size);
|
|
221
|
+
place-items: center;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
.ui-progress[data-size="sm"] .ui-progress-ring {
|
|
225
|
+
--progress-ring-size: var(--progress-ring-size-sm);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
.ui-progress-ring-svg {
|
|
229
|
+
position: absolute;
|
|
230
|
+
inset: 0;
|
|
231
|
+
inline-size: 100%;
|
|
232
|
+
block-size: 100%;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
.ui-progress-ring-track,
|
|
236
|
+
.ui-progress-ring-indicator {
|
|
237
|
+
fill: none;
|
|
238
|
+
stroke-width: var(--progress-ring-border-width);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.ui-progress-ring-track {
|
|
242
|
+
stroke: var(--progress-track-background, hsl(var(--secondary)));
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
.ui-progress-ring-indicator {
|
|
246
|
+
stroke: var(--progress-fill-background, hsl(var(--mark-success)));
|
|
247
|
+
|
|
248
|
+
stroke-linecap: butt;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
.ui-progress[data-tone="warning"] .ui-progress-ring-indicator {
|
|
252
|
+
stroke: hsl(var(--mark-warning));
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.ui-progress[data-tone="destructive"] .ui-progress-ring-indicator {
|
|
256
|
+
stroke: hsl(var(--mark-destructive));
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
.ui-progress-ring-label {
|
|
260
|
+
position: relative;
|
|
261
|
+
color: hsl(var(--foreground));
|
|
262
|
+
font-size: var(--progress-ring-label-font-size);
|
|
263
|
+
font-variant-numeric: tabular-nums;
|
|
264
|
+
line-height: 1;
|
|
265
|
+
}
|
|
266
|
+
|
|
204
267
|
.ui-legend {
|
|
205
268
|
display: flex;
|
|
206
269
|
flex-wrap: wrap;
|
|
@@ -227,23 +290,23 @@
|
|
|
227
290
|
}
|
|
228
291
|
|
|
229
292
|
.ui-legend-swatch[data-tone="default"] {
|
|
230
|
-
background: hsl(var(--primary));
|
|
293
|
+
background: hsl(var(--mark-primary));
|
|
231
294
|
}
|
|
232
295
|
|
|
233
296
|
.ui-legend-swatch[data-tone="success"] {
|
|
234
|
-
background: hsl(var(--success));
|
|
297
|
+
background: hsl(var(--mark-success));
|
|
235
298
|
}
|
|
236
299
|
|
|
237
300
|
.ui-legend-swatch[data-tone="warning"] {
|
|
238
|
-
background: hsl(var(--warning));
|
|
301
|
+
background: hsl(var(--mark-warning));
|
|
239
302
|
}
|
|
240
303
|
|
|
241
304
|
.ui-legend-swatch[data-tone="destructive"] {
|
|
242
|
-
background: hsl(var(--destructive));
|
|
305
|
+
background: hsl(var(--mark-destructive));
|
|
243
306
|
}
|
|
244
307
|
|
|
245
308
|
.ui-legend-swatch[data-tone="info"] {
|
|
246
|
-
background: hsl(var(--info));
|
|
309
|
+
background: hsl(var(--mark-info));
|
|
247
310
|
}
|
|
248
311
|
|
|
249
312
|
.ui-legend-swatch[data-tone="muted"],
|
|
@@ -251,61 +314,6 @@
|
|
|
251
314
|
background: hsl(var(--muted-foreground));
|
|
252
315
|
}
|
|
253
316
|
|
|
254
|
-
.ui-tree-list {
|
|
255
|
-
display: flex;
|
|
256
|
-
flex-direction: column;
|
|
257
|
-
gap: var(--space-1);
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
.ui-tree-item {
|
|
261
|
-
display: flex;
|
|
262
|
-
min-height: 2.25rem;
|
|
263
|
-
align-items: center;
|
|
264
|
-
gap: var(--space-2);
|
|
265
|
-
padding-inline: var(--space-3);
|
|
266
|
-
border: 1px solid hsl(var(--border));
|
|
267
|
-
border-radius: var(--radius);
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
.ui-tree-item[data-active="true"] {
|
|
271
|
-
border-color: var(--tree-item-active-border, hsl(var(--primary) / 0.3));
|
|
272
|
-
background: var(--tree-item-active-background, hsl(var(--primary) / 0.05));
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
.ui-tree-item {
|
|
276
|
-
margin-inline-start: calc(var(--tree-item-depth, 0) * var(--tree-item-indent-width));
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
.ui-tree-item > svg {
|
|
280
|
-
width: 1rem;
|
|
281
|
-
height: 1rem;
|
|
282
|
-
color: hsl(var(--primary));
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
.ui-tree-item > svg:first-child {
|
|
286
|
-
width: 0.75rem;
|
|
287
|
-
height: 0.75rem;
|
|
288
|
-
color: hsl(var(--muted-foreground));
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
.ui-tree-item-body {
|
|
292
|
-
min-width: 0;
|
|
293
|
-
flex: 1;
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
.ui-tree-item-title {
|
|
297
|
-
font-family: var(--font-family-mono);
|
|
298
|
-
font-size: var(--tree-item-title-font-size);
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
.ui-tree-item-description {
|
|
302
|
-
overflow: hidden;
|
|
303
|
-
color: hsl(var(--muted-foreground));
|
|
304
|
-
font-size: var(--tree-item-description-font-size);
|
|
305
|
-
text-overflow: ellipsis;
|
|
306
|
-
white-space: nowrap;
|
|
307
|
-
}
|
|
308
|
-
|
|
309
317
|
.ui-timeline {
|
|
310
318
|
display: flex;
|
|
311
319
|
flex-direction: column;
|
|
@@ -395,6 +403,10 @@
|
|
|
395
403
|
}
|
|
396
404
|
|
|
397
405
|
.ui-timeline-title {
|
|
406
|
+
|
|
407
|
+
min-inline-size: 0;
|
|
408
|
+
flex: 1 1 0%;
|
|
409
|
+
|
|
398
410
|
font-weight: var(--font-weight-medium);
|
|
399
411
|
}
|
|
400
412
|
|
|
@@ -795,6 +807,10 @@
|
|
|
795
807
|
|
|
796
808
|
@layer components {
|
|
797
809
|
|
|
810
|
+
[data-slot="scroll-area-viewport"][data-orientation="vertical"] > * {
|
|
811
|
+
display: block !important;
|
|
812
|
+
}
|
|
813
|
+
|
|
798
814
|
.ui-scroll-area-bar {
|
|
799
815
|
padding: var(--scroll-area-bar-padding);
|
|
800
816
|
}
|
|
@@ -1399,3 +1415,304 @@
|
|
|
1399
1415
|
font-size: var(--prose-code-font-size);
|
|
1400
1416
|
}
|
|
1401
1417
|
}
|
|
1418
|
+
|
|
1419
|
+
@layer components {
|
|
1420
|
+
|
|
1421
|
+
.ui-chat-bubble {
|
|
1422
|
+
display: flex;
|
|
1423
|
+
align-items: flex-start;
|
|
1424
|
+
gap: var(--chat-bubble-gap);
|
|
1425
|
+
min-inline-size: 0;
|
|
1426
|
+
}
|
|
1427
|
+
|
|
1428
|
+
.ui-chat-bubble[data-placement="end"] {
|
|
1429
|
+
flex-direction: row-reverse;
|
|
1430
|
+
}
|
|
1431
|
+
|
|
1432
|
+
.ui-chat-bubble-avatar {
|
|
1433
|
+
display: inline-flex;
|
|
1434
|
+
flex: none;
|
|
1435
|
+
inline-size: var(--chat-bubble-avatar-size, var(--control-height));
|
|
1436
|
+
block-size: var(--chat-bubble-avatar-size, var(--control-height));
|
|
1437
|
+
}
|
|
1438
|
+
|
|
1439
|
+
.ui-chat-bubble-avatar > .ui-avatar {
|
|
1440
|
+
inline-size: 100%;
|
|
1441
|
+
block-size: 100%;
|
|
1442
|
+
}
|
|
1443
|
+
|
|
1444
|
+
.ui-chat-bubble-column {
|
|
1445
|
+
display: flex;
|
|
1446
|
+
min-inline-size: 0;
|
|
1447
|
+
max-inline-size: min(var(--chat-bubble-max-inline-size), 100%);
|
|
1448
|
+
flex-direction: column;
|
|
1449
|
+
gap: var(--space-1);
|
|
1450
|
+
}
|
|
1451
|
+
|
|
1452
|
+
.ui-chat-bubble[data-placement="end"] .ui-chat-bubble-column {
|
|
1453
|
+
align-items: flex-end;
|
|
1454
|
+
}
|
|
1455
|
+
|
|
1456
|
+
.ui-chat-bubble-body {
|
|
1457
|
+
min-inline-size: 0;
|
|
1458
|
+
border-radius: var(--chat-bubble-radius);
|
|
1459
|
+
padding-block: var(--chat-bubble-padding-block);
|
|
1460
|
+
padding-inline: var(--chat-bubble-padding-inline);
|
|
1461
|
+
background: var(--chat-bubble-background, hsl(var(--muted)));
|
|
1462
|
+
color: var(--chat-bubble-foreground, hsl(var(--foreground)));
|
|
1463
|
+
|
|
1464
|
+
overflow-wrap: anywhere;
|
|
1465
|
+
}
|
|
1466
|
+
|
|
1467
|
+
.ui-chat-bubble[data-variant="outlined"] .ui-chat-bubble-body {
|
|
1468
|
+
border: var(--stroke-hairline) solid var(--chat-bubble-border-color, hsl(var(--border)));
|
|
1469
|
+
background: transparent;
|
|
1470
|
+
}
|
|
1471
|
+
|
|
1472
|
+
.ui-chat-bubble[data-variant="borderless"] .ui-chat-bubble-body {
|
|
1473
|
+
background: transparent;
|
|
1474
|
+
}
|
|
1475
|
+
|
|
1476
|
+
.ui-chat-bubble[data-variant="borderless"][data-tone="default"] .ui-chat-bubble-body {
|
|
1477
|
+
padding-inline: 0;
|
|
1478
|
+
}
|
|
1479
|
+
|
|
1480
|
+
.ui-chat-bubble[data-placement="end"][data-variant="filled"] .ui-chat-bubble-body {
|
|
1481
|
+
background: var(--chat-bubble-end-background, hsl(var(--primary) / 0.1));
|
|
1482
|
+
color: var(--chat-bubble-end-foreground, hsl(var(--foreground)));
|
|
1483
|
+
}
|
|
1484
|
+
|
|
1485
|
+
.ui-chat-bubble[data-size="xs"] {
|
|
1486
|
+
--chat-bubble-padding-block: var(--space-1);
|
|
1487
|
+
--chat-bubble-padding-inline: var(--space-2);
|
|
1488
|
+
}
|
|
1489
|
+
|
|
1490
|
+
.ui-chat-bubble[data-size="sm"] {
|
|
1491
|
+
--chat-bubble-padding-block: var(--space-1);
|
|
1492
|
+
--chat-bubble-padding-inline: var(--space-3);
|
|
1493
|
+
}
|
|
1494
|
+
|
|
1495
|
+
.ui-chat-bubble[data-size="lg"] {
|
|
1496
|
+
--chat-bubble-padding-block: var(--space-3);
|
|
1497
|
+
--chat-bubble-padding-inline: var(--space-4);
|
|
1498
|
+
}
|
|
1499
|
+
|
|
1500
|
+
.ui-chat-bubble[data-tone="info"] .ui-chat-bubble-body {
|
|
1501
|
+
border: var(--stroke-hairline) solid hsl(var(--info) / var(--chat-bubble-tone-border-alpha));
|
|
1502
|
+
background: hsl(var(--info) / var(--chat-bubble-tone-background-alpha));
|
|
1503
|
+
}
|
|
1504
|
+
|
|
1505
|
+
.ui-chat-bubble[data-tone="success"] .ui-chat-bubble-body {
|
|
1506
|
+
border: var(--stroke-hairline) solid hsl(var(--success) / var(--chat-bubble-tone-border-alpha));
|
|
1507
|
+
background: hsl(var(--success) / var(--chat-bubble-tone-background-alpha));
|
|
1508
|
+
}
|
|
1509
|
+
|
|
1510
|
+
.ui-chat-bubble[data-tone="warning"] .ui-chat-bubble-body {
|
|
1511
|
+
border: var(--stroke-hairline) solid hsl(var(--warning) / var(--chat-bubble-tone-border-alpha));
|
|
1512
|
+
background: hsl(var(--warning) / var(--chat-bubble-tone-background-alpha));
|
|
1513
|
+
}
|
|
1514
|
+
|
|
1515
|
+
.ui-chat-bubble[data-tone="destructive"] .ui-chat-bubble-body {
|
|
1516
|
+
border: var(--stroke-hairline) solid
|
|
1517
|
+
hsl(var(--destructive) / var(--chat-bubble-tone-border-alpha));
|
|
1518
|
+
background: hsl(var(--destructive) / var(--chat-bubble-tone-background-alpha));
|
|
1519
|
+
}
|
|
1520
|
+
|
|
1521
|
+
.ui-chat-bubble-caret {
|
|
1522
|
+
display: inline-block;
|
|
1523
|
+
inline-size: var(--chat-bubble-typing-caret-width);
|
|
1524
|
+
block-size: var(--chat-bubble-typing-caret-height);
|
|
1525
|
+
margin-inline-start: var(--space-1);
|
|
1526
|
+
background: var(--chat-bubble-typing-caret-color, hsl(var(--muted-foreground)));
|
|
1527
|
+
vertical-align: text-bottom;
|
|
1528
|
+
}
|
|
1529
|
+
|
|
1530
|
+
.ui-chat-bubble-skeleton {
|
|
1531
|
+
display: grid;
|
|
1532
|
+
gap: var(--skeleton-row-gap);
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
.ui-chat-bubble-skeleton-line {
|
|
1536
|
+
block-size: var(--skeleton-block-height);
|
|
1537
|
+
inline-size: var(--chat-bubble-max-inline-size);
|
|
1538
|
+
max-inline-size: 100%;
|
|
1539
|
+
}
|
|
1540
|
+
|
|
1541
|
+
.ui-chat-bubble-skeleton-line--short {
|
|
1542
|
+
inline-size: var(--chat-bubble-skeleton-short-inline-size);
|
|
1543
|
+
}
|
|
1544
|
+
|
|
1545
|
+
.ui-chat-bubble-list {
|
|
1546
|
+
position: relative;
|
|
1547
|
+
display: flex;
|
|
1548
|
+
min-block-size: 0;
|
|
1549
|
+
flex-direction: column;
|
|
1550
|
+
|
|
1551
|
+
block-size: 100%;
|
|
1552
|
+
}
|
|
1553
|
+
|
|
1554
|
+
.ui-chat-bubble-list-scroller {
|
|
1555
|
+
min-block-size: 0;
|
|
1556
|
+
flex: 1 1 auto;
|
|
1557
|
+
}
|
|
1558
|
+
|
|
1559
|
+
.ui-chat-bubble-list-feed {
|
|
1560
|
+
display: flex;
|
|
1561
|
+
flex-direction: column;
|
|
1562
|
+
gap: var(--chat-bubble-list-gap);
|
|
1563
|
+
}
|
|
1564
|
+
|
|
1565
|
+
.ui-chat-bubble-list-jump {
|
|
1566
|
+
position: absolute;
|
|
1567
|
+
display: flex;
|
|
1568
|
+
inset-inline: 0;
|
|
1569
|
+
inset-block-end: var(--chat-bubble-list-jump-inset);
|
|
1570
|
+
justify-content: center;
|
|
1571
|
+
pointer-events: none;
|
|
1572
|
+
}
|
|
1573
|
+
|
|
1574
|
+
.ui-chat-bubble-list-jump > * {
|
|
1575
|
+
pointer-events: auto;
|
|
1576
|
+
}
|
|
1577
|
+
}
|
|
1578
|
+
|
|
1579
|
+
@layer components {
|
|
1580
|
+
.ui-tree {
|
|
1581
|
+
display: flex;
|
|
1582
|
+
flex-direction: column;
|
|
1583
|
+
font-size: var(--tree-node-font-size);
|
|
1584
|
+
}
|
|
1585
|
+
|
|
1586
|
+
.ui-tree-node {
|
|
1587
|
+
display: flex;
|
|
1588
|
+
align-items: center;
|
|
1589
|
+
gap: var(--tree-node-gap);
|
|
1590
|
+
|
|
1591
|
+
min-block-size: var(--tree-node-height, var(--control-height));
|
|
1592
|
+
border-radius: var(--tree-node-radius);
|
|
1593
|
+
padding-inline: var(--tree-node-padding-inline);
|
|
1594
|
+
|
|
1595
|
+
padding-inline-start: calc(
|
|
1596
|
+
var(--tree-node-padding-inline) + var(--tree-node-level, 0) * var(--tree-indent-width)
|
|
1597
|
+
);
|
|
1598
|
+
cursor: pointer;
|
|
1599
|
+
}
|
|
1600
|
+
|
|
1601
|
+
.ui-tree-node:hover {
|
|
1602
|
+
background: var(--tree-node-hover-background, hsl(var(--accent)));
|
|
1603
|
+
}
|
|
1604
|
+
|
|
1605
|
+
.ui-tree-node[data-selected="true"] {
|
|
1606
|
+
background: var(--tree-node-selected-background, hsl(var(--accent)));
|
|
1607
|
+
color: var(--tree-node-selected-foreground, hsl(var(--accent-foreground)));
|
|
1608
|
+
font-weight: var(--font-weight-medium);
|
|
1609
|
+
}
|
|
1610
|
+
|
|
1611
|
+
.ui-tree-node[data-disabled] {
|
|
1612
|
+
cursor: not-allowed;
|
|
1613
|
+
opacity: var(--disabled-opacity);
|
|
1614
|
+
}
|
|
1615
|
+
|
|
1616
|
+
.ui-tree-switcher {
|
|
1617
|
+
display: inline-flex;
|
|
1618
|
+
flex: none;
|
|
1619
|
+
align-items: center;
|
|
1620
|
+
justify-content: center;
|
|
1621
|
+
inline-size: var(--tree-switcher-size);
|
|
1622
|
+
block-size: var(--tree-switcher-size);
|
|
1623
|
+
color: var(--tree-switcher-color, hsl(var(--muted-foreground)));
|
|
1624
|
+
}
|
|
1625
|
+
|
|
1626
|
+
.ui-tree-switcher > svg {
|
|
1627
|
+
inline-size: var(--tree-icon-size);
|
|
1628
|
+
block-size: var(--tree-icon-size);
|
|
1629
|
+
}
|
|
1630
|
+
|
|
1631
|
+
.ui-tree-switcher[data-leaf] {
|
|
1632
|
+
cursor: default;
|
|
1633
|
+
}
|
|
1634
|
+
|
|
1635
|
+
.ui-tree-check {
|
|
1636
|
+
display: inline-flex;
|
|
1637
|
+
flex: none;
|
|
1638
|
+
align-items: center;
|
|
1639
|
+
}
|
|
1640
|
+
|
|
1641
|
+
.ui-tree-icon {
|
|
1642
|
+
display: inline-flex;
|
|
1643
|
+
flex: none;
|
|
1644
|
+
align-items: center;
|
|
1645
|
+
color: hsl(var(--muted-foreground));
|
|
1646
|
+
}
|
|
1647
|
+
|
|
1648
|
+
.ui-tree-icon > svg {
|
|
1649
|
+
inline-size: var(--tree-icon-size);
|
|
1650
|
+
block-size: var(--tree-icon-size);
|
|
1651
|
+
}
|
|
1652
|
+
|
|
1653
|
+
.ui-tree-label {
|
|
1654
|
+
overflow: hidden;
|
|
1655
|
+
flex: 1;
|
|
1656
|
+
text-overflow: ellipsis;
|
|
1657
|
+
white-space: nowrap;
|
|
1658
|
+
}
|
|
1659
|
+
|
|
1660
|
+
.ui-tree-group {
|
|
1661
|
+
display: flex;
|
|
1662
|
+
flex-direction: column;
|
|
1663
|
+
}
|
|
1664
|
+
|
|
1665
|
+
.ui-tree[data-show-line="true"] .ui-tree-group {
|
|
1666
|
+
position: relative;
|
|
1667
|
+
}
|
|
1668
|
+
|
|
1669
|
+
.ui-tree[data-show-line="true"] .ui-tree-group::before {
|
|
1670
|
+
position: absolute;
|
|
1671
|
+
inset-block: 0;
|
|
1672
|
+
|
|
1673
|
+
inset-inline-start: calc(
|
|
1674
|
+
var(--tree-node-padding-inline) + (var(--tree-node-level, 1) - 1) * var(--tree-indent-width) +
|
|
1675
|
+
var(--tree-switcher-size) / 2
|
|
1676
|
+
);
|
|
1677
|
+
border-inline-start: 1px solid var(--tree-line-color, hsl(var(--border)));
|
|
1678
|
+
content: "";
|
|
1679
|
+
}
|
|
1680
|
+
|
|
1681
|
+
.ui-tree-loading {
|
|
1682
|
+
display: flex;
|
|
1683
|
+
align-items: center;
|
|
1684
|
+
min-block-size: var(--tree-node-height, var(--control-height));
|
|
1685
|
+
padding-inline-start: calc(
|
|
1686
|
+
var(--tree-node-padding-inline) + var(--tree-node-level, 0) * var(--tree-indent-width) +
|
|
1687
|
+
var(--tree-switcher-size)
|
|
1688
|
+
);
|
|
1689
|
+
}
|
|
1690
|
+
|
|
1691
|
+
.ui-tree-loading-bar {
|
|
1692
|
+
block-size: var(--tree-icon-size);
|
|
1693
|
+
inline-size: var(--tree-loading-bar-inline-size);
|
|
1694
|
+
}
|
|
1695
|
+
|
|
1696
|
+
.ui-tree-empty {
|
|
1697
|
+
padding-block: var(--space-4);
|
|
1698
|
+
padding-inline: var(--tree-node-padding-inline);
|
|
1699
|
+
color: hsl(var(--muted-foreground));
|
|
1700
|
+
}
|
|
1701
|
+
|
|
1702
|
+
.ui-tree[data-size="xs"] {
|
|
1703
|
+
--tree-node-height: var(--control-height-xs);
|
|
1704
|
+
--tree-node-font-size: var(--font-size-xs);
|
|
1705
|
+
}
|
|
1706
|
+
|
|
1707
|
+
.ui-tree[data-size="sm"] {
|
|
1708
|
+
--tree-node-height: var(--control-height-sm);
|
|
1709
|
+
}
|
|
1710
|
+
|
|
1711
|
+
.ui-tree[data-size="lg"] {
|
|
1712
|
+
--tree-node-height: var(--control-height-lg);
|
|
1713
|
+
}
|
|
1714
|
+
|
|
1715
|
+
.ui-tree[data-variant="directory"] .ui-tree-node[data-selected="true"] {
|
|
1716
|
+
background: var(--tree-node-selected-background, hsl(var(--primary) / 0.12));
|
|
1717
|
+
}
|
|
1718
|
+
}
|
|
@@ -480,4 +480,68 @@
|
|
|
480
480
|
max-block-size: var(--branch-scope-picker-list-max-height);
|
|
481
481
|
overflow-y: auto;
|
|
482
482
|
}
|
|
483
|
+
|
|
484
|
+
.ui-chat-composer {
|
|
485
|
+
display: flex;
|
|
486
|
+
flex-direction: column;
|
|
487
|
+
gap: var(--chat-composer-gap);
|
|
488
|
+
inline-size: 100%;
|
|
489
|
+
padding-block: var(--chat-composer-padding-block);
|
|
490
|
+
padding-inline: var(--chat-composer-padding-inline);
|
|
491
|
+
border-width: var(--control-border-width);
|
|
492
|
+
border-style: solid;
|
|
493
|
+
border-radius: var(--chat-composer-radius, var(--control-radius));
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
.ui-chat-composer[data-disabled] {
|
|
497
|
+
cursor: not-allowed;
|
|
498
|
+
opacity: var(--disabled-opacity);
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
.ui-chat-composer-header {
|
|
502
|
+
padding-block-end: var(--chat-composer-gap);
|
|
503
|
+
border-block-end: var(
|
|
504
|
+
--chat-composer-header-border,
|
|
505
|
+
var(--control-border-width) solid hsl(var(--border))
|
|
506
|
+
);
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
.ui-chat-composer-row {
|
|
510
|
+
display: flex;
|
|
511
|
+
align-items: flex-end;
|
|
512
|
+
gap: var(--chat-composer-row-gap);
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
.ui-chat-composer-prefix,
|
|
516
|
+
.ui-chat-composer-actions {
|
|
517
|
+
display: flex;
|
|
518
|
+
flex-shrink: 0;
|
|
519
|
+
align-items: center;
|
|
520
|
+
gap: var(--chat-composer-row-gap);
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
.ui-chat-composer-field {
|
|
524
|
+
flex: 1 1 auto;
|
|
525
|
+
min-inline-size: 0;
|
|
526
|
+
}
|
|
527
|
+
|
|
528
|
+
.ui-chat-composer .ui-textarea-autogrow::after {
|
|
529
|
+
min-block-size: var(--chat-composer-min-height, var(--control-height));
|
|
530
|
+
max-block-size: var(--chat-composer-max-height, calc(var(--control-height) * 5));
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
.ui-chat-composer-footer {
|
|
534
|
+
font-size: var(--chat-composer-footer-font-size);
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
@layer components {
|
|
540
|
+
|
|
541
|
+
.ui-chat-suggestion-item-text {
|
|
542
|
+
display: flex;
|
|
543
|
+
flex-direction: column;
|
|
544
|
+
min-inline-size: 0;
|
|
545
|
+
text-align: start;
|
|
546
|
+
}
|
|
483
547
|
}
|