@godxjp/ui 19.6.0 → 20.1.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.
Files changed (326) hide show
  1. package/README.md +8 -2
  2. package/dist/app/theme-axes.d.ts +2 -0
  3. package/dist/app/theme-axes.js +45 -0
  4. package/dist/components/charts/chart-cartesian.d.ts +2 -1
  5. package/dist/components/charts/chart-cartesian.js +52 -3
  6. package/dist/components/charts/chart-category-axis.d.ts +55 -0
  7. package/dist/components/charts/chart-category-axis.js +93 -0
  8. package/dist/components/charts/chart-frame.d.ts +10 -1
  9. package/dist/components/charts/chart-frame.js +19 -3
  10. package/dist/components/charts/compact-bar-trend.d.ts +1 -1
  11. package/dist/components/charts/compact-bar-trend.js +2 -0
  12. package/dist/components/charts/pie-chart.d.ts +1 -1
  13. package/dist/components/charts/pie-chart.js +12 -1
  14. package/dist/components/charts/recharts-peer.d.ts +49 -0
  15. package/dist/components/charts/recharts-peer.js +45 -0
  16. package/dist/components/data-display/card.d.ts +14 -3
  17. package/dist/components/data-display/card.js +22 -4
  18. package/dist/components/data-display/code-block.js +6 -2
  19. package/dist/components/data-display/collapsible.d.ts +23 -4
  20. package/dist/components/data-display/collapsible.js +119 -4
  21. package/dist/components/data-display/data-table.d.ts +39 -4
  22. package/dist/components/data-display/data-table.js +802 -270
  23. package/dist/components/data-display/descriptions.d.ts +27 -6
  24. package/dist/components/data-display/descriptions.js +58 -17
  25. package/dist/components/data-display/index.d.ts +5 -1
  26. package/dist/components/data-display/index.js +4 -0
  27. package/dist/components/data-display/legend.d.ts +15 -0
  28. package/dist/components/data-display/legend.js +11 -0
  29. package/dist/components/data-display/list-row.d.ts +10 -1
  30. package/dist/components/data-display/list-row.js +8 -2
  31. package/dist/components/data-display/popover.d.ts +60 -7
  32. package/dist/components/data-display/popover.js +268 -39
  33. package/dist/components/data-display/progress.d.ts +50 -2
  34. package/dist/components/data-display/progress.js +57 -9
  35. package/dist/components/data-display/range-timeline.d.ts +38 -0
  36. package/dist/components/data-display/range-timeline.js +161 -0
  37. package/dist/components/data-display/scroll-area.js +13 -2
  38. package/dist/components/data-display/service-launcher-card.js +10 -10
  39. package/dist/components/data-display/table.d.ts +11 -3
  40. package/dist/components/data-display/table.js +48 -18
  41. package/dist/components/data-display/tree-list.js +4 -9
  42. package/dist/components/data-entry/calendar.d.ts +2 -2
  43. package/dist/components/data-entry/calendar.js +79 -33
  44. package/dist/components/data-entry/cascader.d.ts +1 -1
  45. package/dist/components/data-entry/cascader.js +188 -24
  46. package/dist/components/data-entry/checkbox.d.ts +19 -6
  47. package/dist/components/data-entry/checkbox.js +55 -16
  48. package/dist/components/data-entry/choice-option.d.ts +1 -1
  49. package/dist/components/data-entry/color-picker.d.ts +1 -1
  50. package/dist/components/data-entry/color-picker.js +17 -5
  51. package/dist/components/data-entry/control-appearance.d.ts +64 -0
  52. package/dist/components/data-entry/control-appearance.js +39 -0
  53. package/dist/components/data-entry/control-surface.d.ts +61 -0
  54. package/dist/components/data-entry/control-surface.js +39 -0
  55. package/dist/components/data-entry/date-picker.d.ts +1 -1
  56. package/dist/components/data-entry/date-picker.js +344 -113
  57. package/dist/components/data-entry/date-range-picker.d.ts +2 -2
  58. package/dist/components/data-entry/date-range-picker.js +278 -140
  59. package/dist/components/data-entry/field.js +0 -1
  60. package/dist/components/data-entry/form-field.d.ts +1 -1
  61. package/dist/components/data-entry/form-field.js +39 -4
  62. package/dist/components/data-entry/form.d.ts +4 -0
  63. package/dist/components/data-entry/form.js +5 -3
  64. package/dist/components/data-entry/index.d.ts +7 -3
  65. package/dist/components/data-entry/index.js +10 -1
  66. package/dist/components/data-entry/input-otp.d.ts +1 -1
  67. package/dist/components/data-entry/input.d.ts +12 -34
  68. package/dist/components/data-entry/input.js +92 -24
  69. package/dist/components/data-entry/label.d.ts +3 -2
  70. package/dist/components/data-entry/label.js +23 -10
  71. package/dist/components/data-entry/month-picker.d.ts +2 -2
  72. package/dist/components/data-entry/month-picker.js +47 -10
  73. package/dist/components/data-entry/month-range-picker.d.ts +2 -2
  74. package/dist/components/data-entry/month-range-picker.js +51 -11
  75. package/dist/components/data-entry/number-input.d.ts +7 -0
  76. package/dist/components/data-entry/number-input.js +147 -98
  77. package/dist/components/data-entry/password-input.d.ts +1 -1
  78. package/dist/components/data-entry/radio.d.ts +1 -1
  79. package/dist/components/data-entry/radio.js +61 -13
  80. package/dist/components/data-entry/search-input.d.ts +1 -1
  81. package/dist/components/data-entry/search-input.js +16 -2
  82. package/dist/components/data-entry/search-select.d.ts +2 -2
  83. package/dist/components/data-entry/search-select.js +209 -78
  84. package/dist/components/data-entry/select.d.ts +22 -4
  85. package/dist/components/data-entry/select.js +215 -163
  86. package/dist/components/data-entry/slider.d.ts +9 -1
  87. package/dist/components/data-entry/slider.js +87 -9
  88. package/dist/components/data-entry/switch.d.ts +3 -0
  89. package/dist/components/data-entry/switch.js +29 -3
  90. package/dist/components/data-entry/textarea.d.ts +14 -56
  91. package/dist/components/data-entry/textarea.js +80 -33
  92. package/dist/components/data-entry/time-picker.d.ts +2 -2
  93. package/dist/components/data-entry/time-picker.js +333 -109
  94. package/dist/components/data-entry/time-range-picker.d.ts +5 -0
  95. package/dist/components/data-entry/time-range-picker.js +89 -0
  96. package/dist/components/data-entry/transfer.d.ts +1 -1
  97. package/dist/components/data-entry/transfer.js +99 -31
  98. package/dist/components/data-entry/tree-select-strategy.d.ts +1 -1
  99. package/dist/components/data-entry/tree-select.d.ts +1 -1
  100. package/dist/components/data-entry/tree-select.js +197 -92
  101. package/dist/components/data-entry/tree-utils.d.ts +1 -1
  102. package/dist/components/data-entry/tree-utils.js +7 -14
  103. package/dist/components/data-entry/upload-files.d.ts +2 -0
  104. package/dist/components/data-entry/upload-files.js +31 -0
  105. package/dist/components/data-entry/upload-request.d.ts +4 -0
  106. package/dist/components/data-entry/upload-request.js +53 -0
  107. package/dist/components/data-entry/upload-types.d.ts +28 -0
  108. package/dist/components/data-entry/upload-types.js +2 -0
  109. package/dist/components/data-entry/upload.d.ts +2 -2
  110. package/dist/components/data-entry/upload.js +482 -117
  111. package/dist/components/feedback/dialog.d.ts +105 -38
  112. package/dist/components/feedback/dialog.js +268 -193
  113. package/dist/components/feedback/overlay-close-focus.d.ts +31 -0
  114. package/dist/components/feedback/overlay-close-focus.js +31 -0
  115. package/dist/components/feedback/overlay-header-tone.d.ts +1 -1
  116. package/dist/components/feedback/sheet.d.ts +53 -11
  117. package/dist/components/feedback/sheet.js +150 -81
  118. package/dist/components/feedback/tooltip.d.ts +51 -7
  119. package/dist/components/feedback/tooltip.js +107 -25
  120. package/dist/components/general/button.d.ts +1 -1
  121. package/dist/components/general/button.js +7 -3
  122. package/dist/components/general/index.d.ts +1 -0
  123. package/dist/components/general/index.js +2 -0
  124. package/dist/components/general/logo.d.ts +17 -0
  125. package/dist/components/general/logo.js +22 -16
  126. package/dist/components/general/typography.d.ts +3 -0
  127. package/dist/components/general/typography.js +15 -1
  128. package/dist/components/general/visually-hidden.d.ts +3 -0
  129. package/dist/components/general/visually-hidden.js +9 -0
  130. package/dist/components/layout/app-launcher.d.ts +34 -0
  131. package/dist/components/layout/app-launcher.js +228 -0
  132. package/dist/components/layout/app-shell.d.ts +3 -1
  133. package/dist/components/layout/app-shell.js +69 -12
  134. package/dist/components/layout/aspect-ratio.js +0 -1
  135. package/dist/components/layout/auth-divider.js +0 -1
  136. package/dist/components/layout/breadcrumb.d.ts +14 -2
  137. package/dist/components/layout/breadcrumb.js +46 -4
  138. package/dist/components/layout/flex.d.ts +1 -1
  139. package/dist/components/layout/flex.js +41 -3
  140. package/dist/components/layout/index.d.ts +3 -0
  141. package/dist/components/layout/index.js +5 -1
  142. package/dist/components/layout/nav-surface.d.ts +26 -0
  143. package/dist/components/layout/nav-surface.js +17 -0
  144. package/dist/components/layout/org-switcher.d.ts +5 -1
  145. package/dist/components/layout/org-switcher.js +25 -4
  146. package/dist/components/layout/page-container.d.ts +1 -1
  147. package/dist/components/layout/page-container.js +5 -3
  148. package/dist/components/layout/responsive-grid.d.ts +16 -2
  149. package/dist/components/layout/responsive-grid.js +29 -2
  150. package/dist/components/layout/separator.js +0 -1
  151. package/dist/components/layout/sidebar.js +4 -1
  152. package/dist/components/layout/split-pane.d.ts +14 -1
  153. package/dist/components/layout/split-pane.js +26 -13
  154. package/dist/components/layout/topbar-item.d.ts +3 -0
  155. package/dist/components/layout/topbar-item.js +19 -5
  156. package/dist/components/layout/topbar.d.ts +1 -1
  157. package/dist/components/layout/topbar.js +27 -6
  158. package/dist/components/navigation/app-setting-picker.js +21 -2
  159. package/dist/components/navigation/app-setting-toggle.d.ts +16 -0
  160. package/dist/components/navigation/app-setting-toggle.js +96 -0
  161. package/dist/components/navigation/dropdown-menu.d.ts +227 -18
  162. package/dist/components/navigation/dropdown-menu.js +402 -118
  163. package/dist/components/navigation/index.d.ts +2 -0
  164. package/dist/components/navigation/index.js +2 -0
  165. package/dist/components/navigation/pagination-utils.d.ts +2 -1
  166. package/dist/components/navigation/pagination.d.ts +2 -2
  167. package/dist/components/navigation/pagination.js +155 -83
  168. package/dist/components/navigation/steps.d.ts +2 -2
  169. package/dist/components/navigation/steps.js +29 -4
  170. package/dist/components/navigation/tabs.d.ts +29 -16
  171. package/dist/components/navigation/tabs.js +374 -144
  172. package/dist/components/ui/accordion.d.ts +50 -5
  173. package/dist/components/ui/accordion.js +239 -33
  174. package/dist/components/ui/aspect-ratio.d.ts +23 -2
  175. package/dist/components/ui/aspect-ratio.js +15 -13
  176. package/dist/components/ui/avatar.d.ts +29 -4
  177. package/dist/components/ui/avatar.js +111 -25
  178. package/dist/components/ui/hover-card.d.ts +42 -4
  179. package/dist/components/ui/hover-card.js +183 -27
  180. package/dist/components/ui/input-otp.d.ts +26 -28
  181. package/dist/components/ui/input-otp.js +50 -7
  182. package/dist/components/ui/label.js +0 -1
  183. package/dist/components/ui/password-input.d.ts +36 -2
  184. package/dist/components/ui/password-input.js +27 -7
  185. package/dist/components/ui/rating.d.ts +25 -0
  186. package/dist/components/ui/rating.js +67 -27
  187. package/dist/components/ui/segmented.d.ts +12 -3
  188. package/dist/components/ui/segmented.js +17 -2
  189. package/dist/components/ui/separator.d.ts +12 -2
  190. package/dist/components/ui/separator.js +30 -9
  191. package/dist/components/ui/tag-input.d.ts +45 -0
  192. package/dist/components/ui/tag-input.js +109 -27
  193. package/dist/components/ui/toggle-group.d.ts +50 -5
  194. package/dist/components/ui/toggle-group.js +79 -20
  195. package/dist/components/ui/toggle.d.ts +31 -5
  196. package/dist/components/ui/toggle.js +42 -3
  197. package/dist/form/form-context.d.ts +29 -0
  198. package/dist/form/form-context.js +44 -4
  199. package/dist/form/form-field-array.d.ts +22 -0
  200. package/dist/form/form-field-array.js +50 -0
  201. package/dist/form/form-field-control.d.ts +2 -1
  202. package/dist/form/form-field-control.js +116 -40
  203. package/dist/form/form-root.d.ts +2 -1
  204. package/dist/form/form-root.js +142 -23
  205. package/dist/form/index.d.ts +3 -1
  206. package/dist/form/index.js +12 -1
  207. package/dist/i18n/messages/en.json +64 -5
  208. package/dist/i18n/messages/ja.json +64 -5
  209. package/dist/i18n/messages/vi.json +64 -5
  210. package/dist/inertia/index.d.ts +20 -0
  211. package/dist/inertia/index.js +60 -1
  212. package/dist/lib/control-styles.d.ts +25 -3
  213. package/dist/lib/control-styles.js +9 -3
  214. package/dist/lib/datetime/picker-format.d.ts +8 -0
  215. package/dist/lib/datetime/picker-format.js +54 -0
  216. package/dist/lib/slot.d.ts +32 -0
  217. package/dist/lib/slot.js +22 -0
  218. package/dist/lib/variants.d.ts +22 -3
  219. package/dist/lib/variants.js +56 -1
  220. package/dist/props/components/app.prop.d.ts +25 -1
  221. package/dist/props/components/charts.prop.d.ts +21 -0
  222. package/dist/props/components/data-display.prop.d.ts +72 -4
  223. package/dist/props/components/data-entry.prop.d.ts +718 -46
  224. package/dist/props/components/form.prop.d.ts +142 -4
  225. package/dist/props/components/general.prop.d.ts +17 -1
  226. package/dist/props/components/index.d.ts +3 -3
  227. package/dist/props/components/layout.prop.d.ts +281 -11
  228. package/dist/props/components/navigation.prop.d.ts +114 -4
  229. package/dist/props/registry.d.ts +397 -11
  230. package/dist/props/registry.js +526 -11
  231. package/dist/props/vocabulary/content.prop.d.ts +1 -1
  232. package/dist/props/vocabulary/data.prop.d.ts +179 -1
  233. package/dist/props/vocabulary/index.d.ts +5 -5
  234. package/dist/props/vocabulary/interaction.prop.d.ts +68 -3
  235. package/dist/props/vocabulary/layout.prop.d.ts +57 -1
  236. package/dist/props/vocabulary/navigation.prop.d.ts +40 -0
  237. package/dist/props/vocabulary/shared.prop.d.ts +33 -0
  238. package/dist/styles/badge-layout.css +2 -1
  239. package/dist/styles/card-layout.css +26 -4
  240. package/dist/styles/chart-layout.css +15 -0
  241. package/dist/styles/control.css +657 -15
  242. package/dist/styles/core.css +5 -2
  243. package/dist/styles/data-display-layout.css +313 -6
  244. package/dist/styles/data-entry-layout.css +13 -0
  245. package/dist/styles/focus-ring.css +4 -0
  246. package/dist/styles/index.css +5 -2
  247. package/dist/styles/layout.css +327 -4
  248. package/dist/styles/navigation-layout.css +227 -0
  249. package/dist/styles/shell-layout.css +369 -13
  250. package/dist/styles/table-layout.css +95 -6
  251. package/dist/styles/text-layout.css +10 -4
  252. package/dist/tokens/base.css +2 -1
  253. package/dist/tokens/components/badge.css +1 -0
  254. package/dist/tokens/components/chart.css +6 -0
  255. package/dist/tokens/components/control.css +79 -2
  256. package/dist/tokens/components/data-display.css +20 -0
  257. package/dist/tokens/components/descriptions.css +11 -0
  258. package/dist/tokens/components/flex.css +8 -0
  259. package/dist/tokens/components/navigation.css +55 -0
  260. package/dist/tokens/components/shell.css +53 -3
  261. package/dist/tokens/components/table.css +14 -0
  262. package/dist/tokens/foundation.css +2 -0
  263. package/dist/tokens/semantic/layout.css +9 -0
  264. package/docs/COMPONENTS.md +9 -3
  265. package/docs/CONSUMER-RULES.md +13 -0
  266. package/docs/DESIGN-AUTHORITY.md +145 -83
  267. package/docs/DEVELOPMENT.md +4 -3
  268. package/docs/FORMS.md +151 -6
  269. package/docs/FRAME-COVERAGE-REPORT.md +32 -17
  270. package/docs/README.md +15 -15
  271. package/docs/STANDARDS-vocabulary-tokens.md +1 -1
  272. package/docs/TESTING.md +15 -6
  273. package/docs/WHAT-BELONGS-HERE.md +179 -0
  274. package/docs/charts/cjk-category-axis.tsx +81 -0
  275. package/docs/data-display/card/index.tsx +22 -0
  276. package/docs/data-display/data-table/examples/antd-parity.tsx +257 -0
  277. package/docs/data-display/data-table/index.tsx +23 -0
  278. package/docs/data-display/descriptions.tsx +41 -0
  279. package/docs/data-display/legend.tsx +145 -0
  280. package/docs/data-display/progress.tsx +32 -0
  281. package/docs/data-display/scroll-area.tsx +31 -25
  282. package/docs/data-display/table.tsx +104 -45
  283. package/docs/data-display/timeline.tsx +41 -0
  284. package/docs/data-entry/date-picker.tsx +85 -0
  285. package/docs/data-entry/date-range-picker.tsx +26 -0
  286. package/docs/data-entry/form-dynamic-fields.tsx +199 -0
  287. package/docs/data-entry/form.tsx +74 -4
  288. package/docs/data-entry/input-otp.tsx +24 -0
  289. package/docs/data-entry/input.tsx +46 -1
  290. package/docs/data-entry/month-range-picker.tsx +1 -1
  291. package/docs/data-entry/segmented.tsx +1 -1
  292. package/docs/data-entry/select.tsx +29 -2
  293. package/docs/data-entry/switch.tsx +41 -0
  294. package/docs/data-entry/textarea.tsx +38 -0
  295. package/docs/data-entry/time-picker.tsx +85 -1
  296. package/docs/data-entry/time-range-picker.tsx +55 -0
  297. package/docs/data-entry/transfer.tsx +17 -0
  298. package/docs/data-entry/upload.tsx +56 -12
  299. package/docs/feedback/sheet.tsx +1 -1
  300. package/docs/feedback/tooltip.tsx +1 -1
  301. package/docs/general/activity.tsx +2 -2
  302. package/docs/general/button/index.tsx +14 -1
  303. package/docs/general/typography.tsx +14 -1
  304. package/docs/layout/app-launcher.tsx +151 -0
  305. package/docs/layout/app-shell-arrangements.tsx +225 -0
  306. package/docs/layout/app-shell.tsx +11 -0
  307. package/docs/layout/aspect-ratio.tsx +1 -1
  308. package/docs/layout/flex.tsx +50 -0
  309. package/docs/layout/responsive-grid.tsx +21 -1
  310. package/docs/layout/topbar.tsx +5 -9
  311. package/docs/navigation/app-setting-picker.tsx +37 -1
  312. package/docs/navigation/app-setting-toggle.tsx +111 -0
  313. package/docs/navigation/breadcrumb.tsx +48 -0
  314. package/docs/navigation/dropdown-menu.tsx +21 -0
  315. package/docs/navigation/pagination.tsx +52 -0
  316. package/docs/navigation/steps.tsx +37 -0
  317. package/docs/navigation/tabs.tsx +97 -1
  318. package/docs/query/button-refetch.tsx +1 -0
  319. package/package.json +28 -8
  320. package/scripts/_agent-setup.mjs +182 -3
  321. package/scripts/consumer-rule.md +98 -0
  322. package/scripts/guinea-pig-skill.md +322 -0
  323. package/scripts/init-guinea-pig.mjs +84 -0
  324. package/scripts/postinstall.mjs +13 -2
  325. package/scripts/ui-audit.mjs +351 -37
  326. /package/dist/tokens/{antd.generated.css → derived.css} +0 -0
