@ciridae/ui 0.16.1 → 1.0.1

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 (975) hide show
  1. package/README.md +17 -12
  2. package/dist/chat/chat-api-error.d.ts +14 -0
  3. package/dist/chat/chat-api-error.js +11 -0
  4. package/dist/chat/chat-client.d.ts +37 -0
  5. package/dist/chat/chat-client.js +66 -0
  6. package/dist/chat/chat-hooks.d.ts +4 -0
  7. package/dist/chat/chat-hooks.js +4 -0
  8. package/dist/chat/chat-query-keys.d.ts +10 -0
  9. package/dist/chat/chat-query-keys.js +8 -0
  10. package/dist/chat/contract.d.ts +488 -0
  11. package/dist/chat/contract.js +223 -0
  12. package/dist/chat/conversation-items-query-options.d.ts +382 -0
  13. package/dist/chat/conversation-items-query-options.js +15 -0
  14. package/dist/chat/describe-tool-call.d.ts +5 -0
  15. package/dist/chat/describe-tool-call.js +33 -0
  16. package/dist/chat/fetch-new-conversation-items.d.ts +10 -0
  17. package/dist/chat/fetch-new-conversation-items.js +38 -0
  18. package/dist/chat/message-group-position.d.ts +17 -0
  19. package/dist/chat/message-group-position.js +25 -0
  20. package/dist/chat/message-text.d.ts +23 -0
  21. package/dist/chat/message-text.js +118 -0
  22. package/dist/chat/mock-chat-client.d.ts +97 -0
  23. package/dist/chat/mock-chat-client.js +566 -0
  24. package/dist/chat/use-chat-conversation.d.ts +43 -0
  25. package/dist/chat/use-chat-conversation.js +156 -0
  26. package/dist/chat/use-conversation-list.d.ts +32 -0
  27. package/dist/chat/use-conversation-list.js +19 -0
  28. package/dist/ciridae.css +60 -479
  29. package/dist/components/activity-feed.d.ts +80 -0
  30. package/dist/components/activity-feed.js +373 -0
  31. package/dist/components/agent-work.d.ts +76 -0
  32. package/dist/components/agent-work.js +224 -0
  33. package/dist/components/app-navigation.d.ts +66 -0
  34. package/dist/components/app-navigation.js +102 -0
  35. package/dist/components/badge.d.ts +14 -0
  36. package/dist/components/badge.js +107 -0
  37. package/dist/components/brand-icons.d.ts +17 -0
  38. package/dist/components/brand-icons.js +21 -0
  39. package/dist/components/breakpoint.d.ts +7 -0
  40. package/dist/components/breakpoint.js +16 -0
  41. package/dist/components/bulk-action-bar.d.ts +15 -0
  42. package/dist/components/bulk-action-bar.js +45 -0
  43. package/dist/components/button.d.ts +52 -0
  44. package/dist/components/button.js +272 -0
  45. package/dist/components/calendar.d.ts +14 -0
  46. package/dist/components/calendar.js +158 -0
  47. package/dist/components/centered-page.d.ts +21 -0
  48. package/dist/components/centered-page.js +55 -0
  49. package/dist/components/chart.d.ts +22 -0
  50. package/dist/components/chart.js +116 -0
  51. package/dist/components/chat-page.d.ts +34 -0
  52. package/dist/components/chat-page.js +171 -0
  53. package/dist/components/chat-sheet-controller.d.ts +50 -0
  54. package/dist/components/chat-sheet-controller.js +133 -0
  55. package/dist/components/chat-sheet.d.ts +80 -0
  56. package/dist/components/chat-sheet.js +544 -0
  57. package/dist/components/chat.d.ts +135 -0
  58. package/dist/components/chat.js +545 -0
  59. package/dist/components/checkbox-item.d.ts +11 -0
  60. package/dist/components/checkbox-item.js +45 -0
  61. package/dist/components/checkbox-list.d.ts +51 -0
  62. package/dist/components/checkbox-list.js +167 -0
  63. package/dist/components/chip.d.ts +17 -0
  64. package/dist/components/chip.js +43 -0
  65. package/dist/components/collapsible.d.ts +8 -0
  66. package/dist/components/collapsible.js +41 -0
  67. package/dist/components/color-theme.d.ts +40 -0
  68. package/dist/components/color-theme.js +109 -0
  69. package/dist/components/column-settings.d.ts +22 -0
  70. package/dist/components/column-settings.js +112 -0
  71. package/dist/components/command-match.d.ts +7 -0
  72. package/dist/components/command-match.js +50 -0
  73. package/dist/components/command-menu.d.ts +43 -0
  74. package/dist/components/command-menu.js +339 -0
  75. package/dist/components/command-palette.d.ts +36 -0
  76. package/dist/components/command-palette.js +77 -0
  77. package/dist/components/controllable-state.d.ts +5 -0
  78. package/dist/components/controllable-state.js +15 -0
  79. package/dist/components/copyable-id.d.ts +37 -0
  80. package/dist/components/copyable-id.js +136 -0
  81. package/dist/components/data-display.d.ts +47 -0
  82. package/dist/components/data-display.js +221 -0
  83. package/dist/components/data-grid.d.ts +170 -0
  84. package/dist/components/data-grid.js +829 -0
  85. package/dist/components/date-range-picker.d.ts +44 -0
  86. package/dist/components/date-range-picker.js +153 -0
  87. package/dist/components/date-time.d.ts +11 -0
  88. package/dist/components/date-time.js +44 -0
  89. package/dist/components/dialog-height-context.d.ts +2 -0
  90. package/dist/components/dialog-height-context.js +3 -0
  91. package/dist/components/document-viewer.d.ts +62 -0
  92. package/dist/components/document-viewer.js +419 -0
  93. package/dist/components/drawer.d.ts +44 -0
  94. package/dist/components/drawer.js +236 -0
  95. package/dist/components/dropzone.d.ts +47 -0
  96. package/dist/components/dropzone.js +370 -0
  97. package/dist/components/editable-field.d.ts +99 -0
  98. package/dist/components/editable-field.js +422 -0
  99. package/dist/components/email-input.d.ts +12 -0
  100. package/dist/components/email-input.js +83 -0
  101. package/dist/components/environment-frame.d.ts +13 -0
  102. package/dist/components/environment-frame.js +42 -0
  103. package/dist/components/expandable-text.d.ts +9 -0
  104. package/dist/components/expandable-text.js +48 -0
  105. package/dist/components/feedback-screenshot.d.ts +19 -0
  106. package/dist/components/feedback-screenshot.js +162 -0
  107. package/dist/components/feedback-sheet.d.ts +80 -0
  108. package/dist/components/feedback-sheet.js +475 -0
  109. package/dist/components/field-context.d.ts +23 -0
  110. package/dist/components/field-context.js +15 -0
  111. package/dist/components/filter-bar.d.ts +77 -0
  112. package/dist/components/filter-bar.js +350 -0
  113. package/dist/components/form-controls.d.ts +53 -0
  114. package/dist/components/form-controls.js +123 -0
  115. package/dist/components/form-layout.d.ts +32 -0
  116. package/dist/components/form-layout.js +72 -0
  117. package/dist/components/hotkeys.d.ts +27 -0
  118. package/dist/components/hotkeys.js +70 -0
  119. package/dist/components/icon.d.ts +58 -0
  120. package/dist/components/icon.js +42 -0
  121. package/dist/components/input.d.ts +36 -0
  122. package/dist/components/input.js +249 -0
  123. package/dist/components/keyboard-shortcuts.d.ts +10 -0
  124. package/dist/components/keyboard-shortcuts.js +91 -0
  125. package/dist/components/keycap.d.ts +12 -0
  126. package/dist/components/keycap.js +45 -0
  127. package/dist/components/layout.d.ts +174 -0
  128. package/dist/components/layout.js +282 -0
  129. package/dist/components/lightbox.d.ts +14 -0
  130. package/dist/components/lightbox.js +117 -0
  131. package/dist/components/link.d.ts +13 -0
  132. package/dist/components/link.js +37 -0
  133. package/dist/components/locale.d.ts +463 -0
  134. package/dist/components/locale.js +501 -0
  135. package/dist/components/log-list.d.ts +20 -0
  136. package/dist/components/log-list.js +92 -0
  137. package/dist/components/mention-input.d.ts +50 -0
  138. package/dist/components/mention-input.js +503 -0
  139. package/dist/components/menu.d.ts +76 -0
  140. package/dist/components/menu.js +112 -0
  141. package/dist/components/meter.d.ts +14 -0
  142. package/dist/components/meter.js +44 -0
  143. package/dist/components/navigation.d.ts +21 -0
  144. package/dist/components/navigation.js +75 -0
  145. package/dist/components/notification-tray.d.ts +47 -0
  146. package/dist/components/notification-tray.js +218 -0
  147. package/dist/components/overlays.d.ts +107 -0
  148. package/dist/components/overlays.js +240 -0
  149. package/dist/components/page-frame.d.ts +65 -0
  150. package/dist/components/page-frame.js +94 -0
  151. package/dist/components/panel.d.ts +24 -0
  152. package/dist/components/panel.js +107 -0
  153. package/dist/components/profile-header.d.ts +15 -0
  154. package/dist/components/profile-header.js +40 -0
  155. package/dist/components/progress.d.ts +5 -0
  156. package/dist/components/progress.js +18 -0
  157. package/dist/components/project-avatar.d.ts +12 -0
  158. package/dist/components/project-avatar.js +22 -0
  159. package/dist/components/radio-card.d.ts +22 -0
  160. package/dist/components/radio-card.js +66 -0
  161. package/dist/components/recent-items.d.ts +28 -0
  162. package/dist/components/recent-items.js +63 -0
  163. package/dist/components/record.d.ts +95 -0
  164. package/dist/components/record.js +282 -0
  165. package/dist/components/scroll-area.d.ts +16 -0
  166. package/dist/components/scroll-area.js +50 -0
  167. package/dist/components/secret-dialog.d.ts +10 -0
  168. package/dist/components/secret-dialog.js +12 -0
  169. package/dist/components/segmented-bar.d.ts +23 -0
  170. package/dist/components/segmented-bar.js +75 -0
  171. package/dist/components/select.d.ts +84 -0
  172. package/dist/components/select.js +374 -0
  173. package/dist/components/settings.d.ts +34 -0
  174. package/dist/components/settings.js +56 -0
  175. package/dist/components/shell-skeleton.d.ts +7 -0
  176. package/dist/components/shell-skeleton.js +15 -0
  177. package/dist/components/shell.d.ts +62 -0
  178. package/dist/components/shell.js +415 -0
  179. package/dist/components/side-panel.d.ts +36 -0
  180. package/dist/components/side-panel.js +184 -0
  181. package/dist/components/sidebar.d.ts +35 -0
  182. package/dist/components/sidebar.js +207 -0
  183. package/dist/components/site-banner.d.ts +25 -0
  184. package/dist/components/site-banner.js +30 -0
  185. package/dist/components/skeleton.d.ts +15 -0
  186. package/dist/components/skeleton.js +61 -0
  187. package/dist/components/skeletons.d.ts +28 -0
  188. package/dist/components/skeletons.js +60 -0
  189. package/dist/components/stages.d.ts +97 -0
  190. package/dist/components/stages.js +365 -0
  191. package/dist/components/stat-card.d.ts +34 -0
  192. package/dist/components/stat-card.js +117 -0
  193. package/dist/components/status-banner.d.ts +17 -0
  194. package/dist/components/status-banner.js +132 -0
  195. package/dist/components/status.d.ts +32 -0
  196. package/dist/components/status.js +93 -0
  197. package/dist/components/steps.d.ts +17 -0
  198. package/dist/components/steps.js +51 -0
  199. package/dist/components/switch.d.ts +6 -0
  200. package/dist/components/switch.js +39 -0
  201. package/dist/components/tabs.d.ts +48 -0
  202. package/dist/components/tabs.js +247 -0
  203. package/dist/components/theme-customizer.d.ts +53 -0
  204. package/dist/components/theme-customizer.js +116 -0
  205. package/dist/components/toast.d.ts +23 -0
  206. package/dist/components/toast.js +140 -0
  207. package/dist/components/user-chip.d.ts +66 -0
  208. package/dist/components/user-chip.js +174 -0
  209. package/dist/components/wizard.d.ts +33 -0
  210. package/dist/components/wizard.js +91 -0
  211. package/dist/feedback/client.d.ts +37 -0
  212. package/dist/feedback/client.js +125 -0
  213. package/dist/feedback/comment-types.d.ts +17 -0
  214. package/dist/feedback/contract.d.ts +252 -0
  215. package/dist/feedback/contract.js +32 -0
  216. package/dist/feedback/feedback-cache.d.ts +6 -0
  217. package/dist/feedback/feedback-cache.js +58 -0
  218. package/dist/feedback/feedback-center-model.d.ts +8 -0
  219. package/dist/feedback/feedback-center-model.js +37 -0
  220. package/dist/feedback/feedback-composer-types.d.ts +11 -0
  221. package/dist/feedback/feedback-controller.d.ts +56 -0
  222. package/dist/feedback/feedback-controller.js +181 -0
  223. package/dist/feedback/feedback-tracking-types.d.ts +14 -0
  224. package/dist/feedback/generated/index.d.ts +1 -0
  225. package/dist/feedback/generated/index.js +2 -0
  226. package/dist/feedback/generated/types.gen.d.ts +737 -0
  227. package/dist/feedback/generated/types.gen.js +2 -0
  228. package/dist/feedback/generated/zod.gen.d.ts +738 -0
  229. package/dist/feedback/generated/zod.gen.js +293 -0
  230. package/dist/feedback/get-response-error-id.d.ts +1 -0
  231. package/dist/feedback/get-response-error-id.js +7 -0
  232. package/dist/feedback/operator-client.d.ts +21 -0
  233. package/dist/feedback/operator-client.js +96 -0
  234. package/dist/feedback/operator-contract.d.ts +111 -0
  235. package/dist/feedback/operator-contract.js +22 -0
  236. package/dist/feedback/operator-controller.d.ts +80 -0
  237. package/dist/feedback/operator-controller.js +43 -0
  238. package/dist/feedback/require-config.d.ts +2 -0
  239. package/dist/feedback/require-config.js +7 -0
  240. package/dist/feedback/submit-feedback-with-attachments.d.ts +10 -0
  241. package/dist/feedback/submit-feedback-with-attachments.js +10 -0
  242. package/dist/format/compact-number.d.ts +2 -0
  243. package/dist/format/compact-number.js +8 -0
  244. package/dist/format/money.d.ts +13 -0
  245. package/dist/format/money.js +21 -0
  246. package/dist/format/usd.d.ts +2 -0
  247. package/dist/format/usd.js +16 -0
  248. package/dist/preset.d.ts +18 -0
  249. package/dist/preset.js +470 -0
  250. package/dist/styled-system/css/conditions.mjs +1 -1
  251. package/dist/styled-system/css/css.mjs +3 -3
  252. package/dist/styled-system/patterns/box.d.ts +1 -1
  253. package/dist/styled-system/patterns/container.d.ts +1 -1
  254. package/dist/styled-system/patterns/link-overlay.d.ts +1 -1
  255. package/dist/styled-system/patterns/visually-hidden.d.ts +1 -1
  256. package/dist/styled-system/styles.css +7834 -458
  257. package/dist/styled-system/tokens/index.mjs +1465 -677
  258. package/dist/styled-system/tokens/tokens.d.ts +32 -26
  259. package/dist/styled-system/types/conditions.d.ts +11 -1
  260. package/dist/styled-system/types/prop-type.d.ts +12 -23
  261. package/dist/styled-system/types/style-props.d.ts +25 -24
  262. package/dist/styles.css +60 -479
  263. package/dist/theme/breakpoints.d.ts +15 -0
  264. package/dist/theme/breakpoints.js +12 -0
  265. package/dist/theme/color.d.ts +2 -0
  266. package/dist/theme/color.js +27 -0
  267. package/dist/theme/derive.d.ts +5 -0
  268. package/dist/theme/derive.js +43 -0
  269. package/dist/theme/index.d.ts +4 -0
  270. package/dist/theme/index.js +9 -0
  271. package/dist/theme/options.d.ts +32 -0
  272. package/dist/theme/options.js +9 -0
  273. package/dist/theme/palettes.d.ts +60 -0
  274. package/dist/theme/palettes.js +185 -0
  275. package/dist/theme/tokens.d.ts +29 -0
  276. package/dist/theme/tokens.js +188 -0
  277. package/package.json +475 -68
  278. package/dist/assets/ciridae/brand-background-dark.webp +0 -0
  279. package/dist/assets/ciridae/brand-background-light.webp +0 -0
  280. package/dist/assets/ciridae/ciridae-black.svg +0 -17
  281. package/dist/assets/ciridae/ciridae-brand-assets.d.ts +0 -25
  282. package/dist/assets/ciridae/ciridae-brand-assets.js +0 -25
  283. package/dist/assets/ciridae/ciridae-icon-black.png +0 -0
  284. package/dist/assets/ciridae/ciridae-icon-white.png +0 -0
  285. package/dist/assets/ciridae/ciridae-ui-wordmark-black.png +0 -0
  286. package/dist/assets/ciridae/ciridae-ui-wordmark-white.png +0 -0
  287. package/dist/assets/ciridae/ciridae-white.svg +0 -17
  288. package/dist/assets/ciridae/ciridae-wordmark-black.png +0 -0
  289. package/dist/assets/ciridae/ciridae-wordmark-white.png +0 -0
  290. package/dist/assets/ciridae/favicon.ico +0 -0
  291. package/dist/assets/ciridae/logo-white.png +0 -0
  292. package/dist/assets/ciridae/sign-in-screenshot.png +0 -0
  293. package/dist/components/blocks/admin-users-table.d.ts +0 -22
  294. package/dist/components/blocks/admin-users-table.js +0 -115
  295. package/dist/components/blocks/comment-composer.d.ts +0 -18
  296. package/dist/components/blocks/comment-composer.js +0 -137
  297. package/dist/components/blocks/comment-item.d.ts +0 -8
  298. package/dist/components/blocks/comment-item.js +0 -45
  299. package/dist/components/blocks/comment-thread.d.ts +0 -19
  300. package/dist/components/blocks/comment-thread.js +0 -37
  301. package/dist/components/blocks/comment-types.d.ts +0 -18
  302. package/dist/components/blocks/comment-types.js +0 -11
  303. package/dist/components/blocks/copy-field.d.ts +0 -18
  304. package/dist/components/blocks/copy-field.js +0 -61
  305. package/dist/components/blocks/feedback-center-comments.d.ts +0 -16
  306. package/dist/components/blocks/feedback-center-comments.js +0 -61
  307. package/dist/components/blocks/feedback-center-footer.d.ts +0 -12
  308. package/dist/components/blocks/feedback-center-footer.js +0 -10
  309. package/dist/components/blocks/feedback-center-sheet-parts.d.ts +0 -40
  310. package/dist/components/blocks/feedback-center-sheet-parts.js +0 -39
  311. package/dist/components/blocks/feedback-center-sheet.d.ts +0 -28
  312. package/dist/components/blocks/feedback-center-sheet.js +0 -105
  313. package/dist/components/blocks/feedback-composer-parts.d.ts +0 -16
  314. package/dist/components/blocks/feedback-composer-parts.js +0 -43
  315. package/dist/components/blocks/feedback-composer-types.d.ts +0 -12
  316. package/dist/components/blocks/feedback-composer.d.ts +0 -23
  317. package/dist/components/blocks/feedback-composer.js +0 -82
  318. package/dist/components/blocks/feedback-date-format.d.ts +0 -5
  319. package/dist/components/blocks/feedback-date-format.js +0 -11
  320. package/dist/components/blocks/feedback-detail-sheet.d.ts +0 -15
  321. package/dist/components/blocks/feedback-detail-sheet.js +0 -59
  322. package/dist/components/blocks/feedback-emergency-fields.d.ts +0 -17
  323. package/dist/components/blocks/feedback-emergency-fields.js +0 -32
  324. package/dist/components/blocks/feedback-metrics.d.ts +0 -6
  325. package/dist/components/blocks/feedback-metrics.js +0 -15
  326. package/dist/components/blocks/feedback-sheet.d.ts +0 -8
  327. package/dist/components/blocks/feedback-sheet.js +0 -29
  328. package/dist/components/blocks/feedback-status-badge.d.ts +0 -6
  329. package/dist/components/blocks/feedback-status-badge.js +0 -15
  330. package/dist/components/blocks/feedback-table-row.d.ts +0 -6
  331. package/dist/components/blocks/feedback-table-row.js +0 -27
  332. package/dist/components/blocks/feedback-table-sort.d.ts +0 -11
  333. package/dist/components/blocks/feedback-table-sort.js +0 -82
  334. package/dist/components/blocks/feedback-table.d.ts +0 -16
  335. package/dist/components/blocks/feedback-table.js +0 -45
  336. package/dist/components/blocks/feedback-tracking-types.d.ts +0 -102
  337. package/dist/components/blocks/feedback-tracking-types.js +0 -54
  338. package/dist/components/blocks/feedback-triage-timeline.d.ts +0 -11
  339. package/dist/components/blocks/feedback-triage-timeline.js +0 -17
  340. package/dist/components/blocks/feedback-type-badge.d.ts +0 -11
  341. package/dist/components/blocks/feedback-type-badge.js +0 -18
  342. package/dist/components/blocks/feedback-unread-badge.d.ts +0 -6
  343. package/dist/components/blocks/feedback-unread-badge.js +0 -9
  344. package/dist/components/blocks/feedback-user-detail.d.ts +0 -11
  345. package/dist/components/blocks/feedback-user-detail.js +0 -63
  346. package/dist/components/blocks/feedback-user-list.d.ts +0 -11
  347. package/dist/components/blocks/feedback-user-list.js +0 -41
  348. package/dist/components/blocks/generated-connect-link.d.ts +0 -22
  349. package/dist/components/blocks/generated-connect-link.js +0 -68
  350. package/dist/components/blocks/invite-user-sheet.d.ts +0 -20
  351. package/dist/components/blocks/invite-user-sheet.js +0 -72
  352. package/dist/components/blocks/kanban-board-parts.d.ts +0 -26
  353. package/dist/components/blocks/kanban-board-parts.js +0 -83
  354. package/dist/components/blocks/kanban-board-utils.d.ts +0 -58
  355. package/dist/components/blocks/kanban-board-utils.js +0 -140
  356. package/dist/components/blocks/kanban-board.d.ts +0 -16
  357. package/dist/components/blocks/kanban-board.js +0 -35
  358. package/dist/components/blocks/kanban-card.d.ts +0 -10
  359. package/dist/components/blocks/kanban-card.js +0 -34
  360. package/dist/components/blocks/kanban-column.d.ts +0 -17
  361. package/dist/components/blocks/kanban-column.js +0 -34
  362. package/dist/components/blocks/kanban-detail-sheet.d.ts +0 -17
  363. package/dist/components/blocks/kanban-detail-sheet.js +0 -34
  364. package/dist/components/blocks/kanban-types.d.ts +0 -24
  365. package/dist/components/blocks/mcp-access-grouped-tool-picker.d.ts +0 -19
  366. package/dist/components/blocks/mcp-access-grouped-tool-picker.js +0 -116
  367. package/dist/components/blocks/mcp-access-tool-picker-internals.d.ts +0 -35
  368. package/dist/components/blocks/mcp-access-tool-picker-internals.js +0 -24
  369. package/dist/components/blocks/mcp-access-tool-picker.d.ts +0 -22
  370. package/dist/components/blocks/mcp-access-tool-picker.js +0 -33
  371. package/dist/components/blocks/mcp-access-types.d.ts +0 -42
  372. package/dist/components/blocks/mcp-access-types.js +0 -7
  373. package/dist/components/blocks/mcp-client-setup.d.ts +0 -29
  374. package/dist/components/blocks/mcp-client-setup.js +0 -58
  375. package/dist/components/blocks/mcp-connect-clients.d.ts +0 -43
  376. package/dist/components/blocks/mcp-connect-clients.js +0 -66
  377. package/dist/components/blocks/mcp-plan-choice.d.ts +0 -17
  378. package/dist/components/blocks/mcp-plan-choice.js +0 -28
  379. package/dist/components/blocks/submit-feedback-composer.d.ts +0 -5
  380. package/dist/components/blocks/submit-feedback-composer.js +0 -40
  381. package/dist/components/blocks/timestamp-format.d.ts +0 -14
  382. package/dist/components/blocks/timestamp-format.js +0 -72
  383. package/dist/components/blocks/use-feedback-composer-state.d.ts +0 -27
  384. package/dist/components/blocks/use-feedback-composer-state.js +0 -60
  385. package/dist/components/blocks/use-reveal-thread-end.d.ts +0 -11
  386. package/dist/components/blocks/use-reveal-thread-end.js +0 -25
  387. package/dist/components/pages/admin-users-page.d.ts +0 -11
  388. package/dist/components/pages/admin-users-page.js +0 -30
  389. package/dist/components/pages/feedback-stakeholder-page-parts.d.ts +0 -18
  390. package/dist/components/pages/feedback-stakeholder-page-parts.js +0 -36
  391. package/dist/components/pages/feedback-stakeholder-page.d.ts +0 -9
  392. package/dist/components/pages/feedback-stakeholder-page.js +0 -66
  393. package/dist/components/pages/kanban-page.d.ts +0 -13
  394. package/dist/components/pages/kanban-page.js +0 -68
  395. package/dist/components/ui/accordion.d.ts +0 -7
  396. package/dist/components/ui/accordion.js +0 -17
  397. package/dist/components/ui/alert-dialog.d.ts +0 -22
  398. package/dist/components/ui/alert-dialog.js +0 -51
  399. package/dist/components/ui/alert.d.ts +0 -9
  400. package/dist/components/ui/alert.js +0 -24
  401. package/dist/components/ui/app-shell-page.d.ts +0 -22
  402. package/dist/components/ui/app-shell-page.js +0 -21
  403. package/dist/components/ui/app-shell.d.ts +0 -45
  404. package/dist/components/ui/app-shell.js +0 -44
  405. package/dist/components/ui/aspect-ratio.d.ts +0 -3
  406. package/dist/components/ui/aspect-ratio.js +0 -7
  407. package/dist/components/ui/avatar.d.ts +0 -11
  408. package/dist/components/ui/avatar.js +0 -22
  409. package/dist/components/ui/badge-variants.d.ts +0 -100
  410. package/dist/components/ui/badge-variants.js +0 -140
  411. package/dist/components/ui/badge.d.ts +0 -6
  412. package/dist/components/ui/badge.js +0 -9
  413. package/dist/components/ui/breadcrumb.d.ts +0 -11
  414. package/dist/components/ui/breadcrumb.js +0 -27
  415. package/dist/components/ui/button-group-variants.d.ts +0 -6
  416. package/dist/components/ui/button-group-variants.js +0 -13
  417. package/dist/components/ui/button-group.d.ts +0 -8
  418. package/dist/components/ui/button-group.js +0 -16
  419. package/dist/components/ui/button-variants.d.ts +0 -133
  420. package/dist/components/ui/button-variants.js +0 -170
  421. package/dist/components/ui/button.d.ts +0 -8
  422. package/dist/components/ui/button.js +0 -59
  423. package/dist/components/ui/calendar.d.ts +0 -10
  424. package/dist/components/ui/calendar.js +0 -99
  425. package/dist/components/ui/card.d.ts +0 -14
  426. package/dist/components/ui/card.js +0 -28
  427. package/dist/components/ui/carousel.d.ts +0 -19
  428. package/dist/components/ui/carousel.js +0 -104
  429. package/dist/components/ui/chart-context.d.ts +0 -33
  430. package/dist/components/ui/chart-context.js +0 -36
  431. package/dist/components/ui/chart-panel.d.ts +0 -11
  432. package/dist/components/ui/chart-panel.js +0 -6
  433. package/dist/components/ui/chart-tooltip.d.ts +0 -13
  434. package/dist/components/ui/chart-tooltip.js +0 -84
  435. package/dist/components/ui/chart.d.ts +0 -23
  436. package/dist/components/ui/chart.js +0 -52
  437. package/dist/components/ui/checkbox.d.ts +0 -4
  438. package/dist/components/ui/checkbox.js +0 -9
  439. package/dist/components/ui/ciridae-ui-provider.d.ts +0 -8
  440. package/dist/components/ui/ciridae-ui-provider.js +0 -14
  441. package/dist/components/ui/collapsible.d.ts +0 -5
  442. package/dist/components/ui/collapsible.js +0 -12
  443. package/dist/components/ui/color-theme-context.d.ts +0 -28
  444. package/dist/components/ui/color-theme-context.js +0 -3
  445. package/dist/components/ui/color-theme.d.ts +0 -5
  446. package/dist/components/ui/color-theme.js +0 -147
  447. package/dist/components/ui/combobox-anchor.d.ts +0 -3
  448. package/dist/components/ui/combobox-anchor.js +0 -5
  449. package/dist/components/ui/combobox.d.ts +0 -24
  450. package/dist/components/ui/combobox.js +0 -54
  451. package/dist/components/ui/command.d.ts +0 -19
  452. package/dist/components/ui/command.js +0 -38
  453. package/dist/components/ui/context-menu.d.ts +0 -30
  454. package/dist/components/ui/context-menu.js +0 -63
  455. package/dist/components/ui/data-table-column-settings.d.ts +0 -23
  456. package/dist/components/ui/data-table-column-settings.js +0 -170
  457. package/dist/components/ui/data-table-context.d.ts +0 -8
  458. package/dist/components/ui/data-table-context.js +0 -53
  459. package/dist/components/ui/data-table-controls.d.ts +0 -9
  460. package/dist/components/ui/data-table-controls.js +0 -30
  461. package/dist/components/ui/data-table-facet-filter.d.ts +0 -39
  462. package/dist/components/ui/data-table-facet-filter.js +0 -65
  463. package/dist/components/ui/data-table-grid.d.ts +0 -10
  464. package/dist/components/ui/data-table-grid.js +0 -34
  465. package/dist/components/ui/data-table-pagination.d.ts +0 -17
  466. package/dist/components/ui/data-table-pagination.js +0 -89
  467. package/dist/components/ui/data-table-search-input.d.ts +0 -14
  468. package/dist/components/ui/data-table-search-input.js +0 -15
  469. package/dist/components/ui/data-table-state.d.ts +0 -19
  470. package/dist/components/ui/data-table-state.js +0 -8
  471. package/dist/components/ui/data-table-tanstack.d.ts +0 -99
  472. package/dist/components/ui/data-table-tanstack.js +0 -128
  473. package/dist/components/ui/data-table.d.ts +0 -19
  474. package/dist/components/ui/data-table.js +0 -35
  475. package/dist/components/ui/dialog.d.ts +0 -23
  476. package/dist/components/ui/dialog.js +0 -48
  477. package/dist/components/ui/direction-context.d.ts +0 -3
  478. package/dist/components/ui/direction-context.js +0 -3
  479. package/dist/components/ui/direction.d.ts +0 -6
  480. package/dist/components/ui/direction.js +0 -7
  481. package/dist/components/ui/drawer.d.ts +0 -18
  482. package/dist/components/ui/drawer.js +0 -47
  483. package/dist/components/ui/dropdown-menu.d.ts +0 -30
  484. package/dist/components/ui/dropdown-menu.js +0 -63
  485. package/dist/components/ui/empty.d.ts +0 -11
  486. package/dist/components/ui/empty.js +0 -33
  487. package/dist/components/ui/expandable-data-table.d.ts +0 -24
  488. package/dist/components/ui/expandable-data-table.js +0 -62
  489. package/dist/components/ui/field.d.ts +0 -26
  490. package/dist/components/ui/field.js +0 -74
  491. package/dist/components/ui/file-upload-field-parts.d.ts +0 -21
  492. package/dist/components/ui/file-upload-field-parts.js +0 -55
  493. package/dist/components/ui/file-upload-field.d.ts +0 -16
  494. package/dist/components/ui/file-upload-field.js +0 -85
  495. package/dist/components/ui/form-context.d.ts +0 -23
  496. package/dist/components/ui/form-context.js +0 -35
  497. package/dist/components/ui/form-sheet.d.ts +0 -22
  498. package/dist/components/ui/form-sheet.js +0 -74
  499. package/dist/components/ui/form.d.ts +0 -12
  500. package/dist/components/ui/form.js +0 -38
  501. package/dist/components/ui/hover-card.d.ts +0 -10
  502. package/dist/components/ui/hover-card.js +0 -22
  503. package/dist/components/ui/input-group.d.ts +0 -16
  504. package/dist/components/ui/input-group.js +0 -62
  505. package/dist/components/ui/input-otp.d.ts +0 -11
  506. package/dist/components/ui/input-otp.js +0 -21
  507. package/dist/components/ui/input.d.ts +0 -3
  508. package/dist/components/ui/input.js +0 -6
  509. package/dist/components/ui/item.d.ts +0 -24
  510. package/dist/components/ui/item.js +0 -73
  511. package/dist/components/ui/kbd.d.ts +0 -3
  512. package/dist/components/ui/kbd.js +0 -9
  513. package/dist/components/ui/label.d.ts +0 -4
  514. package/dist/components/ui/label.js +0 -7
  515. package/dist/components/ui/loading-state.d.ts +0 -27
  516. package/dist/components/ui/loading-state.js +0 -44
  517. package/dist/components/ui/menubar.d.ts +0 -30
  518. package/dist/components/ui/menubar.js +0 -63
  519. package/dist/components/ui/metrics-strip.d.ts +0 -7
  520. package/dist/components/ui/metrics-strip.js +0 -18
  521. package/dist/components/ui/native-select.d.ts +0 -7
  522. package/dist/components/ui/native-select.js +0 -13
  523. package/dist/components/ui/navigation-menu-variants.d.ts +0 -2
  524. package/dist/components/ui/navigation-menu-variants.js +0 -3
  525. package/dist/components/ui/navigation-menu.d.ts +0 -13
  526. package/dist/components/ui/navigation-menu.js +0 -30
  527. package/dist/components/ui/page-header.d.ts +0 -33
  528. package/dist/components/ui/page-header.js +0 -54
  529. package/dist/components/ui/pagination.d.ts +0 -13
  530. package/dist/components/ui/pagination.js +0 -29
  531. package/dist/components/ui/popover.d.ts +0 -14
  532. package/dist/components/ui/popover.js +0 -34
  533. package/dist/components/ui/progress.d.ts +0 -4
  534. package/dist/components/ui/progress.js +0 -8
  535. package/dist/components/ui/property-list.d.ts +0 -6
  536. package/dist/components/ui/property-list.js +0 -15
  537. package/dist/components/ui/radio-group.d.ts +0 -5
  538. package/dist/components/ui/radio-group.js +0 -11
  539. package/dist/components/ui/registry-docs-api.d.ts +0 -11
  540. package/dist/components/ui/registry-docs-api.js +0 -9
  541. package/dist/components/ui/registry-docs-code.d.ts +0 -19
  542. package/dist/components/ui/registry-docs-code.js +0 -78
  543. package/dist/components/ui/registry-docs-showcase.d.ts +0 -11
  544. package/dist/components/ui/registry-docs-showcase.js +0 -27
  545. package/dist/components/ui/registry-docs.d.ts +0 -27
  546. package/dist/components/ui/registry-docs.js +0 -32
  547. package/dist/components/ui/resizable.d.ts +0 -14
  548. package/dist/components/ui/resizable.js +0 -15
  549. package/dist/components/ui/scroll-area.d.ts +0 -7
  550. package/dist/components/ui/scroll-area.js +0 -10
  551. package/dist/components/ui/select.d.ts +0 -15
  552. package/dist/components/ui/select.js +0 -38
  553. package/dist/components/ui/separator.d.ts +0 -4
  554. package/dist/components/ui/separator.js +0 -7
  555. package/dist/components/ui/sheet.d.ts +0 -21
  556. package/dist/components/ui/sheet.js +0 -62
  557. package/dist/components/ui/sidebar/context.d.ts +0 -27
  558. package/dist/components/ui/sidebar/context.js +0 -23
  559. package/dist/components/ui/sidebar/group.d.ts +0 -10
  560. package/dist/components/ui/sidebar/group.js +0 -18
  561. package/dist/components/ui/sidebar/layout.d.ts +0 -17
  562. package/dist/components/ui/sidebar/layout.js +0 -78
  563. package/dist/components/ui/sidebar/menu.d.ts +0 -30
  564. package/dist/components/ui/sidebar/menu.js +0 -64
  565. package/dist/components/ui/sidebar/provider.d.ts +0 -7
  566. package/dist/components/ui/sidebar/provider.js +0 -53
  567. package/dist/components/ui/sidebar/rail.d.ts +0 -3
  568. package/dist/components/ui/sidebar/rail.js +0 -12
  569. package/dist/components/ui/sidebar/trigger.d.ts +0 -4
  570. package/dist/components/ui/sidebar/trigger.js +0 -16
  571. package/dist/components/ui/sidebar-account-menu-theme.d.ts +0 -7
  572. package/dist/components/ui/sidebar-account-menu-theme.js +0 -32
  573. package/dist/components/ui/sidebar-account-menu.d.ts +0 -16
  574. package/dist/components/ui/sidebar-account-menu.js +0 -51
  575. package/dist/components/ui/sidebar.d.ts +0 -7
  576. package/dist/components/ui/sidebar.js +0 -7
  577. package/dist/components/ui/skeleton.d.ts +0 -2
  578. package/dist/components/ui/skeleton.js +0 -15
  579. package/dist/components/ui/slider.d.ts +0 -4
  580. package/dist/components/ui/slider.js +0 -9
  581. package/dist/components/ui/sonner.d.ts +0 -3
  582. package/dist/components/ui/sonner.js +0 -33
  583. package/dist/components/ui/spinner.d.ts +0 -2
  584. package/dist/components/ui/spinner.js +0 -16
  585. package/dist/components/ui/switch.d.ts +0 -6
  586. package/dist/components/ui/switch.js +0 -7
  587. package/dist/components/ui/table.d.ts +0 -21
  588. package/dist/components/ui/table.js +0 -34
  589. package/dist/components/ui/tabs-variants.d.ts +0 -6
  590. package/dist/components/ui/tabs-variants.js +0 -13
  591. package/dist/components/ui/tabs.d.ts +0 -8
  592. package/dist/components/ui/tabs.js +0 -17
  593. package/dist/components/ui/textarea.d.ts +0 -3
  594. package/dist/components/ui/textarea.js +0 -6
  595. package/dist/components/ui/toggle-group.d.ts +0 -9
  596. package/dist/components/ui/toggle-group.js +0 -24
  597. package/dist/components/ui/toggle-variants.d.ts +0 -7
  598. package/dist/components/ui/toggle-variants.js +0 -19
  599. package/dist/components/ui/toggle.d.ts +0 -5
  600. package/dist/components/ui/toggle.js +0 -9
  601. package/dist/components/ui/tooltip.d.ts +0 -14
  602. package/dist/components/ui/tooltip.js +0 -25
  603. package/dist/components/ui/use-color-theme.d.ts +0 -2
  604. package/dist/components/ui/use-color-theme.js +0 -10
  605. package/dist/components/ui/workflow-timeline.d.ts +0 -20
  606. package/dist/components/ui/workflow-timeline.js +0 -92
  607. package/dist/components/walkthrough/presentation/WalkthroughCoach.d.ts +0 -14
  608. package/dist/components/walkthrough/presentation/WalkthroughCoach.js +0 -32
  609. package/dist/components/walkthrough/presentation/WalkthroughHighlight.d.ts +0 -5
  610. package/dist/components/walkthrough/presentation/WalkthroughHighlight.js +0 -9
  611. package/dist/components/walkthrough/presentation/WalkthroughOverlay.d.ts +0 -1
  612. package/dist/components/walkthrough/presentation/WalkthroughOverlay.js +0 -70
  613. package/dist/components/walkthrough/presentation/positionWalkthroughCoach.d.ts +0 -11
  614. package/dist/components/walkthrough/presentation/positionWalkthroughCoach.js +0 -24
  615. package/dist/components/walkthrough/presentation/useWalkthroughCoachPosition.d.ts +0 -4
  616. package/dist/components/walkthrough/presentation/useWalkthroughCoachPosition.js +0 -17
  617. package/dist/components/walkthrough/runtime/WalkthroughContextDefinition.d.ts +0 -20
  618. package/dist/components/walkthrough/runtime/WalkthroughContextDefinition.js +0 -2
  619. package/dist/components/walkthrough/runtime/WalkthroughProvider.d.ts +0 -12
  620. package/dist/components/walkthrough/runtime/WalkthroughProvider.js +0 -190
  621. package/dist/components/walkthrough/runtime/useWalkthrough.d.ts +0 -1
  622. package/dist/components/walkthrough/runtime/useWalkthrough.js +0 -8
  623. package/dist/components/walkthrough/runtime/walkthroughEvents.d.ts +0 -3
  624. package/dist/components/walkthrough/runtime/walkthroughEvents.js +0 -55
  625. package/dist/components/walkthrough/runtime/walkthroughLocation.d.ts +0 -2
  626. package/dist/components/walkthrough/runtime/walkthroughLocation.js +0 -27
  627. package/dist/components/walkthrough/runtime/walkthroughStorage.d.ts +0 -3
  628. package/dist/components/walkthrough/runtime/walkthroughStorage.js +0 -54
  629. package/dist/components/walkthrough/runtime/walkthroughTypes.d.ts +0 -32
  630. package/dist/components/walkthrough/targeting/listenForOutsideWalkthroughInteraction.d.ts +0 -2
  631. package/dist/components/walkthrough/targeting/listenForOutsideWalkthroughInteraction.js +0 -19
  632. package/dist/components/walkthrough/targeting/useWalkthroughTargetRect.d.ts +0 -15
  633. package/dist/components/walkthrough/targeting/useWalkthroughTargetRect.js +0 -54
  634. package/dist/components/walkthrough/targeting/walkthroughTarget.d.ts +0 -6
  635. package/dist/components/walkthrough/targeting/walkthroughTarget.js +0 -24
  636. package/dist/components/walkthrough.d.ts +0 -4
  637. package/dist/components/walkthrough.js +0 -2
  638. package/dist/entries/accordion.d.ts +0 -1
  639. package/dist/entries/accordion.js +0 -1
  640. package/dist/entries/admin-users-page.d.ts +0 -1
  641. package/dist/entries/admin-users-page.js +0 -1
  642. package/dist/entries/admin-users-table.d.ts +0 -1
  643. package/dist/entries/admin-users-table.js +0 -1
  644. package/dist/entries/alert-dialog.d.ts +0 -1
  645. package/dist/entries/alert-dialog.js +0 -1
  646. package/dist/entries/alert.d.ts +0 -1
  647. package/dist/entries/alert.js +0 -1
  648. package/dist/entries/app-shell-page.d.ts +0 -1
  649. package/dist/entries/app-shell-page.js +0 -1
  650. package/dist/entries/app-shell.d.ts +0 -1
  651. package/dist/entries/app-shell.js +0 -1
  652. package/dist/entries/aspect-ratio.d.ts +0 -1
  653. package/dist/entries/aspect-ratio.js +0 -1
  654. package/dist/entries/avatar.d.ts +0 -1
  655. package/dist/entries/avatar.js +0 -1
  656. package/dist/entries/badge-variants.d.ts +0 -1
  657. package/dist/entries/badge-variants.js +0 -1
  658. package/dist/entries/badge.d.ts +0 -1
  659. package/dist/entries/badge.js +0 -1
  660. package/dist/entries/breadcrumb.d.ts +0 -1
  661. package/dist/entries/breadcrumb.js +0 -1
  662. package/dist/entries/button-group-variants.d.ts +0 -1
  663. package/dist/entries/button-group-variants.js +0 -1
  664. package/dist/entries/button-group.d.ts +0 -1
  665. package/dist/entries/button-group.js +0 -1
  666. package/dist/entries/button-variants.d.ts +0 -1
  667. package/dist/entries/button-variants.js +0 -1
  668. package/dist/entries/button.d.ts +0 -1
  669. package/dist/entries/button.js +0 -1
  670. package/dist/entries/calendar.d.ts +0 -1
  671. package/dist/entries/calendar.js +0 -1
  672. package/dist/entries/card.d.ts +0 -1
  673. package/dist/entries/card.js +0 -1
  674. package/dist/entries/carousel.d.ts +0 -1
  675. package/dist/entries/carousel.js +0 -1
  676. package/dist/entries/chart-context.d.ts +0 -1
  677. package/dist/entries/chart-context.js +0 -1
  678. package/dist/entries/chart-panel.d.ts +0 -1
  679. package/dist/entries/chart-panel.js +0 -1
  680. package/dist/entries/chart-tooltip.d.ts +0 -1
  681. package/dist/entries/chart-tooltip.js +0 -1
  682. package/dist/entries/chart.d.ts +0 -1
  683. package/dist/entries/chart.js +0 -1
  684. package/dist/entries/checkbox.d.ts +0 -1
  685. package/dist/entries/checkbox.js +0 -1
  686. package/dist/entries/ciridae-brand-assets.d.ts +0 -1
  687. package/dist/entries/ciridae-brand-assets.js +0 -1
  688. package/dist/entries/ciridae-ui-provider.d.ts +0 -1
  689. package/dist/entries/ciridae-ui-provider.js +0 -1
  690. package/dist/entries/collapsible.d.ts +0 -1
  691. package/dist/entries/collapsible.js +0 -1
  692. package/dist/entries/color-theme-context.d.ts +0 -1
  693. package/dist/entries/color-theme-context.js +0 -1
  694. package/dist/entries/color-theme.d.ts +0 -1
  695. package/dist/entries/color-theme.js +0 -1
  696. package/dist/entries/combobox-anchor.d.ts +0 -1
  697. package/dist/entries/combobox-anchor.js +0 -1
  698. package/dist/entries/combobox.d.ts +0 -1
  699. package/dist/entries/combobox.js +0 -1
  700. package/dist/entries/command.d.ts +0 -1
  701. package/dist/entries/command.js +0 -1
  702. package/dist/entries/comment-composer.d.ts +0 -1
  703. package/dist/entries/comment-composer.js +0 -1
  704. package/dist/entries/comment-item.d.ts +0 -1
  705. package/dist/entries/comment-item.js +0 -1
  706. package/dist/entries/comment-thread.d.ts +0 -1
  707. package/dist/entries/comment-thread.js +0 -1
  708. package/dist/entries/comment-types.d.ts +0 -1
  709. package/dist/entries/comment-types.js +0 -1
  710. package/dist/entries/context-menu.d.ts +0 -1
  711. package/dist/entries/context-menu.js +0 -1
  712. package/dist/entries/copy-field.d.ts +0 -1
  713. package/dist/entries/copy-field.js +0 -1
  714. package/dist/entries/data-table-column-settings.d.ts +0 -1
  715. package/dist/entries/data-table-column-settings.js +0 -1
  716. package/dist/entries/data-table-context.d.ts +0 -1
  717. package/dist/entries/data-table-context.js +0 -1
  718. package/dist/entries/data-table-controls.d.ts +0 -1
  719. package/dist/entries/data-table-controls.js +0 -1
  720. package/dist/entries/data-table-facet-filter.d.ts +0 -1
  721. package/dist/entries/data-table-facet-filter.js +0 -1
  722. package/dist/entries/data-table-grid.d.ts +0 -1
  723. package/dist/entries/data-table-grid.js +0 -1
  724. package/dist/entries/data-table-pagination.d.ts +0 -1
  725. package/dist/entries/data-table-pagination.js +0 -1
  726. package/dist/entries/data-table-search-input.d.ts +0 -1
  727. package/dist/entries/data-table-search-input.js +0 -1
  728. package/dist/entries/data-table-state.d.ts +0 -1
  729. package/dist/entries/data-table-state.js +0 -1
  730. package/dist/entries/data-table-tanstack.d.ts +0 -1
  731. package/dist/entries/data-table-tanstack.js +0 -1
  732. package/dist/entries/data-table.d.ts +0 -1
  733. package/dist/entries/data-table.js +0 -1
  734. package/dist/entries/dialog.d.ts +0 -1
  735. package/dist/entries/dialog.js +0 -1
  736. package/dist/entries/direction-context.d.ts +0 -1
  737. package/dist/entries/direction-context.js +0 -1
  738. package/dist/entries/direction.d.ts +0 -1
  739. package/dist/entries/direction.js +0 -1
  740. package/dist/entries/drawer.d.ts +0 -1
  741. package/dist/entries/drawer.js +0 -1
  742. package/dist/entries/dropdown-menu.d.ts +0 -1
  743. package/dist/entries/dropdown-menu.js +0 -1
  744. package/dist/entries/empty.d.ts +0 -1
  745. package/dist/entries/empty.js +0 -1
  746. package/dist/entries/expandable-data-table.d.ts +0 -1
  747. package/dist/entries/expandable-data-table.js +0 -1
  748. package/dist/entries/feedback-center-comments.d.ts +0 -1
  749. package/dist/entries/feedback-center-comments.js +0 -1
  750. package/dist/entries/feedback-center-footer.d.ts +0 -1
  751. package/dist/entries/feedback-center-footer.js +0 -1
  752. package/dist/entries/feedback-center-sheet-parts.d.ts +0 -1
  753. package/dist/entries/feedback-center-sheet-parts.js +0 -1
  754. package/dist/entries/feedback-center-sheet.d.ts +0 -1
  755. package/dist/entries/feedback-center-sheet.js +0 -1
  756. package/dist/entries/feedback-composer-parts.d.ts +0 -1
  757. package/dist/entries/feedback-composer-parts.js +0 -1
  758. package/dist/entries/feedback-composer-types.d.ts +0 -1
  759. package/dist/entries/feedback-composer-types.js +0 -1
  760. package/dist/entries/feedback-composer.d.ts +0 -1
  761. package/dist/entries/feedback-composer.js +0 -1
  762. package/dist/entries/feedback-date-format.d.ts +0 -1
  763. package/dist/entries/feedback-date-format.js +0 -1
  764. package/dist/entries/feedback-detail-sheet.d.ts +0 -1
  765. package/dist/entries/feedback-detail-sheet.js +0 -1
  766. package/dist/entries/feedback-emergency-fields.d.ts +0 -1
  767. package/dist/entries/feedback-emergency-fields.js +0 -1
  768. package/dist/entries/feedback-metrics.d.ts +0 -1
  769. package/dist/entries/feedback-metrics.js +0 -1
  770. package/dist/entries/feedback-sheet.d.ts +0 -1
  771. package/dist/entries/feedback-sheet.js +0 -1
  772. package/dist/entries/feedback-stakeholder-page-parts.d.ts +0 -1
  773. package/dist/entries/feedback-stakeholder-page-parts.js +0 -1
  774. package/dist/entries/feedback-stakeholder-page.d.ts +0 -1
  775. package/dist/entries/feedback-stakeholder-page.js +0 -1
  776. package/dist/entries/feedback-status-badge.d.ts +0 -1
  777. package/dist/entries/feedback-status-badge.js +0 -1
  778. package/dist/entries/feedback-table-row.d.ts +0 -1
  779. package/dist/entries/feedback-table-row.js +0 -1
  780. package/dist/entries/feedback-table-sort.d.ts +0 -1
  781. package/dist/entries/feedback-table-sort.js +0 -1
  782. package/dist/entries/feedback-table.d.ts +0 -1
  783. package/dist/entries/feedback-table.js +0 -1
  784. package/dist/entries/feedback-tracking-types.d.ts +0 -1
  785. package/dist/entries/feedback-tracking-types.js +0 -1
  786. package/dist/entries/feedback-triage-timeline.d.ts +0 -1
  787. package/dist/entries/feedback-triage-timeline.js +0 -1
  788. package/dist/entries/feedback-type-badge.d.ts +0 -1
  789. package/dist/entries/feedback-type-badge.js +0 -1
  790. package/dist/entries/feedback-unread-badge.d.ts +0 -1
  791. package/dist/entries/feedback-unread-badge.js +0 -1
  792. package/dist/entries/feedback-user-detail.d.ts +0 -1
  793. package/dist/entries/feedback-user-detail.js +0 -1
  794. package/dist/entries/feedback-user-list.d.ts +0 -1
  795. package/dist/entries/feedback-user-list.js +0 -1
  796. package/dist/entries/field.d.ts +0 -1
  797. package/dist/entries/field.js +0 -1
  798. package/dist/entries/file-upload-field-parts.d.ts +0 -1
  799. package/dist/entries/file-upload-field-parts.js +0 -1
  800. package/dist/entries/file-upload-field.d.ts +0 -1
  801. package/dist/entries/file-upload-field.js +0 -1
  802. package/dist/entries/form-context.d.ts +0 -1
  803. package/dist/entries/form-context.js +0 -1
  804. package/dist/entries/form-sheet.d.ts +0 -1
  805. package/dist/entries/form-sheet.js +0 -1
  806. package/dist/entries/form.d.ts +0 -1
  807. package/dist/entries/form.js +0 -1
  808. package/dist/entries/generated-connect-link.d.ts +0 -1
  809. package/dist/entries/generated-connect-link.js +0 -1
  810. package/dist/entries/hover-card.d.ts +0 -1
  811. package/dist/entries/hover-card.js +0 -1
  812. package/dist/entries/input-group.d.ts +0 -1
  813. package/dist/entries/input-group.js +0 -1
  814. package/dist/entries/input-otp.d.ts +0 -1
  815. package/dist/entries/input-otp.js +0 -1
  816. package/dist/entries/input.d.ts +0 -1
  817. package/dist/entries/input.js +0 -1
  818. package/dist/entries/invite-user-sheet.d.ts +0 -1
  819. package/dist/entries/invite-user-sheet.js +0 -1
  820. package/dist/entries/item.d.ts +0 -1
  821. package/dist/entries/item.js +0 -1
  822. package/dist/entries/kanban-board-parts.d.ts +0 -1
  823. package/dist/entries/kanban-board-parts.js +0 -1
  824. package/dist/entries/kanban-board-utils.d.ts +0 -1
  825. package/dist/entries/kanban-board-utils.js +0 -1
  826. package/dist/entries/kanban-board.d.ts +0 -1
  827. package/dist/entries/kanban-board.js +0 -1
  828. package/dist/entries/kanban-card.d.ts +0 -1
  829. package/dist/entries/kanban-card.js +0 -1
  830. package/dist/entries/kanban-column.d.ts +0 -1
  831. package/dist/entries/kanban-column.js +0 -1
  832. package/dist/entries/kanban-detail-sheet.d.ts +0 -1
  833. package/dist/entries/kanban-detail-sheet.js +0 -1
  834. package/dist/entries/kanban-page.d.ts +0 -1
  835. package/dist/entries/kanban-page.js +0 -1
  836. package/dist/entries/kanban-types.d.ts +0 -1
  837. package/dist/entries/kanban-types.js +0 -1
  838. package/dist/entries/kbd.d.ts +0 -1
  839. package/dist/entries/kbd.js +0 -1
  840. package/dist/entries/label.d.ts +0 -1
  841. package/dist/entries/label.js +0 -1
  842. package/dist/entries/loading-state.d.ts +0 -1
  843. package/dist/entries/loading-state.js +0 -1
  844. package/dist/entries/mcp-access-grouped-tool-picker.d.ts +0 -1
  845. package/dist/entries/mcp-access-grouped-tool-picker.js +0 -1
  846. package/dist/entries/mcp-access-tool-picker.d.ts +0 -1
  847. package/dist/entries/mcp-access-tool-picker.js +0 -1
  848. package/dist/entries/mcp-access-types.d.ts +0 -1
  849. package/dist/entries/mcp-access-types.js +0 -1
  850. package/dist/entries/mcp-client-setup.d.ts +0 -1
  851. package/dist/entries/mcp-client-setup.js +0 -1
  852. package/dist/entries/mcp-connect-clients.d.ts +0 -1
  853. package/dist/entries/mcp-connect-clients.js +0 -1
  854. package/dist/entries/mcp-plan-choice.d.ts +0 -1
  855. package/dist/entries/mcp-plan-choice.js +0 -1
  856. package/dist/entries/menubar.d.ts +0 -1
  857. package/dist/entries/menubar.js +0 -1
  858. package/dist/entries/metrics-strip.d.ts +0 -1
  859. package/dist/entries/metrics-strip.js +0 -1
  860. package/dist/entries/native-select.d.ts +0 -1
  861. package/dist/entries/native-select.js +0 -1
  862. package/dist/entries/navigation-menu-variants.d.ts +0 -1
  863. package/dist/entries/navigation-menu-variants.js +0 -1
  864. package/dist/entries/navigation-menu.d.ts +0 -1
  865. package/dist/entries/navigation-menu.js +0 -1
  866. package/dist/entries/page-header.d.ts +0 -1
  867. package/dist/entries/page-header.js +0 -1
  868. package/dist/entries/pagination.d.ts +0 -1
  869. package/dist/entries/pagination.js +0 -1
  870. package/dist/entries/palette.d.ts +0 -2
  871. package/dist/entries/palette.js +0 -2
  872. package/dist/entries/popover.d.ts +0 -1
  873. package/dist/entries/popover.js +0 -1
  874. package/dist/entries/progress.d.ts +0 -1
  875. package/dist/entries/progress.js +0 -1
  876. package/dist/entries/property-list.d.ts +0 -1
  877. package/dist/entries/property-list.js +0 -1
  878. package/dist/entries/radio-group.d.ts +0 -1
  879. package/dist/entries/radio-group.js +0 -1
  880. package/dist/entries/registry-docs-api.d.ts +0 -1
  881. package/dist/entries/registry-docs-api.js +0 -1
  882. package/dist/entries/registry-docs-code.d.ts +0 -1
  883. package/dist/entries/registry-docs-code.js +0 -1
  884. package/dist/entries/registry-docs-showcase.d.ts +0 -1
  885. package/dist/entries/registry-docs-showcase.js +0 -1
  886. package/dist/entries/registry-docs.d.ts +0 -1
  887. package/dist/entries/registry-docs.js +0 -1
  888. package/dist/entries/resizable.d.ts +0 -1
  889. package/dist/entries/resizable.js +0 -1
  890. package/dist/entries/scroll-area.d.ts +0 -1
  891. package/dist/entries/scroll-area.js +0 -1
  892. package/dist/entries/select.d.ts +0 -1
  893. package/dist/entries/select.js +0 -1
  894. package/dist/entries/separator.d.ts +0 -1
  895. package/dist/entries/separator.js +0 -1
  896. package/dist/entries/sheet.d.ts +0 -1
  897. package/dist/entries/sheet.js +0 -1
  898. package/dist/entries/sidebar/context.d.ts +0 -1
  899. package/dist/entries/sidebar/context.js +0 -1
  900. package/dist/entries/sidebar/group.d.ts +0 -1
  901. package/dist/entries/sidebar/group.js +0 -1
  902. package/dist/entries/sidebar/layout.d.ts +0 -1
  903. package/dist/entries/sidebar/layout.js +0 -1
  904. package/dist/entries/sidebar/menu.d.ts +0 -1
  905. package/dist/entries/sidebar/menu.js +0 -1
  906. package/dist/entries/sidebar/provider.d.ts +0 -1
  907. package/dist/entries/sidebar/provider.js +0 -1
  908. package/dist/entries/sidebar/rail.d.ts +0 -1
  909. package/dist/entries/sidebar/rail.js +0 -1
  910. package/dist/entries/sidebar/trigger.d.ts +0 -1
  911. package/dist/entries/sidebar/trigger.js +0 -1
  912. package/dist/entries/sidebar-account-menu-theme.d.ts +0 -1
  913. package/dist/entries/sidebar-account-menu-theme.js +0 -1
  914. package/dist/entries/sidebar-account-menu.d.ts +0 -1
  915. package/dist/entries/sidebar-account-menu.js +0 -1
  916. package/dist/entries/sidebar.d.ts +0 -1
  917. package/dist/entries/sidebar.js +0 -1
  918. package/dist/entries/skeleton.d.ts +0 -1
  919. package/dist/entries/skeleton.js +0 -1
  920. package/dist/entries/slider.d.ts +0 -1
  921. package/dist/entries/slider.js +0 -1
  922. package/dist/entries/sonner.d.ts +0 -1
  923. package/dist/entries/sonner.js +0 -1
  924. package/dist/entries/spinner.d.ts +0 -1
  925. package/dist/entries/spinner.js +0 -1
  926. package/dist/entries/submit-feedback-composer.d.ts +0 -1
  927. package/dist/entries/submit-feedback-composer.js +0 -1
  928. package/dist/entries/switch.d.ts +0 -1
  929. package/dist/entries/switch.js +0 -1
  930. package/dist/entries/table.d.ts +0 -1
  931. package/dist/entries/table.js +0 -1
  932. package/dist/entries/tabs-variants.d.ts +0 -1
  933. package/dist/entries/tabs-variants.js +0 -1
  934. package/dist/entries/tabs.d.ts +0 -1
  935. package/dist/entries/tabs.js +0 -1
  936. package/dist/entries/textarea.d.ts +0 -1
  937. package/dist/entries/textarea.js +0 -1
  938. package/dist/entries/timestamp-format.d.ts +0 -1
  939. package/dist/entries/timestamp-format.js +0 -1
  940. package/dist/entries/toggle-group.d.ts +0 -1
  941. package/dist/entries/toggle-group.js +0 -1
  942. package/dist/entries/toggle-variants.d.ts +0 -1
  943. package/dist/entries/toggle-variants.js +0 -1
  944. package/dist/entries/toggle.d.ts +0 -1
  945. package/dist/entries/toggle.js +0 -1
  946. package/dist/entries/tooltip.d.ts +0 -1
  947. package/dist/entries/tooltip.js +0 -1
  948. package/dist/entries/use-color-theme.d.ts +0 -1
  949. package/dist/entries/use-color-theme.js +0 -1
  950. package/dist/entries/use-feedback-composer-state.d.ts +0 -1
  951. package/dist/entries/use-feedback-composer-state.js +0 -1
  952. package/dist/entries/use-mobile.d.ts +0 -1
  953. package/dist/entries/use-mobile.js +0 -1
  954. package/dist/entries/utils.d.ts +0 -1
  955. package/dist/entries/utils.js +0 -1
  956. package/dist/entries/walkthrough.d.ts +0 -1
  957. package/dist/entries/walkthrough.js +0 -1
  958. package/dist/entries/workflow-timeline.d.ts +0 -1
  959. package/dist/entries/workflow-timeline.js +0 -1
  960. package/dist/hooks/use-mobile.d.ts +0 -1
  961. package/dist/hooks/use-mobile.js +0 -17
  962. package/dist/lib/browser-storage.d.ts +0 -12
  963. package/dist/lib/browser-storage.js +0 -42
  964. package/dist/lib/palette-presets.d.ts +0 -17
  965. package/dist/lib/palette-presets.js +0 -42
  966. package/dist/lib/palette-tokens.d.ts +0 -39
  967. package/dist/lib/palette-tokens.js +0 -133
  968. package/dist/lib/palette.d.ts +0 -83
  969. package/dist/lib/palette.js +0 -151
  970. package/dist/lib/utils.d.ts +0 -5
  971. package/dist/lib/utils.js +0 -8
  972. package/dist/style-imports.d.ts +0 -3
  973. /package/dist/{components/blocks/feedback-composer-types.js → feedback/comment-types.js} +0 -0
  974. /package/dist/{components/blocks/kanban-types.js → feedback/feedback-composer-types.js} +0 -0
  975. /package/dist/{components/walkthrough/runtime/walkthroughTypes.js → feedback/feedback-tracking-types.js} +0 -0
