@revolist/ui 4.0.2-rc → 4.0.2

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 (343) hide show
  1. package/LICENSE +21 -0
  2. package/MIGRATION.md +36 -0
  3. package/OWNERSHIP.md +32 -32
  4. package/README.md +405 -265
  5. package/_button.scss +6 -2
  6. package/_chunks/arrow-up-Cw8hW9vp.js +4 -0
  7. package/_chunks/calculator-CDWOuAcp.js +4 -0
  8. package/_chunks/{calendar-CpaUK7w1.js → calendar-CgXQgkga.js} +28 -18
  9. package/_chunks/chart-frame-hcOlnQ1K.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-SkllS5Kl.js +126 -0
  13. package/_chunks/clock-BOhPNlW3.js +4 -0
  14. package/_chunks/{color-palette-BBMFmUNA.js → color-palette-DMJUChWC.js} +20 -22
  15. package/_chunks/{color-picker-D90Jg-M8.js → color-picker-BpCTuIdm.js} +77 -72
  16. package/_chunks/{component-YDcfoOLz.js → component-CfeHXgIw.js} +301 -282
  17. package/_chunks/{component-metadata-BENbgTjU.js → component-metadata-BKd7U8OW.js} +0 -12
  18. package/_chunks/configurator-actions-DnStE6Yl.js +155 -0
  19. package/_chunks/configurator-field-icon-CmcM_sPs.js +53 -0
  20. package/_chunks/control-Dcrjsunl.js +118 -0
  21. package/_chunks/{controls-DIum-E66.js → controls-B_6NJarZ.js} +217 -182
  22. package/_chunks/{date-control-BJSzu79z.js → date-control-C4h4m75W.js} +1 -1
  23. package/_chunks/{date-time-BxPJusp9.js → date-time-CTOSbzb0.js} +344 -307
  24. package/_chunks/{delete-button-Bblyah10.js → delete-button-CW9vjLnk.js} +6 -6
  25. package/_chunks/dialog.parts-3w5FR06n.js +131 -0
  26. package/_chunks/{duration-87U2EoMS.js → duration-Bf2OS1V5.js} +19 -18
  27. package/_chunks/editor-popup-ByU7qiub.js +82 -0
  28. package/_chunks/field-configurator-D5dZRhDe.js +288 -0
  29. package/_chunks/field-context-D57PnBbH.js +5 -0
  30. package/_chunks/{framework-mount-C-Zwm44H.js → framework-mount-Bk4O_T7T.js} +1 -1
  31. package/_chunks/icon-toolbar-DSjOdwM7.js +134 -0
  32. package/_chunks/magnifying-glass-CvrTDSkB.js +4 -0
  33. package/_chunks/minus-BOAR3A1C.js +4 -0
  34. package/_chunks/mount-BRdcG60g.js +267 -0
  35. package/_chunks/{native.view-ByyZ1CT5.js → native-Blr3byjO.js} +1 -1
  36. package/_chunks/native-control-B_fVA5bL.js +649 -0
  37. package/_chunks/{number-input-BeIadZuL.js → number-input-CmM6_2vR.js} +7 -7
  38. package/_chunks/{picker-DpP7iQLA.js → picker-DTqET-2W.js} +2 -2
  39. package/_chunks/plus-CbGRkIGl.js +4 -0
  40. package/_chunks/popover-controller-D-AvKQ7B.js +102 -0
  41. package/_chunks/popup-C35Isk7p.js +378 -0
  42. package/_chunks/{rating-choice-Ca8ZBty3.js → rating-choice-C-6wcb9U.js} +1 -1
  43. package/_chunks/render-m5eMMwFR.js +83 -0
  44. package/_chunks/{reorder-list-Cc3KmfAN.js → reorder-list-DIl1gkV6.js} +1 -1
  45. package/_chunks/request-trail-DrhdpWiH.js +762 -0
  46. package/_chunks/rich-text-BnilBbhU.js +842 -0
  47. package/_chunks/rotate-left-BF6G883o.js +4 -0
  48. package/_chunks/rotate-right-Iha5ScJ1.js +4 -0
  49. package/_chunks/selection-list-tooltips-C5oMJe26.js +42 -0
  50. package/_chunks/title-tooltip-Cw6LOZhb.js +11 -0
  51. package/_chunks/tooltip-D4xkio5G.js +54 -0
  52. package/_chunks/tooltip-owner-DjdvqKzz.js +19 -0
  53. package/_chunks/tooltip-session-B6X6x8G_.js +110 -0
  54. package/_chunks/tooltip-text-BXsUEmBH.js +12 -0
  55. package/_chunks/top-layer-popup-CNSDdfJV.js +59 -0
  56. package/_dialog.scss +55 -21
  57. package/_form.scss +71 -21
  58. package/_legend.scss +25 -7
  59. package/_shared/data-query/index.d.ts +2 -2
  60. package/_shared/data-query/load-options.d.ts +2 -2
  61. package/_variables.scss +34 -32
  62. package/_view-switcher.scss +6 -0
  63. package/activity-message.d.ts +1 -1
  64. package/ai/_chat.scss +227 -0
  65. package/ai/_style.scss +170 -39
  66. package/ai/chat.d.ts +65 -0
  67. package/ai/components.d.ts +34 -5
  68. package/ai/index.d.ts +3 -0
  69. package/ai/index.js +3 -3
  70. package/ai/mount.d.ts +59 -6
  71. package/ai/prompt-history.d.ts +13 -0
  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 +27 -0
  80. package/ai/translations.d.ts +1 -1
  81. package/angular/angular.d.ts +1 -1
  82. package/angular/angular.js +13 -10
  83. package/assignee/assignee.scss +28 -6
  84. package/assignee/index.js +34 -35
  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.view.d.ts +8 -0
  90. package/brush-range/_brush-range.scss +55 -49
  91. package/brush-range/component.d.ts +1 -3
  92. package/brush-range/component.js +27 -27
  93. package/buttons/delete-button.d.ts +2 -1
  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 +1 -1
  98. package/buttons/remove-button.style.scss +1 -1
  99. package/buttons/svg-button.d.ts +2 -1
  100. package/buttons/svg-button.js +19 -19
  101. package/calendar/_calendar.scss +27 -26
  102. package/calendar/calendar.js +1 -1
  103. package/calendar/header.js +1 -2
  104. package/calendar/index.js +2 -2
  105. package/cell-input.scss +3 -7
  106. package/cell-visuals/badge.style.scss +6 -3
  107. package/cell-visuals/bar-chart.style.scss +2 -1
  108. package/cell-visuals/column-type.style.css +12 -0
  109. package/cell-visuals/progress-line-value.renderer.style.scss +4 -2
  110. package/cell-visuals/progress-line.style.scss +1 -4
  111. package/cell-visuals/sparkline.style.scss +2 -1
  112. package/cell-visuals/timeline.style.css +4 -2
  113. package/checkbox/checkbox.scss +6 -24
  114. package/choice-chips/index.d.ts +3 -1
  115. package/choice-chips/index.js +1 -1
  116. package/color-palette/color-palette.js +1 -1
  117. package/color-palette/color-palette.style.scss +88 -25
  118. package/color-palette/color-picker.js +2 -2
  119. package/color-palette/color-picker.style.scss +23 -10
  120. package/color-palette/common-palettes.d.ts +1 -1
  121. package/color-palette/common-palettes.js +1 -1
  122. package/color-palette/native.d.ts +15 -2
  123. package/component-catalog.d.ts +24 -11
  124. package/configurator-actions.d.ts +67 -0
  125. package/configurator-actions.js +1 -0
  126. package/configurator-aggregation-list.d.ts +14 -0
  127. package/configurator-aggregation-list.js +63 -0
  128. package/configurator-drop-zone.d.ts +39 -0
  129. package/configurator-drop-zone.js +66 -0
  130. package/configurator-field-icon.d.ts +10 -0
  131. package/configurator-field-icon.js +1 -0
  132. package/configurator-focus.d.ts +4 -0
  133. package/configurator-focus.js +39 -0
  134. package/configurator-sections.d.ts +42 -0
  135. package/configurator-sections.js +71 -0
  136. package/control-attributes.js +7 -7
  137. package/control-presentation.d.ts +8 -2
  138. package/control-presentation.js +25 -20
  139. package/controls.d.ts +19 -7
  140. package/controls.js +4 -3
  141. package/core/editor-popup-position.d.ts +6 -2
  142. package/core/editor-popup.d.ts +4 -0
  143. package/core/editor-popup.js +1 -1
  144. package/core/popover-controller.d.ts +35 -0
  145. package/core/popup-ownership.d.ts +2 -0
  146. package/core/selection-list-tooltips.d.ts +2 -0
  147. package/core/title-tooltip.d.ts +2 -0
  148. package/core/tooltip-session.d.ts +29 -0
  149. package/core/tooltip-surface.d.ts +13 -0
  150. package/core/tooltip-text.d.ts +6 -0
  151. package/core/tooltip.d.ts +35 -0
  152. package/core/top-layer-popup.d.ts +4 -0
  153. package/core/top-layer-popup.js +1 -23
  154. package/date-time/attach.d.ts +1 -1
  155. package/date-time/date-control.d.ts +1 -1
  156. package/date-time/field.d.ts +3 -2
  157. package/date-time/index.js +1 -1
  158. package/date-time/style.scss +242 -39
  159. package/date-time/time-selection.d.ts +3 -1
  160. package/date-time/types.d.ts +5 -1
  161. package/dialog/dialog-action-footer.d.ts +17 -2
  162. package/dialog/dialog.dom.d.ts +15 -2
  163. package/dialog/dialog.dom.js +3 -3
  164. package/dialog/dialog.parts.d.ts +1 -1
  165. package/dialog/dialog.parts.js +1 -1
  166. package/distribution-chart/_distribution-chart.scss +113 -77
  167. package/distribution-chart/area-chart.js +1 -1
  168. package/distribution-chart/bar-chart.d.ts +5 -2
  169. package/distribution-chart/bar-chart.js +7 -3
  170. package/distribution-chart/chart-frame.d.ts +2 -1
  171. package/distribution-chart/index.d.ts +1 -1
  172. package/distribution-chart/line-chart.js +1 -1
  173. package/dropdown/content.d.ts +2 -1
  174. package/dropdown/content.js +1 -142
  175. package/dropdown/control.d.ts +14 -0
  176. package/dropdown/control.js +1 -0
  177. package/dropdown/control.view.d.ts +6 -0
  178. package/dropdown/dropdown.types.d.ts +5 -1
  179. package/dropdown/editor-dropdown.style.scss +54 -16
  180. package/dropdown/index.d.ts +1 -1
  181. package/dropdown/index.js +3 -4
  182. package/dropdown/lookup-field.d.ts +5 -0
  183. package/dropdown/lookup-field.js +2 -1
  184. package/dropdown/popup.d.ts +2 -2
  185. package/dropdown/popup.js +1 -141
  186. package/duration/index.js +1 -1
  187. package/duration/style.scss +1 -1
  188. package/editor-actions.js +1 -1
  189. package/editor-layout/index.d.ts +4 -4
  190. package/editor-layout/index.js +39 -34
  191. package/editor-layout/style.scss +82 -18
  192. package/field-configurator.d.ts +39 -1
  193. package/field-configurator.js +4 -170
  194. package/field-expansion.d.ts +9 -0
  195. package/fieldset.d.ts +3 -0
  196. package/filter/filters/slider/_single-slider.scss +57 -38
  197. package/filter/filters/slider/_slider.scss +41 -33
  198. package/filter/filters/slider/control.js +2 -0
  199. package/filter/filters/slider/runtime.js +49 -22
  200. package/filter/filters/slider/single.js +1 -1
  201. package/filter-badge.js +1 -1
  202. package/filter-controls.d.ts +0 -1
  203. package/filter-controls.js +9 -10
  204. package/form-controls/field-context.d.ts +5 -0
  205. package/form-controls/index.d.ts +10 -2
  206. package/form-controls/index.js +4 -9
  207. package/form-controls/presentation.d.ts +1 -1
  208. package/form-controls/presentation.js +53 -45
  209. package/formatting/index.d.ts +1 -1
  210. package/formatting/index.js +40 -35
  211. package/formatting/styles.scss +14 -57
  212. package/framework.js +237 -226
  213. package/history-controls.d.ts +14 -0
  214. package/history-controls.js +27 -0
  215. package/icon-toolbar.d.ts +62 -0
  216. package/icon-toolbar.js +1 -0
  217. package/icons/icon.d.ts +1 -1
  218. package/legend.d.ts +1 -1
  219. package/masked-input/index.js +1 -1
  220. package/native-control.d.ts +6 -5
  221. package/native-control.js +3 -26
  222. package/native-controls.d.ts +54 -2
  223. package/native-styles.css +1 -1
  224. package/native-styles.scss +6 -2
  225. package/native.d.ts +3 -3
  226. package/native.js +41 -37
  227. package/number-input/index.d.ts +1 -1
  228. package/number-input/index.js +1 -1
  229. package/package.json +88 -14
  230. package/pagination.d.ts +3 -0
  231. package/pagination.js +50 -40
  232. package/pdf-viewer/header.d.ts +1 -1
  233. package/pdf-viewer/index.d.ts +2 -2
  234. package/pdf-viewer/index.js +1 -1
  235. package/pdf-viewer/search-bar.d.ts +1 -1
  236. package/pdf-viewer/status.d.ts +1 -1
  237. package/pdf-viewer/style.scss +205 -45
  238. package/pickers.d.ts +5 -1
  239. package/preact-mount.js +1 -1
  240. package/preact.d.ts +15 -10
  241. package/preact.js +109 -64
  242. package/progress/_bar.scss +9 -3
  243. package/progress/_circular.scss +2 -1
  244. package/rating-choice.js +1 -1
  245. package/react-adapter.d.ts +4 -2
  246. package/react-control.d.ts +1 -0
  247. package/react.d.ts +20 -11
  248. package/react.js +72 -88
  249. package/reorder-list.d.ts +1 -1
  250. package/reorder-list.js +1 -1
  251. package/reorder-list.scss +59 -17
  252. package/resource-picker/resource-picker-popup.js +1 -1
  253. package/resource-picker/resource-picker.js +73 -71
  254. package/resource-picker/resource-picker.scss +66 -35
  255. package/rich-text/engine.d.ts +17 -19
  256. package/rich-text/format-html.d.ts +2 -0
  257. package/rich-text/index.d.ts +11 -7
  258. package/rich-text/index.js +1 -1
  259. package/rich-text/model.d.ts +6 -3
  260. package/rich-text/render-model.d.ts +4 -5
  261. package/rich-text/style.scss +295 -55
  262. package/rich-text/syntax.d.ts +5 -2
  263. package/rich-text/toolbar.d.ts +6 -6
  264. package/rich-text/translations.d.ts +5 -15
  265. package/search-input/index.js +1 -1
  266. package/search-input/native.d.ts +21 -2
  267. package/select.d.ts +22 -0
  268. package/select.js +1 -0
  269. package/selection-list.d.ts +1 -0
  270. package/selection-list.js +3 -1
  271. package/status-feedback/exit-snapshot.js +1 -1
  272. package/status-feedback/index.js +2 -2
  273. package/status-feedback/popover.js +9 -9
  274. package/status-feedback/render.js +3 -44
  275. package/status-feedback/status-feedback.scss +130 -34
  276. package/status-feedback/types.d.ts +4 -0
  277. package/status-feedback/use-auto-dismiss.d.ts +3 -0
  278. package/styles/_activity-message.scss +24 -7
  279. package/styles/_alert.scss +78 -17
  280. package/styles/_cell-editor-frame.scss +11 -0
  281. package/styles/_compositions.scss +404 -82
  282. package/styles/_control.scss +42 -12
  283. package/styles/_disclosure.scss +15 -5
  284. package/styles/_editor-counter.scss +16 -6
  285. package/styles/_editor-slider.scss +8 -4
  286. package/styles/_field-configurator.scss +321 -23
  287. package/styles/_fields-grid.scss +49 -0
  288. package/styles/_filter-controls.scss +10 -2
  289. package/styles/_icon-action.scss +48 -15
  290. package/styles/_loading.scss +12 -3
  291. package/styles/_motion.scss +32 -9
  292. package/styles/_palette.scss +0 -24
  293. package/styles/_primitives.scss +376 -116
  294. package/styles/_theme.scss +130 -86
  295. package/styles/_thresholds.scss +28 -25
  296. package/styles/_time-grid.scss +8 -3
  297. package/styles/_tokens.scss +6 -1
  298. package/styles/configurator-actions.scss +241 -0
  299. package/styles/pagination.css +213 -0
  300. package/styles/{legacy-rating.css → rating.css} +8 -3
  301. package/styles.css +1 -1
  302. package/styles.scss +3 -5
  303. package/surfaces.d.ts +38 -2
  304. package/surfaces.js +37 -134
  305. package/svelte/UiComponent.server.js +1 -48
  306. package/svelte/UiComponent.svelte +44 -32
  307. package/svelte.d.ts +1 -1
  308. package/svelte.js +33 -68
  309. package/switch/index.js +15 -14
  310. package/time-grid.d.ts +0 -1
  311. package/time-grid.js +38 -37
  312. package/timeline-track/_style.scss +96 -24
  313. package/timeline-track/component.d.ts +5 -1
  314. package/timeline-track/index.js +71 -54
  315. package/timeline-track/model.d.ts +9 -0
  316. package/timeline-track/model.js +10 -1
  317. package/ui.css +1 -1
  318. package/view-switcher.d.ts +23 -0
  319. package/vue.d.ts +51 -35
  320. package/vue.js +149 -178
  321. package/_chunks/chart-frame-BC99KjGa.js +0 -127
  322. package/_chunks/choice-chips-Cs4D-3nH.js +0 -110
  323. package/_chunks/compat.module-DDB2pm9O.js +0 -229
  324. package/_chunks/control-tooltip-ztgmsG7H.js +0 -100
  325. package/_chunks/dialog.parts-DBqo3Qwb.js +0 -134
  326. package/_chunks/dropdown-voWqmwAe.js +0 -357
  327. package/_chunks/editor-popup-D3JdS8l3.js +0 -81
  328. package/_chunks/mount-DZe_6VtR.js +0 -90
  329. package/_chunks/request-trail-IdNiFvKH.js +0 -347
  330. package/_chunks/rich-text-BzI1DyfF.js +0 -477
  331. package/avatar/index.view.d.ts +0 -25
  332. package/color-palette/native.view.d.ts +0 -15
  333. package/control-presentation.view.d.ts +0 -8
  334. package/dialog/dialog-action-footer.view.d.ts +0 -20
  335. package/dialog/dialog.dom.view.d.ts +0 -15
  336. package/form-controls/index.view.d.ts +0 -12
  337. package/formatting/control-tooltip.d.ts +0 -27
  338. package/native-controls.view.d.ts +0 -54
  339. package/react-native-select.d.ts +0 -6
  340. package/search-input/native.view.d.ts +0 -21
  341. package/styles/legacy-pagination.css +0 -112
  342. package/surfaces.view.d.ts +0 -63
  343. package/vue-native-select.d.ts +0 -9
