@ctrl-ui/react 0.8.7 → 0.8.9

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 (341) hide show
  1. package/dist/action-bar.d.ts +15 -7
  2. package/dist/action-bar.js +39 -19
  3. package/dist/activity.js +7 -15
  4. package/dist/audio-recorder.d.ts +14 -4
  5. package/dist/audio-recorder.js +82 -29
  6. package/dist/audio-visualizer.js +1 -1
  7. package/dist/blocks/coding-agent.js +39 -39
  8. package/dist/blocks/design-canvas.d.ts +5 -1
  9. package/dist/blocks/design-canvas.js +198 -92
  10. package/dist/blocks/discussion.d.ts +28 -0
  11. package/dist/blocks/discussion.js +67 -0
  12. package/dist/blocks/file-explorer-data.d.ts +1 -0
  13. package/dist/blocks/file-explorer-data.js +4 -1
  14. package/dist/blocks/file-explorer.d.ts +9 -1
  15. package/dist/blocks/file-explorer.js +461 -192
  16. package/dist/blocks/settings.d.ts +2 -1
  17. package/dist/blocks/settings.js +101 -79
  18. package/dist/blocks/team-chat.d.ts +12 -0
  19. package/dist/blocks/team-chat.js +26 -0
  20. package/dist/blocks/theme-toggle.js +23 -31
  21. package/dist/chat-composer-attachment.d.ts +4 -1
  22. package/dist/chat-composer-attachment.js +35 -10
  23. package/dist/chat-composer-editor/extensions/mention.d.ts +5 -1
  24. package/dist/chat-composer-editor/extensions/mention.js +59 -28
  25. package/dist/chat-composer-editor/ghost.js +2 -4
  26. package/dist/chat-composer-editor/types.d.ts +5 -0
  27. package/dist/chat-composer-editor.d.ts +1 -1
  28. package/dist/chat-composer-editor.js +57 -30
  29. package/dist/chat-composer.d.ts +13 -32
  30. package/dist/chat-composer.js +52 -12
  31. package/dist/chat-layout.d.ts +19 -0
  32. package/dist/chat-layout.js +91 -40
  33. package/dist/chat-message/social.d.ts +26 -0
  34. package/dist/chat-message/social.js +122 -0
  35. package/dist/chat-message.d.ts +28 -29
  36. package/dist/chat-message.js +106 -25
  37. package/dist/context.d.ts +2 -2
  38. package/dist/context.js +38 -23
  39. package/dist/dynamic-notification-canvas-loop.d.ts +24 -0
  40. package/dist/dynamic-notification-canvas-loop.js +113 -0
  41. package/dist/dynamic-notification-glass.js +23 -114
  42. package/dist/dynamic-notification-liquid.js +14 -118
  43. package/dist/dynamic-notification.d.ts +16 -8
  44. package/dist/dynamic-notification.js +85 -22
  45. package/dist/email/email-brand.d.ts +7 -4
  46. package/dist/email/email-brand.js +9 -6
  47. package/dist/email/email-code.d.ts +3 -2
  48. package/dist/email/email-code.js +11 -9
  49. package/dist/email/email-footer.d.ts +5 -3
  50. package/dist/email/email-footer.js +11 -5
  51. package/dist/email/email.d.ts +31 -9
  52. package/dist/email/email.js +50 -26
  53. package/dist/email/templates.d.ts +10 -9
  54. package/dist/email/templates.js +102 -38
  55. package/dist/email/theme.js +1 -1
  56. package/dist/environment-variables.d.ts +4 -2
  57. package/dist/environment-variables.js +52 -32
  58. package/dist/filter-bar/editor.js +20 -8
  59. package/dist/filter-bar/model.d.ts +1 -0
  60. package/dist/filter-bar/model.js +10 -1
  61. package/dist/filter-bar/motion.js +4 -4
  62. package/dist/filter-bar/parts.js +19 -8
  63. package/dist/filter-bar/types.d.ts +1 -0
  64. package/dist/filter-bar.js +19 -13
  65. package/dist/hooks/use-audio-recorder.js +12 -6
  66. package/dist/hooks/use-chat-composer.d.ts +19 -7
  67. package/dist/hooks/use-chat-composer.js +32 -5
  68. package/dist/hooks/use-chat-message.d.ts +28 -2
  69. package/dist/hooks/use-chat-message.js +41 -10
  70. package/dist/hooks/use-chat-thread-scroll.js +43 -7
  71. package/dist/hooks/use-color-area.d.ts +3 -3
  72. package/dist/hooks/use-color-area.js +13 -12
  73. package/dist/hooks/use-copy-to-clipboard.d.ts +2 -1
  74. package/dist/hooks/use-copy-to-clipboard.js +20 -20
  75. package/dist/hooks/use-dynamic-notification.d.ts +6 -2
  76. package/dist/hooks/use-dynamic-notification.js +26 -10
  77. package/dist/hooks/use-mobile.d.ts +3 -2
  78. package/dist/hooks/use-mobile.js +8 -4
  79. package/dist/hooks/use-textarea-trigger-menu.js +2 -1
  80. package/dist/hooks/use-trigger-menu.d.ts +54 -0
  81. package/dist/hooks/use-trigger-menu.js +102 -47
  82. package/dist/hooks/use-user-ask.d.ts +2 -0
  83. package/dist/hooks/use-user-ask.js +35 -41
  84. package/dist/inline-attachment.d.ts +6 -2
  85. package/dist/inline-attachment.js +36 -15
  86. package/dist/inline-citation.d.ts +12 -5
  87. package/dist/inline-citation.js +25 -16
  88. package/dist/knob-contracts/audio-recorder-knobs.d.ts +1 -1
  89. package/dist/knob-contracts/audio-recorder-knobs.js +2 -1
  90. package/dist/knob-contracts/audio-visualizer-knobs.d.ts +1 -1
  91. package/dist/knob-contracts/audio-visualizer-knobs.js +2 -1
  92. package/dist/knob-contracts/avatar-knobs.d.ts +1 -1
  93. package/dist/knob-contracts/avatar-knobs.js +6 -1
  94. package/dist/knob-contracts/badge-knobs.d.ts +1 -1
  95. package/dist/knob-contracts/badge-knobs.js +2 -1
  96. package/dist/knob-contracts/breadcrumb-knobs.d.ts +4 -0
  97. package/dist/knob-contracts/breadcrumb-knobs.js +8 -0
  98. package/dist/knob-contracts/button-knobs.d.ts +1 -1
  99. package/dist/knob-contracts/button-knobs.js +1 -0
  100. package/dist/knob-contracts/chat-message-knobs.d.ts +1 -1
  101. package/dist/knob-contracts/chat-message-knobs.js +8 -1
  102. package/dist/knob-contracts/code-diff-knobs.d.ts +1 -1
  103. package/dist/knob-contracts/code-diff-knobs.js +2 -0
  104. package/dist/knob-contracts/code-knobs.d.ts +1 -1
  105. package/dist/knob-contracts/code-knobs.js +2 -1
  106. package/dist/knob-contracts/dynamic-notification-knobs.d.ts +1 -1
  107. package/dist/knob-contracts/dynamic-notification-knobs.js +2 -0
  108. package/dist/knob-contracts/emoji-picker-knobs.d.ts +4 -0
  109. package/dist/knob-contracts/emoji-picker-knobs.js +10 -0
  110. package/dist/knob-contracts/field-knobs.d.ts +1 -1
  111. package/dist/knob-contracts/field-knobs.js +5 -1
  112. package/dist/knob-contracts/filter-bar-knobs.d.ts +1 -1
  113. package/dist/knob-contracts/filter-bar-knobs.js +1 -2
  114. package/dist/knob-contracts/markdown-knobs.d.ts +1 -1
  115. package/dist/knob-contracts/markdown-knobs.js +3 -1
  116. package/dist/knob-contracts/page-layout-knobs.d.ts +1 -1
  117. package/dist/knob-contracts/page-layout-knobs.js +2 -1
  118. package/dist/knob-contracts/popup-knobs.d.ts +1 -1
  119. package/dist/knob-contracts/popup-knobs.js +27 -0
  120. package/dist/knob-contracts/range-knobs.d.ts +1 -1
  121. package/dist/knob-contracts/range-knobs.js +1 -0
  122. package/dist/knob-contracts/rich-tooltip-knobs.d.ts +1 -1
  123. package/dist/knob-contracts/rich-tooltip-knobs.js +2 -1
  124. package/dist/knob-contracts/sidebar-knobs.d.ts +1 -1
  125. package/dist/knob-contracts/sidebar-knobs.js +27 -2
  126. package/dist/knob-contracts/spinner-knobs.d.ts +1 -1
  127. package/dist/knob-contracts/spinner-knobs.js +1 -1
  128. package/dist/knob-contracts/stepper-knobs.d.ts +1 -1
  129. package/dist/knob-contracts/stepper-knobs.js +4 -1
  130. package/dist/knob-contracts/switch-knobs.d.ts +1 -1
  131. package/dist/knob-contracts/switch-knobs.js +5 -0
  132. package/dist/knob-contracts/table-of-contents-knobs.d.ts +1 -1
  133. package/dist/knob-contracts/table-of-contents-knobs.js +2 -1
  134. package/dist/knob-contracts/tabs-knobs.d.ts +1 -1
  135. package/dist/knob-contracts/tabs-knobs.js +1 -0
  136. package/dist/knob-contracts/tree-knobs.d.ts +1 -1
  137. package/dist/knob-contracts/tree-knobs.js +2 -1
  138. package/dist/lib/cn.js +0 -4
  139. package/dist/lib/contrast.d.ts +1 -0
  140. package/dist/lib/contrast.js +17 -5
  141. package/dist/lib/dropzone-validation.js +41 -28
  142. package/dist/lib/env-file.d.ts +1 -1
  143. package/dist/lib/env-file.js +5 -5
  144. package/dist/lib/motion.d.ts +4 -0
  145. package/dist/lib/motion.js +15 -0
  146. package/dist/lib/trigger-detect.js +6 -8
  147. package/dist/markdown-block.js +2 -1
  148. package/dist/popup-parts.d.ts +8 -0
  149. package/dist/popup-parts.js +43 -0
  150. package/dist/source-badge.js +3 -1
  151. package/dist/styles/code.css +0 -2
  152. package/dist/styles/effects.css +6 -32
  153. package/dist/styles/index.css +10 -5
  154. package/dist/styles/recipes/accordion.css +9 -6
  155. package/dist/styles/recipes/action-bar.css +0 -15
  156. package/dist/styles/recipes/activity.css +5 -11
  157. package/dist/styles/recipes/alert.css +4 -4
  158. package/dist/styles/recipes/audio-recorder.css +15 -3
  159. package/dist/styles/recipes/audio-visualizer.css +13 -2
  160. package/dist/styles/recipes/avatar.css +78 -1
  161. package/dist/styles/recipes/badge.css +14 -4
  162. package/dist/styles/recipes/breadcrumb.css +77 -0
  163. package/dist/styles/recipes/button-group.css +5 -7
  164. package/dist/styles/recipes/button-states.css +66 -0
  165. package/dist/styles/recipes/button.css +24 -83
  166. package/dist/styles/recipes/calendar.css +17 -23
  167. package/dist/styles/recipes/card.css +2 -2
  168. package/dist/styles/recipes/chat-composer-attachment.css +9 -3
  169. package/dist/styles/recipes/chat-composer.css +7 -10
  170. package/dist/styles/recipes/chat-layout.css +35 -0
  171. package/dist/styles/recipes/chat-message-social.css +123 -0
  172. package/dist/styles/recipes/chat-message.css +157 -37
  173. package/dist/styles/recipes/choice.css +18 -21
  174. package/dist/styles/recipes/code-diff.css +46 -33
  175. package/dist/styles/recipes/code.css +36 -16
  176. package/dist/styles/recipes/collapsible.css +7 -2
  177. package/dist/styles/recipes/color-picker-details.css +3 -4
  178. package/dist/styles/recipes/color-picker-values.css +9 -8
  179. package/dist/styles/recipes/color-picker.css +11 -2
  180. package/dist/styles/recipes/context.css +3 -3
  181. package/dist/styles/recipes/dockable-panel.css +7 -4
  182. package/dist/styles/recipes/dropzone.css +7 -8
  183. package/dist/styles/recipes/dynamic-notification-input.css +8 -5
  184. package/dist/styles/recipes/dynamic-notification-motion.css +12 -21
  185. package/dist/styles/recipes/dynamic-notification.css +40 -26
  186. package/dist/styles/recipes/emoji-picker.css +132 -0
  187. package/dist/styles/recipes/empty.css +5 -4
  188. package/dist/styles/recipes/environment-variables.css +4 -15
  189. package/dist/styles/recipes/field-parts.css +30 -24
  190. package/dist/styles/recipes/field.css +61 -26
  191. package/dist/styles/recipes/filter-bar.css +18 -31
  192. package/dist/styles/recipes/gradient-editor.css +18 -7
  193. package/dist/styles/recipes/infinite-canvas.css +0 -1
  194. package/dist/styles/recipes/inline-attachment.css +3 -3
  195. package/dist/styles/recipes/inline-citation.css +10 -4
  196. package/dist/styles/recipes/item.css +23 -9
  197. package/dist/styles/recipes/markdown-block.css +5 -4
  198. package/dist/styles/recipes/markdown.css +68 -26
  199. package/dist/styles/recipes/morphing-panel.css +8 -8
  200. package/dist/styles/recipes/page-layout.css +20 -12
  201. package/dist/styles/recipes/pagination.css +4 -5
  202. package/dist/styles/recipes/phone-input.css +12 -8
  203. package/dist/styles/recipes/popup-controls.css +166 -33
  204. package/dist/styles/recipes/popup-drawer.css +3 -14
  205. package/dist/styles/recipes/popup-lists.css +128 -27
  206. package/dist/styles/recipes/popup-motion.css +4 -45
  207. package/dist/styles/recipes/popup-toast.css +55 -26
  208. package/dist/styles/recipes/popup.css +139 -141
  209. package/dist/styles/recipes/range.css +54 -18
  210. package/dist/styles/recipes/resizable.css +2 -7
  211. package/dist/styles/recipes/rich-tooltip.css +24 -34
  212. package/dist/styles/recipes/scroll-area.css +8 -1
  213. package/dist/styles/recipes/sidebar-menu.css +166 -34
  214. package/dist/styles/recipes/sidebar-parts.css +192 -0
  215. package/dist/styles/recipes/sidebar.css +188 -128
  216. package/dist/styles/recipes/source-badge.css +1 -1
  217. package/dist/styles/recipes/spinner.css +8 -1
  218. package/dist/styles/recipes/stepper.css +31 -13
  219. package/dist/styles/recipes/switch.css +68 -23
  220. package/dist/styles/recipes/table-of-contents.css +9 -1
  221. package/dist/styles/recipes/table.css +14 -10
  222. package/dist/styles/recipes/tabs.css +17 -12
  223. package/dist/styles/recipes/task-list.css +7 -14
  224. package/dist/styles/recipes/thread-rail.css +42 -19
  225. package/dist/styles/recipes/timeline.css +2 -0
  226. package/dist/styles/recipes/toolbar.css +27 -25
  227. package/dist/styles/recipes/track-highlight.css +10 -7
  228. package/dist/styles/recipes/tree.css +31 -4
  229. package/dist/styles/recipes/user-ask-details.css +0 -1
  230. package/dist/styles/recipes/user-ask.css +4 -4
  231. package/dist/styles/theme.css +37 -16
  232. package/dist/task-list.d.ts +4 -1
  233. package/dist/task-list.js +24 -8
  234. package/dist/thread-rail.d.ts +1 -1
  235. package/dist/thread-rail.js +61 -19
  236. package/dist/transcript-divider.js +2 -1
  237. package/dist/ui/alert.d.ts +3 -1
  238. package/dist/ui/alert.js +14 -8
  239. package/dist/ui/autocomplete.js +3 -1
  240. package/dist/ui/avatar.d.ts +8 -0
  241. package/dist/ui/avatar.js +23 -3
  242. package/dist/ui/badge.js +1 -1
  243. package/dist/ui/breadcrumb.d.ts +27 -0
  244. package/dist/ui/breadcrumb.js +88 -0
  245. package/dist/ui/button.d.ts +2 -1
  246. package/dist/ui/button.js +1 -1
  247. package/dist/ui/calendar.js +2 -2
  248. package/dist/ui/card.d.ts +3 -1
  249. package/dist/ui/card.js +12 -7
  250. package/dist/ui/checkbox.d.ts +2 -0
  251. package/dist/ui/code-diff.d.ts +1 -1
  252. package/dist/ui/code-diff.js +71 -27
  253. package/dist/ui/code.d.ts +5 -3
  254. package/dist/ui/code.js +26 -27
  255. package/dist/ui/color-picker.d.ts +5 -2
  256. package/dist/ui/color-picker.js +84 -36
  257. package/dist/ui/combobox-disabled-selection.d.ts +1 -2
  258. package/dist/ui/combobox-disabled-selection.js +7 -9
  259. package/dist/ui/combobox.js +13 -5
  260. package/dist/ui/command.d.ts +8 -2
  261. package/dist/ui/command.js +30 -14
  262. package/dist/ui/context-menu.js +3 -0
  263. package/dist/ui/dialog.d.ts +2 -1
  264. package/dist/ui/dialog.js +3 -22
  265. package/dist/ui/dockable-panel-geometry.d.ts +1 -0
  266. package/dist/ui/dockable-panel-geometry.js +7 -1
  267. package/dist/ui/dockable-panel.d.ts +9 -6
  268. package/dist/ui/dockable-panel.js +63 -23
  269. package/dist/ui/dropdown-menu.js +4 -3
  270. package/dist/ui/dropzone.d.ts +2 -2
  271. package/dist/ui/dropzone.js +75 -16
  272. package/dist/ui/emoji-picker.d.ts +18 -0
  273. package/dist/ui/emoji-picker.js +136 -0
  274. package/dist/ui/empty.d.ts +3 -1
  275. package/dist/ui/empty.js +12 -7
  276. package/dist/ui/gradient-editor.d.ts +1 -1
  277. package/dist/ui/gradient-editor.js +37 -21
  278. package/dist/ui/infinite-canvas.d.ts +3 -2
  279. package/dist/ui/infinite-canvas.js +63 -19
  280. package/dist/ui/input-group.d.ts +0 -3
  281. package/dist/ui/input-group.js +3 -13
  282. package/dist/ui/input-otp.d.ts +1 -1
  283. package/dist/ui/input-otp.js +32 -15
  284. package/dist/ui/input.js +4 -4
  285. package/dist/ui/item.d.ts +2 -1
  286. package/dist/ui/item.js +11 -7
  287. package/dist/ui/live-status.d.ts +7 -0
  288. package/dist/ui/live-status.js +17 -0
  289. package/dist/ui/markdown-elements.d.ts +6 -0
  290. package/dist/ui/markdown-elements.js +31 -1
  291. package/dist/ui/menubar.js +2 -2
  292. package/dist/ui/morphing-panel.js +2 -1
  293. package/dist/ui/native-select.d.ts +1 -1
  294. package/dist/ui/native-select.js +24 -11
  295. package/dist/ui/page-layout.d.ts +2 -2
  296. package/dist/ui/page-layout.js +2 -4
  297. package/dist/ui/pagination.d.ts +7 -5
  298. package/dist/ui/pagination.js +19 -13
  299. package/dist/ui/phone-input.d.ts +1 -0
  300. package/dist/ui/phone-input.js +56 -58
  301. package/dist/ui/radio-group.d.ts +2 -0
  302. package/dist/ui/resizable.d.ts +3 -2
  303. package/dist/ui/resizable.js +5 -3
  304. package/dist/ui/responsive-dialog.d.ts +1 -1
  305. package/dist/ui/responsive-dialog.js +4 -21
  306. package/dist/ui/rich-tooltip.d.ts +10 -4
  307. package/dist/ui/rich-tooltip.js +81 -33
  308. package/dist/ui/scroll-area.d.ts +1 -1
  309. package/dist/ui/scroll-area.js +43 -28
  310. package/dist/ui/sidebar-menu.d.ts +5 -1
  311. package/dist/ui/sidebar-menu.js +34 -34
  312. package/dist/ui/sidebar-provider.d.ts +10 -1
  313. package/dist/ui/sidebar-provider.js +38 -13
  314. package/dist/ui/sidebar-resize-rail.js +7 -3
  315. package/dist/ui/sidebar.d.ts +11 -6
  316. package/dist/ui/sidebar.js +48 -24
  317. package/dist/ui/slider.js +31 -22
  318. package/dist/ui/spinner.d.ts +3 -2
  319. package/dist/ui/spinner.js +3 -2
  320. package/dist/ui/stepper.d.ts +8 -1
  321. package/dist/ui/stepper.js +74 -25
  322. package/dist/ui/switch.d.ts +1 -0
  323. package/dist/ui/table-of-contents.d.ts +2 -2
  324. package/dist/ui/table-of-contents.js +20 -8
  325. package/dist/ui/table.js +4 -2
  326. package/dist/ui/textarea.d.ts +1 -1
  327. package/dist/ui/textarea.js +20 -9
  328. package/dist/ui/timeline.d.ts +3 -1
  329. package/dist/ui/timeline.js +17 -9
  330. package/dist/ui/toast.d.ts +11 -5
  331. package/dist/ui/toast.js +100 -54
  332. package/dist/ui/toolbar.d.ts +2 -1
  333. package/dist/ui/toolbar.js +3 -1
  334. package/dist/ui/tooltip.js +3 -20
  335. package/dist/ui/tree.js +120 -80
  336. package/dist/ui/trigger-menu.js +1 -0
  337. package/dist/user-ask.d.ts +10 -5
  338. package/dist/user-ask.js +31 -11
  339. package/package.json +5 -1
  340. package/dist/hooks/use-keyboard-navigation.d.ts +0 -3
  341. package/dist/hooks/use-keyboard-navigation.js +0 -22
