entasis 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (839) hide show
  1. package/README.md +1 -1
  2. package/dist/attachments/disclosurePanel.svelte.d.ts +84 -0
  3. package/dist/attachments/disclosurePanel.svelte.js +277 -0
  4. package/dist/attachments/portal.d.ts +17 -1
  5. package/dist/attachments/portal.js +39 -2
  6. package/dist/attachments/spinnerOverlay.svelte.js +12 -0
  7. package/dist/attachments/transitionSize.d.ts +6 -0
  8. package/dist/attachments/transitionSize.js +30 -0
  9. package/dist/components/AIAskUserQuestion/AIAskUserQuestion.svelte +131 -17
  10. package/dist/components/AIAskUserQuestion/AIAskUserQuestionFileStep.svelte +26 -6
  11. package/dist/components/AIAskUserQuestion/AIAskUserQuestionFileStep.svelte.d.ts +6 -0
  12. package/dist/components/AIAskUserQuestion/AIAskUserQuestionFooter.svelte +27 -53
  13. package/dist/components/AIAskUserQuestion/AIAskUserQuestionFooter.svelte.d.ts +3 -4
  14. package/dist/components/AIAskUserQuestion/AIAskUserQuestionHeader.svelte +19 -16
  15. package/dist/components/AIAskUserQuestion/AIAskUserQuestionStep.svelte +180 -21
  16. package/dist/components/AIAskUserQuestion/AIAskUserQuestionStep.svelte.d.ts +9 -1
  17. package/dist/components/AIAskUserQuestion/AIAskUserQuestionSummary.svelte +56 -0
  18. package/dist/components/AIAskUserQuestion/AIAskUserQuestionSummary.svelte.d.ts +4 -0
  19. package/dist/components/AIAskUserQuestion/aiAskUserQuestion.mcp.d.ts +1 -1
  20. package/dist/components/AIAskUserQuestion/aiAskUserQuestion.mcp.js +26 -8
  21. package/dist/components/AIAskUserQuestion/aiAskUserQuestion.props.d.ts +62 -5
  22. package/dist/components/AIAskUserQuestion/aiAskUserQuestion.theme.d.ts +42 -0
  23. package/dist/components/AIAskUserQuestion/aiAskUserQuestion.theme.js +53 -12
  24. package/dist/components/AIAskUserQuestion/aiAskUserQuestionAnswers.d.ts +17 -1
  25. package/dist/components/AIAskUserQuestion/aiAskUserQuestionAnswers.js +56 -8
  26. package/dist/components/AIAskUserQuestion/index.d.ts +3 -1
  27. package/dist/components/AIAskUserQuestion/index.js +2 -0
  28. package/dist/components/AIAskUserQuestion/schemas.d.ts +44 -0
  29. package/dist/components/AIAskUserQuestion/schemas.js +10 -3
  30. package/dist/components/AIChat/AIChat.svelte +10 -0
  31. package/dist/components/AIChat/AIChat.svelte.d.ts +2 -2
  32. package/dist/components/AIChat/AIChatComposerSurface.svelte +23 -5
  33. package/dist/components/AIChat/AIChatComposerSurface.svelte.d.ts +5 -0
  34. package/dist/components/AIChat/AIChatSkeleton.svelte +29 -37
  35. package/dist/components/AIChat/AIChatSurface.svelte +30 -2
  36. package/dist/components/AIChat/AIChatSurface.svelte.d.ts +1 -1
  37. package/dist/components/AIChat/AIChatThreadSurface.svelte +11 -1
  38. package/dist/components/AIChat/AIChatThreadSurface.svelte.d.ts +3 -1
  39. package/dist/components/AIChat/aiChat.mcp.d.ts +1 -1
  40. package/dist/components/AIChat/aiChat.mcp.js +31 -15
  41. package/dist/components/AIChat/aiChat.props.d.ts +36 -10
  42. package/dist/components/AIChat/aiChat.theme.d.ts +9 -0
  43. package/dist/components/AIChat/aiChat.theme.js +21 -4
  44. package/dist/components/AIChat/aiChatSkeleton.props.d.ts +5 -0
  45. package/dist/components/AIChat/index.d.ts +1 -1
  46. package/dist/components/AIComposer/AIComposer.svelte +102 -5
  47. package/dist/components/AIComposer/AIComposer.svelte.d.ts +1 -0
  48. package/dist/components/AIComposer/AIComposerFooter.svelte +54 -12
  49. package/dist/components/AIComposer/AIComposerFooter.svelte.d.ts +2 -0
  50. package/dist/components/AIComposer/AIComposerQueue.svelte +8 -3
  51. package/dist/components/AIComposer/aiComposer.editor.theme.js +13 -2
  52. package/dist/components/AIComposer/aiComposer.mcp.d.ts +1 -1
  53. package/dist/components/AIComposer/aiComposer.mcp.js +15 -7
  54. package/dist/components/AIComposer/aiComposer.props.d.ts +27 -7
  55. package/dist/components/AIComposer/aiComposer.theme.d.ts +42 -3
  56. package/dist/components/AIComposer/aiComposer.theme.js +37 -5
  57. package/dist/components/AIComposer/aiComposerFileController.svelte.d.ts +20 -0
  58. package/dist/components/AIComposer/aiComposerFileController.svelte.js +75 -9
  59. package/dist/components/AIComposer/aiComposerSourceAdapter.js +22 -4
  60. package/dist/components/AIComposer/aiComposerSubmitController.svelte.d.ts +12 -0
  61. package/dist/components/AIComposer/aiComposerSubmitController.svelte.js +16 -6
  62. package/dist/components/AIContext/AIContext.svelte +7 -3
  63. package/dist/components/AIContext/aiContext.mcp.d.ts +1 -1
  64. package/dist/components/AIContext/aiContext.mcp.js +1 -1
  65. package/dist/components/AIContext/aiContext.props.d.ts +4 -1
  66. package/dist/components/AIContext/aiContext.theme.d.ts +3 -0
  67. package/dist/components/AIContext/aiContext.theme.js +7 -2
  68. package/dist/components/AIConversation/AIConversation.svelte.d.ts +2 -2
  69. package/dist/components/AIFilePreview/aiFilePreview.theme.js +1 -1
  70. package/dist/components/AIMarker/AIMarker.svelte +2 -0
  71. package/dist/components/AIMarker/aiMarker.mcp.d.ts +1 -1
  72. package/dist/components/AIMarker/aiMarker.mcp.js +2 -0
  73. package/dist/components/AIMarker/aiMarker.props.d.ts +3 -0
  74. package/dist/components/AIMarker/aiMarker.theme.js +2 -2
  75. package/dist/components/AIMessage/AIMessage.svelte +38 -16
  76. package/dist/components/AIMessage/aiMessage.mcp.d.ts +1 -1
  77. package/dist/components/AIMessage/aiMessage.mcp.js +20 -6
  78. package/dist/components/AIMessage/aiMessage.props.d.ts +18 -2
  79. package/dist/components/AIMessage/aiMessage.theme.d.ts +51 -6
  80. package/dist/components/AIMessage/aiMessage.theme.js +91 -32
  81. package/dist/components/AIMessageActions/AIMessageActions.svelte +19 -9
  82. package/dist/components/AIMessageActions/aiMessageActions.mcp.d.ts +1 -1
  83. package/dist/components/AIMessageActions/aiMessageActions.mcp.js +11 -3
  84. package/dist/components/AIMessageActions/aiMessageActions.theme.js +36 -9
  85. package/dist/components/AIModelSelector/AIModelSelector.svelte +25 -10
  86. package/dist/components/AIModelSelector/aiModelSelector.mcp.d.ts +1 -1
  87. package/dist/components/AIModelSelector/aiModelSelector.mcp.js +1 -1
  88. package/dist/components/AIModelSelector/aiModelSelector.theme.d.ts +3 -0
  89. package/dist/components/AIModelSelector/aiModelSelector.theme.js +7 -3
  90. package/dist/components/AIReasoning/AIReasoning.svelte +135 -38
  91. package/dist/components/AIReasoning/aiReasoning.mcp.d.ts +1 -1
  92. package/dist/components/AIReasoning/aiReasoning.mcp.js +11 -5
  93. package/dist/components/AIReasoning/aiReasoning.props.d.ts +15 -4
  94. package/dist/components/AIReasoning/aiReasoning.theme.d.ts +45 -0
  95. package/dist/components/AIReasoning/aiReasoning.theme.js +47 -7
  96. package/dist/components/AISuggestion/AISuggestion.svelte +2 -1
  97. package/dist/components/AISuggestion/AISuggestions.svelte +2 -1
  98. package/dist/components/AISuggestion/aiSuggestion.mcp.d.ts +1 -1
  99. package/dist/components/AISuggestion/aiSuggestion.mcp.js +8 -1
  100. package/dist/components/AISuggestion/aiSuggestion.props.d.ts +4 -1
  101. package/dist/components/AISuggestion/aiSuggestion.theme.js +1 -1
  102. package/dist/components/AISuggestion/aiSuggestions.props.d.ts +7 -0
  103. package/dist/components/AIThread/AIThread.svelte +378 -95
  104. package/dist/components/AIThread/AIThreadAskUserQuestion.svelte +1 -0
  105. package/dist/components/AIThread/AIThreadItems.svelte +266 -64
  106. package/dist/components/AIThread/AIThreadItems.svelte.d.ts +7 -3
  107. package/dist/components/AIThread/AIThreadMarker.svelte +8 -1
  108. package/dist/components/AIThread/AIThreadMarker.svelte.d.ts +1 -0
  109. package/dist/components/AIThread/aiThread.mcp.d.ts +1 -1
  110. package/dist/components/AIThread/aiThread.mcp.js +34 -20
  111. package/dist/components/AIThread/aiThread.props.d.ts +73 -8
  112. package/dist/components/AIThread/aiThread.theme.d.ts +78 -0
  113. package/dist/components/AIThread/aiThread.theme.js +108 -9
  114. package/dist/components/AIThread/index.d.ts +1 -1
  115. package/dist/components/AIThread/threadAskUserQuestion.d.ts +4 -1
  116. package/dist/components/AIThread/threadAskUserQuestion.js +8 -4
  117. package/dist/components/AIThread/threadRenderItems.d.ts +74 -3
  118. package/dist/components/AIThread/threadRenderItems.js +265 -77
  119. package/dist/components/AIThread/threadScrollController.d.ts +0 -8
  120. package/dist/components/AIThread/threadScrollController.js +2 -39
  121. package/dist/components/AIThread/threadTools.d.ts +11 -0
  122. package/dist/components/AIThread/threadTools.js +79 -0
  123. package/dist/components/AIThreadToc/AIThreadToc.svelte +188 -18
  124. package/dist/components/AIThreadToc/AIThreadTocPreview.svelte +25 -2
  125. package/dist/components/AIThreadToc/AIThreadTocPreview.svelte.d.ts +3 -0
  126. package/dist/components/AIThreadToc/aiThreadToc.d.ts +4 -2
  127. package/dist/components/AIThreadToc/aiThreadToc.js +17 -5
  128. package/dist/components/AIThreadToc/aiThreadToc.mcp.d.ts +1 -1
  129. package/dist/components/AIThreadToc/aiThreadToc.mcp.js +13 -3
  130. package/dist/components/AIThreadToc/aiThreadToc.props.d.ts +11 -0
  131. package/dist/components/AIThreadToc/aiThreadToc.theme.d.ts +3 -0
  132. package/dist/components/AIThreadToc/aiThreadToc.theme.js +15 -6
  133. package/dist/components/AITool/AITool.svelte +56 -21
  134. package/dist/components/AITool/AIToolCallList.svelte +79 -29
  135. package/dist/components/AITool/AIToolCallList.svelte.d.ts +6 -2
  136. package/dist/components/AITool/AIToolStatusMark.svelte +52 -0
  137. package/dist/components/AITool/AIToolStatusMark.svelte.d.ts +14 -0
  138. package/dist/components/AITool/AIToolValueSection.svelte +126 -28
  139. package/dist/components/AITool/AIToolValueSection.svelte.d.ts +6 -2
  140. package/dist/components/AITool/AIToolValueTree.svelte +11 -16
  141. package/dist/components/AITool/AIToolValueTree.svelte.d.ts +2 -3
  142. package/dist/components/AITool/aiTool.mcp.d.ts +1 -1
  143. package/dist/components/AITool/aiTool.mcp.js +36 -8
  144. package/dist/components/AITool/aiTool.props.d.ts +52 -6
  145. package/dist/components/AITool/aiTool.theme.d.ts +117 -39
  146. package/dist/components/AITool/aiTool.theme.js +144 -140
  147. package/dist/components/AITool/aiToolClock.svelte.d.ts +18 -0
  148. package/dist/components/AITool/aiToolClock.svelte.js +62 -0
  149. package/dist/components/AITool/aiToolPrimitiveThemes.d.ts +0 -2
  150. package/dist/components/AITool/aiToolPrimitiveThemes.js +0 -10
  151. package/dist/components/AITool/index.d.ts +2 -1
  152. package/dist/components/AITool/index.js +1 -0
  153. package/dist/components/AITool/toolRendering.d.ts +33 -1
  154. package/dist/components/AITool/toolRendering.js +179 -15
  155. package/dist/components/AITool/toolValueTree.d.ts +14 -1
  156. package/dist/components/AITool/toolValueTree.js +126 -27
  157. package/dist/components/Accordion/Accordion.svelte +109 -109
  158. package/dist/components/Accordion/Accordion.svelte.d.ts +0 -1
  159. package/dist/components/Accordion/AccordionPanel.svelte +64 -0
  160. package/dist/components/Accordion/AccordionPanel.svelte.d.ts +20 -0
  161. package/dist/components/Accordion/accordion.attributes.d.ts +24 -0
  162. package/dist/components/Accordion/accordion.attributes.js +20 -0
  163. package/dist/components/Accordion/accordion.mcp.d.ts +1 -1
  164. package/dist/components/Accordion/accordion.mcp.js +78 -22
  165. package/dist/components/Accordion/accordion.props.d.ts +54 -10
  166. package/dist/components/Accordion/accordion.theme.d.ts +3 -0
  167. package/dist/components/Accordion/accordion.theme.js +4 -0
  168. package/dist/components/Accordion/index.d.ts +1 -0
  169. package/dist/components/Accordion/index.js +1 -0
  170. package/dist/components/AudioPlayer/audioPlayerVolumeControl.slider.theme.d.ts +31 -1
  171. package/dist/components/Avatar/Avatar.svelte +60 -10
  172. package/dist/components/Avatar/AvatarGroup.svelte +9 -0
  173. package/dist/components/Avatar/avatar.mcp.d.ts +1 -1
  174. package/dist/components/Avatar/avatar.mcp.js +13 -5
  175. package/dist/components/Avatar/avatar.props.d.ts +28 -1
  176. package/dist/components/Avatar/avatar.theme.js +3 -3
  177. package/dist/components/Avatar/index.d.ts +1 -1
  178. package/dist/components/Breadcrumbs/breadcrumbs.mcp.d.ts +1 -1
  179. package/dist/components/Breadcrumbs/breadcrumbs.mcp.js +1 -1
  180. package/dist/components/Button/Button.svelte +35 -15
  181. package/dist/components/Button/button.mcp.d.ts +1 -1
  182. package/dist/components/Button/button.mcp.js +8 -4
  183. package/dist/components/Button/button.props.d.ts +23 -8
  184. package/dist/components/Button/button.theme.d.ts +12 -0
  185. package/dist/components/Button/button.theme.js +17 -4
  186. package/dist/components/ButtonGroup/buttonGroup.mcp.d.ts +1 -1
  187. package/dist/components/ButtonGroup/buttonGroup.mcp.js +1 -1
  188. package/dist/components/ButtonGroup/buttonGroup.props.d.ts +4 -1
  189. package/dist/components/Collapsible/Collapsible.svelte +125 -19
  190. package/dist/components/Collapsible/collapsible.attributes.d.ts +21 -0
  191. package/dist/components/Collapsible/collapsible.attributes.js +17 -0
  192. package/dist/components/Collapsible/collapsible.mcp.d.ts +1 -1
  193. package/dist/components/Collapsible/collapsible.mcp.js +62 -12
  194. package/dist/components/Collapsible/collapsible.props.d.ts +39 -8
  195. package/dist/components/Collapsible/collapsible.theme.js +3 -1
  196. package/dist/components/Collapsible/index.d.ts +1 -0
  197. package/dist/components/Collapsible/index.js +1 -0
  198. package/dist/components/Command/Command.svelte +56 -14
  199. package/dist/components/Command/command.mcp.d.ts +1 -1
  200. package/dist/components/Command/command.mcp.js +12 -6
  201. package/dist/components/Command/command.props.d.ts +39 -6
  202. package/dist/components/Command/command.state.svelte.d.ts +40 -11
  203. package/dist/components/Command/command.state.svelte.js +75 -28
  204. package/dist/components/Command/command.theme.js +4 -3
  205. package/dist/components/Confirmation/Confirmation.svelte +72 -31
  206. package/dist/components/Confirmation/confirmation.mcp.d.ts +1 -1
  207. package/dist/components/Confirmation/confirmation.mcp.js +5 -4
  208. package/dist/components/ContextMenu/ContextMenu.svelte +126 -16
  209. package/dist/components/ContextMenu/contextMenu.mcp.d.ts +1 -1
  210. package/dist/components/ContextMenu/contextMenu.mcp.js +10 -7
  211. package/dist/components/ContextMenu/contextMenu.props.d.ts +13 -4
  212. package/dist/components/ContextMenu/contextMenu.theme.d.ts +3 -3
  213. package/dist/components/ContextMenu/contextMenu.theme.js +3 -2
  214. package/dist/components/DataTable/DataTable.svelte +4 -9
  215. package/dist/components/DataTable/DataTableEditor.svelte +5 -0
  216. package/dist/components/DataTable/DataTableFilter.svelte +1 -0
  217. package/dist/components/DataTable/DataTableToolbar.svelte +1 -0
  218. package/dist/components/DataTable/dataTable.mcp.d.ts +1 -1
  219. package/dist/components/DataTable/dataTable.mcp.js +4 -2
  220. package/dist/components/DataTable/dataTable.theme.d.ts +0 -3
  221. package/dist/components/DataTable/dataTable.theme.js +9 -6
  222. package/dist/components/Dialog/Dialog.svelte +120 -35
  223. package/dist/components/Dialog/Dialog.svelte.d.ts +1 -1
  224. package/dist/components/Dialog/DialogBackdrop.svelte +21 -1
  225. package/dist/components/Dialog/dialog.api.d.ts +65 -0
  226. package/dist/components/Dialog/dialog.api.js +1 -0
  227. package/dist/components/Dialog/dialog.attributes.d.ts +23 -0
  228. package/dist/components/Dialog/dialog.attributes.js +19 -0
  229. package/dist/components/Dialog/dialog.indent.d.ts +6 -0
  230. package/dist/components/Dialog/dialog.indent.js +16 -0
  231. package/dist/components/Dialog/dialog.mcp.d.ts +1 -1
  232. package/dist/components/Dialog/dialog.mcp.js +195 -22
  233. package/dist/components/Dialog/dialog.props.d.ts +102 -19
  234. package/dist/components/Dialog/dialog.snap.d.ts +40 -0
  235. package/dist/components/Dialog/dialog.snap.js +78 -0
  236. package/dist/components/Dialog/dialog.state.svelte.d.ts +122 -10
  237. package/dist/components/Dialog/dialog.state.svelte.js +525 -66
  238. package/dist/components/Dialog/dialog.theme.d.ts +48 -0
  239. package/dist/components/Dialog/dialog.theme.js +32 -9
  240. package/dist/components/Dialog/index.d.ts +4 -1
  241. package/dist/components/Dialog/index.js +1 -0
  242. package/dist/components/DocumentViewer/DocumentSearchControl.svelte +5 -3
  243. package/dist/components/DocumentViewer/documentOutput.js +2 -1
  244. package/dist/components/FloatingWindow/FloatingWindow.svelte +20 -32
  245. package/dist/components/FloatingWindow/FloatingWindow.svelte.d.ts +1 -1
  246. package/dist/components/FloatingWindow/floatingWindow.mcp.d.ts +1 -1
  247. package/dist/components/FloatingWindow/floatingWindow.mcp.js +3 -3
  248. package/dist/components/FloatingWindow/floatingWindow.props.d.ts +9 -4
  249. package/dist/components/FloatingWindow/floatingWindow.state.svelte.d.ts +8 -2
  250. package/dist/components/FloatingWindow/floatingWindow.state.svelte.js +18 -7
  251. package/dist/components/Form/Ask/Ask.svelte +9 -13
  252. package/dist/components/Form/Ask/ask.mcp.d.ts +1 -1
  253. package/dist/components/Form/Ask/ask.mcp.js +1 -1
  254. package/dist/components/Form/Ask/ask.props.d.ts +1 -1
  255. package/dist/components/Form/Autocomplete/Autocomplete.svelte +418 -0
  256. package/dist/components/Form/Autocomplete/Autocomplete.svelte.d.ts +4 -0
  257. package/dist/components/Form/Autocomplete/autocomplete.items.d.ts +30 -0
  258. package/dist/components/Form/Autocomplete/autocomplete.items.js +64 -0
  259. package/dist/components/Form/Autocomplete/autocomplete.mcp.d.ts +1 -0
  260. package/dist/components/Form/Autocomplete/autocomplete.mcp.js +134 -0
  261. package/dist/components/Form/Autocomplete/autocomplete.props.d.ts +146 -0
  262. package/dist/components/Form/Autocomplete/autocomplete.props.js +1 -0
  263. package/dist/components/Form/Autocomplete/autocomplete.theme.d.ts +213 -0
  264. package/dist/components/Form/Autocomplete/autocomplete.theme.js +119 -0
  265. package/dist/components/Form/Autocomplete/index.d.ts +3 -0
  266. package/dist/components/Form/Autocomplete/index.js +2 -0
  267. package/dist/components/Form/Calendar/CalendarInput.svelte +9 -0
  268. package/dist/components/Form/Calendar/CalendarMonthYearPicker.svelte +3 -0
  269. package/dist/components/Form/Calendar/CalendarPrimitive.svelte +5 -0
  270. package/dist/components/Form/Calendar/calendar.mcp.d.ts +1 -1
  271. package/dist/components/Form/Calendar/calendar.mcp.js +2 -1
  272. package/dist/components/Form/Calendar/calendarInput.props.d.ts +2 -0
  273. package/dist/components/Form/Calendar/useCalendar.svelte.d.ts +3 -0
  274. package/dist/components/Form/Calendar/useCalendar.svelte.js +3 -0
  275. package/dist/components/Form/Checkbox/Checkbox.svelte +17 -2
  276. package/dist/components/Form/Checkbox/checkbox.mcp.d.ts +1 -1
  277. package/dist/components/Form/Checkbox/checkbox.mcp.js +11 -1
  278. package/dist/components/Form/Checkbox/checkbox.props.d.ts +12 -1
  279. package/dist/components/Form/CheckboxesInput/CheckboxLine.svelte +69 -32
  280. package/dist/components/Form/CheckboxesInput/CheckboxLine.svelte.d.ts +10 -2
  281. package/dist/components/Form/CheckboxesInput/CheckboxesInput.svelte +123 -74
  282. package/dist/components/Form/CheckboxesInput/CheckboxesInput.svelte.d.ts +12 -12
  283. package/dist/components/Form/CheckboxesInput/checkboxesInput.mcp.d.ts +1 -1
  284. package/dist/components/Form/CheckboxesInput/checkboxesInput.mcp.js +11 -7
  285. package/dist/components/Form/CheckboxesInput/checkboxesInput.props.d.ts +25 -9
  286. package/dist/components/Form/CheckboxesInput/checkboxesInput.theme.d.ts +12 -0
  287. package/dist/components/Form/CheckboxesInput/checkboxesInput.theme.js +9 -4
  288. package/dist/components/Form/CheckboxesInput/choiceEnter.d.ts +11 -0
  289. package/dist/components/Form/CheckboxesInput/choiceEnter.js +27 -0
  290. package/dist/components/Form/ColorInput/ColorInput.svelte +12 -3
  291. package/dist/components/Form/ColorInput/colorInput.mcp.d.ts +1 -1
  292. package/dist/components/Form/ColorInput/colorInput.mcp.js +1 -0
  293. package/dist/components/Form/ColorPicker/ColorPicker.svelte +11 -2
  294. package/dist/components/Form/ColorPicker/ColorPickerInput.svelte +9 -0
  295. package/dist/components/Form/ColorPicker/colorPicker.mcp.d.ts +1 -1
  296. package/dist/components/Form/ColorPicker/colorPicker.mcp.js +1 -0
  297. package/dist/components/Form/ColorPicker/colorPicker.props.d.ts +2 -0
  298. package/dist/components/Form/ColorPicker/colorPicker.state.svelte.d.ts +4 -0
  299. package/dist/components/Form/ColorPicker/colorPicker.state.svelte.js +12 -8
  300. package/dist/components/Form/Combobox/Combobox.svelte +145 -185
  301. package/dist/components/Form/Combobox/Combobox.svelte.d.ts +1 -1
  302. package/dist/components/Form/Combobox/ComboboxPopup.svelte +128 -0
  303. package/dist/components/Form/Combobox/ComboboxPopup.svelte.d.ts +28 -0
  304. package/dist/components/Form/Combobox/combobox.attributes.d.ts +34 -0
  305. package/dist/components/Form/Combobox/combobox.attributes.js +25 -0
  306. package/dist/components/Form/Combobox/combobox.items.d.ts +28 -0
  307. package/dist/components/Form/Combobox/combobox.items.js +68 -0
  308. package/dist/components/Form/Combobox/combobox.mcp.d.ts +1 -1
  309. package/dist/components/Form/Combobox/combobox.mcp.js +104 -13
  310. package/dist/components/Form/Combobox/combobox.props.d.ts +113 -19
  311. package/dist/components/Form/Combobox/combobox.state.svelte.d.ts +137 -0
  312. package/dist/components/Form/Combobox/combobox.state.svelte.js +375 -0
  313. package/dist/components/Form/Combobox/combobox.theme.d.ts +63 -0
  314. package/dist/components/Form/Combobox/combobox.theme.js +37 -1
  315. package/dist/components/Form/Combobox/index.d.ts +2 -1
  316. package/dist/components/Form/Combobox/index.js +1 -0
  317. package/dist/components/Form/DateInput/DateInput.svelte +11 -3
  318. package/dist/components/Form/DateInput/dateInput.mcp.d.ts +1 -1
  319. package/dist/components/Form/DateInput/dateInput.mcp.js +5 -0
  320. package/dist/components/Form/DateSelector/DateSelector.svelte +5 -2
  321. package/dist/components/Form/DateSelector/DateSelectorInput.svelte +9 -0
  322. package/dist/components/Form/DateSelector/dateSelector.mcp.d.ts +1 -1
  323. package/dist/components/Form/DateSelector/dateSelector.mcp.js +2 -2
  324. package/dist/components/Form/DateSelector/dateSelector.props.d.ts +2 -0
  325. package/dist/components/Form/Field/Field.svelte +256 -30
  326. package/dist/components/Form/Field/Field.svelte.d.ts +9 -0
  327. package/dist/components/Form/Field/FieldGroup.svelte +29 -0
  328. package/dist/components/Form/Field/FieldGroup.svelte.d.ts +11 -0
  329. package/dist/components/Form/Field/FieldHiddenInputs.svelte +187 -0
  330. package/dist/components/Form/Field/FieldHiddenInputs.svelte.d.ts +26 -0
  331. package/dist/components/Form/Field/field.d.ts +64 -8
  332. package/dist/components/Form/Field/field.mcp.d.ts +1 -1
  333. package/dist/components/Form/Field/field.mcp.js +158 -18
  334. package/dist/components/Form/Field/field.messages.d.ts +47 -0
  335. package/dist/components/Form/Field/field.messages.js +64 -0
  336. package/dist/components/Form/Field/field.state.svelte.d.ts +109 -3
  337. package/dist/components/Form/Field/field.state.svelte.js +508 -16
  338. package/dist/components/Form/Field/field.theme.d.ts +46 -0
  339. package/dist/components/Form/Field/field.theme.js +33 -0
  340. package/dist/components/Form/Field/fieldHiddenInputs.props.d.ts +61 -0
  341. package/dist/components/Form/Field/fieldHiddenInputs.props.js +1 -0
  342. package/dist/components/Form/Field/fieldNativeForm.svelte.d.ts +14 -0
  343. package/dist/components/Form/Field/fieldNativeForm.svelte.js +113 -0
  344. package/dist/components/Form/Field/index.d.ts +5 -2
  345. package/dist/components/Form/Field/index.js +1 -0
  346. package/dist/components/Form/Field/schemas.js +7 -2
  347. package/dist/components/Form/File/FileInput.svelte +24 -3
  348. package/dist/components/Form/File/fileInput.mcp.d.ts +1 -1
  349. package/dist/components/Form/File/fileInput.mcp.js +1 -0
  350. package/dist/components/Form/Form/Form.svelte +47 -14
  351. package/dist/components/Form/Form/FormActions.svelte +3 -1
  352. package/dist/components/Form/Form/FormActions.svelte.d.ts +42 -2
  353. package/dist/components/Form/Form/FormFieldRenderer.svelte +40 -2
  354. package/dist/components/Form/Form/FormInputRenderer.svelte +7 -0
  355. package/dist/components/Form/Form/form.d.ts +35 -6
  356. package/dist/components/Form/Form/form.mcp.d.ts +1 -1
  357. package/dist/components/Form/Form/form.mcp.js +113 -13
  358. package/dist/components/Form/Form/form.props.d.ts +32 -1
  359. package/dist/components/Form/Form/form.registry.d.ts +2 -2
  360. package/dist/components/Form/Form/form.registry.js +1 -4
  361. package/dist/components/Form/Form/form.state.svelte.d.ts +1138 -413
  362. package/dist/components/Form/Form/form.state.svelte.js +319 -26
  363. package/dist/components/Form/Form/index.d.ts +3 -1
  364. package/dist/components/Form/Form/visibility.d.ts +3096 -1831
  365. package/dist/components/Form/KeyValueInput/KeyValueInput.svelte +22 -10
  366. package/dist/components/Form/KeyValueInput/keyValueInput.mcp.d.ts +1 -1
  367. package/dist/components/Form/KeyValueInput/keyValueInput.mcp.js +1 -0
  368. package/dist/components/Form/MultiStepForm/MultiStepForm.svelte +12 -5
  369. package/dist/components/Form/MultiStepForm/multiStepForm.mcp.d.ts +1 -1
  370. package/dist/components/Form/MultiStepForm/multiStepForm.mcp.js +5 -3
  371. package/dist/components/Form/MultiStepForm/multiStepForm.props.d.ts +5 -0
  372. package/dist/components/Form/MultiStepForm/multiStepForm.state.svelte.d.ts +1022 -408
  373. package/dist/components/Form/MultiStepForm/multiStepForm.state.svelte.js +48 -24
  374. package/dist/components/Form/NumberInput/NumberInput.svelte +365 -46
  375. package/dist/components/Form/NumberInput/index.d.ts +1 -1
  376. package/dist/components/Form/NumberInput/numberInput.mcp.d.ts +1 -1
  377. package/dist/components/Form/NumberInput/numberInput.mcp.js +55 -30
  378. package/dist/components/Form/NumberInput/numberInput.props.d.ts +64 -4
  379. package/dist/components/Form/PasswordInput/Password.svelte +28 -1
  380. package/dist/components/Form/PasswordInput/index.d.ts +1 -1
  381. package/dist/components/Form/PasswordInput/passwordInput.mcp.d.ts +1 -1
  382. package/dist/components/Form/PasswordInput/passwordInput.mcp.js +20 -2
  383. package/dist/components/Form/PasswordInput/passwordInput.props.d.ts +23 -0
  384. package/dist/components/Form/PhoneInput/PhoneInput.svelte +11 -4
  385. package/dist/components/Form/PhoneInput/PhoneInputCountryPicker.svelte +47 -21
  386. package/dist/components/Form/PhoneInput/phoneInput-cdn.js +2 -1
  387. package/dist/components/Form/PhoneInput/phoneInput.mcp.d.ts +1 -1
  388. package/dist/components/Form/PhoneInput/phoneInput.mcp.js +6 -2
  389. package/dist/components/Form/PhoneInput/phoneInputCountry.d.ts +9 -3
  390. package/dist/components/Form/PhoneInput/phoneInputCountry.js +34 -24
  391. package/dist/components/Form/PinInput/PinInput.svelte +44 -9
  392. package/dist/components/Form/PinInput/PinInputCells.svelte +22 -1
  393. package/dist/components/Form/PinInput/PinInputCells.svelte.d.ts +1 -0
  394. package/dist/components/Form/PinInput/index.d.ts +1 -1
  395. package/dist/components/Form/PinInput/pinInput.mcp.d.ts +1 -1
  396. package/dist/components/Form/PinInput/pinInput.mcp.js +29 -6
  397. package/dist/components/Form/PinInput/pinInput.props.d.ts +38 -4
  398. package/dist/components/Form/PinInput/pinInput.state.svelte.d.ts +41 -0
  399. package/dist/components/Form/PinInput/pinInput.state.svelte.js +227 -24
  400. package/dist/components/Form/PinInput/pinInput.theme.d.ts +39 -3
  401. package/dist/components/Form/PinInput/pinInput.theme.js +27 -1
  402. package/dist/components/Form/RadioInput/RadioInput.svelte +94 -32
  403. package/dist/components/Form/RadioInput/RadioInput.svelte.d.ts +12 -12
  404. package/dist/components/Form/RadioInput/radioInput.mcp.d.ts +1 -1
  405. package/dist/components/Form/RadioInput/radioInput.mcp.js +12 -9
  406. package/dist/components/Form/RadioInput/radioInput.props.d.ts +22 -6
  407. package/dist/components/Form/RadioInput/radioInput.theme.d.ts +12 -0
  408. package/dist/components/Form/RadioInput/radioInput.theme.js +10 -5
  409. package/dist/components/Form/RatingInput/RatingInput.svelte +13 -4
  410. package/dist/components/Form/RatingInput/ratingInput.mcp.d.ts +1 -1
  411. package/dist/components/Form/RatingInput/ratingInput.mcp.js +3 -3
  412. package/dist/components/Form/RatingInput/ratingInput.props.d.ts +1 -1
  413. package/dist/components/Form/Select/Select.svelte +186 -48
  414. package/dist/components/Form/Select/Select.svelte.d.ts +23 -2
  415. package/dist/components/Form/Select/SelectOptionRow.svelte +69 -0
  416. package/dist/components/Form/Select/SelectOptionRow.svelte.d.ts +18 -0
  417. package/dist/components/Form/Select/index.d.ts +2 -1
  418. package/dist/components/Form/Select/index.js +1 -0
  419. package/dist/components/Form/Select/select.align.d.ts +5 -0
  420. package/dist/components/Form/Select/select.align.js +19 -5
  421. package/dist/components/Form/Select/select.attributes.d.ts +36 -0
  422. package/dist/components/Form/Select/select.attributes.js +27 -0
  423. package/dist/components/Form/Select/select.mcp.d.ts +1 -1
  424. package/dist/components/Form/Select/select.mcp.js +103 -18
  425. package/dist/components/Form/Select/select.props.d.ts +87 -10
  426. package/dist/components/Form/Select/select.state.svelte.d.ts +108 -17
  427. package/dist/components/Form/Select/select.state.svelte.js +354 -59
  428. package/dist/components/Form/Select/select.theme.d.ts +21 -0
  429. package/dist/components/Form/Select/select.theme.js +22 -0
  430. package/dist/components/Form/Slider/Slider.svelte +54 -14
  431. package/dist/components/Form/Slider/SliderMarks.svelte +1 -1
  432. package/dist/components/Form/Slider/SliderThumb.svelte +49 -19
  433. package/dist/components/Form/Slider/SliderThumb.svelte.d.ts +8 -2
  434. package/dist/components/Form/Slider/SliderTrack.svelte +33 -12
  435. package/dist/components/Form/Slider/SliderTrack.svelte.d.ts +6 -2
  436. package/dist/components/Form/Slider/index.d.ts +1 -1
  437. package/dist/components/Form/Slider/slider.mcp.d.ts +1 -1
  438. package/dist/components/Form/Slider/slider.mcp.js +55 -11
  439. package/dist/components/Form/Slider/slider.props.d.ts +35 -2
  440. package/dist/components/Form/Slider/slider.state.svelte.d.ts +66 -5
  441. package/dist/components/Form/Slider/slider.state.svelte.js +273 -49
  442. package/dist/components/Form/Slider/slider.theme.d.ts +36 -0
  443. package/dist/components/Form/Slider/slider.theme.js +35 -17
  444. package/dist/components/Form/Switch/Switch.svelte +61 -38
  445. package/dist/components/Form/Switch/switch.mcp.d.ts +1 -1
  446. package/dist/components/Form/Switch/switch.mcp.js +25 -5
  447. package/dist/components/Form/Switch/switch.props.d.ts +14 -1
  448. package/dist/components/Form/Switch/switch.theme.d.ts +12 -0
  449. package/dist/components/Form/Switch/switch.theme.js +8 -3
  450. package/dist/components/Form/TagGroup/TagGroup.svelte +8 -0
  451. package/dist/components/Form/TagGroup/tagGroup.mcp.d.ts +1 -1
  452. package/dist/components/Form/TagGroup/tagGroup.mcp.js +1 -0
  453. package/dist/components/Form/TagsInput/TagsInput.svelte +277 -275
  454. package/dist/components/Form/TagsInput/TagsInput.svelte.d.ts +1 -1
  455. package/dist/components/Form/TagsInput/tagsInput.mcp.d.ts +1 -1
  456. package/dist/components/Form/TagsInput/tagsInput.mcp.js +31 -11
  457. package/dist/components/Form/TagsInput/tagsInput.props.d.ts +6 -26
  458. package/dist/components/Form/TagsInput/tagsInput.theme.d.ts +63 -0
  459. package/dist/components/Form/TagsInput/tagsInput.theme.js +37 -1
  460. package/dist/components/Form/TextArea/TextArea.svelte +8 -0
  461. package/dist/components/Form/TextArea/textArea.mcp.d.ts +1 -1
  462. package/dist/components/Form/TextArea/textArea.mcp.js +1 -0
  463. package/dist/components/Form/TextInput/TextInput.svelte +8 -1
  464. package/dist/components/Form/TextInput/textInput.mcp.d.ts +1 -1
  465. package/dist/components/Form/TextInput/textInput.mcp.js +5 -0
  466. package/dist/components/Form/TimeInput/TimeInput.svelte +9 -1
  467. package/dist/components/Form/TimeInput/timeInput.mcp.d.ts +1 -1
  468. package/dist/components/Form/TimeInput/timeInput.mcp.js +31 -0
  469. package/dist/components/Form/VoiceInput/VoiceInput.svelte +10 -2
  470. package/dist/components/Form/VoiceInput/voiceInput.mcp.d.ts +1 -1
  471. package/dist/components/Form/VoiceInput/voiceInput.mcp.js +1 -0
  472. package/dist/components/GanttChart/GanttDependencyControl.svelte +4 -4
  473. package/dist/components/HoverCard/HoverCard.svelte +100 -10
  474. package/dist/components/HoverCard/hoverCard.attributes.d.ts +33 -0
  475. package/dist/components/HoverCard/hoverCard.attributes.js +24 -0
  476. package/dist/components/HoverCard/hoverCard.mcp.d.ts +1 -1
  477. package/dist/components/HoverCard/hoverCard.mcp.js +61 -2
  478. package/dist/components/HoverCard/hoverCard.props.d.ts +19 -0
  479. package/dist/components/HoverCard/hoverCard.theme.d.ts +12 -0
  480. package/dist/components/HoverCard/hoverCard.theme.js +9 -2
  481. package/dist/components/HoverCard/index.d.ts +1 -0
  482. package/dist/components/HoverCard/index.js +1 -0
  483. package/dist/components/ImageGallery/imageGallery.state.svelte.d.ts +1 -1
  484. package/dist/components/ImageZoom/imageZoom.lightbox.js +40 -6
  485. package/dist/components/ImageZoom/imageZoom.mcp.d.ts +1 -1
  486. package/dist/components/ImageZoom/imageZoom.mcp.js +3 -3
  487. package/dist/components/ImageZoom/imageZoom.props.d.ts +10 -4
  488. package/dist/components/ImageZoom/imageZoom.state.svelte.d.ts +16 -4
  489. package/dist/components/ImageZoom/imageZoom.state.svelte.js +38 -9
  490. package/dist/components/Kanban/kanban.theme.js +7 -3
  491. package/dist/components/Layout/layoutSpacing.d.ts +2 -2
  492. package/dist/components/LinkPreview/LinkPreview.svelte +7 -1
  493. package/dist/components/LinkPreview/linkPreview.mcp.d.ts +1 -1
  494. package/dist/components/LinkPreview/linkPreview.mcp.js +4 -1
  495. package/dist/components/LinkPreview/linkPreview.props.d.ts +15 -0
  496. package/dist/components/LinkPreview/linkPreview.theme.d.ts +12 -0
  497. package/dist/components/LinkPreview/linkPreview.theme.js +9 -2
  498. package/dist/components/Map/maplibre-cdn.js +3 -2
  499. package/dist/components/Markdown/markdown.mcp.d.ts +1 -1
  500. package/dist/components/Markdown/markdown.mcp.js +2 -1
  501. package/dist/components/Markdown/markdown.theme.js +18 -9
  502. package/dist/components/MediaVolume/MediaVolumeControl.svelte +4 -3
  503. package/dist/components/Menu/Menu.svelte +3 -3
  504. package/dist/components/Menu/Menu.svelte.d.ts +1 -1
  505. package/dist/components/Menu/MenuCheckboxItem.svelte +87 -0
  506. package/dist/components/Menu/MenuCheckboxItem.svelte.d.ts +16 -0
  507. package/dist/components/Menu/MenuFloating.svelte +421 -74
  508. package/dist/components/Menu/MenuFloating.svelte.d.ts +1 -1
  509. package/dist/components/Menu/MenuMirroredIcon.svelte +9 -0
  510. package/dist/components/Menu/MenuMirroredIcon.svelte.d.ts +7 -0
  511. package/dist/components/Menu/MenuRadioGroup.svelte +102 -0
  512. package/dist/components/Menu/MenuRadioGroup.svelte.d.ts +18 -0
  513. package/dist/components/Menu/MenuSearchField.svelte +54 -0
  514. package/dist/components/Menu/MenuSearchField.svelte.d.ts +20 -0
  515. package/dist/components/Menu/MenuStacked.svelte +404 -158
  516. package/dist/components/Menu/MenuStacked.svelte.d.ts +1 -1
  517. package/dist/components/Menu/MenuStackedBackHeader.svelte +6 -1
  518. package/dist/components/Menu/index.d.ts +2 -1
  519. package/dist/components/Menu/index.js +1 -0
  520. package/dist/components/Menu/menu.attributes.d.ts +37 -0
  521. package/dist/components/Menu/menu.attributes.js +28 -0
  522. package/dist/components/Menu/menu.filter.svelte.d.ts +52 -0
  523. package/dist/components/Menu/menu.filter.svelte.js +143 -0
  524. package/dist/components/Menu/menu.mcp.d.ts +1 -1
  525. package/dist/components/Menu/menu.mcp.js +227 -17
  526. package/dist/components/Menu/menu.platform.d.ts +5 -0
  527. package/dist/components/Menu/menu.platform.js +11 -0
  528. package/dist/components/Menu/menu.props.d.ts +172 -9
  529. package/dist/components/Menu/menu.theme.d.ts +147 -0
  530. package/dist/components/Menu/menu.theme.js +101 -0
  531. package/dist/components/Menu/menuTree.d.ts +35 -1
  532. package/dist/components/Menu/menuTree.js +158 -1
  533. package/dist/components/MenuBar/menuBar.mcp.d.ts +1 -1
  534. package/dist/components/MenuBar/menuBar.mcp.js +4 -2
  535. package/dist/components/MenuBar/menuBar.state.svelte.js +28 -10
  536. package/dist/components/MenuOption/MenuOption.svelte +5 -1
  537. package/dist/components/MenuOption/menuOption.mcp.d.ts +1 -1
  538. package/dist/components/MenuOption/menuOption.mcp.js +8 -0
  539. package/dist/components/MenuOption/menuOption.props.d.ts +12 -0
  540. package/dist/components/MenuOption/menuOption.theme.d.ts +18 -0
  541. package/dist/components/MenuOption/menuOption.theme.js +24 -4
  542. package/dist/components/Mermaid/mermaid.mcp.d.ts +1 -1
  543. package/dist/components/Mermaid/mermaid.mcp.js +8 -8
  544. package/dist/components/Mermaid/mermaid.props.d.ts +3 -4
  545. package/dist/components/Mermaid/mermaid.state.svelte.d.ts +20 -19
  546. package/dist/components/Mermaid/mermaid.state.svelte.js +80 -243
  547. package/dist/components/Mermaid/mermaid.theme.js +26 -1
  548. package/dist/components/MetadataList/MetadataList.svelte.d.ts +1 -1
  549. package/dist/components/Meter/Meter.svelte +110 -24
  550. package/dist/components/Meter/Meter.svelte.d.ts +12 -12
  551. package/dist/components/Meter/meter.mcp.d.ts +1 -1
  552. package/dist/components/Meter/meter.mcp.js +23 -37
  553. package/dist/components/Meter/meter.props.d.ts +36 -44
  554. package/dist/components/NavigationMenu/NavigationMenu.svelte +181 -0
  555. package/dist/components/NavigationMenu/NavigationMenu.svelte.d.ts +25 -0
  556. package/dist/components/NavigationMenu/NavigationMenuContent.svelte +141 -0
  557. package/dist/components/NavigationMenu/NavigationMenuContent.svelte.d.ts +13 -0
  558. package/dist/components/NavigationMenu/NavigationMenuTrigger.svelte +75 -0
  559. package/dist/components/NavigationMenu/NavigationMenuTrigger.svelte.d.ts +13 -0
  560. package/dist/components/NavigationMenu/index.d.ts +4 -0
  561. package/dist/components/NavigationMenu/index.js +3 -0
  562. package/dist/components/NavigationMenu/navigationMenu.attributes.d.ts +24 -0
  563. package/dist/components/NavigationMenu/navigationMenu.attributes.js +21 -0
  564. package/dist/components/NavigationMenu/navigationMenu.mcp.d.ts +1 -0
  565. package/dist/components/NavigationMenu/navigationMenu.mcp.js +138 -0
  566. package/dist/components/NavigationMenu/navigationMenu.props.d.ts +129 -0
  567. package/dist/components/NavigationMenu/navigationMenu.props.js +1 -0
  568. package/dist/components/NavigationMenu/navigationMenu.state.svelte.d.ts +163 -0
  569. package/dist/components/NavigationMenu/navigationMenu.state.svelte.js +721 -0
  570. package/dist/components/NavigationMenu/navigationMenu.theme.d.ts +326 -0
  571. package/dist/components/NavigationMenu/navigationMenu.theme.js +239 -0
  572. package/dist/components/Overlay/Overlay.svelte +19 -30
  573. package/dist/components/Overlay/index.d.ts +1 -0
  574. package/dist/components/Overlay/index.js +1 -0
  575. package/dist/components/Overlay/overlay.attributes.d.ts +16 -0
  576. package/dist/components/Overlay/overlay.attributes.js +14 -0
  577. package/dist/components/Overlay/overlay.mcp.d.ts +1 -1
  578. package/dist/components/Overlay/overlay.mcp.js +21 -3
  579. package/dist/components/Overlay/overlay.props.d.ts +8 -4
  580. package/dist/components/Popover/Popover.svelte +163 -52
  581. package/dist/components/Popover/Popover.svelte.d.ts +23 -2
  582. package/dist/components/Popover/PopoverSession.svelte +12 -0
  583. package/dist/components/Popover/PopoverSession.svelte.d.ts +7 -0
  584. package/dist/components/Popover/index.d.ts +10 -2
  585. package/dist/components/Popover/index.js +4 -1
  586. package/dist/components/Popover/popover.api.d.ts +83 -0
  587. package/dist/components/Popover/popover.api.js +1 -0
  588. package/dist/components/Popover/popover.attributes.d.ts +32 -0
  589. package/dist/components/Popover/popover.attributes.js +28 -0
  590. package/dist/components/Popover/popover.claims.d.ts +19 -0
  591. package/dist/components/Popover/popover.claims.js +45 -0
  592. package/dist/components/Popover/popover.mcp.d.ts +1 -1
  593. package/dist/components/Popover/popover.mcp.js +163 -31
  594. package/dist/components/Popover/popover.position.d.ts +226 -0
  595. package/dist/components/Popover/popover.position.js +402 -0
  596. package/dist/components/Popover/popover.props.d.ts +179 -24
  597. package/dist/components/Popover/popover.state.svelte.d.ts +169 -37
  598. package/dist/components/Popover/popover.state.svelte.js +1034 -194
  599. package/dist/components/Popover/popover.theme.d.ts +15 -0
  600. package/dist/components/Popover/popover.theme.js +27 -2
  601. package/dist/components/PopupMenu/PopupMenu.svelte +193 -22
  602. package/dist/components/PopupMenu/PopupMenu.svelte.d.ts +2 -2
  603. package/dist/components/PopupMenu/popupMenu.context.d.ts +42 -0
  604. package/dist/components/PopupMenu/popupMenu.context.js +52 -0
  605. package/dist/components/PopupMenu/popupMenu.mcp.d.ts +1 -1
  606. package/dist/components/PopupMenu/popupMenu.mcp.js +46 -6
  607. package/dist/components/PopupMenu/popupMenu.props.d.ts +29 -2
  608. package/dist/components/Progress/Progress.svelte +160 -0
  609. package/dist/components/Progress/Progress.svelte.d.ts +4 -0
  610. package/dist/components/Progress/index.d.ts +3 -0
  611. package/dist/components/Progress/index.js +2 -0
  612. package/dist/components/Progress/progress.mcp.d.ts +1 -0
  613. package/dist/components/Progress/progress.mcp.js +101 -0
  614. package/dist/components/Progress/progress.props.d.ts +79 -0
  615. package/dist/components/Progress/progress.props.js +1 -0
  616. package/dist/components/Progress/progress.theme.d.ts +129 -0
  617. package/dist/components/Progress/progress.theme.js +83 -0
  618. package/dist/components/ProgressCircle/ProgressCircle.svelte +51 -6
  619. package/dist/components/ProgressCircle/progressCircle.mcp.d.ts +1 -1
  620. package/dist/components/ProgressCircle/progressCircle.mcp.js +18 -4
  621. package/dist/components/ProgressCircle/progressCircle.props.d.ts +32 -2
  622. package/dist/components/ProgressCircle/progressCircle.theme.d.ts +15 -3
  623. package/dist/components/ProgressCircle/progressCircle.theme.js +7 -2
  624. package/dist/components/RichTextInput/RichTextInput.svelte +19 -1
  625. package/dist/components/RichTextInput/RichTextInputChrome.svelte +5 -1
  626. package/dist/components/RichTextInput/RichTextInputChrome.svelte.d.ts +2 -0
  627. package/dist/components/RichTextInput/RichTextInputViewport.svelte +3 -1
  628. package/dist/components/RichTextInput/RichTextInputViewport.svelte.d.ts +1 -0
  629. package/dist/components/RichTextInput/richTextInput.mcp.d.ts +1 -1
  630. package/dist/components/RichTextInput/richTextInput.mcp.js +1 -0
  631. package/dist/components/RichTextInput/suggestions.js +2 -0
  632. package/dist/components/ScrollArea/ScrollArea.svelte +166 -27
  633. package/dist/components/ScrollArea/index.d.ts +2 -1
  634. package/dist/components/ScrollArea/index.js +1 -0
  635. package/dist/components/ScrollArea/scrollArea.attributes.d.ts +25 -0
  636. package/dist/components/ScrollArea/scrollArea.attributes.js +21 -0
  637. package/dist/components/ScrollArea/scrollArea.mcp.d.ts +1 -1
  638. package/dist/components/ScrollArea/scrollArea.mcp.js +47 -3
  639. package/dist/components/ScrollArea/scrollArea.props.d.ts +33 -6
  640. package/dist/components/ScrollArea/scrollArea.svelte.d.ts +56 -12
  641. package/dist/components/ScrollArea/scrollArea.svelte.js +281 -71
  642. package/dist/components/ScrollArea/scrollArea.theme.js +5 -2
  643. package/dist/components/SegmentedControl/SegmentedControl.svelte +4 -3
  644. package/dist/components/SegmentedControl/segmentedControl.mcp.d.ts +1 -1
  645. package/dist/components/SegmentedControl/segmentedControl.mcp.js +3 -2
  646. package/dist/components/SelectionMenu/SelectionMenu.svelte +4 -2
  647. package/dist/components/Sidebar/SidebarAction.svelte +13 -3
  648. package/dist/components/Sidebar/SidebarAction.svelte.d.ts +2 -1
  649. package/dist/components/Sidebar/SidebarActivityBar.svelte +14 -7
  650. package/dist/components/Sidebar/SidebarFlyout.svelte +97 -0
  651. package/dist/components/Sidebar/SidebarFlyout.svelte.d.ts +32 -0
  652. package/dist/components/Sidebar/SidebarGroup.svelte +39 -15
  653. package/dist/components/Sidebar/SidebarMenuButton.svelte +6 -3
  654. package/dist/components/Sidebar/SidebarMenuItem.svelte +134 -31
  655. package/dist/components/Sidebar/SidebarMenuSubItem.svelte +30 -14
  656. package/dist/components/Sidebar/SidebarTreeNode.svelte +41 -61
  657. package/dist/components/Sidebar/index.d.ts +1 -0
  658. package/dist/components/Sidebar/index.js +1 -0
  659. package/dist/components/Sidebar/sidebar-position.d.ts +37 -2
  660. package/dist/components/Sidebar/sidebar-position.js +31 -2
  661. package/dist/components/Sidebar/sidebar.attributes.d.ts +33 -0
  662. package/dist/components/Sidebar/sidebar.attributes.js +29 -0
  663. package/dist/components/Sidebar/sidebar.mcp.d.ts +1 -1
  664. package/dist/components/Sidebar/sidebar.mcp.js +45 -10
  665. package/dist/components/Sidebar/sidebar.props.d.ts +28 -7
  666. package/dist/components/Sidebar/sidebar.theme.d.ts +51 -21
  667. package/dist/components/Sidebar/sidebar.theme.js +113 -62
  668. package/dist/components/Sidebar/sidebar.views.svelte.js +11 -18
  669. package/dist/components/Stepper/Stepper.svelte +2 -0
  670. package/dist/components/Stepper/stepper.mcp.d.ts +1 -1
  671. package/dist/components/Stepper/stepper.mcp.js +1 -0
  672. package/dist/components/Stepper/stepper.props.d.ts +5 -0
  673. package/dist/components/Stepper/stepper.state.svelte.d.ts +2 -0
  674. package/dist/components/Stepper/stepper.state.svelte.js +31 -12
  675. package/dist/components/Tabbar/Tabbar.svelte +55 -16
  676. package/dist/components/Tabbar/index.d.ts +1 -1
  677. package/dist/components/Tabbar/tabbar.mcp.d.ts +1 -1
  678. package/dist/components/Tabbar/tabbar.mcp.js +26 -9
  679. package/dist/components/Tabbar/tabbar.props.d.ts +34 -5
  680. package/dist/components/Tabbar/tabbar.selection.svelte.d.ts +79 -0
  681. package/dist/components/Tabbar/tabbar.selection.svelte.js +99 -0
  682. package/dist/components/TableOfContents/tableOfContents.state.svelte.js +9 -7
  683. package/dist/components/Tabs/Tabs.svelte +73 -16
  684. package/dist/components/Tabs/index.d.ts +2 -1
  685. package/dist/components/Tabs/tabs.direction.svelte.d.ts +25 -0
  686. package/dist/components/Tabs/tabs.direction.svelte.js +40 -0
  687. package/dist/components/Tabs/tabs.mcp.d.ts +1 -1
  688. package/dist/components/Tabs/tabs.mcp.js +22 -4
  689. package/dist/components/Tabs/tabs.props.d.ts +39 -12
  690. package/dist/components/Tabs/tabs.theme.js +3 -1
  691. package/dist/components/Theme/Theme.svelte +44 -27
  692. package/dist/components/Theme/helper.d.ts +16 -2
  693. package/dist/components/Theme/helper.js +46 -4
  694. package/dist/components/Theme/theme.mcp.d.ts +1 -1
  695. package/dist/components/Theme/theme.mcp.js +103 -0
  696. package/dist/components/Theme/theme.props.d.ts +16 -0
  697. package/dist/components/Theme/theme.state.svelte.d.ts +14 -1
  698. package/dist/components/Theme/theme.state.svelte.js +18 -1
  699. package/dist/components/Toast/Toast.svelte +184 -39
  700. package/dist/components/Toast/Toaster.svelte +14 -10
  701. package/dist/components/Toast/index.d.ts +1 -0
  702. package/dist/components/Toast/toast.mcp.d.ts +1 -1
  703. package/dist/components/Toast/toast.mcp.js +47 -6
  704. package/dist/components/Toast/toast.state.svelte.d.ts +172 -6
  705. package/dist/components/Toast/toast.state.svelte.js +513 -68
  706. package/dist/components/Toast/toast.theme.js +1 -1
  707. package/dist/components/ToggleButton/ToggleButton.svelte +23 -1
  708. package/dist/components/ToggleButton/toggleButton.mcp.d.ts +1 -1
  709. package/dist/components/ToggleButton/toggleButton.mcp.js +3 -1
  710. package/dist/components/ToggleButton/toggleButton.props.d.ts +13 -1
  711. package/dist/components/ToggleButton/toggleButton.theme.d.ts +12 -0
  712. package/dist/components/ToggleButton/toggleButton.theme.js +15 -3
  713. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.svelte +29 -9
  714. package/dist/components/ToggleButtonGroup/index.d.ts +1 -1
  715. package/dist/components/ToggleButtonGroup/toggleButtonGroup.mcp.d.ts +1 -1
  716. package/dist/components/ToggleButtonGroup/toggleButtonGroup.mcp.js +5 -2
  717. package/dist/components/ToggleButtonGroup/toggleButtonGroup.props.d.ts +19 -1
  718. package/dist/components/ToggleButtonGroup/toggleButtonGroup.theme.d.ts +12 -0
  719. package/dist/components/ToggleButtonGroup/toggleButtonGroup.theme.js +21 -2
  720. package/dist/components/ToggleMenu/ToggleMenu.svelte +57 -43
  721. package/dist/components/ToggleMenu/ToggleMenuGroup.svelte +1 -0
  722. package/dist/components/ToggleMenu/ToggleMenuMenu.svelte +9 -3
  723. package/dist/components/ToggleMenu/ToggleMenuRadioGroup.svelte +7 -2
  724. package/dist/components/ToggleMenu/toggleMenu.mcp.d.ts +1 -1
  725. package/dist/components/ToggleMenu/toggleMenu.mcp.js +3 -2
  726. package/dist/components/ToggleMenu/toggleMenu.props.d.ts +4 -1
  727. package/dist/components/Tooltip/Tooltip.svelte +4 -12
  728. package/dist/components/Tooltip/TooltipHost.svelte +136 -15
  729. package/dist/components/Tooltip/index.d.ts +1 -0
  730. package/dist/components/Tooltip/index.js +1 -0
  731. package/dist/components/Tooltip/tooltip.attachment.svelte.d.ts +5 -0
  732. package/dist/components/Tooltip/tooltip.attachment.svelte.js +215 -33
  733. package/dist/components/Tooltip/tooltip.attributes.d.ts +32 -0
  734. package/dist/components/Tooltip/tooltip.attributes.js +28 -0
  735. package/dist/components/Tooltip/tooltip.mcp.d.ts +1 -1
  736. package/dist/components/Tooltip/tooltip.mcp.js +111 -10
  737. package/dist/components/Tooltip/tooltip.props.d.ts +33 -2
  738. package/dist/components/Tooltip/tooltip.surface.d.ts +24 -0
  739. package/dist/components/Tooltip/tooltip.surface.js +42 -0
  740. package/dist/components/Tree/TreeContextMenuSurface.svelte +16 -3
  741. package/dist/components/Utils/BeforeHydratation.svelte +14 -3
  742. package/dist/components/Utils/BeforeHydratation.svelte.d.ts +2 -0
  743. package/dist/components/VideoPlayer/VideoPlayer.svelte.d.ts +1 -1
  744. package/dist/components/VideoPlayer/VideoPlayerSettings.svelte +2 -0
  745. package/dist/generated/componentAliases.d.ts +3 -0
  746. package/dist/generated/componentAliases.js +3 -0
  747. package/dist/generated/componentContract.d.ts +79 -34
  748. package/dist/generated/componentContract.js +225 -6
  749. package/dist/generated/componentMcpRegistry.js +6 -0
  750. package/dist/i18n/ar.js +107 -3
  751. package/dist/i18n/context.svelte.d.ts +6 -0
  752. package/dist/i18n/context.svelte.js +12 -0
  753. package/dist/i18n/de.js +101 -3
  754. package/dist/i18n/en.d.ts +91 -2
  755. package/dist/i18n/en.js +101 -3
  756. package/dist/i18n/es.js +101 -3
  757. package/dist/i18n/fr.js +101 -3
  758. package/dist/i18n/ja.js +101 -3
  759. package/dist/i18n/pt.js +101 -3
  760. package/dist/i18n/zh.js +101 -3
  761. package/dist/tailwind/geometry.js +7 -0
  762. package/dist/tailwind/global.js +31 -0
  763. package/dist/types/index.d.ts +1 -0
  764. package/dist/types/types.mcp.d.ts +1 -1
  765. package/dist/types/types.mcp.js +23 -0
  766. package/dist/utils/cspNonce.d.ts +16 -0
  767. package/dist/utils/cspNonce.js +39 -0
  768. package/dist/utils/cva/merge.d.ts +5 -1
  769. package/dist/utils/cva/merge.js +6 -4
  770. package/dist/utils/focus.d.ts +34 -0
  771. package/dist/utils/focus.js +93 -0
  772. package/dist/utils/focusHistory.d.ts +21 -0
  773. package/dist/utils/focusHistory.js +99 -0
  774. package/dist/utils/handlers.d.ts +7 -0
  775. package/dist/utils/handlers.js +14 -0
  776. package/dist/utils/hoverIntent.d.ts +42 -0
  777. package/dist/utils/hoverIntent.js +57 -0
  778. package/dist/utils/id.d.ts +7 -0
  779. package/dist/utils/id.js +15 -0
  780. package/dist/utils/layers.svelte.d.ts +32 -4
  781. package/dist/utils/layers.svelte.js +214 -21
  782. package/dist/utils/listFilter.d.ts +44 -0
  783. package/dist/utils/listFilter.js +130 -0
  784. package/dist/utils/match.d.ts +35 -0
  785. package/dist/utils/match.js +36 -0
  786. package/dist/utils/number.d.ts +126 -0
  787. package/dist/utils/number.js +401 -0
  788. package/dist/utils/openChange.d.ts +88 -0
  789. package/dist/utils/openChange.js +71 -0
  790. package/dist/utils/openLifecycle.svelte.d.ts +41 -0
  791. package/dist/utils/openLifecycle.svelte.js +134 -0
  792. package/dist/utils/pointerDrag.d.ts +10 -0
  793. package/dist/utils/pointerDrag.js +37 -2
  794. package/dist/utils/pragmaticDragAndDrop.d.ts +2 -1
  795. package/dist/utils/pragmaticDragAndDrop.js +8 -3
  796. package/dist/utils/range.d.ts +62 -0
  797. package/dist/utils/range.js +70 -0
  798. package/dist/utils/requestNativeSubmit.d.ts +17 -0
  799. package/dist/utils/requestNativeSubmit.js +47 -0
  800. package/dist/utils/safeArea.svelte.d.ts +10 -1
  801. package/dist/utils/safeArea.svelte.js +19 -11
  802. package/dist/utils/stateAttributes.d.ts +108 -0
  803. package/dist/utils/stateAttributes.js +78 -0
  804. package/dist/utils/swipeVelocity.d.ts +32 -0
  805. package/dist/utils/swipeVelocity.js +59 -0
  806. package/dist/utils/timer.svelte.d.ts +65 -2
  807. package/dist/utils/timer.svelte.js +159 -25
  808. package/dist/utils/trigger.d.ts +41 -0
  809. package/dist/utils/trigger.js +103 -0
  810. package/dist/utils/typeahead.d.ts +9 -0
  811. package/dist/utils/typeahead.js +21 -9
  812. package/dist/utils/useDndList.svelte.d.ts +1 -1
  813. package/dist/utils/useDndList.svelte.js +6 -23
  814. package/dist/utils/useFocusScope.svelte.d.ts +29 -0
  815. package/dist/utils/useFocusScope.svelte.js +189 -27
  816. package/dist/utils/useHoverAction.svelte.d.ts +44 -4
  817. package/dist/utils/useHoverAction.svelte.js +161 -51
  818. package/dist/utils/useKeyDown.svelte.d.ts +19 -2
  819. package/dist/utils/useKeyDown.svelte.js +19 -12
  820. package/dist/utils/useListNavigation.svelte.d.ts +94 -13
  821. package/dist/utils/useListNavigation.svelte.js +261 -35
  822. package/dist/utils/useLiveAnnouncer.svelte.d.ts +77 -2
  823. package/dist/utils/useLiveAnnouncer.svelte.js +119 -2
  824. package/dist/utils/useNavigation.svelte.d.ts +36 -3
  825. package/dist/utils/useNavigation.svelte.js +699 -332
  826. package/dist/utils/usePressAndHold.svelte.d.ts +38 -0
  827. package/dist/utils/usePressAndHold.svelte.js +191 -0
  828. package/dist/utils/useScrollLock.svelte.d.ts +20 -1
  829. package/dist/utils/useScrollLock.svelte.js +54 -13
  830. package/dist/utils/useSlidingIndicator.svelte.d.ts +2 -0
  831. package/dist/utils/useSlidingIndicator.svelte.js +27 -5
  832. package/dist/utils/useTabBridge.svelte.d.ts +20 -0
  833. package/dist/utils/useTabBridge.svelte.js +109 -0
  834. package/dist/utils/values.d.ts +15 -0
  835. package/dist/utils/values.js +49 -0
  836. package/package.json +31 -2
  837. package/dist/generated/componentMcpRegistry.d.ts +0 -142
  838. package/dist/utils/useDrag.svelte.d.ts +0 -11
  839. package/dist/utils/useDrag.svelte.js +0 -55