@@ -115,6 +115,15 @@
115
115
  flex-wrap: wrap;
116
116
  }
117
117
 
118
+ .ui-flex[data-fill] {
119
+ flex: 1 1 0;
120
+ min-inline-size: 0;
121
+ }
122
+
123
+ .ui-flex[data-width-raw] {
124
+ flex: none;
125
+ }
126
+
118
127
  .ui-flex[data-align="start"] {
119
128
  align-items: flex-start;
120
129
  }
@@ -163,6 +172,50 @@
163
172
  gap: 0;
164
173
  }
165
174
 
175
+ .ui-flex-gap-1 {
176
+ gap: var(--space-1);
177
+ }
178
+ .ui-flex-gap-2 {
179
+ gap: var(--space-2);
180
+ }
181
+ .ui-flex-gap-3 {
182
+ gap: var(--space-3);
183
+ }
184
+ .ui-flex-gap-4 {
185
+ gap: var(--space-4);
186
+ }
187
+ .ui-flex-gap-5 {
188
+ gap: var(--space-5);
189
+ }
190
+ .ui-flex-gap-6 {
191
+ gap: var(--space-6);
192
+ }
193
+ .ui-flex-gap-8 {
194
+ gap: var(--space-8);
195
+ }
196
+ .ui-flex-gap-10 {
197
+ gap: var(--space-10);
198
+ }
199
+ .ui-flex-gap-12 {
200
+ gap: var(--space-12);
201
+ }
202
+
203
+ .ui-flex[data-direction="row"].ui-flex-gap-xs {
204
+ gap: var(--space-inline-xs);
205
+ }
206
+ .ui-flex[data-direction="row"].ui-flex-gap-sm {
207
+ gap: var(--space-inline-sm);
208
+ }
209
+ .ui-flex[data-direction="row"].ui-flex-gap-md {
210
+ gap: var(--space-inline-md);
211
+ }
212
+ .ui-flex[data-direction="row"].ui-flex-gap-lg {
213
+ gap: var(--space-inline-lg);
214
+ }
215
+ .ui-flex[data-direction="row"].ui-flex-gap-xl {
216
+ gap: var(--space-inline-xl);
217
+ }
218
+
166
219
  .ui-flex-gap-xs {
167
220
  gap: var(--space-stack-xs);
168
221
  }