@@ -1,12 +1,21 @@
1
1
  "use client";
2
2
  import { cn } from "./lib/cn.js";
3
3
  import { Button } from "./ui/button.js";
4
+ import { LiveStatus } from "./ui/live-status.js";
4
5
  import { SourceFavicon, sourceHostname } from "./source-badge.js";
5
6
  import { Popover, PopoverContent, PopoverTrigger } from "./ui/popover.js";
6
7
  import { createContext, useContext, useRef, useState } from "react";
7
8
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
8
9
  import { ArrowLeft, ArrowRight, ExternalLink } from "lucide-react";
9
10
  //#region src/inline-citation.tsx
11
+ const defaultViewSourcesLabel = (count) => count === 1 ? "view 1 source" : `view ${count} sources`;
12
+ const defaultPositionLabel = (position, count) => `Source ${position} of ${count}`;
13
+ function citationLabel(sources, emptyLabel = "No sources") {
14
+ const firstSource = sources[0];
15
+ if (!firstSource) return emptyLabel;
16
+ const additional = sources.length - 1;
17
+ return `${sourceHostname(firstSource.href)}${additional > 0 ? ` +${additional}` : ""}`;
18
+ }
10
19
  const InlineCitationContext = createContext(null);
11
20
  function useInlineCitation() {
12
21
  const context = useContext(InlineCitationContext);
@@ -16,10 +25,11 @@ function useInlineCitation() {
16
25
  function supportsCrossSlide() {
17
26
  return typeof CSS !== "undefined" && CSS.supports("(anchor-name: --aui-slide-panel) and (anchor-scope: --aui-slide-panel)");
18
27
  }
19
- function InlineCitation({ sources, open, defaultOpen, onOpenChange, className, children, ...props }) {
28
+ function InlineCitation({ sources, open, defaultOpen, onOpenChange, positionLabel = defaultPositionLabel, className, children, ...props }) {
20
29
  const [selectedIndex, setSelectedIndex] = useState(0);
21
30
  const [entering, setEntering] = useState(null);
22
31
  const [exiting, setExiting] = useState(null);
32
+ const [announcement, setAnnouncement] = useState("");
23
33
  const sourceRef = useRef(null);
24
34
  const exitCount = useRef(0);
25
35
  const clearEntering = useRef(0);
@@ -34,6 +44,7 @@ function InlineCitation({ sources, open, defaultOpen, onOpenChange, className, c
34
44
  const direction = step > 0 ? "right" : "left";
35
45
  const leaving = sources[currentIndex];
36
46
  setSelectedIndex(nextIndex);
47
+ setAnnouncement(positionLabel(nextIndex + 1, sources.length));
37
48
  setEntering({
38
49
  direction,
39
50
  previousHeight: sourceRef.current?.getBoundingClientRect().height
@@ -56,10 +67,12 @@ function InlineCitation({ sources, open, defaultOpen, onOpenChange, className, c
56
67
  if (!nextOpen) {
57
68
  setEntering(null);
58
69
  setExiting(null);
70
+ setAnnouncement("");
59
71
  }
60
72
  onOpenChange?.(...args);
61
73
  };
62
74
  const context = {
75
+ announcement,
63
76
  currentIndex,
64
77
  currentSource,
65
78
  entering,
@@ -89,11 +102,10 @@ function InlineCitation({ sources, open, defaultOpen, onOpenChange, className, c
89
102
  })
90
103
  });
91
104
  }
92
- function InlineCitationTrigger({ "aria-label": ariaLabel, className, children, disabled, render, ...props }) {
105
+ function InlineCitationTrigger({ "aria-label": ariaLabel, emptyLabel, viewSourcesLabel = defaultViewSourcesLabel, className, children, disabled, render, ...props }) {
93
106
  const { sources } = useInlineCitation();
94
107
  const firstSource = sources[0];
95
- const sourceCount = sources.length;
96
- const accessibleLabel = sourceCount === 1 ? "View 1 source" : `View ${sourceCount} sources`;
108
+ const accessibleLabel = `${citationLabel(sources, emptyLabel)}, ${viewSourcesLabel(sources.length)}`;
97
109
  return /* @__PURE__ */ jsx(PopoverTrigger, {
98
110
  render: render ?? /* @__PURE__ */ jsx("button", { type: "button" }),
99
111
  "aria-label": ariaLabel ?? accessibleLabel,
@@ -103,7 +115,7 @@ function InlineCitationTrigger({ "aria-label": ariaLabel, className, children, d
103
115
  "data-control-family": "inline-citation",
104
116
  "data-slot": "trigger",
105
117
  className: cn("inline-flex items-center align-baseline", className),
106
- children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(InlineCitationFavicons, {}), /* @__PURE__ */ jsx(InlineCitationLabel, {})] })
118
+ children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(InlineCitationFavicons, {}), /* @__PURE__ */ jsx(InlineCitationLabel, { emptyLabel })] })
107
119
  });
108
120
  }
109
121
  function InlineCitationFavicons({ limit = 3, className, ...props }) {
@@ -123,17 +135,17 @@ function InlineCitationFavicons({ limit = 3, className, ...props }) {
123
135
  }, source.href))
124
136
  });
125
137
  }