@@ -0,0 +1,10 @@
1
+ /** A newly issued secret, which the server returns once and keeps only a hash of. */
2
+ export type IssuedSecret = {
3
+ name: string;
4
+ secret: string;
5
+ };
6
+ /** Shows a secret the one time it can be copied; closes back to the caller with `onClose`. */
7
+ export declare function OneTimeSecretDialog({ issued, onClose, }: {
8
+ issued: IssuedSecret | null;
9
+ onClose: () => void;
10
+ }): import("@types/react").JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { CodeBlock } from "./data-display.js";
3
+ import { useCiridaeLocale } from "./locale.js";
4
+ import { Dialog } from "./overlays.js";
5
+ /** Shows a secret the one time it can be copied; closes back to the caller with `onClose`. */
6
+ export function OneTimeSecretDialog({ issued, onClose, }) {
7
+ const { labels } = useCiridaeLocale();
8
+ return (_jsx(Dialog, { open: issued !== null, onOpenChange: (nextOpen) => {
9
+ if (!nextOpen)
10
+ onClose();
11
+ }, title: issued ? labels.secret.titleFor(issued.name) : labels.secret.title, kind: "info", children: issued && (_jsx(CodeBlock, { copy: issued.secret, copyLabel: "secret", children: issued.secret })) }));
12
+ }
@@ -0,0 +1,23 @@
1
+ import { type ComponentProps, type ReactNode } from "react";
2
+ import type { Tone } from "./badge.js";
3
+ export type SegmentedBarSegment = {
4
+ id: string;
5
+ label: string;
6
+ value: number;
7
+ /** The segment's color by meaning; `neutral` by default. */
8
+ tone?: Tone;
9
+ /** A color of its own, such as a CSS variable the app themes, over `tone`. */
10
+ color?: string;
11
+ };
12
+ export type SegmentedBarProps = Omit<ComponentProps<"div">, "children"> & {
13
+ segments: readonly SegmentedBarSegment[];
14
+ /** Lists the segments under the bar; true by default. */
15
+ legend?: boolean;
16
+ /** The card a hovered or focused segment opens. */
17
+ renderDetail?: (segment: SegmentedBarSegment) => ReactNode;
18
+ /** Runs as a segment is clicked, such as opening the records it counts. */
19
+ onSegmentSelect?: (segment: SegmentedBarSegment) => void;
20
+ /** How a value reads in the legend and a segment's name; the locale's number by default. */
21
+ formatValue?: (value: number) => string;
22
+ };
23
+ export declare function SegmentedBar({ segments, legend, renderDetail, onSegmentSelect, formatValue, className, ...props }: SegmentedBarProps): import("@types/react").JSX.Element;
@@ -0,0 +1,75 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /*
3
+ * A whole split into its parts, such as unpaid invoices by the stage they wait at: one bar of
4
+ * segments sized by value, and a legend of each part's label and value under it. Hovering or
5
+ * focusing a segment dims the rest and, with `renderDetail`, opens a card about it, such as its
6
+ * total and a way into those records. Parts with no value keep their legend row but no segment.
7
+ */
8
+ import { Fragment, useState } from "react";
9
+ import { css, cva, cx } from "#primitives/css";
10
+ import { useCiridaeLocale } from "./locale.js";
11
+ import { Popover } from "./overlays.js";
12
+ const root = css({ display: "flex", flexDirection: "column", gap: "layout.sectionGap" });
13
+ const bar = css({ display: "flex", gap: "layout.tightGap", height: "8px" });
14
+ const toneColor = cva({
15
+ variants: {
16
+ tone: {
17
+ neutral: { background: "fg.subtle" },
18
+ info: { background: "accent.blue" },
19
+ success: { background: "accent.green" },
20
+ warning: { background: "accent.yellow" },
21
+ danger: { background: "accent.red" },
22
+ },
23
+ },
24
+ });
25
+ const segmentButton = css({
26
+ minWidth: "8px",
27
+ height: "100%",
28
+ padding: "0",
29
+ border: "0",
30
+ borderRadius: "round",
31
+ cursor: "pointer",
32
+ transitionProperty: "opacity",
33
+ transitionDuration: "fast",
34
+ "&[data-dimmed]": { opacity: "0.5" },
35
+ _focusVisible: { focusRing: "outer" },
36
+ });
37
+ const legendRow = css({
38
+ display: "flex",
39
+ justifyContent: "space-between",
40
+ flexWrap: "wrap",
41
+ gap: "layout.contentGap",
42
+ paddingTop: "panel.comfortable",
43
+ borderTop: "1px solid token(colors.border.panel)",
44
+ });
45
+ const legendItem = css({ display: "inline-flex", alignItems: "center", gap: "layout.contentGap" });
46
+ const legendKey = css({
47
+ display: "inline-flex",
48
+ alignItems: "center",
49
+ gap: "control.iconGap",
50
+ color: "fg.secondary",
51
+ fontSize: "code",
52
+ });
53
+ const swatch = css({ width: "6px", height: "12px", borderRadius: "control" });
54
+ export function SegmentedBar({ segments, legend = true, renderDetail, onSegmentSelect, formatValue, className, ...props }) {
55
+ const { formatNumber } = useCiridaeLocale();
56
+ const format = formatValue ?? ((value) => formatNumber(value));
57
+ const [markedId, setMarkedId] = useState(null);
58
+ const mark = (id, marked) => setMarkedId((current) => (marked ? id : current === id ? null : current));
59
+ const colorOf = (segment) => ({
60
+ className: segment.color ? undefined : toneColor({ tone: segment.tone ?? "neutral" }),
61
+ style: segment.color ? { background: segment.color } : undefined,
62
+ });
63
+ return (_jsxs("div", { ...props, className: cx(root, className), "data-ciridae-ui": "", children: [_jsx("div", { className: bar, children: segments
64
+ .filter((segment) => segment.value > 0)
65
+ .map((segment) => {
66
+ const color = colorOf(segment);
67
+ const button = (_jsx("button", { type: "button", className: cx(segmentButton, color.className), style: { ...color.style, flexGrow: segment.value, flexBasis: 0 }, "aria-label": `${segment.label}, ${format(segment.value)}`, "data-dimmed": markedId !== null && markedId !== segment.id ? "" : undefined, onClick: onSegmentSelect && (() => onSegmentSelect(segment)), onMouseEnter: renderDetail ? undefined : () => mark(segment.id, true), onMouseLeave: renderDetail ? undefined : () => mark(segment.id, false) }));
68
+ if (!renderDetail)
69
+ return _jsx(Fragment, { children: button }, segment.id);
70
+ return (_jsx(Popover, { openOnHover: true, density: "compact", width: "narrow", onOpenChange: (open) => mark(segment.id, open), trigger: button, children: renderDetail(segment) }, segment.id));
71
+ }) }), legend && (_jsx("div", { className: legendRow, children: segments.map((segment) => {
72
+ const color = colorOf(segment);
73
+ return (_jsxs("span", { className: legendItem, children: [_jsxs("span", { className: legendKey, children: [_jsx("span", { className: cx(swatch, color.className), style: color.style }), segment.label] }), format(segment.value)] }, segment.id));
74
+ }) }))] }));
75
+ }
@@ -0,0 +1,84 @@
1
+ import { type ReactNode } from "react";
2
+ export type SelectOption = {
3
+ label: string;
4
+ value: string;
5
+ };
6
+ /**
7
+ * The kit's control heights: `small` is the small button's 30px, `medium` the default 38px. A
8
+ * small select is the glass pill beside other filters; a medium one is a form's field.
9
+ */
10
+ export type ControlSize = "small" | "medium";
11
+ export type SelectProps = {
12
+ options: readonly SelectOption[];
13
+ value?: string;
14
+ onValueChange?: (value: string | null) => void;
15
+ /** The locale's "Select…" by default. */
16
+ placeholder?: string;
17
+ /** Names the trigger for assistive tech; inside a labelled field the field's label does. */
18
+ label?: string;
19
+ /** `medium` is the Round 2 field height; `small` is the pill beside other filters. */
20
+ size?: ControlSize;
21
+ /** Defaults to the flat `field` at medium and the glass `raised` face when small. */
22
+ variant?: "field" | "raised";
23
+ /** Submits the value with an enclosing form under this name. */
24
+ name?: string;
25
+ /** Blocks the enclosing form's submission until a value is chosen. */
26
+ required?: boolean;
27
+ disabled?: boolean;
28
+ };
29
+ export declare function Select({ options, value, onValueChange, placeholder, label, size: controlSize, variant, name, required, disabled, }: SelectProps): import("@types/react").JSX.Element;
30
+ export type SlicerProps = Omit<SelectProps, "size" | "variant" | "placeholder"> & {
31
+ /** What the slicer filters by, shown muted before the chosen value. */
32
+ label: string;
33
+ };
34
+ export declare function Slicer({ options, value, onValueChange, label, name, required, disabled, }: SlicerProps): import("@types/react").JSX.Element;
35
+ export type ComboboxProps<Option extends SelectOption> = {
36
+ options: readonly Option[];
37
+ value?: string;
38
+ onValueChange?: (value: string | null) => void;
39
+ /** The locale's "Search…" by default. */
40
+ placeholder?: string;
41
+ /**
42
+ * Names the field for assistive tech; inside a labelled field the field's label does. Compact,
43
+ * it is also the slicer's visible dimension.
44
+ */
45
+ label?: string;
46
+ /** `medium` is a field to type in; `small` is a `Slicer` pill whose menu leads with search. */
47
+ size?: ControlSize;
48
+ /** Draws an option's row, such as an avatar before a name. The chosen value stays its label. */
49
+ renderOption?: (option: Option) => ReactNode;
50
+ /** The locale's "No results" by default. */
51
+ emptyMessage?: ReactNode;
52
+ /** Submits the selected value with an enclosing form under this name. */
53
+ name?: string;
54
+ /** Blocks the enclosing form's submission until a value is chosen. */
55
+ required?: boolean;
56
+ disabled?: boolean;
57
+ /** Searches on the server: receives the typed query, debounced. */
58
+ onSearch?: (query: string) => void;
59
+ /** The options for the latest query are still loading. */
60
+ loading?: boolean;
61
+ /** Opens on mount, such as an inline editor that starts with its list open. */
62
+ defaultOpen?: boolean;
63
+ onOpenChange?: (open: boolean) => void;
64
+ /** Focuses the field to type in on mount. */
65
+ autoFocus?: boolean;
66
+ };
67
+ /**
68
+ * A `Select` whose options are narrowed by typing. Without `onSearch`, Base UI filters `options`
69
+ * itself. With `onSearch`, the caller owns the options: typing reports the query once it pauses,
70
+ * and the list shows whatever `options` the caller passes back, with `loading` while it fetches.
71
+ */
72
+ export declare function Combobox<Option extends SelectOption>({ options, value, onValueChange, placeholder: ownPlaceholder, label: ownLabel, size: controlSize, renderOption, emptyMessage, name, required, disabled, onSearch, loading, defaultOpen, onOpenChange, autoFocus, }: ComboboxProps<Option>): import("@types/react").JSX.Element;
73
+ export declare function FilterPopover({ label, count, open, onOpenChange, onClear, children, }: {
74
+ /** The locale's "Filters" by default. */
75
+ label?: ReactNode;
76
+ /** How many of the filters inside are set; shown on the pill when any are. */
77
+ count?: number;
78
+ open?: boolean;
79
+ onOpenChange?: (open: boolean) => void;
80
+ /** Adds Clear under the filters while any are set. */
81
+ onClear?: () => void;
82
+ /** The filters, such as compact `Combobox` and `Slicer` pills. */
83
+ children: ReactNode;
84
+ }): import("@types/react").JSX.Element;
@@ -0,0 +1,374 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Combobox as BaseCombobox } from "@base-ui/react/combobox";
3
+ import { Select as BaseSelect } from "@base-ui/react/select";
4
+ import { CaretDownIcon, CaretUpIcon, CheckIcon, FunnelSimpleIcon } from "@phosphor-icons/react";
5
+ import { useDebouncedCallback } from "@tanstack/react-pacer";
6
+ import { useVirtualizer } from "@tanstack/react-virtual";
7
+ import { useCallback, useEffect, useRef, useState } from "react";
8
+ import { css, cva, cx } from "#primitives/css";
9
+ import { Button } from "./button.js";
10
+ import { useFieldControl, useInField } from "./field-context.js";
11
+ import { HotkeyLayer } from "./hotkeys.js";
12
+ import { icon, Spinner } from "./icon.js";
13
+ import { useCiridaeLocale } from "./locale.js";
14
+ import { Popover } from "./overlays.js";
15
+ /*
16
+ * Open, a trigger and its menu read as one control: the menu sits flush on the trigger's edge, and
17
+ * the corners and border where they meet go square and quiet, on whichever side the menu opened.
18
+ */
19
+ const attachedTrigger = {
20
+ "&[data-popup-open][data-popup-side=bottom]": {
21
+ borderBottomLeftRadius: "0",
22
+ borderBottomRightRadius: "0",
23
+ borderBottomColor: "border.subtle",
24
+ },
25
+ "&[data-popup-open][data-popup-side=top]": {
26
+ borderTopLeftRadius: "0",
27
+ borderTopRightRadius: "0",
28
+ borderTopColor: "border.subtle",
29
+ },
30
+ };
31
+ /** Which side of its trigger the open popup sits on, read from the popup's own `data-side`. */
32
+ function usePopupSide() {
33
+ const [side, setSide] = useState(null);
34
+ const popupRef = useCallback((popup) => {
35
+ if (!popup)
36
+ return;
37
+ const read = () => setSide(popup.getAttribute("data-side"));
38
+ read();
39
+ const observer = new MutationObserver(read);
40
+ observer.observe(popup, { attributes: true, attributeFilter: ["data-side"] });
41
+ return () => observer.disconnect();
42
+ }, []);
43
+ return { side: side ?? undefined, popupRef };
44
+ }
45
+ /*
46
+ * Round 2 draws three select triggers. `field` is the input's flat well, for a form. `raised` is
47
+ * the glass face of a toolbar control; at the compact size it is a pill. Open, every one takes the
48
+ * control border its menu continues.
49
+ */
50
+ const trigger = cva({
51
+ base: {
52
+ display: "inline-flex",
53
+ alignItems: "center",
54
+ justifyContent: "space-between",
55
+ gap: "control.iconGap",
56
+ paddingInline: "control.compactInline",
57
+ border: "1px solid",
58
+ borderRadius: "control",
59
+ color: "fg.primary",
60
+ fontFamily: "sans",
61
+ fontWeight: "medium",
62
+ letterSpacing: "compact",
63
+ whiteSpace: "nowrap",
64
+ cursor: "pointer",
65
+ transitionProperty: "background, border-color",
66
+ transitionDuration: "fast",
67
+ "&[data-popup-open]": { borderColor: "border.control" },
68
+ ...attachedTrigger,
69
+ _focusVisible: { focusRing: "outer" },
70
+ "&:disabled, &[data-disabled]": { opacity: "disabled", cursor: "not-allowed" },
71
+ },
72
+ variants: {
73
+ variant: {
74
+ field: { background: "bg.field", borderColor: "border.control" },
75
+ // The gradient edge is `data-edge="toolbar"` on the trigger; the border stays clear for it.
76
+ raised: {
77
+ background: "bg.glass",
78
+ borderColor: "transparent",
79
+ _hover: { background: "bg.glassHover" },
80
+ },
81
+ },
82
+ size: {
83
+ regular: { minWidth: "overlay.menu", height: "control.default", fontSize: "body" },
84
+ /** Sized to its value, for a row of filters beside other compact controls. */
85
+ compact: {
86
+ height: "control.small",
87
+ paddingInlineEnd: "control.iconInline",
88
+ fontSize: "caption",
89
+ },
90
+ },
91
+ },
92
+ compoundVariants: [
93
+ { variant: "raised", size: "compact", css: { borderRadius: "action" } },
94
+ { variant: "raised", size: "regular", css: { gap: "layout.controlGap" } },
95
+ ],
96
+ defaultVariants: { variant: "field", size: "regular" },
97
+ });
98
+ /** The positioner is the positioned element, so it carries the stacking order. */
99
+ const positioner = css({ zIndex: "popover" });
100
+ /* Flush: the menu is the trigger's width and continues its open border, its rows run edge to edge,
101
+ and their text lines up under the trigger's own. The trigger's edge is the seam between them. A
102
+ long list stops at `overlay.menuList`, or the room left in the viewport, and scrolls inside. */
103
+ const popup = cva({
104
+ base: {
105
+ display: "flex",
106
+ flexDirection: "column",
107
+ width: "var(--anchor-width)",
108
+ maxHeight: "min(token(sizes.overlay.menuList), var(--available-height))",
109
+ padding: "none",
110
+ overflow: "hidden",
111
+ border: "1px solid token(colors.border.control)",
112
+ background: "bg.card",
113
+ boxShadow: "card",
114
+ "&[data-side=bottom]": { borderTop: "0", borderTopLeftRadius: "0", borderTopRightRadius: "0" },
115
+ "&[data-side=top]": {
116
+ borderBottom: "0",
117
+ borderBottomLeftRadius: "0",
118
+ borderBottomRightRadius: "0",
119
+ },
120
+ },
121
+ // The trigger's own corners: a field's near-square ones, a compact pill's rounder ones. A compact
122
+ // trigger is sized to its value, so its menu may run wider to keep every option whole.
123
+ variants: {
124
+ size: {
125
+ regular: { borderRadius: "control" },
126
+ compact: { borderRadius: "action", width: "max-content", minWidth: "var(--anchor-width)" },
127
+ },
128
+ },
129
+ defaultVariants: { size: "regular" },
130
+ });
131
+ const item = cva({
132
+ base: {
133
+ display: "flex",
134
+ alignItems: "center",
135
+ justifyContent: "space-between",
136
+ gap: "layout.contentGap",
137
+ height: "menu.item",
138
+ paddingInline: "control.compactInline",
139
+ color: "fg.muted",
140
+ fontSize: "caption",
141
+ cursor: "pointer",
142
+ _highlighted: { background: "bg.rowHover", color: "fg.primary" },
143
+ "&[data-selected]": { color: "fg.primary" },
144
+ // The menu is only as wide as its trigger, so a long option truncates rather than widening it.
145
+ "& > :first-child": { minWidth: "0", overflow: "hidden", textOverflow: "ellipsis" },
146
+ whiteSpace: "nowrap",
147
+ },
148
+ // A compact trigger's menu reads at the trigger's own text size.
149
+ variants: {
150
+ size: { regular: {}, compact: { height: "select.compactItem" } },
151
+ },
152
+ defaultVariants: { size: "compact" },
153
+ });
154
+ const itemIndicator = css({ display: "inline-flex", flexShrink: "0" });
155
+ /** Scrolls inside the capped popup; opening scrolls the chosen option into view. */
156
+ const list = css({ overflowY: "auto", overscrollBehavior: "contain" });
157
+ function density(size) {
158
+ return size === "small" ? "compact" : "regular";
159
+ }
160
+ function SelectMenu({ options, size, popupRef, }) {
161
+ return (_jsx(BaseSelect.Portal, { children: _jsx(HotkeyLayer, { children: _jsx(BaseSelect.Positioner, { className: positioner, sideOffset: 0, align: "start", alignItemWithTrigger: false, children: _jsx(BaseSelect.Popup, { ref: popupRef, className: popup({ size }), "data-ciridae-ui": "", children: _jsx(BaseSelect.List, { className: list, children: options.map((option) => (_jsxs(BaseSelect.Item, { className: item({ size }), value: option.value, children: [_jsx(BaseSelect.ItemText, { children: option.label }), _jsx(BaseSelect.ItemIndicator, { className: itemIndicator, children: _jsx(CheckIcon, { className: icon({ size: "small" }) }) })] }, option.value))) }) }) }) }) }));
162
+ }
163
+ export function Select({ options, value, onValueChange, placeholder, label, size: controlSize = "small", variant = controlSize === "small" ? "raised" : "field", name, required, disabled, }) {
164
+ const { side, popupRef } = usePopupSide();
165
+ const { labels } = useCiridaeLocale();
166
+ const fieldIds = useFieldControl({});
167
+ const inField = useInField();
168
+ const size = density(controlSize);
169
+ return (_jsxs(BaseSelect.Root, { items: options, value: value, onValueChange: onValueChange, name: name, required: required, disabled: disabled, children: [_jsxs(BaseSelect.Trigger, { ...fieldIds, className: trigger({ variant, size }), "aria-label": label ?? (inField ? undefined : labels.select.label), "data-ciridae-ui": "", "data-edge": variant === "raised" ? "toolbar" : undefined, "data-popup-side": side, children: [_jsx(BaseSelect.Value, { placeholder: placeholder ?? labels.select.placeholder }), _jsx(BaseSelect.Icon, { children: _jsx(CaretUpIcon, { className: icon({ size: "compact" }) }) })] }), _jsx(SelectMenu, { options: options, size: size, popupRef: popupRef })] }));
170
+ }
171
+ /*
172
+ * A slicer is a filter's pill: the dimension it cuts by, then the value chosen, then the caret.
173
+ * The same menu as `Select`; only the trigger names what it filters.
174
+ */
175
+ const slicerTrigger = css({
176
+ height: "control.compact",
177
+ borderRadius: "action",
178
+ fontSize: "caption",
179
+ justifyContent: "flex-start",
180
+ });
181
+ const slicerLabel = css({ color: "fg.muted" });
182
+ const slicerValue = css({ flex: "1", textAlign: "start" });
183
+ /** A combobox role takes no name from its content, so a slicer names its dimension and value. */
184
+ function slicerName(label, options, value) {
185
+ const chosen = options.find((option) => option.value === value);
186
+ return chosen ? `${label}: ${chosen.label}` : label;
187
+ }
188
+ export function Slicer({ options, value, onValueChange, label, name, required, disabled, }) {
189
+ const { side, popupRef } = usePopupSide();
190
+ return (_jsxs(BaseSelect.Root, { items: options, value: value, onValueChange: onValueChange, name: name, required: required, disabled: disabled, children: [_jsxs(BaseSelect.Trigger, { className: cx(trigger({ variant: "raised", size: "compact" }), slicerTrigger), "aria-label": slicerName(label, options, value), "data-ciridae-ui": "", "data-edge": "toolbar", "data-popup-side": side, children: [_jsx("span", { className: slicerLabel, "data-slicer-label": "", children: label }), _jsx(BaseSelect.Value, { className: slicerValue }), _jsx(BaseSelect.Icon, { children: _jsx(CaretDownIcon, { className: icon({ size: "small" }) }) })] }), _jsx(SelectMenu, { options: options, size: "compact", popupRef: popupRef })] }));
191
+ }
192
+ /* A regular combobox is a field: the well holds the typed query and a caret, and open, it joins
193
+ its menu exactly as a `Select` does. The ring shows only while closed, since open the menu is
194
+ the focus. */
195
+ const comboboxField = css({
196
+ display: "flex",
197
+ alignItems: "center",
198
+ width: "100%",
199
+ minWidth: "overlay.menu",
200
+ height: "control.default",
201
+ border: "1px solid token(colors.border.control)",
202
+ borderRadius: "control",
203
+ background: "bg.field",
204
+ ...attachedTrigger,
205
+ "&:has(input:focus-visible):not([data-popup-open])": { focusRing: "outer" },
206
+ "&[data-disabled]": { opacity: "disabled", cursor: "not-allowed" },
207
+ });
208
+ const comboboxInput = css({
209
+ flex: "1",
210
+ minWidth: "0",
211
+ height: "100%",
212
+ paddingInline: "control.compactInline",
213
+ border: "0",
214
+ background: "transparent",
215
+ color: "fg.primary",
216
+ fontFamily: "sans",
217
+ fontSize: "body",
218
+ fontWeight: "medium",
219
+ letterSpacing: "compact",
220
+ outline: "none",
221
+ "&::placeholder": { color: "fg.subtle" },
222
+ "&:disabled": { cursor: "not-allowed" },
223
+ });
224
+ const comboboxCaret = css({
225
+ display: "inline-flex",
226
+ alignItems: "center",
227
+ alignSelf: "stretch",
228
+ paddingInlineEnd: "control.compactInline",
229
+ border: "0",
230
+ background: "transparent",
231
+ color: "fg.primary",
232
+ cursor: "pointer",
233
+ outline: "none",
234
+ "&:disabled": { cursor: "not-allowed" },
235
+ });
236
+ /* A compact combobox is a slicer that searches: the same pill, with the query typed in a row at
237
+ the top of its menu. The menu keeps one width while typing narrows it. */
238
+ const comboboxPopup = cva({
239
+ variants: {
240
+ size: {
241
+ regular: {},
242
+ compact: { width: "max(var(--anchor-width), token(sizes.overlay.menu))" },
243
+ },
244
+ },
245
+ });
246
+ const comboboxSearch = css({
247
+ flexShrink: "0",
248
+ width: "100%",
249
+ height: "select.compactItem",
250
+ paddingInline: "control.compactInline",
251
+ border: "0",
252
+ borderBottom: "1px solid token(colors.border.subtle)",
253
+ background: "transparent",
254
+ color: "fg.primary",
255
+ fontFamily: "sans",
256
+ fontSize: "caption",
257
+ fontWeight: "medium",
258
+ letterSpacing: "compact",
259
+ outline: "none",
260
+ "&::placeholder": { color: "fg.subtle" },
261
+ });
262
+ const optionContent = css({
263
+ display: "flex",
264
+ alignItems: "center",
265
+ gap: "control.iconGap",
266
+ flex: "1",
267
+ minWidth: "0",
268
+ overflow: "hidden",
269
+ textOverflow: "ellipsis",
270
+ });
271
+ const emptyMessageStyle = css({
272
+ paddingBlock: "control.compactBlock",
273
+ paddingInline: "control.compactInline",
274
+ color: "fg.muted",
275
+ fontSize: "caption",
276
+ // Base UI keeps the empty slot mounted while options are listed.
277
+ "&:empty": { display: "none" },
278
+ });
279
+ /** How long typing pauses before a server-searched `Combobox` asks for new options. */
280
+ const searchDebounceMs = 300;
281
+ /**
282
+ * A `Select` whose options are narrowed by typing. Without `onSearch`, Base UI filters `options`
283
+ * itself. With `onSearch`, the caller owns the options: typing reports the query once it pauses,
284
+ * and the list shows whatever `options` the caller passes back, with `loading` while it fetches.
285
+ */
286
+ export function Combobox({ options, value, onValueChange, placeholder: ownPlaceholder, label: ownLabel, size: controlSize = "medium", renderOption, emptyMessage, name, required, disabled, onSearch, loading = false, defaultOpen, onOpenChange, autoFocus, }) {
287
+ const { labels } = useCiridaeLocale();
288
+ const fieldIds = useFieldControl({});
289
+ const inField = useInField();
290
+ const size = density(controlSize);
291
+ const placeholder = ownPlaceholder ?? labels.common.searchPlaceholder;
292
+ const label = ownLabel ?? labels.select.searchLabel;
293
+ const inputLabel = ownLabel ?? (inField ? undefined : labels.select.searchLabel);
294
+ // A server search replaces `options`; keep the chosen option so the input still names it.
295
+ const [chosen, setChosen] = useState(null);
296
+ const search = useDebouncedCallback((query) => onSearch?.(query), {
297
+ wait: searchDebounceMs,
298
+ });
299
+ const selected = options.find((option) => option.value === value) ?? (chosen?.value === value ? chosen : null);
300
+ // Past `virtualizeOptionsPast` options the list draws only those near the view; the arrow
301
+ // keys still walk every option, and the list scrolls to the one they land on.
302
+ const virtualized = options.length > virtualizeOptionsPast;
303
+ const scrollToOption = useRef(null);
304
+ return (_jsxs(BaseCombobox.Root, { items: options, value: selected, onValueChange: (option) => {
305
+ setChosen(option);
306
+ onValueChange?.(option?.value ?? null);
307
+ }, name: name, required: required, disabled: disabled, defaultOpen: defaultOpen, onOpenChange: onOpenChange && ((open) => onOpenChange(open)), virtualized: virtualized, onItemHighlighted: (_option, details) => {
308
+ if (virtualized && details.reason === "keyboard")
309
+ scrollToOption.current?.(details.index);
310
+ }, ...(onSearch && {
311
+ filter: null,
312
+ onInputValueChange: (input, details) => {
313
+ if (details.reason === "input-change" || details.reason === "input-clear")
314
+ search(input);
315
+ },
316
+ }), children: [size === "compact" ? (_jsxs(BaseCombobox.Trigger, { className: cx(trigger({ variant: "raised", size: "compact" }), slicerTrigger), "aria-label": slicerName(label, options, value), "data-ciridae-ui": "", "data-edge": "toolbar", children: [_jsx("span", { className: slicerLabel, "data-slicer-label": "", children: label }), _jsx("span", { className: slicerValue, children: selected?.label }), _jsx(CaretDownIcon, { className: icon({ size: "small" }) })] })) : (_jsxs(BaseCombobox.InputGroup, { className: comboboxField, "data-ciridae-ui": "", children: [_jsx(BaseCombobox.Input, { ...fieldIds, className: comboboxInput, "aria-label": inputLabel, placeholder: placeholder, autoFocus: autoFocus }), _jsx(BaseCombobox.Trigger, { className: comboboxCaret, "aria-label": label, tabIndex: -1, children: _jsx(CaretUpIcon, { className: icon({ size: "compact" }) }) })] })), _jsx(BaseCombobox.Portal, { children: _jsx(HotkeyLayer, { children: _jsx(BaseCombobox.Positioner, { className: positioner, sideOffset: 0, align: "start", children: _jsxs(BaseCombobox.Popup, { className: css(popup.raw({ size }), comboboxPopup.raw({ size })), "data-ciridae-ui": "", children: [size === "compact" && (_jsx(BaseCombobox.Input, { className: comboboxSearch, "aria-label": label, placeholder: placeholder })), loading ? (_jsx("div", { className: emptyMessageStyle, children: _jsx(Spinner, { size: "compact" }) })) : (_jsx(BaseCombobox.Empty, { className: emptyMessageStyle, children: emptyMessage ?? labels.common.noResults })), virtualized ? (_jsx(VirtualOptions, { size: size, renderOption: renderOption, scrollToOption: scrollToOption })) : (_jsx(BaseCombobox.List, { className: list, children: (option) => (_jsxs(BaseCombobox.Item, { className: item({ size }), value: option, children: [_jsx("span", { className: optionContent, children: renderOption ? renderOption(option) : option.label }), _jsx(BaseCombobox.ItemIndicator, { className: itemIndicator, children: _jsx(CheckIcon, { className: icon({ size: "small" }) }) })] }, option.value)) }))] }) }) }) })] }));
317
+ }
318
+ /** Past this many options a combobox draws only those near the view. */
319
+ const virtualizeOptionsPast = 50;
320
+ /** An option row's height before it is measured. */
321
+ const optionHeights = { regular: 38, compact: 30 };
322
+ // The options lie over a box as tall as all of them, each moved down to its place.
323
+ const virtualOptions = css({
324
+ position: "relative",
325
+ "& > *": { position: "absolute", top: "0", insetInline: "0" },
326
+ });
327
+ /** The filtered options near the view, inside the combobox's list, which scrolls them. */
328
+ function VirtualOptions({ size, renderOption, scrollToOption, }) {
329
+ const shown = BaseCombobox.useFilteredItems();
330
+ const [listElement, setListElement] = useState(null);
331
+ const virtualizer = useVirtualizer({
332
+ count: shown.length,
333
+ getScrollElement: () => listElement,
334
+ estimateSize: () => optionHeights[size],
335
+ getItemKey: (index) => shown[index]?.value ?? index,
336
+ overscan: 8,
337
+ });
338
+ useEffect(() => {
339
+ scrollToOption.current = (index) => virtualizer.scrollToIndex(index, { align: "auto" });
340
+ return () => {
341
+ scrollToOption.current = null;
342
+ };
343
+ }, [scrollToOption, virtualizer]);
344
+ return (_jsx(BaseCombobox.List, { ref: setListElement, className: list, children: _jsx("div", { className: virtualOptions, style: { height: virtualizer.getTotalSize() }, children: virtualizer.getVirtualItems().map((virtualItem) => {
345
+ const option = shown[virtualItem.index];
346
+ return (option && (_jsxs(BaseCombobox.Item, { ref: virtualizer.measureElement, "data-index": virtualItem.index, index: virtualItem.index, value: option, className: item({ size }), style: { transform: `translateY(${virtualItem.start}px)` }, children: [_jsx("span", { className: optionContent, children: renderOption ? renderOption(option) : option.label }), _jsx(BaseCombobox.ItemIndicator, { className: itemIndicator, children: _jsx(CheckIcon, { className: icon({ size: "small" }) }) })] }, option.value)));
347
+ }) }) }));
348
+ }
349
+ /*
350
+ * Filters a toolbar has no room to show: a slicer-faced pill that counts the ones set, opening a
351
+ * popover that stacks them, each as wide as the stack.
352
+ */
353
+ const filterCount = css({
354
+ display: "inline-grid",
355
+ placeItems: "center",
356
+ minWidth: "indicator.count",
357
+ height: "indicator.count",
358
+ paddingInline: "layout.tightGap",
359
+ borderRadius: "control",
360
+ background: "bg.selected",
361
+ color: "fg.primary",
362
+ fontSize: "avatar.small",
363
+ fontVariantNumeric: "tabular-nums",
364
+ });
365
+ const filterStack = css({
366
+ display: "grid",
367
+ gap: "layout.controlGap",
368
+ width: "overlay.tooltip",
369
+ maxWidth: "100%",
370
+ });
371
+ export function FilterPopover({ label, count = 0, open, onOpenChange, onClear, children, }) {
372
+ const { labels } = useCiridaeLocale();
373
+ return (_jsx(Popover, { open: open, onOpenChange: onOpenChange && ((next) => onOpenChange(next)), density: "compact", trigger: _jsxs("button", { type: "button", className: cx(trigger({ variant: "raised", size: "compact" }), slicerTrigger), "data-ciridae-ui": "", "data-edge": "toolbar", children: [_jsx(FunnelSimpleIcon, { className: icon({ size: "small" }) }), label ?? labels.select.filters, count > 0 && _jsx("span", { className: filterCount, children: count })] }), children: _jsxs("div", { className: filterStack, children: [children, onClear && count > 0 && (_jsx(Button, { variant: "ghost", className: css({ justifySelf: "start" }), onClick: onClear, children: labels.filters.clearAll }))] }) }));
374
+ }
@@ -0,0 +1,34 @@
1
+ import { type PanelProps } from "./panel.js";
2
+ import type { ComponentProps, ReactElement, ReactNode } from "react";
3
+ export type SettingsSectionLink<Value extends string = string> = {
4
+ value: Value;
5
+ label: string;
6
+ icon?: ReactNode;
7
+ /** Makes the section a link to this address. */
8
+ href?: string;
9
+ /** The section's link element, such as a router's `<Link to="...">`. */
10
+ render?: ReactElement;
11
+ };
12
+ export type SettingsLayoutProps<Value extends string> = Omit<ComponentProps<"div">, "children" | "onChange"> & {
13
+ sections: readonly SettingsSectionLink<Value>[];
14
+ /** The open section. */
15
+ value: Value;
16
+ /** A section was chosen; links navigate on their own and report it too. */
17
+ onValueChange?: (value: Value) => void;
18
+ children: ReactNode;
19
+ labels?: Partial<{
20
+ navigation: string;
21
+ }>;
22
+ };
23
+ export declare function SettingsLayout<Value extends string>({ sections, value, onValueChange, children, labels: ownLabels, className, ...props }: SettingsLayoutProps<Value>): import("@types/react").JSX.Element;
24
+ /** A settings section's single column of panels; the shell header carries the page's title. */
25
+ export declare function SettingsColumn({ className, ...props }: ComponentProps<"div">): import("@types/react").JSX.Element;
26
+ /** One group of settings, under an optional heading with an optional action beside it. */
27
+ export declare function SettingsPanel({ title, action, children, ...props }: Omit<PanelProps, "title" | "padding" | "tone"> & {
28
+ title?: ReactNode;
29
+ action?: ReactNode;
30
+ }): import("@types/react").JSX.Element;
31
+ /** A label and its value or control on one line inside a settings panel. */
32
+ export declare function SettingsRow({ label, children, className, ...props }: ComponentProps<"div"> & {
33
+ label: ReactNode;
34
+ }): import("@types/react").JSX.Element;