@turquoisehealth/pit-viper 2.104.2-dev.0 → 2.105.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 (122) hide show
  1. package/_site/assets/css/pit-viper-v2-scoped.css +0 -19
  2. package/_site/assets/css/pit-viper-v2.css +0 -21
  3. package/_site/assets/css/pit-viper.css +0 -21
  4. package/_site/assets/js/pit-viper.js +133 -0
  5. package/package.json +11 -38
  6. package/pv-components/dist/vue/base/components/base/PvMultiSelectButton/PvMultiSelectButton.vue.d.ts +4 -3
  7. package/pv-components/dist/vue/base/components/base/PvSelectButton/PvSelectButton.vue.d.ts +1 -1
  8. package/pv-components/dist/vue/base/components/base/PvTooltipV2/PvTooltipV2.vue.d.ts +0 -1
  9. package/pv-components/dist/vue/base/components/base/PvTooltipV2/types.d.ts +1 -2
  10. package/pv-components/dist/vue/base/components/base/index.d.ts +1 -0
  11. package/pv-components/dist/vue/base/pv-components-base.js +1546 -0
  12. package/pv-components/dist/vue/base/pv-components-base.mjs +6653 -4387
  13. package/pv-components/dist/vue/base/pv-components-base.umd.js +1546 -0
  14. package/pv-components/dist/vue/visualizations/pv-components-visualizations.js +176 -0
  15. package/pv-components/dist/vue/visualizations/pv-components-visualizations.mjs +5920 -3407
  16. package/pv-components/dist/vue/visualizations/pv-components-visualizations.umd.js +176 -0
  17. package/pv-components/dist/web/pv-components.iife.js +31 -31
  18. package/pv-components/dist/stats/vue/base/stats.html +0 -4949
  19. package/pv-components/dist/stats/vue/visualizations/stats.html +0 -4949
  20. package/pv-components/dist/stats/web/pv-accordion-stats.html +0 -4949
  21. package/pv-components/dist/stats/web/pv-action-bar-stats.html +0 -4949
  22. package/pv-components/dist/stats/web/pv-avatar-group-stats.html +0 -4949
  23. package/pv-components/dist/stats/web/pv-avatar-stats.html +0 -4949
  24. package/pv-components/dist/stats/web/pv-banner-stats.html +0 -4949
  25. package/pv-components/dist/stats/web/pv-breadcrumbs-stats.html +0 -4949
  26. package/pv-components/dist/stats/web/pv-button-stats.html +0 -4949
  27. package/pv-components/dist/stats/web/pv-card-stats.html +0 -4949
  28. package/pv-components/dist/stats/web/pv-checkbox-stats.html +0 -4949
  29. package/pv-components/dist/stats/web/pv-company-label-stats.html +0 -4949
  30. package/pv-components/dist/stats/web/pv-company-logo-stats.html +0 -4949
  31. package/pv-components/dist/stats/web/pv-company-tag-stats.html +0 -4949
  32. package/pv-components/dist/stats/web/pv-counter-badge-stats.html +0 -4949
  33. package/pv-components/dist/stats/web/pv-date-picker-stats.html +0 -4949
  34. package/pv-components/dist/stats/web/pv-date-time-stats.html +0 -4949
  35. package/pv-components/dist/stats/web/pv-drawer-stats.html +0 -4949
  36. package/pv-components/dist/stats/web/pv-dropdown-stats.html +0 -4949
  37. package/pv-components/dist/stats/web/pv-expandable-content-stats.html +0 -4949
  38. package/pv-components/dist/stats/web/pv-ghost-input-stats.html +0 -4949
  39. package/pv-components/dist/stats/web/pv-icon-stats.html +0 -4949
  40. package/pv-components/dist/stats/web/pv-input-stats.html +0 -4949
  41. package/pv-components/dist/stats/web/pv-insight-card-stats.html +0 -4949
  42. package/pv-components/dist/stats/web/pv-modal-stats.html +0 -4949
  43. package/pv-components/dist/stats/web/pv-multi-select-button-stats.html +0 -4949
  44. package/pv-components/dist/stats/web/pv-pagination-stats.html +0 -4949
  45. package/pv-components/dist/stats/web/pv-pill-stats.html +0 -4949
  46. package/pv-components/dist/stats/web/pv-popover-menu-stats.html +0 -4949
  47. package/pv-components/dist/stats/web/pv-popover-stats.html +0 -4949
  48. package/pv-components/dist/stats/web/pv-popover-v2-stats.html +0 -4949
  49. package/pv-components/dist/stats/web/pv-rating-stats.html +0 -4949
  50. package/pv-components/dist/stats/web/pv-release-badge-stats.html +0 -4949
  51. package/pv-components/dist/stats/web/pv-search-input-stats.html +0 -4949
  52. package/pv-components/dist/stats/web/pv-segmented-control-stats.html +0 -4949
  53. package/pv-components/dist/stats/web/pv-select-button-stats.html +0 -4949
  54. package/pv-components/dist/stats/web/pv-selectable-card-stats.html +0 -4949
  55. package/pv-components/dist/stats/web/pv-side-panel-stats.html +0 -4949
  56. package/pv-components/dist/stats/web/pv-skeleton-stats.html +0 -4949
  57. package/pv-components/dist/stats/web/pv-spinner-stats.html +0 -4949
  58. package/pv-components/dist/stats/web/pv-sprite-stats.html +0 -4949
  59. package/pv-components/dist/stats/web/pv-suggestion-tag-stats.html +0 -4949
  60. package/pv-components/dist/stats/web/pv-switch-stats.html +0 -4949
  61. package/pv-components/dist/stats/web/pv-tab-list-stats.html +0 -4949
  62. package/pv-components/dist/stats/web/pv-tabs-stats.html +0 -4949
  63. package/pv-components/dist/stats/web/pv-tag-stats.html +0 -4949
  64. package/pv-components/dist/stats/web/pv-text-area-stats.html +0 -4949
  65. package/pv-components/dist/stats/web/pv-toast-stats.html +0 -4949
  66. package/pv-components/dist/stats/web/pv-toggle-button-stats.html +0 -4949
  67. package/pv-components/dist/stats/web/pv-toggle-group-stats.html +0 -4949
  68. package/pv-components/dist/stats/web/pv-tooltip-stats.html +0 -4949
  69. package/pv-components/dist/stats/web/pv-tooltip-v2-stats.html +0 -4949
  70. package/pv-components/dist/stats/web/pv-widget-stats.html +0 -4949
  71. package/pv-components/dist/web/components/pv-accordion/pv-accordion.js +0 -186
  72. package/pv-components/dist/web/components/pv-action-bar/pv-action-bar.js +0 -66
  73. package/pv-components/dist/web/components/pv-avatar/pv-avatar.js +0 -96
  74. package/pv-components/dist/web/components/pv-avatar-group/pv-avatar-group.js +0 -102
  75. package/pv-components/dist/web/components/pv-banner/pv-banner.js +0 -155
  76. package/pv-components/dist/web/components/pv-breadcrumbs/pv-breadcrumbs.js +0 -92
  77. package/pv-components/dist/web/components/pv-button/pv-button.js +0 -173
  78. package/pv-components/dist/web/components/pv-card/pv-card.js +0 -80
  79. package/pv-components/dist/web/components/pv-checkbox/pv-checkbox.js +0 -77
  80. package/pv-components/dist/web/components/pv-company-label/pv-company-label.js +0 -153
  81. package/pv-components/dist/web/components/pv-company-logo/pv-company-logo.js +0 -124
  82. package/pv-components/dist/web/components/pv-company-tag/pv-company-tag.js +0 -204
  83. package/pv-components/dist/web/components/pv-counter-badge/pv-counter-badge.js +0 -89
  84. package/pv-components/dist/web/components/pv-date-picker/pv-date-picker.js +0 -7481
  85. package/pv-components/dist/web/components/pv-date-time/pv-date-time.js +0 -577
  86. package/pv-components/dist/web/components/pv-drawer/pv-drawer.js +0 -486
  87. package/pv-components/dist/web/components/pv-dropdown/pv-dropdown.js +0 -1724
  88. package/pv-components/dist/web/components/pv-expandable-content/pv-expandable-content.js +0 -235
  89. package/pv-components/dist/web/components/pv-ghost-input/pv-ghost-input.js +0 -251
  90. package/pv-components/dist/web/components/pv-icon/pv-icon.js +0 -81
  91. package/pv-components/dist/web/components/pv-input/pv-input.js +0 -123
  92. package/pv-components/dist/web/components/pv-insight-card/pv-insight-card.js +0 -293
  93. package/pv-components/dist/web/components/pv-modal/pv-modal.js +0 -118
  94. package/pv-components/dist/web/components/pv-multi-select-button/pv-multi-select-button.js +0 -2752
  95. package/pv-components/dist/web/components/pv-pagination/pv-pagination.js +0 -286
  96. package/pv-components/dist/web/components/pv-pill/pv-pill.js +0 -160
  97. package/pv-components/dist/web/components/pv-popover/pv-popover.js +0 -1417
  98. package/pv-components/dist/web/components/pv-popover-menu/pv-popover-menu.js +0 -1439
  99. package/pv-components/dist/web/components/pv-popover-v2/pv-popover-v2.js +0 -1421
  100. package/pv-components/dist/web/components/pv-rating/pv-rating.js +0 -78
  101. package/pv-components/dist/web/components/pv-release-badge/pv-release-badge.js +0 -74
  102. package/pv-components/dist/web/components/pv-search-input/pv-search-input.js +0 -170
  103. package/pv-components/dist/web/components/pv-segmented-control/pv-segmented-control.js +0 -145
  104. package/pv-components/dist/web/components/pv-select-button/pv-select-button.js +0 -2563
  105. package/pv-components/dist/web/components/pv-selectable-card/pv-selectable-card.js +0 -85
  106. package/pv-components/dist/web/components/pv-side-panel/pv-side-panel.js +0 -80
  107. package/pv-components/dist/web/components/pv-skeleton/pv-skeleton.js +0 -1525
  108. package/pv-components/dist/web/components/pv-spinner/pv-spinner.js +0 -83
  109. package/pv-components/dist/web/components/pv-sprite/pv-sprite.js +0 -82
  110. package/pv-components/dist/web/components/pv-suggestion-tag/pv-suggestion-tag.js +0 -126
  111. package/pv-components/dist/web/components/pv-switch/pv-switch.js +0 -94
  112. package/pv-components/dist/web/components/pv-tab-list/pv-tab-list.js +0 -100
  113. package/pv-components/dist/web/components/pv-tabs/pv-tabs.js +0 -178
  114. package/pv-components/dist/web/components/pv-tag/pv-tag.js +0 -141
  115. package/pv-components/dist/web/components/pv-text-area/pv-text-area.js +0 -120
  116. package/pv-components/dist/web/components/pv-toast/pv-toast.js +0 -223
  117. package/pv-components/dist/web/components/pv-toggle-button/pv-toggle-button.js +0 -139
  118. package/pv-components/dist/web/components/pv-toggle-group/pv-toggle-group.js +0 -2887
  119. package/pv-components/dist/web/components/pv-tooltip/pv-tooltip.js +0 -90
  120. package/pv-components/dist/web/components/pv-tooltip-v2/pv-tooltip-v2.js +0 -1489
  121. package/pv-components/dist/web/components/pv-widget/pv-widget.js +0 -91
  122. package/pv-components/dist/web/vue.runtime.esm-browser.prod.js +0 -7
