@revolist/ui 4.0.4-rc → 4.0.6-rc

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 (240) hide show
  1. package/MIGRATION.md +36 -0
  2. package/OWNERSHIP.md +10 -10
  3. package/README.md +22 -4
  4. package/_chunks/arrow-up-Cw8hW9vp.js +4 -0
  5. package/_chunks/badge.view-D30pMUfi.js +14 -0
  6. package/_chunks/calculator-CDWOuAcp.js +4 -0
  7. package/_chunks/{calendar-xpZ0v3xf.js → calendar-QWDyYzdo.js} +19 -19
  8. package/_chunks/chart-frame-hcOlnQ1K.js +145 -0
  9. package/_chunks/check-BwI7iCAm.js +4 -0
  10. package/_chunks/choice-chips-A6WR-WJe.js +126 -0
  11. package/_chunks/{color-palette-D8vyPfld.js → color-palette-DMJUChWC.js} +20 -22
  12. package/_chunks/color-picker-BK4W1nd6.js +143 -0
  13. package/_chunks/{component-C_T2VN5u.js → component-CMkF17YZ.js} +281 -265
  14. package/_chunks/{component-metadata-BMOOmqx5.js → component-metadata-BKd7U8OW.js} +0 -8
  15. package/_chunks/configurator-actions-By8WSL2m.js +155 -0
  16. package/_chunks/configurator-field-icon-CmcM_sPs.js +53 -0
  17. package/_chunks/{control-AHKXD5Eu.js → control-mlH7l0Uq.js} +42 -17
  18. package/_chunks/{controls-DsNi8V8I.js → controls-FUU-MUKC.js} +171 -186
  19. package/_chunks/{date-control-DrVFX13g.js → date-control-Dup_P3w5.js} +1 -1
  20. package/_chunks/{date-time-qIhp5vaX.js → date-time-9z6pAG5T.js} +317 -278
  21. package/_chunks/dialog.parts-Bi7YbXqS.js +131 -0
  22. package/_chunks/{duration-CL68Em0o.js → duration-D7oRjsmP.js} +5 -5
  23. package/_chunks/editor-popup-ByU7qiub.js +82 -0
  24. package/_chunks/field-configurator-BCINdXpU.js +223 -0
  25. package/_chunks/{framework-mount--RTLIqE-.js → framework-mount-Bk4O_T7T.js} +1 -1
  26. package/_chunks/icon-toolbar-DSjOdwM7.js +134 -0
  27. package/_chunks/magnifying-glass-CvrTDSkB.js +4 -0
  28. package/_chunks/minus-BOAR3A1C.js +4 -0
  29. package/_chunks/mount-Cw2zk58T.js +266 -0
  30. package/_chunks/{native.view-ByyZ1CT5.js → native-Blr3byjO.js} +1 -1
  31. package/_chunks/native-control-pFMuHf3G.js +644 -0
  32. package/_chunks/{number-input-BKwA5FnM.js → number-input-DqXV6vgP.js} +7 -7
  33. package/_chunks/{picker-h1P5RUgp.js → picker-gEGTu1Ki.js} +2 -2
  34. package/_chunks/plus-CbGRkIGl.js +4 -0
  35. package/_chunks/popover-controller-D-AvKQ7B.js +102 -0
  36. package/_chunks/{popup-CT2uD3go.js → popup-C35Isk7p.js} +115 -104
  37. package/_chunks/{rating-choice-DZgmaic0.js → rating-choice-DbxdUJr-.js} +1 -1
  38. package/_chunks/{reorder-list-CSlqAGHw.js → reorder-list-B0_13Sja.js} +1 -1
  39. package/_chunks/request-trail-CCSK6TJA.js +753 -0
  40. package/_chunks/rich-text-5rnc8lpI.js +842 -0
  41. package/_chunks/rotate-left-BF6G883o.js +4 -0
  42. package/_chunks/title-tooltip-Cw6LOZhb.js +11 -0
  43. package/_chunks/tooltip-D4xkio5G.js +54 -0
  44. package/_chunks/tooltip-owner-DjdvqKzz.js +19 -0
  45. package/_chunks/tooltip-session-B6X6x8G_.js +110 -0
  46. package/_chunks/tooltip-text-BXsUEmBH.js +12 -0
  47. package/_chunks/top-layer-popup-CNSDdfJV.js +59 -0
  48. package/_variables.scss +33 -32
  49. package/ai/_chat.scss +28 -3
  50. package/ai/_style.scss +55 -2
  51. package/ai/chat.d.ts +3 -1
  52. package/ai/components.d.ts +13 -2
  53. package/ai/index.d.ts +1 -0
  54. package/ai/index.js +3 -3
  55. package/ai/mount.d.ts +17 -1
  56. package/ai/results/_style.scss +83 -0
  57. package/ai/results/index.d.ts +11 -0
  58. package/ai/results/metrics.d.ts +5 -0
  59. package/ai/results/table.d.ts +5 -0
  60. package/ai/results/text.d.ts +5 -0
  61. package/ai/results/types.d.ts +29 -0
  62. package/ai/transcript.d.ts +2 -0
  63. package/ai/translations.d.ts +1 -1
  64. package/assignee/assignee.scss +5 -1
  65. package/assignee/index.js +2 -2
  66. package/avatar/index.d.ts +25 -2
  67. package/avatar/index.js +33 -32
  68. package/badge.view.d.ts +8 -0
  69. package/brush-range/component.d.ts +1 -3
  70. package/brush-range/component.js +27 -27
  71. package/buttons/remove-button.d.ts +1 -1
  72. package/buttons/remove-button.style.scss +1 -1
  73. package/buttons/svg-button.d.ts +1 -1
  74. package/buttons/svg-button.js +16 -16
  75. package/calendar/_calendar.scss +2 -2
  76. package/calendar/calendar.js +1 -1
  77. package/calendar/index.js +2 -2
  78. package/checkbox/checkbox.scss +1 -22
  79. package/choice-chips/index.d.ts +3 -1
  80. package/choice-chips/index.js +1 -1
  81. package/color-palette/color-palette.js +1 -1
  82. package/color-palette/color-palette.style.scss +1 -1
  83. package/color-palette/color-picker.js +2 -2
  84. package/color-palette/common-palettes.d.ts +1 -1
  85. package/color-palette/common-palettes.js +1 -1
  86. package/color-palette/native.d.ts +15 -2
  87. package/component-catalog.d.ts +9 -7
  88. package/configurator-actions.d.ts +67 -0
  89. package/configurator-actions.js +1 -0
  90. package/configurator-aggregation-list.d.ts +14 -0
  91. package/configurator-aggregation-list.js +61 -0
  92. package/configurator-drop-zone.d.ts +38 -0
  93. package/configurator-drop-zone.js +64 -0
  94. package/configurator-field-icon.d.ts +10 -0
  95. package/configurator-field-icon.js +1 -0
  96. package/configurator-focus.d.ts +4 -0
  97. package/configurator-focus.js +39 -0
  98. package/configurator-sections.d.ts +42 -0
  99. package/configurator-sections.js +71 -0
  100. package/control-presentation.d.ts +8 -2
  101. package/control-presentation.js +25 -20
  102. package/controls.d.ts +1 -2
  103. package/controls.js +4 -3
  104. package/core/editor-popup-position.d.ts +6 -2
  105. package/core/editor-popup.d.ts +4 -0
  106. package/core/editor-popup.js +1 -1
  107. package/core/popover-controller.d.ts +35 -0
  108. package/core/popup-ownership.d.ts +2 -0
  109. package/core/title-tooltip.d.ts +2 -0
  110. package/core/tooltip-session.d.ts +29 -0
  111. package/core/tooltip-surface.d.ts +13 -0
  112. package/core/tooltip-text.d.ts +6 -0
  113. package/core/tooltip.d.ts +35 -0
  114. package/core/top-layer-popup.d.ts +4 -0
  115. package/core/top-layer-popup.js +1 -23
  116. package/date-time/attach.d.ts +1 -1
  117. package/date-time/field.d.ts +3 -2
  118. package/date-time/index.js +1 -1
  119. package/date-time/style.scss +64 -7
  120. package/date-time/time-selection.d.ts +3 -1
  121. package/date-time/types.d.ts +5 -1
  122. package/dialog/dialog-action-footer.d.ts +17 -2
  123. package/dialog/dialog.dom.d.ts +15 -2
  124. package/dialog/dialog.dom.js +9 -9
  125. package/dialog/dialog.parts.d.ts +1 -1
  126. package/dialog/dialog.parts.js +1 -1
  127. package/distribution-chart/_distribution-chart.scss +12 -54
  128. package/distribution-chart/area-chart.js +1 -1
  129. package/distribution-chart/bar-chart.js +1 -1
  130. package/distribution-chart/index.d.ts +1 -1
  131. package/distribution-chart/line-chart.js +1 -1
  132. package/dropdown/content.js +1 -1
  133. package/dropdown/control.js +1 -1
  134. package/dropdown/editor-dropdown.style.scss +5 -0
  135. package/dropdown/index.js +2 -2
  136. package/dropdown/lookup-field.d.ts +5 -0
  137. package/dropdown/lookup-field.js +2 -1
  138. package/dropdown/popup.d.ts +2 -2
  139. package/dropdown/popup.js +1 -1
  140. package/duration/index.js +1 -1
  141. package/editor-actions.js +1 -1
  142. package/field-configurator.d.ts +27 -0
  143. package/field-configurator.js +4 -170
  144. package/field-expansion.d.ts +9 -0
  145. package/filter/filters/slider/_slider.scss +8 -25
  146. package/filter/filters/slider/control.js +2 -0
  147. package/filter/filters/slider/runtime.js +49 -22
  148. package/filter/filters/slider/single.js +1 -1
  149. package/filter-badge.js +1 -1
  150. package/filter-controls.d.ts +0 -1
  151. package/filter-controls.js +5 -6
  152. package/form-controls/index.d.ts +10 -2
  153. package/form-controls/index.js +7 -7
  154. package/form-controls/presentation.js +12 -12
  155. package/formatting/index.d.ts +1 -1
  156. package/formatting/index.js +22 -21
  157. package/formatting/styles.scss +2 -47
  158. package/framework.js +226 -222
  159. package/history-controls.js +27 -1
  160. package/icon-toolbar.d.ts +62 -0
  161. package/icon-toolbar.js +1 -0
  162. package/masked-input/index.js +1 -1
  163. package/native-control.d.ts +1 -2
  164. package/native-control.js +1 -1
  165. package/native-controls.d.ts +54 -2
  166. package/native-styles.css +1 -1
  167. package/native.js +46 -43
  168. package/number-input/index.js +1 -1
  169. package/package.json +36 -1
  170. package/pagination.js +11 -11
  171. package/pdf-viewer/index.js +1 -1
  172. package/pickers.d.ts +5 -1
  173. package/preact-mount.js +1 -1
  174. package/preact.d.ts +8 -6
  175. package/preact.js +71 -64
  176. package/rating-choice.js +1 -1
  177. package/react-control.d.ts +2 -0
  178. package/react-control.js +2 -2
  179. package/react.d.ts +5 -6
  180. package/react.js +68 -66
  181. package/reorder-list.js +1 -1
  182. package/resource-picker/resource-picker-popup.js +1 -1
  183. package/resource-picker/resource-picker.js +4 -4
  184. package/rich-text/engine.d.ts +1 -0
  185. package/rich-text/format-html.d.ts +2 -0
  186. package/rich-text/index.d.ts +4 -0
  187. package/rich-text/index.js +1 -1
  188. package/rich-text/model.d.ts +2 -0
  189. package/rich-text/style.scss +165 -70
  190. package/rich-text/syntax.d.ts +5 -0
  191. package/rich-text/translations.d.ts +2 -0
  192. package/search-input/index.js +1 -1
  193. package/search-input/native.d.ts +21 -2
  194. package/select.d.ts +3 -1
  195. package/select.js +1 -1
  196. package/status-feedback/exit-snapshot.js +4 -4
  197. package/status-feedback/popover.js +4 -4
  198. package/styles/_alert.scss +18 -4
  199. package/styles/_compositions.scss +3 -3
  200. package/styles/_editor-slider.scss +0 -2
  201. package/styles/_field-configurator.scss +147 -0
  202. package/styles/_fields-grid.scss +37 -0
  203. package/styles/_palette.scss +0 -24
  204. package/styles/_primitives.scss +28 -19
  205. package/styles/configurator-actions.scss +141 -0
  206. package/styles/{legacy-pagination.css → pagination.css} +19 -2
  207. package/styles.css +1 -1
  208. package/styles.scss +2 -2
  209. package/surfaces.d.ts +36 -2
  210. package/surfaces.js +35 -132
  211. package/svelte.js +3 -3
  212. package/switch/index.js +15 -14
  213. package/time-grid.d.ts +0 -1
  214. package/time-grid.js +38 -37
  215. package/timeline-track/index.js +2 -2
  216. package/ui.css +1 -1
  217. package/vue.d.ts +26 -30
  218. package/vue.js +117 -121
  219. package/_chunks/chart-frame-Cmc7xU1i.js +0 -130
  220. package/_chunks/choice-chips-CHQTUdLs.js +0 -110
  221. package/_chunks/color-picker-CudqPYZo.js +0 -138
  222. package/_chunks/control-tooltip-uscKfAnV.js +0 -100
  223. package/_chunks/dialog.parts-CKGkC5zP.js +0 -134
  224. package/_chunks/editor-popup-WDdtVDNA.js +0 -81
  225. package/_chunks/history-controls-B3u3INEK.js +0 -27
  226. package/_chunks/mount-DQ1cpppK.js +0 -257
  227. package/_chunks/native-control-C_yok8_-.js +0 -605
  228. package/_chunks/request-trail-DSlFix6i.js +0 -618
  229. package/_chunks/rich-text-CH7gIqOS.js +0 -636
  230. package/avatar/index.view.d.ts +0 -25
  231. package/color-palette/native.view.d.ts +0 -15
  232. package/control-presentation.view.d.ts +0 -8
  233. package/dialog/dialog-action-footer.view.d.ts +0 -20
  234. package/dialog/dialog.dom.view.d.ts +0 -15
  235. package/form-controls/index.view.d.ts +0 -10
  236. package/formatting/control-tooltip.d.ts +0 -27
  237. package/native-controls.view.d.ts +0 -54
  238. package/search-input/native.view.d.ts +0 -21
  239. package/surfaces.view.d.ts +0 -63
  240. /package/styles/{legacy-rating.css → rating.css} +0 -0
