@turquoisehealth/pit-viper 2.122.0 → 2.123.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/package.json +43 -13
  2. package/pv-components/dist/stats/vue/base/stats.html +4949 -0
  3. package/pv-components/dist/stats/vue/visualizations/stats.html +4949 -0
  4. package/pv-components/dist/stats/web/pv-accordion-stats.html +4949 -0
  5. package/pv-components/dist/stats/web/pv-action-bar-stats.html +4949 -0
  6. package/pv-components/dist/stats/web/pv-ai-button-stats.html +4949 -0
  7. package/pv-components/dist/stats/web/pv-avatar-group-stats.html +4949 -0
  8. package/pv-components/dist/stats/web/pv-avatar-stats.html +4949 -0
  9. package/pv-components/dist/stats/web/pv-banner-stats.html +4949 -0
  10. package/pv-components/dist/stats/web/pv-breadcrumbs-stats.html +4949 -0
  11. package/pv-components/dist/stats/web/pv-button-stats.html +4949 -0
  12. package/pv-components/dist/stats/web/pv-card-stats.html +4949 -0
  13. package/pv-components/dist/stats/web/pv-checkbox-stats.html +4949 -0
  14. package/pv-components/dist/stats/web/pv-company-label-stats.html +4949 -0
  15. package/pv-components/dist/stats/web/pv-company-logo-stats.html +4949 -0
  16. package/pv-components/dist/stats/web/pv-company-tag-stats.html +4949 -0
  17. package/pv-components/dist/stats/web/pv-counter-badge-stats.html +4949 -0
  18. package/pv-components/dist/stats/web/pv-date-picker-stats.html +4949 -0
  19. package/pv-components/dist/stats/web/pv-date-time-stats.html +4949 -0
  20. package/pv-components/dist/stats/web/pv-distribution-bar-stats.html +4949 -0
  21. package/pv-components/dist/stats/web/pv-drawer-stats.html +4949 -0
  22. package/pv-components/dist/stats/web/pv-dropdown-stats.html +4949 -0
  23. package/pv-components/dist/stats/web/pv-expandable-content-stats.html +4949 -0
  24. package/pv-components/dist/stats/web/pv-ghost-input-stats.html +4949 -0
  25. package/pv-components/dist/stats/web/pv-icon-stats.html +4949 -0
  26. package/pv-components/dist/stats/web/pv-input-stats.html +4949 -0
  27. package/pv-components/dist/stats/web/pv-insight-card-stats.html +4949 -0
  28. package/pv-components/dist/stats/web/pv-modal-stats.html +4949 -0
  29. package/pv-components/dist/stats/web/pv-multi-select-button-stats.html +4949 -0
  30. package/pv-components/dist/stats/web/pv-pagination-stats.html +4949 -0
  31. package/pv-components/dist/stats/web/pv-pill-stats.html +4949 -0
  32. package/pv-components/dist/stats/web/pv-popover-menu-stats.html +4949 -0
  33. package/pv-components/dist/stats/web/pv-popover-stats.html +4949 -0
  34. package/pv-components/dist/stats/web/pv-popover-v2-stats.html +4949 -0
  35. package/pv-components/dist/stats/web/pv-progress-bar-stats.html +4949 -0
  36. package/pv-components/dist/stats/web/pv-rating-stats.html +4949 -0
  37. package/pv-components/dist/stats/web/pv-release-badge-stats.html +4949 -0
  38. package/pv-components/dist/stats/web/pv-search-input-stats.html +4949 -0
  39. package/pv-components/dist/stats/web/pv-segmented-control-stats.html +4949 -0
  40. package/pv-components/dist/stats/web/pv-select-button-stats.html +4949 -0
  41. package/pv-components/dist/stats/web/pv-selectable-card-stats.html +4949 -0
  42. package/pv-components/dist/stats/web/pv-side-panel-stats.html +4949 -0
  43. package/pv-components/dist/stats/web/pv-skeleton-stats.html +4949 -0
  44. package/pv-components/dist/stats/web/pv-spinner-stats.html +4949 -0
  45. package/pv-components/dist/stats/web/pv-sprite-stats.html +4949 -0
  46. package/pv-components/dist/stats/web/pv-suggestion-tag-stats.html +4949 -0
  47. package/pv-components/dist/stats/web/pv-switch-stats.html +4949 -0
  48. package/pv-components/dist/stats/web/pv-tab-list-stats.html +4949 -0
  49. package/pv-components/dist/stats/web/pv-tabs-stats.html +4949 -0
  50. package/pv-components/dist/stats/web/pv-tag-stats.html +4949 -0
  51. package/pv-components/dist/stats/web/pv-text-area-stats.html +4949 -0
  52. package/pv-components/dist/stats/web/pv-toast-stats.html +4949 -0
  53. package/pv-components/dist/stats/web/pv-toggle-button-stats.html +4949 -0
  54. package/pv-components/dist/stats/web/pv-toggle-group-stats.html +4949 -0
  55. package/pv-components/dist/stats/web/pv-tooltip-stats.html +4949 -0
  56. package/pv-components/dist/stats/web/pv-tooltip-v2-stats.html +4949 -0
  57. package/pv-components/dist/stats/web/pv-tree-stats.html +4949 -0
  58. package/pv-components/dist/stats/web/pv-widget-stats.html +4949 -0
  59. package/pv-components/dist/vue/base/pv-components-base.mjs +4862 -11539
  60. package/pv-components/dist/vue/visualizations/pv-components-visualizations.mjs +4751 -11704
  61. package/pv-components/dist/web/components/pv-accordion/pv-accordion.js +265 -0
  62. package/pv-components/dist/web/components/pv-action-bar/pv-action-bar.js +134 -0
  63. package/pv-components/dist/web/components/pv-ai-button/pv-ai-button.js +225 -0
  64. package/pv-components/dist/web/components/pv-avatar/pv-avatar.js +164 -0
  65. package/pv-components/dist/web/components/pv-avatar-group/pv-avatar-group.js +170 -0
  66. package/pv-components/dist/web/components/pv-banner/pv-banner.js +224 -0
  67. package/pv-components/dist/web/components/pv-breadcrumbs/pv-breadcrumbs.js +160 -0
  68. package/pv-components/dist/web/components/pv-button/pv-button.js +242 -0
  69. package/pv-components/dist/web/components/pv-card/pv-card.js +148 -0
  70. package/pv-components/dist/web/components/pv-checkbox/pv-checkbox.js +145 -0
  71. package/pv-components/dist/web/components/pv-company-label/pv-company-label.js +221 -0
  72. package/pv-components/dist/web/components/pv-company-logo/pv-company-logo.js +192 -0
  73. package/pv-components/dist/web/components/pv-company-tag/pv-company-tag.js +274 -0
  74. package/pv-components/dist/web/components/pv-counter-badge/pv-counter-badge.js +157 -0
  75. package/pv-components/dist/web/components/pv-date-picker/pv-date-picker.js +7550 -0
  76. package/pv-components/dist/web/components/pv-date-time/pv-date-time.js +645 -0
  77. package/pv-components/dist/web/components/pv-distribution-bar/pv-distribution-bar.js +177 -0
  78. package/pv-components/dist/web/components/pv-drawer/pv-drawer.js +556 -0
  79. package/pv-components/dist/web/components/pv-dropdown/pv-dropdown.js +1792 -0
  80. package/pv-components/dist/web/components/pv-expandable-content/pv-expandable-content.js +304 -0
  81. package/pv-components/dist/web/components/pv-ghost-input/pv-ghost-input.js +320 -0
  82. package/pv-components/dist/web/components/pv-icon/pv-icon.js +150 -0
  83. package/pv-components/dist/web/components/pv-input/pv-input.js +191 -0
  84. package/pv-components/dist/web/components/pv-insight-card/pv-insight-card.js +363 -0
  85. package/pv-components/dist/web/components/pv-modal/pv-modal.js +186 -0
  86. package/pv-components/dist/web/components/pv-multi-select-button/pv-multi-select-button.js +2821 -0
  87. package/pv-components/dist/web/components/pv-pagination/pv-pagination.js +355 -0
  88. package/pv-components/dist/web/components/pv-pill/pv-pill.js +229 -0
  89. package/pv-components/dist/web/components/pv-popover/pv-popover.js +1485 -0
  90. package/pv-components/dist/web/components/pv-popover-menu/pv-popover-menu.js +1507 -0
  91. package/pv-components/dist/web/components/pv-popover-v2/pv-popover-v2.js +1489 -0
  92. package/pv-components/dist/web/components/pv-progress-bar/pv-progress-bar.js +156 -0
  93. package/pv-components/dist/web/components/pv-rating/pv-rating.js +146 -0
  94. package/pv-components/dist/web/components/pv-release-badge/pv-release-badge.js +142 -0
  95. package/pv-components/dist/web/components/pv-search-input/pv-search-input.js +238 -0
  96. package/pv-components/dist/web/components/pv-segmented-control/pv-segmented-control.js +214 -0
  97. package/pv-components/dist/web/components/pv-select-button/pv-select-button.js +2633 -0
  98. package/pv-components/dist/web/components/pv-selectable-card/pv-selectable-card.js +153 -0
  99. package/pv-components/dist/web/components/pv-side-panel/pv-side-panel.js +148 -0
  100. package/pv-components/dist/web/components/pv-skeleton/pv-skeleton.js +1593 -0
  101. package/pv-components/dist/web/components/pv-spinner/pv-spinner.js +151 -0
  102. package/pv-components/dist/web/components/pv-sprite/pv-sprite.js +150 -0
  103. package/pv-components/dist/web/components/pv-suggestion-tag/pv-suggestion-tag.js +195 -0
  104. package/pv-components/dist/web/components/pv-switch/pv-switch.js +162 -0
  105. package/pv-components/dist/web/components/pv-tab-list/pv-tab-list.js +168 -0
  106. package/pv-components/dist/web/components/pv-tabs/pv-tabs.js +248 -0
  107. package/pv-components/dist/web/components/pv-tag/pv-tag.js +210 -0
  108. package/pv-components/dist/web/components/pv-text-area/pv-text-area.js +188 -0
  109. package/pv-components/dist/web/components/pv-toast/pv-toast.js +292 -0
  110. package/pv-components/dist/web/components/pv-toggle-button/pv-toggle-button.js +208 -0
  111. package/pv-components/dist/web/components/pv-toggle-group/pv-toggle-group.js +7395 -0
  112. package/pv-components/dist/web/components/pv-tooltip/pv-tooltip.js +158 -0
  113. package/pv-components/dist/web/components/pv-tooltip-v2/pv-tooltip-v2.js +7325 -0
  114. package/pv-components/dist/web/components/pv-tree/pv-tree.js +5107 -0
  115. package/pv-components/dist/web/components/pv-widget/pv-widget.js +159 -0
  116. package/pv-components/dist/web/pv-components.iife.js +46 -46
  117. package/pv-components/dist/web/vue.runtime.esm-browser.prod.js +7 -0
  118. package/pv-components/dist/vue/base/pv-components-base.js +0 -1555
  119. package/pv-components/dist/vue/base/pv-components-base.umd.js +0 -1555
  120. package/pv-components/dist/vue/visualizations/pv-components-visualizations.js +0 -185
  121. package/pv-components/dist/vue/visualizations/pv-components-visualizations.umd.js +0 -185
