@revolist/ui 4.0.4-rc → 4.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (401) hide show
  1. package/MIGRATION.md +36 -0
  2. package/OWNERSHIP.md +36 -36
  3. package/README.md +65 -392
  4. package/_button.scss +6 -2
  5. package/_chunks/arrow-up-Cw8hW9vp.js +4 -0
  6. package/_chunks/calculator-CDWOuAcp.js +4 -0
  7. package/_chunks/{calendar-xpZ0v3xf.js → calendar-BQYQLu8Q.js} +23 -23
  8. package/_chunks/{cell-visuals-E-2oEKHg.js → cell-visuals-r6DOOhGh.js} +7 -7
  9. package/_chunks/chart-frame-GprenwEg.js +145 -0
  10. package/_chunks/{chevron-right-sxHQMSkq.js → check-BwI7iCAm.js} +2 -2
  11. package/_chunks/{chevron-left-D0nc4Z5S.js → chevron-right-CM3ljziP.js} +2 -2
  12. package/_chunks/choice-chips-C5OxD0GV.js +126 -0
  13. package/_chunks/{color-palette-D8vyPfld.js → color-palette-7siNch__.js} +22 -24
  14. package/_chunks/color-picker-Cfc9eqZb.js +143 -0
  15. package/_chunks/{component-C_T2VN5u.js → component-C3k_8uIq.js} +290 -275
  16. package/_chunks/{component-metadata-BMOOmqx5.js → component-metadata-DlVkpW3h.js} +1 -9
  17. package/_chunks/configurator-actions-vRnI54mO.js +155 -0
  18. package/_chunks/configurator-field-icon-CmcM_sPs.js +53 -0
  19. package/_chunks/control-BRfF5DWQ.js +118 -0
  20. package/_chunks/{controller-hRBm_Lfz.js → controller-BbiQuRt-.js} +5 -5
  21. package/_chunks/controls-B3EgM_DS.js +650 -0
  22. package/_chunks/{date-control-DrVFX13g.js → date-control-87dcA5br.js} +5 -5
  23. package/_chunks/{date-time-qIhp5vaX.js → date-time-CfiFYodx.js} +332 -293
  24. package/_chunks/{delete-button-CW9vjLnk.js → delete-button-jneO24wa.js} +1 -1
  25. package/_chunks/dialog.parts-NqEEVc9P.js +131 -0
  26. package/_chunks/{duration-CL68Em0o.js → duration-BGZ_qJ99.js} +10 -10
  27. package/_chunks/{editor-commit-Bq3wSgvr.js → editor-commit-Dyo-FMgD.js} +1 -1
  28. package/_chunks/editor-popup-NNP9Fh9U.js +82 -0
  29. package/_chunks/field-configurator-DPulsY3l.js +288 -0
  30. package/_chunks/{field-context-D57PnBbH.js → field-context-C4_WrO2z.js} +1 -1
  31. package/_chunks/{framework-mount--RTLIqE-.js → framework-mount-D4I8HpVp.js} +2 -2
  32. package/_chunks/icon-toolbar-BAAdEvr9.js +134 -0
  33. package/_chunks/{icons-Ci5mADVc.js → icons-B4qN13Yj.js} +1 -1
  34. package/_chunks/{iso-B0YHBK7m.js → iso-CJQl2kmq.js} +1 -1
  35. package/_chunks/magnifying-glass-CvrTDSkB.js +4 -0
  36. package/_chunks/minus-BOAR3A1C.js +4 -0
  37. package/_chunks/{model-mPO2tG2f.js → model-CFrBgRHm.js} +3 -3
  38. package/_chunks/mount-C8CnIW9k.js +267 -0
  39. package/_chunks/{native.view-ByyZ1CT5.js → native-CJm3eq3-.js} +1 -1
  40. package/_chunks/native-control-um1L1wgZ.js +649 -0
  41. package/_chunks/{number-input-BKwA5FnM.js → number-input-CKiA4d1N.js} +9 -9
  42. package/_chunks/{picker-h1P5RUgp.js → picker-igNshTRC.js} +5 -5
  43. package/_chunks/plus-CbGRkIGl.js +4 -0
  44. package/_chunks/{popup-CT2uD3go.js → popup-DECYM9FI.js} +116 -105
  45. package/_chunks/{rating-choice-DZgmaic0.js → rating-choice-CepVfGUq.js} +2 -2
  46. package/_chunks/{render-m5eMMwFR.js → render-bTk3curw.js} +2 -2
  47. package/_chunks/{reorder-list-CSlqAGHw.js → reorder-list-B4w3aARt.js} +2 -2
  48. package/_chunks/request-trail-B1zVRPEf.js +762 -0
  49. package/_chunks/rich-text-Ci4d6dHn.js +842 -0
  50. package/_chunks/rotate-left-BF6G883o.js +4 -0
  51. package/_chunks/selection-list-tooltips-m00U3L6z.js +42 -0
  52. package/_chunks/title-tooltip-ncldbUwS.js +11 -0
  53. package/_chunks/tooltip-h-Z8yFBY.js +54 -0
  54. package/_chunks/tooltip-owner-BYho-vJl.js +19 -0
  55. package/_chunks/tooltip-session-CBtRMBPr.js +110 -0
  56. package/_chunks/tooltip-text-BN5WdGHn.js +12 -0
  57. package/_chunks/top-layer-popup-CKJ7VJOF.js +59 -0
  58. package/_dialog.scss +57 -22
  59. package/_form.scss +71 -21
  60. package/_legend.scss +25 -7
  61. package/_variables.scss +34 -32
  62. package/_view-switcher.scss +6 -0
  63. package/activity-message.d.ts +1 -1
  64. package/activity-message.js +1 -1
  65. package/ai/_chat.scss +35 -3
  66. package/ai/_style.scss +76 -16
  67. package/ai/chat.d.ts +3 -1
  68. package/ai/components.d.ts +16 -3
  69. package/ai/index.d.ts +1 -0
  70. package/ai/index.js +3 -3
  71. package/ai/mount.d.ts +30 -6
  72. package/ai/request-trail.d.ts +9 -3
  73. package/ai/results/_style.scss +83 -0
  74. package/ai/results/index.d.ts +11 -0
  75. package/ai/results/metrics.d.ts +5 -0
  76. package/ai/results/table.d.ts +5 -0
  77. package/ai/results/text.d.ts +5 -0
  78. package/ai/results/types.d.ts +29 -0
  79. package/ai/transcript.d.ts +2 -0
  80. package/ai/translations.d.ts +1 -1
  81. package/angular/angular.d.ts +1 -1
  82. package/angular/angular.js +13 -7
  83. package/assignee/assignee.scss +28 -6
  84. package/assignee/index.js +6 -6
  85. package/avatar/avatar.style.scss +23 -6
  86. package/avatar/index.d.ts +25 -2
  87. package/avatar/index.js +33 -32
  88. package/badge.d.ts +1 -1
  89. package/badge.js +1 -1
  90. package/badge.view.d.ts +8 -0
  91. package/brush-range/_brush-range.scss +55 -49
  92. package/brush-range/component.d.ts +1 -3
  93. package/brush-range/component.js +28 -28
  94. package/buttons/delete-button.js +1 -1
  95. package/buttons/delete-button.style.scss +6 -2
  96. package/buttons/remove-button.d.ts +1 -1
  97. package/buttons/remove-button.js +2 -2
  98. package/buttons/remove-button.style.scss +1 -1
  99. package/buttons/svg-button.d.ts +1 -1
  100. package/buttons/svg-button.js +17 -17
  101. package/calendar/_calendar.scss +21 -25
  102. package/calendar/calendar.js +1 -1
  103. package/calendar/day.js +2 -2
  104. package/calendar/header.js +2 -3
  105. package/calendar/index.js +3 -3
  106. package/calendar/model.js +1 -1
  107. package/calendar/month-grid.js +2 -2
  108. package/calendar/translations.js +1 -1
  109. package/calendar/year-grid.js +2 -2
  110. package/cell-input.js +1 -1
  111. package/cell-input.scss +3 -7
  112. package/cell-visuals/badge.style.scss +6 -3
  113. package/cell-visuals/bar-chart.style.scss +2 -1
  114. package/cell-visuals/column-type.style.css +12 -0
  115. package/cell-visuals/index.js +1 -1
  116. package/cell-visuals/progress-line-value.renderer.style.scss +4 -2
  117. package/cell-visuals/progress-line.style.scss +1 -4
  118. package/cell-visuals/sparkline.style.scss +2 -1
  119. package/cell-visuals/timeline.style.css +4 -2
  120. package/checkbox/checkbox.scss +6 -24
  121. package/checkbox/index.js +1 -1
  122. package/choice-chips/index.d.ts +3 -1
  123. package/choice-chips/index.js +1 -1
  124. package/color-palette/built-in-palettes.js +1 -1
  125. package/color-palette/chart-palettes.js +1 -1
  126. package/color-palette/color-palette.js +1 -1
  127. package/color-palette/color-palette.style.scss +88 -25
  128. package/color-palette/color-picker.constants.js +1 -1
  129. package/color-palette/color-picker.js +2 -2
  130. package/color-palette/color-picker.style.scss +23 -10
  131. package/color-palette/common-palettes.d.ts +1 -1
  132. package/color-palette/common-palettes.js +2 -2
  133. package/color-palette/gantt-palettes.js +1 -1
  134. package/color-palette/native.d.ts +15 -2
  135. package/color-palette/palette.js +1 -1
  136. package/color-palette/pivot-palettes.js +1 -1
  137. package/color-palette/platform-palettes.js +1 -1
  138. package/color-palette/pro-palettes.js +1 -1
  139. package/color-palette/scheduler-palettes.js +1 -1
  140. package/component-catalog.d.ts +9 -7
  141. package/configurator-actions.d.ts +67 -0
  142. package/configurator-actions.js +1 -0
  143. package/configurator-aggregation-list.d.ts +14 -0
  144. package/configurator-aggregation-list.js +63 -0
  145. package/configurator-drop-zone.d.ts +39 -0
  146. package/configurator-drop-zone.js +66 -0
  147. package/configurator-field-icon.d.ts +10 -0
  148. package/configurator-field-icon.js +1 -0
  149. package/configurator-focus.d.ts +4 -0
  150. package/configurator-focus.js +39 -0
  151. package/configurator-sections.d.ts +42 -0
  152. package/configurator-sections.js +71 -0
  153. package/control-attributes.js +1 -1
  154. package/control-presentation.d.ts +8 -2
  155. package/control-presentation.js +25 -20
  156. package/controls.d.ts +12 -2
  157. package/controls.js +4 -3
  158. package/core/anchored-popover.js +1 -1
  159. package/core/control-id.js +1 -1
  160. package/core/editor-popup-position.d.ts +6 -2
  161. package/core/editor-popup.d.ts +4 -0
  162. package/core/editor-popup.js +1 -1
  163. package/core/motion.js +1 -1
  164. package/core/popover-controller.d.ts +35 -0
  165. package/core/popover-controller.js +102 -0
  166. package/core/popup-ownership.d.ts +2 -0
  167. package/core/selection-list-tooltips.d.ts +2 -0
  168. package/core/title-tooltip.d.ts +2 -0
  169. package/core/tooltip-session.d.ts +29 -0
  170. package/core/tooltip-surface.d.ts +13 -0
  171. package/core/tooltip-text.d.ts +6 -0
  172. package/core/tooltip.d.ts +35 -0
  173. package/core/top-layer-popup.d.ts +4 -0
  174. package/core/top-layer-popup.js +1 -23
  175. package/date-time/attach.d.ts +1 -1
  176. package/date-time/date-control.d.ts +1 -1
  177. package/date-time/field.d.ts +4 -2
  178. package/date-time/index.js +1 -1
  179. package/date-time/style.scss +239 -36
  180. package/date-time/time-selection.d.ts +3 -1
  181. package/date-time/types.d.ts +5 -1
  182. package/dialog/dialog-action-footer.d.ts +17 -2
  183. package/dialog/dialog.dom.d.ts +15 -2
  184. package/dialog/dialog.dom.js +9 -9
  185. package/dialog/dialog.drag.js +1 -1
  186. package/dialog/dialog.parts.d.ts +1 -1
  187. package/dialog/dialog.parts.js +1 -1
  188. package/dialog/dialog.preact.js +1 -1
  189. package/distribution-chart/_distribution-chart.scss +113 -77
  190. package/distribution-chart/area-chart.js +2 -2
  191. package/distribution-chart/bar-chart.js +2 -2
  192. package/distribution-chart/chart-frame.d.ts +1 -1
  193. package/distribution-chart/index.d.ts +1 -1
  194. package/distribution-chart/index.js +1 -1
  195. package/distribution-chart/line-chart.js +2 -2
  196. package/dropdown/content.js +1 -1
  197. package/dropdown/control.js +1 -1
  198. package/dropdown/dropdown.service.js +1 -1
  199. package/dropdown/dropdown.types.d.ts +1 -1
  200. package/dropdown/editor-dropdown.style.scss +19 -9
  201. package/dropdown/index.js +2 -2
  202. package/dropdown/lookup-field.d.ts +5 -0
  203. package/dropdown/lookup-field.js +4 -3
  204. package/dropdown/popup.d.ts +2 -2
  205. package/dropdown/popup.js +1 -1
  206. package/duration/index.js +1 -1
  207. package/editor-actions.js +2 -2
  208. package/editor-layout/index.d.ts +4 -4
  209. package/editor-layout/index.js +40 -35
  210. package/editor-layout/style.scss +82 -18
  211. package/favicon.svg +9 -0
  212. package/field-configurator.d.ts +39 -1
  213. package/field-configurator.js +4 -170
  214. package/field-expansion.d.ts +9 -0
  215. package/field-reorder.hook.js +1 -1
  216. package/field-reorder.js +1 -1
  217. package/filter/filters/slider/_single-slider.scss +57 -38
  218. package/filter/filters/slider/_slider.scss +41 -33
  219. package/filter/filters/slider/component.js +1 -1
  220. package/filter/filters/slider/control.js +3 -1
  221. package/filter/filters/slider/inputs.js +1 -1
  222. package/filter/filters/slider/logic.js +1 -1
  223. package/filter/filters/slider/preact.js +1 -1
  224. package/filter/filters/slider/runtime.js +50 -23
  225. package/filter/filters/slider/single.js +2 -2
  226. package/filter-badge.js +2 -2
  227. package/filter-controls.d.ts +0 -1
  228. package/filter-controls.js +6 -7
  229. package/form-controls/index.d.ts +10 -2
  230. package/form-controls/index.js +7 -7
  231. package/form-controls/presentation.d.ts +1 -1
  232. package/form-controls/presentation.js +13 -13
  233. package/formatting/index.d.ts +1 -1
  234. package/formatting/index.js +26 -25
  235. package/formatting/styles.scss +14 -57
  236. package/framework.js +228 -225
  237. package/history-controls.js +27 -1
  238. package/html-controls.js +1 -1
  239. package/icon-toolbar.d.ts +62 -0
  240. package/icon-toolbar.js +1 -0
  241. package/icons/icon.d.ts +1 -1
  242. package/icons/icon.js +1 -1
  243. package/legend.d.ts +1 -1
  244. package/legend.js +1 -1
  245. package/masked-input/index.js +4 -4
  246. package/native-control.d.ts +1 -2
  247. package/native-control.js +1 -1
  248. package/native-controls.d.ts +54 -2
  249. package/native-styles.css +1 -1
  250. package/native-styles.scss +6 -2
  251. package/native.d.ts +3 -3
  252. package/native.js +48 -45
  253. package/number-input/index.d.ts +1 -1
  254. package/number-input/index.js +1 -1
  255. package/package.json +84 -1
  256. package/pagination.js +12 -12
  257. package/pdf-viewer/controller.js +1 -1
  258. package/pdf-viewer/header.d.ts +1 -1
  259. package/pdf-viewer/index.d.ts +2 -2
  260. package/pdf-viewer/index.js +3 -3
  261. package/pdf-viewer/search-bar.d.ts +1 -1
  262. package/pdf-viewer/status.d.ts +1 -1
  263. package/pdf-viewer/style.scss +203 -42
  264. package/pickers.d.ts +5 -1
  265. package/preact-mount.js +1 -1
  266. package/preact.d.ts +13 -10
  267. package/preact.js +109 -64
  268. package/progress/_bar.scss +9 -3
  269. package/progress/_circular.scss +2 -1
  270. package/progress/bar.js +1 -1
  271. package/progress/circular.js +1 -1
  272. package/progress/range.js +1 -1
  273. package/rating-choice.js +1 -1
  274. package/react-adapter.d.ts +4 -2
  275. package/react-control.d.ts +2 -0
  276. package/react-control.js +3 -3
  277. package/react.d.ts +7 -8
  278. package/react.js +69 -68
  279. package/reorder-list.d.ts +1 -1
  280. package/reorder-list.js +1 -1
  281. package/reorder-list.scss +59 -17
  282. package/resource-picker/resource-picker-avatar.js +1 -1
  283. package/resource-picker/resource-picker-option.js +1 -1
  284. package/resource-picker/resource-picker-popup.js +2 -2
  285. package/resource-picker/resource-picker.js +75 -73
  286. package/resource-picker/resource-picker.scss +62 -34
  287. package/resource-picker/resource-picker.utils.js +1 -1
  288. package/rich-text/engine.d.ts +1 -0
  289. package/rich-text/format-html.d.ts +2 -0
  290. package/rich-text/index.d.ts +4 -0
  291. package/rich-text/index.js +1 -1
  292. package/rich-text/model.d.ts +2 -0
  293. package/rich-text/style.scss +293 -44
  294. package/rich-text/syntax.d.ts +5 -0
  295. package/rich-text/toolbar.d.ts +1 -1
  296. package/rich-text/translations.d.ts +2 -0
  297. package/robots.txt +4 -0
  298. package/search-input/index.js +2 -2
  299. package/search-input/native.d.ts +21 -2
  300. package/segmented-switch/index.js +1 -1
  301. package/select.d.ts +3 -1
  302. package/select.js +1 -1
  303. package/selection-list.d.ts +1 -0
  304. package/selection-list.js +3 -1
  305. package/status-feedback/badge.js +2 -2
  306. package/status-feedback/exit-snapshot.js +5 -5
  307. package/status-feedback/header.js +2 -2
  308. package/status-feedback/icons.js +1 -1
  309. package/status-feedback/index.js +1 -1
  310. package/status-feedback/item.js +2 -2
  311. package/status-feedback/motion.js +1 -1
  312. package/status-feedback/placement.js +1 -1
  313. package/status-feedback/popover.js +5 -5
  314. package/status-feedback/render.js +1 -1
  315. package/status-feedback/status-feedback.scss +124 -35
  316. package/styles/_activity-message.scss +24 -7
  317. package/styles/_alert.scss +78 -17
  318. package/styles/_cell-editor-frame.scss +11 -0
  319. package/styles/_compositions.scss +400 -80
  320. package/styles/_control.scss +30 -8
  321. package/styles/_disclosure.scss +15 -5
  322. package/styles/_editor-counter.scss +16 -6
  323. package/styles/_editor-slider.scss +8 -4
  324. package/styles/_field-configurator.scss +321 -23
  325. package/styles/_fields-grid.scss +49 -0
  326. package/styles/_filter-controls.scss +10 -2
  327. package/styles/_icon-action.scss +48 -15
  328. package/styles/_loading.scss +12 -3
  329. package/styles/_motion.scss +32 -9
  330. package/styles/_palette.scss +0 -24
  331. package/styles/_primitives.scss +369 -110
  332. package/styles/_theme.scss +130 -86
  333. package/styles/_thresholds.scss +28 -25
  334. package/styles/_time-grid.scss +8 -3
  335. package/styles/_tokens.scss +6 -1
  336. package/styles/color-roles.js +1 -1
  337. package/styles/configurator-actions.scss +241 -0
  338. package/styles/pagination.css +213 -0
  339. package/styles/{legacy-rating.css → rating.css} +8 -3
  340. package/styles.css +1 -1
  341. package/styles.scss +3 -5
  342. package/surfaces.d.ts +38 -2
  343. package/surfaces.js +37 -134
  344. package/svelte/UiComponent.svelte +44 -11
  345. package/svelte-control.js +1 -1
  346. package/svelte.d.ts +1 -1
  347. package/svelte.js +5 -5
  348. package/switch/index.js +16 -15
  349. package/time-grid.d.ts +0 -1
  350. package/time-grid.js +39 -38
  351. package/timeline-track/_style.scss +96 -24
  352. package/timeline-track/index.js +3 -3
  353. package/timeline-track/model.js +1 -1
  354. package/ui.css +1 -1
  355. package/view-switcher.d.ts +23 -0
  356. package/vue-badge.js +1 -1
  357. package/vue-control.js +1 -1
  358. package/vue-segmented-switch.js +1 -1
  359. package/vue.d.ts +29 -32
  360. package/vue.js +118 -123
  361. package/_chunks/chart-frame-Cmc7xU1i.js +0 -130
  362. package/_chunks/choice-chips-CHQTUdLs.js +0 -110
  363. package/_chunks/color-picker-CudqPYZo.js +0 -138
  364. package/_chunks/control-AHKXD5Eu.js +0 -93
  365. package/_chunks/control-tooltip-uscKfAnV.js +0 -100
  366. package/_chunks/controls-DsNi8V8I.js +0 -630
  367. package/_chunks/dialog.parts-CKGkC5zP.js +0 -134
  368. package/_chunks/editor-popup-WDdtVDNA.js +0 -81
  369. package/_chunks/history-controls-B3u3INEK.js +0 -27
  370. package/_chunks/mount-DQ1cpppK.js +0 -257
  371. package/_chunks/native-control-C_yok8_-.js +0 -605
  372. package/_chunks/request-trail-DSlFix6i.js +0 -618
  373. package/_chunks/rich-text-CH7gIqOS.js +0 -636
  374. package/_shared/data-query/binding.d.ts +0 -30
  375. package/_shared/data-query/blocks.d.ts +0 -30
  376. package/_shared/data-query/commands.d.ts +0 -47
  377. package/_shared/data-query/contracts.d.ts +0 -106
  378. package/_shared/data-query/cursor-reader.d.ts +0 -25
  379. package/_shared/data-query/direct-binding.d.ts +0 -3
  380. package/_shared/data-query/index.d.ts +0 -23
  381. package/_shared/data-query/infinite-binding.d.ts +0 -18
  382. package/_shared/data-query/keys.d.ts +0 -9
  383. package/_shared/data-query/limiter.d.ts +0 -12
  384. package/_shared/data-query/load-options.d.ts +0 -25
  385. package/_shared/data-query/materialize.d.ts +0 -2
  386. package/_shared/data-query/policy.d.ts +0 -14
  387. package/_shared/data-query/provider-queries.d.ts +0 -22
  388. package/_shared/data-query/reader.d.ts +0 -23
  389. package/_shared/data-query/remote-load.d.ts +0 -7
  390. package/_shared/data-query/source.d.ts +0 -40
  391. package/avatar/index.view.d.ts +0 -25
  392. package/color-palette/native.view.d.ts +0 -15
  393. package/control-presentation.view.d.ts +0 -8
  394. package/dialog/dialog-action-footer.view.d.ts +0 -20
  395. package/dialog/dialog.dom.view.d.ts +0 -15
  396. package/form-controls/index.view.d.ts +0 -10
  397. package/formatting/control-tooltip.d.ts +0 -27
  398. package/native-controls.view.d.ts +0 -54
  399. package/search-input/native.view.d.ts +0 -21
  400. package/styles/legacy-pagination.css +0 -112
  401. package/surfaces.view.d.ts +0 -63
