@kong-ui-public/split-pane 0.5.1 → 0.5.2-pr.3596.41e70338d.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kong-ui-public/split-pane",
3
- "version": "0.5.1",
3
+ "version": "0.5.2-pr.3596.41e70338d.0",
4
4
  "type": "module",
5
5
  "description": "A shared SplitPane layout component for Vue 3 applications.",
6
6
  "main": "./dist/split-pane.umd.js",
@@ -1,541 +0,0 @@
1
- import { watch as q, onMounted as ee, nextTick as G, getCurrentScope as xe, onScopeDispose as Ce, getCurrentInstance as he, computed as R, toValue as O, shallowRef as Y, watchEffect as we, unref as r, ref as b, readonly as te, defineComponent as ge, useCssVars as be, resolveComponent as oe, openBlock as x, createElementBlock as W, createElementVNode as C, Fragment as ye, renderList as Le, createBlock as K, withCtx as J, createVNode as le, withModifiers as ne, normalizeClass as E, resolveDynamicComponent as re, createCommentVNode as T, useSlots as We, useTemplateRef as $, renderSlot as N, withDirectives as ue, vShow as ce } from "vue";
2
- import { ChevronDoubleLeftIcon as _e, ChevronDoubleRightIcon as ke } from "@kong/icons";
3
- import { useRouter as ze } from "vue-router";
4
- import { createI18n as De, i18nTComponent as $e } from "@kong-ui-public/i18n";
5
- const Ie = "260px", ae = "500px", de = "50%", fe = "50%";
6
- function ie(e, n) {
7
- return xe() ? (Ce(e, n), !0) : !1;
8
- }
9
- const Ee = typeof window < "u" && typeof document < "u";
10
- typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
11
- const Te = (e) => e != null, Ne = Object.prototype.toString, Me = (e) => Ne.call(e) === "[object Object]", Se = () => {
12
- };
13
- function U(e) {
14
- return Array.isArray(e) ? e : [e];
15
- }
16
- function Oe(e) {
17
- return he();
18
- }
19
- function Ae(e, n = !0, l) {
20
- Oe() ? ee(e, l) : n ? e() : G(e);
21
- }
22
- function Be(e, n, l) {
23
- return q(e, n, {
24
- ...l,
25
- immediate: !0
26
- });
27
- }
28
- const A = Ee ? window : void 0;
29
- function _(e) {
30
- var n;
31
- const l = O(e);
32
- return (n = l?.$el) !== null && n !== void 0 ? n : l;
33
- }
34
- function j(...e) {
35
- const n = (t, a, o, i) => (t.addEventListener(a, o, i), () => t.removeEventListener(a, o, i)), l = R(() => {
36
- const t = U(O(e[0])).filter((a) => a != null);
37
- return t.every((a) => typeof a != "string") ? t : void 0;
38
- });
39
- return Be(() => {
40
- var t, a;
41
- return [
42
- (t = (a = l.value) === null || a === void 0 ? void 0 : a.map((o) => _(o))) !== null && t !== void 0 ? t : [A].filter((o) => o != null),
43
- U(O(l.value ? e[1] : e[0])),
44
- U(r(l.value ? e[2] : e[1])),
45
- O(l.value ? e[3] : e[2])
46
- ];
47
- }, ([t, a, o, i], u, v) => {
48
- if (!t?.length || !a?.length || !o?.length) return;
49
- const p = Me(i) ? { ...i } : i, c = t.flatMap((s) => a.flatMap((d) => o.map((h) => n(s, d, h, p))));
50
- v(() => {
51
- c.forEach((s) => s());
52
- });
53
- }, { flush: "post" });
54
- }
55
- // @__NO_SIDE_EFFECTS__
56
- function He() {
57
- const e = Y(!1), n = he();
58
- return n && ee(() => {
59
- e.value = !0;
60
- }, n), e;
61
- }
62
- // @__NO_SIDE_EFFECTS__
63
- function me(e) {
64
- const n = /* @__PURE__ */ He();
65
- return R(() => (n.value, !!e()));
66
- }
67
- function Xe(e, n, l = {}) {
68
- const { window: t = A, ...a } = l;
69
- let o;
70
- const i = /* @__PURE__ */ me(() => t && "MutationObserver" in t), u = () => {
71
- o && (o.disconnect(), o = void 0);
72
- }, v = q(R(() => {
73
- const s = U(O(e)).map(_).filter(Te);
74
- return new Set(s);
75
- }), (s) => {
76
- u(), i.value && s.size && (o = new MutationObserver(n), s.forEach((d) => o.observe(d, a)));
77
- }, {
78
- immediate: !0,
79
- flush: "post"
80
- }), p = () => o?.takeRecords(), c = () => {
81
- v(), u();
82
- };
83
- return ie(c), {
84
- isSupported: i,
85
- stop: c,
86
- takeRecords: p
87
- };
88
- }
89
- function Ve(e, n, l = {}) {
90
- const { window: t = A, document: a = t?.document, flush: o = "sync" } = l;
91
- if (!t || !a) return Se;
92
- let i;
93
- const u = (c) => {
94
- i?.(), i = c;
95
- }, v = we(() => {
96
- const c = _(e);
97
- if (c) {
98
- const { stop: s } = Xe(a, (d) => {
99
- d.map((h) => [...h.removedNodes]).flat().some((h) => h === c || h.contains(c)) && n(d);
100
- }, {
101
- window: t,
102
- childList: !0,
103
- subtree: !0
104
- });
105
- u(s);
106
- }
107
- }, { flush: o }), p = () => {
108
- v(), u();
109
- };
110
- return ie(p), p;
111
- }
112
- function Fe(e, n, l = {}) {
113
- const { window: t = A, ...a } = l;
114
- let o;
115
- const i = /* @__PURE__ */ me(() => t && "ResizeObserver" in t), u = () => {
116
- o && (o.disconnect(), o = void 0);
117
- }, v = q(R(() => {
118
- const c = O(e);
119
- return Array.isArray(c) ? c.map((s) => _(s)) : [_(c)];
120
- }), (c) => {
121
- if (u(), i.value && t) {
122
- o = new ResizeObserver(n);
123
- for (const s of c) s && o.observe(s, a);
124
- }
125
- }, {
126
- immediate: !0,
127
- flush: "post"
128
- }), p = () => {
129
- u(), v();
130
- };
131
- return ie(p), {
132
- isSupported: i,
133
- stop: p
134
- };
135
- }
136
- function ve(e, n = {}) {
137
- const { delayEnter: l = 0, delayLeave: t = 0, triggerOnRemoval: a = !1, window: o = A } = n, i = Y(!1);
138
- let u;
139
- const v = (p) => {
140
- const c = p ? l : t;
141
- u && (clearTimeout(u), u = void 0), c ? u = setTimeout(() => i.value = p, c) : i.value = p;
142
- };
143
- return o && (j(e, "mouseenter", () => v(!0), { passive: !0 }), j(e, "mouseleave", () => v(!1), { passive: !0 }), a && Ve(R(() => _(e)), () => v(!1))), i;
144
- }
145
- function Ke(e, n = {
146
- width: 0,
147
- height: 0
148
- }, l = {}) {
149
- const { window: t = A, box: a = "content-box" } = l, o = R(() => {
150
- var s;
151
- return (s = _(e)) === null || s === void 0 || (s = s.namespaceURI) === null || s === void 0 ? void 0 : s.includes("svg");
152
- }), i = Y(n.width), u = Y(n.height), { stop: v } = Fe(e, ([s]) => {
153
- const d = a === "border-box" ? s.borderBoxSize : a === "content-box" ? s.contentBoxSize : s.devicePixelContentBoxSize;
154
- if (t && o.value) {
155
- const h = _(e);
156
- if (h) {
157
- const m = h.getBoundingClientRect();
158
- i.value = m.width, u.value = m.height;
159
- }
160
- } else if (d) {
161
- const h = U(d);
162
- i.value = h.reduce((m, { inlineSize: y }) => m + y, 0), u.value = h.reduce((m, { blockSize: y }) => m + y, 0);
163
- } else
164
- i.value = s.contentRect.width, u.value = s.contentRect.height;
165
- }, l);
166
- Ae(() => {
167
- const s = _(e);
168
- s && (i.value = "offsetWidth" in s ? s.offsetWidth : n.width, u.value = "offsetHeight" in s ? s.offsetHeight : n.height);
169
- });
170
- const p = q(() => _(e), (s) => {
171
- i.value = s ? n.width : 0, u.value = s ? n.height : 0;
172
- });
173
- function c() {
174
- v(), p();
175
- }
176
- return {
177
- width: i,
178
- height: u,
179
- stop: c
180
- };
181
- }
182
- const pe = "20px", S = b(!1), I = b(!1), Q = b(!0), F = b(0);
183
- function Pe(e) {
184
- const n = e?.verticalNavRef || b(null), l = e?.innerPanesContainerRef || b(null), t = e?.paneLeftRef || b(null), a = e?.paneCenterRef || b(null), o = e?.paneRightRef || b(null), i = (f) => {
185
- switch (f) {
186
- case "verticalNav":
187
- return n.value?.offsetWidth || 0;
188
- case "innerPanesContainer":
189
- return l.value?.offsetWidth || 0;
190
- case "paneLeft":
191
- return t.value?.offsetWidth || 0;
192
- case "paneCenter":
193
- return a.value?.offsetWidth || 0;
194
- case "paneRight":
195
- return o.value?.offsetWidth || 0;
196
- default:
197
- return 0;
198
- }
199
- }, u = b(50), v = b(0), p = b(0), c = b(0), s = b(0), d = (f) => {
200
- if (a.value) {
201
- if (f) {
202
- a.value.style.width = `${f}%`, F.value = i("paneCenter");
203
- return;
204
- } else (typeof u.value != "number" || !isFinite(u.value)) && (u.value = 38);
205
- a.value.style.width = `${u.value}%`, F.value = i("paneCenter");
206
- }
207
- }, h = () => {
208
- a.value && o.value?.style.display === "none" ? (a.value.style.flex = "1", d(100)) : (a.value && (a.value.style.flex = ""), d());
209
- }, m = () => {
210
- if (!l.value || !a.value) return;
211
- const f = 100, g = i("innerPanesContainer") - i("verticalNav") - i("paneLeft") - f, k = u.value / 100 * i("innerPanesContainer");
212
- if (k < f ? u.value = f / i("innerPanesContainer") * 100 : k > g && (u.value = g / i("innerPanesContainer") * 100), a.value && o.value && o.value?.style.display === "none") {
213
- d(100);
214
- return;
215
- }
216
- d();
217
- }, y = (f) => {
218
- !a.value || f.button !== 0 || (I.value = !0, v.value = f.clientX, p.value = a.value.offsetWidth || 0);
219
- }, P = (f) => {
220
- if (!I.value || !l.value || !a.value) return;
221
- const g = l.value.offsetWidth, k = f.clientX - v.value, w = (p.value + k) / g * 100, L = 100 / g * 100, V = (g - 100) / g * 100;
222
- u.value = Math.min(Math.max(L, w), V), d();
223
- }, z = () => {
224
- I.value = !1;
225
- }, M = (f) => {
226
- !t.value || !Q.value || f.button !== 0 || (S.value = !0, c.value = f.clientX, s.value = t.value.offsetWidth || 0);
227
- }, Z = (f) => {
228
- if (!S.value || !t.value) return;
229
- let g = s.value + (f.clientX - c.value);
230
- const k = Number(Ie.replace(/px$/i, "")), X = Number(ae.replace(/px$/i, ""));
231
- g < k && (g = k), g > X && (g = X), t.value.style.width = `${g}px`, c.value = f.clientX, s.value = g, F.value = i("paneCenter");
232
- }, D = () => {
233
- S.value = !1;
234
- }, B = () => {
235
- I.value || m();
236
- }, H = async () => {
237
- Q.value = !Q.value;
238
- };
239
- return j(window, "resize", B), ee(async () => {
240
- await G(), a.value && (m(), await G(), d(), requestAnimationFrame(() => {
241
- F.value = i("paneCenter");
242
- }));
243
- }), j(document, "mousemove", (f) => {
244
- I.value && P(f), S.value && Z(f);
245
- }), j(document, "mouseup", () => {
246
- I.value && z(), S.value && D();
247
- }), {
248
- isDraggingPaneLeft: te(S),
249
- isDraggingInnerPanes: te(I),
250
- startDraggingInnerPanes: y,
251
- refreshInnerPaneSizes: h,
252
- // Toggle the left pane
253
- paneLeftExpanded: te(Q),
254
- togglePaneLeft: H,
255
- startDraggingPaneLeft: M,
256
- centerPaneWidth: F
257
- };
258
- }
259
- const Ue = { return: "Return", collapse_panel: "Collapse panel", expand_panel: "Expand panel", drag_to_resize: "Click and drag to resize" }, je = {
260
- actions: Ue
261
- };
262
- function Re() {
263
- const e = De("en-us", je);
264
- return {
265
- i18n: e,
266
- i18nT: $e(e)
267
- // Translation component <i18n-t>
268
- };
269
- }
270
- const Ge = { class: "kong-ui-public-split-pane-vertical-navigation" }, qe = { class: "split-pane-nav" }, Ze = { class: "top" }, Je = { class: "bottom" }, Qe = /* @__PURE__ */ ge({
271
- __name: "VerticalNavigation",
272
- props: {
273
- paneLeftWidth: { default: 0 },
274
- paneLeftVisible: { type: Boolean, default: !0 },
275
- items: { default: () => [] }
276
- },
277
- setup(e) {
278
- be((d) => ({
279
- eaa86402: c.value
280
- }));
281
- const { i18n: n } = Re(), l = ze(), { paneLeftExpanded: t, togglePaneLeft: a, isDraggingPaneLeft: o, isDraggingInnerPanes: i } = Pe(), u = b(!1), v = b(!1), p = R(() => u.value || o.value || i.value), c = R(() => `${e.paneLeftWidth - 8}px`), s = (d) => {
282
- t.value || a(), !d.active && d.to && l.push(d.to);
283
- };
284
- return ee(async () => {
285
- await G(), await new Promise((d) => setTimeout(d, 500)), v.value = !0;
286
- }), (d, h) => {
287
- const m = oe("KButton"), y = oe("KTooltip");
288
- return x(), W("div", Ge, [
289
- C("nav", qe, [
290
- C("div", Ze, [
291
- (x(!0), W(ye, null, Le(e.items, (P) => (x(), K(y, {
292
- key: P.tooltip,
293
- "kpop-attributes": { offset: "10px" },
294
- label: P.tooltip,
295
- placement: "right"
296
- }, {
297
- default: J(() => [
298
- le(m, {
299
- appearance: "none",
300
- "aria-label": P.tooltip,
301
- class: E(["split-pane-nav-item", { active: P.active }]),
302
- "data-testid": `kong-ui-public-split-pane-vertical-navigation-nav-item-${P.testid}`,
303
- icon: "",
304
- size: "large",
305
- style: { cursor: "pointer" },
306
- to: P.to,
307
- onClickCapture: ne((z) => s(P), ["prevent"])
308
- }, {
309
- default: J(() => [
310
- (x(), K(re(P.icon), {
311
- decorative: "",
312
- size: `var(--kui-icon-size-40, ${r(pe)})`
313
- }, null, 8, ["size"]))
314
- ]),
315
- _: 2
316
- }, 1032, ["aria-label", "class", "data-testid", "to", "onClickCapture"])
317
- ]),
318
- _: 2
319
- }, 1032, ["label"]))), 128))
320
- ]),
321
- C("div", Je, [
322
- e.paneLeftVisible ? (x(), W("div", {
323
- key: 0,
324
- class: E(["toggle-left-panel-control", {
325
- expanded: r(t),
326
- "disable-animation": !v.value || r(o) || r(i)
327
- }]),
328
- onTransitionend: h[0] || (h[0] = ne((P) => u.value = !1, ["self"])),
329
- onTransitionstart: h[1] || (h[1] = ne((P) => u.value = !0, ["self"]))
330
- }, [
331
- (x(), K(y, {
332
- key: String(r(t)),
333
- "kpop-attributes": r(t) ? void 0 : { offset: "10px" },
334
- label: p.value ? void 0 : r(t) ? r(n).t("actions.collapse_panel") : r(n).t("actions.expand_panel"),
335
- placement: r(t) ? "left" : "right"
336
- }, {
337
- default: J(() => [
338
- le(m, {
339
- appearance: "none",
340
- "aria-controls": "left-pane",
341
- "aria-expanded": r(t),
342
- "aria-label": r(t) ? r(n).t("actions.collapse_panel") : r(n).t("actions.expand_panel"),
343
- class: "split-pane-nav-item toggle-left-panel",
344
- "data-testid": "kong-ui-public-split-pane-toggle-left-panel-button",
345
- icon: "",
346
- size: "large",
347
- onClick: r(a)
348
- }, {
349
- default: J(() => [
350
- (x(), K(re(r(t) ? r(_e) : r(ke)), {
351
- decorative: "",
352
- size: `var(--kui-icon-size-40, ${r(pe)})`
353
- }, null, 8, ["size"]))
354
- ]),
355
- _: 1
356
- }, 8, ["aria-expanded", "aria-label", "onClick"])
357
- ]),
358
- _: 1
359
- }, 8, ["kpop-attributes", "label", "placement"]))
360
- ], 34)) : T("", !0)
361
- ])
362
- ])
363
- ]);
364
- };
365
- }
366
- }), se = (e, n) => {
367
- const l = e.__vccOpts || e;
368
- for (const [t, a] of n)
369
- l[t] = a;
370
- return l;
371
- }, Ye = /* @__PURE__ */ se(Qe, [["__scopeId", "data-v-59e8017f"]]), et = { class: "split-pane-container" }, tt = { class: "split-pane-container-inner" }, nt = { class: "panes" }, at = ["aria-hidden", "tabindex"], it = ["title"], st = { class: "split-pane-container-inner-content" }, ot = ["aria-hidden", "tabindex"], lt = ["title"], rt = ["aria-hidden", "tabindex"], ut = /* @__PURE__ */ ge({
372
- __name: "SplitPane",
373
- props: {
374
- resizable: { type: Boolean, default: !0 },
375
- showResizeHandle: { type: Boolean, default: !0 },
376
- showNavigation: { type: Boolean, default: !0 },
377
- navigationItems: { default: () => [] },
378
- paneLeft: { default: () => ({
379
- /** Pass false to hide the panel even if it contains slot content */
380
- visible: !0,
381
- maxWidth: ae
382
- }) },
383
- paneCenter: { default: () => ({
384
- /** Pass false to hide the panel even if it contains slot content */
385
- visible: !0,
386
- maxWidth: de
387
- }) },
388
- paneRight: { default: () => ({
389
- /** Pass false to hide the panel even if it contains slot content */
390
- visible: !0,
391
- maxWidth: fe
392
- }) }
393
- },
394
- setup(e) {
395
- be((w) => ({
396
- v1300c9c8: t.value,
397
- v183c98aa: a.value,
398
- bf8b5faa: o.value
399
- }));
400
- const n = We(), l = (w) => w === "left" ? e.paneLeft.maxWidth !== void 0 ? e.paneLeft.maxWidth : ae : w === "center" ? e.resizable ? "none" : e.paneCenter.maxWidth !== void 0 ? e.paneCenter.maxWidth : de : w === "right" ? e.resizable ? "none" : e.paneRight.maxWidth !== void 0 ? e.paneRight.maxWidth : fe : "none", t = R(() => l("left")), a = R(() => l("center")), o = R(() => l("right")), i = $("verticalNavRef"), u = $("innerPanesContainerRef"), v = $("paneLeftRef"), p = $("paneCenterRef"), c = $("paneRightRef"), s = $("paneLeftDivider"), d = $("innerPanesDivider"), { startDraggingInnerPanes: h, startDraggingPaneLeft: m, refreshInnerPaneSizes: y, paneLeftExpanded: P, isDraggingPaneLeft: z, isDraggingInnerPanes: M } = Pe({
401
- verticalNavRef: i,
402
- innerPanesContainerRef: u,
403
- paneLeftRef: v,
404
- paneCenterRef: p,
405
- paneRightRef: c
406
- }), { i18n: Z } = Re(), D = R(() => !!n["pane-left"] && e.paneLeft.visible !== !1 && P.value), B = R(() => !!n["pane-center"] && e.paneCenter.visible !== !1), H = R(() => !!n["pane-right"] && e.paneRight.visible !== !1), f = R(() => e.resizable && e.showResizeHandle && !!n["pane-center"] && e.paneCenter.visible !== !1 && !!n["pane-right"] && e.paneRight.visible !== !1), g = ve(s), k = ve(d), { width: X } = Ke(v);
407
- return q(() => e.paneRight.visible, async () => {
408
- e.resizable && (await G(), y());
409
- }, { flush: "post" }), (w, L) => (x(), W("div", {
410
- class: E(["kong-ui-public-split-pane", { "has-navigation": e.showNavigation }]),
411
- "data-testid": "split-pane"
412
- }, [
413
- C("div", et, [
414
- e.showNavigation ? (x(), K(Ye, {
415
- key: 0,
416
- ref_key: "verticalNavRef",
417
- ref: i,
418
- items: e.navigationItems,
419
- "pane-left-visible": e.paneLeft.visible !== !1,
420
- "pane-left-width": r(X)
421
- }, null, 8, ["items", "pane-left-visible", "pane-left-width"])) : T("", !0),
422
- C("div", tt, [
423
- C("div", nt, [
424
- C("div", {
425
- ref_key: "paneLeftRef",
426
- ref: v,
427
- "aria-hidden": D.value ? void 0 : "true",
428
- class: E(["split-pane-left", [{ expanded: r(P), "show-resize-border": r(g) }, { "is-dragging-pane-left": r(z) }, { "is-dragging-pane": r(z) || r(M) }]]),
429
- "data-testid": "split-pane-left",
430
- tabindex: D.value ? 0 : -1
431
- }, [
432
- N(w.$slots, "pane-left", {}, void 0, !0)
433
- ], 10, at),
434
- D.value ? (x(), W("div", {
435
- key: 0,
436
- ref_key: "paneLeftDivider",
437
- ref: s,
438
- class: "split-pane-resize-divider left",
439
- "data-testid": "split-pane-resize-divider-left",
440
- tabindex: "0",
441
- title: r(Z).t("actions.drag_to_resize"),
442
- onMousedown: L[0] || (L[0] = //@ts-ignore
443
- (...V) => r(m) && r(m)(...V))
444
- }, [...L[2] || (L[2] = [
445
- C("div", { class: "split-pane-drag-handle" }, null, -1)
446
- ])], 40, it)) : T("", !0),
447
- C("div", st, [
448
- n.toolbar ? (x(), W("div", {
449
- key: 0,
450
- class: E(["split-pane-toolbar-container", { "has-resize-divider-left": D.value }]),
451
- "data-testid": "split-pane-toolbar"
452
- }, [
453
- N(w.$slots, "toolbar", {}, void 0, !0)
454
- ], 2)) : T("", !0),
455
- C("div", {
456
- ref_key: "innerPanesContainerRef",
457
- ref: u,
458
- class: "split-pane-inner-panes"
459
- }, [
460
- ue(C("div", {
461
- ref_key: "paneCenterRef",
462
- ref: p,
463
- "aria-hidden": B.value ? void 0 : "true",
464
- class: E(["split-pane-center", [{ "has-resize-divider-left": D.value }, { "has-resize-divider-right": f.value }, { "is-dragging-pane": r(z) || r(M) }]]),
465
- "data-testid": "split-pane-center",
466
- tabindex: B.value ? 0 : -1
467
- }, [
468
- N(w.$slots, "pane-center", {}, void 0, !0)
469
- ], 10, ot), [
470
- [ce, B.value]
471
- ]),
472
- f.value ? (x(), W("div", {
473
- key: 0,
474
- ref_key: "innerPanesDivider",
475
- ref: d,
476
- class: "split-pane-resize-divider right",
477
- "data-testid": "split-pane-resize-divider-right",
478
- tabindex: "0",
479
- title: r(Z).t("actions.drag_to_resize"),
480
- onMousedown: L[1] || (L[1] = //@ts-ignore
481
- (...V) => r(h) && r(h)(...V))
482
- }, [...L[3] || (L[3] = [
483
- C("div", { class: "split-pane-drag-handle" }, null, -1)
484
- ])], 40, lt)) : T("", !0),
485
- ue(C("div", {
486
- ref_key: "paneRightRef",
487
- ref: c,
488
- "aria-hidden": H.value ? void 0 : "true",
489
- class: E(["split-pane-right", [
490
- { "has-toolbar": !!n.toolbar },
491
- { "show-resize-border": r(k) },
492
- { "is-dragging-inner-panes": r(M) },
493
- { "is-dragging-pane": r(z) || r(M) }
494
- ]]),
495
- "data-testid": "split-pane-right",
496
- tabindex: H.value ? 0 : -1
497
- }, [
498
- N(w.$slots, "pane-right", {}, void 0, !0)
499
- ], 10, rt), [
500
- [ce, H.value]
501
- ])
502
- ], 512)
503
- ])
504
- ])
505
- ])
506
- ])
507
- ], 2));
508
- }
509
- }), Rt = /* @__PURE__ */ se(ut, [["__scopeId", "data-v-a19fbade"]]), ct = {}, dt = {
510
- class: "kong-ui-public-split-pane-toolbar",
511
- "data-testid": "kong-ui-public-split-pane-toolbar"
512
- }, ft = {
513
- class: "left",
514
- "data-testid": "split-toolbar-left"
515
- }, vt = {
516
- key: 0,
517
- class: "center",
518
- "data-testid": "split-toolbar-center"
519
- }, pt = {
520
- key: 1,
521
- class: "right",
522
- "data-testid": "split-toolbar-right"
523
- };
524
- function ht(e, n) {
525
- return x(), W("div", dt, [
526
- C("div", ft, [
527
- N(e.$slots, "left", {}, void 0, !0)
528
- ]),
529
- e.$slots.center ? (x(), W("div", vt, [
530
- N(e.$slots, "center", {}, void 0, !0)
531
- ])) : T("", !0),
532
- e.$slots.right ? (x(), W("div", pt, [
533
- N(e.$slots, "right", {}, void 0, !0)
534
- ])) : T("", !0)
535
- ]);
536
- }
537
- const xt = /* @__PURE__ */ se(ct, [["render", ht], ["__scopeId", "data-v-44b95676"]]);
538
- export {
539
- Rt as SplitPane,
540
- xt as SplitToolbar
541
- };
@@ -1 +0,0 @@
1
- (function(k,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@kong/icons"),require("vue-router"),require("@kong-ui-public/i18n")):typeof define=="function"&&define.amd?define(["exports","vue","@kong/icons","vue-router","@kong-ui-public/i18n"],e):(k=typeof globalThis<"u"?globalThis:k||self,e(k["kong-ui-public-split-pane"]={},k.Vue,k.KongIcons,k.VueRouter,k["kong-ui-public-i18n"]))})(this,(function(k,e,X,Z,F){"use strict";const J="260px",A="500px";function H(t,a){return e.getCurrentScope()?(e.onScopeDispose(t,a),!0):!1}const Q=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Y=t=>t!=null,ee=Object.prototype.toString,te=t=>ee.call(t)==="[object Object]",ne=()=>{};function W(t){return Array.isArray(t)?t:[t]}function ae(t){return e.getCurrentInstance()}function ie(t,a=!0,r){ae()?e.onMounted(t,r):a?t():e.nextTick(t)}function oe(t,a,r){return e.watch(t,a,{...r,immediate:!0})}const T=Q?window:void 0;function R(t){var a;const r=e.toValue(t);return(a=r?.$el)!==null&&a!==void 0?a:r}function z(...t){const a=(n,i,l,o)=>(n.addEventListener(i,l,o),()=>n.removeEventListener(i,l,o)),r=e.computed(()=>{const n=W(e.toValue(t[0])).filter(i=>i!=null);return n.every(i=>typeof i!="string")?n:void 0});return oe(()=>{var n,i;return[(n=(i=r.value)===null||i===void 0?void 0:i.map(l=>R(l)))!==null&&n!==void 0?n:[T].filter(l=>l!=null),W(e.toValue(r.value?t[1]:t[0])),W(e.unref(r.value?t[2]:t[1])),e.toValue(r.value?t[3]:t[2])]},([n,i,l,o],c,u)=>{if(!n?.length||!i?.length||!l?.length)return;const h=te(o)?{...o}:o,d=n.flatMap(s=>i.flatMap(f=>l.map(g=>a(s,f,g,h))));u(()=>{d.forEach(s=>s())})},{flush:"post"})}function se(){const t=e.shallowRef(!1),a=e.getCurrentInstance();return a&&e.onMounted(()=>{t.value=!0},a),t}function U(t){const a=se();return e.computed(()=>(a.value,!!t()))}function le(t,a,r={}){const{window:n=T,...i}=r;let l;const o=U(()=>n&&"MutationObserver"in n),c=()=>{l&&(l.disconnect(),l=void 0)},u=e.watch(e.computed(()=>{const s=W(e.toValue(t)).map(R).filter(Y);return new Set(s)}),s=>{c(),o.value&&s.size&&(l=new MutationObserver(a),s.forEach(f=>l.observe(f,i)))},{immediate:!0,flush:"post"}),h=()=>l?.takeRecords(),d=()=>{u(),c()};return H(d),{isSupported:o,stop:d,takeRecords:h}}function re(t,a,r={}){const{window:n=T,document:i=n?.document,flush:l="sync"}=r;if(!n||!i)return ne;let o;const c=d=>{o?.(),o=d},u=e.watchEffect(()=>{const d=R(t);if(d){const{stop:s}=le(i,f=>{f.map(g=>[...g.removedNodes]).flat().some(g=>g===d||g.contains(d))&&a(f)},{window:n,childList:!0,subtree:!0});c(s)}},{flush:l}),h=()=>{u(),c()};return H(h),h}function ce(t,a,r={}){const{window:n=T,...i}=r;let l;const o=U(()=>n&&"ResizeObserver"in n),c=()=>{l&&(l.disconnect(),l=void 0)},u=e.watch(e.computed(()=>{const d=e.toValue(t);return Array.isArray(d)?d.map(s=>R(s)):[R(d)]}),d=>{if(c(),o.value&&n){l=new ResizeObserver(a);for(const s of d)s&&l.observe(s,i)}},{immediate:!0,flush:"post"}),h=()=>{c(),u()};return H(h),{isSupported:o,stop:h}}function j(t,a={}){const{delayEnter:r=0,delayLeave:n=0,triggerOnRemoval:i=!1,window:l=T}=a,o=e.shallowRef(!1);let c;const u=h=>{const d=h?r:n;c&&(clearTimeout(c),c=void 0),d?c=setTimeout(()=>o.value=h,d):o.value=h};return l&&(z(t,"mouseenter",()=>u(!0),{passive:!0}),z(t,"mouseleave",()=>u(!1),{passive:!0}),i&&re(e.computed(()=>R(t)),()=>u(!1))),o}function de(t,a={width:0,height:0},r={}){const{window:n=T,box:i="content-box"}=r,l=e.computed(()=>{var s;return(s=R(t))===null||s===void 0||(s=s.namespaceURI)===null||s===void 0?void 0:s.includes("svg")}),o=e.shallowRef(a.width),c=e.shallowRef(a.height),{stop:u}=ce(t,([s])=>{const f=i==="border-box"?s.borderBoxSize:i==="content-box"?s.contentBoxSize:s.devicePixelContentBoxSize;if(n&&l.value){const g=R(t);if(g){const b=g.getBoundingClientRect();o.value=b.width,c.value=b.height}}else if(f){const g=W(f);o.value=g.reduce((b,{inlineSize:P})=>b+P,0),c.value=g.reduce((b,{blockSize:P})=>b+P,0)}else o.value=s.contentRect.width,c.value=s.contentRect.height},r);ie(()=>{const s=R(t);s&&(o.value="offsetWidth"in s?s.offsetWidth:a.width,c.value="offsetHeight"in s?s.offsetHeight:a.height)});const h=e.watch(()=>R(t),s=>{o.value=s?a.width:0,c.value=s?a.height:0});function d(){u(),h()}return{width:o,height:c,stop:d}}const G="20px",L=e.ref(!1),E=e.ref(!1),S=e.ref(!0),D=e.ref(0);function K(t){const a=t?.verticalNavRef||e.ref(null),r=t?.innerPanesContainerRef||e.ref(null),n=t?.paneLeftRef||e.ref(null),i=t?.paneCenterRef||e.ref(null),l=t?.paneRightRef||e.ref(null),o=p=>{switch(p){case"verticalNav":return a.value?.offsetWidth||0;case"innerPanesContainer":return r.value?.offsetWidth||0;case"paneLeft":return n.value?.offsetWidth||0;case"paneCenter":return i.value?.offsetWidth||0;case"paneRight":return l.value?.offsetWidth||0;default:return 0}},c=e.ref(50),u=e.ref(0),h=e.ref(0),d=e.ref(0),s=e.ref(0),f=p=>{if(i.value){if(p){i.value.style.width=`${p}%`,D.value=o("paneCenter");return}else(typeof c.value!="number"||!isFinite(c.value))&&(c.value=38);i.value.style.width=`${c.value}%`,D.value=o("paneCenter")}},g=()=>{i.value&&l.value?.style.display==="none"?(i.value.style.flex="1",f(100)):(i.value&&(i.value.style.flex=""),f())},b=()=>{if(!r.value||!i.value)return;const p=100,m=o("innerPanesContainer")-o("verticalNav")-o("paneLeft")-p,x=c.value/100*o("innerPanesContainer");if(x<p?c.value=p/o("innerPanesContainer")*100:x>m&&(c.value=m/o("innerPanesContainer")*100),i.value&&l.value&&l.value?.style.display==="none"){f(100);return}f()},P=p=>{!i.value||p.button!==0||(E.value=!0,u.value=p.clientX,h.value=i.value.offsetWidth||0)},v=p=>{if(!E.value||!r.value||!i.value)return;const m=r.value.offsetWidth,x=p.clientX-u.value,C=(h.value+x)/m*100,w=100/m*100,$=(m-100)/m*100;c.value=Math.min(Math.max(w,C),$),f()},_=()=>{E.value=!1},N=p=>{!n.value||!S.value||p.button!==0||(L.value=!0,d.value=p.clientX,s.value=n.value.offsetWidth||0)},M=p=>{if(!L.value||!n.value)return;let m=s.value+(p.clientX-d.value);const x=Number(J.replace(/px$/i,"")),V=Number(A.replace(/px$/i,""));m<x&&(m=x),m>V&&(m=V),n.value.style.width=`${m}px`,d.value=p.clientX,s.value=m,D.value=o("paneCenter")},y=()=>{L.value=!1},I=()=>{E.value||b()},B=async()=>{S.value=!S.value};return z(window,"resize",I),e.onMounted(async()=>{await e.nextTick(),i.value&&(b(),await e.nextTick(),f(),requestAnimationFrame(()=>{D.value=o("paneCenter")}))}),z(document,"mousemove",p=>{E.value&&v(p),L.value&&M(p)}),z(document,"mouseup",()=>{E.value&&_(),L.value&&y()}),{isDraggingPaneLeft:e.readonly(L),isDraggingInnerPanes:e.readonly(E),startDraggingInnerPanes:P,refreshInnerPaneSizes:g,paneLeftExpanded:e.readonly(S),togglePaneLeft:B,startDraggingPaneLeft:N,centerPaneWidth:D}}const fe={actions:{return:"Return",collapse_panel:"Collapse panel",expand_panel:"Expand panel",drag_to_resize:"Click and drag to resize"}};function q(){const t=F.createI18n("en-us",fe);return{i18n:t,i18nT:F.i18nTComponent(t)}}const pe={class:"kong-ui-public-split-pane-vertical-navigation"},ue={class:"split-pane-nav"},he={class:"top"},ge={class:"bottom"},me=e.defineComponent({__name:"VerticalNavigation",props:{paneLeftWidth:{default:0},paneLeftVisible:{type:Boolean,default:!0},items:{default:()=>[]}},setup(t){e.useCssVars(f=>({eaa86402:d.value}));const{i18n:a}=q(),r=Z.useRouter(),{paneLeftExpanded:n,togglePaneLeft:i,isDraggingPaneLeft:l,isDraggingInnerPanes:o}=K(),c=e.ref(!1),u=e.ref(!1),h=e.computed(()=>c.value||l.value||o.value),d=e.computed(()=>`${t.paneLeftWidth-8}px`),s=f=>{n.value||i(),!f.active&&f.to&&r.push(f.to)};return e.onMounted(async()=>{await e.nextTick(),await new Promise(f=>setTimeout(f,500)),u.value=!0}),(f,g)=>{const b=e.resolveComponent("KButton"),P=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",pe,[e.createElementVNode("nav",ue,[e.createElementVNode("div",he,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,v=>(e.openBlock(),e.createBlock(P,{key:v.tooltip,"kpop-attributes":{offset:"10px"},label:v.tooltip,placement:"right"},{default:e.withCtx(()=>[e.createVNode(b,{appearance:"none","aria-label":v.tooltip,class:e.normalizeClass(["split-pane-nav-item",{active:v.active}]),"data-testid":`kong-ui-public-split-pane-vertical-navigation-nav-item-${v.testid}`,icon:"",size:"large",style:{cursor:"pointer"},to:v.to,onClickCapture:e.withModifiers(_=>s(v),["prevent"])},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(v.icon),{decorative:"",size:`var(--kui-icon-size-40, ${e.unref(G)})`},null,8,["size"]))]),_:2},1032,["aria-label","class","data-testid","to","onClickCapture"])]),_:2},1032,["label"]))),128))]),e.createElementVNode("div",ge,[t.paneLeftVisible?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["toggle-left-panel-control",{expanded:e.unref(n),"disable-animation":!u.value||e.unref(l)||e.unref(o)}]),onTransitionend:g[0]||(g[0]=e.withModifiers(v=>c.value=!1,["self"])),onTransitionstart:g[1]||(g[1]=e.withModifiers(v=>c.value=!0,["self"]))},[(e.openBlock(),e.createBlock(P,{key:String(e.unref(n)),"kpop-attributes":e.unref(n)?void 0:{offset:"10px"},label:h.value?void 0:e.unref(n)?e.unref(a).t("actions.collapse_panel"):e.unref(a).t("actions.expand_panel"),placement:e.unref(n)?"left":"right"},{default:e.withCtx(()=>[e.createVNode(b,{appearance:"none","aria-controls":"left-pane","aria-expanded":e.unref(n),"aria-label":e.unref(n)?e.unref(a).t("actions.collapse_panel"):e.unref(a).t("actions.expand_panel"),class:"split-pane-nav-item toggle-left-panel","data-testid":"kong-ui-public-split-pane-toggle-left-panel-button",icon:"",size:"large",onClick:e.unref(i)},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(n)?e.unref(X.ChevronDoubleLeftIcon):e.unref(X.ChevronDoubleRightIcon)),{decorative:"",size:`var(--kui-icon-size-40, ${e.unref(G)})`},null,8,["size"]))]),_:1},8,["aria-expanded","aria-label","onClick"])]),_:1},8,["kpop-attributes","label","placement"]))],34)):e.createCommentVNode("",!0)])])])}}}),O=(t,a)=>{const r=t.__vccOpts||t;for(const[n,i]of a)r[n]=i;return r},be=O(me,[["__scopeId","data-v-59e8017f"]]),ve={class:"split-pane-container"},ke={class:"split-pane-container-inner"},Ce={class:"panes"},Re=["aria-hidden","tabindex"],Pe=["title"],we={class:"split-pane-container-inner-content"},xe=["aria-hidden","tabindex"],Ee=["title"],_e=["aria-hidden","tabindex"],ye=O(e.defineComponent({__name:"SplitPane",props:{resizable:{type:Boolean,default:!0},showResizeHandle:{type:Boolean,default:!0},showNavigation:{type:Boolean,default:!0},navigationItems:{default:()=>[]},paneLeft:{default:()=>({visible:!0,maxWidth:A})},paneCenter:{default:()=>({visible:!0,maxWidth:"50%"})},paneRight:{default:()=>({visible:!0,maxWidth:"50%"})}},setup(t){e.useCssVars(C=>({v1300c9c8:n.value,v183c98aa:i.value,bf8b5faa:l.value}));const a=e.useSlots(),r=C=>C==="left"?t.paneLeft.maxWidth!==void 0?t.paneLeft.maxWidth:A:C==="center"?t.resizable?"none":t.paneCenter.maxWidth!==void 0?t.paneCenter.maxWidth:"50%":C==="right"?t.resizable?"none":t.paneRight.maxWidth!==void 0?t.paneRight.maxWidth:"50%":"none",n=e.computed(()=>r("left")),i=e.computed(()=>r("center")),l=e.computed(()=>r("right")),o=e.useTemplateRef("verticalNavRef"),c=e.useTemplateRef("innerPanesContainerRef"),u=e.useTemplateRef("paneLeftRef"),h=e.useTemplateRef("paneCenterRef"),d=e.useTemplateRef("paneRightRef"),s=e.useTemplateRef("paneLeftDivider"),f=e.useTemplateRef("innerPanesDivider"),{startDraggingInnerPanes:g,startDraggingPaneLeft:b,refreshInnerPaneSizes:P,paneLeftExpanded:v,isDraggingPaneLeft:_,isDraggingInnerPanes:N}=K({verticalNavRef:o,innerPanesContainerRef:c,paneLeftRef:u,paneCenterRef:h,paneRightRef:d}),{i18n:M}=q(),y=e.computed(()=>!!a["pane-left"]&&t.paneLeft.visible!==!1&&v.value),I=e.computed(()=>!!a["pane-center"]&&t.paneCenter.visible!==!1),B=e.computed(()=>!!a["pane-right"]&&t.paneRight.visible!==!1),p=e.computed(()=>t.resizable&&t.showResizeHandle&&!!a["pane-center"]&&t.paneCenter.visible!==!1&&!!a["pane-right"]&&t.paneRight.visible!==!1),m=j(s),x=j(f),{width:V}=de(u);return e.watch(()=>t.paneRight.visible,async()=>{t.resizable&&(await e.nextTick(),P())},{flush:"post"}),(C,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["kong-ui-public-split-pane",{"has-navigation":t.showNavigation}]),"data-testid":"split-pane"},[e.createElementVNode("div",ve,[t.showNavigation?(e.openBlock(),e.createBlock(be,{key:0,ref_key:"verticalNavRef",ref:o,items:t.navigationItems,"pane-left-visible":t.paneLeft.visible!==!1,"pane-left-width":e.unref(V)},null,8,["items","pane-left-visible","pane-left-width"])):e.createCommentVNode("",!0),e.createElementVNode("div",ke,[e.createElementVNode("div",Ce,[e.createElementVNode("div",{ref_key:"paneLeftRef",ref:u,"aria-hidden":y.value?void 0:"true",class:e.normalizeClass(["split-pane-left",[{expanded:e.unref(v),"show-resize-border":e.unref(m)},{"is-dragging-pane-left":e.unref(_)},{"is-dragging-pane":e.unref(_)||e.unref(N)}]]),"data-testid":"split-pane-left",tabindex:y.value?0:-1},[e.renderSlot(C.$slots,"pane-left",{},void 0,!0)],10,Re),y.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"paneLeftDivider",ref:s,class:"split-pane-resize-divider left","data-testid":"split-pane-resize-divider-left",tabindex:"0",title:e.unref(M).t("actions.drag_to_resize"),onMousedown:w[0]||(w[0]=(...$)=>e.unref(b)&&e.unref(b)(...$))},[...w[2]||(w[2]=[e.createElementVNode("div",{class:"split-pane-drag-handle"},null,-1)])],40,Pe)):e.createCommentVNode("",!0),e.createElementVNode("div",we,[a.toolbar?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["split-pane-toolbar-container",{"has-resize-divider-left":y.value}]),"data-testid":"split-pane-toolbar"},[e.renderSlot(C.$slots,"toolbar",{},void 0,!0)],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"innerPanesContainerRef",ref:c,class:"split-pane-inner-panes"},[e.withDirectives(e.createElementVNode("div",{ref_key:"paneCenterRef",ref:h,"aria-hidden":I.value?void 0:"true",class:e.normalizeClass(["split-pane-center",[{"has-resize-divider-left":y.value},{"has-resize-divider-right":p.value},{"is-dragging-pane":e.unref(_)||e.unref(N)}]]),"data-testid":"split-pane-center",tabindex:I.value?0:-1},[e.renderSlot(C.$slots,"pane-center",{},void 0,!0)],10,xe),[[e.vShow,I.value]]),p.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"innerPanesDivider",ref:f,class:"split-pane-resize-divider right","data-testid":"split-pane-resize-divider-right",tabindex:"0",title:e.unref(M).t("actions.drag_to_resize"),onMousedown:w[1]||(w[1]=(...$)=>e.unref(g)&&e.unref(g)(...$))},[...w[3]||(w[3]=[e.createElementVNode("div",{class:"split-pane-drag-handle"},null,-1)])],40,Ee)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",{ref_key:"paneRightRef",ref:d,"aria-hidden":B.value?void 0:"true",class:e.normalizeClass(["split-pane-right",[{"has-toolbar":!!a.toolbar},{"show-resize-border":e.unref(x)},{"is-dragging-inner-panes":e.unref(N)},{"is-dragging-pane":e.unref(_)||e.unref(N)}]]),"data-testid":"split-pane-right",tabindex:B.value?0:-1},[e.renderSlot(C.$slots,"pane-right",{},void 0,!0)],10,_e),[[e.vShow,B.value]])],512)])])])])],2))}}),[["__scopeId","data-v-a19fbade"]]),Te={},Le={class:"kong-ui-public-split-pane-toolbar","data-testid":"kong-ui-public-split-pane-toolbar"},Ne={class:"left","data-testid":"split-toolbar-left"},We={key:0,class:"center","data-testid":"split-toolbar-center"},ze={key:1,class:"right","data-testid":"split-toolbar-right"};function De(t,a){return e.openBlock(),e.createElementBlock("div",Le,[e.createElementVNode("div",Ne,[e.renderSlot(t.$slots,"left",{},void 0,!0)]),t.$slots.center?(e.openBlock(),e.createElementBlock("div",We,[e.renderSlot(t.$slots,"center",{},void 0,!0)])):e.createCommentVNode("",!0),t.$slots.right?(e.openBlock(),e.createElementBlock("div",ze,[e.renderSlot(t.$slots,"right",{},void 0,!0)])):e.createCommentVNode("",!0)])}const Ie=O(Te,[["render",De],["__scopeId","data-v-44b95676"]]);k.SplitPane=ye,k.SplitToolbar=Ie,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})}));
package/dist/style.css DELETED
@@ -1 +0,0 @@
1
- .kong-ui-public-split-pane-vertical-navigation[data-v-59e8017f]{color:#bee2ff;color:var(--kui-navigation-color-text, #bee2ff);display:flex;height:100%;justify-content:center;padding:8px;padding:var(--kui-space-40, 8px);position:relative;width:52px;z-index:1}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav[data-v-59e8017f]{align-items:center;display:flex;flex-direction:column;gap:12px;gap:var(--kui-space-50, 12px);justify-content:space-between;width:100%}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav .top[data-v-59e8017f],.kong-ui-public-split-pane-vertical-navigation .split-pane-nav .bottom[data-v-59e8017f]{display:flex;flex-direction:column;flex-grow:1;gap:12px;gap:var(--kui-space-50, 12px);position:relative;width:100%}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav .top[data-v-59e8017f]{align-items:center;justify-content:flex-start}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav .bottom[data-v-59e8017f]{align-items:center;justify-content:flex-end}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav[data-v-59e8017f] .k-popover .popover{pointer-events:none}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item[data-v-59e8017f]{align-items:center;background-color:#000933;background-color:var(--kui-navigation-color-background, #000933);border:1px solid rgba(0,0,0,0);border:var(--kui-border-width-10, 1px) solid var(--kui-color-border-transparent, rgba(0, 0, 0, 0));border-radius:6px;border-radius:var(--kui-border-radius-30, 6px);color:#bee2ff;color:var(--kui-navigation-color-text, #bee2ff);cursor:pointer;display:flex;justify-content:center;justify-content:space-between;text-decoration:none;transition:color .2s ease;white-space:nowrap}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item[data-v-59e8017f]:hover,.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item[data-v-59e8017f]:focus-visible{color:#eefaff;color:var(--kui-navigation-color-text-hover, #eefaff)}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item[data-v-59e8017f]:hover svg,.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item[data-v-59e8017f]:focus-visible svg{color:#eefaff;color:var(--kui-navigation-color-text-hover, #eefaff)}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item[data-v-59e8017f]:focus-visible{box-shadow:0 0 0 1px #fff9 inset;box-shadow:var(--kui-navigation-shadow-focus, 0 0 0 1px rgba(255, 255, 255, .6) inset);outline:none}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item[data-v-59e8017f] svg path{color:currentColor;fill:currentColor;transition:all .2s ease-out}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item.active[data-v-59e8017f]{background-color:#ffffff1f;background-color:var(--kui-navigation-color-background-selected, rgba(255, 255, 255, .12));border-color:#ffffff1f;border-color:var(--kui-navigation-color-border, rgba(255, 255, 255, .12));color:#00fabe;color:var(--kui-navigation-color-text-selected, #00fabe)}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item.active[data-v-59e8017f]:hover,.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item.active[data-v-59e8017f]:focus-visible{color:#00fabe!important;color:var(--kui-navigation-color-text-selected, #00fabe)!important}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item.active[data-v-59e8017f]:hover svg,.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item.active[data-v-59e8017f]:focus-visible svg{color:#00fabe;color:var(--kui-navigation-color-text-selected, #00fabe)}.kong-ui-public-split-pane-vertical-navigation .split-pane-nav-item.toggle-left-panel[data-v-59e8017f]{border-color:#ffffff1f;border-color:var(--kui-navigation-color-border, rgba(255, 255, 255, .12))}.toggle-left-panel-control[data-v-59e8017f]{left:0;position:absolute;z-index:1}.toggle-left-panel-control[data-v-59e8017f]:not(.disable-animation){transition:left .2s ease-out}.toggle-left-panel-control.expanded[data-v-59e8017f]{left:var(--eaa86402)}[data-v-a19fbade],[data-v-a19fbade] *{box-sizing:border-box}.kong-ui-public-split-pane[data-v-a19fbade]{height:100%}.kong-ui-public-split-pane.has-navigation[data-v-a19fbade]{background-color:#000933;background-color:var(--kui-navigation-color-background, #000933);inset:0;position:fixed;z-index:2000}.kong-ui-public-split-pane.has-navigation .split-pane-container-inner[data-v-a19fbade]{padding-top:6px;padding-top:var(--kui-space-30, 6px)}.kong-ui-public-split-pane .split-pane-container[data-v-a19fbade]{display:flex;flex-direction:row;height:100%;width:100%}.kong-ui-public-split-pane .split-pane-container-inner[data-v-a19fbade]{display:flex;flex-direction:column;width:100%}.kong-ui-public-split-pane .split-pane-container-inner-content[data-v-a19fbade]{display:flex;flex:1 1 auto;flex-direction:column;height:100%;max-height:calc(100vh - 6px);min-width:0;position:relative;width:100%}.kong-ui-public-split-pane .split-pane-inner-panes[data-v-a19fbade]{display:flex;height:100%;width:100%}.kong-ui-public-split-pane .panes[data-v-a19fbade]{align-items:stretch;background-color:#fff;background-color:var(--kui-color-background, #ffffff);border-top-left-radius:6px;border-top-left-radius:var(--kui-border-radius-30, 6px);display:flex;flex:1 1 auto;flex-direction:row;overflow:hidden;z-index:0}.kong-ui-public-split-pane .split-pane-left[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-center[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-right[data-v-a19fbade]{overflow-x:hidden;overflow-y:auto;position:relative;scrollbar-width:thin}.kong-ui-public-split-pane .split-pane-left.has-toolbar[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-center.has-toolbar[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-right.has-toolbar[data-v-a19fbade]{max-height:calc(100vh - 44px);z-index:1}.kong-ui-public-split-pane .split-pane-left.is-dragging-pane[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-center.is-dragging-pane[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-right.is-dragging-pane[data-v-a19fbade]{pointer-events:none;transition:none;-webkit-user-select:none;user-select:none}.kong-ui-public-split-pane .split-pane-left[data-v-a19fbade]{border-right:1px solid rgba(0,0,0,0);border-right:var(--kui-border-width-10, 1px) solid var(--kui-color-border-transparent, rgba(0, 0, 0, 0));border-top-left-radius:6px;border-top-left-radius:var(--kui-border-radius-30, 6px);flex:0 0 auto;max-height:none!important;max-width:0;overflow:hidden;pointer-events:none;position:relative;transition:border-color .1s ease-in-out,max-width .1s ease-in-out;width:260px;will-change:border-color,max-width,min-width;z-index:5}.kong-ui-public-split-pane .split-pane-left.expanded[data-v-a19fbade]{border-right-color:#e0e4ea;border-right-color:var(--kui-color-border, #e0e4ea);max-width:var(--v1300c9c8);pointer-events:auto}.kong-ui-public-split-pane .split-pane-left.is-dragging-pane-left[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-left.expanded.show-resize-border[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-left.show-resize-border[data-v-a19fbade]{border-right-color:#0044f4;border-right-color:var(--kui-color-border-primary, #0044f4)}.kong-ui-public-split-pane .split-pane-center[data-v-a19fbade]{max-width:var(--v183c98aa);min-width:300px;width:300px}.kong-ui-public-split-pane .split-pane-center.has-resize-divider-left[data-v-a19fbade]{margin-left:-3px}.kong-ui-public-split-pane .split-pane-center.has-resize-divider-right[data-v-a19fbade]{margin-right:-3px}.kong-ui-public-split-pane .split-pane-right[data-v-a19fbade]{border-left:1px solid #e0e4ea;border-left:var(--kui-border-width-10, 1px) solid var(--kui-color-border, #e0e4ea);flex:1;max-width:var(--bf8b5faa);min-width:300px;transition:border-color .1s ease-in-out}.kong-ui-public-split-pane .split-pane-right.is-dragging-inner-panes[data-v-a19fbade],.kong-ui-public-split-pane .split-pane-right.show-resize-border[data-v-a19fbade]{border-left-color:#0044f4;border-left-color:var(--kui-color-border-primary, #0044f4)}.kong-ui-public-split-pane .split-pane-toolbar-container.has-resize-divider-left[data-v-a19fbade]{margin-left:-3px}.kong-ui-public-split-pane .split-pane-resize-divider[data-v-a19fbade]{align-self:flex-end;background-color:#0000;background-color:var(--kui-color-background-transparent, rgba(0, 0, 0, 0));cursor:col-resize;height:calc(100% - 43px);position:relative;transition:all .1s ease-in-out;width:3px;z-index:4}.kong-ui-public-split-pane .split-pane-resize-divider.left[data-v-a19fbade]{margin-left:0}.kong-ui-public-split-pane .split-pane-resize-divider.right[data-v-a19fbade]{right:-3px}.kong-ui-public-split-pane-toolbar[data-v-44b95676]{align-items:center;background:#fff;background:var(--kui-color-background, #ffffff);border-bottom:1px solid #e0e4ea;border-bottom:var(--kui-border-width-10, 1px) solid var(--kui-color-border, #e0e4ea);display:flex;flex:0 0 44px;justify-content:space-between;min-height:44px;overflow-x:auto;overflow-y:hidden;padding-left:8px;padding-left:var(--kui-space-40, 8px);padding-right:8px;padding-right:var(--kui-space-40, 8px);position:sticky;scrollbar-width:thin;top:0;z-index:3}.left[data-v-44b95676],.right[data-v-44b95676],.center[data-v-44b95676]{align-items:center;display:flex;gap:8px;gap:var(--kui-space-40, 8px);height:100%}.left[data-v-44b95676],.right[data-v-44b95676]{flex:1 1 0%}.right[data-v-44b95676]{justify-content:flex-end}
@@ -1,17 +0,0 @@
1
- import type { SplitPaneProps } from '../types';
2
- type __VLS_Slots = {
3
- toolbar?: () => any;
4
- 'pane-left'?: () => any;
5
- 'pane-center'?: () => any;
6
- 'pane-right'?: () => any;
7
- };
8
- declare const __VLS_base: import("vue").DefineComponent<SplitPaneProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SplitPaneProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
10
- declare const _default: typeof __VLS_export;
11
- export default _default;
12
- type __VLS_WithSlots<T, S> = T & {
13
- new (): {
14
- $slots: S;
15
- };
16
- };
17
- //# sourceMappingURL=SplitPane.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SplitPane.vue.d.ts","sourceRoot":"","sources":["../../../src/components/SplitPane.vue"],"names":[],"mappings":"AAqZA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AA0B9C,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,CAAA;IACzB,YAAY,CAAC,EAAE,MAAM,GAAG,CAAA;CACzB,CAAC;AAuSF,QAAA,MAAM,UAAU,wSAEd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1,18 +0,0 @@
1
- declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
2
- type __VLS_Slots = {} & {
3
- left?: (props: typeof __VLS_1) => any;
4
- } & {
5
- center?: (props: typeof __VLS_3) => any;
6
- } & {
7
- right?: (props: typeof __VLS_5) => any;
8
- };
9
- declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
10
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
11
- declare const _default: typeof __VLS_export;
12
- export default _default;
13
- type __VLS_WithSlots<T, S> = T & {
14
- new (): {
15
- $slots: S;
16
- };
17
- };
18
- //# sourceMappingURL=SplitToolbar.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SplitToolbar.vue.d.ts","sourceRoot":"","sources":["../../../src/components/SplitToolbar.vue"],"names":[],"mappings":"AAqHA,QAAA,IAAI,OAAO,IAAU,EAAE,OAAO,IAAU,EAAE,OAAO,IAAW,CAAE;AAC9D,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GACzC;IAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC3C;IAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAK7C,QAAA,MAAM,UAAU,+QACd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -1,10 +0,0 @@
1
- import type { VerticalNavigationItem } from '../types';
2
- type __VLS_Props = {
3
- paneLeftWidth?: number;
4
- paneLeftVisible?: boolean;
5
- items?: VerticalNavigationItem[];
6
- };
7
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
- declare const _default: typeof __VLS_export;
9
- export default _default;
10
- //# sourceMappingURL=VerticalNavigation.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"VerticalNavigation.vue.d.ts","sourceRoot":"","sources":["../../../src/components/VerticalNavigation.vue"],"names":[],"mappings":"AAgQA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEtD,KAAK,WAAW,GAAG;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,CAAC,EAAE,sBAAsB,EAAE,CAAA;CACjC,CAAC;AAwRF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1,9 +0,0 @@
1
- import { createI18n, i18nTComponent } from '@kong-ui-public/i18n';
2
- import english from '../locales/en.json';
3
- interface UseI18nReturn {
4
- i18n: ReturnType<typeof createI18n<typeof english>>;
5
- i18nT: ReturnType<typeof i18nTComponent<typeof english>>;
6
- }
7
- export default function useI18n(): UseI18nReturn;
8
- export {};
9
- //# sourceMappingURL=useI18n.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useI18n.d.ts","sourceRoot":"","sources":["../../../src/composable/useI18n.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,OAAO,MAAM,oBAAoB,CAAA;AAExC,UAAU,aAAa;IACrB,IAAI,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,CAAA;IACnD,KAAK,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,OAAO,OAAO,CAAC,CAAC,CAAA;CACzD;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,IAAI,aAAa,CAO/C"}
@@ -1,17 +0,0 @@
1
- import type { useSplitPaneParams } from '../types';
2
- /**
3
- * Composable for managing split pane layout with resizable panels
4
- * @param {useSplitPaneParams} [params]
5
- * @returns {Object} Object containing pane state and control functions
6
- */
7
- export default function useSplitPane(params?: useSplitPaneParams): {
8
- isDraggingPaneLeft: Readonly<import("vue").Ref<boolean, boolean>>;
9
- isDraggingInnerPanes: Readonly<import("vue").Ref<boolean, boolean>>;
10
- startDraggingInnerPanes: (e: MouseEvent) => void;
11
- refreshInnerPaneSizes: () => void;
12
- paneLeftExpanded: Readonly<import("vue").Ref<boolean, boolean>>;
13
- togglePaneLeft: () => Promise<void>;
14
- startDraggingPaneLeft: (e: MouseEvent) => void;
15
- centerPaneWidth: import("vue").Ref<number, number>;
16
- };
17
- //# sourceMappingURL=useSplitPane.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSplitPane.d.ts","sourceRoot":"","sources":["../../../src/composable/useSplitPane.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAgBlD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAM,CAAC,EAAE,kBAAkB;;;iCAqH1B,UAAU,KAAG,IAAI;iCAjDnB,IAAI;;0BAyJL,OAAO,CAAC,IAAI,CAAC;+BA1DZ,UAAU,KAAG,IAAI;;EA2GpD"}
@@ -1,9 +0,0 @@
1
- /** Default minimum width for the left pane */
2
- export declare const PANE_LEFT_MIN_WIDTH = "260px";
3
- /** Default maximum width for the left pane */
4
- export declare const PANE_LEFT_MAX_WIDTH = "500px";
5
- /** Default maximum width for the center pane */
6
- export declare const PANE_CENTER_DEFAULT_MAX_WIDTH: string;
7
- /** Default maximum width for the right pane */
8
- export declare const PANE_RIGHT_DEFAULT_MAX_WIDTH: string;
9
- //# sourceMappingURL=split-pane.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"split-pane.d.ts","sourceRoot":"","sources":["../../../src/constants/split-pane.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,eAAO,MAAM,mBAAmB,UAAU,CAAA;AAC1C,8CAA8C;AAC9C,eAAO,MAAM,mBAAmB,UAAU,CAAA;AAC1C,gDAAgD;AAChD,eAAO,MAAM,6BAA6B,EAAE,MAAc,CAAA;AAC1D,+CAA+C;AAC/C,eAAO,MAAM,4BAA4B,EAAE,MAAc,CAAA"}
@@ -1,5 +0,0 @@
1
- import SplitPane from './components/SplitPane.vue';
2
- import SplitToolbar from './components/SplitToolbar.vue';
3
- export { SplitPane, SplitToolbar, };
4
- export * from './types';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,4BAA4B,CAAA;AAClD,OAAO,YAAY,MAAM,+BAA+B,CAAA;AAExD,OAAO,EACL,SAAS,EACT,YAAY,GACb,CAAA;AAED,cAAc,SAAS,CAAA"}
@@ -1,74 +0,0 @@
1
- import type { Component, ShallowRef } from 'vue';
2
- import type { RouteLocationRaw } from 'vue-router';
3
- export interface SplitPaneProps {
4
- /**
5
- * Should the center and right panels allow for resizing
6
- * @default true
7
- */
8
- resizable?: boolean;
9
- /**
10
- * Should the resize handle be hidden
11
- * @default true
12
- */
13
- showResizeHandle?: boolean;
14
- /**
15
- * Show the navigation pane
16
- * @default true
17
- */
18
- showNavigation?: boolean;
19
- /**
20
- * The items to show in the vertical navigation
21
- * @default []
22
- */
23
- navigationItems?: VerticalNavigationItem[];
24
- paneLeft?: {
25
- /** Pass false to hide the pane even if it contains slot content */
26
- visible?: boolean;
27
- maxWidth?: string;
28
- };
29
- paneCenter?: {
30
- /** Pass false to hide the pane even if it contains slot content */
31
- visible?: boolean;
32
- maxWidth?: string;
33
- };
34
- paneRight?: {
35
- /** Pass false to hide the pane even if it contains slot content */
36
- visible?: boolean;
37
- maxWidth?: string;
38
- };
39
- }
40
- export interface VerticalNavigationItem {
41
- /**
42
- * The route location to navigate to
43
- */
44
- to?: RouteLocationRaw;
45
- /**
46
- * The tooltip text to show on hover
47
- */
48
- tooltip: string;
49
- /**
50
- * Is the item currently active
51
- */
52
- active: boolean;
53
- /**
54
- * The icon to show for the navigation item
55
- */
56
- icon: Component;
57
- /**
58
- * The test ID for the navigation item
59
- */
60
- testid: string;
61
- }
62
- export interface useSplitPaneParams {
63
- /** The `useTemplateRef()` of the vertical navigation component */
64
- verticalNavRef?: Readonly<ShallowRef<any | null>>;
65
- /** The `useTemplateRef()` of the resizable pane's parent element */
66
- innerPanesContainerRef?: Readonly<ShallowRef<HTMLDivElement | null>>;
67
- /** The `useTemplateRef()` of the left pane */
68
- paneLeftRef?: Readonly<ShallowRef<HTMLDivElement | null>>;
69
- /** The `useTemplateRef()` of the center pane */
70
- paneCenterRef?: Readonly<ShallowRef<HTMLDivElement | null>>;
71
- /** The `useTemplateRef()` of the right pane */
72
- paneRightRef?: Readonly<ShallowRef<HTMLDivElement | null>>;
73
- }
74
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAA;IAC1C,QAAQ,CAAC,EAAE;QACT,mEAAmE;QACnE,OAAO,CAAC,EAAE,OAAO,CAAA;QAEjB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,UAAU,CAAC,EAAE;QACX,mEAAmE;QACnE,OAAO,CAAC,EAAE,OAAO,CAAA;QAEjB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,SAAS,CAAC,EAAE;QACV,mEAAmE;QACnE,OAAO,CAAC,EAAE,OAAO,CAAA;QAEjB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACF;AAGD,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,EAAE,CAAC,EAAE,gBAAgB,CAAA;IACrB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,MAAM,EAAE,OAAO,CAAA;IACf;;OAEG;IACH,IAAI,EAAE,SAAS,CAAA;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACf;AAGD,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,cAAc,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAA;IACjD,oEAAoE;IACpE,sBAAsB,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAA;IACpE,8CAA8C;IAC9C,WAAW,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAA;IACzD,gDAAgD;IAChD,aAAa,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAA;IAC3D,+CAA+C;IAC/C,YAAY,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,CAAA;CAC3D"}