@@ -1,30 +1,38 @@
1
1
  import { cva, setComponentTheme, useComponentTheme } from '../../utils/cva/index.js';
2
- import { selectedSolid } from '../Theme/theme.recipes.js';
2
+ // Like the composer it can stand in for, the card caps itself at `--ai-chat-content-width` when a
3
+ // host sets it (AIChat docks it in place of the composer) and centres; elsewhere it spans its
4
+ // container.
3
5
  const defaultRoot = cva({
4
- base: 'raised grid min-w-0 gap-lg rounded-lg bg-surface-raised text-sm text-neutral'
6
+ base: 'raised mx-auto grid w-full min-w-0 max-w-[var(--ai-chat-content-width,none)] gap-lg rounded-lg bg-surface-raised text-sm text-neutral'
5
7
  });
6
8
  const defaultHeader = cva({ base: 'grid min-w-0 px-lg pt-lg' });
7
9
  const defaultHeaderTop = cva({ base: 'flex min-w-0 items-start justify-between gap-lg' });
8
10
  const defaultHeaderText = cva({ base: 'grid min-w-0 gap-xs' });
9
11
  const defaultRequester = cva({
10
- base: 'sr-only'
12
+ base: 'truncate text-xs text-neutral/70'
11
13
  });
12
14
  const defaultProgressGroup = cva({
13
15
  base: 'flex shrink-0 items-center'
14
16
  });