@@ -243,6 +296,13 @@
243
296
  grid-template-columns: repeat(var(--responsive-grid-base, 1), minmax(0, 1fr));
244
297
  }
245
298
 
299
+ .ui-responsive-grid[data-flow="columns"] {
300
+ grid-template-columns: none;
301
+ grid-auto-flow: column;
302
+ grid-auto-columns: var(--responsive-grid-column-width);
303
+ align-items: start;
304
+ }
305
+
246
306
  .ui-responsive-grid[data-gap="none"] {
247
307
  gap: 0;
248
308
  }
@@ -262,6 +322,37 @@
262
322
  gap: var(--space-stack-xl);
263
323
  }
264
324
 
325
+ .ui-responsive-grid[data-gap="0"] {
326
+ gap: 0;
327
+ }
328
+ .ui-responsive-grid[data-gap="1"] {
329
+ gap: var(--space-1);
330
+ }
331
+ .ui-responsive-grid[data-gap="2"] {
332
+ gap: var(--space-2);
333
+ }
334
+ .ui-responsive-grid[data-gap="3"] {
335
+ gap: var(--space-3);
336
+ }
337
+ .ui-responsive-grid[data-gap="4"] {
338
+ gap: var(--space-4);
339
+ }
340
+ .ui-responsive-grid[data-gap="5"] {
341
+ gap: var(--space-5);
342
+ }
343
+ .ui-responsive-grid[data-gap="6"] {
344
+ gap: var(--space-6);
345
+ }
346
+ .ui-responsive-grid[data-gap="8"] {
347
+ gap: var(--space-8);
348
+ }
349
+ .ui-responsive-grid[data-gap="10"] {
350
+ gap: var(--space-10);
351
+ }
352
+ .ui-responsive-grid[data-gap="12"] {
353
+ gap: var(--space-12);
354
+ }
355
+
265
356
  .ui-responsive-grid > * {
266
357
  min-width: 0;
267
358
  }