@@ -0,0 +1,2633 @@
1
+ import { isRef as sn, shallowRef as zt, toValue as M, onMounted as Vt, nextTick as Ft, getCurrentScope as Rn, onScopeDispose as Bn, watch as Ye, getCurrentInstance as jt, toRef as zn, readonly as Vn, ref as ee, customRef as Fn, computed as I, unref as Se, defineComponent as q, mergeModels as Nt, useTemplateRef as lt, useModel as Lt, createElementBlock as T, openBlock as g, withDirectives as un, createCommentVNode as _, createElementVNode as te, normalizeClass as ie, vModelText as jn, toDisplayString as ne, normalizeStyle as Xe, renderSlot as Pe, createBlock as X, Teleport as Wn, createVNode as Ee, withCtx as st, createTextVNode as cn, withModifiers as Xn, Fragment as Ae, resolveDynamicComponent as dn, normalizeProps as Yn, mergeProps as Hn, resolveComponent as Gn, renderList as fn, defineCustomElement as Un } from "vue";
2
+ function vt(e) {
3
+ return Rn() ? (Bn(e), !0) : !1;
4
+ }
5
+ const mt = typeof window < "u" && typeof document < "u";
6
+ typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
7
+ const qn = Object.prototype.toString, pn = (e) => qn.call(e) === "[object Object]", be = () => {
8
+ }, $t = /* @__PURE__ */ Kn();
9
+ function Kn() {
10
+ var e, t;
11
+ return mt && ((e = window?.navigator) == null ? void 0 : e.userAgent) && (/iP(?:ad|hone|od)/.test(window.navigator.userAgent) || ((t = window?.navigator) == null ? void 0 : t.maxTouchPoints) > 2 && /iPad|Macintosh/.test(window?.navigator.userAgent));
12
+ }
13
+ function Zn(...e) {
14
+ if (e.length !== 1)
15
+ return zn(...e);
16
+ const t = e[0];
17
+ return typeof t == "function" ? Vn(Fn(() => ({ get: t, set: be }))) : ee(t);
18
+ }
19
+ function Ie(e) {
20
+ return Array.isArray(e) ? e : [e];
21
+ }
22
+ function Jn(e) {
23
+ return jt();
24
+ }
25
+ function Qn(e, t = !0, n) {
26
+ Jn() ? Vt(e, n) : t ? e() : Ft(e);
27
+ }
28
+ // @__NO_SIDE_EFFECTS__
29
+ function eo(e = !1, t = {}) {
30
+ const {
31
+ truthyValue: n = !0,
32
+ falsyValue: o = !1
33
+ } = t, i = sn(e), r = zt(e);
34
+ function l(a) {
35
+ if (arguments.length)
36
+ return r.value = a, r.value;
37
+ {
38
+ const s = M(n);
39
+ return r.value = r.value === s ? M(o) : s, r.value;
40
+ }
41
+ }
42
+ return i ? l : [r, l];
43
+ }
44
+ function hn(e, t, n) {
45
+ return Ye(
46
+ e,
47
+ t,
48
+ {
49
+ ...n,
50
+ immediate: !0
51
+ }
52
+ );
53
+ }
54
+ const vn = mt ? window : void 0, to = mt ? window.document : void 0;
55
+ function mn(e) {
56
+ var t;
57
+ const n = M(e);
58
+ return (t = n?.$el) != null ? t : n;
59
+ }
60
+ function no(...e) {
61
+ const t = [], n = () => {
62
+ t.forEach((a) => a()), t.length = 0;
63
+ }, o = (a, s, u, c) => (a.addEventListener(s, u, c), () => a.removeEventListener(s, u, c)), i = I(() => {
64
+ const a = Ie(M(e[0])).filter((s) => s != null);
65
+ return a.every((s) => typeof s != "string") ? a : void 0;
66
+ }), r = hn(
67
+ () => {
68
+ var a, s;
69
+ return [
70
+ (s = (a = i.value) == null ? void 0 : a.map((u) => mn(u))) != null ? s : [vn].filter((u) => u != null),
71
+ Ie(M(i.value ? e[1] : e[0])),
72
+ Ie(Se(i.value ? e[2] : e[1])),
73
+ // @ts-expect-error - TypeScript gets the correct types, but somehow still complains
74
+ M(i.value ? e[3] : e[2])
75
+ ];
76
+ },
77
+ ([a, s, u, c]) => {
78
+ if (n(), !a?.length || !s?.length || !u?.length)
79
+ return;
80
+ const d = pn(c) ? { ...c } : c;
81
+ t.push(
82
+ ...a.flatMap(
83
+ (p) => s.flatMap(
84
+ (h) => u.map((y) => o(p, h, y, d))
85
+ )
86
+ )
87
+ );
88
+ },
89
+ { flush: "post" }
90
+ ), l = () => {
91
+ r(), n();
92
+ };
93
+ return vt(n), l;
94
+ }
95
+ function oo(e) {
96
+ return typeof e == "function" ? e : typeof e == "string" ? (t) => t.key === e : Array.isArray(e) ? (t) => e.includes(t.key) : () => !0;
97
+ }
98
+ function gn(...e) {
99
+ let t, n, o = {};
100
+ e.length === 3 ? (t = e[0], n = e[1], o = e[2]) : e.length === 2 ? typeof e[1] == "object" ? (t = !0, n = e[0], o = e[1]) : (t = e[0], n = e[1]) : (t = !0, n = e[0]);
101
+ const {
102
+ target: i = vn,
103
+ eventName: r = "keydown",
104
+ passive: l = !1,
105
+ dedupe: a = !1
106
+ } = o, s = oo(t);
107
+ return no(i, r, (c) => {
108
+ c.repeat && M(a) || s(c) && n(c);
109
+ }, l);
110
+ }
111
+ const yn = mt ? window : void 0;
112
+ function _e(e) {
113
+ var t;
114
+ const n = M(e);
115
+ return (t = n?.$el) != null ? t : n;
116
+ }
117
+ function et(...e) {
118
+ const t = [], n = () => {
119
+ t.forEach((a) => a()), t.length = 0;
120
+ }, o = (a, s, u, c) => (a.addEventListener(s, u, c), () => a.removeEventListener(s, u, c)), i = I(() => {
121
+ const a = Ie(M(e[0])).filter((s) => s != null);
122
+ return a.every((s) => typeof s != "string") ? a : void 0;
123
+ }), r = hn(
124
+ () => {
125
+ var a, s;
126
+ return [
127
+ (s = (a = i.value) == null ? void 0 : a.map((u) => _e(u))) != null ? s : [yn].filter((u) => u != null),
128
+ Ie(M(i.value ? e[1] : e[0])),
129
+ Ie(Se(i.value ? e[2] : e[1])),
130
+ // @ts-expect-error - TypeScript gets the correct types, but somehow still complains
131
+ M(i.value ? e[3] : e[2])
132
+ ];
133
+ },
134
+ ([a, s, u, c]) => {
135
+ if (n(), !a?.length || !s?.length || !u?.length)
136
+ return;
137
+ const d = pn(c) ? { ...c } : c;
138
+ t.push(
139
+ ...a.flatMap(
140
+ (p) => s.flatMap(
141
+ (h) => u.map((y) => o(p, h, y, d))
142
+ )
143
+ )
144
+ );
145
+ },
146
+ { flush: "post" }
147
+ ), l = () => {
148
+ r(), n();
149
+ };
150
+ return vt(n), l;
151
+ }
152
+ let Ut = !1;
153
+ function qt(e, t, n = {}) {
154
+ const { window: o = yn, ignore: i = [], capture: r = !0, detectIframe: l = !1, controls: a = !1 } = n;
155
+ if (!o)
156
+ return a ? { stop: be, cancel: be, trigger: be } : be;
157
+ if ($t && !Ut) {
158
+ Ut = !0;
159
+ const b = { passive: !0 };
160
+ Array.from(o.document.body.children).forEach((E) => E.addEventListener("click", be, b)), o.document.documentElement.addEventListener("click", be, b);
161
+ }
162
+ let s = !0;
163
+ const u = (b) => M(i).some((E) => {
164
+ if (typeof E == "string")
165
+ return Array.from(o.document.querySelectorAll(E)).some((C) => C === b.target || b.composedPath().includes(C));
166
+ {
167
+ const C = _e(E);
168
+ return C && (b.target === C || b.composedPath().includes(C));
169
+ }
170
+ });
171
+ function c(b) {
172
+ const E = M(b);
173
+ return E && E.$.subTree.shapeFlag === 16;
174
+ }
175
+ function d(b, E) {
176
+ const C = M(b), B = C.$.subTree && C.$.subTree.children;
177
+ return B == null || !Array.isArray(B) ? !1 : B.some((k) => k.el === E.target || E.composedPath().includes(k.el));
178
+ }
179
+ const p = (b) => {
180
+ const E = _e(e);
181
+ if (b.target != null && !(!(E instanceof Element) && c(e) && d(e, b)) && !(!E || E === b.target || b.composedPath().includes(E))) {
182
+ if ("detail" in b && b.detail === 0 && (s = !u(b)), !s) {
183
+ s = !0;
184
+ return;
185
+ }
186
+ t(b);
187
+ }
188
+ };
189
+ let h = !1;
190
+ const y = [
191
+ et(o, "click", (b) => {
192
+ h || (h = !0, setTimeout(() => {
193
+ h = !1;
194
+ }, 0), p(b));
195
+ }, { passive: !0, capture: r }),
196
+ et(o, "pointerdown", (b) => {
197
+ const E = _e(e);
198
+ s = !u(b) && !!(E && !b.composedPath().includes(E));
199
+ }, { passive: !0 }),
200
+ l && et(o, "blur", (b) => {
201
+ setTimeout(() => {
202
+ var E;
203
+ const C = _e(e);
204
+ ((E = o.document.activeElement) == null ? void 0 : E.tagName) === "IFRAME" && !C?.contains(o.document.activeElement) && t(b);
205
+ }, 0);
206
+ }, { passive: !0 })
207
+ ].filter(Boolean), D = () => y.forEach((b) => b());
208
+ return a ? {
209
+ stop: D,
210
+ cancel: () => {
211
+ s = !1;
212
+ },
213
+ trigger: (b) => {
214
+ s = !0, p(b), s = !1;
215
+ }
216
+ } : D;
217
+ }
218
+ const bt = /* @__PURE__ */ new WeakMap(), io = {
219
+ mounted(e, t) {
220
+ const n = !t.modifiers.bubble;
221
+ let o;
222
+ if (typeof t.value == "function")
223
+ o = qt(e, t.value, { capture: n });
224
+ else {
225
+ const [i, r] = t.value;
226
+ o = qt(e, i, Object.assign({ capture: n }, r));
227
+ }
228
+ bt.set(e, o);
229
+ },
230
+ unmounted(e) {
231
+ const t = bt.get(e);
232
+ t && typeof t == "function" ? t() : t?.stop(), bt.delete(e);
233
+ }
234
+ };
235
+ function wt(e) {
236
+ return typeof Window < "u" && e instanceof Window ? e.document.documentElement : typeof Document < "u" && e instanceof Document ? e.documentElement : e;
237
+ }
238
+ function bn(e) {
239
+ const t = window.getComputedStyle(e);
240
+ if (t.overflowX === "scroll" || t.overflowY === "scroll" || t.overflowX === "auto" && e.clientWidth < e.scrollWidth || t.overflowY === "auto" && e.clientHeight < e.scrollHeight)
241
+ return !0;
242
+ {
243
+ const n = e.parentNode;
244
+ return !n || n.tagName === "BODY" ? !1 : bn(n);
245
+ }
246
+ }
247
+ function ro(e) {
248
+ const t = e || window.event, n = t.target;
249
+ return bn(n) ? !1 : t.touches.length > 1 ? !0 : (t.preventDefault && t.preventDefault(), !1);
250
+ }
251
+ const St = /* @__PURE__ */ new WeakMap();
252
+ function ao(e, t = !1) {
253
+ const n = zt(t);
254
+ let o = null, i = "";
255
+ Ye(Zn(e), (a) => {
256
+ const s = wt(M(a));
257
+ if (s) {
258
+ const u = s;
259
+ if (St.get(u) || St.set(u, u.style.overflow), u.style.overflow !== "hidden" && (i = u.style.overflow), u.style.overflow === "hidden")
260
+ return n.value = !0;
261
+ if (n.value)
262
+ return u.style.overflow = "hidden";
263
+ }
264
+ }, {
265
+ immediate: !0
266
+ });
267
+ const r = () => {
268
+ const a = wt(M(e));
269
+ !a || n.value || ($t && (o = et(
270
+ a,
271
+ "touchmove",
272
+ (s) => {
273
+ ro(s);
274
+ },
275
+ { passive: !1 }
276
+ )), a.style.overflow = "hidden", n.value = !0);
277
+ }, l = () => {
278
+ const a = wt(M(e));
279
+ !a || !n.value || ($t && o?.(), a.style.overflow = i, St.delete(a), n.value = !1);
280
+ };
281
+ return vt(l), I({
282
+ get() {
283
+ return n.value;
284
+ },
285
+ set(a) {
286
+ a ? r() : l();
287
+ }
288
+ });
289
+ }
290
+ function lo() {
291
+ let e = !1;
292
+ const t = zt(!1);
293
+ return (n, o) => {
294
+ if (t.value = o.value, e)
295
+ return;
296
+ e = !0;
297
+ const i = ao(n, o.value);
298
+ Ye(t, (r) => i.value = r);
299
+ };
300
+ }
301
+ lo();
302
+ const so = { class: "pv-relative" }, uo = ["disabled", "placeholder"], co = {
303
+ key: 0,
304
+ "data-testid": "pv-search-input-shortcut",
305
+ class: "pv-kbd"
306
+ }, Kt = "/", fo = /* @__PURE__ */ q({
307
+ __name: "PvSearchInput",
308
+ props: /* @__PURE__ */ Nt({
309
+ placeholder: { default: "Search", type: String },
310
+ disabled: { type: Boolean, default: !1 },
311
+ displayShortcut: { type: Boolean }
312
+ }, {
313
+ modelValue: { required: !1, default: "" },
314
+ modelModifiers: {}
315
+ }),
316
+ emits: ["update:modelValue"],
317
+ setup(e, { expose: t }) {
318
+ const n = e, o = lt("search-input"), i = Lt(e, "modelValue"), r = I(() => ({
319
+ "pv-input-search": !0,
320
+ "pv-full-width": !0,
321
+ "pv-input-padded-end": !0
322
+ }));
323
+ return Vt(() => {
324
+ n.displayShortcut && gn(Kt, (l) => {
325
+ const a = l.target, s = a instanceof HTMLInputElement || a instanceof HTMLTextAreaElement || (a?.isContentEditable ?? !1), u = document.activeElement === o.value;
326
+ (!s || u) && (u || (l.preventDefault(), o.value?.focus()));
327
+ });
328
+ }), t({ input: o }), (l, a) => (g(), T("div", so, [
329
+ un(te("input", {
330
+ ref: "search-input",
331
+ "onUpdate:modelValue": a[0] || (a[0] = (s) => i.value = s),
332
+ "data-testid": "pv-search-input",
333
+ type: "text",
334
+ disabled: e.disabled,
335
+ class: ie(r.value),
336
+ placeholder: e.placeholder
337
+ }, null, 10, uo), [
338
+ [jn, i.value]
339
+ ]),
340
+ e.displayShortcut ? (g(), T("kbd", co, ne(Kt))) : _("v-if", !0)
341
+ ]));
342
+ }
343
+ });
344
+ /**!
345
+ * Sortable 1.15.6
346
+ * @author RubaXa <trash@rubaxa.org>
347
+ * @author owenm <owen23355@gmail.com>
348
+ * @license MIT
349
+ */
350
+ function Zt(e, t) {
351
+ var n = Object.keys(e);
352
+ if (Object.getOwnPropertySymbols) {
353
+ var o = Object.getOwnPropertySymbols(e);
354
+ t && (o = o.filter(function(i) {
355
+ return Object.getOwnPropertyDescriptor(e, i).enumerable;
356
+ })), n.push.apply(n, o);
357
+ }
358
+ return n;
359
+ }
360
+ function re(e) {
361
+ for (var t = 1; t < arguments.length; t++) {
362
+ var n = arguments[t] != null ? arguments[t] : {};
363
+ t % 2 ? Zt(Object(n), !0).forEach(function(o) {
364
+ po(e, o, n[o]);
365
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Zt(Object(n)).forEach(function(o) {
366
+ Object.defineProperty(e, o, Object.getOwnPropertyDescriptor(n, o));
367
+ });
368
+ }
369
+ return e;
370
+ }
371
+ function tt(e) {
372
+ "@babel/helpers - typeof";
373
+ return typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? tt = function(t) {
374
+ return typeof t;
375
+ } : tt = function(t) {
376
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
377
+ }, tt(e);
378
+ }
379
+ function po(e, t, n) {
380
+ return t in e ? Object.defineProperty(e, t, {
381
+ value: n,
382
+ enumerable: !0,
383
+ configurable: !0,
384
+ writable: !0
385
+ }) : e[t] = n, e;
386
+ }
387
+ function ue() {
388
+ return ue = Object.assign || function(e) {
389
+ for (var t = 1; t < arguments.length; t++) {
390
+ var n = arguments[t];
391
+ for (var o in n)
392
+ Object.prototype.hasOwnProperty.call(n, o) && (e[o] = n[o]);
393
+ }
394
+ return e;
395
+ }, ue.apply(this, arguments);
396
+ }
397
+ function ho(e, t) {
398
+ if (e == null) return {};
399
+ var n = {}, o = Object.keys(e), i, r;
400
+ for (r = 0; r < o.length; r++)
401
+ i = o[r], !(t.indexOf(i) >= 0) && (n[i] = e[i]);
402
+ return n;
403
+ }
404
+ function vo(e, t) {
405
+ if (e == null) return {};
406
+ var n = ho(e, t), o, i;
407
+ if (Object.getOwnPropertySymbols) {
408
+ var r = Object.getOwnPropertySymbols(e);
409
+ for (i = 0; i < r.length; i++)
410
+ o = r[i], !(t.indexOf(o) >= 0) && Object.prototype.propertyIsEnumerable.call(e, o) && (n[o] = e[o]);
411
+ }
412
+ return n;
413
+ }
414
+ var mo = "1.15.6";
415
+ function se(e) {
416
+ if (typeof window < "u" && window.navigator)
417
+ return !!/* @__PURE__ */ navigator.userAgent.match(e);
418
+ }
419
+ var ce = se(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i), He = se(/Edge/i), Jt = se(/firefox/i), ze = se(/safari/i) && !se(/chrome/i) && !se(/android/i), Wt = se(/iP(ad|od|hone)/i), wn = se(/chrome/i) && se(/android/i), Sn = {
420
+ capture: !1,
421
+ passive: !1
422
+ };
423
+ function x(e, t, n) {
424
+ e.addEventListener(t, n, !ce && Sn);
425
+ }
426
+ function S(e, t, n) {
427
+ e.removeEventListener(t, n, !ce && Sn);
428
+ }
429
+ function ut(e, t) {
430
+ if (t) {
431
+ if (t[0] === ">" && (t = t.substring(1)), e)
432
+ try {
433
+ if (e.matches)
434
+ return e.matches(t);
435
+ if (e.msMatchesSelector)
436
+ return e.msMatchesSelector(t);
437
+ if (e.webkitMatchesSelector)
438
+ return e.webkitMatchesSelector(t);
439
+ } catch {
440
+ return !1;
441
+ }
442
+ return !1;
443
+ }
444
+ }
445
+ function En(e) {
446
+ return e.host && e !== document && e.host.nodeType ? e.host : e.parentNode;
447
+ }
448
+ function Q(e, t, n, o) {
449
+ if (e) {
450
+ n = n || document;
451
+ do {
452
+ if (t != null && (t[0] === ">" ? e.parentNode === n && ut(e, t) : ut(e, t)) || o && e === n)
453
+ return e;
454
+ if (e === n) break;
455
+ } while (e = En(e));
456
+ }
457
+ return null;
458
+ }
459
+ var Qt = /\s+/g;
460
+ function G(e, t, n) {
461
+ if (e && t)
462
+ if (e.classList)
463
+ e.classList[n ? "add" : "remove"](t);
464
+ else {
465
+ var o = (" " + e.className + " ").replace(Qt, " ").replace(" " + t + " ", " ");
466
+ e.className = (o + (n ? " " + t : "")).replace(Qt, " ");
467
+ }
468
+ }
469
+ function v(e, t, n) {
470
+ var o = e && e.style;
471
+ if (o) {
472
+ if (n === void 0)
473
+ return document.defaultView && document.defaultView.getComputedStyle ? n = document.defaultView.getComputedStyle(e, "") : e.currentStyle && (n = e.currentStyle), t === void 0 ? n : n[t];
474
+ !(t in o) && t.indexOf("webkit") === -1 && (t = "-webkit-" + t), o[t] = n + (typeof n == "string" ? "" : "px");
475
+ }
476
+ }
477
+ function Oe(e, t) {
478
+ var n = "";
479
+ if (typeof e == "string")
480
+ n = e;
481
+ else
482
+ do {
483
+ var o = v(e, "transform");
484
+ o && o !== "none" && (n = o + " " + n);
485
+ } while (!t && (e = e.parentNode));
486
+ var i = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix;
487
+ return i && new i(n);
488
+ }
489
+ function xn(e, t, n) {
490
+ if (e) {
491
+ var o = e.getElementsByTagName(t), i = 0, r = o.length;
492
+ if (n)
493
+ for (; i < r; i++)
494
+ n(o[i], i);
495
+ return o;
496
+ }
497
+ return [];
498
+ }
499
+ function oe() {
500
+ var e = document.scrollingElement;
501
+ return e || document.documentElement;
502
+ }
503
+ function $(e, t, n, o, i) {
504
+ if (!(!e.getBoundingClientRect && e !== window)) {
505
+ var r, l, a, s, u, c, d;
506
+ if (e !== window && e.parentNode && e !== oe() ? (r = e.getBoundingClientRect(), l = r.top, a = r.left, s = r.bottom, u = r.right, c = r.height, d = r.width) : (l = 0, a = 0, s = window.innerHeight, u = window.innerWidth, c = window.innerHeight, d = window.innerWidth), (t || n) && e !== window && (i = i || e.parentNode, !ce))
507
+ do
508
+ if (i && i.getBoundingClientRect && (v(i, "transform") !== "none" || n && v(i, "position") !== "static")) {
509
+ var p = i.getBoundingClientRect();
510
+ l -= p.top + parseInt(v(i, "border-top-width")), a -= p.left + parseInt(v(i, "border-left-width")), s = l + r.height, u = a + r.width;
511
+ break;
512
+ }
513
+ while (i = i.parentNode);
514
+ if (o && e !== window) {
515
+ var h = Oe(i || e), y = h && h.a, D = h && h.d;
516
+ h && (l /= D, a /= y, d /= y, c /= D, s = l + c, u = a + d);
517
+ }
518
+ return {
519
+ top: l,
520
+ left: a,
521
+ bottom: s,
522
+ right: u,
523
+ width: d,
524
+ height: c
525
+ };
526
+ }
527
+ }
528
+ function en(e, t, n) {
529
+ for (var o = he(e, !0), i = $(e)[t]; o; ) {
530
+ var r = $(o)[n], l = void 0;
531
+ if (l = i >= r, !l) return o;
532
+ if (o === oe()) break;
533
+ o = he(o, !1);
534
+ }
535
+ return !1;
536
+ }
537
+ function ke(e, t, n, o) {
538
+ for (var i = 0, r = 0, l = e.children; r < l.length; ) {
539
+ if (l[r].style.display !== "none" && l[r] !== m.ghost && (o || l[r] !== m.dragged) && Q(l[r], n.draggable, e, !1)) {
540
+ if (i === t)
541
+ return l[r];
542
+ i++;
543
+ }
544
+ r++;
545
+ }
546
+ return null;
547
+ }
548
+ function Xt(e, t) {
549
+ for (var n = e.lastElementChild; n && (n === m.ghost || v(n, "display") === "none" || t && !ut(n, t)); )
550
+ n = n.previousElementSibling;
551
+ return n || null;
552
+ }
553
+ function K(e, t) {
554
+ var n = 0;
555
+ if (!e || !e.parentNode)
556
+ return -1;
557
+ for (; e = e.previousElementSibling; )
558
+ e.nodeName.toUpperCase() !== "TEMPLATE" && e !== m.clone && (!t || ut(e, t)) && n++;
559
+ return n;
560
+ }
561
+ function tn(e) {
562
+ var t = 0, n = 0, o = oe();
563
+ if (e)
564
+ do {
565
+ var i = Oe(e), r = i.a, l = i.d;
566
+ t += e.scrollLeft * r, n += e.scrollTop * l;
567
+ } while (e !== o && (e = e.parentNode));
568
+ return [t, n];
569
+ }
570
+ function go(e, t) {
571
+ for (var n in e)
572
+ if (e.hasOwnProperty(n)) {
573
+ for (var o in t)
574
+ if (t.hasOwnProperty(o) && t[o] === e[n][o]) return Number(n);
575
+ }
576
+ return -1;
577
+ }
578
+ function he(e, t) {
579
+ if (!e || !e.getBoundingClientRect) return oe();
580
+ var n = e, o = !1;
581
+ do
582
+ if (n.clientWidth < n.scrollWidth || n.clientHeight < n.scrollHeight) {
583
+ var i = v(n);
584
+ if (n.clientWidth < n.scrollWidth && (i.overflowX == "auto" || i.overflowX == "scroll") || n.clientHeight < n.scrollHeight && (i.overflowY == "auto" || i.overflowY == "scroll")) {
585
+ if (!n.getBoundingClientRect || n === document.body) return oe();
586
+ if (o || t) return n;
587
+ o = !0;
588
+ }
589
+ }
590
+ while (n = n.parentNode);
591
+ return oe();
592
+ }
593
+ function yo(e, t) {
594
+ if (e && t)
595
+ for (var n in t)
596
+ t.hasOwnProperty(n) && (e[n] = t[n]);
597
+ return e;
598
+ }
599
+ function Et(e, t) {
600
+ return Math.round(e.top) === Math.round(t.top) && Math.round(e.left) === Math.round(t.left) && Math.round(e.height) === Math.round(t.height) && Math.round(e.width) === Math.round(t.width);
601
+ }
602
+ var Ve;
603
+ function Dn(e, t) {
604
+ return function() {
605
+ if (!Ve) {
606
+ var n = arguments, o = this;
607
+ n.length === 1 ? e.call(o, n[0]) : e.apply(o, n), Ve = setTimeout(function() {
608
+ Ve = void 0;
609
+ }, t);
610
+ }
611
+ };
612
+ }
613
+ function bo() {
614
+ clearTimeout(Ve), Ve = void 0;
615
+ }
616
+ function Tn(e, t, n) {
617
+ e.scrollLeft += t, e.scrollTop += n;
618
+ }
619
+ function Cn(e) {
620
+ var t = window.Polymer, n = window.jQuery || window.Zepto;
621
+ return t && t.dom ? t.dom(e).cloneNode(!0) : n ? n(e).clone(!0)[0] : e.cloneNode(!0);
622
+ }
623
+ function Pn(e, t, n) {
624
+ var o = {};
625
+ return Array.from(e.children).forEach(function(i) {
626
+ var r, l, a, s;
627
+ if (!(!Q(i, t.draggable, e, !1) || i.animated || i === n)) {
628
+ var u = $(i);
629
+ o.left = Math.min((r = o.left) !== null && r !== void 0 ? r : 1 / 0, u.left), o.top = Math.min((l = o.top) !== null && l !== void 0 ? l : 1 / 0, u.top), o.right = Math.max((a = o.right) !== null && a !== void 0 ? a : -1 / 0, u.right), o.bottom = Math.max((s = o.bottom) !== null && s !== void 0 ? s : -1 / 0, u.bottom);
630
+ }
631
+ }), o.width = o.right - o.left, o.height = o.bottom - o.top, o.x = o.left, o.y = o.top, o;
632
+ }
633
+ var H = "Sortable" + (/* @__PURE__ */ new Date()).getTime();
634
+ function wo() {
635
+ var e = [], t;
636
+ return {
637
+ captureAnimationState: function() {
638
+ if (e = [], !!this.options.animation) {
639
+ var o = [].slice.call(this.el.children);
640
+ o.forEach(function(i) {
641
+ if (!(v(i, "display") === "none" || i === m.ghost)) {
642
+ e.push({
643
+ target: i,
644
+ rect: $(i)
645
+ });
646
+ var r = re({}, e[e.length - 1].rect);
647
+ if (i.thisAnimationDuration) {
648
+ var l = Oe(i, !0);
649
+ l && (r.top -= l.f, r.left -= l.e);
650
+ }
651
+ i.fromRect = r;
652
+ }
653
+ });
654
+ }
655
+ },
656
+ addAnimationState: function(o) {
657
+ e.push(o);
658
+ },
659
+ removeAnimationState: function(o) {
660
+ e.splice(go(e, {
661
+ target: o
662
+ }), 1);
663
+ },
664
+ animateAll: function(o) {
665
+ var i = this;
666
+ if (!this.options.animation) {
667
+ clearTimeout(t), typeof o == "function" && o();
668
+ return;
669
+ }
670
+ var r = !1, l = 0;
671
+ e.forEach(function(a) {
672
+ var s = 0, u = a.target, c = u.fromRect, d = $(u), p = u.prevFromRect, h = u.prevToRect, y = a.rect, D = Oe(u, !0);
673
+ D && (d.top -= D.f, d.left -= D.e), u.toRect = d, u.thisAnimationDuration && Et(p, d) && !Et(c, d) && // Make sure animatingRect is on line between toRect & fromRect
674
+ (y.top - d.top) / (y.left - d.left) === (c.top - d.top) / (c.left - d.left) && (s = Eo(y, p, h, i.options)), Et(d, c) || (u.prevFromRect = c, u.prevToRect = d, s || (s = i.options.animation), i.animate(u, y, d, s)), s && (r = !0, l = Math.max(l, s), clearTimeout(u.animationResetTimer), u.animationResetTimer = setTimeout(function() {
675
+ u.animationTime = 0, u.prevFromRect = null, u.fromRect = null, u.prevToRect = null, u.thisAnimationDuration = null;
676
+ }, s), u.thisAnimationDuration = s);
677
+ }), clearTimeout(t), r ? t = setTimeout(function() {
678
+ typeof o == "function" && o();
679
+ }, l) : typeof o == "function" && o(), e = [];
680
+ },
681
+ animate: function(o, i, r, l) {
682
+ if (l) {
683
+ v(o, "transition", ""), v(o, "transform", "");
684
+ var a = Oe(this.el), s = a && a.a, u = a && a.d, c = (i.left - r.left) / (s || 1), d = (i.top - r.top) / (u || 1);
685
+ o.animatingX = !!c, o.animatingY = !!d, v(o, "transform", "translate3d(" + c + "px," + d + "px,0)"), this.forRepaintDummy = So(o), v(o, "transition", "transform " + l + "ms" + (this.options.easing ? " " + this.options.easing : "")), v(o, "transform", "translate3d(0,0,0)"), typeof o.animated == "number" && clearTimeout(o.animated), o.animated = setTimeout(function() {
686
+ v(o, "transition", ""), v(o, "transform", ""), o.animated = !1, o.animatingX = !1, o.animatingY = !1;
687
+ }, l);
688
+ }
689
+ }
690
+ };
691
+ }
692
+ function So(e) {
693
+ return e.offsetWidth;
694
+ }
695
+ function Eo(e, t, n, o) {
696
+ return Math.sqrt(Math.pow(t.top - e.top, 2) + Math.pow(t.left - e.left, 2)) / Math.sqrt(Math.pow(t.top - n.top, 2) + Math.pow(t.left - n.left, 2)) * o.animation;
697
+ }
698
+ var xe = [], xt = {
699
+ initializeByDefault: !0
700
+ }, Ge = {
701
+ mount: function(t) {
702
+ for (var n in xt)
703
+ xt.hasOwnProperty(n) && !(n in t) && (t[n] = xt[n]);
704
+ xe.forEach(function(o) {
705
+ if (o.pluginName === t.pluginName)
706
+ throw "Sortable: Cannot mount plugin ".concat(t.pluginName, " more than once");
707
+ }), xe.push(t);
708
+ },
709
+ pluginEvent: function(t, n, o) {
710
+ var i = this;
711
+ this.eventCanceled = !1, o.cancel = function() {
712
+ i.eventCanceled = !0;
713
+ };
714
+ var r = t + "Global";
715
+ xe.forEach(function(l) {
716
+ n[l.pluginName] && (n[l.pluginName][r] && n[l.pluginName][r](re({
717
+ sortable: n
718
+ }, o)), n.options[l.pluginName] && n[l.pluginName][t] && n[l.pluginName][t](re({
719
+ sortable: n
720
+ }, o)));
721
+ });
722
+ },
723
+ initializePlugins: function(t, n, o, i) {
724
+ xe.forEach(function(a) {
725
+ var s = a.pluginName;
726
+ if (!(!t.options[s] && !a.initializeByDefault)) {
727
+ var u = new a(t, n, t.options);
728
+ u.sortable = t, u.options = t.options, t[s] = u, ue(o, u.defaults);
729
+ }
730
+ });
731
+ for (var r in t.options)
732
+ if (t.options.hasOwnProperty(r)) {
733
+ var l = this.modifyOption(t, r, t.options[r]);
734
+ typeof l < "u" && (t.options[r] = l);
735
+ }
736
+ },
737
+ getEventProperties: function(t, n) {
738
+ var o = {};
739
+ return xe.forEach(function(i) {
740
+ typeof i.eventProperties == "function" && ue(o, i.eventProperties.call(n[i.pluginName], t));
741
+ }), o;
742
+ },
743
+ modifyOption: function(t, n, o) {
744
+ var i;
745
+ return xe.forEach(function(r) {
746
+ t[r.pluginName] && r.optionListeners && typeof r.optionListeners[n] == "function" && (i = r.optionListeners[n].call(t[r.pluginName], o));
747
+ }), i;
748
+ }
749
+ };
750
+ function xo(e) {
751
+ var t = e.sortable, n = e.rootEl, o = e.name, i = e.targetEl, r = e.cloneEl, l = e.toEl, a = e.fromEl, s = e.oldIndex, u = e.newIndex, c = e.oldDraggableIndex, d = e.newDraggableIndex, p = e.originalEvent, h = e.putSortable, y = e.extraEventProperties;
752
+ if (t = t || n && n[H], !!t) {
753
+ var D, b = t.options, E = "on" + o.charAt(0).toUpperCase() + o.substr(1);
754
+ window.CustomEvent && !ce && !He ? D = new CustomEvent(o, {
755
+ bubbles: !0,
756
+ cancelable: !0
757
+ }) : (D = document.createEvent("Event"), D.initEvent(o, !0, !0)), D.to = l || n, D.from = a || n, D.item = i || n, D.clone = r, D.oldIndex = s, D.newIndex = u, D.oldDraggableIndex = c, D.newDraggableIndex = d, D.originalEvent = p, D.pullMode = h ? h.lastPutMode : void 0;
758
+ var C = re(re({}, y), Ge.getEventProperties(o, t));
759
+ for (var B in C)
760
+ D[B] = C[B];
761
+ n && n.dispatchEvent(D), b[E] && b[E].call(t, D);
762
+ }
763
+ }
764
+ var Do = ["evt"], Y = function(t, n) {
765
+ var o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, i = o.evt, r = vo(o, Do);
766
+ Ge.pluginEvent.bind(m)(t, n, re({
767
+ dragEl: f,
768
+ parentEl: A,
769
+ ghostEl: w,
770
+ rootEl: P,
771
+ nextEl: we,
772
+ lastDownEl: nt,
773
+ cloneEl: O,
774
+ cloneHidden: pe,
775
+ dragStarted: Me,
776
+ putSortable: V,
777
+ activeSortable: m.active,
778
+ originalEvent: i,
779
+ oldIndex: Ce,
780
+ oldDraggableIndex: Fe,
781
+ newIndex: U,
782
+ newDraggableIndex: fe,
783
+ hideGhostForTarget: kn,
784
+ unhideGhostForTarget: Nn,
785
+ cloneNowHidden: function() {
786
+ pe = !0;
787
+ },
788
+ cloneNowShown: function() {
789
+ pe = !1;
790
+ },
791
+ dispatchSortableEvent: function(a) {
792
+ W({
793
+ sortable: n,
794
+ name: a,
795
+ originalEvent: i
796
+ });
797
+ }
798
+ }, r));
799
+ };
800
+ function W(e) {
801
+ xo(re({
802
+ putSortable: V,
803
+ cloneEl: O,
804
+ targetEl: f,
805
+ rootEl: P,
806
+ oldIndex: Ce,
807
+ oldDraggableIndex: Fe,
808
+ newIndex: U,
809
+ newDraggableIndex: fe
810
+ }, e));
811
+ }
812
+ var f, A, w, P, we, nt, O, pe, Ce, U, Fe, fe, qe, V, Te = !1, ct = !1, dt = [], ge, J, Dt, Tt, nn, on, Me, De, je, We = !1, Ke = !1, ot, j, Ct = [], _t = !1, ft = [], gt = typeof document < "u", Ze = Wt, rn = He || ce ? "cssFloat" : "float", To = gt && !wn && !Wt && "draggable" in document.createElement("div"), In = (function() {
813
+ if (gt) {
814
+ if (ce)
815
+ return !1;
816
+ var e = document.createElement("x");
817
+ return e.style.cssText = "pointer-events:auto", e.style.pointerEvents === "auto";
818
+ }
819
+ })(), On = function(t, n) {
820
+ var o = v(t), i = parseInt(o.width) - parseInt(o.paddingLeft) - parseInt(o.paddingRight) - parseInt(o.borderLeftWidth) - parseInt(o.borderRightWidth), r = ke(t, 0, n), l = ke(t, 1, n), a = r && v(r), s = l && v(l), u = a && parseInt(a.marginLeft) + parseInt(a.marginRight) + $(r).width, c = s && parseInt(s.marginLeft) + parseInt(s.marginRight) + $(l).width;
821
+ if (o.display === "flex")
822
+ return o.flexDirection === "column" || o.flexDirection === "column-reverse" ? "vertical" : "horizontal";
823
+ if (o.display === "grid")
824
+ return o.gridTemplateColumns.split(" ").length <= 1 ? "vertical" : "horizontal";
825
+ if (r && a.float && a.float !== "none") {
826
+ var d = a.float === "left" ? "left" : "right";
827
+ return l && (s.clear === "both" || s.clear === d) ? "vertical" : "horizontal";
828
+ }
829
+ return r && (a.display === "block" || a.display === "flex" || a.display === "table" || a.display === "grid" || u >= i && o[rn] === "none" || l && o[rn] === "none" && u + c > i) ? "vertical" : "horizontal";
830
+ }, Co = function(t, n, o) {
831
+ var i = o ? t.left : t.top, r = o ? t.right : t.bottom, l = o ? t.width : t.height, a = o ? n.left : n.top, s = o ? n.right : n.bottom, u = o ? n.width : n.height;
832
+ return i === a || r === s || i + l / 2 === a + u / 2;
833
+ }, Po = function(t, n) {
834
+ var o;
835
+ return dt.some(function(i) {
836
+ var r = i[H].options.emptyInsertThreshold;
837
+ if (!(!r || Xt(i))) {
838
+ var l = $(i), a = t >= l.left - r && t <= l.right + r, s = n >= l.top - r && n <= l.bottom + r;
839
+ if (a && s)
840
+ return o = i;
841
+ }
842
+ }), o;
843
+ }, An = function(t) {
844
+ function n(r, l) {
845
+ return function(a, s, u, c) {
846
+ var d = a.options.group.name && s.options.group.name && a.options.group.name === s.options.group.name;
847
+ if (r == null && (l || d))
848
+ return !0;
849
+ if (r == null || r === !1)
850
+ return !1;
851
+ if (l && r === "clone")
852
+ return r;
853
+ if (typeof r == "function")
854
+ return n(r(a, s, u, c), l)(a, s, u, c);
855
+ var p = (l ? a : s).options.group.name;
856
+ return r === !0 || typeof r == "string" && r === p || r.join && r.indexOf(p) > -1;
857
+ };
858
+ }
859
+ var o = {}, i = t.group;
860
+ (!i || tt(i) != "object") && (i = {
861
+ name: i
862
+ }), o.name = i.name, o.checkPull = n(i.pull, !0), o.checkPut = n(i.put), o.revertClone = i.revertClone, t.group = o;
863
+ }, kn = function() {
864
+ !In && w && v(w, "display", "none");
865
+ }, Nn = function() {
866
+ !In && w && v(w, "display", "");
867
+ };
868
+ gt && !wn && document.addEventListener("click", function(e) {
869
+ if (ct)
870
+ return e.preventDefault(), e.stopPropagation && e.stopPropagation(), e.stopImmediatePropagation && e.stopImmediatePropagation(), ct = !1, !1;
871
+ }, !0);
872
+ var ye = function(t) {
873
+ if (f) {
874
+ t = t.touches ? t.touches[0] : t;
875
+ var n = Po(t.clientX, t.clientY);
876
+ if (n) {
877
+ var o = {};
878
+ for (var i in t)
879
+ t.hasOwnProperty(i) && (o[i] = t[i]);
880
+ o.target = o.rootEl = n, o.preventDefault = void 0, o.stopPropagation = void 0, n[H]._onDragOver(o);
881
+ }
882
+ }
883
+ }, Io = function(t) {
884
+ f && f.parentNode[H]._isOutsideThisEl(t.target);
885
+ };
886
+ function m(e, t) {
887
+ if (!(e && e.nodeType && e.nodeType === 1))
888
+ throw "Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));
889
+ this.el = e, this.options = t = ue({}, t), e[H] = this;
890
+ var n = {
891
+ group: null,
892
+ sort: !0,
893
+ disabled: !1,
894
+ store: null,
895
+ handle: null,
896
+ draggable: /^[uo]l$/i.test(e.nodeName) ? ">li" : ">*",
897
+ swapThreshold: 1,
898
+ // percentage; 0 <= x <= 1
899
+ invertSwap: !1,
900
+ // invert always
901
+ invertedSwapThreshold: null,
902
+ // will be set to same as swapThreshold if default
903
+ removeCloneOnHide: !0,
904
+ direction: function() {
905
+ return On(e, this.options);
906
+ },
907
+ ghostClass: "sortable-ghost",
908
+ chosenClass: "sortable-chosen",
909
+ dragClass: "sortable-drag",
910
+ ignore: "a, img",
911
+ filter: null,
912
+ preventOnFilter: !0,
913
+ animation: 0,
914
+ easing: null,
915
+ setData: function(l, a) {
916
+ l.setData("Text", a.textContent);
917
+ },
918
+ dropBubble: !1,
919
+ dragoverBubble: !1,
920
+ dataIdAttr: "data-id",
921
+ delay: 0,
922
+ delayOnTouchOnly: !1,
923
+ touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1,
924
+ forceFallback: !1,
925
+ fallbackClass: "sortable-fallback",
926
+ fallbackOnBody: !1,
927
+ fallbackTolerance: 0,
928
+ fallbackOffset: {
929
+ x: 0,
930
+ y: 0
931
+ },
932
+ // Disabled on Safari: #1571; Enabled on Safari IOS: #2244
933
+ supportPointer: m.supportPointer !== !1 && "PointerEvent" in window && (!ze || Wt),
934
+ emptyInsertThreshold: 5
935
+ };
936
+ Ge.initializePlugins(this, e, n);
937
+ for (var o in n)
938
+ !(o in t) && (t[o] = n[o]);
939
+ An(t);
940
+ for (var i in this)
941
+ i.charAt(0) === "_" && typeof this[i] == "function" && (this[i] = this[i].bind(this));
942
+ this.nativeDraggable = t.forceFallback ? !1 : To, this.nativeDraggable && (this.options.touchStartThreshold = 1), t.supportPointer ? x(e, "pointerdown", this._onTapStart) : (x(e, "mousedown", this._onTapStart), x(e, "touchstart", this._onTapStart)), this.nativeDraggable && (x(e, "dragover", this), x(e, "dragenter", this)), dt.push(this.el), t.store && t.store.get && this.sort(t.store.get(this) || []), ue(this, wo());
943
+ }
944
+ m.prototype = /** @lends Sortable.prototype */
945
+ {
946
+ constructor: m,
947
+ _isOutsideThisEl: function(t) {
948
+ !this.el.contains(t) && t !== this.el && (De = null);
949
+ },
950
+ _getDirection: function(t, n) {
951
+ return typeof this.options.direction == "function" ? this.options.direction.call(this, t, n, f) : this.options.direction;
952
+ },
953
+ _onTapStart: function(t) {
954
+ if (t.cancelable) {
955
+ var n = this, o = this.el, i = this.options, r = i.preventOnFilter, l = t.type, a = t.touches && t.touches[0] || t.pointerType && t.pointerType === "touch" && t, s = (a || t).target, u = t.target.shadowRoot && (t.path && t.path[0] || t.composedPath && t.composedPath()[0]) || s, c = i.filter;
956
+ if (Mo(o), !f && !(/mousedown|pointerdown/.test(l) && t.button !== 0 || i.disabled) && !u.isContentEditable && !(!this.nativeDraggable && ze && s && s.tagName.toUpperCase() === "SELECT") && (s = Q(s, i.draggable, o, !1), !(s && s.animated) && nt !== s)) {
957
+ if (Ce = K(s), Fe = K(s, i.draggable), typeof c == "function") {
958
+ if (c.call(this, t, s, this)) {
959
+ W({
960
+ sortable: n,
961
+ rootEl: u,
962
+ name: "filter",
963
+ targetEl: s,
964
+ toEl: o,
965
+ fromEl: o
966
+ }), Y("filter", n, {
967
+ evt: t
968
+ }), r && t.preventDefault();
969
+ return;
970
+ }
971
+ } else if (c && (c = c.split(",").some(function(d) {
972
+ if (d = Q(u, d.trim(), o, !1), d)
973
+ return W({
974
+ sortable: n,
975
+ rootEl: d,
976
+ name: "filter",
977
+ targetEl: s,
978
+ fromEl: o,
979
+ toEl: o
980
+ }), Y("filter", n, {
981
+ evt: t
982
+ }), !0;
983
+ }), c)) {
984
+ r && t.preventDefault();
985
+ return;
986
+ }
987
+ i.handle && !Q(u, i.handle, o, !1) || this._prepareDragStart(t, a, s);
988
+ }
989
+ }
990
+ },
991
+ _prepareDragStart: function(t, n, o) {
992
+ var i = this, r = i.el, l = i.options, a = r.ownerDocument, s;
993
+ if (o && !f && o.parentNode === r) {
994
+ var u = $(o);
995
+ if (P = r, f = o, A = f.parentNode, we = f.nextSibling, nt = o, qe = l.group, m.dragged = f, ge = {
996
+ target: f,
997
+ clientX: (n || t).clientX,
998
+ clientY: (n || t).clientY
999
+ }, nn = ge.clientX - u.left, on = ge.clientY - u.top, this._lastX = (n || t).clientX, this._lastY = (n || t).clientY, f.style["will-change"] = "all", s = function() {
1000
+ if (Y("delayEnded", i, {
1001
+ evt: t
1002
+ }), m.eventCanceled) {
1003
+ i._onDrop();
1004
+ return;
1005
+ }
1006
+ i._disableDelayedDragEvents(), !Jt && i.nativeDraggable && (f.draggable = !0), i._triggerDragStart(t, n), W({
1007
+ sortable: i,
1008
+ name: "choose",
1009
+ originalEvent: t
1010
+ }), G(f, l.chosenClass, !0);
1011
+ }, l.ignore.split(",").forEach(function(c) {
1012
+ xn(f, c.trim(), Pt);
1013
+ }), x(a, "dragover", ye), x(a, "mousemove", ye), x(a, "touchmove", ye), l.supportPointer ? (x(a, "pointerup", i._onDrop), !this.nativeDraggable && x(a, "pointercancel", i._onDrop)) : (x(a, "mouseup", i._onDrop), x(a, "touchend", i._onDrop), x(a, "touchcancel", i._onDrop)), Jt && this.nativeDraggable && (this.options.touchStartThreshold = 4, f.draggable = !0), Y("delayStart", this, {
1014
+ evt: t
1015
+ }), l.delay && (!l.delayOnTouchOnly || n) && (!this.nativeDraggable || !(He || ce))) {
1016
+ if (m.eventCanceled) {
1017
+ this._onDrop();
1018
+ return;
1019
+ }
1020
+ l.supportPointer ? (x(a, "pointerup", i._disableDelayedDrag), x(a, "pointercancel", i._disableDelayedDrag)) : (x(a, "mouseup", i._disableDelayedDrag), x(a, "touchend", i._disableDelayedDrag), x(a, "touchcancel", i._disableDelayedDrag)), x(a, "mousemove", i._delayedDragTouchMoveHandler), x(a, "touchmove", i._delayedDragTouchMoveHandler), l.supportPointer && x(a, "pointermove", i._delayedDragTouchMoveHandler), i._dragStartTimer = setTimeout(s, l.delay);
1021
+ } else
1022
+ s();
1023
+ }
1024
+ },
1025
+ _delayedDragTouchMoveHandler: function(t) {
1026
+ var n = t.touches ? t.touches[0] : t;
1027
+ Math.max(Math.abs(n.clientX - this._lastX), Math.abs(n.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1)) && this._disableDelayedDrag();
1028
+ },
1029
+ _disableDelayedDrag: function() {
1030
+ f && Pt(f), clearTimeout(this._dragStartTimer), this._disableDelayedDragEvents();
1031
+ },
1032
+ _disableDelayedDragEvents: function() {
1033
+ var t = this.el.ownerDocument;
1034
+ S(t, "mouseup", this._disableDelayedDrag), S(t, "touchend", this._disableDelayedDrag), S(t, "touchcancel", this._disableDelayedDrag), S(t, "pointerup", this._disableDelayedDrag), S(t, "pointercancel", this._disableDelayedDrag), S(t, "mousemove", this._delayedDragTouchMoveHandler), S(t, "touchmove", this._delayedDragTouchMoveHandler), S(t, "pointermove", this._delayedDragTouchMoveHandler);
1035
+ },
1036
+ _triggerDragStart: function(t, n) {
1037
+ n = n || t.pointerType == "touch" && t, !this.nativeDraggable || n ? this.options.supportPointer ? x(document, "pointermove", this._onTouchMove) : n ? x(document, "touchmove", this._onTouchMove) : x(document, "mousemove", this._onTouchMove) : (x(f, "dragend", this), x(P, "dragstart", this._onDragStart));
1038
+ try {
1039
+ document.selection ? it(function() {
1040
+ document.selection.empty();
1041
+ }) : window.getSelection().removeAllRanges();
1042
+ } catch {
1043
+ }
1044
+ },
1045
+ _dragStarted: function(t, n) {
1046
+ if (Te = !1, P && f) {
1047
+ Y("dragStarted", this, {
1048
+ evt: n
1049
+ }), this.nativeDraggable && x(document, "dragover", Io);
1050
+ var o = this.options;
1051
+ !t && G(f, o.dragClass, !1), G(f, o.ghostClass, !0), m.active = this, t && this._appendGhost(), W({
1052
+ sortable: this,
1053
+ name: "start",
1054
+ originalEvent: n
1055
+ });
1056
+ } else
1057
+ this._nulling();
1058
+ },
1059
+ _emulateDragOver: function() {
1060
+ if (J) {
1061
+ this._lastX = J.clientX, this._lastY = J.clientY, kn();
1062
+ for (var t = document.elementFromPoint(J.clientX, J.clientY), n = t; t && t.shadowRoot && (t = t.shadowRoot.elementFromPoint(J.clientX, J.clientY), t !== n); )
1063
+ n = t;
1064
+ if (f.parentNode[H]._isOutsideThisEl(t), n)
1065
+ do {
1066
+ if (n[H]) {
1067
+ var o = void 0;
1068
+ if (o = n[H]._onDragOver({
1069
+ clientX: J.clientX,
1070
+ clientY: J.clientY,
1071
+ target: t,
1072
+ rootEl: n
1073
+ }), o && !this.options.dragoverBubble)
1074
+ break;
1075
+ }
1076
+ t = n;
1077
+ } while (n = En(n));
1078
+ Nn();
1079
+ }
1080
+ },
1081
+ _onTouchMove: function(t) {
1082
+ if (ge) {
1083
+ var n = this.options, o = n.fallbackTolerance, i = n.fallbackOffset, r = t.touches ? t.touches[0] : t, l = w && Oe(w, !0), a = w && l && l.a, s = w && l && l.d, u = Ze && j && tn(j), c = (r.clientX - ge.clientX + i.x) / (a || 1) + (u ? u[0] - Ct[0] : 0) / (a || 1), d = (r.clientY - ge.clientY + i.y) / (s || 1) + (u ? u[1] - Ct[1] : 0) / (s || 1);
1084
+ if (!m.active && !Te) {
1085
+ if (o && Math.max(Math.abs(r.clientX - this._lastX), Math.abs(r.clientY - this._lastY)) < o)
1086
+ return;
1087
+ this._onDragStart(t, !0);
1088
+ }
1089
+ if (w) {
1090
+ l ? (l.e += c - (Dt || 0), l.f += d - (Tt || 0)) : l = {
1091
+ a: 1,
1092
+ b: 0,
1093
+ c: 0,
1094
+ d: 1,
1095
+ e: c,
1096
+ f: d
1097
+ };
1098
+ var p = "matrix(".concat(l.a, ",").concat(l.b, ",").concat(l.c, ",").concat(l.d, ",").concat(l.e, ",").concat(l.f, ")");
1099
+ v(w, "webkitTransform", p), v(w, "mozTransform", p), v(w, "msTransform", p), v(w, "transform", p), Dt = c, Tt = d, J = r;
1100
+ }
1101
+ t.cancelable && t.preventDefault();
1102
+ }
1103
+ },
1104
+ _appendGhost: function() {
1105
+ if (!w) {
1106
+ var t = this.options.fallbackOnBody ? document.body : P, n = $(f, !0, Ze, !0, t), o = this.options;
1107
+ if (Ze) {
1108
+ for (j = t; v(j, "position") === "static" && v(j, "transform") === "none" && j !== document; )
1109
+ j = j.parentNode;
1110
+ j !== document.body && j !== document.documentElement ? (j === document && (j = oe()), n.top += j.scrollTop, n.left += j.scrollLeft) : j = oe(), Ct = tn(j);
1111
+ }
1112
+ w = f.cloneNode(!0), G(w, o.ghostClass, !1), G(w, o.fallbackClass, !0), G(w, o.dragClass, !0), v(w, "transition", ""), v(w, "transform", ""), v(w, "box-sizing", "border-box"), v(w, "margin", 0), v(w, "top", n.top), v(w, "left", n.left), v(w, "width", n.width), v(w, "height", n.height), v(w, "opacity", "0.8"), v(w, "position", Ze ? "absolute" : "fixed"), v(w, "zIndex", "100000"), v(w, "pointerEvents", "none"), m.ghost = w, t.appendChild(w), v(w, "transform-origin", nn / parseInt(w.style.width) * 100 + "% " + on / parseInt(w.style.height) * 100 + "%");
1113
+ }
1114
+ },
1115
+ _onDragStart: function(t, n) {
1116
+ var o = this, i = t.dataTransfer, r = o.options;
1117
+ if (Y("dragStart", this, {
1118
+ evt: t
1119
+ }), m.eventCanceled) {
1120
+ this._onDrop();
1121
+ return;
1122
+ }
1123
+ Y("setupClone", this), m.eventCanceled || (O = Cn(f), O.removeAttribute("id"), O.draggable = !1, O.style["will-change"] = "", this._hideClone(), G(O, this.options.chosenClass, !1), m.clone = O), o.cloneId = it(function() {
1124
+ Y("clone", o), !m.eventCanceled && (o.options.removeCloneOnHide || P.insertBefore(O, f), o._hideClone(), W({
1125
+ sortable: o,
1126
+ name: "clone"
1127
+ }));
1128
+ }), !n && G(f, r.dragClass, !0), n ? (ct = !0, o._loopId = setInterval(o._emulateDragOver, 50)) : (S(document, "mouseup", o._onDrop), S(document, "touchend", o._onDrop), S(document, "touchcancel", o._onDrop), i && (i.effectAllowed = "move", r.setData && r.setData.call(o, i, f)), x(document, "drop", o), v(f, "transform", "translateZ(0)")), Te = !0, o._dragStartId = it(o._dragStarted.bind(o, n, t)), x(document, "selectstart", o), Me = !0, window.getSelection().removeAllRanges(), ze && v(document.body, "user-select", "none");
1129
+ },
1130
+ // Returns true - if no further action is needed (either inserted or another condition)
1131
+ _onDragOver: function(t) {
1132
+ var n = this.el, o = t.target, i, r, l, a = this.options, s = a.group, u = m.active, c = qe === s, d = a.sort, p = V || u, h, y = this, D = !1;
1133
+ if (_t) return;
1134
+ function b($e, _n) {
1135
+ Y($e, y, re({
1136
+ evt: t,
1137
+ isOwner: c,
1138
+ axis: h ? "vertical" : "horizontal",
1139
+ revert: l,
1140
+ dragRect: i,
1141
+ targetRect: r,
1142
+ canSort: d,
1143
+ fromSortable: p,
1144
+ target: o,
1145
+ completed: C,
1146
+ onMove: function(Gt, Mn) {
1147
+ return Je(P, n, f, i, Gt, $(Gt), t, Mn);
1148
+ },
1149
+ changed: B
1150
+ }, _n));
1151
+ }
1152
+ function E() {
1153
+ b("dragOverAnimationCapture"), y.captureAnimationState(), y !== p && p.captureAnimationState();
1154
+ }
1155
+ function C($e) {
1156
+ return b("dragOverCompleted", {
1157
+ insertion: $e
1158
+ }), $e && (c ? u._hideClone() : u._showClone(y), y !== p && (G(f, V ? V.options.ghostClass : u.options.ghostClass, !1), G(f, a.ghostClass, !0)), V !== y && y !== m.active ? V = y : y === m.active && V && (V = null), p === y && (y._ignoreWhileAnimating = o), y.animateAll(function() {
1159
+ b("dragOverAnimationComplete"), y._ignoreWhileAnimating = null;
1160
+ }), y !== p && (p.animateAll(), p._ignoreWhileAnimating = null)), (o === f && !f.animated || o === n && !o.animated) && (De = null), !a.dragoverBubble && !t.rootEl && o !== document && (f.parentNode[H]._isOutsideThisEl(t.target), !$e && ye(t)), !a.dragoverBubble && t.stopPropagation && t.stopPropagation(), D = !0;
1161
+ }
1162
+ function B() {
1163
+ U = K(f), fe = K(f, a.draggable), W({
1164
+ sortable: y,
1165
+ name: "change",
1166
+ toEl: n,
1167
+ newIndex: U,
1168
+ newDraggableIndex: fe,
1169
+ originalEvent: t
1170
+ });
1171
+ }
1172
+ if (t.preventDefault !== void 0 && t.cancelable && t.preventDefault(), o = Q(o, a.draggable, n, !0), b("dragOver"), m.eventCanceled) return D;
1173
+ if (f.contains(t.target) || o.animated && o.animatingX && o.animatingY || y._ignoreWhileAnimating === o)
1174
+ return C(!1);
1175
+ if (ct = !1, u && !a.disabled && (c ? d || (l = A !== P) : V === this || (this.lastPutMode = qe.checkPull(this, u, f, t)) && s.checkPut(this, u, f, t))) {
1176
+ if (h = this._getDirection(t, o) === "vertical", i = $(f), b("dragOverValid"), m.eventCanceled) return D;
1177
+ if (l)
1178
+ return A = P, E(), this._hideClone(), b("revert"), m.eventCanceled || (we ? P.insertBefore(f, we) : P.appendChild(f)), C(!0);
1179
+ var k = Xt(n, a.draggable);
1180
+ if (!k || No(t, h, this) && !k.animated) {
1181
+ if (k === f)
1182
+ return C(!1);
1183
+ if (k && n === t.target && (o = k), o && (r = $(o)), Je(P, n, f, i, o, r, t, !!o) !== !1)
1184
+ return E(), k && k.nextSibling ? n.insertBefore(f, k.nextSibling) : n.appendChild(f), A = n, B(), C(!0);
1185
+ } else if (k && ko(t, h, this)) {
1186
+ var R = ke(n, 0, a, !0);
1187
+ if (R === f)
1188
+ return C(!1);
1189
+ if (o = R, r = $(o), Je(P, n, f, i, o, r, t, !1) !== !1)
1190
+ return E(), n.insertBefore(f, R), A = n, B(), C(!0);
1191
+ } else if (o.parentNode === n) {
1192
+ r = $(o);
1193
+ var N = 0, F, ae = f.parentNode !== n, z = !Co(f.animated && f.toRect || i, o.animated && o.toRect || r, h), ve = h ? "top" : "left", Z = en(o, "top", "top") || en(f, "top", "top"), Ne = Z ? Z.scrollTop : void 0;
1194
+ De !== o && (F = r[ve], We = !1, Ke = !z && a.invertSwap || ae), N = Lo(t, o, r, h, z ? 1 : a.swapThreshold, a.invertedSwapThreshold == null ? a.swapThreshold : a.invertedSwapThreshold, Ke, De === o);
1195
+ var le;
1196
+ if (N !== 0) {
1197
+ var me = K(f);
1198
+ do
1199
+ me -= N, le = A.children[me];
1200
+ while (le && (v(le, "display") === "none" || le === w));
1201
+ }
1202
+ if (N === 0 || le === o)
1203
+ return C(!1);
1204
+ De = o, je = N;
1205
+ var Le = o.nextElementSibling, de = !1;
1206
+ de = N === 1;
1207
+ var Ue = Je(P, n, f, i, o, r, t, de);
1208
+ if (Ue !== !1)
1209
+ return (Ue === 1 || Ue === -1) && (de = Ue === 1), _t = !0, setTimeout(Ao, 30), E(), de && !Le ? n.appendChild(f) : o.parentNode.insertBefore(f, de ? Le : o), Z && Tn(Z, 0, Ne - Z.scrollTop), A = f.parentNode, F !== void 0 && !Ke && (ot = Math.abs(F - $(o)[ve])), B(), C(!0);
1210
+ }
1211
+ if (n.contains(f))
1212
+ return C(!1);
1213
+ }
1214
+ return !1;
1215
+ },
1216
+ _ignoreWhileAnimating: null,
1217
+ _offMoveEvents: function() {
1218
+ S(document, "mousemove", this._onTouchMove), S(document, "touchmove", this._onTouchMove), S(document, "pointermove", this._onTouchMove), S(document, "dragover", ye), S(document, "mousemove", ye), S(document, "touchmove", ye);
1219
+ },
1220
+ _offUpEvents: function() {
1221
+ var t = this.el.ownerDocument;
1222
+ S(t, "mouseup", this._onDrop), S(t, "touchend", this._onDrop), S(t, "pointerup", this._onDrop), S(t, "pointercancel", this._onDrop), S(t, "touchcancel", this._onDrop), S(document, "selectstart", this);
1223
+ },
1224
+ _onDrop: function(t) {
1225
+ var n = this.el, o = this.options;
1226
+ if (U = K(f), fe = K(f, o.draggable), Y("drop", this, {
1227
+ evt: t
1228
+ }), A = f && f.parentNode, U = K(f), fe = K(f, o.draggable), m.eventCanceled) {
1229
+ this._nulling();
1230
+ return;
1231
+ }
1232
+ Te = !1, Ke = !1, We = !1, clearInterval(this._loopId), clearTimeout(this._dragStartTimer), Mt(this.cloneId), Mt(this._dragStartId), this.nativeDraggable && (S(document, "drop", this), S(n, "dragstart", this._onDragStart)), this._offMoveEvents(), this._offUpEvents(), ze && v(document.body, "user-select", ""), v(f, "transform", ""), t && (Me && (t.cancelable && t.preventDefault(), !o.dropBubble && t.stopPropagation()), w && w.parentNode && w.parentNode.removeChild(w), (P === A || V && V.lastPutMode !== "clone") && O && O.parentNode && O.parentNode.removeChild(O), f && (this.nativeDraggable && S(f, "dragend", this), Pt(f), f.style["will-change"] = "", Me && !Te && G(f, V ? V.options.ghostClass : this.options.ghostClass, !1), G(f, this.options.chosenClass, !1), W({
1233
+ sortable: this,
1234
+ name: "unchoose",
1235
+ toEl: A,
1236
+ newIndex: null,
1237
+ newDraggableIndex: null,
1238
+ originalEvent: t
1239
+ }), P !== A ? (U >= 0 && (W({
1240
+ rootEl: A,
1241
+ name: "add",
1242
+ toEl: A,
1243
+ fromEl: P,
1244
+ originalEvent: t
1245
+ }), W({
1246
+ sortable: this,
1247
+ name: "remove",
1248
+ toEl: A,
1249
+ originalEvent: t
1250
+ }), W({
1251
+ rootEl: A,
1252
+ name: "sort",
1253
+ toEl: A,
1254
+ fromEl: P,
1255
+ originalEvent: t
1256
+ }), W({
1257
+ sortable: this,
1258
+ name: "sort",
1259
+ toEl: A,
1260
+ originalEvent: t
1261
+ })), V && V.save()) : U !== Ce && U >= 0 && (W({
1262
+ sortable: this,
1263
+ name: "update",
1264
+ toEl: A,
1265
+ originalEvent: t
1266
+ }), W({
1267
+ sortable: this,
1268
+ name: "sort",
1269
+ toEl: A,
1270
+ originalEvent: t
1271
+ })), m.active && ((U == null || U === -1) && (U = Ce, fe = Fe), W({
1272
+ sortable: this,
1273
+ name: "end",
1274
+ toEl: A,
1275
+ originalEvent: t
1276
+ }), this.save()))), this._nulling();
1277
+ },
1278
+ _nulling: function() {
1279
+ Y("nulling", this), P = f = A = w = we = O = nt = pe = ge = J = Me = U = fe = Ce = Fe = De = je = V = qe = m.dragged = m.ghost = m.clone = m.active = null, ft.forEach(function(t) {
1280
+ t.checked = !0;
1281
+ }), ft.length = Dt = Tt = 0;
1282
+ },
1283
+ handleEvent: function(t) {
1284
+ switch (t.type) {
1285
+ case "drop":
1286
+ case "dragend":
1287
+ this._onDrop(t);
1288
+ break;
1289
+ case "dragenter":
1290
+ case "dragover":
1291
+ f && (this._onDragOver(t), Oo(t));
1292
+ break;
1293
+ case "selectstart":
1294
+ t.preventDefault();
1295
+ break;
1296
+ }
1297
+ },
1298
+ /**
1299
+ * Serializes the item into an array of string.
1300
+ * @returns {String[]}
1301
+ */
1302
+ toArray: function() {
1303
+ for (var t = [], n, o = this.el.children, i = 0, r = o.length, l = this.options; i < r; i++)
1304
+ n = o[i], Q(n, l.draggable, this.el, !1) && t.push(n.getAttribute(l.dataIdAttr) || _o(n));
1305
+ return t;
1306
+ },
1307
+ /**
1308
+ * Sorts the elements according to the array.
1309
+ * @param {String[]} order order of the items
1310
+ */
1311
+ sort: function(t, n) {
1312
+ var o = {}, i = this.el;
1313
+ this.toArray().forEach(function(r, l) {
1314
+ var a = i.children[l];
1315
+ Q(a, this.options.draggable, i, !1) && (o[r] = a);
1316
+ }, this), n && this.captureAnimationState(), t.forEach(function(r) {
1317
+ o[r] && (i.removeChild(o[r]), i.appendChild(o[r]));
1318
+ }), n && this.animateAll();
1319
+ },
1320
+ /**
1321
+ * Save the current sorting
1322
+ */
1323
+ save: function() {
1324
+ var t = this.options.store;
1325
+ t && t.set && t.set(this);
1326
+ },
1327
+ /**
1328
+ * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.
1329
+ * @param {HTMLElement} el
1330
+ * @param {String} [selector] default: `options.draggable`
1331
+ * @returns {HTMLElement|null}
1332
+ */
1333
+ closest: function(t, n) {
1334
+ return Q(t, n || this.options.draggable, this.el, !1);
1335
+ },
1336
+ /**
1337
+ * Set/get option
1338
+ * @param {string} name
1339
+ * @param {*} [value]
1340
+ * @returns {*}
1341
+ */
1342
+ option: function(t, n) {
1343
+ var o = this.options;
1344
+ if (n === void 0)
1345
+ return o[t];
1346
+ var i = Ge.modifyOption(this, t, n);
1347
+ typeof i < "u" ? o[t] = i : o[t] = n, t === "group" && An(o);
1348
+ },
1349
+ /**
1350
+ * Destroy
1351
+ */
1352
+ destroy: function() {
1353
+ Y("destroy", this);
1354
+ var t = this.el;
1355
+ t[H] = null, S(t, "mousedown", this._onTapStart), S(t, "touchstart", this._onTapStart), S(t, "pointerdown", this._onTapStart), this.nativeDraggable && (S(t, "dragover", this), S(t, "dragenter", this)), Array.prototype.forEach.call(t.querySelectorAll("[draggable]"), function(n) {
1356
+ n.removeAttribute("draggable");
1357
+ }), this._onDrop(), this._disableDelayedDragEvents(), dt.splice(dt.indexOf(this.el), 1), this.el = t = null;
1358
+ },
1359
+ _hideClone: function() {
1360
+ if (!pe) {
1361
+ if (Y("hideClone", this), m.eventCanceled) return;
1362
+ v(O, "display", "none"), this.options.removeCloneOnHide && O.parentNode && O.parentNode.removeChild(O), pe = !0;
1363
+ }
1364
+ },
1365
+ _showClone: function(t) {
1366
+ if (t.lastPutMode !== "clone") {
1367
+ this._hideClone();
1368
+ return;
1369
+ }
1370
+ if (pe) {
1371
+ if (Y("showClone", this), m.eventCanceled) return;
1372
+ f.parentNode == P && !this.options.group.revertClone ? P.insertBefore(O, f) : we ? P.insertBefore(O, we) : P.appendChild(O), this.options.group.revertClone && this.animate(f, O), v(O, "display", ""), pe = !1;
1373
+ }
1374
+ }
1375
+ };
1376
+ function Oo(e) {
1377
+ e.dataTransfer && (e.dataTransfer.dropEffect = "move"), e.cancelable && e.preventDefault();
1378
+ }
1379
+ function Je(e, t, n, o, i, r, l, a) {
1380
+ var s, u = e[H], c = u.options.onMove, d;
1381
+ return window.CustomEvent && !ce && !He ? s = new CustomEvent("move", {
1382
+ bubbles: !0,
1383
+ cancelable: !0
1384
+ }) : (s = document.createEvent("Event"), s.initEvent("move", !0, !0)), s.to = t, s.from = e, s.dragged = n, s.draggedRect = o, s.related = i || t, s.relatedRect = r || $(t), s.willInsertAfter = a, s.originalEvent = l, e.dispatchEvent(s), c && (d = c.call(u, s, l)), d;
1385
+ }
1386
+ function Pt(e) {
1387
+ e.draggable = !1;
1388
+ }
1389
+ function Ao() {
1390
+ _t = !1;
1391
+ }
1392
+ function ko(e, t, n) {
1393
+ var o = $(ke(n.el, 0, n.options, !0)), i = Pn(n.el, n.options, w), r = 10;
1394
+ return t ? e.clientX < i.left - r || e.clientY < o.top && e.clientX < o.right : e.clientY < i.top - r || e.clientY < o.bottom && e.clientX < o.left;
1395
+ }
1396
+ function No(e, t, n) {
1397
+ var o = $(Xt(n.el, n.options.draggable)), i = Pn(n.el, n.options, w), r = 10;
1398
+ return t ? e.clientX > i.right + r || e.clientY > o.bottom && e.clientX > o.left : e.clientY > i.bottom + r || e.clientX > o.right && e.clientY > o.top;
1399
+ }
1400
+ function Lo(e, t, n, o, i, r, l, a) {
1401
+ var s = o ? e.clientY : e.clientX, u = o ? n.height : n.width, c = o ? n.top : n.left, d = o ? n.bottom : n.right, p = !1;
1402
+ if (!l) {
1403
+ if (a && ot < u * i) {
1404
+ if (!We && (je === 1 ? s > c + u * r / 2 : s < d - u * r / 2) && (We = !0), We)
1405
+ p = !0;
1406
+ else if (je === 1 ? s < c + ot : s > d - ot)
1407
+ return -je;
1408
+ } else if (s > c + u * (1 - i) / 2 && s < d - u * (1 - i) / 2)
1409
+ return $o(t);
1410
+ }
1411
+ return p = p || l, p && (s < c + u * r / 2 || s > d - u * r / 2) ? s > c + u / 2 ? 1 : -1 : 0;
1412
+ }
1413
+ function $o(e) {
1414
+ return K(f) < K(e) ? 1 : -1;
1415
+ }
1416
+ function _o(e) {
1417
+ for (var t = e.tagName + e.className + e.src + e.href + e.textContent, n = t.length, o = 0; n--; )
1418
+ o += t.charCodeAt(n);
1419
+ return o.toString(36);
1420
+ }
1421
+ function Mo(e) {
1422
+ ft.length = 0;
1423
+ for (var t = e.getElementsByTagName("input"), n = t.length; n--; ) {
1424
+ var o = t[n];
1425
+ o.checked && ft.push(o);
1426
+ }
1427
+ }
1428
+ function it(e) {
1429
+ return setTimeout(e, 0);
1430
+ }
1431
+ function Mt(e) {
1432
+ return clearTimeout(e);
1433
+ }
1434
+ gt && x(document, "touchmove", function(e) {
1435
+ (m.active || Te) && e.cancelable && e.preventDefault();
1436
+ });
1437
+ m.utils = {
1438
+ on: x,
1439
+ off: S,
1440
+ css: v,
1441
+ find: xn,
1442
+ is: function(t, n) {
1443
+ return !!Q(t, n, t, !1);
1444
+ },
1445
+ extend: yo,
1446
+ throttle: Dn,
1447
+ closest: Q,
1448
+ toggleClass: G,
1449
+ clone: Cn,
1450
+ index: K,
1451
+ nextTick: it,
1452
+ cancelNextTick: Mt,
1453
+ detectDirection: On,
1454
+ getChild: ke,
1455
+ expando: H
1456
+ };
1457
+ m.get = function(e) {
1458
+ return e[H];
1459
+ };
1460
+ m.mount = function() {
1461
+ for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
1462
+ t[n] = arguments[n];
1463
+ t[0].constructor === Array && (t = t[0]), t.forEach(function(o) {
1464
+ if (!o.prototype || !o.prototype.constructor)
1465
+ throw "Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(o));
1466
+ o.utils && (m.utils = re(re({}, m.utils), o.utils)), Ge.mount(o);
1467
+ });
1468
+ };
1469
+ m.create = function(e, t) {
1470
+ return new m(e, t);
1471
+ };
1472
+ m.version = mo;
1473
+ var L = [], Re, Rt, Bt = !1, It, Ot, pt, Be;
1474
+ function Ro() {
1475
+ function e() {
1476
+ this.defaults = {
1477
+ scroll: !0,
1478
+ forceAutoScrollFallback: !1,
1479
+ scrollSensitivity: 30,
1480
+ scrollSpeed: 10,
1481
+ bubbleScroll: !0
1482
+ };
1483
+ for (var t in this)
1484
+ t.charAt(0) === "_" && typeof this[t] == "function" && (this[t] = this[t].bind(this));
1485
+ }
1486
+ return e.prototype = {
1487
+ dragStarted: function(n) {
1488
+ var o = n.originalEvent;
1489
+ this.sortable.nativeDraggable ? x(document, "dragover", this._handleAutoScroll) : this.options.supportPointer ? x(document, "pointermove", this._handleFallbackAutoScroll) : o.touches ? x(document, "touchmove", this._handleFallbackAutoScroll) : x(document, "mousemove", this._handleFallbackAutoScroll);
1490
+ },
1491
+ dragOverCompleted: function(n) {
1492
+ var o = n.originalEvent;
1493
+ !this.options.dragOverBubble && !o.rootEl && this._handleAutoScroll(o);
1494
+ },
1495
+ drop: function() {
1496
+ this.sortable.nativeDraggable ? S(document, "dragover", this._handleAutoScroll) : (S(document, "pointermove", this._handleFallbackAutoScroll), S(document, "touchmove", this._handleFallbackAutoScroll), S(document, "mousemove", this._handleFallbackAutoScroll)), an(), rt(), bo();
1497
+ },
1498
+ nulling: function() {
1499
+ pt = Rt = Re = Bt = Be = It = Ot = null, L.length = 0;
1500
+ },
1501
+ _handleFallbackAutoScroll: function(n) {
1502
+ this._handleAutoScroll(n, !0);
1503
+ },
1504
+ _handleAutoScroll: function(n, o) {
1505
+ var i = this, r = (n.touches ? n.touches[0] : n).clientX, l = (n.touches ? n.touches[0] : n).clientY, a = document.elementFromPoint(r, l);
1506
+ if (pt = n, o || this.options.forceAutoScrollFallback || He || ce || ze) {
1507
+ At(n, this.options, a, o);
1508
+ var s = he(a, !0);
1509
+ Bt && (!Be || r !== It || l !== Ot) && (Be && an(), Be = setInterval(function() {
1510
+ var u = he(document.elementFromPoint(r, l), !0);
1511
+ u !== s && (s = u, rt()), At(n, i.options, u, o);
1512
+ }, 10), It = r, Ot = l);
1513
+ } else {
1514
+ if (!this.options.bubbleScroll || he(a, !0) === oe()) {
1515
+ rt();
1516
+ return;
1517
+ }
1518
+ At(n, this.options, he(a, !1), !1);
1519
+ }
1520
+ }
1521
+ }, ue(e, {
1522
+ pluginName: "scroll",
1523
+ initializeByDefault: !0
1524
+ });
1525
+ }
1526
+ function rt() {
1527
+ L.forEach(function(e) {
1528
+ clearInterval(e.pid);
1529
+ }), L = [];
1530
+ }
1531
+ function an() {
1532
+ clearInterval(Be);
1533
+ }
1534
+ var At = Dn(function(e, t, n, o) {
1535
+ if (t.scroll) {
1536
+ var i = (e.touches ? e.touches[0] : e).clientX, r = (e.touches ? e.touches[0] : e).clientY, l = t.scrollSensitivity, a = t.scrollSpeed, s = oe(), u = !1, c;
1537
+ Rt !== n && (Rt = n, rt(), Re = t.scroll, c = t.scrollFn, Re === !0 && (Re = he(n, !0)));
1538
+ var d = 0, p = Re;
1539
+ do {
1540
+ var h = p, y = $(h), D = y.top, b = y.bottom, E = y.left, C = y.right, B = y.width, k = y.height, R = void 0, N = void 0, F = h.scrollWidth, ae = h.scrollHeight, z = v(h), ve = h.scrollLeft, Z = h.scrollTop;
1541
+ h === s ? (R = B < F && (z.overflowX === "auto" || z.overflowX === "scroll" || z.overflowX === "visible"), N = k < ae && (z.overflowY === "auto" || z.overflowY === "scroll" || z.overflowY === "visible")) : (R = B < F && (z.overflowX === "auto" || z.overflowX === "scroll"), N = k < ae && (z.overflowY === "auto" || z.overflowY === "scroll"));
1542
+ var Ne = R && (Math.abs(C - i) <= l && ve + B < F) - (Math.abs(E - i) <= l && !!ve), le = N && (Math.abs(b - r) <= l && Z + k < ae) - (Math.abs(D - r) <= l && !!Z);
1543
+ if (!L[d])
1544
+ for (var me = 0; me <= d; me++)
1545
+ L[me] || (L[me] = {});
1546
+ (L[d].vx != Ne || L[d].vy != le || L[d].el !== h) && (L[d].el = h, L[d].vx = Ne, L[d].vy = le, clearInterval(L[d].pid), (Ne != 0 || le != 0) && (u = !0, L[d].pid = setInterval(function() {
1547
+ o && this.layer === 0 && m.active._onTouchMove(pt);
1548
+ var Le = L[this.layer].vy ? L[this.layer].vy * a : 0, de = L[this.layer].vx ? L[this.layer].vx * a : 0;
1549
+ typeof c == "function" && c.call(m.dragged.parentNode[H], de, Le, e, pt, L[this.layer].el) !== "continue" || Tn(L[this.layer].el, de, Le);
1550
+ }.bind({
1551
+ layer: d
1552
+ }), 24))), d++;
1553
+ } while (t.bubbleScroll && p !== s && (p = he(p, !1)));
1554
+ Bt = u;
1555
+ }
1556
+ }, 30), Ln = function(t) {
1557
+ var n = t.originalEvent, o = t.putSortable, i = t.dragEl, r = t.activeSortable, l = t.dispatchSortableEvent, a = t.hideGhostForTarget, s = t.unhideGhostForTarget;
1558
+ if (n) {
1559
+ var u = o || r;
1560
+ a();
1561
+ var c = n.changedTouches && n.changedTouches.length ? n.changedTouches[0] : n, d = document.elementFromPoint(c.clientX, c.clientY);
1562
+ s(), u && !u.el.contains(d) && (l("spill"), this.onSpill({
1563
+ dragEl: i,
1564
+ putSortable: o
1565
+ }));
1566
+ }
1567
+ };
1568
+ function Yt() {
1569
+ }
1570
+ Yt.prototype = {
1571
+ startIndex: null,
1572
+ dragStart: function(t) {
1573
+ var n = t.oldDraggableIndex;
1574
+ this.startIndex = n;
1575
+ },
1576
+ onSpill: function(t) {
1577
+ var n = t.dragEl, o = t.putSortable;
1578
+ this.sortable.captureAnimationState(), o && o.captureAnimationState();
1579
+ var i = ke(this.sortable.el, this.startIndex, this.options);
1580
+ i ? this.sortable.el.insertBefore(n, i) : this.sortable.el.appendChild(n), this.sortable.animateAll(), o && o.animateAll();
1581
+ },
1582
+ drop: Ln
1583
+ };
1584
+ ue(Yt, {
1585
+ pluginName: "revertOnSpill"
1586
+ });
1587
+ function Ht() {
1588
+ }
1589
+ Ht.prototype = {
1590
+ onSpill: function(t) {
1591
+ var n = t.dragEl, o = t.putSortable, i = o || this.sortable;
1592
+ i.captureAnimationState(), n.parentNode && n.parentNode.removeChild(n), i.animateAll();
1593
+ },
1594
+ drop: Ln
1595
+ };
1596
+ ue(Ht, {
1597
+ pluginName: "removeOnSpill"
1598
+ });
1599
+ m.mount(new Ro());
1600
+ m.mount(Ht, Yt);
1601
+ function Bo(e, t, n = {}) {
1602
+ let o;
1603
+ const { document: i = to, ...r } = n, l = {
1604
+ onUpdate: (c) => {
1605
+ Fo(t, c.oldIndex, c.newIndex, c);
1606
+ }
1607
+ }, a = () => {
1608
+ const c = typeof e == "string" ? i?.querySelector(e) : mn(e);
1609
+ !c || o !== void 0 || (o = new m(c, { ...l, ...r }));
1610
+ }, s = () => {
1611
+ o?.destroy(), o = void 0;
1612
+ }, u = (c, d) => {
1613
+ if (d !== void 0)
1614
+ o?.option(c, d);
1615
+ else
1616
+ return o?.option(c);
1617
+ };
1618
+ return Qn(a), vt(s), {
1619
+ stop: s,
1620
+ start: a,
1621
+ option: u
1622
+ };
1623
+ }
1624
+ function zo(e, t, n) {
1625
+ const o = e.children[n];
1626
+ e.insertBefore(t, o);
1627
+ }
1628
+ function Vo(e) {
1629
+ e.parentNode && e.parentNode.removeChild(e);
1630
+ }
1631
+ function Fo(e, t, n, o = null) {
1632
+ o != null && (Vo(o.item), zo(o.from, o.item, t));
1633
+ const i = sn(e), r = i ? [...M(e)] : M(e);
1634
+ if (n >= 0 && n < r.length) {
1635
+ const l = r.splice(t, 1)[0];
1636
+ Ft(() => {
1637
+ r.splice(n, 0, l), i && (e.value = r);
1638
+ });
1639
+ }
1640
+ }
1641
+ const jo = ["data-align"], Wo = /* @__PURE__ */ q({
1642
+ __name: "PvPopover",
1643
+ props: {
1644
+ alignment: { default: void 0, type: null },
1645
+ cssCustomProperties: { default: () => ({}), type: Object },
1646
+ cssCustomListProperties: { type: Object },
1647
+ isList: { type: Boolean, default: !1 },
1648
+ isSortable: { type: Boolean }
1649
+ },
1650
+ emits: ["list-order-updated"],
1651
+ setup(e, { expose: t, emit: n }) {
1652
+ const o = ee(null), i = lt("popoverList"), r = e, l = n;
1653
+ return r.isSortable && r.isList && Bo(i, [], {
1654
+ animation: 150,
1655
+ onUpdate: () => {
1656
+ const a = Array.from(i.value?.children || []).map(
1657
+ (s) => s.id
1658
+ );
1659
+ l("list-order-updated", a);
1660
+ }
1661
+ }), t({ popoverRoot: o }), (a, s) => (g(), T("div", {
1662
+ ref_key: "popoverRoot",
1663
+ ref: o,
1664
+ class: "pv-popover",
1665
+ "data-testid": "pv-popover",
1666
+ "data-align": e.alignment,
1667
+ style: Xe(e.cssCustomProperties)
1668
+ }, [
1669
+ e.isList ? (g(), T(
1670
+ "ul",
1671
+ {
1672
+ key: 0,
1673
+ ref: "popoverList",
1674
+ role: "list",
1675
+ class: "pv-popover-list",
1676
+ style: Xe(e.cssCustomListProperties)
1677
+ },
1678
+ [
1679
+ Pe(a.$slots, "default", {}, void 0, !0)
1680
+ ],
1681
+ 4
1682
+ /* STYLE */
1683
+ )) : Pe(a.$slots, "default", { key: 1 }, void 0, !0)
1684
+ ], 12, jo));
1685
+ }
1686
+ }), Xo = ".pv-popover-list[data-v-cda1af8c]{font-size:14px}", yt = (e, t) => {
1687
+ const n = e.__vccOpts || e;
1688
+ for (const [o, i] of t)
1689
+ n[o] = i;
1690
+ return n;
1691
+ }, Yo = /* @__PURE__ */ yt(Wo, [["styles", [Xo]], ["__scopeId", "data-v-cda1af8c"]]), Ho = /* @__PURE__ */ q({
1692
+ __name: "PvMenu",
1693
+ props: {
1694
+ teleportLocation: { type: String },
1695
+ open: { type: Boolean },
1696
+ popoverPositionStyle: { type: Object },
1697
+ cssCustomListProperties: { type: Object },
1698
+ useTeleport: { type: Boolean, default: !1 }
1699
+ },
1700
+ setup(e, { expose: t }) {
1701
+ const n = ee(null);
1702
+ return t({
1703
+ popoverRef: n
1704
+ }), (o, i) => (g(), X(Wn, {
1705
+ to: e.teleportLocation,
1706
+ disabled: !e.useTeleport
1707
+ }, [
1708
+ Ee(Yo, {
1709
+ ref_key: "popoverRef",
1710
+ ref: n,
1711
+ class: ie({
1712
+ "pv-hide": !e.open
1713
+ }),
1714
+ "css-custom-list-properties": e.cssCustomListProperties,
1715
+ "css-custom-properties": {
1716
+ width: "auto",
1717
+ maxWidth: "260px",
1718
+ ...e.popoverPositionStyle
1719
+ },
1720
+ isList: !0
1721
+ }, {
1722
+ default: st(() => [
1723
+ Pe(o.$slots, "default")
1724
+ ]),
1725
+ _: 3
1726
+ /* FORWARDED */
1727
+ }, 8, ["class", "css-custom-list-properties", "css-custom-properties"])
1728
+ ], 8, ["to", "disabled"]));
1729
+ }
1730
+ });
1731
+ function Go() {
1732
+ const e = ee(!1), n = jt()?.root || {};
1733
+ return "isCE" in n && n.isCE === !0 && (e.value = !0), e;
1734
+ }
1735
+ const Uo = {
1736
+ xs: "12px",
1737
+ sm: "16px",
1738
+ md: "20px",
1739
+ lg: "24px",
1740
+ xl: "32px",
1741
+ "2x": "40px"
1742
+ }, qo = [void 0, 10, 12, 20, 24, 32, 64], Ko = ["xlink:href"], at = /* @__PURE__ */ q({
1743
+ __name: "PvIcon",
1744
+ props: {
1745
+ name: { type: String },
1746
+ size: { type: null }
1747
+ },
1748
+ setup(e) {
1749
+ const t = e, n = Go(), o = ee(null), i = I(() => ({
1750
+ "pv-icon": !0,
1751
+ [`pv-icon-${t.size}`]: qo.includes(t.size)
1752
+ })), r = I(() => n.value && o.value ? `${o.value}#${t.name}` : `#${t.name}`);
1753
+ return globalThis.__PV_GLOBAL_SPRITE_PATH__ && (o.value = globalThis.__PV_GLOBAL_SPRITE_PATH__), (l, a) => (g(), T(
1754
+ "svg",
1755
+ {
1756
+ "data-testid": "pv-icon",
1757
+ "aria-hidden": "true",
1758
+ class: ie(i.value)
1759
+ },
1760
+ [
1761
+ te("use", { "xlink:href": r.value }, null, 8, Ko)
1762
+ ],
1763
+ 2
1764
+ /* CLASS */
1765
+ ));
1766
+ }
1767
+ }), Zo = /* @__PURE__ */ q({
1768
+ __name: "PvCounterBadge",
1769
+ props: {
1770
+ value: { type: Number },
1771
+ prefix: { default: "", type: String },
1772
+ variant: { default: "primary", type: null },
1773
+ size: { default: "sm", type: String },
1774
+ maxValue: { default: 99, type: Number }
1775
+ },
1776
+ setup(e) {
1777
+ const t = e, n = I(() => t.size == "md" ? "md" : (t.size == "sm", "sm")), o = I(() => t.maxValue && t.value && t.value > t.maxValue ? `${t.maxValue}+` : t.value != null ? `${t.prefix}${t.value}` : "-"), i = I(() => ({
1778
+ "pv-inline-block pv-inset-square pv-radius pv-text-center": !0,
1779
+ "pv-badge-md pv-text-body-md": n.value == "md",
1780
+ "pv-badge-sm pv-text-body-sm": n.value == "sm",
1781
+ "pv-surface-brand-inverse pv-text-inverse": t.variant == "primary",
1782
+ "pv-surface pv-bordered": t.variant == "secondary",
1783
+ "pv-surface-lighten-5": t.variant == "tertiary",
1784
+ "pv-text-secondary": t.variant == "ghost" || t.variant == "tertiary",
1785
+ "pv-surface": t.variant == "ghost"
1786
+ }));
1787
+ return (r, l) => (g(), T(
1788
+ "div",
1789
+ {
1790
+ class: ie(i.value),
1791
+ "data-testid": "pv-counter-badge"
1792
+ },
1793
+ ne(o.value),
1794
+ 3
1795
+ /* TEXT, CLASS */
1796
+ ));
1797
+ }
1798
+ }), Jo = ".pv-badge-md[data-v-fc3c1104]{--inset-size: 2px 2px;min-height:20px;max-height:20px;min-width:20px;font-weight:500}.pv-badge-sm[data-v-fc3c1104]{--inset-size: 0 2px;min-height:16px;max-height:16px;min-width:16px;font-weight:500}.pv-surface-lighten-5[data-v-fc3c1104]{background-color:#e0e5e4}.pv-text-secondary[data-v-fc3c1104]{color:#4b595c}", ht = /* @__PURE__ */ yt(Zo, [["styles", [Jo]], ["__scopeId", "data-v-fc3c1104"]]);
1799
+ function Qo(e) {
1800
+ return e.charAt(0).toUpperCase() + e.slice(1).toLowerCase();
1801
+ }
1802
+ const ei = /\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;
1803
+ function ti(e) {
1804
+ return Array.from(e.match(ei) ?? []);
1805
+ }
1806
+ function ni(e) {
1807
+ const t = ti(e);
1808
+ if (t.length === 0)
1809
+ return "";
1810
+ const [n, ...o] = t;
1811
+ return `${n.toLowerCase()}${o.map((i) => Qo(i)).join("")}`;
1812
+ }
1813
+ const oi = {
1814
+ class: "pv-flex",
1815
+ "data-testid": "pv-company-logo"
1816
+ }, ii = ["src"], $n = /* @__PURE__ */ q({
1817
+ __name: "PvCompanyLogo",
1818
+ props: {
1819
+ basePath: { default: "https://static-assets.turquoise.health/shared-logos/prd/payers", type: String },
1820
+ name: { type: String },
1821
+ size: { default: "md", type: null },
1822
+ srcPathOverride: { type: String },
1823
+ toCamelCase: { type: Boolean, default: !0 }
1824
+ },
1825
+ setup(e) {
1826
+ const t = e, n = ee(!0), o = I(() => Uo[t.size] || "32px"), i = I(() => ({
1827
+ "pv-icon": n.value,
1828
+ [`pv-company-${t.size}`]: t.size && !n.value
1829
+ })), r = I(() => ({
1830
+ width: o.value
1831
+ })), l = I(() => t.toCamelCase ? ni(t.name) + ".svg" : t.name + ".svg"), a = I(() => t.srcPathOverride ? t.srcPathOverride : `${t.basePath}/${l.value}`);
1832
+ return Ye(a, () => {
1833
+ n.value = !0;
1834
+ }), (s, u) => (g(), T("div", oi, [
1835
+ n.value ? (g(), T(
1836
+ "div",
1837
+ {
1838
+ key: 0,
1839
+ class: ie(i.value),
1840
+ style: Xe(r.value)
1841
+ },
1842
+ [
1843
+ te("img", {
1844
+ src: a.value,
1845
+ alt: "",
1846
+ onError: u[0] || (u[0] = (c) => n.value = !1)
1847
+ }, null, 40, ii)
1848
+ ],
1849
+ 6
1850
+ /* CLASS, STYLE */
1851
+ )) : (g(), T(
1852
+ "div",
1853
+ {
1854
+ key: 1,
1855
+ class: ie(i.value)
1856
+ },
1857
+ null,
1858
+ 2
1859
+ /* CLASS */
1860
+ ))
1861
+ ]));
1862
+ }
1863
+ }), ri = ["data-position", "aria-labelledby", "data-style", "data-static"], ai = ["id"], li = { key: 1 }, si = /* @__PURE__ */ q({
1864
+ __name: "PvTooltip",
1865
+ props: {
1866
+ variant: { default: "white", type: String },
1867
+ tooltipPosition: { default: "top-right", type: String },
1868
+ ariaLabelledBy: { default: "ariaLabelledById", type: String },
1869
+ size: { default: "md", type: String },
1870
+ interactive: { type: Boolean, default: !0 },
1871
+ delay: { default: 0, type: Number }
1872
+ },
1873
+ setup(e) {
1874
+ return (t, n) => t.$slots["tooltip-content"] ? (g(), T("div", {
1875
+ key: 0,
1876
+ "data-testid": "pv-tooltip",
1877
+ class: ie([
1878
+ "pv-tooltip",
1879
+ {
1880
+ "pv-tooltip-small": e.size === "sm"
1881
+ }
1882
+ ]),
1883
+ "data-position": e.tooltipPosition,
1884
+ "aria-labelledby": e.ariaLabelledBy,
1885
+ "data-style": e.variant === "white" ? "white" : "dark",
1886
+ "data-static": e.interactive === !1 ? !0 : void 0
1887
+ }, [
1888
+ Pe(t.$slots, "label"),
1889
+ te("div", {
1890
+ role: "tooltip",
1891
+ id: e.ariaLabelledBy,
1892
+ "data-testid": "pv-tooltip-content"
1893
+ }, [
1894
+ Pe(t.$slots, "tooltip-content")
1895
+ ], 8, ai)
1896
+ ], 10, ri)) : (g(), T("div", li, [
1897
+ Pe(t.$slots, "label")
1898
+ ]));
1899
+ }
1900
+ }), ui = ["disabled"], ci = { class: "pv-flex" }, di = {
1901
+ key: 0,
1902
+ "data-testid": "pv-select-prefix-label",
1903
+ class: "pv-border-right",
1904
+ style: { color: "#89989b", "padding-right": "4px" }
1905
+ }, fi = { key: 4 }, pi = /* @__PURE__ */ q({
1906
+ __name: "PvSelectButtonTrigger",
1907
+ props: {
1908
+ variant: { default: "secondary", type: String },
1909
+ size: { default: "lg", type: String },
1910
+ disabled: { type: Boolean },
1911
+ counterPosition: { type: String },
1912
+ counterValue: { type: Number },
1913
+ counterBadgeVariant: { type: null },
1914
+ prefixLabel: { type: String },
1915
+ label: { type: String },
1916
+ icon: { type: String },
1917
+ companyLogo: { type: String },
1918
+ showClear: { type: Boolean },
1919
+ showDropdown: { type: Boolean, default: !0 },
1920
+ open: { type: Boolean },
1921
+ isLoading: { type: Boolean }
1922
+ },
1923
+ emits: ["handle-toggle-dropdown", "handle-clear"],
1924
+ setup(e, { expose: t }) {
1925
+ const n = {
1926
+ xl: "large",
1927
+ lg: void 0
1928
+ }, o = ee(null);
1929
+ return t({
1930
+ triggerRef: o
1931
+ }), (i, r) => (g(), T("button", {
1932
+ ref_key: "triggerRef",
1933
+ ref: o,
1934
+ "data-testid": "pv-multi-select-button-trigger",
1935
+ class: ie([
1936
+ "pv-flex",
1937
+ "pv-space-between",
1938
+ {
1939
+ [`pv-button-${e.variant}`]: !0,
1940
+ [`pv-button-${n[e.size]}`]: !!e.size
1941
+ }
1942
+ ]),
1943
+ style: { "--flex-gap": "0.25rem" },
1944
+ disabled: e.disabled || e.isLoading,
1945
+ onClick: r[1] || (r[1] = (l) => i.$emit("handle-toggle-dropdown"))
1946
+ }, [
1947
+ te("div", ci, [
1948
+ e.prefixLabel ? (g(), T(
1949
+ "p",
1950
+ di,
1951
+ ne(e.prefixLabel),
1952
+ 1
1953
+ /* TEXT */
1954
+ )) : _("v-if", !0),
1955
+ e.counterPosition === "left" && e.counterValue ? (g(), X(ht, {
1956
+ key: 1,
1957
+ "data-testid": "pv-multi-select-left-counter-badge",
1958
+ value: e.counterValue,
1959
+ variant: e.counterBadgeVariant,
1960
+ size: "sm"
1961
+ }, null, 8, ["value", "variant"])) : _("v-if", !0),
1962
+ e.icon ? (g(), X(at, {
1963
+ key: 2,
1964
+ "data-testid": "pv-multi-select-button-icon",
1965
+ name: e.icon
1966
+ }, null, 8, ["name"])) : _("v-if", !0),
1967
+ e.companyLogo ? (g(), X($n, {
1968
+ key: 3,
1969
+ name: e.companyLogo,
1970
+ size: "sm"
1971
+ }, null, 8, ["name"])) : _("v-if", !0),
1972
+ e.isLoading || e.label ? (g(), T(
1973
+ "span",
1974
+ fi,
1975
+ ne(e.isLoading ? "Loading..." : e.label),
1976
+ 1
1977
+ /* TEXT */
1978
+ )) : _("v-if", !0),
1979
+ e.counterPosition === "right" && e.counterValue ? (g(), X(ht, {
1980
+ key: 5,
1981
+ "data-testid": "pv-multi-select-right-counter-badge",
1982
+ value: e.counterValue,
1983
+ variant: e.counterBadgeVariant,
1984
+ size: "sm"
1985
+ }, null, 8, ["value", "variant"])) : _("v-if", !0)
1986
+ ]),
1987
+ e.showDropdown ? (g(), X(at, {
1988
+ key: 0,
1989
+ name: e.open ? "chevron-up" : "chevron-down"
1990
+ }, null, 8, ["name"])) : _("v-if", !0),
1991
+ e.showClear ? (g(), X(si, {
1992
+ key: 1,
1993
+ size: "sm",
1994
+ variant: "dark",
1995
+ "tooltip-position": "top-left"
1996
+ }, {
1997
+ label: st(() => [
1998
+ Ee(at, {
1999
+ name: "close",
2000
+ onClick: r[0] || (r[0] = Xn((l) => i.$emit("handle-clear"), ["stop"]))
2001
+ })
2002
+ ]),
2003
+ "tooltip-content": st(() => [...r[2] || (r[2] = [
2004
+ cn(
2005
+ " Clear Selections ",
2006
+ -1
2007
+ /* CACHED */
2008
+ )
2009
+ ])]),
2010
+ _: 1
2011
+ /* STABLE */
2012
+ })) : _("v-if", !0)
2013
+ ], 10, ui));
2014
+ }
2015
+ }), hi = {}, vi = { class: "pv-text-subdued pv-text-center pv-text-body-md" };
2016
+ function mi(e, t) {
2017
+ return g(), T("div", vi, "No Results Found");
2018
+ }
2019
+ const gi = /* @__PURE__ */ yt(hi, [["render", mi]]), yi = ["src"], bi = /* @__PURE__ */ q({
2020
+ __name: "PvAvatar",
2021
+ props: {
2022
+ size: { default: "lg", type: String },
2023
+ image: { type: String },
2024
+ initials: { type: String }
2025
+ },
2026
+ setup(e) {
2027
+ const t = {
2028
+ sm: "pv-avatar-16",
2029
+ md: "pv-avatar-20",
2030
+ lg: "pv-avatar-xs",
2031
+ xl: "pv-avatar-sm",
2032
+ "2x": "pv-avatar-md"
2033
+ };
2034
+ return (n, o) => (g(), T(
2035
+ "div",
2036
+ {
2037
+ class: ie(t[e.size]),
2038
+ "data-testid": "pv-avatar"
2039
+ },
2040
+ [
2041
+ e.initials ? (g(), T(
2042
+ Ae,
2043
+ { key: 0 },
2044
+ [
2045
+ cn(
2046
+ ne(e.initials),
2047
+ 1
2048
+ /* TEXT */
2049
+ )
2050
+ ],
2051
+ 64
2052
+ /* STABLE_FRAGMENT */
2053
+ )) : e.image ? (g(), T("img", {
2054
+ key: 1,
2055
+ src: e.image
2056
+ }, null, 8, yi)) : _("v-if", !0)
2057
+ ],
2058
+ 2
2059
+ /* CLASS */
2060
+ ));
2061
+ }
2062
+ }), wi = {
2063
+ class: "pv-full-width pv-truncate pv-flex-vertical",
2064
+ style: { "align-items": "flex-start", "--flex-gap": "0" }
2065
+ }, Si = ["title"], Ei = ["title"], xi = {
2066
+ key: 4,
2067
+ class: "pv-text-subdued pv-text-body-md"
2068
+ }, Di = /* @__PURE__ */ q({
2069
+ __name: "PvMenuItem",
2070
+ props: {
2071
+ id: { type: String },
2072
+ text: { type: String },
2073
+ subText: { type: String },
2074
+ secondaryText: { type: [Number, String] },
2075
+ counterBadgeVariant: { type: null },
2076
+ icon: { type: String },
2077
+ companyName: { type: String },
2078
+ avatar: { type: Object },
2079
+ disabled: { type: Boolean },
2080
+ renderer: { type: null },
2081
+ rendererProps: { type: null },
2082
+ classList: { type: Array },
2083
+ searchText: { type: String },
2084
+ children: { type: Array }
2085
+ },
2086
+ emits: ["handle-selected"],
2087
+ setup(e) {
2088
+ const t = e, n = I(() => {
2089
+ const o = t.classList ? [...t.classList] : [];
2090
+ return t.disabled ? o.push("pv-menu-item-disabled") : o.push("pv-menu-item"), o;
2091
+ });
2092
+ return (o, i) => (g(), T(
2093
+ "a",
2094
+ {
2095
+ class: ie(["pv-flex", n.value]),
2096
+ "data-testid": "pv-menu-item",
2097
+ style: Xe(e.disabled ? "color: #7D898D;" : ""),
2098
+ role: "button",
2099
+ onClick: i[0] || (i[0] = (r) => e.disabled ? null : o.$emit("handle-selected"))
2100
+ },
2101
+ [
2102
+ e.renderer ? (g(), X(
2103
+ dn(e.renderer),
2104
+ Yn(Hn({ key: 0 }, o.$props)),
2105
+ null,
2106
+ 16
2107
+ /* FULL_PROPS */
2108
+ )) : (g(), T(
2109
+ Ae,
2110
+ { key: 1 },
2111
+ [
2112
+ e.avatar ? (g(), X(bi, {
2113
+ key: 0,
2114
+ initials: e.avatar.initials,
2115
+ image: e.avatar.image,
2116
+ size: "lg"
2117
+ }, null, 8, ["initials", "image"])) : _("v-if", !0),
2118
+ e.icon ? (g(), X(at, {
2119
+ key: 1,
2120
+ class: "pv-text-subdued",
2121
+ name: e.icon
2122
+ }, null, 8, ["name"])) : _("v-if", !0),
2123
+ e.companyName ? (g(), X($n, {
2124
+ key: 2,
2125
+ name: e.companyName,
2126
+ size: "sm"
2127
+ }, null, 8, ["name"])) : _("v-if", !0),
2128
+ te("div", wi, [
2129
+ te("span", {
2130
+ class: "pv-text-body-md pv-full-width pv-truncate",
2131
+ title: e.text
2132
+ }, ne(e.text), 9, Si),
2133
+ e.subText ? (g(), T("span", {
2134
+ key: 0,
2135
+ class: "pv-text-body-xs pv-text-subdued pv-full-width pv-truncate",
2136
+ title: e.subText
2137
+ }, ne(e.subText), 9, Ei)) : _("v-if", !0)
2138
+ ]),
2139
+ e.secondaryText && typeof e.secondaryText == "number" ? (g(), X(ht, {
2140
+ key: 3,
2141
+ value: e.secondaryText,
2142
+ variant: e.counterBadgeVariant
2143
+ }, null, 8, ["value", "variant"])) : e.secondaryText && typeof e.secondaryText == "string" ? (g(), T(
2144
+ "span",
2145
+ xi,
2146
+ ne(e.secondaryText),
2147
+ 1
2148
+ /* TEXT */
2149
+ )) : _("v-if", !0)
2150
+ ],
2151
+ 64
2152
+ /* STABLE_FRAGMENT */
2153
+ ))
2154
+ ],
2155
+ 6
2156
+ /* CLASS, STYLE */
2157
+ ));
2158
+ }
2159
+ }), Ti = ".pv-menu-item-disabled[data-v-20ca2990]{pointer-events:none;background:#ececec}.pv-menu-item[data-v-20ca2990]{cursor:pointer}", Qe = /* @__PURE__ */ yt(Di, [["styles", [Ti]], ["__scopeId", "data-v-20ca2990"]]), Ci = {
2160
+ "data-testid": "pv-menu-radio-item",
2161
+ class: "pv-label pv-label-hover pv-flex",
2162
+ style: { cursor: "pointer" }
2163
+ }, Pi = ["checked"], Ii = {
2164
+ class: "pv-full-width pv-truncate pv-flex-vertical",
2165
+ style: { "align-items": "flex-start", "--flex-gap": "0" }
2166
+ }, Oi = ["title"], Ai = ["title"], ki = {
2167
+ key: 1,
2168
+ class: "pv-text-subdued pv-text-body-md"
2169
+ }, Ni = /* @__PURE__ */ q({
2170
+ __name: "PvMenuRadioItem",
2171
+ props: {
2172
+ text: { type: String },
2173
+ subText: { type: String },
2174
+ secondaryText: { type: [Number, String] },
2175
+ counterBadgeVariant: { type: null },
2176
+ value: { type: Boolean },
2177
+ children: { type: Array }
2178
+ },
2179
+ emits: ["handle-selected"],
2180
+ setup(e) {
2181
+ const t = `radio-${jt()?.uid}`;
2182
+ return (n, o) => (g(), T("label", Ci, [
2183
+ te("input", {
2184
+ type: "radio",
2185
+ name: t,
2186
+ checked: e.value,
2187
+ class: "pv-radio",
2188
+ onChange: o[0] || (o[0] = (i) => n.$emit("handle-selected"))
2189
+ }, null, 40, Pi),
2190
+ te("span", Ii, [
2191
+ te("span", {
2192
+ class: "pv-text-body-md pv-full-width pv-truncate",
2193
+ title: e.text
2194
+ }, ne(e.text), 9, Oi),
2195
+ e.subText ? (g(), T("span", {
2196
+ key: 0,
2197
+ class: "pv-text-body-xs pv-text-subdued pv-full-width pv-truncate",
2198
+ title: e.subText
2199
+ }, ne(e.subText), 9, Ai)) : _("v-if", !0)
2200
+ ]),
2201
+ e.secondaryText && typeof e.secondaryText == "number" ? (g(), X(ht, {
2202
+ key: 0,
2203
+ value: e.secondaryText,
2204
+ variant: e.counterBadgeVariant
2205
+ }, null, 8, ["value", "variant"])) : e.secondaryText && typeof e.secondaryText == "string" ? (g(), T(
2206
+ "span",
2207
+ ki,
2208
+ ne(e.secondaryText),
2209
+ 1
2210
+ /* TEXT */
2211
+ )) : _("v-if", !0)
2212
+ ]));
2213
+ }
2214
+ }), Li = ["data-active"], $i = /* @__PURE__ */ q({
2215
+ __name: "PvSelectMenuItem",
2216
+ props: {
2217
+ optionsVariant: { default: "simple", type: null },
2218
+ option: { type: Object },
2219
+ counterBadgeVariant: { type: null },
2220
+ selectedItem: { type: Object },
2221
+ level: { default: 0, type: Number }
2222
+ },
2223
+ emits: ["handle-select-item"],
2224
+ setup(e) {
2225
+ const t = {
2226
+ simple: Qe,
2227
+ icon: Qe,
2228
+ company: Qe,
2229
+ radio: Ni,
2230
+ avatar: Qe
2231
+ }, n = e, o = I(() => ({ paddingLeft: `${n.level * 12 + 12}px` })), i = I(() => n.option.children && n.option.children.length > 0 && n.level < 3);
2232
+ return (r, l) => {
2233
+ const a = Gn("PvSelectMenuItem", !0);
2234
+ return g(), T(
2235
+ Ae,
2236
+ null,
2237
+ [
2238
+ (g(), X(dn(t[e.optionsVariant]), {
2239
+ id: e.option.id,
2240
+ value: e.selectedItem?.id === e.option.id,
2241
+ secondaryText: e.option.secondaryText,
2242
+ icon: e.optionsVariant === "icon" ? e.option.icon : void 0,
2243
+ avatar: e.optionsVariant === "avatar" ? e.option.avatar : void 0,
2244
+ companyName: e.optionsVariant === "company" ? e.option.companyName ? e.option.companyName : e.option.text : void 0,
2245
+ "counter-badge-variant": e.counterBadgeVariant,
2246
+ text: e.option.text,
2247
+ subText: e.option.subText,
2248
+ renderer: e.option.renderer,
2249
+ "renderer-props": e.option.rendererProps,
2250
+ classList: e.option.classList,
2251
+ onHandleSelected: l[0] || (l[0] = () => r.$emit("handle-select-item", e.option))
2252
+ }, null, 40, ["id", "value", "secondaryText", "icon", "avatar", "companyName", "counter-badge-variant", "text", "subText", "renderer", "renderer-props", "classList"])),
2253
+ i.value ? (g(), T(
2254
+ "ul",
2255
+ {
2256
+ key: 0,
2257
+ role: "list",
2258
+ style: Xe(o.value)
2259
+ },
2260
+ [
2261
+ (g(!0), T(
2262
+ Ae,
2263
+ null,
2264
+ fn(e.option.children, (s) => (g(), T("li", {
2265
+ key: s.id,
2266
+ "data-active": e.selectedItem?.id === s.id ? !0 : null
2267
+ }, [
2268
+ Ee(a, {
2269
+ "counter-badge-variant": e.counterBadgeVariant,
2270
+ "options-variant": e.optionsVariant,
2271
+ option: s,
2272
+ "selected-item": e.selectedItem,
2273
+ level: e.level + 1,
2274
+ onHandleSelectItem: l[1] || (l[1] = (u) => r.$emit("handle-select-item", u))
2275
+ }, null, 8, ["counter-badge-variant", "options-variant", "option", "selected-item", "level"])
2276
+ ], 8, Li))),
2277
+ 128
2278
+ /* KEYED_FRAGMENT */
2279
+ ))
2280
+ ],
2281
+ 4
2282
+ /* STYLE */
2283
+ )) : _("v-if", !0)
2284
+ ],
2285
+ 64
2286
+ /* STABLE_FRAGMENT */
2287
+ );
2288
+ };
2289
+ }
2290
+ }), _i = ({
2291
+ alignment: e,
2292
+ useTeleport: t = !0,
2293
+ popoverCssProperties: n
2294
+ } = {}) => {
2295
+ const o = ee(null), i = ee(null), r = ee(null), l = ee(null), a = (p) => {
2296
+ let h = p.parentElement;
2297
+ for (; h && h !== document.body; ) {
2298
+ if (window.getComputedStyle(h).position !== "static")
2299
+ return h;
2300
+ h = h.parentElement;
2301
+ }
2302
+ return null;
2303
+ }, s = I(() => {
2304
+ if (!o.value || !i.value || !l.value?.popoverRoot) return 0;
2305
+ let p = o.value.left + window.scrollX;
2306
+ (e === "right" || e === "top right") && (p = o.value.left + o.value.width + window.scrollX);
2307
+ const h = a(l.value.popoverRoot);
2308
+ if (h) {
2309
+ const y = h.getBoundingClientRect();
2310
+ p -= y.left + window.scrollX - h.scrollLeft;
2311
+ }
2312
+ return p;
2313
+ }), u = I(() => {
2314
+ if (!o.value || !i.value || !l.value?.popoverRoot) return 0;
2315
+ let p = o.value.top + window.scrollY;
2316
+ e === "top" || e === "top right" || (p += o.value.height);
2317
+ const h = a(l.value.popoverRoot);
2318
+ if (h) {
2319
+ const y = h.getBoundingClientRect();
2320
+ p -= y.top + window.scrollY - h.scrollTop;
2321
+ }
2322
+ return p;
2323
+ }), c = I(() => {
2324
+ if (!t)
2325
+ return n;
2326
+ const p = {
2327
+ position: "absolute",
2328
+ left: `${s.value}px`,
2329
+ top: `${u.value}px`,
2330
+ zIndex: 10
2331
+ };
2332
+ return {
2333
+ ...n,
2334
+ ...p
2335
+ };
2336
+ });
2337
+ return {
2338
+ triggerRef: r,
2339
+ popoverRef: l,
2340
+ triggerRect: o,
2341
+ popoverRect: i,
2342
+ popoverPositionStyle: c,
2343
+ updateRects: () => {
2344
+ r.value && (o.value = r.value.getBoundingClientRect()), l.value?.popoverRoot && (i.value = l.value.popoverRoot.getBoundingClientRect());
2345
+ }
2346
+ };
2347
+ }, Mi = {
2348
+ class: "pv-relative",
2349
+ style: { width: "fit-content" }
2350
+ }, Ri = ["data-active"], Bi = /* @__PURE__ */ q({
2351
+ __name: "PvSelectButton",
2352
+ props: /* @__PURE__ */ Nt({
2353
+ defaultOpen: { type: Boolean },
2354
+ disabled: { type: Boolean },
2355
+ teleportLocation: { default: "body", type: String },
2356
+ isLoading: { type: Boolean },
2357
+ variant: { default: "secondary", type: String },
2358
+ size: { default: "lg", type: String },
2359
+ alignment: { type: null },
2360
+ popoverCssProperties: { type: Object },
2361
+ prefixLabel: { type: String },
2362
+ label: { default: "Select an option", type: String },
2363
+ showMenuAction: { type: Boolean },
2364
+ showSearchInput: { type: Boolean, default: !0 },
2365
+ searchPlaceholder: { type: String },
2366
+ optionsVariant: { default: "simple", type: null },
2367
+ options: { type: Array },
2368
+ useTeleport: { type: Boolean, default: !0 },
2369
+ allowDeselect: { type: Boolean, default: !0 },
2370
+ counterPosition: { type: String },
2371
+ counterBadgeVariant: { type: null }
2372
+ }, {
2373
+ modelValue: { required: !1 },
2374
+ modelModifiers: {},
2375
+ searchInput: {
2376
+ required: !1,
2377
+ default: ""
2378
+ },
2379
+ searchInputModifiers: {}
2380
+ }),
2381
+ emits: /* @__PURE__ */ Nt(["dropdown-open", "dropdown-closed"], ["update:modelValue", "update:searchInput"]),
2382
+ setup(e, { emit: t }) {
2383
+ const n = e, o = t, { popoverPositionStyle: i, updateRects: r, triggerRef: l, popoverRef: a } = _i({
2384
+ alignment: n.alignment,
2385
+ popoverCssProperties: n.popoverCssProperties,
2386
+ useTeleport: n.useTeleport
2387
+ }), s = lt("select-menu-ref"), u = lt("select-button-trigger-ref"), [c, d] = /* @__PURE__ */ eo(n.defaultOpen), p = Lt(e, "modelValue"), h = Lt(e, "searchInput");
2388
+ Ye(c, (R) => {
2389
+ R ? Ft(() => {
2390
+ r(), o("dropdown-open");
2391
+ }) : o("dropdown-closed");
2392
+ }), Vt(() => {
2393
+ s.value?.popoverRef && (a.value = s.value?.popoverRef), u.value?.triggerRef && (l.value = u.value?.triggerRef);
2394
+ });
2395
+ const y = I(() => p.value && p.value.text ? p.value.text : n.label), D = I(() => {
2396
+ if (p.value && p.value.icon)
2397
+ return p.value.icon;
2398
+ }), b = I(() => {
2399
+ if (p.value && p.value.companyName)
2400
+ return p.value.companyName;
2401
+ }), E = I(() => {
2402
+ const R = h.value.trim().toLowerCase();
2403
+ if (!R) return n.options;
2404
+ const N = (F) => {
2405
+ const ae = [];
2406
+ for (const z of F) {
2407
+ const ve = z.text.toLowerCase().includes(R), Z = N(z.children || []);
2408
+ ve ? ae.push({
2409
+ ...z,
2410
+ searchText: R,
2411
+ children: Z
2412
+ }) : ae.push(...Z);
2413
+ }
2414
+ return ae;
2415
+ };
2416
+ return N(n.options);
2417
+ }), C = (R) => {
2418
+ if (n.optionsVariant === "radio" || !n.allowDeselect) {
2419
+ p.value = R, k();
2420
+ return;
2421
+ }
2422
+ p.value?.id === R.id ? p.value = void 0 : p.value = R, k();
2423
+ }, B = () => {
2424
+ p.value = void 0;
2425
+ }, k = () => {
2426
+ c.value = !1, h.value = "";
2427
+ };
2428
+ return gn("Escape", () => {
2429
+ c.value && k();
2430
+ }), (R, N) => un((g(), T("div", Mi, [
2431
+ Ee(pi, {
2432
+ class: "pv-full-width",
2433
+ ref: "select-button-trigger-ref",
2434
+ variant: e.variant,
2435
+ size: e.size,
2436
+ disabled: e.disabled,
2437
+ prefixLabel: e.prefixLabel,
2438
+ label: y.value,
2439
+ icon: D.value,
2440
+ companyLogo: b.value,
2441
+ showClear: !1,
2442
+ showDropdown: !0,
2443
+ open: Se(c),
2444
+ "counter-position": e.counterPosition,
2445
+ "counter-value": p.value?.secondaryText && typeof p.value.secondaryText == "number" ? p.value.secondaryText : void 0,
2446
+ "counter-badge-variant": e.counterBadgeVariant,
2447
+ isLoading: e.isLoading,
2448
+ onHandleClear: B,
2449
+ onHandleToggleDropdown: N[0] || (N[0] = (F) => Se(d)())
2450
+ }, null, 8, ["variant", "size", "disabled", "prefixLabel", "label", "icon", "companyLogo", "open", "counter-position", "counter-value", "counter-badge-variant", "isLoading"]),
2451
+ Ee(Ho, {
2452
+ ref: "select-menu-ref",
2453
+ open: Se(c),
2454
+ teleportLocation: e.teleportLocation,
2455
+ "use-teleport": e.useTeleport,
2456
+ popoverPositionStyle: {
2457
+ ...Se(i),
2458
+ ...e.popoverCssProperties
2459
+ }
2460
+ }, {
2461
+ default: st(() => [
2462
+ e.showSearchInput ? (g(), T(
2463
+ Ae,
2464
+ { key: 0 },
2465
+ [
2466
+ Ee(fo, {
2467
+ "model-value": h.value,
2468
+ "onUpdate:modelValue": N[1] || (N[1] = (F) => h.value = F),
2469
+ class: "pv-stack-12",
2470
+ placeholder: e.searchPlaceholder
2471
+ }, null, 8, ["model-value", "placeholder"]),
2472
+ N[2] || (N[2] = te(
2473
+ "div",
2474
+ { class: "pv-border-top pv-stack-12" },
2475
+ null,
2476
+ -1
2477
+ /* CACHED */
2478
+ ))
2479
+ ],
2480
+ 64
2481
+ /* STABLE_FRAGMENT */
2482
+ )) : _("v-if", !0),
2483
+ E.value.length > 0 ? (g(!0), T(
2484
+ Ae,
2485
+ { key: 1 },
2486
+ fn(E.value, (F) => (g(), T("li", {
2487
+ key: F.id,
2488
+ "data-active": p.value?.id === F.id ? !0 : null
2489
+ }, [
2490
+ Ee($i, {
2491
+ "counter-badge-variant": e.counterBadgeVariant,
2492
+ "options-variant": e.optionsVariant,
2493
+ option: F,
2494
+ "selected-item": p.value,
2495
+ onHandleSelectItem: C
2496
+ }, null, 8, ["counter-badge-variant", "options-variant", "option", "selected-item"])
2497
+ ], 8, Ri))),
2498
+ 128
2499
+ /* KEYED_FRAGMENT */
2500
+ )) : (g(), X(gi, { key: 2 }))
2501
+ ]),
2502
+ _: 1
2503
+ /* STABLE */
2504
+ }, 8, ["open", "teleportLocation", "use-teleport", "popoverPositionStyle"])
2505
+ ])), [
2506
+ [Se(io), [
2507
+ k,
2508
+ {
2509
+ ignore: [".pv-popover"]
2510
+ }
2511
+ ]]
2512
+ ]);
2513
+ }
2514
+ }), zi = /* @__PURE__ */ new Set(["PvIcon", "PvPopoverMenu", "PvPopover"]);
2515
+ function Vi(e) {
2516
+ return !zi.has(e);
2517
+ }
2518
+ function kt(e, t) {
2519
+ const n = document.querySelector('link[href*="' + t + '"]');
2520
+ if (!e.shadowRoot)
2521
+ return !1;
2522
+ if (n && e.shadowRoot) {
2523
+ const o = n.href;
2524
+ if (e.shadowRoot.querySelector(`link[href="${o}"]`))
2525
+ return;
2526
+ const i = document.createElement("link");
2527
+ return i.rel = "stylesheet", i.href = o, e.shadowRoot.prepend(i), !0;
2528
+ }
2529
+ return !1;
2530
+ }
2531
+ function Fi(e) {
2532
+ if (!kt(e, "pit-viper-v2")) {
2533
+ if (kt(e, "pit-viper")) {
2534
+ kt(e, "pit-viper-v2-scoped");
2535
+ return;
2536
+ }
2537
+ console.warn(
2538
+ "No global styles found for Pit Viper components. Make sure to include pit-viper.css or pit-viper-v2.css in your project."
2539
+ );
2540
+ }
2541
+ }
2542
+ const ji = (e) => ({ shadowRoot: Vi(e) });
2543
+ function Wi(e, t) {
2544
+ return t === null ? !1 : t === "" || t === "true" ? !0 : (t === "false" || console.warn(
2545
+ `Invalid boolean attribute value for "${e}": "${t}". Expected "true", "false", or empty string.`
2546
+ ), !1);
2547
+ }
2548
+ function Xi(e, t) {
2549
+ const n = Number(t);
2550
+ return isNaN(n) && console.warn(`Invalid number attribute value for "${e}": "${t}". Expected a valid number.`), n;
2551
+ }
2552
+ function Yi(e) {
2553
+ const t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), o = /* @__PURE__ */ new Set(), r = (e.__vccOpts || e).props;
2554
+ return r && typeof r == "object" && Object.entries(r).forEach(([l, a]) => {
2555
+ a === Boolean || a && a.type === Boolean ? t.add(l) : a === Number || a && a.type === Number ? n.add(l) : (a === Object || a === Array || a && (a.type === Object || a.type === Array)) && o.add(l);
2556
+ }), { booleanProps: t, numberProps: n, jsonProps: o };
2557
+ }
2558
+ function ln(e, t) {
2559
+ try {
2560
+ return JSON.parse(t);
2561
+ } catch (n) {
2562
+ return console.warn(
2563
+ `Invalid JSON attribute value for "${e}": "${t}". Error: ${n instanceof Error ? n.message : String(n)}`
2564
+ ), null;
2565
+ }
2566
+ }
2567
+ function Hi(e) {
2568
+ const t = e.__name || e.name;
2569
+ if (!t)
2570
+ throw new Error("Component must have a __name or name property");
2571
+ const n = Un(e, ji(t)), { booleanProps: o, numberProps: i, jsonProps: r } = Yi(e);
2572
+ class l extends n {
2573
+ _hiddenInput = null;
2574
+ constructor() {
2575
+ super(), this._parseAttributes();
2576
+ }
2577
+ disconnectedCallback() {
2578
+ this._hiddenInput?.remove(), super.disconnectedCallback?.();
2579
+ }
2580
+ /**
2581
+ * Update the hidden input value
2582
+ * Call this from the Vue component to sync form value
2583
+ */
2584
+ setHiddenInputValue(s) {
2585
+ this._hiddenInput && (this._hiddenInput.value = s ?? "");
2586
+ }
2587
+ _parseAttributes() {
2588
+ o.forEach((u) => {
2589
+ const c = this.getAttribute(u);
2590
+ this[u] = Wi(u, c);
2591
+ }), i.forEach((u) => {
2592
+ const c = this.getAttribute(u);
2593
+ c !== null && (this[u] = Xi(u, c));
2594
+ }), r.forEach((u) => {
2595
+ const c = this.getAttribute(u);
2596
+ if (c !== null) {
2597
+ const d = ln(u, c);
2598
+ d !== null && (this[u] = d);
2599
+ }
2600
+ });
2601
+ const s = this.getAttribute("data-json-props");
2602
+ s && s.split(",").map((c) => c.trim()).filter(Boolean).forEach((c) => {
2603
+ const d = c.replace(/-([a-z])/g, (h) => h[1].toUpperCase());
2604
+ let p = this.getAttribute(c);
2605
+ if (p === null) {
2606
+ const h = d.replace(/([A-Z])/g, "-$1").toLowerCase();
2607
+ p = this.getAttribute(h);
2608
+ }
2609
+ if (p !== null && !this[d]) {
2610
+ const h = ln(d, p);
2611
+ h !== null && (this[d] = h);
2612
+ }
2613
+ });
2614
+ }
2615
+ connectedCallback() {
2616
+ this._parseAttributes(), super.connectedCallback?.(), Fi(this);
2617
+ const s = this.getAttribute("name");
2618
+ s && (this._hiddenInput = document.createElement("input"), this._hiddenInput.type = "hidden", this._hiddenInput.name = s, this.after(this._hiddenInput));
2619
+ }
2620
+ }
2621
+ return l;
2622
+ }
2623
+ function Gi(e) {
2624
+ return e.replace(/([A-Z])/g, "-$1").toLowerCase().replace(/^-/, "");
2625
+ }
2626
+ function Ui(e) {
2627
+ const t = e.__name || e.name;
2628
+ if (!t)
2629
+ throw new Error("Component must have a __name or name property");
2630
+ const n = Gi(t), o = Hi(e);
2631
+ customElements.get(n) || customElements.define(n, o);
2632
+ }
2633
+ Ui(Bi);