15
- const defaultSteps = cva({ base: 'flex shrink-0 items-center gap-sm' });
17
+ // The negative margins let the 24px hit areas overhang, so the dots line up with the header edge
18
+ // and the row stays as tall as the progress text.
19
+ const defaultSteps = cva({ base: '-my-xs -me-md flex shrink-0 items-center' });
20
+ // A 24px pointer target (WCAG 2.5.8) drawing an 8px dot: the step dots are the way back to an
21
+ // earlier question.
16
22
  const defaultStep = cva({
17
- base: 'state-layer size-2 rounded-full bg-neutral/20 text-neutral transition-colors disabled:pointer-events-none disabled:opacity-50',
18
- variants: { active: { true: selectedSolid, false: '' } }
23
+ base: "state-layer grid size-6 place-items-center rounded-full text-neutral transition-colors after:size-2 after:rounded-full after:bg-neutral/20 after:transition-colors after:content-[''] disabled:pointer-events-none disabled:opacity-50",
24
+ variants: { active: { true: 'after:bg-selected', false: '' } }
19
25
  });
20
26
  const defaultBody = cva({
21
27
  base: 'grid min-w-0 gap-lg'
22
28
  });
23
- const defaultStepContent = cva({ base: 'grid w-full min-w-0 gap-lg px-lg pb-xs' });
29
+ const defaultStepContent = cva({ base: 'grid w-full min-w-0 gap-lg px-lg pb-xs outline-none' });
24
30
  const defaultQuestion = cva({ base: 'grid min-w-0 gap-xs' });