@@ -0,0 +1,131 @@
1
+ import { i as e } from "./preact.module-BBM36DnO.js";
2
+ import { t } from "./jsxRuntime.module-F6UFnpT-.js";
3
+ import { createPreactElement as n, releasePreactElement as r } from "../preact-mount.js";
4
+ import { n as i, t as a } from "./native-control-pFMuHf3G.js";
5
+ import { r as o } from "./popup-C35Isk7p.js";
6
+ import { t as s } from "./xmark-DD_PBvZI.js";
7
+ //#region src/dialog/dialog-action-footer.tsx
8
+ function c({ cancel: e = {}, save: n = {}, deleteAction: r = !1, reset: i = !1, start: o, end: s, children: c, actionsClass: l = "", class: u = "", ...d }) {
9
+ let f = (e, n, r, i = "", o = "button") => {
10
+ if (n === !1) return null;
11
+ let { label: s = r, class: c = "", ...l } = n;
12
+ return /* @__PURE__ */ t(a, {
13
+ type: o,
14
+ ...l,
15
+ class: `rv-btn ${i} ${c}`,
16
+ "data-dialog-action": e,
17
+ children: s
18
+ });
19
+ };
20
+ return /* @__PURE__ */ t("footer", {
21
+ ...d,
22
+ class: `rv-dialog__footer rv-dialog__action-footer ${u}`,
23
+ children: [c, /* @__PURE__ */ t("div", {
24
+ class: "rv-dialog__action-panel",
25
+ children: [/* @__PURE__ */ t("div", {
26
+ class: "rv-dialog__action-start",
27
+ children: [
28
+ o,
29
+ f("delete", r, "Delete", "rv-btn-danger-outline"),
30
+ f("reset", i, "Reset")
31
+ ]
32
+ }), /* @__PURE__ */ t("div", {
33
+ class: `rv-dialog__actions ${l}`,
34
+ children: [
35
+ s,
36
+ f("cancel", e, "Cancel"),
37
+ f("save", n, "Save", "rv-btn-primary", "submit")
38
+ ]
39
+ })]
40
+ })]
41
+ });
42
+ }
43
+ function l(e, i) {
44
+ let a = n(e.ownerDocument, /* @__PURE__ */ t(c, { ...i }));
45
+ return e.append(a), { destroy() {
46
+ r(a);
47
+ } };
48
+ }
49
+ //#endregion
50
+ //#region src/dialog/dialog.parts.tsx
51
+ var u = o(({ class: e = "", ...n }, r) => /* @__PURE__ */ t("header", {
52
+ ...n,
53
+ ref: r,
54
+ class: `rv-dialog__header ${e}`
55
+ }));
56
+ function d({ class: e = "", ...n }) {
57
+ return /* @__PURE__ */ t("form", {
58
+ ...n,
59
+ class: `rv-dialog__surface ${e}`
60
+ });
61
+ }
62
+ var f = o(({ class: e = "", ...n }, r) => /* @__PURE__ */ t("div", {
63
+ ...n,
64
+ ref: r,
65
+ class: `rv-dialog__body ${e}`
66
+ })), p = o(({ class: e = "", ...n }, r) => /* @__PURE__ */ t("footer", {
67
+ ...n,
68
+ ref: r,
69
+ class: `rv-dialog__footer ${e}`
70
+ })), m = o(({ class: e = "", ...n }, r) => /* @__PURE__ */ t("div", {
71
+ ...n,
72
+ ref: r,
73
+ class: `rv-dialog__actions ${e}`
74
+ }));
75
+ function h({ class: e = "", iconClass: n = "", ...r }) {
76
+ return /* @__PURE__ */ t(a, {
77
+ ...r,
78
+ unstyled: !0,
79
+ type: "button",
80
+ class: `rv-dialog__close ${e}`,
81
+ children: /* @__PURE__ */ t("span", {
82
+ class: `rv-dialog__close-icon ${n}`,
83
+ "aria-hidden": "true",
84
+ dangerouslySetInnerHTML: { __html: s }
85
+ })
86
+ });
87
+ }
88
+ var g = o(({ class: e = "", ...n }, r) => /* @__PURE__ */ t(i, {
89
+ ...n,
90
+ ref: r,
91
+ class: `rv-dialog__title-input ${e}`
92
+ })), _ = o(({ titleId: n, title: r, name: i, description: a, inputLabel: o, titleHidden: s, headingClass: c = "", kickerClass: l = "", titleClass: d = "", inputProps: f, closeLabel: p, closeProps: m, onClose: _, class: v = "", ...y }, b) => /* @__PURE__ */ t(u, {
93
+ ...y,
94
+ ref: b,
95
+ class: `rv-dialog__header--editable ${v}`,
96
+ children: [/* @__PURE__ */ t("div", {
97
+ class: `rv-dialog__heading ${c}`,
98
+ children: [
99
+ !s && i && /* @__PURE__ */ t("span", {
100
+ class: `rv-dialog__kicker ${l}`,
101
+ children: i
102
+ }),
103
+ !s && (f === !1 ? /* @__PURE__ */ t("h3", {
104
+ id: n,
105
+ class: `rv-dialog__title ${d}`,
106
+ children: r
107
+ }) : /* @__PURE__ */ t(e, { children: [/* @__PURE__ */ t("h3", {
108
+ id: n,
109
+ class: `rv-dialog__sr-only ${d}`,
110
+ children: r
111
+ }), /* @__PURE__ */ t(g, {
112
+ "aria-label": o,
113
+ value: r,
114
+ ...f
115
+ })] })),
116
+ a && /* @__PURE__ */ t("div", {
117
+ class: "rv-dialog__description",
118
+ children: a
119
+ })
120
+ ]
121
+ }), _ && /* @__PURE__ */ t(h, {
122
+ ...m,
123
+ "aria-label": p,
124
+ onClick: _
125
+ })]
126
+ }));
127
+ function v(e) {
128
+ return /* @__PURE__ */ t(c, { ...e });
129
+ }
130
+ //#endregion
131
+ export { p as a, g as c, l as d, h as i, _ as l, m as n, d as o, f as r, u as s, v as t, c as u };
@@ -1,7 +1,7 @@
1
1
  import { i as e } from "./preact.module-BBM36DnO.js";