126
- function InlineCitationLabel({ className, children, ...props }) {
138
+ function InlineCitationLabel({ emptyLabel, className, children, ...props }) {
127
139
  const { sources } = useInlineCitation();
128
- const firstSource = sources[0];
129
- const additionalSourceCount = Math.max(0, sources.length - 1);
140
+ const label = citationLabel(sources, emptyLabel);
130
141
  return /* @__PURE__ */ jsx("span", {
131
142
  "data-control-ui": "inline-citation",
132
143
  "data-control-family": "inline-citation",
133
144
  "data-slot": "label",
145
+ title: children === void 0 ? label : void 0,
134
146
  ...props,
135
147
  className: cn("min-w-0 truncate", className),
136
- children: children ?? (firstSource ? `${sourceHostname(firstSource.href)}${additionalSourceCount > 0 ? ` +${additionalSourceCount}` : ""}` : "No sources")
148
+ children: children ?? label
137
149
  });
138
150
  }
139
151
  function InlineCitationContent({ className, children, align = "start", padding = "none", ...props }) {
@@ -201,18 +213,15 @@ function InlineCitationNext({ className, children, disabled, onClick, ...props }
201
213
  });
202
214
  }
203
215
  function InlineCitationPosition({ className, children, ...props }) {
204
- const { currentIndex, sources } = useInlineCitation();
205
- return /* @__PURE__ */ jsx("span", {
206
- role: "status",
207
- "aria-live": "polite",
208
- "aria-atomic": "true",
216
+ const { announcement, currentIndex, sources } = useInlineCitation();
217
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
209
218
  "data-control-ui": "inline-citation",
210
219
  "data-control-family": "inline-citation",
211
220
  "data-slot": "position",
212
221
  ...props,
213
222
  className: cn(className),
214
223
  children: children ?? `${sources.length === 0 ? 0 : currentIndex + 1}/${sources.length}`
215
- });
224
+ }), /* @__PURE__ */ jsx(LiveStatus, { message: announcement })] });
216
225
  }