25
31
  const defaultQuestionTitle = cva({
26
32
  base: 'break-words text-sm font-medium leading-snug text-neutral [overflow-wrap:anywhere]'
27
33
  });
34
+ const defaultRequiredMarker = cva({ base: 'ms-xs text-danger-readable' });
35
+ const defaultOther = cva({ base: 'min-w-0' });
28
36
  const defaultQuestionDescription = cva({
29
37
  base: 'break-words text-xs leading-relaxed text-neutral/70 [overflow-wrap:anywhere]'
30
38
  });
@@ -32,15 +40,39 @@ const defaultTextArea = cva({ base: 'min-h-24 resize-none text-sm' });
32
40
  const defaultOptions = cva({ base: 'grid w-full min-w-0 gap-md' });
33
41
  const defaultFile = cva({ base: 'min-w-0' });
34
42
  const defaultEmpty = cva({ base: 'm-lg min-w-0' });
35
- const defaultError = cva({ base: 'mx-lg min-w-0 text-sm' });
36
- const defaultFooter = cva({ base: 'flex min-w-0 items-center justify-between gap-md px-lg pb-lg' });
43
+ // One danger message under the question; the step already carries the horizontal padding.
44
+ const defaultError = cva({ base: 'min-w-0 text-sm text-danger-readable' });
45
+ const defaultAlert = cva({ base: 'mx-lg min-w-0' });
46
+ const defaultFooter = cva({ base: 'flex min-w-0 items-center justify-end gap-md px-lg pb-lg' });
37
47
  const defaultProgress = cva({ base: 'sr-only' });
