@ctrl-ui/react 0.8.2 → 0.8.4

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 (373) hide show
  1. package/README.md +32 -23
  2. package/dist/action-bar.d.ts +11 -12
  3. package/dist/activity.d.ts +24 -25
  4. package/dist/audio-recorder.d.ts +16 -16
  5. package/dist/audio-visualizer.d.ts +3 -4
  6. package/dist/blocks/chat.d.ts +3 -4
  7. package/dist/blocks/chat.js +6 -3
  8. package/dist/blocks/coding-agent.d.ts +11 -12
  9. package/dist/blocks/coding-agent.js +10 -9
  10. package/dist/blocks/file-explorer-data.d.ts +11 -12
  11. package/dist/blocks/file-explorer.d.ts +3 -3
  12. package/dist/blocks/settings-data.d.ts +8 -9
  13. package/dist/blocks/settings.d.ts +4 -4
  14. package/dist/blocks/theme-toggle.d.ts +11 -12
  15. package/dist/blocks/theme-toggle.js +14 -4
  16. package/dist/chat-composer-attachment.d.ts +20 -21
  17. package/dist/chat-composer-attachment.js +24 -20
  18. package/dist/chat-composer-editor/extensions/mention.d.ts +5 -6
  19. package/dist/chat-composer-editor/ghost.d.ts +3 -4
  20. package/dist/chat-composer-editor/schema.d.ts +2 -3
  21. package/dist/chat-composer-editor/serialize.d.ts +3 -4
  22. package/dist/chat-composer-editor/types.d.ts +5 -6
  23. package/dist/chat-composer-editor.d.ts +2 -3
  24. package/dist/chat-composer-editor.js +18 -4
  25. package/dist/chat-composer.d.ts +17 -18
  26. package/dist/chat-composer.js +14 -8
  27. package/dist/chat-layout.d.ts +12 -21
  28. package/dist/chat-layout.js +28 -83
  29. package/dist/chat-message.d.ts +14 -15
  30. package/dist/context-model.d.ts +7 -8
  31. package/dist/context.d.ts +21 -22
  32. package/dist/control-props.d.ts +10 -11
  33. package/dist/control-variants.d.ts +6 -7
  34. package/dist/dynamic-notification-glass.d.ts +3 -4
  35. package/dist/dynamic-notification-liquid.d.ts +3 -4
  36. package/dist/dynamic-notification-siri-wave.d.ts +2 -3
  37. package/dist/dynamic-notification.d.ts +28 -29
  38. package/dist/email/email.d.ts +6 -7
  39. package/dist/email/length.d.ts +2 -3
  40. package/dist/email/templates.d.ts +7 -8
  41. package/dist/email/theme.d.ts +4 -5
  42. package/dist/environment-variables.d.ts +35 -36
  43. package/dist/extensions/create-track-highlight.d.ts +3 -4
  44. package/dist/extensions/supports-anchor-transitions.d.ts +2 -3
  45. package/dist/extensions/track-highlight.d.ts +3 -4
  46. package/dist/hooks/use-audio-recorder.d.ts +14 -15
  47. package/dist/hooks/use-chat-composer.d.ts +5 -6
  48. package/dist/hooks/use-chat-message.d.ts +7 -8
  49. package/dist/hooks/use-color-area.d.ts +5 -6
  50. package/dist/hooks/use-copy-to-clipboard.d.ts +7 -8
  51. package/dist/hooks/use-dropzone.d.ts +11 -12
  52. package/dist/hooks/use-dynamic-notification.d.ts +6 -7
  53. package/dist/hooks/use-environment-variables.d.ts +9 -10
  54. package/dist/hooks/use-keyboard-navigation.d.ts +3 -0
  55. package/dist/hooks/use-keyboard-navigation.js +22 -0
  56. package/dist/hooks/use-mobile.d.ts +2 -3
  57. package/dist/hooks/use-textarea-trigger-menu.d.ts +2 -3
  58. package/dist/hooks/use-trigger-menu.d.ts +7 -8
  59. package/dist/hooks/use-user-ask.d.ts +6 -7
  60. package/dist/inline-attachment.d.ts +16 -17
  61. package/dist/inline-citation.d.ts +22 -23
  62. package/dist/knob-contracts/accordion-knobs.d.ts +3 -4
  63. package/dist/knob-contracts/accordion-knobs.js +1 -0
  64. package/dist/knob-contracts/action-bar-knobs.d.ts +3 -4
  65. package/dist/knob-contracts/activity-knobs.d.ts +3 -4
  66. package/dist/knob-contracts/alert-knobs.d.ts +3 -4
  67. package/dist/knob-contracts/alert-knobs.js +12 -1
  68. package/dist/knob-contracts/audio-recorder-knobs.d.ts +3 -4
  69. package/dist/knob-contracts/audio-visualizer-knobs.d.ts +3 -4
  70. package/dist/knob-contracts/avatar-knobs.d.ts +3 -4
  71. package/dist/knob-contracts/avatar-knobs.js +2 -1
  72. package/dist/knob-contracts/badge-knobs.d.ts +3 -4
  73. package/dist/knob-contracts/button-group-knobs.d.ts +3 -4
  74. package/dist/knob-contracts/button-knobs.d.ts +3 -4
  75. package/dist/knob-contracts/button-knobs.js +1 -0
  76. package/dist/knob-contracts/calendar-knobs.d.ts +3 -4
  77. package/dist/knob-contracts/card-knobs.d.ts +3 -4
  78. package/dist/knob-contracts/chat-composer-attachment-knobs.d.ts +3 -4
  79. package/dist/knob-contracts/chat-composer-attachment-knobs.js +3 -1
  80. package/dist/knob-contracts/chat-composer-knobs.d.ts +3 -4
  81. package/dist/knob-contracts/chat-composer-knobs.js +1 -0
  82. package/dist/knob-contracts/chat-layout-knobs.d.ts +3 -4
  83. package/dist/knob-contracts/chat-layout-knobs.js +2 -3
  84. package/dist/knob-contracts/chat-message-knobs.d.ts +3 -4
  85. package/dist/knob-contracts/choice-knobs.d.ts +3 -4
  86. package/dist/knob-contracts/choice-knobs.js +2 -1
  87. package/dist/knob-contracts/code-diff-knobs.d.ts +3 -4
  88. package/dist/knob-contracts/code-diff-knobs.js +1 -0
  89. package/dist/knob-contracts/code-knobs.d.ts +3 -4
  90. package/dist/knob-contracts/code-knobs.js +3 -1
  91. package/dist/knob-contracts/collapsible-knobs.d.ts +3 -4
  92. package/dist/knob-contracts/color-picker-knobs.d.ts +3 -4
  93. package/dist/knob-contracts/context-knobs.d.ts +3 -4
  94. package/dist/knob-contracts/dockable-panel-knobs.d.ts +3 -4
  95. package/dist/knob-contracts/dockable-panel-knobs.js +1 -0
  96. package/dist/knob-contracts/dropzone-knobs.d.ts +3 -4
  97. package/dist/knob-contracts/dropzone-knobs.js +1 -0
  98. package/dist/knob-contracts/dynamic-notification-knobs.d.ts +3 -4
  99. package/dist/knob-contracts/empty-knobs.d.ts +3 -4
  100. package/dist/knob-contracts/empty-knobs.js +14 -1
  101. package/dist/knob-contracts/environment-variables-knobs.d.ts +3 -4
  102. package/dist/knob-contracts/environment-variables-knobs.js +2 -1
  103. package/dist/knob-contracts/field-knobs.d.ts +3 -4
  104. package/dist/knob-contracts/gradient-editor-knobs.d.ts +3 -4
  105. package/dist/knob-contracts/gradient-editor-knobs.js +3 -1
  106. package/dist/knob-contracts/infinite-canvas-knobs.d.ts +3 -4
  107. package/dist/knob-contracts/inline-attachment-knobs.d.ts +3 -4
  108. package/dist/knob-contracts/inline-attachment-knobs.js +2 -1
  109. package/dist/knob-contracts/inline-citation-knobs.d.ts +3 -4
  110. package/dist/knob-contracts/inline-citation-knobs.js +1 -0
  111. package/dist/knob-contracts/item-knobs.d.ts +3 -4
  112. package/dist/knob-contracts/kbd-knobs.d.ts +3 -4
  113. package/dist/knob-contracts/markdown-block-knobs.d.ts +3 -4
  114. package/dist/knob-contracts/markdown-block-knobs.js +2 -0
  115. package/dist/knob-contracts/markdown-knobs.d.ts +3 -4
  116. package/dist/knob-contracts/markdown-knobs.js +1 -0
  117. package/dist/knob-contracts/morphing-panel-knobs.d.ts +3 -4
  118. package/dist/knob-contracts/pagination-knobs.d.ts +3 -4
  119. package/dist/knob-contracts/phone-input-knobs.d.ts +3 -4
  120. package/dist/knob-contracts/phone-input-knobs.js +1 -0
  121. package/dist/knob-contracts/popup-knobs.d.ts +3 -4
  122. package/dist/knob-contracts/progressive-blur-knobs.d.ts +3 -4
  123. package/dist/knob-contracts/progressive-blur-knobs.js +1 -0
  124. package/dist/knob-contracts/range-knobs.d.ts +3 -4
  125. package/dist/knob-contracts/resizable-knobs.d.ts +3 -4
  126. package/dist/knob-contracts/resizable-knobs.js +1 -0
  127. package/dist/knob-contracts/rich-tooltip-knobs.d.ts +3 -4
  128. package/dist/knob-contracts/scroll-area-knobs.d.ts +3 -4
  129. package/dist/knob-contracts/separator-knobs.d.ts +3 -4
  130. package/dist/knob-contracts/sidebar-knobs.d.ts +3 -4
  131. package/dist/knob-contracts/sidebar-knobs.js +1 -0
  132. package/dist/knob-contracts/skeleton-knobs.d.ts +3 -4
  133. package/dist/knob-contracts/skeleton-knobs.js +9 -1
  134. package/dist/knob-contracts/source-badge-knobs.d.ts +3 -4
  135. package/dist/knob-contracts/spinner-knobs.d.ts +3 -4
  136. package/dist/knob-contracts/stepper-knobs.d.ts +3 -4
  137. package/dist/knob-contracts/stepper-knobs.js +1 -0
  138. package/dist/knob-contracts/switch-knobs.d.ts +3 -4
  139. package/dist/knob-contracts/switch-knobs.js +7 -1
  140. package/dist/knob-contracts/table-knobs.d.ts +3 -4
  141. package/dist/knob-contracts/table-of-contents-knobs.d.ts +3 -4
  142. package/dist/knob-contracts/table-of-contents-knobs.js +25 -0
  143. package/dist/knob-contracts/tabs-knobs.d.ts +3 -4
  144. package/dist/knob-contracts/tabs-knobs.js +2 -1
  145. package/dist/knob-contracts/task-list-knobs.d.ts +3 -4
  146. package/dist/knob-contracts/task-list-knobs.js +1 -0
  147. package/dist/knob-contracts/thread-rail-knobs.d.ts +3 -4
  148. package/dist/knob-contracts/timeline-knobs.d.ts +3 -4
  149. package/dist/knob-contracts/toolbar-knobs.d.ts +3 -4
  150. package/dist/knob-contracts/toolbar-knobs.js +1 -0
  151. package/dist/knob-contracts/track-highlight-knobs.d.ts +3 -4
  152. package/dist/knob-contracts/transcript-divider-knobs.d.ts +3 -4
  153. package/dist/knob-contracts/tree-knobs.d.ts +3 -4
  154. package/dist/knob-contracts/user-ask-knobs.d.ts +3 -4
  155. package/dist/knob-contracts/user-ask-knobs.js +1 -0
  156. package/dist/lib/cn.d.ts +2 -3
  157. package/dist/lib/code-tokens.d.ts +12 -13
  158. package/dist/lib/color.d.ts +26 -27
  159. package/dist/lib/contrast.d.ts +12 -13
  160. package/dist/lib/diff.d.ts +14 -15
  161. package/dist/lib/dropzone-validation.d.ts +25 -26
  162. package/dist/lib/env-file.d.ts +12 -13
  163. package/dist/lib/format-audio-recorder-duration.d.ts +2 -3
  164. package/dist/lib/liquid-glass-optics.d.ts +2 -3
  165. package/dist/lib/phone-input-format.d.ts +3 -4
  166. package/dist/lib/phone-input-format.js +1 -1
  167. package/dist/lib/phone-number.d.ts +8 -9
  168. package/dist/lib/trigger-detect.d.ts +4 -5
  169. package/dist/markdown-block.d.ts +11 -12
  170. package/dist/scripts/contrast-eval.d.ts +16 -17
  171. package/dist/scripts/contrast-eval.js +13 -7
  172. package/dist/skin-provider.d.ts +14 -0
  173. package/dist/skin-provider.js +21 -0
  174. package/dist/skin.d.ts +14 -33
  175. package/dist/skin.js +3 -46
  176. package/dist/source-badge.d.ts +7 -8
  177. package/dist/styles/index.css +1 -4
  178. package/dist/styles/recipes/accordion.css +8 -2
  179. package/dist/styles/recipes/action-bar.css +5 -2
  180. package/dist/styles/recipes/alert.css +95 -16
  181. package/dist/styles/recipes/avatar.css +17 -1
  182. package/dist/styles/recipes/badge.css +0 -1
  183. package/dist/styles/recipes/button.css +34 -8
  184. package/dist/styles/recipes/calendar.css +0 -6
  185. package/dist/styles/recipes/chat-composer-attachment.css +51 -53
  186. package/dist/styles/recipes/chat-composer.css +26 -21
  187. package/dist/styles/recipes/chat-layout.css +21 -62
  188. package/dist/styles/recipes/chat-message.css +11 -5
  189. package/dist/styles/recipes/choice.css +9 -2
  190. package/dist/styles/recipes/code-diff.css +8 -1
  191. package/dist/styles/recipes/code.css +39 -17
  192. package/dist/styles/recipes/collapsible.css +0 -3
  193. package/dist/styles/recipes/color-picker-details.css +1 -2
  194. package/dist/styles/recipes/color-picker-values.css +0 -4
  195. package/dist/styles/recipes/dockable-panel.css +8 -1
  196. package/dist/styles/recipes/dropzone.css +9 -2
  197. package/dist/styles/recipes/empty.css +118 -17
  198. package/dist/styles/recipes/environment-variables.css +8 -1
  199. package/dist/styles/recipes/field-parts.css +1 -6
  200. package/dist/styles/recipes/field.css +9 -5
  201. package/dist/styles/recipes/gradient-editor.css +16 -5
  202. package/dist/styles/recipes/inline-attachment.css +13 -8
  203. package/dist/styles/recipes/inline-citation.css +8 -4
  204. package/dist/styles/recipes/item.css +1 -1
  205. package/dist/styles/recipes/kbd.css +8 -0
  206. package/dist/styles/recipes/markdown-block.css +16 -2
  207. package/dist/styles/recipes/markdown.css +12 -0
  208. package/dist/styles/recipes/morphing-panel.css +1 -1
  209. package/dist/styles/recipes/pagination.css +0 -4
  210. package/dist/styles/recipes/phone-input.css +8 -4
  211. package/dist/styles/recipes/popup-lists.css +11 -0
  212. package/dist/styles/recipes/popup-toast.css +1 -29
  213. package/dist/styles/recipes/popup.css +2 -2
  214. package/dist/styles/recipes/progressive-blur.css +28 -7
  215. package/dist/styles/recipes/range.css +50 -1
  216. package/dist/styles/recipes/resizable.css +8 -10
  217. package/dist/styles/recipes/rich-tooltip.css +0 -4
  218. package/dist/styles/recipes/scroll-area.css +8 -2
  219. package/dist/styles/recipes/sidebar-menu.css +0 -6
  220. package/dist/styles/recipes/sidebar.css +56 -17
  221. package/dist/styles/recipes/skeleton.css +85 -3
  222. package/dist/styles/recipes/source-badge.css +0 -3
  223. package/dist/styles/recipes/stepper.css +8 -1
  224. package/dist/styles/recipes/switch.css +89 -17
  225. package/dist/styles/recipes/table-of-contents.css +211 -45
  226. package/dist/styles/recipes/table.css +0 -1
  227. package/dist/styles/recipes/tabs.css +19 -2
  228. package/dist/styles/recipes/task-list.css +8 -2
  229. package/dist/styles/recipes/thread-rail.css +0 -4
  230. package/dist/styles/recipes/toolbar.css +18 -4
  231. package/dist/styles/recipes/track-highlight.css +63 -5
  232. package/dist/styles/recipes/tree.css +2 -0
  233. package/dist/styles/recipes/user-ask.css +8 -4
  234. package/dist/styles/theme.css +130 -138
  235. package/dist/surface-variants.d.ts +4 -5
  236. package/dist/task-list.d.ts +16 -17
  237. package/dist/thread-rail.d.ts +21 -22
  238. package/dist/transcript-divider.d.ts +6 -7
  239. package/dist/ui/accordion.d.ts +10 -11
  240. package/dist/ui/alert-dialog.d.ts +11 -12
  241. package/dist/ui/alert-dialog.js +8 -6
  242. package/dist/ui/alert.d.ts +9 -10
  243. package/dist/ui/alert.js +3 -3
  244. package/dist/ui/aspect-ratio.d.ts +3 -4
  245. package/dist/ui/autocomplete.d.ts +19 -20
  246. package/dist/ui/autocomplete.js +5 -3
  247. package/dist/ui/avatar.d.ts +9 -10
  248. package/dist/ui/badge.d.ts +9 -10
  249. package/dist/ui/button-group.d.ts +7 -8
  250. package/dist/ui/button-group.js +3 -2
  251. package/dist/ui/button.d.ts +17 -18
  252. package/dist/ui/button.js +20 -5
  253. package/dist/ui/calendar.d.ts +3 -4
  254. package/dist/ui/card.d.ts +16 -17
  255. package/dist/ui/checkbox-group.d.ts +4 -5
  256. package/dist/ui/checkbox-group.js +3 -2
  257. package/dist/ui/checkbox.d.ts +3 -4
  258. package/dist/ui/code-diff.d.ts +8 -9
  259. package/dist/ui/code.d.ts +32 -23
  260. package/dist/ui/code.js +41 -20
  261. package/dist/ui/collapsible.d.ts +7 -8
  262. package/dist/ui/color-picker.d.ts +40 -41
  263. package/dist/ui/color-picker.js +6 -4
  264. package/dist/ui/combobox-disabled-selection.d.ts +3 -4
  265. package/dist/ui/combobox.d.ts +19 -20
  266. package/dist/ui/combobox.js +5 -3
  267. package/dist/ui/command.d.ts +19 -18
  268. package/dist/ui/command.js +38 -12
  269. package/dist/ui/context-menu.d.ts +30 -31
  270. package/dist/ui/context-menu.js +8 -5
  271. package/dist/ui/dialog.d.ts +13 -13
  272. package/dist/ui/dialog.js +10 -8
  273. package/dist/ui/dockable-panel-geometry.d.ts +7 -8
  274. package/dist/ui/dockable-panel.d.ts +21 -22
  275. package/dist/ui/drawer.d.ts +17 -18
  276. package/dist/ui/drawer.js +7 -6
  277. package/dist/ui/dropdown-menu.d.ts +32 -33
  278. package/dist/ui/dropdown-menu.js +5 -3
  279. package/dist/ui/dropzone.d.ts +24 -24
  280. package/dist/ui/empty.d.ts +14 -14
  281. package/dist/ui/empty.js +3 -3
  282. package/dist/ui/field.d.ts +26 -27
  283. package/dist/ui/form.d.ts +4 -5
  284. package/dist/ui/gradient-editor.d.ts +16 -17
  285. package/dist/ui/hover-card.d.ts +6 -7
  286. package/dist/ui/hover-card.js +5 -3
  287. package/dist/ui/infinite-canvas.d.ts +11 -12
  288. package/dist/ui/input-group.d.ts +6 -7
  289. package/dist/ui/input-otp.d.ts +7 -8
  290. package/dist/ui/input.d.ts +3 -4
  291. package/dist/ui/item.d.ts +20 -21
  292. package/dist/ui/kbd.d.ts +7 -5
  293. package/dist/ui/kbd.js +4 -2
  294. package/dist/ui/markdown-elements.d.ts +20 -21
  295. package/dist/ui/markdown.d.ts +5 -6
  296. package/dist/ui/menubar.d.ts +25 -26
  297. package/dist/ui/menubar.js +8 -5
  298. package/dist/ui/meter.d.ts +11 -12
  299. package/dist/ui/morphing-panel.d.ts +8 -9
  300. package/dist/ui/native-select.d.ts +3 -4
  301. package/dist/ui/native-select.js +1 -1
  302. package/dist/ui/navigation-menu.d.ts +17 -18
  303. package/dist/ui/navigation-menu.js +5 -3
  304. package/dist/ui/number-field.d.ts +15 -16
  305. package/dist/ui/pagination.d.ts +10 -11
  306. package/dist/ui/phone-input.d.ts +5 -6
  307. package/dist/ui/phone-input.js +40 -37
  308. package/dist/ui/popover.d.ts +11 -12
  309. package/dist/ui/popover.js +5 -3
  310. package/dist/ui/progress.d.ts +11 -12
  311. package/dist/ui/progressive-blur.d.ts +4 -5
  312. package/dist/ui/radio-group.d.ts +5 -6
  313. package/dist/ui/resizable.d.ts +12 -13
  314. package/dist/ui/responsive-dialog.d.ts +11 -12
  315. package/dist/ui/rich-tooltip-tour.d.ts +5 -6
  316. package/dist/ui/rich-tooltip.d.ts +21 -23
  317. package/dist/ui/rich-tooltip.js +5 -5
  318. package/dist/ui/scroll-area.d.ts +7 -8
  319. package/dist/ui/scroll-area.js +9 -6
  320. package/dist/ui/select.d.ts +21 -14
  321. package/dist/ui/select.js +7 -4
  322. package/dist/ui/separator.d.ts +2 -3
  323. package/dist/ui/sheet.d.ts +8 -9
  324. package/dist/ui/sheet.js +7 -5
  325. package/dist/ui/sidebar-menu.d.ts +18 -19
  326. package/dist/ui/sidebar-menu.js +4 -3
  327. package/dist/ui/sidebar-provider.d.ts +32 -7
  328. package/dist/ui/sidebar-provider.js +82 -22
  329. package/dist/ui/sidebar-resize-rail.d.ts +8 -0
  330. package/dist/ui/sidebar-resize-rail.js +192 -0
  331. package/dist/ui/sidebar.d.ts +19 -13
  332. package/dist/ui/sidebar.js +120 -55
  333. package/dist/ui/skeleton.d.ts +7 -4
  334. package/dist/ui/skeleton.js +9 -2
  335. package/dist/ui/slider.d.ts +6 -5
  336. package/dist/ui/slider.js +16 -13
  337. package/dist/ui/spinner.d.ts +3 -4
  338. package/dist/ui/stepper.d.ts +22 -23
  339. package/dist/ui/switch.d.ts +3 -4
  340. package/dist/ui/switch.js +12 -1
  341. package/dist/ui/table-of-contents.d.ts +7 -8
  342. package/dist/ui/table-of-contents.js +4 -2
  343. package/dist/ui/table.d.ts +17 -18
  344. package/dist/ui/tabs.d.ts +14 -11
  345. package/dist/ui/textarea.d.ts +3 -4
  346. package/dist/ui/timeline.d.ts +18 -19
  347. package/dist/ui/toast.d.ts +9 -9
  348. package/dist/ui/toast.js +21 -14
  349. package/dist/ui/toggle.d.ts +5 -6
  350. package/dist/ui/toggle.js +3 -2
  351. package/dist/ui/toolbar.d.ts +15 -16
  352. package/dist/ui/toolbar.js +15 -4
  353. package/dist/ui/tooltip.d.ts +6 -13
  354. package/dist/ui/tooltip.js +7 -8
  355. package/dist/ui/tree.d.ts +18 -19
  356. package/dist/ui/tree.js +3 -2
  357. package/dist/ui/trigger-menu.d.ts +15 -16
  358. package/dist/ui/trigger-menu.js +5 -3
  359. package/dist/ui/use-switch-drag.d.ts +7 -0
  360. package/dist/ui/use-switch-drag.js +104 -0
  361. package/dist/user-ask.d.ts +24 -25
  362. package/package.json +15 -15
  363. package/dist/code-block-editor.d.ts +0 -59
  364. package/dist/code-block-editor.js +0 -250
  365. package/dist/knob-contracts/code-block-editor-knobs.d.ts +0 -5
  366. package/dist/knob-contracts/code-block-editor-knobs.js +0 -11
  367. package/dist/lib/code-block-shiki.d.ts +0 -9
  368. package/dist/lib/code-block-shiki.js +0 -6
  369. package/dist/skin.config.d.ts +0 -5
  370. package/dist/skin.config.js +0 -12
  371. package/dist/styles/recipes/code-block-editor.css +0 -136
  372. package/dist/styles/skin-theme.css +0 -137
  373. package/dist/styles/skin.css +0 -143