2
2
  import { c as t, i as n, t as r } from "./hooks.module-CG3gN83z.js";
3
3
  import { t as i } from "./jsxRuntime.module-F6UFnpT-.js";
4
- import { l as a, n as o } from "./native-control-C_yok8_-.js";
4
+ import { l as a, n as o } from "./native-control-pFMuHf3G.js";
5
5
  import { SegmentedSwitch as s } from "../segmented-switch/index.js";
6
6
  import { SingleValueSlider as c } from "../filter/filters/slider/single.js";
7
7
  import { n as l } from "./editor-commit-Bq3wSgvr.js";
@@ -138,7 +138,10 @@ function y(t) {
138
138
  class: "rv-duration-field__modes",
139
139
  children: [l.length === 0 ? null : l.length > 5 ? /* @__PURE__ */ i(a, {
140
140
  className: "rv-select",
141
- config: { ariaLabel: t.unitLabel ?? "Duration unit" },
141
+ config: {
142
+ ariaLabel: t.unitLabel ?? "Duration unit",
143
+ topLayer: !0
144
+ },
142
145
  source: l.map((e) => ({
143
146
  value: e,
144
147
  label: t.unitLabels?.[e] ?? v[e]
@@ -252,9 +255,6 @@ function x({ value: e, options: t, apply: a, cancel: o }) {
252
255
  onDraftChange: (e) => {
253
256
  g.current = !0, v.current = e;
254
257
  },
255
- onCommit: h ? (e) => {
256
- g.current = !1, a(e);
257
- } : void 0,
258
258
  onValidityChange: c
259
259
  }, p), /* @__PURE__ */ i(u, {
260
260
  showConfirm: t.showActions ?? !h,
@@ -0,0 +1,82 @@
1
+ import { calculateAnchoredPopoverPosition as e } from "../core/anchored-popover.js";
2
+ import { t } from "./jsxRuntime.module-F6UFnpT-.js";
3
+ import { createPreactElement as n, releasePreactElement as r } from "../preact-mount.js";
4
+ import { i, r as a, t as o } from "./top-layer-popup-CNSDdfJV.js";
5
+ import { t as s } from "./editor-commit-Bq3wSgvr.js";
6
+ //#region src/core/editor-popup-position.ts
7
+ function c(t, n, r, { gap: i = 4, inset: a = 8, fitViewport: o = !1 } = {}) {
8
+ let s = Math.max(0, r.height - a - t.bottom - i), c = Math.max(0, t.top - a - i), l = n.height <= s || s >= c ? "below" : "above", u = l === "below" ? s : c, d = o && n.height > u ? Math.max(u, r.height - 2 * a) : u, f = Math.min(n.height, d), p = l === "below" ? t.bottom + i : t.top - f - i;
9
+ return {
10
+ ...e(t, n, r, i, a),
11
+ placementY: l,
12
+ maxHeight: d,
13
+ top: d > u ? Math.max(a, Math.min(p, r.height - a - f)) : p
14
+ };
15
+ }
16
+ //#endregion
17
+ //#region src/core/editor-popup.tsx
18
+ var l = /* @__PURE__ */ new WeakMap();
19
+ function u(e, u, d) {
20
+ let f = e.ownerDocument, p = f.defaultView;
21
+ l.get(f)?.close();
22
+ let m = !1, h, g = (e) => (h = e, () => {
23
+ h === e && (h = void 0);
24
+ }), _ = () => {
25
+ m || (m = !0, E.disconnect(), T?.disconnect(), f.removeEventListener("pointerdown", y, !0), f.removeEventListener("keydown", b, !0), f.removeEventListener("scroll", x, !0), p.removeEventListener("resize", _), o(S, C), r(S), S.remove(), l.get(f)?.element === S && l.delete(f), d.onClose?.(), e.isConnected && e.focus({ preventScroll: !0 }));
26
+ }, v = (e) => e ? i(S, e) : !1, y = (t) => {
27
+ let n = t.target;
28
+ v(n) || e.contains(n) || d.trigger?.contains(n) || (d.isAvailable && !d.isAvailable() ? _() : h?.() === !1 ? (t.preventDefault(), t.stopPropagation()) : _());
29
+ }, b = (e) => {
30
+ if (e.key === "Escape") {
31
+ if (S.querySelector("[aria-expanded=\"true\"]")) return;
32
+ e.preventDefault(), e.stopPropagation(), _();
33
+ }
34
+ if (e.key === "Tab" && S.contains(e.target)) {
35
+ let t = [...S.querySelectorAll("button:not(:disabled),input:not(:disabled),textarea:not(:disabled),select:not(:disabled),[contenteditable=\"true\"],[tabindex=\"0\"]")].filter((e) => e.tabIndex >= 0 && e.getClientRects().length), n = t[0], r = t.at(-1);
36
+ e.shiftKey && f.activeElement === n ? (e.preventDefault(), r?.focus()) : !e.shiftKey && f.activeElement === r && (e.preventDefault(), n?.focus());
37
+ }
38
+ }, x = (t) => {
39
+ let n = t.target;
40
+ v(n) || n && (n.contains(e) || D?.contains(n)) && w();
41
+ }, S = n(f, /* @__PURE__ */ t("div", {
42
+ class: `rv-editor-popup ${d.className ?? ""}`,
43
+ role: "dialog",
44
+ "aria-label": d.label,
45
+ onKeyDown: (e) => e.stopPropagation(),
46
+ onKeyUp: (e) => e.stopPropagation(),
47
+ onMouseDown: (e) => e.stopPropagation(),
48
+ onClick: (e) => e.stopPropagation(),
49
+ children: /* @__PURE__ */ t(s.Provider, {
50
+ value: g,
51
+ children: u(_)
52
+ })
53
+ }));
54
+ S.style.direction = p.getComputedStyle(e).direction, (e.closest("dialog, [role=\"dialog\"], [role=\"menu\"]") ?? e.closest("revo-grid") ?? f.body).append(S);
55
+ let C = a(S, "block"), w = () => {
56
+ S.style.maxHeight = "";
57
+ let t = c(e.getBoundingClientRect(), S.getBoundingClientRect(), {
58
+ width: p.innerWidth,
59
+ height: p.innerHeight
60
+ }, { fitViewport: d.fitViewport });
61
+ S.style.maxHeight = `${t.maxHeight}px`, S.style.left = `${t.left}px`, S.style.top = `${t.top}px`, S.dataset.placement = t.placementY;
62
+ };
63
+ w();
64
+ let T = typeof p.ResizeObserver == "function" ? new p.ResizeObserver(w) : void 0;
65
+ T?.observe(S), T?.observe(e);
66
+ let E = new MutationObserver(() => {
67
+ (!e.isConnected || !S.isConnected || d.isAvailable && !d.isAvailable()) && _();
68
+ });
69
+ E.observe(f.body, {
70
+ childList: !0,
71
+ subtree: !0
72
+ });
73
+ let D = e.closest("revo-grid");
74
+ D && d.isAvailable && E.observe(D, { attributes: !0 }), f.addEventListener("pointerdown", y, !0), f.addEventListener("keydown", b, !0), f.addEventListener("scroll", x, !0), p.addEventListener("resize", _);
75
+ let O = {
76
+ element: S,
77
+ close: _
78
+ };
79
+ return l.set(f, O), S.querySelector("[autofocus],input,textarea,button,[tabindex=\"0\"]")?.focus({ preventScroll: !0 }), O;
80
+ }
81
+ //#endregion
82
+ export { u as t };
@@ -0,0 +1,223 @@
1
+ import { c as e } from "./preact.module-BBM36DnO.js";
2
+ import { t } from "./hooks.module-CG3gN83z.js";
3
+ import { t as n } from "./jsxRuntime.module-F6UFnpT-.js";
4
+ import { SvgIcon as r } from "../icons/icon.js";
5
+ import { t as i } from "./native-control-pFMuHf3G.js";
6
+ import { n as a } from "./delete-button-CW9vjLnk.js";
7
+ import { RemoveButton as o } from "../buttons/remove-button.js";
8
+ import { t as s } from "./chevron-right-sxHQMSkq.js";
9
+ import { t as c } from "./tooltip-text-BXsUEmBH.js";
10
+ import { t as l } from "./badge.view-D30pMUfi.js";
11
+ import { DisclosureSummary as u } from "../form-controls/presentation.js";
12
+ //#region ../../node_modules/.pnpm/@fortawesome+fontawesome-free@7.3.1/node_modules/@fortawesome/fontawesome-free/svgs/solid/table-columns.svg?raw
13
+ var d = "<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 96C0 60.7 28.7 32 64 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 96zm64 64l0 256 128 0 0-256-128 0zm320 0l-128 0 0 256 128 0 0-256z\"/></svg>";
14
+ //#endregion
15
+ //#region src/field-expansion.ts
16
+ function f() {
17
+ return {
18
+ known: /* @__PURE__ */ new Set(),
19
+ expanded: /* @__PURE__ */ new Set(),
20
+ collapsed: /* @__PURE__ */ new Set()
21
+ };
22
+ }
23
+ function p(e, t, n) {
24
+ for (let n of t) e.known.has(n) || (e.known.add(n), e.expanded.add(n));
25
+ return new Set(n ? t : e.expanded);
26
+ }
27
+ function m(e, t) {
28
+ e.expanded = new Set([...t].map(String)), e.collapsed = new Set([...e.known].filter((t) => !e.expanded.has(t)));
29
+ }
30
+ //#endregion
31
+ //#region src/field-configurator.tsx
32
+ function h({ svg: e, className: t = "" }) {
33
+ return /* @__PURE__ */ n(r, {
34
+ svg: e,
35
+ className: `rv-configurator-icon ${t}`
36
+ });
37
+ }
38
+ function g({ children: e, className: t = "", ...r }) {
39
+ return /* @__PURE__ */ n(u, {
40
+ ...r,
41
+ className: `rv-configurator-summary ${t}`,
42
+ iconPosition: "after",
43
+ icon: /* @__PURE__ */ n(h, { svg: s }),
44
+ children: e
45
+ });
46
+ }
47
+ function _({ title: e, count: t, children: r, className: i = "" }) {
48
+ return /* @__PURE__ */ n("details", {
49
+ class: `rv-configurator-available-fields ${i}`,
50
+ open: !0,
51
+ children: [/* @__PURE__ */ n(g, { children: [e, t != null && /* @__PURE__ */ n("span", {
52
+ class: "rv-configurator-field-count",
53
+ children: t
54
+ })] }), /* @__PURE__ */ n("div", {
55
+ class: "rv-configurator-library-content",
56
+ children: r
57
+ })]
58
+ });
59
+ }
60
+ function v({ children: e, actions: t, className: r = "" }) {
61
+ return /* @__PURE__ */ n("div", {
62
+ class: `rv-configurator-zone-heading ${r}`,
63
+ children: [/* @__PURE__ */ n("span", {
64
+ class: "rv-configurator-zone-label",
65
+ children: e
66
+ }), t && /* @__PURE__ */ n("span", {
67
+ class: "rv-configurator-zone-actions",
68
+ children: t
69
+ })]
70
+ });
71
+ }
72
+ function y({ heading: e, actions: t, headingClassName: r, className: i = "", children: a, ...o }) {
73
+ return /* @__PURE__ */ n("section", {
74
+ ...o,
75
+ className: `rv-configurator-zone ${i}`,
76
+ children: [/* @__PURE__ */ n(v, {
77
+ className: r,
78
+ actions: t,
79
+ children: e
80
+ }), a]
81
+ });
82
+ }
83
+ function b({ empty: e, placeholder: t, className: r = "", children: i, ...a }) {
84
+ return /* @__PURE__ */ n("ul", {
85
+ ...a,
86
+ className: `rv-configurator-field-list ${e ? "empty" : ""} ${r}`,
87
+ children: e ? /* @__PURE__ */ n("li", {
88
+ className: "rv-configurator-empty-zone empty",
89
+ children: t
90
+ }) : i
91
+ });
92
+ }
93
+ function x({ className: e = "", children: t, indicator: r, dropPosition: i, ...a }) {
94
+ return /* @__PURE__ */ n("li", {
95
+ ...a,
96
+ className: `rv-configurator-field rv-configurator-field-row ${e}`,
97
+ children: [
98
+ r ?? (i && /* @__PURE__ */ n(A, { position: i })),
99
+ /* @__PURE__ */ n("span", {
100
+ className: "rv-configurator-drag-handle",
101
+ "aria-hidden": "true"
102
+ }),
103
+ t
104
+ ]
105
+ });
106
+ }
107
+ function S({ icon: e, children: t, className: r = "" }) {
108
+ return /* @__PURE__ */ n("span", {
109
+ class: `rv-configurator-field-content ${r}`,
110
+ children: [e, /* @__PURE__ */ n("span", {
111
+ class: "rv-configurator-field-caption",
112
+ children: t
113
+ })]
114
+ });
115
+ }
116
+ function C({ as: t = "div", children: n, className: r = "", ...i }) {
117
+ return e(t, {
118
+ ...i,
119
+ class: `rv-configurator-field ${r}`
120
+ }, n);
121
+ }
122
+ function w({ children: e, ...t }) {
123
+ return /* @__PURE__ */ n("div", {
124
+ ...t,
125
+ className: `rv-configurator-library-list ${t.className ?? ""}`,
126
+ children: e
127
+ });
128
+ }
129
+ function T({ label: e, icon: t, actions: r, contentClassName: i, ...a }) {
130
+ return /* @__PURE__ */ n(x, {
131
+ ...a,
132
+ children: [/* @__PURE__ */ n(S, {
133
+ className: i,
134
+ icon: t,
135
+ children: e
136
+ }), r]
137
+ });
138
+ }
139
+ function E({ children: e, className: t = "", ...r }) {
140
+ return /* @__PURE__ */ n("div", {
141
+ ...r,
142
+ className: `rv-configurator-field-actions ${t}`,
143
+ children: e
144
+ });
145
+ }
146
+ function D({ children: e, active: t = !1, label: r, className: i = "" }) {
147
+ return /* @__PURE__ */ n(c, {
148
+ className: `rv-configurator-status-badge ${i}`,
149
+ "data-active": t ? "true" : void 0,
150
+ title: r,
151
+ "aria-label": r,
152
+ children: e
153
+ });
154
+ }
155
+ function O(e) {
156
+ return /* @__PURE__ */ n(o, {
157
+ ...e,
158
+ className: `rv-configurator-remove-button ${e.className ?? ""}`
159
+ });
160
+ }
161
+ function k() {
162
+ return /* @__PURE__ */ n(r, { svg: a });
163
+ }
164
+ function A({ position: e, index: t, className: r = "" }) {
165
+ return /* @__PURE__ */ n("span", {
166
+ className: `rv-configurator-drop-indicator ${r}`,
167
+ "data-position": e,
168
+ "data-drop-index": t,
169
+ "aria-hidden": "true"
170
+ });
171
+ }
172
+ function j({ title: e, description: r, defaultOpen: i = !1, children: a, className: o = "", summaryClassName: s = "", contentClassName: c = "", descriptionClassName: l = "", renderRoot: u }) {
173
+ let d = t(i), f = {
174
+ class: `rv-collapsible-section rv-configurator-section ${o}`.trim(),
175
+ open: d.current,
176
+ children: [/* @__PURE__ */ n(g, {
177
+ className: s,
178
+ children: e
179
+ }), /* @__PURE__ */ n("div", {
180
+ class: `rv-collapsible-section__content ${c}`.trim(),
181
+ children: [r && /* @__PURE__ */ n("p", {
182
+ class: `rv-collapsible-section__description ${l}`.trim(),
183
+ children: r
184
+ }), a]
185
+ })]
186
+ };
187
+ return u ? u(f) : /* @__PURE__ */ n("details", { ...f });
188
+ }
189
+ function M({ panelRef: e, standalone: t = !1, children: r, compactItems: a, compact: o = !1, onExpand: s, ...c }) {
190
+ let u = (e) => {
191
+ s?.(), e.onOpen?.();
192
+ };
193
+ return /* @__PURE__ */ n("div", {
194
+ ...c,
195
+ ref: e,
196
+ "data-compact": o ? "true" : void 0,
197
+ className: `rv-configurator-panel ${t ? "rv-configurator-panel--standalone" : ""} ${c.className ?? ""}`,
198
+ children: [o && a && /* @__PURE__ */ n("div", {
199
+ className: "rv-configurator-rail",
200
+ role: "group",
201
+ "aria-label": c["aria-label"] ?? "Configurator",
202
+ children: o && a.map((e) => /* @__PURE__ */ n(i, {
203
+ unstyled: !0,
204
+ class: "rv-btn rv-btn-ghost rv-configurator-rail__button",
205
+ "aria-label": `${e.label}${e.count === void 0 ? "" : ` (${e.count})`}`,
206
+ title: `${e.label}${e.count === void 0 ? "" : ` (${e.count})`}`,
207
+ disabled: e.disabled,
208
+ onClick: () => u(e),
209
+ children: [/* @__PURE__ */ n(h, { svg: e.icon ?? "<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 96C0 60.7 28.7 32 64 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 96zm64 64l0 256 128 0 0-256-128 0zm320 0l-128 0 0 256 128 0 0-256z\"/></svg>" }), e.count !== void 0 && /* @__PURE__ */ n(l, {
210
+ className: "rv-configurator-rail__count",
211
+ variant: e.count ? "accent" : "neutral",
212
+ children: e.count
213
+ })]
214
+ }, e.id))
215
+ }), a ? /* @__PURE__ */ n("div", {
216
+ class: "rv-configurator-panel__content",
217
+ hidden: o,
218
+ children: r
219
+ }) : r]
220
+ });
221
+ }
222
+ //#endregion
223
+ export { d as S, g as _, A as a, p as b, h as c, w as d, b as f, D as g, x as h, S as i, C as l, k as m, M as n, y as o, O as p, E as r, v as s, j as t, _ as u, T as v, m as x, f as y };
@@ -1,6 +1,6 @@
1
1
  import { c as e, r as t } from "./preact.module-BBM36DnO.js";
2
2
  import { r as n, t as r } from "./hooks.module-CG3gN83z.js";
3
- import { n as i } from "./component-metadata-BMOOmqx5.js";
3
+ import { n as i } from "./component-metadata-BKd7U8OW.js";
4
4
  //#region src/framework-mount.ts
5
5
  function a(i, a) {
6
6
  let o = /* @__PURE__ */ new Map(), s = !1, c = 0;
@@ -0,0 +1,134 @@
1
+ import { t as e } from "./jsxRuntime.module-F6UFnpT-.js";
2
+ import { t } from "./title-tooltip-Cw6LOZhb.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 src/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 };
@@ -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 };