38
48
  const defaultTitle = cva({
39
- base: 'break-words text-xs font-medium leading-snug text-neutral/70 [overflow-wrap:anywhere]'
49
+ base: 'break-words text-sm font-semibold leading-snug text-neutral [overflow-wrap:anywhere]'
40
50
  });
41
51
  const defaultDescription = cva({
42
52
  base: 'break-words text-xs leading-relaxed text-neutral/70 [overflow-wrap:anywhere]'
43
53
  });
54
+ // The answered record a transcript keeps once the request is complete: question → chosen labels.
55
+ const defaultSummary = cva({
56
+ base: 'group/ai-ask-summary-size grid min-w-0 gap-sm text-sm data-[size=small]:text-xs data-[size=large]:text-base text-neutral'
57
+ });
58
+ const defaultSummaryTitle = cva({
59
+ base: 'text-xs group-data-[size=large]/ai-ask-summary-size:text-sm font-medium text-neutral/70'
60
+ });
61
+ const defaultSummaryList = cva({ base: 'grid min-w-0 gap-sm' });
62
+ const defaultSummaryItem = cva({ base: 'grid min-w-0 gap-micro' });
63
+ const defaultSummaryQuestion = cva({
64
+ base: 'break-words text-neutral/70 [overflow-wrap:anywhere]'
65
+ });
66
+ const defaultSummaryAnswer = cva({
67
+ base: 'break-words font-medium text-neutral [overflow-wrap:anywhere]',
68
+ variants: {
69
+ answered: {
70
+ true: '',
71
+ false: 'font-normal text-neutral/70 italic'
72
+ }
73
+ },
74
+ defaultVariants: { answered: true }
75
+ });
44
76
  export const aiAskUserQuestionTheme = {
45
77
  root: defaultRoot,
46
78
  header: defaultHeader,
@@ -63,7 +95,16 @@ export const aiAskUserQuestionTheme = {
63
95
  footer: defaultFooter,
64
96
  progress: defaultProgress,
65
97
  title: defaultTitle,
66
- description: defaultDescription
98
+ description: defaultDescription,
99
+ requiredMarker: defaultRequiredMarker,
100
+ other: defaultOther,
101
+ alert: defaultAlert,
102
+ summary: defaultSummary,
103
+ summaryTitle: defaultSummaryTitle,
104
+ summaryList: defaultSummaryList,
105
+ summaryItem: defaultSummaryItem,
106
+ summaryQuestion: defaultSummaryQuestion,
107
+ summaryAnswer: defaultSummaryAnswer
67
108
  };
68
109
  export const setAIAskUserQuestionTheme = setComponentTheme('ai-ask-user-question');
69
- export const useAIAskUserQuestionTheme = useComponentTheme('aiAskUserQuestion', aiAskUserQuestionTheme);
110
+ export const useAIAskUserQuestionTheme = useComponentTheme('ai-ask-user-question', aiAskUserQuestionTheme);
@@ -1,10 +1,26 @@
1
- import type { AIAskAnswer, AIAskAnswers, AIAskQuestion, AIAskUserQuestionAnswer, AIAskUserQuestionType } from './aiAskUserQuestion.props.js';
1
+ import type { AIAskAnswer, AIAskAnswers, AIAskQuestion, AIAskUserQuestionAnswer, AIAskUserQuestionType, AIAskUserQuestionSummaryItem } from './aiAskUserQuestion.props.js';
2
+ /** Internal option value of the "Other…" choice. Never part of an answer. */
3
+ export declare const AI_ASK_OTHER_VALUE = "__entasis-ask-other__";
2
4
  export declare function getAIAskQuestionType(question: AIAskQuestion): AIAskUserQuestionType;
5
+ /** Questions are optional unless they set `required: true`. */
3
6
  export declare function isAIAskQuestionRequired(question: AIAskQuestion): boolean;
4
7
  export declare function getAIAskStringAnswer(answer: AIAskAnswer | undefined): string;
5
8
  export declare function getAIAskStringArrayAnswer(answer: AIAskAnswer | undefined): string[];
6
9
  export declare function getAIAskFileAnswer(answer: AIAskAnswer | undefined): File[];
7
10
  export declare function hasSameAIAskAnswer(question: AIAskQuestion, currentAnswer: AIAskAnswer | undefined, nextAnswer: AIAskAnswer): boolean;
11
+ /** Whether the question already holds an answer, required or not. */
12
+ export declare function hasAIAskAnswer(question: AIAskQuestion, values: AIAskAnswers): boolean;
13
+ /** Whether the question lets the flow continue: answered, or optional. */
8
14
  export declare function isAIAskQuestionAnswered(question: AIAskQuestion, values: AIAskAnswers): boolean;
15
+ /** The free-text "Other…" answer of a choice question: an answer that is no option id. */
16
+ export declare function getAIAskCustomAnswer(question: AIAskQuestion, answer: AIAskAnswer | undefined): string | undefined;
17
+ /** The option ids of a multiple-choice answer, without its free-text entry. */
18
+ export declare function getAIAskOptionAnswers(question: AIAskQuestion, answer: AIAskAnswer | undefined): string[];
19
+ /**
20
+ * A compact, display-ready record of a completed request: each question with the labels the user
21
+ * chose. Option ids become their labels, free-text "Other…" answers and text answers are shown as
22
+ * typed (trimmed), files by name. Unanswered questions have no labels and `answered: false`.
23
+ */
24
+ export declare function summarizeAIAskAnswers(questions: readonly AIAskQuestion[], values: AIAskAnswers): AIAskUserQuestionSummaryItem[];
9
25
  export declare function getFirstMissingAIAskQuestionIndex(questions: readonly AIAskQuestion[], values: AIAskAnswers): number;
10
26
  export declare function toAIAskAnswerList(questions: readonly AIAskQuestion[], values: AIAskAnswers): AIAskUserQuestionAnswer[];
@@ -1,8 +1,11 @@
1
+ /** Internal option value of the "Other…" choice. Never part of an answer. */
2
+ export const AI_ASK_OTHER_VALUE = '__entasis-ask-other__';
1
3
  export function getAIAskQuestionType(question) {
2
4
  return question.type ?? 'text';
3
5
  }
6
+ /** Questions are optional unless they set `required: true`. */
4
7
  export function isAIAskQuestionRequired(question) {
5
- return question.required ?? true;
8
+ return question.required ?? false;
6
9
  }
7
10
  export function getAIAskStringAnswer(answer) {
8
11
  return typeof answer === 'string' ? answer : '';
@@ -27,18 +30,63 @@ export function hasSameAIAskAnswer(question, currentAnswer, nextAnswer) {
27
30
  return (currentValues.length === nextValues.length &&
28
31
  currentValues.every((value, index) => value === nextValues[index]));
29
32
  }
30
- export function isAIAskQuestionAnswered(question, values) {
31
- if (!isAIAskQuestionRequired(question))
32
- return true;
33
+ /** Whether the question already holds an answer, required or not. */
34
+ export function hasAIAskAnswer(question, values) {
33
35
  const answer = values[question.id];
34
36
  const type = getAIAskQuestionType(question);
35
- if (type === 'text')
37
+ if (type === 'text' || type === 'single')
36
38
  return getAIAskStringAnswer(answer).trim().length > 0;
37
- if (type === 'single')
38
- return getAIAskStringAnswer(answer).length > 0;
39
39
  if (type === 'file')
40
40
  return getAIAskFileAnswer(answer).length > 0;
41
- return getAIAskStringArrayAnswer(answer).length > 0;
41
+ return getAIAskStringArrayAnswer(answer).some((entry) => entry.trim().length > 0);
42
+ }
43
+ /** Whether the question lets the flow continue: answered, or optional. */
44
+ export function isAIAskQuestionAnswered(question, values) {
45
+ return !isAIAskQuestionRequired(question) || hasAIAskAnswer(question, values);
46
+ }
47
+ /** The free-text "Other…" answer of a choice question: an answer that is no option id. */
48
+ export function getAIAskCustomAnswer(question, answer) {
49
+ if (question.type !== 'single' && question.type !== 'multiple')
50
+ return undefined;
51
+ const ids = new Set(question.options.map((option) => option.id));
52
+ if (question.type === 'single') {
53
+ const text = getAIAskStringAnswer(answer);
54
+ return text && !ids.has(text) ? text : undefined;
55
+ }
56
+ return getAIAskStringArrayAnswer(answer).find((entry) => !ids.has(entry));
57
+ }
58
+ /** The option ids of a multiple-choice answer, without its free-text entry. */
59
+ export function getAIAskOptionAnswers(question, answer) {
60
+ if (question.type !== 'multiple')
61
+ return [];
62
+ const ids = new Set(question.options.map((option) => option.id));
63
+ return getAIAskStringArrayAnswer(answer).filter((entry) => ids.has(entry));
64
+ }
65
+ /**
66
+ * A compact, display-ready record of a completed request: each question with the labels the user
67
+ * chose. Option ids become their labels, free-text "Other…" answers and text answers are shown as
68
+ * typed (trimmed), files by name. Unanswered questions have no labels and `answered: false`.
69
+ */
70
+ export function summarizeAIAskAnswers(questions, values) {
71
+ return questions.map((question) => {
72
+ const answer = values[question.id];
73
+ const labels = answerLabels(question, answer)
74
+ .map((label) => label.trim())
75
+ .filter(Boolean);
76
+ return { question, questionId: question.id, labels, answered: labels.length > 0 };
77
+ });
78
+ }
79
+ function answerLabels(question, answer) {
80
+ if (question.type === 'file')
81
+ return getAIAskFileAnswer(answer).map((file) => file.name);
82
+ if (question.type === 'single' || question.type === 'multiple') {
83
+ const labels = new Map(question.options.map((option) => [option.id, option.label]));
84
+ const entries = question.type === 'single'
85
+ ? [getAIAskStringAnswer(answer)]
86
+ : getAIAskStringArrayAnswer(answer);
87
+ return entries.map((entry) => labels.get(entry) ?? entry);
88
+ }
89
+ return [getAIAskStringAnswer(answer)];
42
90
  }
43
91
  export function getFirstMissingAIAskQuestionIndex(questions, values) {
44
92
  return questions.findIndex((question) => !isAIAskQuestionAnswered(question, values));
@@ -1,5 +1,7 @@
1
1
  export { default as AIAskUserQuestion } from './AIAskUserQuestion.svelte';
2
- export type { AIAskAnswer, AIAskAnswers, AIAskQuestion, AIAskUserQuestionAnswer, AIAskUserQuestionChoiceQuestion, AIAskUserQuestionFileQuestion, AIAskUserQuestionOption, AIAskUserQuestionProps, AIAskUserQuestionQuestion, AIAskUserQuestionQuestionState, AIAskUserQuestionState, AIAskUserQuestionSubmitPayload, AIAskUserQuestionTextQuestion, AIAskUserQuestionType, AIAskUserQuestionValue, AIAskUserQuestionValues, AIFileQuestion, AIMultipleQuestion, AIQuestionOption, AISingleQuestion, AITextQuestion } from './aiAskUserQuestion.props.js';
2
+ export { default as AIAskUserQuestionSummary } from './AIAskUserQuestionSummary.svelte';
3
+ export { summarizeAIAskAnswers } from './aiAskUserQuestionAnswers.js';
4
+ export type { AIAskAnswer, AIAskAnswers, AIAskQuestion, AIAskUserQuestionAnswer, AIAskUserQuestionChoiceQuestion, AIAskUserQuestionFileQuestion, AIAskUserQuestionOption, AIAskUserQuestionProps, AIAskUserQuestionQuestion, AIAskUserQuestionQuestionState, AIAskUserQuestionState, AIAskUserQuestionSubmitPayload, AIAskUserQuestionSummaryItem, AIAskUserQuestionSummaryProps, AIAskUserQuestionTextQuestion, AIAskUserQuestionType, AIAskUserQuestionValue, AIAskUserQuestionValues, AIFileQuestion, AIMultipleQuestion, AIQuestionOption, AISingleQuestion, AITextQuestion } from './aiAskUserQuestion.props.js';
3
5
  export { aiAskAnswerSchema, aiAskAnswersSchema, aiAskQuestionSchema, aiAskQuestionsSchema, aiAskUserQuestionChoiceQuestionSchema, aiAskUserQuestionFileQuestionSchema, aiAskUserQuestionOptionSchema, aiAskUserQuestionQuestionSchema, aiAskUserQuestionTextQuestionSchema, aiAskUserQuestionToolInputSchema, aiAskUserQuestionToolPayloadSchema, aiAskUserQuestionToolStateSchema, aiAskUserQuestionValueMapSchema, aiFileQuestionSchema, aiMultipleQuestionSchema, aiQuestionOptionSchema, aiSingleQuestionSchema, aiTextQuestionSchema } from './schemas.js';
4
6
  export type { AIAskUserQuestionToolPayload } from './schemas.js';
5
7
  export { aiAskUserQuestionTheme, setAIAskUserQuestionTheme, useAIAskUserQuestionTheme, type AIAskUserQuestionTheme, type AIAskUserQuestionThemeProps } from './aiAskUserQuestion.theme.js';
@@ -1,3 +1,5 @@
1
1
  export { default as AIAskUserQuestion } from './AIAskUserQuestion.svelte';
2
+ export { default as AIAskUserQuestionSummary } from './AIAskUserQuestionSummary.svelte';
3
+ export { summarizeAIAskAnswers } from './aiAskUserQuestionAnswers.js';
2
4
  export { aiAskAnswerSchema, aiAskAnswersSchema, aiAskQuestionSchema, aiAskQuestionsSchema, aiAskUserQuestionChoiceQuestionSchema, aiAskUserQuestionFileQuestionSchema, aiAskUserQuestionOptionSchema, aiAskUserQuestionQuestionSchema, aiAskUserQuestionTextQuestionSchema, aiAskUserQuestionToolInputSchema, aiAskUserQuestionToolPayloadSchema, aiAskUserQuestionToolStateSchema, aiAskUserQuestionValueMapSchema, aiFileQuestionSchema, aiMultipleQuestionSchema, aiQuestionOptionSchema, aiSingleQuestionSchema, aiTextQuestionSchema } from './schemas.js';
3
5
  export { aiAskUserQuestionTheme, setAIAskUserQuestionTheme, useAIAskUserQuestionTheme } from './aiAskUserQuestion.theme.js';
@@ -23,6 +23,9 @@ export declare const aiSingleQuestionSchema: v.LooseObjectSchema<{
23
23
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
24
24
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
25
25
  }, undefined>, undefined>;
26
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
27
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
28
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
26
29
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
27
30
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
28
31
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -36,6 +39,9 @@ export declare const aiMultipleQuestionSchema: v.LooseObjectSchema<{
36
39
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
37
40
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
38
41
  }, undefined>, undefined>;
42
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
43
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
44
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
39
45
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
40
46
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
41
47
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -68,6 +74,9 @@ export declare const aiAskQuestionSchema: v.UnionSchema<[v.LooseObjectSchema<{
68
74
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
69
75
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
70
76
  }, undefined>, undefined>;
77
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
78
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
79
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
71
80
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
72
81
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
73
82
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -80,6 +89,9 @@ export declare const aiAskQuestionSchema: v.UnionSchema<[v.LooseObjectSchema<{
80
89
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
81
90
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
82
91
  }, undefined>, undefined>;
92
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
93
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
94
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
83
95
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
84
96
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
85
97
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -111,6 +123,9 @@ export declare const aiAskQuestionsSchema: v.ArraySchema<v.UnionSchema<[v.LooseO
111
123
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
112
124
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
113
125
  }, undefined>, undefined>;
126
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
127
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
128
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
114
129
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
115
130
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
116
131
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -123,6 +138,9 @@ export declare const aiAskQuestionsSchema: v.ArraySchema<v.UnionSchema<[v.LooseO
123
138
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
124
139
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
125
140
  }, undefined>, undefined>;
141
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
142
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
143
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
126
144
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
127
145
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
128
146
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -160,6 +178,9 @@ export declare const aiAskUserQuestionToolPayloadSchema: v.LooseObjectSchema<{
160
178
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
161
179
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
162
180
  }, undefined>, undefined>;
181
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
182
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
183
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
163
184
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
164
185
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
165
186
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -172,6 +193,9 @@ export declare const aiAskUserQuestionToolPayloadSchema: v.LooseObjectSchema<{
172
193
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
173
194
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
174
195
  }, undefined>, undefined>;
196
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
197
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
198
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
175
199
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
176
200
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
177
201
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -197,6 +221,7 @@ export declare const aiAskUserQuestionToolPayloadSchema: v.LooseObjectSchema<{
197
221
  readonly nextLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
198
222
  readonly previousLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
199
223
  readonly discardLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
224
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
200
225
  }, undefined>;
201
226
  export declare const aiAskUserQuestionToolInputSchema: v.LooseObjectSchema<{
202
227
  readonly state: v.OptionalSchema<v.PicklistSchema<["pending", "completed", "complete", "success", "submitted", "discarded", "discard", "cancelled", "canceled"], undefined>, undefined>;
@@ -217,6 +242,9 @@ export declare const aiAskUserQuestionToolInputSchema: v.LooseObjectSchema<{
217
242
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
218
243
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
219
244
  }, undefined>, undefined>;
245
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
246
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
247
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
220
248
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
221
249
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
222
250
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -229,6 +257,9 @@ export declare const aiAskUserQuestionToolInputSchema: v.LooseObjectSchema<{
229
257
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
230
258
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
231
259
  }, undefined>, undefined>;
260
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
261
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
262
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
232
263
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
233
264
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
234
265
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -254,6 +285,7 @@ export declare const aiAskUserQuestionToolInputSchema: v.LooseObjectSchema<{
254
285
  readonly nextLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
255
286
  readonly previousLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
256
287
  readonly discardLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
288
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
257
289
  }, undefined>;
258
290
  export type AIAskUserQuestionToolPayload = v.InferOutput<typeof aiAskUserQuestionToolPayloadSchema>;
259
291
  export declare const aiAskUserQuestionOptionSchema: v.LooseObjectSchema<{
@@ -279,6 +311,9 @@ export declare const aiAskUserQuestionChoiceQuestionSchema: v.UnionSchema<[v.Loo
279
311
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
280
312
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
281
313
  }, undefined>, undefined>;
314
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
315
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
316
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
282
317
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
283
318
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
284
319
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -291,6 +326,9 @@ export declare const aiAskUserQuestionChoiceQuestionSchema: v.UnionSchema<[v.Loo
291
326
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
292
327
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
293
328
  }, undefined>, undefined>;
329
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
330
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
331
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
294
332
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
295
333
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
296
334
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -323,6 +361,9 @@ export declare const aiAskUserQuestionQuestionSchema: v.UnionSchema<[v.LooseObje
323
361
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
324
362
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
325
363
  }, undefined>, undefined>;
364
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
365
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
366
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
326
367
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
327
368
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
328
369
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -335,6 +376,9 @@ export declare const aiAskUserQuestionQuestionSchema: v.UnionSchema<[v.LooseObje
335
376
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
336
377
  readonly disabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
337
378
  }, undefined>, undefined>;
379
+ readonly showOther: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
380
+ readonly otherLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
381
+ readonly otherPlaceholder: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
338
382
  readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
339
383
  readonly title: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.NonEmptyAction<string, undefined>]>;
340
384
  readonly description: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -33,12 +33,18 @@ export const aiTextQuestionSchema = v.looseObject({
33
33
  export const aiSingleQuestionSchema = v.looseObject({
34
34
  ...aiQuestionBaseEntries,
35
35
  type: v.literal('single'),
36
- options: v.array(aiQuestionOptionSchema)
36
+ options: v.array(aiQuestionOptionSchema),
37
+ showOther: v.optional(v.boolean()),
38
+ otherLabel: v.optional(v.string()),
39
+ otherPlaceholder: v.optional(v.string())
37
40
  });
38
41
  export const aiMultipleQuestionSchema = v.looseObject({
39
42
  ...aiQuestionBaseEntries,
40
43
  type: v.literal('multiple'),
41
- options: v.array(aiQuestionOptionSchema)
44
+ options: v.array(aiQuestionOptionSchema),
45
+ showOther: v.optional(v.boolean()),
46
+ otherLabel: v.optional(v.string()),
47
+ otherPlaceholder: v.optional(v.string())
42
48
  });
43
49
  export const aiFileQuestionSchema = v.looseObject({
44
50
  ...aiQuestionBaseEntries,
@@ -74,7 +80,8 @@ export const aiAskUserQuestionToolPayloadSchema = v.looseObject({
74
80
  submittingLabel: v.optional(v.string()),
75
81
  nextLabel: v.optional(v.string()),
76
82
  previousLabel: v.optional(v.string()),
77
- discardLabel: v.optional(v.string())
83
+ discardLabel: v.optional(v.string()),
84
+ showOther: v.optional(v.boolean())
78
85
  });
79
86
  export const aiAskUserQuestionToolInputSchema = aiAskUserQuestionToolPayloadSchema;
80
87
  export const aiAskUserQuestionOptionSchema = aiQuestionOptionSchema;
@@ -40,6 +40,9 @@
40
40
  density,
41
41
  messageSize,
42
42
  messageVariant,
43
+ messageColor,
44
+ contentWidth,
45
+ showFollowUps,
43
46
  messageActions,
44
47
  messageActionsVisibility,
45
48
  messageCopyable,
@@ -73,6 +76,8 @@
73
76
  onQueuedMessageEditCancel,
74
77
  onQueuedMessageReorder,
75
78
  onSteer,
79
+ submitShortcut,
80
+ toolbar,
76
81
  onStatusChange,
77
82
  onSubmit,
78
83
  onStop,
@@ -174,6 +179,9 @@
174
179
  {density}
175
180
  {messageSize}
176
181
  {messageVariant}
182
+ {messageColor}
183
+ {contentWidth}
184
+ {showFollowUps}
177
185
  {messageActions}
178
186
  {messageActionsVisibility}
179
187
  {messageCopyable}
@@ -207,6 +215,8 @@
207
215
  {onQueuedMessageEditCancel}
208
216
  {onQueuedMessageReorder}
209
217
  {onSteer}
218
+ {submitShortcut}
219
+ {toolbar}
210
220
  {header}
211
221
  {beforeThread}
212
222
  {controls}
@@ -3,7 +3,7 @@ import type { AIChatProps } from './aiChat.props.js';
3
3
  declare function $$render<TMessage extends AIThreadItem = AIThreadItem>(): {
4
4
  props: AIChatProps<TMessage>;
5
5
  exports: {};
6
- bindings: "error" | "attachments" | "ref" | "files" | "suggestions" | "status" | "api" | "messages" | "streaming" | "queue" | "queuedMessage" | "currentInput" | "liveText" | "contextUsage" | "selectedModel" | "activeAskUserQuestion";
6
+ bindings: "error" | "attachments" | "ref" | "files" | "messages" | "suggestions" | "status" | "api" | "streaming" | "queue" | "queuedMessage" | "currentInput" | "liveText" | "contextUsage" | "selectedModel" | "activeAskUserQuestion";
7
7
  slots: {};
8
8
  events: {};
9
9
  };
@@ -11,7 +11,7 @@ declare class __sveltets_Render<TMessage extends AIThreadItem = AIThreadItem> {
11
11
  props(): ReturnType<typeof $$render<TMessage>>['props'];
12
12
  events(): ReturnType<typeof $$render<TMessage>>['events'];
13
13
  slots(): ReturnType<typeof $$render<TMessage>>['slots'];
14
- bindings(): "error" | "attachments" | "ref" | "files" | "suggestions" | "status" | "api" | "messages" | "streaming" | "queue" | "queuedMessage" | "currentInput" | "liveText" | "contextUsage" | "selectedModel" | "activeAskUserQuestion";
14
+ bindings(): "error" | "attachments" | "ref" | "files" | "messages" | "suggestions" | "status" | "api" | "streaming" | "queue" | "queuedMessage" | "currentInput" | "liveText" | "contextUsage" | "selectedModel" | "activeAskUserQuestion";
15
15
  exports(): {};
16
16
  }
17
17
  interface $$IsomorphicComponent {
@@ -7,6 +7,7 @@
7
7
  import AIComposer from '../AIComposer/AIComposer.svelte';
8
8
  import type {
9
9
  AIComposerHandle,
10
+ AIComposerProps,
10
11
  AIComposerQueuedMessage
11
12
  } from '../AIComposer/aiComposer.props.js';
12
13
  import AIContext from '../AIContext/AIContext.svelte';
@@ -55,7 +56,13 @@
55
56
  | 'onQueuedMessageReorder'
56
57
  | 'onSteer'
57
58
  | 'theme'
58
- > & { conversation: AIConversationState<TMessage> };
59
+ > & {
60
+ conversation: AIConversationState<TMessage>;
61
+ /** Composer submit shortcut; AIComposer's default (`'enter'`) when omitted. */
62
+ submitShortcut?: AIComposerProps['submitShortcut'];
63
+ /** Composer formatting toolbar; AIComposer's default (`'none'`) when omitted. */
64
+ toolbar?: AIComposerProps['toolbar'];
65
+ };
59
66
 
60
67
  let {
61
68
  conversation,
@@ -66,7 +73,7 @@
66
73
  composer,
67
74
  models = [],
68
75
  modelGroups = [],
69
- maxTokens = 128_000,
76
+ maxTokens,
70
77
  showContext = true,
71
78
  showModelSelector = true,
72
79
  disabled = false,
@@ -93,13 +100,21 @@
93
100
  onQueuedMessageEditCancel,
94
101
  onQueuedMessageReorder,
95
102
  onSteer,
103
+ submitShortcut,
104
+ toolbar,
96
105
  theme
97
106
  }: Props<TMessage> = $props();
98
107
  const t = $derived(useI18n());
108
+ const DEFAULT_MAX_TOKENS = 128_000;
99
109
 
100
110
  let composerHandle = $state<AIComposerHandle>();
101
111
  let askUserQuestionValues = $state<Record<string, AIAskAnswers | undefined>>({});
102
112
  const hasModels = $derived(models.length > 0 || modelGroups.length > 0);
113
+ // The default indicator only appears once there is something to measure: a context-window
114
+ // limit from the app or usage reported by the conversation. An empty ring reads as a spinner.
115
+ const hasContextData = $derived(
116
+ maxTokens !== undefined || conversation.contextUsage !== undefined
117
+ );
103
118
  const classes = $derived(useAIChatTheme(theme));
104
119
 
105
120
  export function focus(): void {
@@ -137,8 +152,8 @@
137
152
  <div class={classes.controls()}>
138
153
  {#if context}
139
154
  <Slot render={context} payload={conversation} />
140
- {:else if showContext}
141
- <AIContext {maxTokens} compact />
155
+ {:else if showContext && hasContextData}
156
+ <AIContext maxTokens={maxTokens ?? DEFAULT_MAX_TOKENS} compact />
142
157
  {/if}
143
158
  {#if modelSelector}
144
159
  <Slot render={modelSelector} payload={conversation} />
@@ -167,6 +182,7 @@
167
182
  nextLabel={request.nextLabel}
168
183
  previousLabel={request.previousLabel}
169
184
  discardLabel={request.discardLabel}
185
+ showOther={request.showOther}
170
186
  onValueChange={(value) => updateAskUserQuestionValue(request, value)}
171
187
  onSubmit={(detail) => resolveAskUserQuestion(request, 'completed', detail)}
172
188
  onDiscard={() => resolveAskUserQuestion(request, 'discarded')}
@@ -201,7 +217,9 @@
201
217
  {onQueuedMessageEditCancel}
202
218
  {onQueuedMessageReorder}
203
219
  {onSteer}
204
- footerStart={defaultControls}
220
+ {submitShortcut}
221
+ {toolbar}
222
+ modelSelector={defaultControls}
205
223
  />
206
224
  {/if}
207
225
  </div>
@@ -1,8 +1,13 @@
1
+ import type { AIComposerProps } from '../AIComposer/aiComposer.props.js';
1
2
  import type { AIConversationState } from '../AIConversation/aiConversation.state.svelte.js';
2
3
  import type { AIThreadItem } from '../AIThread/aiThread.props.js';
3
4
  import type { AIChatProps } from './aiChat.props.js';
4
5
  type Props<TMessage extends AIThreadItem> = Pick<AIChatProps<TMessage>, 'queue' | 'controls' | 'context' | 'modelSelector' | 'composer' | 'models' | 'modelGroups' | 'maxTokens' | 'showContext' | 'showModelSelector' | 'disabled' | 'queueWhileBusy' | 'fileDropzone' | 'fileMultiple' | 'accept' | 'maxFiles' | 'maxFileSize' | 'commands' | 'mentions' | 'references' | 'skills' | 'onFilesRejected' | 'onFileReject' | 'onAttachmentAdd' | 'onAttachmentRetry' | 'onAttachmentRemove' | 'onQueueChange' | 'onQueuedMessageAdd' | 'onQueuedMessageCancel' | 'onQueuedMessageEditStart' | 'onQueuedMessageEditCommit' | 'onQueuedMessageEditCancel' | 'onQueuedMessageReorder' | 'onSteer' | 'theme'> & {
5
6
  conversation: AIConversationState<TMessage>;
7
+ /** Composer submit shortcut; AIComposer's default (`'enter'`) when omitted. */
8
+ submitShortcut?: AIComposerProps['submitShortcut'];
9
+ /** Composer formatting toolbar; AIComposer's default (`'none'`) when omitted. */
10
+ toolbar?: AIComposerProps['toolbar'];
6
11
  };
7
12
  declare function $$render<TMessage extends AIThreadItem = AIThreadItem>(): {
8
13
  props: Props<TMessage>;