@@ -3,17 +3,17 @@ import { EnvironmentVariableRow, EnvironmentVariablesController, UseEnvironmentV
3
3
  import { EnvironmentVariablesKnobStyle } from "./knob-contracts/environment-variables-knobs.js";
4
4
  import { CSSProperties, ComponentProps, ReactNode } from "react";
5
5
  //#region src/environment-variables.d.ts
6
- type EnvironmentVariablesRowErrors = Record<number, {
6
+ export type EnvironmentVariablesRowErrors = Record<number, {
7
7
  key?: ReactNode;
8
8
  value?: ReactNode;
9
9
  }>;
10
- type EnvironmentVariablesSubmitPayload<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> = {
10
+ export type EnvironmentVariablesSubmitPayload<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> = {
11
11
  rows: TRow[];
12
12
  variables: Record<string, string>;
13
13
  envFileText: string;
14
14
  reset: () => void;
15
15
  };
16
- type EnvironmentVariablesRootProps<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> = Omit<ComponentProps<"form">, "onSubmit"> & {
16
+ export type EnvironmentVariablesRootProps<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> = Omit<ComponentProps<"form">, "onSubmit"> & {
17
17
  editor: EnvironmentVariablesController<TRow>;
18
18
  disabled?: boolean;
19
19
  readOnly?: boolean;
@@ -27,8 +27,8 @@ type EnvironmentVariablesRootProps<TRow extends EnvironmentVariableRow = Environ
27
27
  } & {
28
28
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
29
29
  };
30
- declare function EnvironmentVariablesRoot<TRow extends EnvironmentVariableRow = EnvironmentVariableRow>({ editor, disabled, readOnly, rowErrors, keyLabel, valueLabel, keyPlaceholder, valuePlaceholder, duplicateKeyMessage, onSubmit, className, children, ...props }: EnvironmentVariablesRootProps<TRow>): import("react").JSX.Element;
31
- type EnvironmentVariablesProps<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> = Omit<EnvironmentVariablesRootProps<TRow>, "editor"> & UseEnvironmentVariablesOptions<TRow> & {
30
+ export declare function EnvironmentVariablesRoot<TRow extends EnvironmentVariableRow = EnvironmentVariableRow>({ editor, disabled, readOnly, rowErrors, keyLabel, valueLabel, keyPlaceholder, valuePlaceholder, duplicateKeyMessage, onSubmit, className, children, ...props }: EnvironmentVariablesRootProps<TRow>): import("react").JSX.Element;
31
+ export type EnvironmentVariablesProps<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> = Omit<EnvironmentVariablesRootProps<TRow>, "editor"> & UseEnvironmentVariablesOptions<TRow> & {
32
32
  editor?: EnvironmentVariablesController<TRow>;
33
33
  title?: ReactNode;
34
34
  description?: ReactNode;
@@ -39,71 +39,71 @@ type EnvironmentVariablesProps<TRow extends EnvironmentVariableRow = Environment
39
39
  hideDefaultActions?: boolean;
40
40
  };
41
41
  declare function EnvironmentVariablesComponent<TRow extends EnvironmentVariableRow = EnvironmentVariableRow>({ editor: providedEditor, initialRows, rows, onRowsChange, createDefaultRow, createRow, getEditableRows, getPreservedRows, maxUploadSize, title, description, error, submitLabel, resetLabel, addLabel, hideDefaultActions, children, onSubmit, ...props }: EnvironmentVariablesProps<TRow>): import("react").JSX.Element;
42
- type EnvironmentVariablesHeaderProps = ComponentProps<"div"> & {
42
+ export type EnvironmentVariablesHeaderProps = ComponentProps<"div"> & {
43
43
  title?: ReactNode;
44
44
  description?: ReactNode;
45
45
  } & {
46
46
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
47
47
  };
48
- declare function EnvironmentVariablesHeader({ title, description, className, children, ...props }: EnvironmentVariablesHeaderProps): import("react").JSX.Element | null;
49
- type EnvironmentVariablesToolbarProps = ComponentProps<"div"> & {
48
+ export declare function EnvironmentVariablesHeader({ title, description, className, children, ...props }: EnvironmentVariablesHeaderProps): import("react").JSX.Element | null;
49
+ export type EnvironmentVariablesToolbarProps = ComponentProps<"div"> & {
50
50
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
51
51
  };
52
- declare function EnvironmentVariablesToolbar({ className, children, ...props }: EnvironmentVariablesToolbarProps): import("react").JSX.Element | null;
53
- type EnvironmentVariablesUploadButtonProps = ComponentProps<typeof Button> & {
52
+ export declare function EnvironmentVariablesToolbar({ className, children, ...props }: EnvironmentVariablesToolbarProps): import("react").JSX.Element | null;
53
+ export type EnvironmentVariablesUploadButtonProps = ComponentProps<typeof Button> & {
54
54
  inputLabel?: string;
55
55
  };
56
- declare function EnvironmentVariablesUploadButton({ inputLabel, children, variant, size, disabled, onClick, ...props }: EnvironmentVariablesUploadButtonProps): import("react").JSX.Element;
57
- type EnvironmentVariablesRowsProps = ComponentProps<"div"> & {
56
+ export declare function EnvironmentVariablesUploadButton({ inputLabel, children, variant, size, disabled, onClick, ...props }: EnvironmentVariablesUploadButtonProps): import("react").JSX.Element;
57
+ export type EnvironmentVariablesRowsProps = ComponentProps<"div"> & {
58
58
  rowErrors?: EnvironmentVariablesRowErrors;
59
59
  } & {
60
60
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
61
61
  };
62
- declare function EnvironmentVariablesRows({ rowErrors, className, children, ...props }: EnvironmentVariablesRowsProps): import("react").JSX.Element;
63
- type EnvironmentVariablesRowProps = Omit<ComponentProps<"div">, "children"> & {
62
+ export declare function EnvironmentVariablesRows({ rowErrors, className, children, ...props }: EnvironmentVariablesRowsProps): import("react").JSX.Element;
63
+ export type EnvironmentVariablesRowProps = Omit<ComponentProps<"div">, "children"> & {
64
64
  row: EnvironmentVariableRow;
65
65
  index: number;
66
66
  rowErrors?: EnvironmentVariablesRowErrors;
67
67
  } & {
68
68
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
69
69
  };
70
- declare function EnvironmentVariablesRow({ row, index, rowErrors, className, ...props }: EnvironmentVariablesRowProps): import("react").JSX.Element;
71
- type EnvironmentVariablesAddButtonProps = ComponentProps<typeof Button>;
72
- declare function EnvironmentVariablesAddButton({ children, variant, size, disabled, onClick, ...props }: EnvironmentVariablesAddButtonProps): import("react").JSX.Element | null;
73
- type EnvironmentVariablesResetButtonProps = ComponentProps<typeof Button>;
74
- declare function EnvironmentVariablesResetButton({ children, variant, size, disabled, onClick, ...props }: EnvironmentVariablesResetButtonProps): import("react").JSX.Element | null;
75
- type EnvironmentVariablesSubmitButtonProps = ComponentProps<typeof Button>;
76
- declare function EnvironmentVariablesSubmitButton({ children, variant, tone, size, disabled, ...props }: EnvironmentVariablesSubmitButtonProps): import("react").JSX.Element | null;
77
- type EnvironmentVariablesActionsProps = ComponentProps<"div"> & {
70
+ export declare function EnvironmentVariablesRow({ row, index, rowErrors, className, ...props }: EnvironmentVariablesRowProps): import("react").JSX.Element;
71
+ export type EnvironmentVariablesAddButtonProps = ComponentProps<typeof Button>;
72
+ export declare function EnvironmentVariablesAddButton({ children, variant, size, disabled, onClick, ...props }: EnvironmentVariablesAddButtonProps): import("react").JSX.Element | null;
73
+ export type EnvironmentVariablesResetButtonProps = ComponentProps<typeof Button>;
74
+ export declare function EnvironmentVariablesResetButton({ children, variant, size, disabled, onClick, ...props }: EnvironmentVariablesResetButtonProps): import("react").JSX.Element | null;
75
+ export type EnvironmentVariablesSubmitButtonProps = ComponentProps<typeof Button>;
76
+ export declare function EnvironmentVariablesSubmitButton({ children, variant, tone, size, disabled, ...props }: EnvironmentVariablesSubmitButtonProps): import("react").JSX.Element | null;
77
+ export type EnvironmentVariablesActionsProps = ComponentProps<"div"> & {
78
78
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
79
79
  };
80
- declare function EnvironmentVariablesActions({ className, ...props }: EnvironmentVariablesActionsProps): import("react").JSX.Element;
81
- type EnvironmentVariablesMessageProps = Omit<ComponentProps<"div">, "style"> & {
80
+ export declare function EnvironmentVariablesActions({ className, ...props }: EnvironmentVariablesActionsProps): import("react").JSX.Element;
81
+ export type EnvironmentVariablesMessageProps = Omit<ComponentProps<"div">, "style"> & {
82
82
  error?: ReactNode;
83
83
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
84
84
  };
85
- declare function EnvironmentVariablesMessage({ error, className, children, ...props }: EnvironmentVariablesMessageProps): import("react").JSX.Element | null;
86
- type EnvironmentVariablesDuplicateKeysErrorProps = Omit<EnvironmentVariablesMessageProps, "error"> & {
85
+ export declare function EnvironmentVariablesMessage({ error, className, children, ...props }: EnvironmentVariablesMessageProps): import("react").JSX.Element | null;
86
+ export type EnvironmentVariablesDuplicateKeysErrorProps = Omit<EnvironmentVariablesMessageProps, "error"> & {
87
87
  message?: ReactNode;
88
88
  };
89
- declare function EnvironmentVariablesDuplicateKeysError({ message, ...props }: EnvironmentVariablesDuplicateKeysErrorProps): import("react").JSX.Element | null;
90
- type EnvironmentVariablesUploadErrorProps = Omit<EnvironmentVariablesMessageProps, "error">;
91
- declare function EnvironmentVariablesUploadError(props: EnvironmentVariablesUploadErrorProps): import("react").JSX.Element;
92
- type EnvironmentVariablesReadOnlyListProps = ComponentProps<"div"> & {
89
+ export declare function EnvironmentVariablesDuplicateKeysError({ message, ...props }: EnvironmentVariablesDuplicateKeysErrorProps): import("react").JSX.Element | null;
90
+ export type EnvironmentVariablesUploadErrorProps = Omit<EnvironmentVariablesMessageProps, "error">;
91
+ export declare function EnvironmentVariablesUploadError(props: EnvironmentVariablesUploadErrorProps): import("react").JSX.Element;
92
+ export type EnvironmentVariablesReadOnlyListProps = ComponentProps<"div"> & {
93
93
  rows?: readonly EnvironmentVariableRow[];
94
94
  emptyMessage?: ReactNode;
95
95
  } & {
96
96
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
97
97
  };
98
- declare function EnvironmentVariablesReadOnlyList({ rows, emptyMessage, className, children, ...props }: EnvironmentVariablesReadOnlyListProps): import("react").JSX.Element;
99
- type EnvironmentVariablesReadOnlyItemProps = Omit<ComponentProps<"div">, "style"> & {
98
+ export declare function EnvironmentVariablesReadOnlyList({ rows, emptyMessage, className, children, ...props }: EnvironmentVariablesReadOnlyListProps): import("react").JSX.Element;
99
+ export type EnvironmentVariablesReadOnlyItemProps = Omit<ComponentProps<"div">, "style"> & {
100
100
  name: ReactNode;
101
101
  value?: ReactNode;
102
102
  revealed?: boolean;
103
103
  style?: CSSProperties & EnvironmentVariablesKnobStyle;
104
104
  };
105
- declare function EnvironmentVariablesReadOnlyItem({ name, value, revealed, className, ...props }: EnvironmentVariablesReadOnlyItemProps): import("react").JSX.Element;
106
- declare const EnvironmentVariables: typeof EnvironmentVariablesComponent & {
105
+ export declare function EnvironmentVariablesReadOnlyItem({ name, value, revealed, className, ...props }: EnvironmentVariablesReadOnlyItemProps): import("react").JSX.Element;
106
+ export declare const EnvironmentVariables: typeof EnvironmentVariablesComponent & {
107
107
  Root: typeof EnvironmentVariablesRoot;
108
108
  Header: typeof EnvironmentVariablesHeader;
109
109
  Toolbar: typeof EnvironmentVariablesToolbar;
@@ -120,5 +120,4 @@ declare const EnvironmentVariables: typeof EnvironmentVariablesComponent & {
120
120
  ReadOnlyList: typeof EnvironmentVariablesReadOnlyList;
121
121
  ReadOnlyItem: typeof EnvironmentVariablesReadOnlyItem;
122
122
  };
123
- //#endregion
124
- export { EnvironmentVariables, EnvironmentVariablesActions, EnvironmentVariablesActionsProps, EnvironmentVariablesAddButton, EnvironmentVariablesAddButtonProps, EnvironmentVariablesDuplicateKeysError, EnvironmentVariablesDuplicateKeysErrorProps, EnvironmentVariablesHeader, EnvironmentVariablesHeaderProps, EnvironmentVariablesMessage, EnvironmentVariablesMessageProps, EnvironmentVariablesProps, EnvironmentVariablesReadOnlyItem, EnvironmentVariablesReadOnlyItemProps, EnvironmentVariablesReadOnlyList, EnvironmentVariablesReadOnlyListProps, EnvironmentVariablesResetButton, EnvironmentVariablesResetButtonProps, EnvironmentVariablesRoot, EnvironmentVariablesRootProps, EnvironmentVariablesRow, EnvironmentVariablesRowErrors, EnvironmentVariablesRowProps, EnvironmentVariablesRows, EnvironmentVariablesRowsProps, EnvironmentVariablesSubmitButton, EnvironmentVariablesSubmitButtonProps, EnvironmentVariablesSubmitPayload, EnvironmentVariablesToolbar, EnvironmentVariablesToolbarProps, EnvironmentVariablesUploadButton, EnvironmentVariablesUploadButtonProps, EnvironmentVariablesUploadError, EnvironmentVariablesUploadErrorProps };
123
+ //#endregion
@@ -1,10 +1,9 @@
1
1
  //#region src/extensions/create-track-highlight.d.ts
2
- type TrackHighlightOptions = {
2
+ export type TrackHighlightOptions = {
3
3
  itemSelector: string;
4
4
  activeSelector: string;
5
5
  range?: boolean;
6
6
  followHover?: boolean;
7
7
  };
8
- declare function createTrackHighlight(track: HTMLElement, highlight: HTMLElement, options: TrackHighlightOptions, hoverHighlight?: HTMLElement): () => void;
9
- //#endregion
10
- export { TrackHighlightOptions, createTrackHighlight };
8
+ export declare function createTrackHighlight(track: HTMLElement, highlight: HTMLElement, options: TrackHighlightOptions, hoverHighlight?: HTMLElement): () => void;
9
+ //#endregion
@@ -1,4 +1,3 @@
1
1
  //#region src/extensions/supports-anchor-transitions.d.ts
2
- declare function supportsAnchorTransitions(): boolean;
3
- //#endregion
4
- export { supportsAnchorTransitions };
2
+ export declare function supportsAnchorTransitions(): boolean;
3
+ //#endregion
@@ -1,7 +1,7 @@
1
1
  import { TrackHighlightKnobStyle } from "../knob-contracts/track-highlight-knobs.js";
2
2
  import { CSSProperties, ComponentProps, ReactNode, RefObject } from "react";
3
3
  //#region src/extensions/track-highlight.d.ts
4
- type TrackHighlightProps = Omit<ComponentProps<"div">, "children" | "ref" | "style"> & {
4
+ export type TrackHighlightProps = Omit<ComponentProps<"div">, "children" | "ref" | "style"> & {
5
5
  trackRef?: RefObject<HTMLElement | null>;
6
6
  itemSelector?: string;
7
7
  activeSelector?: string;
@@ -11,6 +11,5 @@ type TrackHighlightProps = Omit<ComponentProps<"div">, "children" | "ref" | "sty
11
11
  children?: ReactNode;
12
12
  style?: CSSProperties & TrackHighlightKnobStyle;
13
13
  };
14
- declare function TrackHighlight({ trackRef, itemSelector, activeSelector, range, followHover, hoverClassName, className, style, children, ...props }: TrackHighlightProps): import("react").JSX.Element;
15
- //#endregion
16
- export { TrackHighlight, TrackHighlightProps };
14
+ export declare function TrackHighlight({ trackRef, itemSelector, activeSelector, range, followHover, hoverClassName, className, style, children, ...props }: TrackHighlightProps): import("react").JSX.Element;
15
+ //#endregion
@@ -1,12 +1,12 @@
1
1
  //#region src/hooks/use-audio-recorder.d.ts
2
- type AudioRecorderState = "idle" | "requesting" | "recording" | "recorded" | "submitting" | "error";
3
- type AudioRecording = {
2
+ export type AudioRecorderState = "idle" | "requesting" | "recording" | "recorded" | "submitting" | "error";
3
+ export type AudioRecording = {
4
4
  blob: Blob;
5
5
  url: string;
6
6
  durationMs: number;
7
7
  mimeType: string;
8
8
  };
9
- type UseAudioRecorderOptions = {
9
+ export type UseAudioRecorderOptions = {
10
10
  onRecordingComplete?: (recording: AudioRecording) => void | Promise<void>;
11
11
  onCancel?: () => void;
12
12
  maxDurationMs?: number;
@@ -15,14 +15,14 @@ type UseAudioRecorderOptions = {
15
15
  barDurationMs?: number;
16
16
  deviceId?: string;
17
17
  };
18
- type AudioRecorderSnapshot = {
18
+ export type AudioRecorderSnapshot = {
19
19
  state: AudioRecorderState;
20
20
  durationMs: number;
21
21
  levels: number[];
22
22
  error: Error | null;
23
23
  recording?: AudioRecording;
24
24
  };
25
- type UseAudioRecorderResult = AudioRecorderSnapshot & {
25
+ export type UseAudioRecorderResult = AudioRecorderSnapshot & {
26
26
  isDisabled: boolean;
27
27
  canStart: boolean;
28
28
  canCancel: boolean;
@@ -32,7 +32,7 @@ type UseAudioRecorderResult = AudioRecorderSnapshot & {
32
32
  cancel: () => void;
33
33
  submit: () => Promise<AudioRecording | null>;
34
34
  };
35
- type UseAudioInputDevicesResult = {
35
+ export type UseAudioInputDevicesResult = {
36
36
  devices: MediaDeviceInfo[];
37
37
  loading: boolean;
38
38
  error: Error | null;
@@ -40,7 +40,7 @@ type UseAudioInputDevicesResult = {
40
40
  refresh: () => Promise<void>;
41
41
  requestPermission: () => Promise<void>;
42
42
  };
43
- type AudioRecorderStreamLike = {
43
+ export type AudioRecorderStreamLike = {
44
44
  getTracks: () => readonly {
45
45
  stop: () => void;
46
46
  }[];
@@ -73,7 +73,7 @@ type AudioContextLike<TStream extends AudioRecorderStreamLike> = {
73
73
  createAnalyser(): AnalyserLike;
74
74
  };
75
75
  type AudioContextConstructor<TStream extends AudioRecorderStreamLike> = new () => AudioContextLike<TStream>;
76
- type AudioRecorderControllerEnvironment<TStream extends AudioRecorderStreamLike = AudioRecorderStreamLike> = {
76
+ export type AudioRecorderControllerEnvironment<TStream extends AudioRecorderStreamLike = AudioRecorderStreamLike> = {
77
77
  mediaDevices?: {
78
78
  getUserMedia: (constraints: MediaStreamConstraints) => Promise<TStream>;
79
79
  };
@@ -85,12 +85,12 @@ type AudioRecorderControllerEnvironment<TStream extends AudioRecorderStreamLike
85
85
  revokeObjectURL?: (url: string) => void;
86
86
  now?: () => number;
87
87
  };
88
- declare function preferredAudioMimeType(MediaRecorderImpl?: {
88
+ export declare function preferredAudioMimeType(MediaRecorderImpl?: {
89
89
  isTypeSupported?: (mimeType: string) => boolean;
90
90
  }): "audio/mp4" | "audio/webm;codecs=opus" | undefined;
91
- declare function formatAudioInputDeviceLabel(device: MediaDeviceInfo, fallback?: string): string;
92
- declare function useAudioInputDevices(): UseAudioInputDevicesResult;
93
- declare function createAudioRecorderController<TStream extends AudioRecorderStreamLike = AudioRecorderStreamLike>(initialOptions?: UseAudioRecorderOptions, environment?: AudioRecorderControllerEnvironment<TStream>): {
91
+ export declare function formatAudioInputDeviceLabel(device: MediaDeviceInfo, fallback?: string): string;
92
+ export declare function useAudioInputDevices(): UseAudioInputDevicesResult;
93
+ export declare function createAudioRecorderController<TStream extends AudioRecorderStreamLike = AudioRecorderStreamLike>(initialOptions?: UseAudioRecorderOptions, environment?: AudioRecorderControllerEnvironment<TStream>): {
94
94
  getSnapshot: () => AudioRecorderSnapshot;
95
95
  getResult: () => UseAudioRecorderResult;
96
96
  setOptions: (nextOptions: UseAudioRecorderOptions) => void;
@@ -102,6 +102,5 @@ declare function createAudioRecorderController<TStream extends AudioRecorderStre
102
102
  submit: () => Promise<AudioRecording | null>;
103
103
  destroy: () => void;
104
104
  };
105
- declare function useAudioRecorder(options?: UseAudioRecorderOptions): UseAudioRecorderResult;
106
- //#endregion
107
- export { AudioRecorderControllerEnvironment, AudioRecorderSnapshot, AudioRecorderState, AudioRecorderStreamLike, AudioRecording, UseAudioInputDevicesResult, UseAudioRecorderOptions, UseAudioRecorderResult, createAudioRecorderController, formatAudioInputDeviceLabel, preferredAudioMimeType, useAudioInputDevices, useAudioRecorder };
105
+ export declare function useAudioRecorder(options?: UseAudioRecorderOptions): UseAudioRecorderResult;
106
+ //#endregion
@@ -3,12 +3,12 @@ import { ChatComposerKnobStyle } from "../knob-contracts/chat-composer-knobs.js"
3
3
  import { ChatDensity } from "./use-chat-message.js";
4
4
  import { CSSProperties, ComponentProps, ReactNode } from "react";
5
5
  //#region src/hooks/use-chat-composer.d.ts
6
- type ChatComposerSubmitPayload = {
6
+ export type ChatComposerSubmitPayload = {
7
7
  value: string;
8
8
  clear: () => void;
9
9
  mentions?: MentionItem[];
10
10
  };
11
- type ChatComposerProps = Omit<ComponentProps<"form">, "onSubmit" | "style"> & {
11
+ export type ChatComposerProps = Omit<ComponentProps<"form">, "onSubmit" | "style"> & {
12
12
  children?: ReactNode;
13
13
  value?: string;
14
14
  defaultValue?: string;
@@ -19,7 +19,7 @@ type ChatComposerProps = Omit<ComponentProps<"form">, "onSubmit" | "style"> & {
19
19
  disabled?: boolean;
20
20
  style?: CSSProperties & ChatComposerKnobStyle;
21
21
  };
22
- type MentionItem = {
22
+ export type MentionItem = {
23
23
  id: string;
24
24
  label: string;
25
25
  kind: string;
@@ -33,7 +33,7 @@ type ComposerKeyEvent = {
33
33
  };
34
34
  preventDefault: () => void;
35
35
  };
36
- declare function useChatComposer({ value, defaultValue, onValueChange, onSubmit, state, density, disabled, trackSends }: Pick<ChatComposerProps, "value" | "defaultValue" | "onValueChange" | "onSubmit" | "state" | "density" | "disabled"> & {
36
+ export declare function useChatComposer({ value, defaultValue, onValueChange, onSubmit, state, density, disabled, trackSends }: Pick<ChatComposerProps, "value" | "defaultValue" | "onValueChange" | "onSubmit" | "state" | "density" | "disabled"> & {
37
37
  /** Count successful submits — only enabled when something reads counter (send-layer anchor), so idle apps pay no extra state update. */
38
38
  trackSends?: boolean;
39
39
  }): {
@@ -52,5 +52,4 @@ declare function useChatComposer({ value, defaultValue, onValueChange, onSubmit,
52
52
  handleSubmit: (event: FormSubmitEvent) => void;
53
53
  handleKeyDown: (event: ComposerKeyEvent) => void;
54
54
  };
55
- //#endregion
56
- export { ChatComposerProps, ChatComposerSubmitPayload, MentionItem, useChatComposer };
55
+ //#endregion
@@ -1,17 +1,17 @@
1
1
  import { ChatMessageKnobStyle } from "../knob-contracts/chat-message-knobs.js";
2
2
  import { CSSProperties, ComponentProps } from "react";
3
3
  //#region src/hooks/use-chat-message.d.ts
4
- type ChatRole = "user" | "assistant" | "system" | "tool";
5
- type ChatDensity = "compact" | "comfortable";
6
- type ChatState = "idle" | "streaming" | "pending" | "error";
7
- type ChatMessageProps = ComponentProps<"article"> & {
4
+ export type ChatRole = "user" | "assistant" | "system" | "tool";
5
+ export type ChatDensity = "compact" | "comfortable";
6
+ export type ChatState = "idle" | "streaming" | "pending" | "error";
7
+ export type ChatMessageProps = ComponentProps<"article"> & {
8
8
  from: ChatRole;
9
9
  state?: ChatState;
10
10
  density?: ChatDensity;
11
11
  } & {
12
12
  style?: CSSProperties & ChatMessageKnobStyle;
13
13
  };
14
- type ChatMessageContext = {
14
+ export type ChatMessageContext = {
15
15
  from: ChatRole;
16
16
  state: ChatState;
17
17
  density: ChatDensity;
@@ -23,6 +23,5 @@ type ChatMessageContext = {
23
23
  isStreaming: boolean;
24
24
  isError: boolean;
25
25
  };
26
- declare function useChatMessage({ from, state, density }: Pick<ChatMessageProps, "from" | "state" | "density">): ChatMessageContext;
27
- //#endregion
28
- export { ChatDensity, ChatMessageContext, ChatMessageProps, ChatRole, ChatState, useChatMessage };
26
+ export declare function useChatMessage({ from, state, density }: Pick<ChatMessageProps, "from" | "state" | "density">): ChatMessageContext;
27
+ //#endregion
@@ -1,18 +1,17 @@
1
1
  import { PointerEvent, RefObject } from "react";
2
2
  //#region src/hooks/use-color-area.d.ts
3
- type ColorAreaOffset = {
3
+ export type ColorAreaOffset = {
4
4
  x: number;
5
5
  y: number;
6
6
  };
7
- type ColorAreaRect = {
7
+ export type ColorAreaRect = {
8
8
  width: number;
9
9
  height: number;
10
10
  };
11
- type ColorAreaPointer = {
11
+ export type ColorAreaPointer = {
12
12
  areaRef: RefObject<HTMLDivElement | null>;
13
13
  dragging: boolean;
14
14
  onPointerDown: (event: PointerEvent) => void;
15
15
  };
16
- declare function useColorArea(onChange: (offset: ColorAreaOffset, rect: ColorAreaRect) => void): ColorAreaPointer;
17
- //#endregion
18
- export { ColorAreaOffset, ColorAreaPointer, ColorAreaRect, useColorArea };
16
+ export declare function useColorArea(onChange: (offset: ColorAreaOffset, rect: ColorAreaRect) => void): ColorAreaPointer;
17
+ //#endregion
@@ -1,22 +1,21 @@
1
1
  //#region src/hooks/use-copy-to-clipboard.d.ts
2
- type UseCopyToClipboardOptions = {
2
+ export type UseCopyToClipboardOptions = {
3
3
  text?: string;
4
4
  copiedDuration?: number;
5
5
  onCopy?: (value: string) => void;
6
6
  onCopyError?: (error: unknown) => void;
7
7
  };
8
- type UseCopyToClipboardResult = {
8
+ export type UseCopyToClipboardResult = {
9
9
  isCopied: boolean;
10
10
  copyToClipboard: (value: string) => Promise<boolean>;
11
11
  resetCopied: () => void;
12
12
  };
13
- type UseCopyToClipboardConfiguredResult = UseCopyToClipboardResult & {
13
+ export type UseCopyToClipboardConfiguredResult = UseCopyToClipboardResult & {
14
14
  handleCopy: () => Promise<boolean>;
15
15
  };
16
- declare function copyTextToClipboard(value: string): Promise<boolean>;
17
- declare function useCopyToClipboard(options: UseCopyToClipboardOptions & {
16
+ export declare function copyTextToClipboard(value: string): Promise<boolean>;
17
+ export declare function useCopyToClipboard(options: UseCopyToClipboardOptions & {
18
18
  text: string;
19
19
  }): UseCopyToClipboardConfiguredResult;
20
- declare function useCopyToClipboard(options?: UseCopyToClipboardOptions): UseCopyToClipboardResult;
21
- //#endregion
22
- export { UseCopyToClipboardConfiguredResult, UseCopyToClipboardOptions, UseCopyToClipboardResult, copyTextToClipboard, useCopyToClipboard };
20
+ export declare function useCopyToClipboard(options?: UseCopyToClipboardOptions): UseCopyToClipboardResult;
21
+ //#endregion
@@ -1,21 +1,21 @@
1
1
  import { DropzoneFileRejection, DropzonePolicy } from "../lib/dropzone-validation.js";
2
2
  import { ChangeEvent, ComponentProps, DragEvent, RefObject } from "react";
3
3
  //#region src/hooks/use-dropzone.d.ts
4
- type DropzoneVisualState = "idle" | "accept" | "reject" | "unknown" | "processing";
5
- type DropzoneValueChangeReason = "drop" | "input" | "remove" | "clear";
6
- type DropzoneEvent = DragEvent<HTMLElement> | ChangeEvent<HTMLInputElement>;
7
- type DropzoneGetFilesFromEvent = (event: DropzoneEvent, signal: AbortSignal) => readonly File[] | Promise<readonly File[]>;
8
- type DropzoneValueChangeDetails = {
4
+ export type DropzoneVisualState = "idle" | "accept" | "reject" | "unknown" | "processing";
5
+ export type DropzoneValueChangeReason = "drop" | "input" | "remove" | "clear";
6
+ export type DropzoneEvent = DragEvent<HTMLElement> | ChangeEvent<HTMLInputElement>;
7
+ export type DropzoneGetFilesFromEvent = (event: DropzoneEvent, signal: AbortSignal) => readonly File[] | Promise<readonly File[]>;
8
+ export type DropzoneValueChangeDetails = {
9
9
  reason: DropzoneValueChangeReason;
10
10
  addedFiles: readonly File[];
11
11
  removedFiles: readonly File[];
12
12
  };
13
- type DropzoneDropDetails = {
13
+ export type DropzoneDropDetails = {
14
14
  acceptedFiles: readonly File[];
15
15
  fileRejections: readonly DropzoneFileRejection[];
16
16
  event: DropzoneEvent;
17
17
  };
18
- type UseDropzoneOptions = {
18
+ export type UseDropzoneOptions = {
19
19
  value?: readonly File[];
20
20
  defaultValue?: readonly File[];
21
21
  onValueChange?: (value: readonly File[], details: DropzoneValueChangeDetails) => void;
@@ -28,7 +28,7 @@ type UseDropzoneOptions = {
28
28
  onDrop?: (details: DropzoneDropDetails) => void;
29
29
  onError?: (error: Error) => void;
30
30
  };
31
- type UseDropzoneReturn = {
31
+ export type UseDropzoneReturn = {
32
32
  value: readonly File[];
33
33
  fileRejections: readonly DropzoneFileRejection[];
34
34
  accept: string | undefined;
@@ -53,7 +53,6 @@ type UseDropzoneReturn = {
53
53
  getRootProps: (props?: ComponentProps<"div">) => ComponentProps<"div">;
54
54
  getInputProps: (props?: ComponentProps<"input">) => ComponentProps<"input">;
55
55
  };
56
- declare function useDropzone({ value: controlledValue, defaultValue, onValueChange, policy, disabled, drag, preventDropOnDocument, trackDocumentDrag, getFilesFromEvent, onDrop, onError }?: UseDropzoneOptions): UseDropzoneReturn;
57
- declare function defaultGetFilesFromEvent(event: DropzoneEvent): readonly File[];
58
- //#endregion
59
- export { DropzoneDropDetails, DropzoneEvent, DropzoneGetFilesFromEvent, DropzoneValueChangeDetails, DropzoneValueChangeReason, DropzoneVisualState, UseDropzoneOptions, UseDropzoneReturn, defaultGetFilesFromEvent, useDropzone };
56
+ export declare function useDropzone({ value: controlledValue, defaultValue, onValueChange, policy, disabled, drag, preventDropOnDocument, trackDocumentDrag, getFilesFromEvent, onDrop, onError }?: UseDropzoneOptions): UseDropzoneReturn;
57
+ export declare function defaultGetFilesFromEvent(event: DropzoneEvent): readonly File[];
58
+ //#endregion
@@ -2,12 +2,12 @@ import { FormSubmitEvent, OpenChangeEventDetails, OpenChangeReason } from "../co
2
2
  import { DynamicNotificationKnobStyle } from "../knob-contracts/dynamic-notification-knobs.js";
3
3
  import { CSSProperties, ComponentProps } from "react";
4
4
  //#region src/hooks/use-dynamic-notification.d.ts
5
- type DynamicNotificationVariant = "surface" | "glass" | "liquid";
6
- type DynamicNotificationReplyPayload = {
5
+ export type DynamicNotificationVariant = "surface" | "glass" | "liquid";
6
+ export type DynamicNotificationReplyPayload = {
7
7
  value: string;
8
8
  clear: () => void;
9
9
  };
10
- type DynamicNotificationProps = Omit<ComponentProps<"div">, "onChange" | "style"> & {
10
+ export type DynamicNotificationProps = Omit<ComponentProps<"div">, "onChange" | "style"> & {
11
11
  open?: boolean;
12
12
  defaultOpen?: boolean;
13
13
  onOpenChange?: (open: boolean, eventDetails: OpenChangeEventDetails) => void;
@@ -20,7 +20,7 @@ type DynamicNotificationProps = Omit<ComponentProps<"div">, "onChange" | "style"
20
20
  disabled?: boolean;
21
21
  style?: CSSProperties & DynamicNotificationKnobStyle;
22
22
  };
23
- type DynamicNotificationController = {
23
+ export type DynamicNotificationController = {
24
24
  open: boolean;
25
25
  disabled: boolean;
26
26
  setOpen: (nextOpen: boolean, reason: OpenChangeReason, event: Event, trigger?: Element) => void;
@@ -32,6 +32,5 @@ type DynamicNotificationController = {
32
32
  submitReply: () => void;
33
33
  handleReplySubmit: (event: FormSubmitEvent) => void;
34
34
  };
35
- declare function useDynamicNotification({ open, defaultOpen, onOpenChange, replyValue, defaultReplyValue, onReplyValueChange, onReply, disabled }: Pick<DynamicNotificationProps, "open" | "defaultOpen" | "onOpenChange" | "replyValue" | "defaultReplyValue" | "onReplyValueChange" | "onReply" | "disabled">): DynamicNotificationController;
36
- //#endregion
37
- export { DynamicNotificationController, DynamicNotificationProps, DynamicNotificationReplyPayload, DynamicNotificationVariant, useDynamicNotification };
35
+ export declare function useDynamicNotification({ open, defaultOpen, onOpenChange, replyValue, defaultReplyValue, onReplyValueChange, onReply, disabled }: Pick<DynamicNotificationProps, "open" | "defaultOpen" | "onOpenChange" | "replyValue" | "defaultReplyValue" | "onReplyValueChange" | "onReply" | "disabled">): DynamicNotificationController;
36
+ //#endregion
@@ -1,8 +1,8 @@
1
1
  import { EnvironmentVariableEntry } from "../lib/env-file.js";
2
2
  //#region src/hooks/use-environment-variables.d.ts
3
- type EnvironmentVariableRow = EnvironmentVariableEntry;
4
- type EnvironmentVariablesImportMode = "auto" | "bulk";
5
- interface UseEnvironmentVariablesOptions<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> {
3
+ export type EnvironmentVariableRow = EnvironmentVariableEntry;
4
+ export type EnvironmentVariablesImportMode = "auto" | "bulk";
5
+ export interface UseEnvironmentVariablesOptions<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> {
6
6
  initialRows?: readonly TRow[];
7
7
  rows?: readonly TRow[];
8
8
  onRowsChange?: (rows: TRow[]) => void;
@@ -12,17 +12,17 @@ interface UseEnvironmentVariablesOptions<TRow extends EnvironmentVariableRow = E
12
12
  getPreservedRows?: (rows: readonly TRow[]) => readonly TRow[];
13
13
  maxUploadSize?: number;
14
14
  }
15
- interface EnvironmentVariablesFileUploadEvent {
15
+ export interface EnvironmentVariablesFileUploadEvent {
16
16
  target: {
17
17
  files?: FileList | readonly File[] | null;
18
18
  value: string;
19
19
  };
20
20
  }
21
- interface EnvironmentVariablesImportOptions {
21
+ export interface EnvironmentVariablesImportOptions {
22
22
  targetIndex?: number;
23
23
  mode?: EnvironmentVariablesImportMode;
24
24
  }
25
- interface EnvironmentVariablesController<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> {
25
+ export interface EnvironmentVariablesController<TRow extends EnvironmentVariableRow = EnvironmentVariableRow> {
26
26
  rows: readonly TRow[];
27
27
  uploadError: string | null;
28
28
  duplicateKeys: Set<string>;
@@ -45,7 +45,6 @@ interface EnvironmentVariablesController<TRow extends EnvironmentVariableRow = E
45
45
  toggleValueVisibility: (index: number) => void;
46
46
  rowHasDuplicateKey: (index: number) => boolean;
47
47
  }
48
- declare function useEnvironmentVariables<TRow extends EnvironmentVariableRow = EnvironmentVariableRow>(options?: UseEnvironmentVariablesOptions<TRow>): EnvironmentVariablesController<TRow>;
49
- declare function parseEnvironmentVariablesImportText(text: string, mode?: EnvironmentVariablesImportMode): EnvironmentVariableEntry[];
50
- //#endregion
51
- export { EnvironmentVariableRow, EnvironmentVariablesController, EnvironmentVariablesFileUploadEvent, EnvironmentVariablesImportMode, EnvironmentVariablesImportOptions, UseEnvironmentVariablesOptions, parseEnvironmentVariablesImportText, useEnvironmentVariables };
48
+ export declare function useEnvironmentVariables<TRow extends EnvironmentVariableRow = EnvironmentVariableRow>(options?: UseEnvironmentVariablesOptions<TRow>): EnvironmentVariablesController<TRow>;
49
+ export declare function parseEnvironmentVariablesImportText(text: string, mode?: EnvironmentVariablesImportMode): EnvironmentVariableEntry[];
50
+ //#endregion
@@ -0,0 +1,3 @@
1
+ //#region src/hooks/use-keyboard-navigation.d.ts
2
+ export declare function useKeyboardNavigation(): boolean;
3
+ //#endregion
@@ -0,0 +1,22 @@
1
+ import { useEffect, useState } from "react";
2
+ //#region src/hooks/use-keyboard-navigation.ts
3
+ function useKeyboardNavigation() {
4
+ const [keyboardNavigation, setKeyboardNavigation] = useState(false);
5
+ useEffect(() => {
6
+ function markKeyboardNavigation(event) {
7
+ if (event.key === "Tab") setKeyboardNavigation(true);
8
+ }
9
+ function clearKeyboardNavigation() {
10
+ setKeyboardNavigation(false);
11
+ }
12
+ document.addEventListener("keydown", markKeyboardNavigation, true);
13
+ document.addEventListener("pointerdown", clearKeyboardNavigation, true);
14
+ return () => {
15
+ document.removeEventListener("keydown", markKeyboardNavigation, true);
16
+ document.removeEventListener("pointerdown", clearKeyboardNavigation, true);
17
+ };
18
+ }, []);
19
+ return keyboardNavigation;
20
+ }
21
+ //#endregion
22
+ export { useKeyboardNavigation };
@@ -1,5 +1,4 @@
1
1
  //#region src/hooks/use-mobile.d.ts
2
2
  /** True below `breakpoint` px (Tailwind `md` by default); pass another breakpoint to match layout that switches elsewhere. */
3
- declare function useIsMobile(breakpoint?: number): boolean;
4
- //#endregion
5
- export { useIsMobile };
3
+ export declare function useIsMobile(breakpoint?: number): boolean;
4
+ //#endregion
@@ -1,8 +1,7 @@
1
1
  import { TriggerConfig, TriggerMenuController, TriggerMenuItemData } from "./use-trigger-menu.js";
2
2
  import { RefObject } from "react";
3
3
  //#region src/hooks/use-textarea-trigger-menu.d.ts
4
- declare function useTextareaTriggerMenu<Item extends TriggerMenuItemData>(ref: RefObject<HTMLTextAreaElement | null>, options: {
4
+ export declare function useTextareaTriggerMenu<Item extends TriggerMenuItemData>(ref: RefObject<HTMLTextAreaElement | null>, options: {
5
5
  triggers: readonly TriggerConfig<Item>[];
6
6
  }): TriggerMenuController<Item>;
7
- //#endregion
8
- export { useTextareaTriggerMenu };
7
+ //#endregion
@@ -1,7 +1,7 @@
1
1
  import { TriggerMatch } from "../lib/trigger-detect.js";
2
2
  import { ReactNode } from "react";
3
3
  //#region src/hooks/use-trigger-menu.d.ts
4
- type TriggerMenuItemData = {
4
+ export type TriggerMenuItemData = {
5
5
  id: string;
6
6
  label: string;
7
7
  description?: string;
@@ -11,11 +11,11 @@ type TriggerMenuItemData = {
11
11
  kind?: string;
12
12
  image?: string;
13
13
  };
14
- type TriggerSelectContext = {
14
+ export type TriggerSelectContext = {
15
15
  char: string;
16
16
  query: string;
17
17
  };
18
- type TriggerConfig<Item extends TriggerMenuItemData = TriggerMenuItemData> = {
18
+ export type TriggerConfig<Item extends TriggerMenuItemData = TriggerMenuItemData> = {
19
19
  char: string;
20
20
  items: readonly Item[] | ((query: string) => readonly Item[]);
21
21
  filter?: (item: Item, query: string) => boolean;
@@ -23,11 +23,11 @@ type TriggerConfig<Item extends TriggerMenuItemData = TriggerMenuItemData> = {
23
23
  insertText?: (item: Item) => string;
24
24
  onSelect?: (item: Item, ctx: TriggerSelectContext) => void;
25
25
  };
26
- type UseTriggerMenuOptions<Item extends TriggerMenuItemData> = {
26
+ export type UseTriggerMenuOptions<Item extends TriggerMenuItemData> = {
27
27
  triggers: readonly TriggerConfig<Item>[];
28
28
  onCommit: (item: Item, trigger: TriggerConfig<Item>, match: TriggerMatch) => void;
29
29
  };
30
- type TriggerMenuController<Item extends TriggerMenuItemData> = {
30
+ export type TriggerMenuController<Item extends TriggerMenuItemData> = {
31
31
  open: boolean;
32
32
  items: readonly Item[];
33
33
  activeIndex: number;
@@ -44,6 +44,5 @@ type TriggerMenuController<Item extends TriggerMenuItemData> = {
44
44
  close: () => void;
45
45
  setOpen: (open: boolean) => void;
46
46
  };
47
- declare function useTriggerMenu<Item extends TriggerMenuItemData>({ triggers, onCommit }: UseTriggerMenuOptions<Item>): TriggerMenuController<Item>;
48
- //#endregion
49
- export { TriggerConfig, TriggerMenuController, TriggerMenuItemData, TriggerSelectContext, UseTriggerMenuOptions, useTriggerMenu };
47
+ export declare function useTriggerMenu<Item extends TriggerMenuItemData>({ triggers, onCommit }: UseTriggerMenuOptions<Item>): TriggerMenuController<Item>;
48
+ //#endregion