217
226
  function InlineCitationSourceDetails({ source }) {
218
227
  const hostname = sourceHostname(source.href);
@@ -316,4 +325,4 @@ function InlineCitationSource({ source: sourceProp, className, children, style,
316
325
  }, `exit-${exiting.id}`) : null] });
317
326
  }
318
327
  //#endregion
319
- export { InlineCitation, InlineCitationContent, InlineCitationFavicons, InlineCitationLabel, InlineCitationNavigation, InlineCitationNext, InlineCitationPosition, InlineCitationPrevious, InlineCitationSource, InlineCitationTrigger };
328
+ export { InlineCitation, InlineCitationContent, InlineCitationFavicons, InlineCitationLabel, InlineCitationNavigation, InlineCitationNext, InlineCitationPosition, InlineCitationPrevious, InlineCitationSource, InlineCitationTrigger, citationLabel };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/audio-recorder-knobs.d.ts
2
- export declare const audioRecorderKnobs: readonly ["--cui-audio-recorder-foreground", "--cui-audio-recorder-active-foreground", "--cui-audio-recorder-recording-ring-color", "--cui-audio-recorder-error-foreground"];
2
+ export declare const audioRecorderKnobs: readonly ["--cui-audio-recorder-foreground", "--cui-audio-recorder-active-foreground", "--cui-audio-recorder-recording-ring-color", "--cui-audio-recorder-error-foreground", "--cui-audio-recorder-meta-foreground"];
3
3
  export type AudioRecorderKnobStyle = Partial<Record<(typeof audioRecorderKnobs)[number], string>>;
4
4
  //#endregion
@@ -3,7 +3,8 @@ const audioRecorderKnobs = [
3
3
  "--cui-audio-recorder-foreground",
4
4
  "--cui-audio-recorder-active-foreground",
5
5
  "--cui-audio-recorder-recording-ring-color",
6
- "--cui-audio-recorder-error-foreground"
6
+ "--cui-audio-recorder-error-foreground",
7
+ "--cui-audio-recorder-meta-foreground"
7
8
  ];
8
9
  //#endregion