@@ -390,6 +481,23 @@
390
481
  gap: 0;
391
482
  }
392
483
 
484
+ .ui-split-pane-scope[data-fill="true"] {
485
+ display: grid;
486
+ grid-template-rows: minmax(0, 1fr);
487
+ block-size: 100%;
488
+ min-block-size: 0;
489
+ }
490
+
491
+ .ui-split-pane[data-fill="true"] {
492
+ grid-template-rows: minmax(0, 1fr);
493
+ min-block-size: 0;
494
+ }
495
+
496
+ .ui-split-pane[data-fill="true"] > .ui-split-pane-main,
497
+ .ui-split-pane[data-fill="true"] > .ui-split-pane-aside {
498
+ min-block-size: 0;
499
+ }
500
+
393
501
  .ui-resizable-panel-group {
394
502
  display: flex;
395
503
  min-height: 0;
@@ -817,6 +925,11 @@
817
925
  padding: var(--empty-state-space-y) var(--empty-state-space-x);
818
926
  }
819
927
 
928
+ .ui-empty-state[data-variant="page"] {
929
+ min-block-size: 100%;
930
+ justify-content: center;
931
+ }
932
+
820
933
  .ui-empty-state-title {
821
934
  font-size: var(--font-size-base);
822
935
  font-weight: var(--font-weight-medium);
@@ -1302,25 +1415,29 @@
1302
1415
  @layer components {
1303
1416
 
1304
1417
  @media (width < 40rem) {
1305
- .ui-flex[data-hide-below="sm"] {
1418
+ .ui-flex[data-hide-below="sm"],
1419
+ .ui-topbar-item[data-hide-below="sm"] {
1306
1420
  display: none;
1307
1421
  }
1308
1422
  }
1309
1423
 
1310
1424
  @media (width < 48rem) {
1311
- .ui-flex[data-hide-below="md"] {
1425
+ .ui-flex[data-hide-below="md"],
1426
+ .ui-topbar-item[data-hide-below="md"] {
1312
1427
  display: none;
1313
1428
  }
1314
1429
  }
1315
1430
 
1316
1431
  @media (width < 64rem) {
1317
- .ui-flex[data-hide-below="lg"] {
1432
+ .ui-flex[data-hide-below="lg"],
1433
+ .ui-topbar-item[data-hide-below="lg"] {
1318
1434
  display: none;
1319
1435
  }
1320
1436
  }
1321
1437
 
1322
1438
  @media (width < 80rem) {
1323
- .ui-flex[data-hide-below="xl"] {
1439
+ .ui-flex[data-hide-below="xl"],
1440
+ .ui-topbar-item[data-hide-below="xl"] {
1324
1441
  display: none;
1325
1442
  }
1326
1443
  }
@@ -1384,3 +1501,209 @@
1384
1501
  margin-block-end: var(--space-3);
1385
1502
  }
1386
1503
  }
1504
+
1505
+ @layer components {
1506
+ .ui-flex[data-grow] {
1507
+ flex-grow: 1;
1508
+ }
1509
+ .ui-flex[data-shrink="false"] {
1510
+ flex-shrink: 0;
1511
+ }
1512
+ .ui-flex[data-direction="responsive"] {
1513
+ flex-direction: var(--flex-direction-base, row);
1514
+ }
1515
+ .ui-flex[data-list] {
1516
+ list-style-position: outside;
1517
+ padding-inline-start: var(--space-5);
1518
+ }
1519
+ .ui-flex[data-list="disc"] {
1520
+ list-style-type: disc;
1521
+ }
1522
+ .ui-flex[data-list="decimal"] {
1523
+ list-style-type: decimal;
1524
+ }
1525
+ .ui-flex[data-list] > li {
1526
+ display: list-item;
1527
+ }
1528
+ .ui-flex[data-surface] {
1529
+ border-radius: var(--flex-surface-radius, var(--radius-md));
1530
+ }
1531
+ .ui-flex[data-surface="muted"] {
1532
+ background: var(--flex-surface-background, hsl(var(--muted)));
1533
+ }
1534
+ .ui-flex[data-surface="warning"] {
1535
+ background: var(
1536
+ --flex-surface-background,
1537
+ hsl(var(--warning) / var(--flex-surface-warning-alpha))
1538
+ );
1539
+ }
1540
+ .ui-flex[data-surface="popover"] {
1541
+ background: var(--flex-surface-background, hsl(var(--popover)));
1542
+ border: var(--stroke-hairline) solid hsl(var(--border));
1543
+ box-shadow: var(--shadow-sm);
1544
+ }
1545
+ .ui-flex:has(> .ui-flex[data-reveal="hover"]) {
1546
+ position: relative;
1547
+ }
1548
+ .ui-flex[data-reveal="hover"] {
1549
+ position: absolute;
1550
+ inset-block-start: var(--flex-actions-offset-block, 0);
1551
+ inset-inline-end: var(--flex-actions-offset-inline, 0);
1552
+ opacity: 0;
1553
+ pointer-events: none;
1554
+ }
1555
+ .ui-flex:hover > .ui-flex[data-reveal="hover"],
1556
+ .ui-flex:focus-within > .ui-flex[data-reveal="hover"] {
1557
+ opacity: 1;
1558
+ pointer-events: auto;
1559
+ }
1560
+ @media (hover: none) {
1561
+ .ui-flex[data-reveal="hover"] {
1562
+ opacity: 1;
1563
+ pointer-events: auto;
1564
+ }
1565
+ }
1566
+ .ui-master-detail[data-rail-width="narrow"] {
1567
+ --master-detail-rail-size: var(--master-detail-rail-narrow);
1568
+ }
1569
+ .ui-master-detail[data-rail-width="wide"] {
1570
+ --master-detail-rail-size: var(--master-detail-rail-wide);
1571
+ }
1572
+ .ui-responsive-grid-item {
1573
+ grid-column: span min(var(--responsive-grid-base, 1), var(--responsive-grid-item-base, 1));
1574
+ }
1575
+ @container responsive-grid (min-width: 40rem) {
1576
+ .ui-responsive-grid-item {
1577
+ grid-column: span min(var(--responsive-grid-sm, 1), var(--responsive-grid-item-sm, 1));
1578
+ }
1579
+ }
1580
+ @container responsive-grid (min-width: 48rem) {
1581
+ .ui-responsive-grid-item {
1582
+ grid-column: span min(var(--responsive-grid-md, 1), var(--responsive-grid-item-md, 1));
1583
+ }
1584
+ }
1585
+ @container responsive-grid (min-width: 64rem) {
1586
+ .ui-responsive-grid-item {
1587
+ grid-column: span min(var(--responsive-grid-lg, 1), var(--responsive-grid-item-lg, 1));
1588
+ }
1589
+ }
1590
+ .ui-separator[data-label-size="2xs"] .ui-separator-label {
1591
+ font-size: var(--font-size-2xs);
1592
+ }
1593
+ .ui-separator[data-label-size="xs"] .ui-separator-label {
1594
+ font-size: var(--font-size-xs);
1595
+ }
1596
+ .ui-separator[data-label-size="sm"] .ui-separator-label {
1597
+ font-size: var(--font-size-sm);
1598
+ }
1599
+ .ui-separator[data-label-size="md"] .ui-separator-label {
1600
+ font-size: var(--font-size-base);
1601
+ }
1602
+ }
1603
+ @layer components {
1604
+ @media (min-width: 40rem) {
1605
+ .ui-flex[data-direction="responsive"] {
1606
+ flex-direction: var(--flex-direction-sm, var(--flex-direction-base, row));
1607
+ }
1608
+ .ui-separator[data-hide-from="sm"] {
1609
+ display: none;
1610
+ }
1611
+ }
1612
+ @media (width < 40rem) {
1613
+ .ui-separator[data-hide-below="sm"] {
1614
+ display: none;
1615
+ }
1616
+ }
1617
+ }
1618
+ @layer components {
1619
+ @media (min-width: 48rem) {
1620
+ .ui-flex[data-direction="responsive"] {
1621
+ flex-direction: var(
1622
+ --flex-direction-md,
1623
+ var(--flex-direction-sm, var(--flex-direction-base, row))
1624
+ );
1625
+ }
1626
+ .ui-separator[data-hide-from="md"] {
1627
+ display: none;
1628
+ }
1629
+ }
1630
+ @media (width < 48rem) {
1631
+ .ui-separator[data-hide-below="md"] {
1632
+ display: none;
1633
+ }
1634
+ }
1635
+ }
1636
+ @layer components {
1637
+ @media (min-width: 64rem) {
1638
+ .ui-flex[data-direction="responsive"] {
1639
+ flex-direction: var(
1640
+ --flex-direction-lg,
1641
+ var(--flex-direction-md, var(--flex-direction-sm, var(--flex-direction-base, row)))
1642
+ );
1643
+ }
1644
+ .ui-separator[data-hide-from="lg"] {
1645
+ display: none;
1646
+ }
1647
+ }
1648
+ @media (width < 64rem) {
1649
+ .ui-separator[data-hide-below="lg"] {
1650
+ display: none;
1651
+ }
1652
+ }
1653
+ }
1654
+ @layer components {
1655
+ @media (min-width: 80rem) {
1656
+ .ui-flex[data-direction="responsive"] {
1657
+ flex-direction: var(
1658
+ --flex-direction-xl,
1659
+ var(
1660
+ --flex-direction-lg,
1661
+ var(--flex-direction-md, var(--flex-direction-sm, var(--flex-direction-base, row)))
1662
+ )
1663
+ );
1664
+ }
1665
+ .ui-separator[data-hide-from="xl"] {
1666
+ display: none;
1667
+ }
1668
+ }
1669
+ @media (width < 80rem) {
1670
+ .ui-separator[data-hide-below="xl"] {
1671
+ display: none;
1672
+ }
1673
+ }
1674
+ }
1675
+
1676
+ @layer components {
1677
+ .ui-topbar[data-height="bar"] {
1678
+ min-block-size: var(--app-shell-bar-height);
1679
+ padding-inline: var(--app-shell-bar-inset);
1680
+ }
1681
+ }
1682
+
1683
+ @layer components {
1684
+ .ui-flex[data-direction="responsive"].ui-flex-gap-xs,
1685
+ .ui-flex[data-direction="row"][data-wrap="true"].ui-flex-gap-xs {
1686
+ row-gap: var(--space-stack-xs);
1687
+ column-gap: var(--space-inline-xs);
1688
+ }
1689
+ .ui-flex[data-direction="responsive"].ui-flex-gap-sm,
1690
+ .ui-flex[data-direction="row"][data-wrap="true"].ui-flex-gap-sm {
1691
+ row-gap: var(--space-stack-sm);
1692
+ column-gap: var(--space-inline-sm);
1693
+ }
1694
+ .ui-flex[data-direction="responsive"].ui-flex-gap-md,
1695
+ .ui-flex[data-direction="row"][data-wrap="true"].ui-flex-gap-md {
1696
+ row-gap: var(--space-stack-md);
1697
+ column-gap: var(--space-inline-md);
1698
+ }
1699
+ .ui-flex[data-direction="responsive"].ui-flex-gap-lg,
1700
+ .ui-flex[data-direction="row"][data-wrap="true"].ui-flex-gap-lg {
1701
+ row-gap: var(--space-stack-lg);
1702
+ column-gap: var(--space-inline-lg);
1703
+ }
1704
+ .ui-flex[data-direction="responsive"].ui-flex-gap-xl,
1705
+ .ui-flex[data-direction="row"][data-wrap="true"].ui-flex-gap-xl {
1706
+ row-gap: var(--space-stack-xl);
1707
+ column-gap: var(--space-inline-xl);
1708
+ }
1709
+ }
@@ -82,12 +82,132 @@
82
82
  }
83
83
  }
84
84
 
85
+ .ui-tabs-bar {
86
+ display: flex;
87
+ min-inline-size: 0;
88
+ align-items: center;
89
+ gap: var(--tabs-bar-gap);
90
+ }
91
+
92
+ [data-slot="tabs"][data-orientation="vertical"] .ui-tabs-bar {
93
+ flex-direction: column;
94
+ align-items: stretch;
95
+ }
96
+
97
+ .ui-tabs-bar > [data-slot="tabs-list"] {
98
+ min-inline-size: 0;
99
+ flex: 1 1 auto;
100
+ }
101
+
102
+ .ui-tabs-extra {
103
+ display: flex;
104
+ flex: 0 0 auto;
105
+ align-items: center;
106
+ gap: var(--tabs-extra-gap);
107
+ }
108
+
109
+ .ui-tabs-trigger-icon {
110
+ display: inline-flex;
111
+ align-items: center;
112
+ justify-content: center;
113
+ }
114
+
115
+ .ui-tabs-trigger-icon svg {
116
+ inline-size: var(--tabs-trigger-icon-size);
117
+ block-size: var(--tabs-trigger-icon-size);
118
+ }
119
+
120
+ [data-slot="tabs"][data-variant="card"] [data-slot="tabs-list"],
121
+ [data-slot="tabs"][data-variant="editable-card"] [data-slot="tabs-list"] {
122
+ box-shadow: inset 0 calc(-1 * var(--tabs-card-rail-border-width)) 0 hsl(var(--border));
123
+ }
124
+
125
+ .ui-tabs-tab-remove {
126
+ display: inline-flex;
127
+ flex: 0 0 auto;
128
+ inline-size: var(--tabs-tab-remove-size);
129
+ block-size: var(--tabs-tab-remove-size);
130
+ align-items: center;
131
+ justify-content: center;
132
+ border-radius: var(--tabs-tab-remove-radius);
133
+ margin-inline-start: var(--tabs-tab-remove-space-inline-end);
134
+ margin-inline-end: calc(-1 * var(--tabs-tab-remove-space-inline-end));
135
+ color: hsl(var(--muted-foreground));
136
+ cursor: pointer;
137
+ }
138
+
139
+ .ui-tabs-tab-remove:hover {
140
+ background: hsl(var(--accent));
141
+ color: hsl(var(--accent-foreground));
142
+ }
143
+
144
+ .ui-tabs-tab-remove-icon {
145
+ inline-size: var(--tabs-tab-remove-icon-size);
146
+ block-size: var(--tabs-tab-remove-icon-size);
147
+ }
148
+
149
+ .ui-tabs-add {
150
+ display: inline-flex;
151
+ flex: 0 0 auto;
152
+ inline-size: var(--tabs-add-size);
153
+ block-size: var(--tabs-add-size);
154
+ align-items: center;
155
+ justify-content: center;
156
+ border: var(--tabs-card-rail-border-width) solid hsl(var(--border));
157
+ border-radius: var(--tabs-add-radius);
158
+ background: hsl(var(--tabs-card-background, var(--muted)));
159
+ color: hsl(var(--muted-foreground));
160
+ }
161
+
162
+ .ui-tabs-add:hover {
163
+ background: hsl(var(--accent));
164
+ color: hsl(var(--accent-foreground));
165
+ }
166
+
167
+ .ui-tabs-add-icon {
168
+ inline-size: var(--tabs-add-icon-size);
169
+ block-size: var(--tabs-add-icon-size);
170
+ }
171
+
85
172
  .ui-pagination .ui-button svg,
86
173
  .ui-pagination .ui-pagination-link svg {
87
174
  inline-size: var(--pagination-icon-size);
88
175
  block-size: var(--pagination-icon-size);
89
176
  }
90
177
 
178
+ .ui-pagination[data-align="start"] {
179
+ justify-content: flex-start;
180
+ }
181
+
182
+ .ui-pagination[data-align="center"] {
183
+ justify-content: center;
184
+ }
185
+
186
+ .ui-pagination[data-align="end"] {
187
+ justify-content: flex-end;
188
+ }
189
+
190
+ .ui-pagination[data-size="sm"] {
191
+ --control-height: var(--pagination-control-height-sm);
192
+ }
193
+
194
+ .ui-pagination-jumper {
195
+ display: inline-flex;
196
+ flex: 0 0 auto;
197
+ align-items: center;
198
+ gap: var(--pagination-jumper-gap);
199
+ }
200
+
201
+ .ui-pagination-jumper-label {
202
+ color: hsl(var(--muted-foreground));
203
+ font-size: var(--pagination-jumper-font-size);
204
+ white-space: nowrap;
205
+ }
206
+
207
+ .ui-pagination-jumper-input {
208
+ text-align: center;
209
+ }
210
+
91
211
  .ui-context-menu-content {
92
212
  z-index: var(--overlay-z-index);
93
213
  min-width: var(--menu-content-min-width);
@@ -485,16 +605,67 @@
485
605
  box-shadow: var(--shadow-md), var(--shadow-glow);
486
606
  }
487
607
 
608
+ .ui-dropdown-menu-content [role="menu"],
609
+ .ui-dropdown-menu-sub-content [role="menu"] {
610
+ outline: none;
611
+ }
612
+
488
613
  .ui-dropdown-menu-content {
489
614
  max-height: var(--radix-dropdown-menu-content-available-height);
490
615
  overflow-x: hidden;
491
616
  overflow-y: auto;
492
617
  }
493
618
 
619
+ .ui-dropdown-menu-content[data-width="auto"] {
620
+ --menu-content-min-width: 0;
621
+ }
622
+
623
+ .ui-dropdown-menu-content[data-width="trigger"] {
624
+ --menu-content-min-width: var(--trigger-width, var(--dropdown-content-min-width));
625
+ }
626
+
627
+ .ui-dropdown-menu-content[data-width="sm"] {
628
+ --menu-content-min-width: var(--menu-content-width-sm);
629
+ }
630
+
631
+ .ui-dropdown-menu-content[data-width="md"] {
632
+ --menu-content-min-width: var(--menu-content-width-md);
633
+ }
634
+
635
+ .ui-dropdown-menu-content[data-width="lg"] {
636
+ --menu-content-min-width: var(--menu-content-width-lg);
637
+ }
638
+
494
639
  .ui-dropdown-menu-sub-content {
495
640
  overflow: hidden;
496
641
  }
497
642
 
643
+ .ui-breadcrumb-separator {
644
+ display: inline-flex;
645
+ flex: 0 0 auto;
646
+ align-items: center;
647
+ }
648
+
649
+ .ui-breadcrumb-menu-trigger {
650
+ display: inline-flex;
651
+ align-items: center;
652
+ gap: var(--breadcrumb-menu-trigger-gap);
653
+ border-radius: var(--radius-sm);
654
+ background: transparent;
655
+ color: inherit;
656
+ font: inherit;
657
+ }
658
+
659
+ .ui-breadcrumb-menu-trigger:hover {
660
+ color: hsl(var(--foreground));
661
+ }
662
+
663
+ .ui-dropdown-menu-arrow {
664
+ inline-size: var(--dropdown-arrow-width);
665
+ block-size: var(--dropdown-arrow-height);
666
+ fill: hsl(var(--dropdown-arrow-background, var(--popover)));
667
+ }
668
+
498
669
  .ui-dropdown-menu-indicator-slot {
499
670
  pointer-events: none;
500
671
  position: absolute;
@@ -729,6 +900,57 @@
729
900
  background: hsl(var(--border));
730
901
  }
731
902
 
903
+ .ui-steps-progress {
904
+ display: inline-flex;
905
+ align-items: center;
906
+ justify-content: center;
907
+ border-radius: var(--radius-pill);
908
+ padding: var(--steps-progress-ring-width);
909
+ background: conic-gradient(
910
+ hsl(var(--primary)) calc(var(--steps-progress-ratio, 0) * 360deg),
911
+ hsl(var(--steps-progress-track-color, var(--muted))) 0
912
+ );
913
+ }
914
+
915
+ .ui-steps-list[data-type="navigation"] .ui-steps-item[data-direction="horizontal"] {
916
+ flex-direction: row;
917
+ align-items: center;
918
+ gap: var(--steps-nav-space-gap);
919
+ text-align: start;
920
+ }
921
+
922
+ .ui-steps-list[data-type="navigation"] .ui-steps-control[data-direction="horizontal"] {
923
+ flex: 1 1 auto;
924
+ flex-direction: row;
925
+ align-items: center;
926
+ gap: var(--steps-nav-space-gap);
927
+ padding-inline: var(--steps-nav-space-inline);
928
+ padding-block: var(--steps-nav-space-block);
929
+ border-radius: var(--steps-nav-radius);
930
+ background: hsl(var(--muted));
931
+ }
932
+
933
+ .ui-steps-list[data-type="navigation"]
934
+ .ui-steps-item[data-status="process"]
935
+ .ui-steps-control[data-direction="horizontal"] {
936
+ background: hsl(var(--accent));
937
+ }
938
+
939
+ .ui-steps-list[data-type="navigation"]
940
+ .ui-steps-item[data-direction="horizontal"]
941
+ .ui-steps-text {
942
+ margin-block-start: 0;
943
+ padding-inline: 0;
944
+ text-align: start;
945
+ }
946
+
947
+ .ui-steps-nav-separator {
948
+ flex: 0 0 auto;
949
+ inline-size: var(--steps-nav-separator-size);
950
+ block-size: var(--steps-nav-separator-size);
951
+ color: hsl(var(--muted-foreground));
952
+ }
953
+
732
954
  .ui-app-setting-picker-icon {
733
955
  inline-size: var(--control-height);
734
956
  justify-content: center;
@@ -738,6 +960,11 @@
738
960
  box-shadow: none;
739
961
  }
740
962
 
963
+ .ui-app-setting-picker-icon[data-appearance="bar"] {
964
+ border-width: var(--app-setting-picker-bar-border-width);
965
+ box-shadow: var(--app-setting-picker-bar-shadow);
966
+ }
967
+
741
968
  .ui-app-setting-picker-glyph {
742
969
  inline-size: var(--app-setting-picker-icon-size);
743
970
  block-size: var(--app-setting-picker-icon-size);