@@ -0,0 +1,134 @@
1
+ import { t as e } from "./jsxRuntime.module-F6UFnpT-.js";
2
+ import { t } from "./title-tooltip-ncldbUwS.js";
3
+ import { n, t as r } from "./arrow-up-Cw8hW9vp.js";
4
+ import { t as i } from "./rotate-left-BF6G883o.js";
5
+ import { t as a } from "./plus-CbGRkIGl.js";
6
+ import { t as o } from "./minus-BOAR3A1C.js";
7
+ //#endregion
8
+ //#region package/icon-toolbar.tsx
9
+ var s = {
10
+ plus: a,
11
+ minus: o,
12
+ arrowLeft: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288 480 288c17.7 0 32-14.3 32-32s-14.3-32-32-32l-370.7 0 105.4-105.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z\"/></svg>",
13
+ arrowRight: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l370.7 0-105.4 105.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z\"/></svg>",
14
+ arrowUp: r,
15
+ arrowDown: n,
16
+ reset: i
17
+ }, c = "\n .rv-svg-toolbar-button { cursor: pointer; }\n .rv-svg-toolbar-button[aria-pressed=\"true\"] > rect { fill: currentColor; fill-opacity: .14; }\n .rv-svg-toolbar-button[aria-disabled=\"true\"] { opacity: .4; cursor: default; }\n .rv-svg-toolbar-button:not([aria-disabled=\"true\"]):hover > rect { fill: currentColor; fill-opacity: .1; }\n .rv-svg-toolbar-button:focus-visible { outline: none; }\n .rv-svg-toolbar-button:focus-visible > rect { stroke: currentColor; stroke-width: 2; }\n";
18
+ function l(n) {
19
+ let r = t(n.title ?? n.label, n.onEscape);
20
+ return /* @__PURE__ */ e(u, {
21
+ ...n,
22
+ buttonRef: r
23
+ });
24
+ }
25
+ function u(t) {
26
+ return /* @__PURE__ */ e("g", {
27
+ ref: t.buttonRef,
28
+ ...t.attributes,
29
+ class: "rv-svg-toolbar-button",
30
+ role: "button",
31
+ tabindex: t.enabled ? 0 : -1,
32
+ "aria-label": t.label,
33
+ "aria-disabled": !t.enabled,
34
+ "aria-pressed": t.pressed,
35
+ "data-rv-svg-toolbar-button": t.action,
36
+ onClick: t.onActivate ? () => {
37
+ t.enabled && t.onActivate?.(t.action);
38
+ } : void 0,
39
+ onKeyDown: t.onActivate ? (e) => {
40
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), e.stopPropagation(), t.enabled && t.onActivate?.(t.action));
41
+ } : void 0,
42
+ children: [
43
+ /* @__PURE__ */ e("rect", {
44
+ ref: (e) => {
45
+ e && t.onRectangle?.(e);
46
+ },
47
+ x: t.x,
48
+ y: t.y,
49
+ width: 28,
50
+ height: 28,
51
+ rx: 6,
52
+ fill: "transparent",
53
+ stroke: "transparent"
54
+ }),
55
+ t.icon && /* @__PURE__ */ e("svg", {
56
+ "data-rv-toolbar-icon": "",
57
+ x: t.x + (t.suffixIcon ? 5 : 8),
58
+ y: t.y + 8,
59
+ width: 12,
60
+ height: 12,
61
+ visibility: t.showText ? "hidden" : void 0,
62
+ "aria-hidden": "true",
63
+ focusable: "false",
64
+ fill: "currentColor",
65
+ style: { color: t.foreground ?? (t.pressed ? "var(--rv-ui-accent-text, Highlight)" : "var(--rv-ui-text, CanvasText)") },
66
+ dangerouslySetInnerHTML: { __html: t.icon }
67
+ }),
68
+ t.suffixIcon && /* @__PURE__ */ e("svg", {
69
+ x: t.x + 18,
70
+ y: t.y + 12,
71
+ width: 6,
72
+ height: 8,
73
+ "aria-hidden": "true",
74
+ focusable: "false",
75
+ fill: "currentColor",
76
+ style: { color: t.foreground ?? (t.pressed ? "var(--rv-ui-accent-text, Highlight)" : "var(--rv-ui-text, CanvasText)") },
77
+ dangerouslySetInnerHTML: { __html: t.suffixIcon }
78
+ }),
79
+ /* @__PURE__ */ e("text", {
80
+ visibility: t.icon && !t.showText ? "hidden" : void 0,
81
+ ref: (e) => {
82
+ e && t.onText?.(e);
83
+ },
84
+ x: t.x + 14,
85
+ y: t.y + 19,
86
+ fill: t.foreground ?? "var(--rv-ui-text, currentColor)",
87
+ "font-size": 16,
88
+ "text-anchor": "middle",
89
+ "aria-hidden": "true",
90
+ children: t.text
91
+ })
92
+ ]
93
+ });
94
+ }
95
+ function d({ actions: t, label: n = "Actions", onAction: r, onEscape: i }) {
96
+ let a = Math.max(10, t.length * 33 + 5);
97
+ return /* @__PURE__ */ e("svg", {
98
+ class: "rv-icon-toolbar",
99
+ role: "group",
100
+ "aria-label": n,
101
+ width: a,
102
+ height: 38,
103
+ viewBox: `0 0 ${a} 38`,
104
+ style: {
105
+ color: "var(--rv-ui-accent, Highlight)",
106
+ maxWidth: "100%"
107
+ },
108
+ children: [
109
+ /* @__PURE__ */ e("style", { children: c }),
110
+ /* @__PURE__ */ e("rect", {
111
+ width: a,
112
+ height: 38,
113
+ rx: 12,
114
+ fill: "var(--rv-ui-surface-sunken, transparent)"
115
+ }),
116
+ t.map((t, n) => /* @__PURE__ */ e(l, {
117
+ action: t.id,
118
+ label: t.label,
119
+ title: t.title,
120
+ text: t.text,
121
+ icon: t.icon,
122
+ suffixIcon: t.suffixIcon,
123
+ pressed: t.pressed,
124
+ enabled: !t.disabled,
125
+ x: 5 + n * 33,
126
+ y: 5,
127
+ onActivate: r,
128
+ onEscape: i
129
+ }, t.id))
130
+ ]
131
+ });
132
+ }
133
+ //#endregion
134
+ export { u as a, l as i, d as n, c as r, s as t };
@@ -1,5 +1,5 @@
1
1
  //#endregion