9
10
  export { audioRecorderKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/audio-visualizer-knobs.d.ts
2
- export declare const audioVisualizerKnobs: readonly ["--cui-audio-visualizer-radius", "--cui-audio-visualizer-bar-radius", "--cui-audio-visualizer-bar-background", "--cui-audio-visualizer-line-fill", "--cui-audio-visualizer-line-stroke"];
2
+ export declare const audioVisualizerKnobs: readonly ["--cui-audio-visualizer-radius", "--cui-audio-visualizer-bar-radius", "--cui-audio-visualizer-bar-background", "--cui-audio-visualizer-line-fill", "--cui-audio-visualizer-line-stroke", "--cui-audio-visualizer-baseline-stroke"];
3
3
  export type AudioVisualizerKnobStyle = Partial<Record<(typeof audioVisualizerKnobs)[number], string>>;
4
4
  //#endregion
@@ -4,7 +4,8 @@ const audioVisualizerKnobs = [
4
4
  "--cui-audio-visualizer-bar-radius",
5
5
  "--cui-audio-visualizer-bar-background",
6
6
  "--cui-audio-visualizer-line-fill",
7
- "--cui-audio-visualizer-line-stroke"
7
+ "--cui-audio-visualizer-line-stroke",
8
+ "--cui-audio-visualizer-baseline-stroke"
8
9
  ];
9
10
  //#endregion
10
11
  export { audioVisualizerKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/avatar-knobs.d.ts
2
- export declare const avatarKnobs: readonly ["--cui-avatar-radius", "--cui-avatar-group-ring-color", "--cui-avatar-fallback-background", "--cui-avatar-fallback-foreground", "--cui-avatar-image-outline-color"];
2
+ export declare const avatarKnobs: readonly ["--cui-avatar-radius", "--cui-avatar-group-ring-color", "--cui-avatar-fallback-background", "--cui-avatar-fallback-foreground", "--cui-avatar-image-outline-color", "--cui-avatar-badge-size", "--cui-avatar-badge-ring-size", "--cui-avatar-badge-ring-color", "--cui-avatar-badge-background", "--cui-avatar-badge-foreground"];
3
3
  export type AvatarKnobStyle = Partial<Record<(typeof avatarKnobs)[number], string>>;
4
4
  //#endregion
@@ -4,7 +4,12 @@ const avatarKnobs = [
4
4
  "--cui-avatar-group-ring-color",
5
5
  "--cui-avatar-fallback-background",
6
6
  "--cui-avatar-fallback-foreground",
7
- "--cui-avatar-image-outline-color"
7
+ "--cui-avatar-image-outline-color",
8
+ "--cui-avatar-badge-size",
9
+ "--cui-avatar-badge-ring-size",
10
+ "--cui-avatar-badge-ring-color",
11
+ "--cui-avatar-badge-background",
12
+ "--cui-avatar-badge-foreground"
8
13
  ];
9
14
  //#endregion
10
15
  export { avatarKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/badge-knobs.d.ts
2
- export declare const badgeKnobs: readonly ["--cui-badge-radius", "--cui-badge-background", "--cui-badge-foreground", "--cui-badge-border-color"];
2
+ export declare const badgeKnobs: readonly ["--cui-badge-radius", "--cui-badge-background", "--cui-badge-foreground", "--cui-badge-border-color", "--cui-badge-font-size"];
3
3
  export type BadgeKnobStyle = Partial<Record<(typeof badgeKnobs)[number], string>>;
4
4
  //#endregion
@@ -3,7 +3,8 @@ const badgeKnobs = [
3
3
  "--cui-badge-radius",
4
4
  "--cui-badge-background",
5
5
  "--cui-badge-foreground",
6
- "--cui-badge-border-color"
6
+ "--cui-badge-border-color",
7
+ "--cui-badge-font-size"
7
8
  ];
8
9
  //#endregion
9
10
  export { badgeKnobs };
@@ -0,0 +1,4 @@
1
+ //#region src/knob-contracts/breadcrumb-knobs.d.ts
2
+ export declare const breadcrumbKnobs: readonly ["--cui-breadcrumb-list-foreground", "--cui-breadcrumb-page-foreground", "--cui-breadcrumb-link-hover-foreground"];
3
+ export type BreadcrumbKnobStyle = Partial<Record<(typeof breadcrumbKnobs)[number], string>>;
4
+ //#endregion
@@ -0,0 +1,8 @@
1
+ //#region src/knob-contracts/breadcrumb-knobs.ts
2
+ const breadcrumbKnobs = [
3
+ "--cui-breadcrumb-list-foreground",
4
+ "--cui-breadcrumb-page-foreground",
5
+ "--cui-breadcrumb-link-hover-foreground"
6
+ ];
7
+ //#endregion
8
+ export { breadcrumbKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/button-knobs.d.ts
2
- export declare const buttonKnobs: readonly ["--cui-button-radius", "--cui-button-gap", "--cui-button-icon", "--cui-button-height", "--cui-button-padding-inline", "--cui-button-icon-padding-inline", "--cui-button-font-size", "--cui-button-background", "--cui-button-background-image", "--cui-button-foreground", "--cui-button-hover-background", "--cui-button-hover-foreground", "--cui-button-press-background", "--cui-button-press-scale", "--cui-button-active-background", "--cui-button-active-foreground", "--cui-button-active-hover-background", "--cui-button-shadow", "--cui-button-hover-shadow", "--cui-button-press-shadow", "--cui-button-active-shadow", "--cui-button-open-background", "--cui-button-open-foreground", "--cui-button-open-shadow"];
2
+ export declare const buttonKnobs: readonly ["--cui-button-radius", "--cui-button-gap", "--cui-button-icon", "--cui-button-height", "--cui-button-padding-inline", "--cui-button-icon-padding-inline", "--cui-button-font-size", "--cui-button-background", "--cui-button-background-image", "--cui-button-hover-background-image", "--cui-button-foreground", "--cui-button-hover-background", "--cui-button-hover-foreground", "--cui-button-press-background", "--cui-button-press-scale", "--cui-button-active-background", "--cui-button-active-foreground", "--cui-button-active-hover-background", "--cui-button-shadow", "--cui-button-hover-shadow", "--cui-button-press-shadow", "--cui-button-active-shadow", "--cui-button-open-background", "--cui-button-open-foreground", "--cui-button-open-shadow"];
3
3
  export type ButtonKnobStyle = Partial<Record<(typeof buttonKnobs)[number], string>>;
4
4
  //#endregion
@@ -9,6 +9,7 @@ const buttonKnobs = [
9
9
  "--cui-button-font-size",
10
10
  "--cui-button-background",
11
11
  "--cui-button-background-image",
12
+ "--cui-button-hover-background-image",
12
13
  "--cui-button-foreground",
13
14
  "--cui-button-hover-background",
14
15
  "--cui-button-hover-foreground",
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/chat-message-knobs.d.ts
2
- export declare const chatMessageKnobs: readonly ["--cui-chat-message-avatar-radius", "--cui-chat-message-avatar-background", "--cui-chat-message-avatar-border-color", "--cui-chat-message-avatar-border-width", "--cui-chat-message-radius", "--cui-chat-message-corner-radius", "--cui-chat-message-background", "--cui-chat-message-background-image", "--cui-chat-message-foreground", "--cui-chat-message-border-color", "--cui-chat-message-border-width", "--cui-chat-message-shadow", "--cui-chat-message-pending-dot-color", "--cui-chat-message-pending-dot-size"];
2
+ export declare const chatMessageKnobs: readonly ["--cui-chat-message-avatar-radius", "--cui-chat-message-avatar-background", "--cui-chat-message-avatar-border-color", "--cui-chat-message-avatar-border-width", "--cui-chat-message-radius", "--cui-chat-message-corner-radius", "--cui-chat-message-background", "--cui-chat-message-background-image", "--cui-chat-message-foreground", "--cui-chat-message-border-color", "--cui-chat-message-border-width", "--cui-chat-message-shadow", "--cui-chat-message-pending-dot-color", "--cui-chat-message-pending-dot-size", "--cui-chat-message-row-hover-background", "--cui-chat-message-reaction-radius", "--cui-chat-message-reaction-background", "--cui-chat-message-reaction-border-color", "--cui-chat-message-reaction-border-width", "--cui-chat-message-reaction-pressed-background", "--cui-chat-message-reaction-pressed-border-color"];
3
3
  export type ChatMessageKnobStyle = Partial<Record<(typeof chatMessageKnobs)[number], string>>;
4
4
  //#endregion
@@ -13,7 +13,14 @@ const chatMessageKnobs = [
13
13
  "--cui-chat-message-border-width",
14
14
  "--cui-chat-message-shadow",
15
15
  "--cui-chat-message-pending-dot-color",
16
- "--cui-chat-message-pending-dot-size"
16
+ "--cui-chat-message-pending-dot-size",
17
+ "--cui-chat-message-row-hover-background",
18
+ "--cui-chat-message-reaction-radius",
19
+ "--cui-chat-message-reaction-background",
20
+ "--cui-chat-message-reaction-border-color",
21
+ "--cui-chat-message-reaction-border-width",
22
+ "--cui-chat-message-reaction-pressed-background",
23
+ "--cui-chat-message-reaction-pressed-border-color"
17
24
  ];
18
25
  //#endregion
19
26
  export { chatMessageKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/code-diff-knobs.d.ts
2
- export declare const codeDiffKnobs: readonly ["--cui-code-diff-radius", "--cui-code-diff-shadow", "--cui-code-diff-background", "--cui-code-diff-border-color", "--cui-code-diff-border-width", "--cui-code-diff-foreground", "--cui-code-diff-add-background", "--cui-code-diff-del-background", "--cui-code-diff-expand-button-radius", "--cui-code-diff-expand-button-background", "--cui-code-diff-expand-button-foreground", "--cui-code-diff-expand-button-shadow", "--cui-code-diff-expand-button-hover-background", "--cui-code-diff-expand-button-hover-foreground"];
2
+ export declare const codeDiffKnobs: readonly ["--cui-code-diff-radius", "--cui-code-diff-shadow", "--cui-code-diff-background", "--cui-code-diff-border-color", "--cui-code-diff-border-width", "--cui-code-diff-header-background", "--cui-code-diff-header-border-color", "--cui-code-diff-foreground", "--cui-code-diff-add-background", "--cui-code-diff-del-background", "--cui-code-diff-expand-button-radius", "--cui-code-diff-expand-button-background", "--cui-code-diff-expand-button-foreground", "--cui-code-diff-expand-button-shadow", "--cui-code-diff-expand-button-hover-background", "--cui-code-diff-expand-button-hover-foreground"];
3
3
  export type CodeDiffKnobStyle = Partial<Record<(typeof codeDiffKnobs)[number], string>>;
4
4
  //#endregion
@@ -5,6 +5,8 @@ const codeDiffKnobs = [
5
5
  "--cui-code-diff-background",
6
6
  "--cui-code-diff-border-color",
7
7
  "--cui-code-diff-border-width",
8
+ "--cui-code-diff-header-background",
9
+ "--cui-code-diff-header-border-color",
8
10
  "--cui-code-diff-foreground",
9
11
  "--cui-code-diff-add-background",
10
12
  "--cui-code-diff-del-background",
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/code-knobs.d.ts
2
- export declare const codeKnobs: readonly ["--cui-code-radius", "--cui-code-background", "--cui-code-border-color", "--cui-code-border-width", "--cui-code-shadow", "--cui-code-title-foreground", "--cui-code-text-foreground", "--cui-code-line-highlight-background"];
2
+ export declare const codeKnobs: readonly ["--cui-code-radius", "--cui-code-background", "--cui-code-border-color", "--cui-code-border-width", "--cui-code-shadow", "--cui-code-title-foreground", "--cui-code-text-foreground", "--cui-code-line-highlight-background", "--cui-code-header-background"];
3
3
  export type CodeKnobStyle = Partial<Record<(typeof codeKnobs)[number], string>>;
4
4
  //#endregion
@@ -7,7 +7,8 @@ const codeKnobs = [
7
7
  "--cui-code-shadow",
8
8
  "--cui-code-title-foreground",
9
9
  "--cui-code-text-foreground",
10
- "--cui-code-line-highlight-background"
10
+ "--cui-code-line-highlight-background",
11
+ "--cui-code-header-background"
11
12
  ];
12
13
  //#endregion
13
14
  export { codeKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/dynamic-notification-knobs.d.ts
2
- export declare const dynamicNotificationKnobs: readonly ["--cui-dynamic-notification-content-easing", "--cui-dynamic-notification-expanded-radius", "--cui-dynamic-notification-morph-easing", "--cui-dynamic-notification-glass-foreground", "--cui-dynamic-notification-glass-ring-color", "--cui-dynamic-notification-liquid-foreground", "--cui-dynamic-notification-surface-background", "--cui-dynamic-notification-surface-foreground", "--cui-dynamic-notification-surface-ring-color", "--cui-dynamic-notification-surface-shadow", "--cui-dynamic-notification-indicator-end", "--cui-dynamic-notification-indicator-middle", "--cui-dynamic-notification-indicator-start"];
2
+ export declare const dynamicNotificationKnobs: readonly ["--cui-dynamic-notification-content-easing", "--cui-dynamic-notification-expanded-radius", "--cui-dynamic-notification-morph-easing", "--cui-dynamic-notification-glass-foreground", "--cui-dynamic-notification-glass-ring-color", "--cui-dynamic-notification-liquid-foreground", "--cui-dynamic-notification-liquid-text-shadow", "--cui-dynamic-notification-surface-background", "--cui-dynamic-notification-title-foreground", "--cui-dynamic-notification-surface-foreground", "--cui-dynamic-notification-surface-ring-color", "--cui-dynamic-notification-surface-shadow", "--cui-dynamic-notification-indicator-end", "--cui-dynamic-notification-indicator-middle", "--cui-dynamic-notification-indicator-start"];
3
3
  export type DynamicNotificationKnobStyle = Partial<Record<(typeof dynamicNotificationKnobs)[number], string>>;
4
4
  //#endregion
@@ -6,7 +6,9 @@ const dynamicNotificationKnobs = [
6
6
  "--cui-dynamic-notification-glass-foreground",
7
7
  "--cui-dynamic-notification-glass-ring-color",
8
8
  "--cui-dynamic-notification-liquid-foreground",
9
+ "--cui-dynamic-notification-liquid-text-shadow",
9
10
  "--cui-dynamic-notification-surface-background",
11
+ "--cui-dynamic-notification-title-foreground",
10
12
  "--cui-dynamic-notification-surface-foreground",
11
13
  "--cui-dynamic-notification-surface-ring-color",
12
14
  "--cui-dynamic-notification-surface-shadow",
@@ -0,0 +1,4 @@
1
+ //#region src/knob-contracts/emoji-picker-knobs.d.ts
2
+ export declare const emojiPickerKnobs: readonly ["--cui-emoji-picker-cell-size", "--cui-emoji-picker-cell-radius", "--cui-emoji-picker-active-background", "--cui-emoji-picker-header-background", "--cui-emoji-picker-header-foreground"];
3
+ export type EmojiPickerKnobStyle = Partial<Record<(typeof emojiPickerKnobs)[number], string>>;
4
+ //#endregion
@@ -0,0 +1,10 @@
1
+ //#region src/knob-contracts/emoji-picker-knobs.ts
2
+ const emojiPickerKnobs = [
3
+ "--cui-emoji-picker-cell-size",
4
+ "--cui-emoji-picker-cell-radius",
5
+ "--cui-emoji-picker-active-background",
6
+ "--cui-emoji-picker-header-background",
7
+ "--cui-emoji-picker-header-foreground"
8
+ ];
9
+ //#endregion
10
+ export { emojiPickerKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/field-knobs.d.ts
2
- export declare const fieldKnobs: readonly ["--cui-field-radius", "--cui-field-background", "--cui-field-foreground", "--cui-field-border-color", "--cui-field-border-width", "--cui-field-shadow", "--cui-field-backdrop-filter", "--cui-field-focus-border-color", "--cui-field-height", "--cui-field-padding-inline", "--cui-field-font-size"];
2
+ export declare const fieldKnobs: readonly ["--cui-field-radius", "--cui-field-background", "--cui-field-hover-background", "--cui-field-affordance-background", "--cui-field-affordance-shadow", "--cui-field-affordance-foreground", "--cui-field-affordance-hover-background", "--cui-field-foreground", "--cui-field-border-color", "--cui-field-border-width", "--cui-field-shadow", "--cui-field-backdrop-filter", "--cui-field-height", "--cui-field-padding-inline", "--cui-field-font-size"];
3
3
  export type FieldKnobStyle = Partial<Record<(typeof fieldKnobs)[number], string>>;
4
4
  //#endregion
@@ -2,12 +2,16 @@
2
2
  const fieldKnobs = [
3
3
  "--cui-field-radius",
4
4
  "--cui-field-background",
5
+ "--cui-field-hover-background",
6
+ "--cui-field-affordance-background",
7
+ "--cui-field-affordance-shadow",
8
+ "--cui-field-affordance-foreground",
9
+ "--cui-field-affordance-hover-background",
5
10
  "--cui-field-foreground",
6
11
  "--cui-field-border-color",
7
12
  "--cui-field-border-width",
8
13
  "--cui-field-shadow",
9
14
  "--cui-field-backdrop-filter",
10
- "--cui-field-focus-border-color",
11
15
  "--cui-field-height",
12
16
  "--cui-field-padding-inline",
13
17
  "--cui-field-font-size"
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/filter-bar-knobs.d.ts
2
- export declare const filterBarKnobs: readonly ["--cui-filter-bar-background", "--cui-filter-bar-foreground", "--cui-filter-bar-border-color", "--cui-filter-bar-border-width", "--cui-filter-bar-radius", "--cui-filter-bar-height", "--cui-filter-bar-gap", "--cui-filter-bar-padding-inline", "--cui-filter-bar-font-size", "--cui-filter-bar-hover-background", "--cui-filter-bar-focus-ring-color"];
2
+ export declare const filterBarKnobs: readonly ["--cui-filter-bar-background", "--cui-filter-bar-foreground", "--cui-filter-bar-border-color", "--cui-filter-bar-border-width", "--cui-filter-bar-radius", "--cui-filter-bar-height", "--cui-filter-bar-gap", "--cui-filter-bar-padding-inline", "--cui-filter-bar-font-size", "--cui-filter-bar-hover-background"];
3
3
  export type FilterBarKnobStyle = Partial<Record<(typeof filterBarKnobs)[number], string>>;
4
4
  //#endregion
@@ -9,8 +9,7 @@ const filterBarKnobs = [
9
9
  "--cui-filter-bar-gap",
10
10
  "--cui-filter-bar-padding-inline",
11
11
  "--cui-filter-bar-font-size",
12
- "--cui-filter-bar-hover-background",
13
- "--cui-filter-bar-focus-ring-color"
12
+ "--cui-filter-bar-hover-background"
14
13
  ];
15
14
  //#endregion
16
15
  export { filterBarKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/markdown-knobs.d.ts
2
- export declare const markdownKnobs: readonly ["--cui-markdown-foreground", "--cui-markdown-blockquote-border-color", "--cui-markdown-blockquote-foreground", "--cui-markdown-inline-code-background", "--cui-markdown-inline-code-foreground", "--cui-markdown-inline-code-radius", "--cui-markdown-link-foreground", "--cui-markdown-image-outline-color", "--cui-markdown-table-cell-border-color", "--cui-markdown-table-header-background"];
2
+ export declare const markdownKnobs: readonly ["--cui-markdown-foreground", "--cui-markdown-blockquote-border-color", "--cui-markdown-blockquote-foreground", "--cui-markdown-inline-code-background", "--cui-markdown-inline-code-foreground", "--cui-markdown-inline-code-radius", "--cui-markdown-link-foreground", "--cui-markdown-image-outline-color", "--cui-markdown-table-cell-border-color", "--cui-markdown-table-header-background", "--cui-markdown-font-size", "--cui-markdown-line-height"];
3
3
  export type MarkdownKnobStyle = Partial<Record<(typeof markdownKnobs)[number], string>>;
4
4
  //#endregion
@@ -9,7 +9,9 @@ const markdownKnobs = [
9
9
  "--cui-markdown-link-foreground",
10
10
  "--cui-markdown-image-outline-color",
11
11
  "--cui-markdown-table-cell-border-color",
12
- "--cui-markdown-table-header-background"
12
+ "--cui-markdown-table-header-background",
13
+ "--cui-markdown-font-size",
14
+ "--cui-markdown-line-height"
13
15
  ];
14
16
  //#endregion
15
17
  export { markdownKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/page-layout-knobs.d.ts
2
- export declare const pageLayoutKnobs: readonly ["--cui-page-layout-article-size", "--cui-page-layout-aside-size", "--cui-page-layout-padding-inline", "--cui-page-layout-padding-block", "--cui-page-layout-column-gap", "--cui-page-layout-header-start-gap", "--cui-page-layout-header-gap", "--cui-page-layout-header-column-gap", "--cui-page-layout-header-row-gap", "--cui-page-layout-size", "--cui-page-layout-sticky-gap", "--cui-page-layout-background", "--cui-page-layout-sticky-header-background"];
2
+ export declare const pageLayoutKnobs: readonly ["--cui-page-layout-article-size", "--cui-page-layout-aside-size", "--cui-page-layout-padding-inline", "--cui-page-layout-padding-block", "--cui-page-layout-column-gap", "--cui-page-layout-header-start-gap", "--cui-page-layout-header-gap", "--cui-page-layout-header-column-gap", "--cui-page-layout-header-row-gap", "--cui-page-layout-size", "--cui-page-layout-sticky-gap", "--cui-page-layout-background", "--cui-page-layout-sticky-header-background", "--cui-page-layout-sticky-header-backdrop-filter"];
3
3
  export type PageLayoutKnobStyle = Partial<Record<(typeof pageLayoutKnobs)[number], string>>;
4
4
  //#endregion
@@ -12,7 +12,8 @@ const pageLayoutKnobs = [
12
12
  "--cui-page-layout-size",
13
13
  "--cui-page-layout-sticky-gap",
14
14
  "--cui-page-layout-background",
15
- "--cui-page-layout-sticky-header-background"
15
+ "--cui-page-layout-sticky-header-background",
16
+ "--cui-page-layout-sticky-header-backdrop-filter"
16
17
  ];
17
18
  //#endregion
18
19
  export { pageLayoutKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/popup-knobs.d.ts
2
- export declare const popupKnobs: readonly ["--cui-popup-radius", "--cui-popup-background", "--cui-popup-foreground", "--cui-popup-border-color", "--cui-popup-border-width", "--cui-popup-shadow", "--cui-popup-backdrop-filter", "--cui-popup-backdrop-background", "--cui-popup-backdrop-blur", "--cui-popup-item-radius", "--cui-popup-item-foreground", "--cui-popup-item-highlight-background", "--cui-popup-item-highlight-foreground", "--cui-popup-item-highlight-muted-foreground", "--cui-popup-item-disabled-opacity", "--cui-popup-separator-color", "--cui-popup-shortcut-foreground"];
2
+ export declare const popupKnobs: readonly ["--cui-popup-title-foreground", "--cui-popup-title-font-size", "--cui-popup-title-font-weight", "--cui-popup-title-line-height", "--cui-popup-title-letter-spacing", "--cui-popup-description-foreground", "--cui-popup-close-inset", "--cui-popup-item-inset", "--cui-popup-label-padding-block", "--cui-popup-label-padding-inline", "--cui-popup-label-font-size", "--cui-popup-label-font-weight", "--cui-popup-label-letter-spacing", "--cui-popup-label-text-transform", "--cui-popup-separator-inset", "--cui-popup-shortcut-font-size", "--cui-popup-shortcut-letter-spacing", "--cui-popup-status-success-foreground", "--cui-popup-status-warning-foreground", "--cui-popup-status-info-foreground", "--cui-popup-status-error-foreground", "--cui-popup-radius", "--cui-popup-background", "--cui-popup-foreground", "--cui-popup-border-color", "--cui-popup-border-width", "--cui-popup-shadow", "--cui-popup-backdrop-filter", "--cui-popup-backdrop-background", "--cui-popup-backdrop-blur", "--cui-popup-item-radius", "--cui-popup-item-font-size", "--cui-popup-item-icon-size", "--cui-popup-item-padding-block", "--cui-popup-item-padding-inline", "--cui-popup-item-min-height", "--cui-popup-item-highlight-shadow", "--cui-popup-item-foreground", "--cui-popup-item-highlight-background", "--cui-popup-item-highlight-foreground", "--cui-popup-item-highlight-muted-foreground", "--cui-popup-item-disabled-opacity", "--cui-popup-separator-color", "--cui-popup-shortcut-foreground"];
3
3
  export type PopupKnobStyle = Partial<Record<(typeof popupKnobs)[number], string>>;
4
4
  //#endregion
@@ -1,5 +1,26 @@
1
1
  //#region src/knob-contracts/popup-knobs.ts
2
2
  const popupKnobs = [
3
+ "--cui-popup-title-foreground",
4
+ "--cui-popup-title-font-size",
5
+ "--cui-popup-title-font-weight",
6
+ "--cui-popup-title-line-height",
7
+ "--cui-popup-title-letter-spacing",
8
+ "--cui-popup-description-foreground",
9
+ "--cui-popup-close-inset",
10
+ "--cui-popup-item-inset",
11
+ "--cui-popup-label-padding-block",
12
+ "--cui-popup-label-padding-inline",
13
+ "--cui-popup-label-font-size",
14
+ "--cui-popup-label-font-weight",
15
+ "--cui-popup-label-letter-spacing",
16
+ "--cui-popup-label-text-transform",
17
+ "--cui-popup-separator-inset",
18
+ "--cui-popup-shortcut-font-size",
19
+ "--cui-popup-shortcut-letter-spacing",
20
+ "--cui-popup-status-success-foreground",
21
+ "--cui-popup-status-warning-foreground",
22
+ "--cui-popup-status-info-foreground",
23
+ "--cui-popup-status-error-foreground",
3
24
  "--cui-popup-radius",
4
25
  "--cui-popup-background",
5
26
  "--cui-popup-foreground",
@@ -10,6 +31,12 @@ const popupKnobs = [
10
31
  "--cui-popup-backdrop-background",
11
32
  "--cui-popup-backdrop-blur",
12
33
  "--cui-popup-item-radius",
34
+ "--cui-popup-item-font-size",
35
+ "--cui-popup-item-icon-size",
36
+ "--cui-popup-item-padding-block",
37
+ "--cui-popup-item-padding-inline",
38
+ "--cui-popup-item-min-height",
39
+ "--cui-popup-item-highlight-shadow",
13
40
  "--cui-popup-item-foreground",
14
41
  "--cui-popup-item-highlight-background",
15
42
  "--cui-popup-item-highlight-foreground",
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/range-knobs.d.ts
2
- export declare const rangeKnobs: readonly ["--cui-range-track-radius", "--cui-range-track-background", "--cui-range-indicator-radius", "--cui-range-indicator-background", "--cui-range-thumb-radius", "--cui-range-thumb-background", "--cui-range-thumb-border-color", "--cui-range-thumb-shadow"];
2
+ export declare const rangeKnobs: readonly ["--cui-range-indeterminate-size", "--cui-range-track-radius", "--cui-range-track-background", "--cui-range-indicator-radius", "--cui-range-indicator-background", "--cui-range-thumb-radius", "--cui-range-thumb-background", "--cui-range-thumb-border-color", "--cui-range-thumb-shadow"];
3
3
  export type RangeKnobStyle = Partial<Record<(typeof rangeKnobs)[number], string>>;
4
4
  //#endregion
@@ -1,5 +1,6 @@
1
1
  //#region src/knob-contracts/range-knobs.ts
2
2
  const rangeKnobs = [
3
+ "--cui-range-indeterminate-size",
3
4
  "--cui-range-track-radius",
4
5
  "--cui-range-track-background",
5
6
  "--cui-range-indicator-radius",
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/rich-tooltip-knobs.d.ts
2
- export declare const richTooltipKnobs: readonly ["--cui-rich-tooltip-content-background", "--cui-rich-tooltip-content-foreground", "--cui-rich-tooltip-content-radius", "--cui-rich-tooltip-content-shadow", "--cui-rich-tooltip-dot-background", "--cui-rich-tooltip-action-radius", "--cui-rich-tooltip-action-background", "--cui-rich-tooltip-action-foreground"];
2
+ export declare const richTooltipKnobs: readonly ["--cui-rich-tooltip-content-background", "--cui-rich-tooltip-content-foreground", "--cui-rich-tooltip-content-radius", "--cui-rich-tooltip-content-shadow", "--cui-rich-tooltip-dot-background", "--cui-rich-tooltip-action-radius", "--cui-rich-tooltip-action-background", "--cui-rich-tooltip-action-foreground", "--cui-rich-tooltip-focus-ring-color"];
3
3
  export type RichTooltipKnobStyle = Partial<Record<(typeof richTooltipKnobs)[number], string>>;
4
4
  //#endregion
@@ -7,7 +7,8 @@ const richTooltipKnobs = [
7
7
  "--cui-rich-tooltip-dot-background",
8
8
  "--cui-rich-tooltip-action-radius",
9
9
  "--cui-rich-tooltip-action-background",
10
- "--cui-rich-tooltip-action-foreground"
10
+ "--cui-rich-tooltip-action-foreground",
11
+ "--cui-rich-tooltip-focus-ring-color"
11
12
  ];
12
13
  //#endregion
13
14
  export { richTooltipKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/sidebar-knobs.d.ts
2
- export declare const sidebarKnobs: readonly ["--cui-sidebar-rail-divider-background", "--cui-sidebar-wrapper-background", "--cui-sidebar-wrapper-background-image", "--cui-sidebar-menu-button-radius", "--cui-sidebar-inner-background", "--cui-sidebar-inner-border-color", "--cui-sidebar-inner-background-image", "--cui-sidebar-inner-backdrop-filter", "--cui-sidebar-inner-border-width", "--cui-sidebar-inner-radius", "--cui-sidebar-inner-shadow", "--cui-sidebar-inset-background", "--cui-sidebar-inset-background-image", "--cui-sidebar-inset-shadow", "--cui-sidebar-group-label-foreground", "--cui-sidebar-menu-button-foreground", "--cui-sidebar-menu-button-hover-background", "--cui-sidebar-menu-button-hover-foreground", "--cui-sidebar-menu-button-hover-shadow", "--cui-sidebar-menu-button-active-background", "--cui-sidebar-menu-button-active-foreground", "--cui-sidebar-menu-button-active-shadow"];
2
+ export declare const sidebarKnobs: readonly ["--cui-sidebar-menu-badge-height", "--cui-sidebar-menu-badge-background", "--cui-sidebar-menu-badge-foreground", "--cui-sidebar-rail-divider-background", "--cui-sidebar-wrapper-background", "--cui-sidebar-wrapper-background-image", "--cui-sidebar-inner-background", "--cui-sidebar-inner-border-color", "--cui-sidebar-inner-background-image", "--cui-sidebar-inner-backdrop-filter", "--cui-sidebar-inner-border-width", "--cui-sidebar-inner-radius", "--cui-sidebar-inner-shadow", "--cui-sidebar-header-background", "--cui-sidebar-header-shadow", "--cui-sidebar-inset-background", "--cui-sidebar-inset-background-image", "--cui-sidebar-inset-shadow", "--cui-sidebar-inset-border-color", "--cui-sidebar-inset-border-width", "--cui-sidebar-inset-radius", "--cui-sidebar-inset-inset", "--cui-sidebar-menu-button-radius", "--cui-sidebar-group-label-foreground", "--cui-sidebar-menu-button-foreground", "--cui-sidebar-menu-button-hover-background", "--cui-sidebar-menu-button-hover-foreground", "--cui-sidebar-menu-button-hover-shadow", "--cui-sidebar-menu-button-active-background", "--cui-sidebar-menu-button-active-foreground", "--cui-sidebar-menu-button-active-shadow", "--cui-sidebar-menu-button-track-active-foreground", "--cui-sidebar-menu-button-height", "--cui-sidebar-menu-button-padding-block", "--cui-sidebar-menu-button-padding-inline", "--cui-sidebar-menu-button-font-size", "--cui-sidebar-menu-button-font-weight", "--cui-sidebar-menu-button-active-font-weight", "--cui-sidebar-group-label-font-size", "--cui-sidebar-group-label-font-weight", "--cui-sidebar-group-label-letter-spacing", "--cui-sidebar-group-label-text-transform", "--cui-sidebar-group-label-padding", "--cui-sidebar-skip-link-background", "--cui-sidebar-skip-link-foreground", "--cui-sidebar-skip-link-radius", "--cui-sidebar-skip-link-shadow"];
3
3
  export type SidebarKnobStyle = Partial<Record<(typeof sidebarKnobs)[number], string>>;
4
4
  //#endregion
@@ -1,9 +1,11 @@
1
1
  //#region src/knob-contracts/sidebar-knobs.ts
2
2
  const sidebarKnobs = [
3
+ "--cui-sidebar-menu-badge-height",
4
+ "--cui-sidebar-menu-badge-background",
5
+ "--cui-sidebar-menu-badge-foreground",
3
6
  "--cui-sidebar-rail-divider-background",
4
7
  "--cui-sidebar-wrapper-background",
5
8
  "--cui-sidebar-wrapper-background-image",
6
- "--cui-sidebar-menu-button-radius",
7
9
  "--cui-sidebar-inner-background",
8
10
  "--cui-sidebar-inner-border-color",
9
11
  "--cui-sidebar-inner-background-image",
@@ -11,9 +13,16 @@ const sidebarKnobs = [
11
13
  "--cui-sidebar-inner-border-width",
12
14
  "--cui-sidebar-inner-radius",
13
15
  "--cui-sidebar-inner-shadow",
16
+ "--cui-sidebar-header-background",
17
+ "--cui-sidebar-header-shadow",
14
18
  "--cui-sidebar-inset-background",
15
19
  "--cui-sidebar-inset-background-image",
16
20
  "--cui-sidebar-inset-shadow",
21
+ "--cui-sidebar-inset-border-color",
22
+ "--cui-sidebar-inset-border-width",
23
+ "--cui-sidebar-inset-radius",
24
+ "--cui-sidebar-inset-inset",
25
+ "--cui-sidebar-menu-button-radius",
17
26
  "--cui-sidebar-group-label-foreground",
18
27
  "--cui-sidebar-menu-button-foreground",
19
28
  "--cui-sidebar-menu-button-hover-background",
@@ -21,7 +30,23 @@ const sidebarKnobs = [
21
30
  "--cui-sidebar-menu-button-hover-shadow",
22
31
  "--cui-sidebar-menu-button-active-background",
23
32
  "--cui-sidebar-menu-button-active-foreground",
24
- "--cui-sidebar-menu-button-active-shadow"
33
+ "--cui-sidebar-menu-button-active-shadow",
34
+ "--cui-sidebar-menu-button-track-active-foreground",
35
+ "--cui-sidebar-menu-button-height",
36
+ "--cui-sidebar-menu-button-padding-block",
37
+ "--cui-sidebar-menu-button-padding-inline",
38
+ "--cui-sidebar-menu-button-font-size",
39
+ "--cui-sidebar-menu-button-font-weight",
40
+ "--cui-sidebar-menu-button-active-font-weight",
41
+ "--cui-sidebar-group-label-font-size",
42
+ "--cui-sidebar-group-label-font-weight",
43
+ "--cui-sidebar-group-label-letter-spacing",
44
+ "--cui-sidebar-group-label-text-transform",
45
+ "--cui-sidebar-group-label-padding",
46
+ "--cui-sidebar-skip-link-background",
47
+ "--cui-sidebar-skip-link-foreground",
48
+ "--cui-sidebar-skip-link-radius",
49
+ "--cui-sidebar-skip-link-shadow"
25
50
  ];
26
51
  //#endregion
27
52
  export { sidebarKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/spinner-knobs.d.ts
2
- export declare const spinnerKnobs: readonly ["--cui-spinner-foreground"];
2
+ export declare const spinnerKnobs: readonly ["--cui-spinner-foreground", "--cui-spinner-animation-duration"];
3
3
  export type SpinnerKnobStyle = Partial<Record<(typeof spinnerKnobs)[number], string>>;
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/spinner-knobs.ts
2
- const spinnerKnobs = ["--cui-spinner-foreground"];
2
+ const spinnerKnobs = ["--cui-spinner-foreground", "--cui-spinner-animation-duration"];
3
3
  //#endregion
4
4
  export { spinnerKnobs };
@@ -1,4 +1,4 @@
1
1
  //#region src/knob-contracts/stepper-knobs.d.ts
2
- export declare const stepperKnobs: readonly ["--cui-stepper-indicator-radius", "--cui-stepper-indicator-background", "--cui-stepper-indicator-foreground", "--cui-stepper-indicator-border-color", "--cui-stepper-indicator-border-width", "--cui-stepper-separator-background", "--cui-stepper-title-foreground"];
2
+ export declare const stepperKnobs: readonly ["--cui-stepper-indicator-radius", "--cui-stepper-indicator-background", "--cui-stepper-indicator-foreground", "--cui-stepper-indicator-border-color", "--cui-stepper-indicator-border-width", "--cui-stepper-separator-background", "--cui-stepper-title-foreground", "--cui-stepper-indicator-size", "--cui-stepper-indicator-current-border-width", "--cui-stepper-title-current-font-weight"];
3
3
  export type StepperKnobStyle = Partial<Record<(typeof stepperKnobs)[number], string>>;
4
4
  //#endregion