@@ -1,347 +0,0 @@
1
- import { s as e } from "./preact.module-BBM36DnO.js";
2
- import { i as t, r as n, s as r, t as i } from "./hooks.module-CG3gN83z.js";
3
- import { t as a } from "./jsxRuntime.module-F6UFnpT-.js";
4
- import { SvgIcon as o } from "../icons/icon.js";
5
- import { N as s, O as c, m as l, n as u, o as d } from "./controls-DIum-E66.js";
6
- import { createControlId as f } from "../core/control-id.js";
7
- import { t as p } from "./chevron-down-GbplLa6s.js";
8
- import { PopoverController as m } from "../surfaces.js";
9
- import { RemoveButton as h } from "../buttons/remove-button.js";
10
- //#region src/ai/translations.ts
11
- var g = [
12
- "Ask AI to change this view",
13
- "Filter or sort your data…",
14
- "Send",
15
- "Stop",
16
- "Enter to send · Shift+Enter for a new line",
17
- "Suggested requests",
18
- "AI view assistant",
19
- "View steps",
20
- "Clear all",
21
- "Restore the starting view",
22
- "Restore previous view",
23
- "Reset view",
24
- "The view changed manually. Start a new request to continue.",
25
- "Remove request: {label}",
26
- "{count} step",
27
- "{count} steps",
28
- "{count} applied request",
29
- "{count} applied requests",
30
- "{count} matching rows"
31
- ];
32
- function _(e, t = {}, n = {}) {
33
- return (t[e] ?? e).replace(/\{(\w+)\}/g, (e, t) => Object.hasOwn(n, t) ? String(n[t]) : e);
34
- }
35
- //#endregion
36
- //#region src/ai/translation-context.tsx
37
- var v = e({});
38
- function y({ translations: e, children: t }) {
39
- return /* @__PURE__ */ a(v.Provider, {
40
- value: e,
41
- children: t
42
- });
43
- }
44
- function b(e) {
45
- let t = r(v), n = e ?? t;
46
- return (e, t) => _(e, n, t);
47
- }
48
- //#endregion
49
- //#region ../../node_modules/.pnpm/@fortawesome+fontawesome-free@7.3.1/node_modules/@fortawesome/fontawesome-free/svgs/solid/arrow-up.svg?raw
50
- var x = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 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=\"M214.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 109.3 160 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-370.7 105.4 105.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z\"/></svg>", S = "<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=\"M64 32l320 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32z\"/></svg>";
51
- //#endregion
52
- //#region src/ai/components.tsx
53
- function C({ translations: e, value: t, onValueChange: n, onSubmit: r, onStop: o, busy: c = !1, disabled: u = !1, label: d = "Ask AI to change this view", placeholder: p = "Filter or sort your data…", submitLabel: m = "Send", stopLabel: h = "Stop", hint: g = "Enter to send · Shift+Enter for a new line", actions: _, footer: v, textareaProps: y }) {
54
- let C = b(e), w = i(f("ai-prompt")), T = i(!1), E = `${w.current}-hint`, D = !!g && !t.length, O = c && !!o, k = () => {
55
- !u && !c && t.trim() && r(t.trim());
56
- };
57
- return /* @__PURE__ */ a("form", {
58
- class: "rv-ai-prompt",
59
- "aria-busy": c || void 0,
60
- onSubmit: (e) => {
61
- e.preventDefault(), k();
62
- },
63
- children: [/* @__PURE__ */ a("label", {
64
- for: w.current,
65
- class: "rv-ai-prompt-label rv-visually-hidden",
66
- children: C(d)
67
- }), /* @__PURE__ */ a("div", {
68
- class: "rv-ai-prompt-composer",
69
- children: [
70
- /* @__PURE__ */ a(s, {
71
- rows: 2,
72
- ...y,
73
- id: w.current,
74
- "aria-describedby": D ? E : void 0,
75
- value: t,
76
- onValueChange: n,
77
- placeholder: C(p),
78
- disabled: u || c,
79
- maxLength: 4e3,
80
- onCompositionStart: () => {
81
- T.current = !0;
82
- },
83
- onCompositionEnd: () => {
84
- T.current = !1;
85
- },
86
- onKeyDown: (e) => {
87
- e.key === "Enter" && !e.shiftKey && !e.isComposing && !T.current && e.keyCode !== 229 && (e.preventDefault(), k());
88
- }
89
- }),
90
- v && /* @__PURE__ */ a("div", {
91
- class: "rv-ai-prompt-footer",
92
- children: v
93
- }),
94
- /* @__PURE__ */ a("div", {
95
- class: "rv-ai-prompt-toolbar",
96
- children: [/* @__PURE__ */ a("div", {
97
- class: "rv-ai-prompt-tools",
98
- children: [_, D && /* @__PURE__ */ a("span", {
99
- id: E,
100
- class: "rv-ai-prompt-hint",
101
- children: C(g)
102
- })]
103
- }), /* @__PURE__ */ a(l, {
104
- className: "rv-ai-prompt-submit",
105
- type: O ? "button" : "submit",
106
- label: C(O ? h : m),
107
- icon: O ? S : x,
108
- onClick: O ? (e) => {
109
- e.preventDefault(), o?.();
110
- } : void 0,
111
- disabled: u || !O && !t.trim(),
112
- busy: c && !O,
113
- variant: "solid",
114
- size: "compact"
115
- })]
116
- })
117
- ]
118
- })]
119
- });
120
- }
121
- function w({ translations: e, items: t, onSelect: n, disabled: r, label: i = "Suggested requests" }) {
122
- let o = b(e);
123
- return t.length ? /* @__PURE__ */ a("div", {
124
- class: "rv-ai-suggestions",
125
- role: "group",
126
- "aria-label": o(i),
127
- children: t.map((e, t) => /* @__PURE__ */ a(u, {
128
- className: "rv-ai-suggestion",
129
- size: "compact",
130
- disabled: r,
131
- onFocus: (e) => {
132
- e.currentTarget.scrollIntoView({
133
- block: "nearest",
134
- inline: "nearest"
135
- });
136
- },
137
- onClick: () => n(e),
138
- children: e
139
- }, `${t}:${e}`))
140
- }) : null;
141
- }
142
- function T({ translations: e, phase: t, message: n }) {
143
- let r = b(e);
144
- return /* @__PURE__ */ a("div", {
145
- class: "rv-ai-status",
146
- "data-state": t,
147
- role: "status",
148
- "aria-live": "polite",
149
- "aria-atomic": "true",
150
- children: [(t === "understanding" || t === "applying") && /* @__PURE__ */ a("span", {
151
- "aria-hidden": "true",
152
- children: /* @__PURE__ */ a(c, { label: "" })
153
- }), /* @__PURE__ */ a("span", { children: r(n) })]
154
- });
155
- }
156
- function E({ translations: e, summary: t, matchedRows: n, countLabel: r, actions: i, children: o }) {
157
- let s = b(e);
158
- return /* @__PURE__ */ a("div", {
159
- class: "rv-ai-result",
160
- role: "status",
161
- "aria-live": "polite",
162
- children: [
163
- /* @__PURE__ */ a("p", {
164
- class: "rv-ai-result-summary",
165
- children: t
166
- }),
167
- n !== void 0 && /* @__PURE__ */ a("p", {
168
- class: "rv-ai-result-count",
169
- children: r ? r(n) : s("{count} matching rows", { count: n.toLocaleString() })
170
- }),
171
- o,
172
- i && /* @__PURE__ */ a("div", {
173
- class: "rv-ai-result-actions",
174
- children: i
175
- })
176
- ]
177
- });
178
- }
179
- function D({ translations: e = {}, label: t = "AI view assistant", children: n, footer: r, busy: i }) {
180
- return /* @__PURE__ */ a(y, {
181
- translations: e,
182
- children: /* @__PURE__ */ a("section", {
183
- class: "rv-ai-assistant",
184
- "aria-label": ((t) => _(t, e))(t),
185
- "aria-busy": i || void 0,
186
- children: [n, r && /* @__PURE__ */ a("div", {
187
- class: "rv-ai-assistant-footer",
188
- children: r
189
- })]
190
- })
191
- });
192
- }
193
- //#endregion
194
- //#region src/ai/request-trail.tsx
195
- function O({ translations: e, items: r, onRemove: s, onClear: c, onEmpty: l, disabled: g, removalsDisabled: _, label: v = "View steps", triggerLabel: y, clearLabel: x = "Clear all", clearDescription: S, removeLabel: C, countLabel: w, changedMessage: T }) {
196
- let E = b(e), D = w ?? ((e) => E(e === 1 ? "{count} applied request" : "{count} applied requests", { count: e })), O = C ?? ((e) => E("Remove request: {label}", { label: e.label })), k = i(null), A = i(null), j = i(null), [M] = t(() => f("rv-ai-steps")), [N, P] = t(!1), F = r.length > 0;
197
- n(() => {
198
- if (F || P(!1), !N || !F || !k.current || !A.current || !j.current) return;
199
- let e = j.current, t = new m(), n = !0;
200
- return t.open({
201
- anchor: A.current,
202
- content: e,
203
- appendTo: k.current,
204
- onClose: () => {
205
- n && P(!1);
206
- }
207
- }), e.focus({ preventScroll: !0 }), () => {
208
- n = !1, t.destroy(), e.hidden = !0;
209
- };
210
- }, [N, F]);
211
- let I = i();
212
- if (n(() => {
213
- let e = I.current;
214
- if (!e) return;
215
- if (g) {
216
- e.sawBusy = !0;
217
- return;
218
- }
219
- if (e.id ? r.some((t) => t.id === e.id) : r.length > 0) {
220
- (e.sawBusy || e.id && _) && (I.current = void 0);
221
- return;
222
- }
223
- I.current = void 0;
224
- let t = e.button.ownerDocument.activeElement;
225
- if (t !== e.button && t !== e.button.ownerDocument.body) return;
226
- let n = k.current?.querySelectorAll(".rv-remove-button");
227
- n?.length && N ? n[Math.min(e.index, n.length - 1)]?.focus() : r.length || l?.();
228
- }, [
229
- r,
230
- l,
231
- g,
232
- _,
233
- N
234
- ]), !F) return null;
235
- let L = 0, R = r.reduce((e, t) => e + (t.count ?? 1), 0);
236
- return /* @__PURE__ */ a("div", {
237
- class: "rv-ai-request-trail",
238
- role: "group",
239
- "aria-label": E(v),
240
- ref: k,
241
- onFocusOut: (e) => {
242
- e.relatedTarget instanceof Node && !e.currentTarget.contains(e.relatedTarget) && P(!1);
243
- },
244
- children: [/* @__PURE__ */ a(u, {
245
- ref: A,
246
- className: "rv-ai-trail-trigger",
247
- variant: "ghost",
248
- size: "compact",
249
- disabled: g,
250
- "aria-haspopup": "dialog",
251
- "aria-expanded": N,
252
- "aria-controls": M,
253
- onClick: () => P((e) => !e),
254
- children: [y ? y(R) : E(R === 1 ? "{count} step" : "{count} steps", { count: R }), /* @__PURE__ */ a(o, {
255
- svg: p,
256
- size: 10
257
- })]
258
- }), /* @__PURE__ */ a("div", {
259
- ref: j,
260
- id: M,
261
- class: "rv-popover rv-ai-trail-popover",
262
- role: "dialog",
263
- "aria-label": E(v),
264
- tabIndex: -1,
265
- hidden: !N,
266
- children: [
267
- /* @__PURE__ */ a("div", {
268
- class: "rv-ai-trail-header",
269
- children: /* @__PURE__ */ a("span", {
270
- class: "rv-ai-trail-label",
271
- children: [E(v), /* @__PURE__ */ a(d, {
272
- count: R,
273
- label: D(R)
274
- })]
275
- })
276
- }),
277
- /* @__PURE__ */ a("ol", {
278
- class: "rv-ai-trail-steps",
279
- "aria-label": D(R),
280
- children: r.map((e, t) => {
281
- let n = L + 1;
282
- return L += e.count ?? 1, /* @__PURE__ */ a("li", {
283
- class: "rv-ai-step",
284
- "data-current": t === r.length - 1 || void 0,
285
- onFocusCapture: (e) => e.currentTarget.scrollIntoView({
286
- block: "nearest",
287
- inline: "nearest"
288
- }),
289
- children: /* @__PURE__ */ a("span", {
290
- class: "rv-ai-step-chip",
291
- children: [
292
- /* @__PURE__ */ a("span", {
293
- class: "rv-ai-step-number",
294
- "aria-hidden": "true",
295
- children: n === L ? n : `${n}–${L}`
296
- }),
297
- /* @__PURE__ */ a("span", {
298
- class: "rv-ai-step-label",
299
- title: e.label,
300
- children: e.label
301
- }),
302
- /* @__PURE__ */ a(h, {
303
- compact: !0,
304
- disabled: g || _,
305
- locale: {
306
- title: O(e),
307
- ariaLabel: O(e)
308
- },
309
- onClick: (n) => {
310
- n.preventDefault(), I.current = {
311
- button: n.currentTarget,
312
- index: t,
313
- id: e.id
314
- }, s(e.id);
315
- }
316
- })
317
- ]
318
- })
319
- }, e.id);
320
- })
321
- }),
322
- T && /* @__PURE__ */ a("p", {
323
- class: "rv-ai-trail-message",
324
- children: E(T)
325
- }),
326
- /* @__PURE__ */ a("div", {
327
- class: "rv-ai-trail-footer",
328
- children: /* @__PURE__ */ a(u, {
329
- variant: "ghost",
330
- size: "compact",
331
- disabled: g,
332
- title: S ? E(S) : void 0,
333
- onClick: (e) => {
334
- e.preventDefault(), I.current = {
335
- button: e.currentTarget,
336
- index: 0
337
- }, c();
338
- },
339
- children: E(x)
340
- })
341
- })
342
- ]
343
- })]
344
- });
345
- }
346
- //#endregion
347
- export { E as a, g as c, C as i, _ as l, T as n, w as o, D as r, y as s, O as t };