2
- //#region src/status-feedback/icons.ts
2
+ //#region package/status-feedback/icons.ts
3
3
  function e(e, t, n) {
4
4
  let r = n ? "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8-79.3 23.6-137.1 97.1-137.1 184.1 0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256 512 397.4 397.4 512 256 512S0 397.4 0 256c0-116 77.1-213.9 182.9-245.4 16.9-5 34.8 4.6 39.8 21.5z\"/></svg>" : t === "success" ? "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M256 512a256 256 0 1 1 0-512 256 256 0 1 1 0 512zm0-464a208 208 0 1 0 0 416 208 208 0 1 0 0-416zm70.7 121.9c7.8-10.7 22.8-13.1 33.5-5.3 10.7 7.8 13.1 22.8 5.3 33.5L243.4 366.1c-4.1 5.7-10.5 9.3-17.5 9.8-7 .5-13.9-2-18.8-6.9l-55.9-55.9c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l36 36 105.6-145.2z\"/></svg>" : t === "warning" || t === "danger" ? "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M256 512a256 256 0 1 1 0-512 256 256 0 1 1 0 512zm0-192a32 32 0 1 0 0 64 32 32 0 1 0 0-64zm0-192c-18.2 0-32.7 15.5-31.4 33.7l7.4 104c.9 12.6 11.4 22.3 23.9 22.3 12.6 0 23-9.7 23.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z\"/></svg>" : void 0;
5
5
  return r ? e("span", {
@@ -1,4 +1,4 @@
1
- //#region ../dates/src/iso.ts
1
+ //#region internal/dates/src/iso.ts
2
2
  var e = /^\d{4}-\d{2}-\d{2}$/, t = /^\d{4}-\d{2}-\d{2}T/;
3
3
  function n(t) {
4
4
  return e.test(t) ? /* @__PURE__ */ new Date(`${t}T00:00:00Z`) : new Date(t);
@@ -0,0 +1,4 @@
1
+ //#region ../../node_modules/.pnpm/@fortawesome+fontawesome-free@7.3.1/node_modules/@fortawesome/fontawesome-free/svgs/solid/magnifying-glass.svg?raw
2
+ var e = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376C296.3 401.1 253.9 416 208 416 93.1 416 0 322.9 0 208S93.1 0 208 0 416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\"/></svg>";
3
+ //#endregion
4
+ export { e as t };
@@ -0,0 +1,4 @@
1
+ //#region ../../node_modules/.pnpm/@fortawesome+fontawesome-free@7.3.1/node_modules/@fortawesome/fontawesome-free/svgs/solid/minus.svg?raw
2
+ var e = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32z\"/></svg>";
3
+ //#endregion
4
+ export { e as t };
@@ -1,4 +1,4 @@
1
- import { a as e, c as t, o as n, r, t as i } from "./iso-B0YHBK7m.js";
1
+ import { a as e, c as t, o as n, r, t as i } from "./iso-CJQl2kmq.js";
2
2
  var a = 864e5;
3
3
  function o(e, o) {
4
4
  let s = t(e);
@@ -14,7 +14,7 @@ function l() {
14
14
  return i(/* @__PURE__ */ new Date());
15
15
  }
16
16
  //#endregion
17
- //#region ../dates/src/display-calendar.ts
17
+ //#region internal/dates/src/display-calendar.ts
18
18
  var u = /* @__PURE__ */ new Map();
19
19
  function d(e, t, n) {
20
20
  let r = JSON.stringify([
@@ -81,7 +81,7 @@ function v(t, n = 1, r = 4, i = "gregory") {
81
81
  return t < a(c) ? c = h(c, -12, i) : t >= a(h(c, 12, i)) && (c = h(c, 12, i)), Math.floor(s(a(c), t) / 7) + 1;
82
82
  }
83
83
  //#endregion
84
- //#region src/calendar/model.ts
84
+ //#region package/calendar/model.ts
85
85
  function y(t, n, r = !0, i = "gregory") {
86
86
  let a = m(t, i), s = o(a, -((e(a) - n + 7) % 7)), c = g(a, i), l = [];
87
87
  for (let e = s; e <= c || l.length % 7; e = o(e, 1)) l.push(e);
@@ -0,0 +1,267 @@
1
+ import { i as e, r as t } from "./preact.module-BBM36DnO.js";
2
+ import { c as n, i as r, r as i, t as a } from "./hooks.module-CG3gN83z.js";
3
+ import { E as o, _ as s, a as c, c as l, i as u, m as d, n as f, o as p, p as m, r as h, t as g, u as _, v, y } from "./request-trail-B1zVRPEf.js";
4
+ import { t as b } from "./jsxRuntime.module-F6UFnpT-.js";
5
+ import { n as x } from "./popup-DECYM9FI.js";
6
+ import { p as S, t as C } from "./controls-B3EgM_DS.js";
7
+ import { HistoryControls as w } from "../history-controls.js";
8
+ import { n as T } from "./render-bTk3curw.js";
9
+ //#region package/ai/transcript.ts
10
+ var E = (e) => new TextEncoder().encode(JSON.stringify(e)).byteLength, D = (e) => {
11
+ if (!e) return "";
12
+ if (E(e) <= 16384) return e;
13
+ let t = 0, n = Math.min(e.length, 16384);
14
+ for (; t < n;) {
15
+ let r = Math.ceil((t + n) / 2);
16
+ E(e.slice(0, r) + "…") <= 16384 ? t = r : n = r - 1;
17
+ }
18
+ return /[\uD800-\uDBFF]/.test(e.charAt(t - 1)) && t--, e.slice(0, t) + "…";
19
+ }, O = class {
20
+ messages = [];
21
+ epoch = 0;
22
+ initialized = !1;
23
+ requestId;
24
+ ignoredRequest;
25
+ currentId;
26
+ active = !1;
27
+ lastPhase;
28
+ key = "";
29
+ sequence = 0;
30
+ update(e) {
31
+ if (this.initialized ||= (this.epoch = e.chatKey ?? 0, !0), (e.chatKey ?? 0) !== this.epoch) {
32
+ this.epoch = e.chatKey ?? 0, this.messages = [], this.requestId = void 0, this.ignoredRequest = e.request?.id, this.currentId = void 0, this.active = !1, this.key = "", this.lastPhase = void 0;
33
+ return;
34
+ }
35
+ if (e.phase === "idle" || e.request?.id === this.ignoredRequest && this.ignoredRequest !== void 0) return;
36
+ let t = e.request, n = !!t && t.id !== this.requestId, r = e.phase === "completed" && e.result && E(e.result) <= 16384 ? structuredClone(e.result) : void 0, i = {
37
+ text: D(e.message),
38
+ phase: e.phase,
39
+ details: e.phase === "completed" && !r && e.resultDetails ? D(e.resultDetails) : void 0,
40
+ pending: !!e.pendingAction,
41
+ result: r
42
+ }, a = JSON.stringify([t?.id, i]);
43
+ if (!n && a === this.key || !n && !i.text && !i.pending) return;
44
+ let o = this.messages.find((e) => e.id === this.currentId), s = this.lastPhase === "completed" && e.phase === "understanding" && o?.from === "assistant", c = o?.from === "system" && o.phase === "completed" && (e.phase === "applying" || e.phase === "completed");
45
+ if (n) {
46
+ this.requestId = t.id, this.ignoredRequest = void 0;
47
+ let e = "turn:" + ++this.sequence;
48
+ this.currentId = e + ":assistant", this.messages = [
49
+ ...this.messages,
50
+ {
51
+ id: e + ":user",
52
+ group: e,
53
+ from: "user",
54
+ text: D(t.prompt)
55
+ },
56
+ {
57
+ id: this.currentId,
58
+ group: e,
59
+ from: "assistant",
60
+ ...i
61
+ }
62
+ ];
63
+ } else if ((this.active || s || c) && o) this.messages = this.messages.map((e) => e.id === this.currentId ? {
64
+ ...e,
65
+ ...i
66
+ } : e);
67
+ else {
68
+ let e = "system:" + ++this.sequence;
69
+ this.currentId = e, this.messages = [...this.messages, {
70
+ id: e,
71
+ group: e,
72
+ from: "system",
73
+ ...i
74
+ }];
75
+ }
76
+ for (this.active = e.phase === "understanding" || e.phase === "applying" || !!e.pendingAction, this.lastPhase = e.phase, this.key = a; this.messages.length > 50 || E(this.messages) > 65536;) {
77
+ let e = this.messages[0].group;
78
+ this.messages = this.messages.filter((t) => t.group !== e);
79
+ }
80
+ }
81
+ clear() {
82
+ this.messages = [], this.requestId = void 0, this.currentId = void 0, this.active = !1, this.key = "";
83
+ }
84
+ };
85
+ //#endregion
86
+ //#region package/ai/mount.tsx
87
+ function k(E, D) {
88
+ let k = (e) => o(e, D.translations), A = !1, j = D.suggestions ?? [], M, N = v(D.promptHistory?.items ?? []), P = new O(), F = D.mode === "chat", I = [], L = 0, R = !1, z = "";
89
+ function B(e) {
90
+ if (e.phase === "idle" || !e.message || e.pendingAction) return;
91
+ let t = e.phase === "understanding" || e.phase === "applying", n = JSON.stringify([
92
+ e.phase,
93
+ e.message,
94
+ e.matchedRows,
95
+ e.resultDetails
96
+ ]);
97
+ if (n === z) return;
98
+ let r = I.at(-1), i = {
99
+ id: R && r ? r.id : String(++L),
100
+ title: e.message,
101
+ busy: t,
102
+ tone: e.phase === "error" ? "danger" : e.phase === "completed" ? "success" : "neutral",
103
+ description: e.phase === "completed" && e.matchedRows !== void 0 ? D.countLabel?.(e.matchedRows) ?? k("{count} matching rows").replace("{count}", e.matchedRows.toLocaleString()) : void 0,
104
+ detail: e.phase === "completed" && !e.result ? e.resultDetails : void 0
105
+ };
106
+ I = [...R && r ? I.slice(0, -1) : I, i].slice(-50), R = t, z = n;
107
+ }
108
+ function V({ state: t }) {
109
+ let [o, O] = r(""), [A, M] = r(N), [L, R] = r(!1), z = a();
110
+ i(() => {
111
+ O(""), z.current = void 0;
112
+ }, [t.chatKey]);
113
+ let B = t.phase === "understanding" || t.phase === "applying", V = !!t.pendingAction, U = t.steps ?? [], W = D.showRequestHistory ?? !F, G = a(!1);
114
+ n(() => {
115
+ G.current && !V && !B && E.querySelector("textarea")?.focus(), G.current = V || B && G.current;
116
+ }, [V, B]), n(() => {
117
+ if (B || V || t.phase === "idle" || z.current === void 0) return;
118
+ let e = z.current;
119
+ z.current = void 0, t.phase === "completed" && O((t) => t.trim() === e ? "" : t);
120
+ }, [t]);
121
+ let K = (e) => {
122
+ z.current = e.trim(), D.promptHistory && (N = v([...N, e]), M(N), D.promptHistory.onChange?.([...N])), D.onSubmit(e);
123
+ }, ee = /* @__PURE__ */ b(s, {
124
+ maxVisible: D.maxVisibleSuggestions,
125
+ items: t.choices?.length ? t.choices : t.suggestions?.length ? t.suggestions : j,
126
+ onSelect: (e) => {
127
+ B || V || (O(e), K(e));
128
+ },
129
+ disabled: B || V
130
+ }), q = (!!o || !!t.request || !!t.message || U.length > 0 || P.messages.length > 0 || I.length > 0) && (D.showNewConversation ?? D.showClearChat ?? !0) && D.onClearChat && /* @__PURE__ */ b(S, {
131
+ label: k("New conversation"),
132
+ icon: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Free 7.3.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2026 Fonticons, Inc. --><path fill=\"currentColor\" d=\"M471.6 21.7c-21.9-21.9-57.3-21.9-79.2 0L368 46.1 465.9 144 490.3 119.6c21.9-21.9 21.9-57.3 0-79.2L471.6 21.7zm-299.2 220c-6.1 6.1-10.8 13.6-13.5 21.9l-29.6 88.8c-2.9 8.6-.6 18.1 5.8 24.6s15.9 8.7 24.6 5.8l88.8-29.6c8.2-2.7 15.7-7.4 21.9-13.5L432 177.9 334.1 80 172.4 241.7zM96 64C43 64 0 107 0 160L0 416c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 96c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l96 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 64z\"/></svg>",
133
+ size: "compact",
134
+ disabled: B || V,
135
+ onClick: () => {
136
+ D.onClearChat?.(), E.querySelector("textarea")?.focus();
137
+ }
138
+ }), J = F && t.canClearChart && D.onClearChart && /* @__PURE__ */ b(C, {
139
+ size: "compact",
140
+ variant: "ghost",
141
+ disabled: B || V || t.viewSwitching,
142
+ onClick: () => {
143
+ D.onClearChart?.(), E.querySelector("textarea")?.focus();
144
+ },
145
+ children: k("Clear chart")
146
+ }), Y = /* @__PURE__ */ b(e, { children: [J, q] }), X = /* @__PURE__ */ b(h, {
147
+ label: D.prompt?.label ?? "Ask AI to change this view",
148
+ ...D.prompt,
149
+ value: o,
150
+ onValueChange: O,
151
+ onSubmit: K,
152
+ onStop: D.onStop,
153
+ busy: B,
154
+ promptHistory: D.promptHistory ? A : void 0,
155
+ disabled: V,
156
+ hint: W && U.length ? "" : D.prompt?.hint,
157
+ footer: ee,
158
+ actions: W ? /* @__PURE__ */ b(g, {
159
+ ...D.trail,
160
+ items: U,
161
+ showClear: !1,
162
+ onRemove: (e) => D.onRemoveStep?.(e),
163
+ onEmpty: () => E.querySelector("textarea")?.focus(),
164
+ disabled: B || V,
165
+ removalsDisabled: !D.onRemoveStep || t.canEditSteps === !1,
166
+ changedMessage: !B && U.some((e) => e.removable !== !1) && t.canEditSteps === !1 ? D.trail?.changedMessage ?? "The view changed manually. Start a new request to continue." : void 0
167
+ }) : void 0
168
+ }), Z = t.pendingAction && /* @__PURE__ */ b(d, {
169
+ ...t.pendingAction,
170
+ disabled: B || !D.onApplyAction,
171
+ onApply: () => D.onApplyAction?.(),
172
+ onCancel: () => D.onCancelAction?.()
173
+ }), Q = /* @__PURE__ */ b("div", {
174
+ class: "rv-ai-result-actions",
175
+ children: (D.onUndoData || D.onRedoData) && /* @__PURE__ */ b(w, {
176
+ onUndo: D.onUndoData,
177
+ onRedo: D.onRedoData,
178
+ canUndo: !B && !V && !!t.canUndoData,
179
+ canRedo: !B && !V && !!t.canRedoData,
180
+ undoLabel: k("Undo data change"),
181
+ redoLabel: k("Redo data change"),
182
+ label: k("Data history")
183
+ })
184
+ }), $ = D.showHistoryControls === !1 || !D.onUndoData && !D.onRedoData ? null : D.controlsMountTo ? x(Q, D.controlsMountTo) : Q;
185
+ return /* @__PURE__ */ b(m, {
186
+ layout: D.layout,
187
+ translations: D.translations,
188
+ label: D.label,
189
+ busy: B,
190
+ footer: D.footer,
191
+ children: F ? /* @__PURE__ */ b(f, {
192
+ className: "rv-ai-mounted-chat",
193
+ children: [
194
+ (J || q) && /* @__PURE__ */ b("div", {
195
+ class: "rv-ai-chat-actions",
196
+ children: Y
197
+ }),
198
+ /* @__PURE__ */ b(u, {
199
+ busy: B,
200
+ children: [!P.messages.length && D.emptyState && /* @__PURE__ */ b(c, { ...D.emptyState }), P.messages.map((e) => /* @__PURE__ */ b(p, {
201
+ from: e.from,
202
+ isStreaming: e.phase === "understanding" || e.phase === "applying",
203
+ children: [
204
+ e.from === "user" ? /* @__PURE__ */ b(l, { children: e.text }) : e.phase === "preview" && e.pending && e.id === P.messages.at(-1)?.id && t.pendingAction ? null : /* @__PURE__ */ b(l, { children: e.phase === "understanding" || e.phase === "applying" || e.phase === "error" || e.phase === "cancelled" ? /* @__PURE__ */ b(_, {
205
+ title: e.text,
206
+ status: e.phase === "understanding" || e.phase === "applying" ? "running" : e.phase === "error" ? "error" : "cancelled"
207
+ }) : e.text }),
208
+ e.result ? /* @__PURE__ */ b(y, {
209
+ result: e.result,
210
+ renderTable: D.renderTable
211
+ }) : e.details && /* @__PURE__ */ b("pre", {
212
+ class: "rv-ai-chat-result",
213
+ children: e.details
214
+ }),
215
+ e.id === P.messages.at(-1)?.id && e.pending && Z
216
+ ]
217
+ }, e.id))]
218
+ }),
219
+ X,
220
+ $
221
+ ]
222
+ }) : /* @__PURE__ */ b(e, { children: [
223
+ (J || q) && /* @__PURE__ */ b("div", {
224
+ class: "rv-ai-chat-actions",
225
+ children: Y
226
+ }),
227
+ X,
228
+ Z,
229
+ t.phase === "completed" && t.result && /* @__PURE__ */ b(y, {
230
+ result: t.result,
231
+ renderTable: D.renderTable
232
+ }),
233
+ !!I.length && /* @__PURE__ */ b(T, {
234
+ className: "rv-ai-activity",
235
+ title: k("Activity"),
236
+ compact: !0,
237
+ autoDismissMs: D.activityDurationMs,
238
+ onDismissItem: (e) => {
239
+ I = I.filter((t) => t.id !== e), H();
240
+ },
241
+ collapsed: L,
242
+ onCollapsedChange: R,
243
+ collapseLabel: k("Collapse activity"),
244
+ expandLabel: k("Expand activity"),
245
+ items: I
246
+ }),
247
+ $
248
+ ] })
249
+ });
250
+ }
251
+ let H = () => {
252
+ !A && M && t(/* @__PURE__ */ b(V, { state: M }), E);
253
+ };
254
+ return {
255
+ update(e) {
256
+ M && M.chatKey !== e.chatKey && (I = [], z = "", R = !1), F ? P.update(e) : B(e), M = e, H();
257
+ },
258
+ setSuggestions(e) {
259
+ j = [...e], H();
260
+ },
261
+ destroy() {
262
+ A || (A = !0, N = [], P.clear(), t(null, E));
263
+ }
264
+ };
265
+ }
266
+ //#endregion
267
+ export { k as t };
@@ -3,7 +3,7 @@ import { t } from "./jsxRuntime.module-F6UFnpT-.js";
3
3
  import { createPreactElement as n } from "../preact-mount.js";
4
4
  import { controlClassName as r } from "../control-attributes.js";
5
5
  import { renderControl as i } from "../control-presentation.js";
6
- //#region src/search-input/native.view.tsx
6
+ //#region package/search-input/native.tsx
7
7
  function a(e, t) {
8
8
  let { shortcut: n, hideIcon: a, inputAttributes: o = {} } = t;
9
9
  return e("div", {