@@ -1,486 +0,0 @@
1
- import { watch as K, getCurrentScope as X, onScopeDispose as Y, computed as P, toValue as y, unref as ee, defineComponent as C, mergeModels as B, useTemplateRef as F, useModel as z, onMounted as L, createElementBlock as m, openBlock as f, withDirectives as te, createCommentVNode as h, createElementVNode as b, normalizeClass as T, vModelText as ne, toDisplayString as I, ref as H, getCurrentInstance as oe, normalizeStyle as se, createBlock as x, Fragment as Z, renderSlot as O, createVNode as N, mergeProps as le, defineCustomElement as ie } from "vue";
2
- function re(e) {
3
- return X() ? (Y(e), !0) : !1;
4
- }
5
- const J = typeof window < "u" && typeof document < "u";
6
- typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
7
- const ae = Object.prototype.toString, ue = (e) => ae.call(e) === "[object Object]", g = () => {
8
- }, ce = /* @__PURE__ */ de();
9
- function de() {
10
- var e, t;
11
- return J && ((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 M(e) {
14
- return Array.isArray(e) ? e : [e];
15
- }
16
- function pe(e, t, n) {
17
- return K(
18
- e,
19
- t,
20
- {
21
- ...n,
22
- immediate: !0
23
- }
24
- );
25
- }
26
- const R = J ? window : void 0;
27
- function w(e) {
28
- var t;
29
- const n = y(e);
30
- return (t = n?.$el) != null ? t : n;
31
- }
32
- function _(...e) {
33
- const t = [], n = () => {
34
- t.forEach((r) => r()), t.length = 0;
35
- }, o = (r, l, a, p) => (r.addEventListener(l, a, p), () => r.removeEventListener(l, a, p)), s = P(() => {
36
- const r = M(y(e[0])).filter((l) => l != null);
37
- return r.every((l) => typeof l != "string") ? r : void 0;
38
- }), d = pe(
39
- () => {
40
- var r, l;
41
- return [
42
- (l = (r = s.value) == null ? void 0 : r.map((a) => w(a))) != null ? l : [R].filter((a) => a != null),
43
- M(y(s.value ? e[1] : e[0])),
44
- M(ee(s.value ? e[2] : e[1])),
45
- // @ts-expect-error - TypeScript gets the correct types, but somehow still complains
46
- y(s.value ? e[3] : e[2])
47
- ];
48
- },
49
- ([r, l, a, p]) => {
50
- if (n(), !r?.length || !l?.length || !a?.length)
51
- return;
52
- const S = ue(p) ? { ...p } : p;
53
- t.push(
54
- ...r.flatMap(
55
- (E) => l.flatMap(
56
- (k) => a.map(($) => o(E, k, $, S))
57
- )
58
- )
59
- );
60
- },
61
- { flush: "post" }
62
- ), c = () => {
63
- d(), n();
64
- };
65
- return re(n), c;
66
- }
67
- let W = !1;
68
- function fe(e, t, n = {}) {
69
- const { window: o = R, ignore: s = [], capture: d = !0, detectIframe: c = !1, controls: r = !1 } = n;
70
- if (!o)
71
- return r ? { stop: g, cancel: g, trigger: g } : g;
72
- if (ce && !W) {
73
- W = !0;
74
- const i = { passive: !0 };
75
- Array.from(o.document.body.children).forEach((u) => u.addEventListener("click", g, i)), o.document.documentElement.addEventListener("click", g, i);
76
- }
77
- let l = !0;
78
- const a = (i) => y(s).some((u) => {
79
- if (typeof u == "string")
80
- return Array.from(o.document.querySelectorAll(u)).some((v) => v === i.target || i.composedPath().includes(v));
81
- {
82
- const v = w(u);
83
- return v && (i.target === v || i.composedPath().includes(v));
84
- }
85
- });
86
- function p(i) {
87
- const u = y(i);
88
- return u && u.$.subTree.shapeFlag === 16;
89
- }
90
- function S(i, u) {
91
- const v = y(i), A = v.$.subTree && v.$.subTree.children;
92
- return A == null || !Array.isArray(A) ? !1 : A.some((j) => j.el === u.target || u.composedPath().includes(j.el));
93
- }
94
- const E = (i) => {
95
- const u = w(e);
96
- if (i.target != null && !(!(u instanceof Element) && p(e) && S(e, i)) && !(!u || u === i.target || i.composedPath().includes(u))) {
97
- if ("detail" in i && i.detail === 0 && (l = !a(i)), !l) {
98
- l = !0;
99
- return;
100
- }
101
- t(i);
102
- }
103
- };
104
- let k = !1;
105
- const $ = [
106
- _(o, "click", (i) => {
107
- k || (k = !0, setTimeout(() => {
108
- k = !1;
109
- }, 0), E(i));
110
- }, { passive: !0, capture: d }),
111
- _(o, "pointerdown", (i) => {
112
- const u = w(e);
113
- l = !a(i) && !!(u && !i.composedPath().includes(u));
114
- }, { passive: !0 }),
115
- c && _(o, "blur", (i) => {
116
- setTimeout(() => {
117
- var u;
118
- const v = w(e);
119
- ((u = o.document.activeElement) == null ? void 0 : u.tagName) === "IFRAME" && !v?.contains(o.document.activeElement) && t(i);
120
- }, 0);
121
- }, { passive: !0 })
122
- ].filter(Boolean), D = () => $.forEach((i) => i());
123
- return r ? {
124
- stop: D,
125
- cancel: () => {
126
- l = !1;
127
- },
128
- trigger: (i) => {
129
- l = !0, E(i), l = !1;
130
- }
131
- } : D;
132
- }
133
- function ve(e) {
134
- return typeof e == "function" ? e : typeof e == "string" ? (t) => t.key === e : Array.isArray(e) ? (t) => e.includes(t.key) : () => !0;
135
- }
136
- function Q(...e) {
137
- let t, n, o = {};
138
- 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]);
139
- const {
140
- target: s = R,
141
- eventName: d = "keydown",
142
- passive: c = !1,
143
- dedupe: r = !1
144
- } = o, l = ve(t);
145
- return _(s, d, (p) => {
146
- p.repeat && y(r) || l(p) && n(p);
147
- }, c);
148
- }
149
- const me = { class: "pv-relative" }, he = ["disabled", "placeholder"], ye = {
150
- key: 0,
151
- "data-testid": "pv-search-input-shortcut",
152
- class: "pv-kbd"
153
- }, q = "/", be = /* @__PURE__ */ C({
154
- __name: "PvSearchInput",
155
- props: /* @__PURE__ */ B({
156
- placeholder: { default: "Search", type: String },
157
- disabled: { type: Boolean, default: !1 },
158
- displayShortcut: { type: Boolean }
159
- }, {
160
- modelValue: { required: !1, default: "" },
161
- modelModifiers: {}
162
- }),
163
- emits: ["update:modelValue"],
164
- setup(e, { expose: t }) {
165
- const n = e, o = F("search-input"), s = z(e, "modelValue"), d = P(() => ({
166
- "pv-input-search": !0,
167
- "pv-full-width": !0,
168
- "pv-input-padded-end": !0
169
- }));
170
- return L(() => {
171
- n.displayShortcut && Q(q, (c) => {
172
- const r = c.target, l = r instanceof HTMLInputElement || r instanceof HTMLTextAreaElement || (r?.isContentEditable ?? !1), a = document.activeElement === o.value;
173
- (!l || a) && (a || (c.preventDefault(), o.value?.focus()));
174
- });
175
- }), t({ input: o }), (c, r) => (f(), m("div", me, [
176
- te(b("input", {
177
- ref: "search-input",
178
- "onUpdate:modelValue": r[0] || (r[0] = (l) => s.value = l),
179
- "data-testid": "pv-search-input",
180
- type: "text",
181
- disabled: e.disabled,
182
- class: T(d.value),
183
- placeholder: e.placeholder
184
- }, null, 10, he), [
185
- [ne, s.value]
186
- ]),
187
- e.displayShortcut ? (f(), m("kbd", ye, I(q))) : h("v-if", !0)
188
- ]));
189
- }
190
- }), ge = [void 0, 10, 12, 20, 24, 32, 64], Se = ["xlink:href"], G = /* @__PURE__ */ C({
191
- __name: "PvIcon",
192
- props: {
193
- name: { type: String },
194
- size: { type: null }
195
- },
196
- setup(e) {
197
- const t = e, n = H(!1), o = H(null), s = P(() => ({
198
- "pv-icon": !0,
199
- [`pv-icon-${t.size}`]: ge.includes(t.size)
200
- })), d = P(() => n.value && o.value ? `${o.value}#${t.name}` : `#${t.name}`);
201
- return globalThis.__PV_GLOBAL_SPRITE_PATH__ && (o.value = globalThis.__PV_GLOBAL_SPRITE_PATH__), L(() => {
202
- const c = oe()?.root;
203
- n.value = c && "isCE" in c && c.isCE;
204
- }), (c, r) => (f(), m(
205
- "svg",
206
- {
207
- "data-testid": "pv-icon",
208
- "aria-hidden": "true",
209
- class: T(s.value)
210
- },
211
- [
212
- b("use", { "xlink:href": d.value }, null, 8, Se)
213
- ],
214
- 2
215
- /* CLASS */
216
- ));
217
- }
218
- }), ke = /* @__PURE__ */ C({
219
- __name: "PvSpinner",
220
- props: {
221
- variant: { default: "primary", type: String },
222
- size: { default: "lg", type: String }
223
- },
224
- setup(e) {
225
- const t = {
226
- xs: "0.75rem",
227
- sm: "1rem",
228
- md: "1.25rem",
229
- lg: "1.5rem",
230
- xl: "2rem"
231
- }, n = {
232
- primary: "pv-spinner",
233
- dark: "pv-spinner-dark",
234
- white: "pv-spinner-light"
235
- };
236
- return (o, s) => (f(), m(
237
- "div",
238
- {
239
- "data-testid": "pv-spinner",
240
- class: T(n[e.variant]),
241
- style: se({ "--size": t[e.size] })
242
- },
243
- null,
244
- 6
245
- /* CLASS, STYLE */
246
- ));
247
- }
248
- }), U = {
249
- md: "pv-button-small",
250
- lg: void 0,
251
- xl: "pv-button-large"
252
- }, we = (e) => e == null || !U.hasOwnProperty(e) ? null : U[e] || null, Pe = ["disabled"], Ce = {
253
- key: 1,
254
- "data-testid": "pv-button-label"
255
- }, Ee = /* @__PURE__ */ C({
256
- __name: "PvButton",
257
- props: {
258
- variant: { default: "primary", type: String },
259
- disabled: { type: Boolean, default: !1 },
260
- size: { default: "lg", type: String },
261
- loading: { type: Boolean, default: !1 },
262
- label: { type: String },
263
- leftIcon: { type: String },
264
- rightIcon: { type: String },
265
- inverse: { type: Boolean, default: !1 }
266
- },
267
- setup(e) {
268
- const t = ["ghost"], n = e, o = P(() => {
269
- const s = [];
270
- n.inverse && t.includes(n.variant) ? s.push(`pv-button-${n.variant}-inverse`) : s.push(`pv-button-${n.variant}`);
271
- const d = we(n.size);
272
- return d && s.push(d), s;
273
- });
274
- return (s, d) => (f(), m("button", {
275
- type: "button",
276
- class: T(o.value),
277
- disabled: e.disabled,
278
- "data-testid": "pv-button"
279
- }, [
280
- e.loading ? (f(), x(ke, {
281
- key: 0,
282
- size: "sm"
283
- })) : (f(), m(
284
- Z,
285
- { key: 1 },
286
- [
287
- e.leftIcon ? (f(), x(G, {
288
- key: 0,
289
- name: e.leftIcon,
290
- "data-testid": "pv-button-left-icon"
291
- }, null, 8, ["name"])) : h("v-if", !0),
292
- e.label ? (f(), m(
293
- "span",
294
- Ce,
295
- I(e.label),
296
- 1
297
- /* TEXT */
298
- )) : h("v-if", !0),
299
- e.rightIcon ? (f(), x(G, {
300
- key: 2,
301
- name: e.rightIcon,
302
- "data-testid": "pv-button-right-icon"
303
- }, null, 8, ["name"])) : h("v-if", !0)
304
- ],
305
- 64
306
- /* STABLE_FRAGMENT */
307
- ))
308
- ], 10, Pe));
309
- }
310
- }), _e = {
311
- class: "pv-inset-squish-12 pv-border-bottom",
312
- style: { "flex-shrink": "0" }
313
- }, Ie = {
314
- class: "pv-flex-vertical pv-stack-16",
315
- style: { "--flex-align": "flex-start" }
316
- }, Te = { class: "pv-flex pv-full-width" }, $e = { class: "pv-full-width pv-heading-3" }, Ae = {
317
- key: 0,
318
- class: "pv-text-body-md"
319
- }, xe = {
320
- key: 0,
321
- class: "pv-inset-inline-16"
322
- }, Oe = {
323
- class: "pv-inset-inline-16",
324
- style: { flex: "1", "overflow-y": "auto", "min-height": "0" }
325
- }, Me = {
326
- key: 0,
327
- class: "pv-inset-squish-12 pv-border-top",
328
- style: { "flex-shrink": "0" }
329
- }, Ve = /* @__PURE__ */ C({
330
- __name: "PvDrawer",
331
- props: /* @__PURE__ */ B({
332
- header: { type: String },
333
- subheader: { type: String },
334
- showSearchbar: { type: Boolean },
335
- closeOnClickOutside: { type: Boolean, default: !1 },
336
- searchInputProps: { type: Object }
337
- }, {
338
- searchInput: {
339
- required: !1
340
- },
341
- searchInputModifiers: {},
342
- modelValue: { type: Boolean, required: !0 },
343
- modelModifiers: {}
344
- }),
345
- emits: /* @__PURE__ */ B(["click-outside"], ["update:searchInput", "update:modelValue"]),
346
- setup(e, { emit: t }) {
347
- const n = e, o = t, s = F("sidePanel"), d = z(e, "searchInput"), c = z(e, "modelValue");
348
- L(() => {
349
- c.value && s?.value?.setAttribute("open", "true"), n.closeOnClickOutside && r();
350
- });
351
- const r = () => {
352
- s.value && fe(
353
- s.value,
354
- () => {
355
- c.value && (o("click-outside"), l());
356
- },
357
- { ignore: [".pv-click-outside-ignore"] }
358
- );
359
- }, l = () => {
360
- s?.value?.removeAttribute("open"), c.value = !1;
361
- };
362
- return K(
363
- () => c.value,
364
- () => {
365
- c.value ? s?.value?.setAttribute("open", "true") : s?.value?.removeAttribute("open");
366
- }
367
- ), Q("Escape", () => {
368
- s.value && c.value && l();
369
- }), (a, p) => (f(), m(
370
- "div",
371
- {
372
- class: "pv-drawer pv-surface",
373
- ref_key: "sidePanel",
374
- ref: s,
375
- "data-testid": "pv-drawer",
376
- style: { display: "flex", "flex-direction": "column", height: "100%" }
377
- },
378
- [
379
- h(" Header Section (Fixed) "),
380
- b("div", _e, [
381
- a.$slots.header ? O(a.$slots, "header", { key: 0 }) : (f(), m(
382
- Z,
383
- { key: 1 },
384
- [
385
- b("div", Ie, [
386
- b("div", Te, [
387
- b(
388
- "span",
389
- $e,
390
- I(e.header),
391
- 1
392
- /* TEXT */
393
- ),
394
- N(Ee, {
395
- "left-icon": "close",
396
- size: "md",
397
- onClick: l,
398
- "data-testid": "pv-side-panel-close-button",
399
- variant: "ghost"
400
- })
401
- ]),
402
- e.subheader ? (f(), m(
403
- "span",
404
- Ae,
405
- I(e.subheader),
406
- 1
407
- /* TEXT */
408
- )) : h("v-if", !0)
409
- ]),
410
- e.showSearchbar && d.value !== void 0 ? (f(), m("div", xe, [
411
- N(be, le({
412
- "data-testid": "pv-side-panel-input-search",
413
- modelValue: d.value,
414
- "onUpdate:modelValue": p[0] || (p[0] = (S) => d.value = S)
415
- }, n.searchInputProps), null, 16, ["modelValue"])
416
- ])) : h("v-if", !0)
417
- ],
418
- 64
419
- /* STABLE_FRAGMENT */
420
- ))
421
- ]),
422
- h(" Main Content Section (Scrollable) "),
423
- b("div", Oe, [
424
- O(a.$slots, "default")
425
- ]),
426
- h(" Footer Section (Fixed) "),
427
- a.$slots.footer ? (f(), m("div", Me, [
428
- O(a.$slots, "footer")
429
- ])) : h("v-if", !0)
430
- ],
431
- 512
432
- /* NEED_PATCH */
433
- ));
434
- }
435
- }), Be = /* @__PURE__ */ new Set(["PvIcon", "PvPopoverMenu", "PvPopover"]);
436
- function ze(e) {
437
- return !Be.has(e);
438
- }
439
- function V(e, t) {
440
- const n = document.querySelector('link[href*="' + t + '"]');
441
- if (!e.shadowRoot)
442
- return !1;
443
- if (n && e.shadowRoot) {
444
- const o = n.href;
445
- if (e.shadowRoot.querySelector(`link[href="${o}"]`))
446
- return;
447
- const s = document.createElement("link");
448
- return s.rel = "stylesheet", s.href = o, e.shadowRoot.prepend(s), !0;
449
- }
450
- return !1;
451
- }
452
- function Le(e) {
453
- if (!V(e, "pit-viper-v2")) {
454
- if (V(e, "pit-viper")) {
455
- V(e, "pit-viper-v2-scoped");
456
- return;
457
- }
458
- console.warn(
459
- "No global styles found for Pit Viper components. Make sure to include pit-viper.css or pit-viper-v2.css in your project."
460
- );
461
- }
462
- }
463
- const Re = (e) => ({ shadowRoot: ze(e) });
464
- function De(e) {
465
- const t = e.__name || e.name;
466
- if (!t)
467
- throw new Error("Component must have a __name or name property");
468
- const n = ie(e, Re(t));
469
- class o extends n {
470
- connectedCallback() {
471
- super.connectedCallback?.(), Le(this);
472
- }
473
- }
474
- return o;
475
- }
476
- function je(e) {
477
- return e.replace(/([A-Z])/g, "-$1").toLowerCase().replace(/^-/, "");
478
- }
479
- function He(e) {
480
- const t = e.__name || e.name;
481
- if (!t)
482
- throw new Error("Component must have a __name or name property");
483
- const n = je(t), o = De(e);
484
- customElements.get(n) || customElements.define(n, o);
485
- }
486
- He(Ve);