@kong-ui-public/page-layout 1.3.10 → 1.3.11-pr.3655.2dd3bec0d.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 (30) hide show
  1. package/package.json +1 -1
  2. package/dist/page-layout.es.js +0 -811
  3. package/dist/page-layout.umd.js +0 -1
  4. package/dist/style.css +0 -1
  5. package/dist/types/components/AboutCard.vue.d.ts +0 -12
  6. package/dist/types/components/AboutCard.vue.d.ts.map +0 -1
  7. package/dist/types/components/PageLayout.vue.d.ts +0 -12
  8. package/dist/types/components/PageLayout.vue.d.ts.map +0 -1
  9. package/dist/types/components/PageLayoutAnchorNavigation.vue.d.ts +0 -5
  10. package/dist/types/components/PageLayoutAnchorNavigation.vue.d.ts.map +0 -1
  11. package/dist/types/components/PageLayoutTabs.vue.d.ts +0 -21
  12. package/dist/types/components/PageLayoutTabs.vue.d.ts.map +0 -1
  13. package/dist/types/composables/index.d.ts +0 -6
  14. package/dist/types/composables/index.d.ts.map +0 -1
  15. package/dist/types/composables/useI18n.d.ts +0 -9
  16. package/dist/types/composables/useI18n.d.ts.map +0 -1
  17. package/dist/types/index.d.ts +0 -6
  18. package/dist/types/index.d.ts.map +0 -1
  19. package/dist/types/symbols.d.ts +0 -7
  20. package/dist/types/symbols.d.ts.map +0 -1
  21. package/dist/types/types/about-card.d.ts +0 -44
  22. package/dist/types/types/about-card.d.ts.map +0 -1
  23. package/dist/types/types/index.d.ts +0 -5
  24. package/dist/types/types/index.d.ts.map +0 -1
  25. package/dist/types/types/page-layout-anchor-navigation.d.ts +0 -26
  26. package/dist/types/types/page-layout-anchor-navigation.d.ts.map +0 -1
  27. package/dist/types/types/page-layout-tabs.d.ts +0 -22
  28. package/dist/types/types/page-layout-tabs.d.ts.map +0 -1
  29. package/dist/types/types/page-layout.d.ts +0 -60
  30. package/dist/types/types/page-layout.d.ts.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kong-ui-public/page-layout",
3
- "version": "1.3.10",
3
+ "version": "1.3.11-pr.3655.2dd3bec0d.0",
4
4
  "type": "module",
5
5
  "main": "./dist/page-layout.umd.js",
6
6
  "module": "./dist/page-layout.es.js",
@@ -1,811 +0,0 @@
1
- import { onMounted as we, nextTick as be, shallowRef as me, shallowReadonly as je, getCurrentScope as Ge, onScopeDispose as Ye, getCurrentInstance as Oe, toValue as ve, computed as w, watch as fe, defineComponent as ke, inject as de, useTemplateRef as he, ref as W, onBeforeUnmount as xe, resolveComponent as B, openBlock as r, createElementBlock as f, createElementVNode as $, normalizeClass as j, Fragment as Z, renderList as G, createBlock as D, resolveDynamicComponent as Ie, mergeProps as ze, withKeys as Fe, withModifiers as ye, withCtx as I, renderSlot as R, createTextVNode as oe, toDisplayString as x, createVNode as z, unref as m, createCommentVNode as k, useCssVars as qe, useSlots as Xe, provide as Ze, onUnmounted as Je, createSlots as Ae, normalizeProps as Qe, guardReactiveProps as et } from "vue";
2
- import { useRouter as He, useRoute as tt } from "vue-router";
3
- import { createI18n as at, i18nTComponent as ot } from "@kong-ui-public/i18n";
4
- import { ChevronDownIcon as We, ChevronRightIcon as nt, ArrowTopLeftIcon as st, StarFillIcon as it, StarIcon as lt, InfoIcon as rt } from "@kong/icons";
5
- const ut = "Go back", ct = { save_shortcut: "Save page to shortcuts", remove_shortcut: "Remove page from shortcuts" }, dt = { more_button: { label: "More", aria_label: "More tabs" } }, vt = { aria_label: "Page sections", more_button: { aria_label: "More page sections" } }, ht = {
6
- back_button: ut,
7
- favorite_button: ct,
8
- tabs: dt,
9
- anchor_navigation: vt
10
- };
11
- function ft() {
12
- const e = at("en-us", ht);
13
- return {
14
- i18n: e,
15
- i18nT: ot(e)
16
- // Translation component <i18n-t>
17
- };
18
- }
19
- const Se = {
20
- useI18n: ft
21
- }, pt = "12px", ne = "16px", gt = "2px", Re = "16px";
22
- function bt(e, l) {
23
- return Ge() ? (Ye(e, l), !0) : !1;
24
- }
25
- const mt = typeof window < "u" && typeof document < "u";
26
- typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
27
- const te = () => {
28
- };
29
- function yt(e, l) {
30
- function a(...o) {
31
- return new Promise((u, v) => {
32
- Promise.resolve(e(() => l.apply(this, o), {
33
- fn: l,
34
- thisArg: this,
35
- args: o
36
- })).then(u).catch(v);
37
- });
38
- }
39
- return "cancel" in e && Object.assign(a, {
40
- cancel: e.cancel,
41
- flush: e.flush,
42
- isPending: e.isPending
43
- }), a;
44
- }
45
- function wt(e, l = {}) {
46
- let a, o, u = te, v = te;
47
- const d = me(!1), n = (g) => {
48
- clearTimeout(g), u(), u = te;
49
- };
50
- let y;
51
- return Object.assign((g) => {
52
- const i = ve(e), h = ve(l.maxWait);
53
- return a && n(a), i <= 0 || h !== void 0 && h <= 0 ? (o && (n(o), o = void 0), d.value = !1, Promise.resolve(g())) : (d.value = !0, new Promise((b, p) => {
54
- u = l.rejectOnCancel ? p : b, v = b, y = g, h && !o && (o = setTimeout(() => {
55
- a && n(a), o = void 0, d.value = !1, b(y());
56
- }, h)), a = setTimeout(() => {
57
- o && n(o), o = void 0, d.value = !1, b(g());
58
- }, i);
59
- }));
60
- }, {
61
- cancel: () => {
62
- a && (n(a), a = void 0), o && (n(o), o = void 0), d.value = !1, v = te;
63
- },
64
- flush: () => {
65
- if (d.value) {
66
- a && (clearTimeout(a), a = void 0), o && (clearTimeout(o), o = void 0), d.value = !1;
67
- const g = v;
68
- u = te, v = te, g(y());
69
- }
70
- },
71
- isPending: je(d)
72
- });
73
- }
74
- function kt(e) {
75
- return Array.isArray(e) ? e : [e];
76
- }
77
- function Tt(e) {
78
- return Oe();
79
- }
80
- function _t(e, l = 200, a = {}) {
81
- return yt(wt(l, a), e);
82
- }
83
- function $t(e, l = !0, a) {
84
- Tt() ? we(e, a) : l ? e() : be(e);
85
- }
86
- const Me = mt ? window : void 0;
87
- function ae(e) {
88
- var l;
89
- const a = ve(e);
90
- return (l = a?.$el) !== null && l !== void 0 ? l : a;
91
- }
92
- // @__NO_SIDE_EFFECTS__
93
- function Ct() {
94
- const e = me(!1), l = Oe();
95
- return l && we(() => {
96
- e.value = !0;
97
- }, l), e;
98
- }
99
- // @__NO_SIDE_EFFECTS__
100
- function Et(e) {
101
- const l = /* @__PURE__ */ Ct();
102
- return w(() => (l.value, !!e()));
103
- }
104
- function Le(e, l, a = {}) {
105
- const { window: o = Me, ...u } = a;
106
- let v;
107
- const d = /* @__PURE__ */ Et(() => o && "ResizeObserver" in o), n = () => {
108
- v && (v.disconnect(), v = void 0);
109
- }, y = fe(w(() => {
110
- const g = ve(e);
111
- return Array.isArray(g) ? g.map((i) => ae(i)) : [ae(g)];
112
- }), (g) => {
113
- if (n(), d.value && o) {
114
- v = new ResizeObserver(l);
115
- for (const i of g) i && v.observe(i, u);
116
- }
117
- }, {
118
- immediate: !0,
119
- flush: "post"
120
- }), A = () => {
121
- n(), y();
122
- };
123
- return bt(A), {
124
- isSupported: d,
125
- stop: A
126
- };
127
- }
128
- function It(e, l = {
129
- width: 0,
130
- height: 0
131
- }, a = {}) {
132
- const { window: o = Me, box: u = "content-box" } = a, v = w(() => {
133
- var i;
134
- return (i = ae(e)) === null || i === void 0 || (i = i.namespaceURI) === null || i === void 0 ? void 0 : i.includes("svg");
135
- }), d = me(l.width), n = me(l.height), { stop: y } = Le(e, ([i]) => {
136
- const h = u === "border-box" ? i.borderBoxSize : u === "content-box" ? i.contentBoxSize : i.devicePixelContentBoxSize;
137
- if (o && v.value) {
138
- const b = ae(e);
139
- if (b) {
140
- const p = b.getBoundingClientRect();
141
- d.value = p.width, n.value = p.height;
142
- }
143
- } else if (h) {
144
- const b = kt(h);
145
- d.value = b.reduce((p, { inlineSize: S }) => p + S, 0), n.value = b.reduce((p, { blockSize: S }) => p + S, 0);
146
- } else
147
- d.value = i.contentRect.width, n.value = i.contentRect.height;
148
- }, a);
149
- $t(() => {
150
- const i = ae(e);
151
- if (i && "offsetWidth" in i) if (u === "content-box" && o) {
152
- const h = o.getComputedStyle(i), b = Number.parseFloat(h.paddingLeft) + Number.parseFloat(h.paddingRight), p = Number.parseFloat(h.paddingTop) + Number.parseFloat(h.paddingBottom), S = Number.parseFloat(h.borderLeftWidth) + Number.parseFloat(h.borderRightWidth), P = Number.parseFloat(h.borderTopWidth) + Number.parseFloat(h.borderBottomWidth);
153
- d.value = i.offsetWidth - b - S, n.value = i.offsetHeight - p - P;
154
- } else
155
- d.value = i.offsetWidth, n.value = i.offsetHeight;
156
- else i && (d.value = l.width, n.value = l.height);
157
- });
158
- const A = fe(() => ae(e), (i) => {
159
- d.value = i ? l.width : 0, n.value = i ? l.height : 0;
160
- });
161
- function g() {
162
- y(), A();
163
- }
164
- return {
165
- width: d,
166
- height: n,
167
- stop: g
168
- };
169
- }
170
- const At = {
171
- ref: "page-layout-tabs",
172
- class: "page-layout-tabs",
173
- "data-testid": "page-layout-tabs"
174
- }, St = { key: 0 }, Rt = ["aria-label"], Lt = {
175
- key: 0,
176
- class: "layout-loader-container"
177
- }, Nt = /* @__PURE__ */ ke({
178
- __name: "PageLayoutTabs",
179
- props: {
180
- tabs: { default: () => [] }
181
- },
182
- setup(e) {
183
- const { i18n: { t: l } } = Se.useI18n(), a = He(), o = de("app:navigateTo", null), u = (p) => {
184
- if (typeof p.to != "string") {
185
- a.push(p.to);
186
- return;
187
- }
188
- if (typeof o != "function") {
189
- window.location.href = p.to;
190
- return;
191
- }
192
- o(p.to);
193
- }, v = he("page-layout-tabs"), d = he("page-layout-tabs-list"), n = W(e.tabs.length), y = W(!1), A = w(() => e.tabs.slice(0, n.value)), g = w(() => e.tabs.slice(n.value)), i = async () => {
194
- if (!v.value || !d.value)
195
- return;
196
- y.value = !1, n.value = e.tabs.length, await be();
197
- const p = v.value?.getBoundingClientRect().width - parseInt(Re) * 2;
198
- let S = d.value?.getBoundingClientRect().width;
199
- if (!p || !S) {
200
- y.value = !0;
201
- return;
202
- }
203
- const P = 50;
204
- for (; S + P > p && n.value > 1; )
205
- n.value--, await be(), S = d.value?.getBoundingClientRect().width || 0;
206
- y.value = !0;
207
- };
208
- let h = null;
209
- const b = () => {
210
- h && clearTimeout(h), h = setTimeout(() => {
211
- i();
212
- }, 150);
213
- };
214
- return we(() => {
215
- i(), Le(v, b);
216
- }), xe(() => {
217
- h && clearTimeout(h);
218
- }), fe(() => e.tabs, () => {
219
- i();
220
- }, { deep: !0 }), (p, S) => {
221
- const P = B("KDropdownItem"), J = B("KDropdown"), se = B("KSkeletonBox");
222
- return r(), f("nav", At, [
223
- $("ul", {
224
- ref: "page-layout-tabs-list",
225
- class: j({ "layout-computing": !y.value })
226
- }, [
227
- (r(!0), f(Z, null, G(A.value, (c) => (r(), f("li", {
228
- key: `${c.key}-tab`
229
- }, [
230
- (r(), D(Ie(typeof c.to == "string" ? "a" : "router-link"), ze({ ref_for: !0 }, typeof c.to == "string" ? { href: c.to } : { to: c.to }, {
231
- "aria-current": c.active ? "page" : void 0,
232
- class: ["tab-link", { active: c.active }],
233
- "data-testid": c.dataTestId ? c.dataTestId : `page-layout-tab-${c.key}`,
234
- tabindex: "0",
235
- onClick: ye((F) => u(c), ["prevent"]),
236
- onKeydown: Fe(ye((F) => u(c), ["prevent"]), ["enter"])
237
- }), {
238
- default: I(() => [
239
- R(p.$slots, `tab-${c.key}`, { tab: c }, () => [
240
- oe(x(c.label), 1)
241
- ], !0)
242
- ]),
243
- _: 2
244
- }, 1040, ["aria-current", "class", "data-testid", "onClick", "onKeydown"]))
245
- ]))), 128)),
246
- e.tabs.length > n.value ? (r(), f("li", St, [
247
- z(J, { "kpop-attributes": {
248
- placement: "bottom-end",
249
- popoverElementAttributes: { "data-testid": "tabs-overflow-dropdown-popover" }
250
- } }, {
251
- items: I(() => [
252
- (r(!0), f(Z, null, G(g.value, (c) => (r(), D(P, {
253
- key: `${c.key}-dropdown-item`,
254
- "aria-current": c.active ? "page" : void 0,
255
- "data-testid": c.dataTestId ? c.dataTestId : `page-layout-tab-${c.key}`,
256
- item: {
257
- label: c.label,
258
- value: c.key,
259
- to: c.to
260
- },
261
- selected: c.active
262
- }, {
263
- default: I(() => [
264
- R(p.$slots, `tab-${c.key}`, { tab: c }, () => [
265
- oe(x(c.label), 1)
266
- ], !0)
267
- ]),
268
- _: 2
269
- }, 1032, ["aria-current", "data-testid", "item", "selected"]))), 128))
270
- ]),
271
- default: I(() => [
272
- $("button", {
273
- "aria-label": m(l)("tabs.more_button.aria_label"),
274
- class: j(["tab-link", { active: g.value.find((c) => c.active) }]),
275
- "data-testid": "tabs-overflow-dropdown-button"
276
- }, [
277
- oe(x(m(l)("tabs.more_button.label")) + " ", 1),
278
- z(m(We), {
279
- decorative: "",
280
- size: `var(--kui-icon-size-30, ${m(ne)})`
281
- }, null, 8, ["size"])
282
- ], 10, Rt)
283
- ]),
284
- _: 3
285
- })
286
- ])) : k("", !0)
287
- ], 2),
288
- y.value ? k("", !0) : (r(), f("div", Lt, [
289
- (r(), f(Z, null, G(3, (c) => z(se, {
290
- key: `layout-loader-${c}`,
291
- height: "1",
292
- width: "5"
293
- })), 64))
294
- ]))
295
- ], 512);
296
- };
297
- }
298
- }), Te = (e, l) => {
299
- const a = e.__vccOpts || e;
300
- for (const [o, u] of l)
301
- a[o] = u;
302
- return a;
303
- }, Dt = /* @__PURE__ */ Te(Nt, [["__scopeId", "data-v-02891bc1"]]), Bt = ["aria-label", "data-fit"], Pt = {
304
- key: 0,
305
- "aria-hidden": "true",
306
- class: "anchor-ellipsis",
307
- "data-testid": "anchor-navigation-leading-ellipsis"
308
- }, Kt = ["aria-current", "data-testid", "title", "onClick"], Ot = {
309
- key: 1,
310
- "aria-hidden": "true",
311
- class: "anchor-ellipsis",
312
- "data-testid": "anchor-navigation-trailing-ellipsis"
313
- }, xt = { key: 2 }, Be = 140, Pe = 22, Ee = 16, ce = "data-anchor-attention", zt = 1200, Ft = 1600, Ht = /* @__PURE__ */ ke({
314
- __name: "PageLayoutAnchorNavigation",
315
- props: {
316
- anchors: { default: () => [] }
317
- },
318
- setup(e) {
319
- const { i18n: { t: l } } = Se.useI18n(), a = he("page-layout-anchor-navigation"), o = he("page-layout-anchor-navigation-list"), u = W("all"), v = W(""), d = W([]), n = w(() => e.anchors.filter((t) => d.value.includes(t.id))), y = w(() => {
320
- const t = n.value.findIndex((s) => s.id === v.value);
321
- return t === -1 ? 0 : t;
322
- }), A = w(() => {
323
- const t = n.value, s = t.length, T = y.value;
324
- if (u.value === "all")
325
- return { anchors: t, hasLeadingEllipsis: !1, hasTrailingEllipsis: !1, hasOverflowDropdown: !1 };
326
- if (u.value === "hidden")
327
- return { anchors: [], hasLeadingEllipsis: !1, hasTrailingEllipsis: !1, hasOverflowDropdown: !1 };
328
- if (u.value === "active-only")
329
- return { anchors: t.slice(T, T + 1), hasLeadingEllipsis: !1, hasTrailingEllipsis: !1, hasOverflowDropdown: !0 };
330
- const C = u.value === "window-3" ? 3 : 2;
331
- if (s <= C)
332
- return { anchors: t, hasLeadingEllipsis: !1, hasTrailingEllipsis: !1, hasOverflowDropdown: !0 };
333
- const K = T < C ? 0 : T >= s - C ? s - C : T - 1;
334
- return {
335
- anchors: t.slice(K, K + C),
336
- hasLeadingEllipsis: K > 0,
337
- hasTrailingEllipsis: K + C < s,
338
- hasOverflowDropdown: !0
339
- };
340
- }), g = (t) => t.dataTestId ?? `page-layout-anchor-${t.id.replace(/[^\w-]+/g, "-").replace(/^-+|-+$/g, "")}`, i = W(null), h = () => {
341
- let t = a.value?.parentElement ?? null;
342
- for (; t; ) {
343
- const { overflowY: s } = getComputedStyle(t);
344
- if (s === "auto" || s === "scroll" || s === "overlay")
345
- return t;
346
- t = t.parentElement;
347
- }
348
- return null;
349
- }, b = (t) => {
350
- if (t.element)
351
- return t.element.isConnected ? t.element : null;
352
- const s = i.value ?? document;
353
- try {
354
- return s.querySelector(t.id) ?? s.querySelector(`#${CSS.escape(t.id)}`);
355
- } catch {
356
- return null;
357
- }
358
- }, p = () => (a.value?.closest(".page-layout-header")?.getBoundingClientRect().height ?? 0) + parseInt(Re, 10), S = parseInt(ne, 10), P = parseInt(gt, 10), J = (t) => t * Be + 2 * S + Pe + (t + 2) * P + Ee, se = () => Be + Pe + P + Ee;
359
- let c = 0;
360
- const F = async () => {
361
- if (!n.value.length) {
362
- u.value = "hidden";
363
- return;
364
- }
365
- const t = ++c;
366
- if (u.value = "all", await be(), t !== c || !a.value || !o.value)
367
- return;
368
- const s = a.value.getBoundingClientRect().width, T = o.value.getBoundingClientRect().width;
369
- s <= 0 || T <= 0 || T + Ee <= s || (J(3) <= s ? u.value = "window-3" : J(2) <= s ? u.value = "window-2" : se() <= s ? u.value = "active-only" : u.value = "hidden");
370
- };
371
- let M = null;
372
- Le(a, () => {
373
- M && clearTimeout(M), M = setTimeout(() => {
374
- q(), F();
375
- }, 150);
376
- });
377
- let Q = null, V = null, H = 0, le = 0, Y = null, re = null;
378
- const pe = (t) => {
379
- const s = String(++H);
380
- N(), re = t, t.removeAttribute(ce), le = requestAnimationFrame(() => {
381
- t.setAttribute(ce, s), Y = setTimeout(() => {
382
- t.getAttribute(ce) === s && t.removeAttribute(ce);
383
- }, zt);
384
- });
385
- }, N = () => {
386
- cancelAnimationFrame(le), Y && (clearTimeout(Y), Y = null), re?.removeAttribute(ce), re = null;
387
- }, U = () => i.value ?? window, _e = /* @__PURE__ */ new Set(["ArrowUp", "ArrowDown", "PageUp", "PageDown", "Home", "End", " "]), L = (t) => {
388
- if (t instanceof KeyboardEvent && !_e.has(t.key))
389
- return;
390
- t && t.type !== "scrollend" && H++, Q = null, V && (clearTimeout(V), V = null);
391
- const s = U();
392
- s.removeEventListener("scrollend", L), s.removeEventListener("wheel", L), s.removeEventListener("touchstart", L), s.removeEventListener("keydown", L);
393
- }, $e = (t) => {
394
- L(), Q = t;
395
- const s = U();
396
- s.addEventListener("scrollend", L, { once: !0 }), s.addEventListener("wheel", L, { passive: !0 }), s.addEventListener("touchstart", L, { passive: !0 }), s.addEventListener("keydown", L, { passive: !0 }), V = setTimeout(L, 1e3);
397
- }, ue = () => {
398
- const t = i.value;
399
- return {
400
- top: t ? t.getBoundingClientRect().top : 0,
401
- scrollTop: t ? t.scrollTop : window.scrollY,
402
- clientHeight: t ? t.clientHeight : window.innerHeight,
403
- scrollHeight: t ? t.scrollHeight : document.documentElement.scrollHeight
404
- };
405
- }, q = () => {
406
- const { top: t, scrollTop: s, clientHeight: T, scrollHeight: C } = ue(), K = p(), E = [];
407
- let _ = null, X = null;
408
- for (const O of e.anchors) {
409
- const ee = b(O);
410
- ee && (E.push(O.id), X = O.id, _ ??= O.id, ee.getBoundingClientRect().top - t <= (O.offset ?? K) + 8 && (_ = O.id));
411
- }
412
- const ge = E.length !== d.value.length || E.some((O, ee) => O !== d.value[ee]);
413
- return ge && (d.value = E), Q || (X && s > 0 && s + T >= C - 2 && (_ = X), v.value = _ ?? ""), ge;
414
- };
415
- let Ce = !1;
416
- const Ne = () => {
417
- Ce || (Ce = !0, requestAnimationFrame(() => {
418
- Ce = !1, q() && F();
419
- }));
420
- }, Ve = (t) => {
421
- const s = U();
422
- let T = !1;
423
- const C = () => {
424
- T || (T = !0, s.removeEventListener("scrollend", C), t());
425
- };
426
- s.addEventListener("scrollend", C, { once: !0 }), window.setTimeout(C, Ft);
427
- }, De = (t) => {
428
- const s = b(t);
429
- if (!s)
430
- return;
431
- v.value = t.id, $e(t.id);
432
- const T = t.offset ?? p(), { scrollTop: C, clientHeight: K, scrollHeight: E } = ue(), _ = i.value, X = _ ? s.getBoundingClientRect().top - _.getBoundingClientRect().top + _.scrollTop - T : s.getBoundingClientRect().top + window.scrollY - T, ge = Math.min(Math.max(X, 0), Math.max(E - K, 0)), O = Math.abs(ge - C) >= 2, ee = ++H;
433
- if ((_ ?? window).scrollTo({ behavior: "smooth", top: X }), !O) {
434
- pe(s);
435
- return;
436
- }
437
- Ve(() => {
438
- ee === H && pe(s);
439
- });
440
- }, Ue = (t, s) => {
441
- s(), De(t);
442
- };
443
- return we(() => {
444
- i.value = h(), U().addEventListener("scroll", Ne, { passive: !0 }), q(), F(), requestAnimationFrame(() => {
445
- q(), F();
446
- });
447
- }), xe(() => {
448
- U().removeEventListener("scroll", Ne), L(), H++, N(), M && clearTimeout(M);
449
- }), fe(() => e.anchors, () => {
450
- e.anchors.some((t) => t.id === v.value) || (v.value = ""), q(), F();
451
- }, { deep: !0 }), (t, s) => {
452
- const T = B("KButton"), C = B("KDropdownItem"), K = B("KDropdown");
453
- return r(), f("nav", {
454
- ref: "page-layout-anchor-navigation",
455
- "aria-label": m(l)("anchor_navigation.aria_label"),
456
- class: "page-layout-anchor-navigation",
457
- "data-fit": u.value,
458
- "data-testid": "page-layout-anchor-navigation"
459
- }, [
460
- $("ul", {
461
- ref: "page-layout-anchor-navigation-list",
462
- class: j({ "layout-hidden": u.value === "hidden" })
463
- }, [
464
- A.value.hasLeadingEllipsis ? (r(), f("li", Pt, " … ")) : k("", !0),
465
- (r(!0), f(Z, null, G(A.value.anchors, (E) => (r(), f("li", {
466
- key: `${E.id}-anchor`
467
- }, [
468
- $("button", {
469
- "aria-current": E.id === v.value ? "location" : void 0,
470
- class: j(["anchor-link", { active: E.id === v.value }]),
471
- "data-testid": g(E),
472
- title: E.label,
473
- type: "button",
474
- onClick: (_) => De(E)
475
- }, x(E.label), 11, Kt)
476
- ]))), 128)),
477
- A.value.hasTrailingEllipsis ? (r(), f("li", Ot, " … ")) : k("", !0),
478
- A.value.hasOverflowDropdown ? (r(), f("li", xt, [
479
- z(K, { "kpop-attributes": {
480
- placement: "bottom-end",
481
- popoverElementAttributes: { "data-testid": "anchor-navigation-overflow-dropdown-popover" }
482
- } }, {
483
- items: I(({ closeDropdown: E }) => [
484
- (r(!0), f(Z, null, G(n.value, (_) => (r(), D(C, {
485
- key: `${_.id}-dropdown-item`,
486
- "aria-current": _.id === v.value ? "location" : void 0,
487
- "data-testid": g(_),
488
- selected: _.id === v.value,
489
- onClick: (X) => Ue(_, E)
490
- }, {
491
- default: I(() => [
492
- oe(x(_.label), 1)
493
- ]),
494
- _: 2
495
- }, 1032, ["aria-current", "data-testid", "selected", "onClick"]))), 128))
496
- ]),
497
- default: I(() => [
498
- z(T, {
499
- appearance: "tertiary",
500
- "aria-label": m(l)("anchor_navigation.more_button.aria_label"),
501
- class: "anchor-overflow-button",
502
- "data-testid": "anchor-navigation-overflow-dropdown-button",
503
- icon: "",
504
- size: "small"
505
- }, {
506
- default: I(() => [
507
- z(m(We), {
508
- decorative: "",
509
- size: `var(--kui-icon-size-30, ${m(ne)})`
510
- }, null, 8, ["size"])
511
- ]),
512
- _: 1
513
- }, 8, ["aria-label"])
514
- ]),
515
- _: 1
516
- })
517
- ])) : k("", !0)
518
- ], 2)
519
- ], 8, Bt);
520
- };
521
- }
522
- }), Wt = /* @__PURE__ */ Te(Ht, [["__scopeId", "data-v-f6d370c5"]]), Ke = /* @__PURE__ */ Symbol("nested-page-layout-detection"), Mt = "page-layout:new-appearance", Vt = { class: "page-header-container" }, Ut = {
523
- key: 0,
524
- class: "page-header-start"
525
- }, jt = { class: "title-container" }, Gt = {
526
- key: 1,
527
- class: "page-layout-title-wrapper"
528
- }, Yt = {
529
- class: "page-layout-title",
530
- "data-testid": "page-layout-title"
531
- }, qt = ["aria-label"], Xt = {
532
- key: 3,
533
- class: "title-after-container"
534
- }, Zt = { class: "page-header-actions-container" }, Jt = {
535
- key: 0,
536
- class: "page-layout-aside-container",
537
- "data-testid": "page-layout-aside"
538
- }, Qt = { class: "page-layout-content" }, ea = /* @__PURE__ */ ke({
539
- __name: "PageLayout",
540
- props: {
541
- breadcrumbs: { default: () => [] },
542
- title: {},
543
- backTo: {},
544
- tabs: { default: () => [] },
545
- anchors: { default: () => [] },
546
- pageShortcutData: {}
547
- },
548
- setup(e) {
549
- qe((N) => ({
550
- a3279be2: se.value
551
- }));
552
- const l = de("app:navigateTo", null), a = de(Mt, null), o = de("app:pageShortcutsContext", null), { i18n: { t: u } } = Se.useI18n(), v = He(), d = tt(), n = Xe(), y = () => !!e.title || !!n.title, A = w(() => !!(e.breadcrumbs && e.breadcrumbs.length)), g = w(() => !!(e.tabs && e.tabs.length)), i = w(() => typeof e.backTo == "string"), h = w(() => ve(a) === !0), b = () => h.value && !y() && !A.value, p = () => g.value && !b(), S = w(() => h.value && !g.value && !!(e.anchors && e.anchors.length)), P = he("page-layout-header"), { height: J } = It(P, void 0, { box: "border-box" }), se = w(() => `calc(${J.value}px + var(--kui-space-60, ${Re}))`), c = w(() => !!e.pageShortcutData && !!e.pageShortcutData.entityType && !!e.pageShortcutData.label), F = w(() => c.value && !!o && "onFavoriteToggle" in o && typeof o.onFavoriteToggle == "function"), M = W(0), ie = w(() => !!o && "isFavorite" in o && typeof o.isFavorite == "function" && o.isFavorite(e.pageShortcutData) === !0), Q = async () => {
553
- if (e.backTo) {
554
- if (typeof e.backTo == "object") {
555
- v.push(e.backTo);
556
- return;
557
- }
558
- if (typeof l != "function") {
559
- window.location.href = e.backTo;
560
- return;
561
- }
562
- await l(e.backTo);
563
- }
564
- }, V = W(0), H = w(() => V.value > 0);
565
- Ze(Ke, () => (V.value++, () => {
566
- V.value--;
567
- }));
568
- const le = de(Ke, null), Y = W(null);
569
- typeof le == "function" && (Y.value = le());
570
- const re = () => {
571
- o.onFavoriteToggle({ ...e.pageShortcutData, path: e.pageShortcutData?.path || d.fullPath });
572
- };
573
- Je(() => {
574
- Y.value?.();
575
- });
576
- const pe = _t(() => {
577
- !H.value && c.value && o && "onEntityPageVisit" in o && typeof o.onEntityPageVisit == "function" && (o.onEntityPageVisit({ ...e.pageShortcutData, path: e.pageShortcutData?.path || d?.fullPath }), M.value++);
578
- }, 500);
579
- return fe([() => e.pageShortcutData, () => d?.fullPath], () => {
580
- pe();
581
- }, { immediate: !0, deep: !0 }), (N, U) => {
582
- const _e = B("KBreadcrumbs"), L = B("KTooltip"), $e = B("router-view");
583
- return r(), f("div", {
584
- class: j(["kong-ui-public-page-layout", { "new-appearance": h.value }]),
585
- "data-testid": "kong-ui-public-page-layout"
586
- }, [
587
- H.value ? k("", !0) : (r(), f("div", {
588
- key: 0,
589
- ref: "page-layout-header",
590
- class: j(["page-layout-header", { "is-empty": b() }]),
591
- "data-testid": "page-layout-header"
592
- }, [
593
- $("div", Vt, [
594
- b() ? k("", !0) : (r(), f("div", Ut, [
595
- A.value ? (r(), D(_e, {
596
- key: 0,
597
- class: "header-breadcrumbs",
598
- "data-testid": "page-layout-breadcrumbs",
599
- "item-max-width": "25ch",
600
- items: e.breadcrumbs
601
- }, Ae({ _: 2 }, [
602
- h.value ? {
603
- name: "divider",
604
- fn: I(() => [
605
- z(m(nt), {
606
- decorative: "",
607
- size: `var(--kui-icon-size-30, ${m(ne)})`
608
- }, null, 8, ["size"])
609
- ]),
610
- key: "0"
611
- } : void 0
612
- ]), 1032, ["items"])) : k("", !0),
613
- $("div", jt, [
614
- e.backTo && !h.value ? (r(), D(Ie(i.value ? "a" : "router-link"), ze({ key: 0 }, i.value ? { href: e.backTo } : { to: e.backTo }, {
615
- "aria-label": m(u)("back_button"),
616
- class: "navigate-back",
617
- "data-testid": "page-layout-navigate-back",
618
- tabindex: "0",
619
- onClick: ye(Q, ["prevent"]),
620
- onKeydown: Fe(ye(Q, ["prevent"]), ["enter"])
621
- }), {
622
- default: I(() => [
623
- z(m(st), {
624
- decorative: "",
625
- size: `var(--kui-icon-size-30, ${m(ne)})`
626
- }, null, 8, ["size"])
627
- ]),
628
- _: 1
629
- }, 16, ["aria-label", "onKeydown"])) : k("", !0),
630
- y() ? (r(), f("span", Gt, [
631
- R(N.$slots, "title", {}, () => [
632
- $("h1", Yt, x(e.title), 1)
633
- ], !0)
634
- ])) : k("", !0),
635
- F.value ? (r(), f("div", {
636
- key: M.value,
637
- class: "favorite-button-container"
638
- }, [
639
- z(L, {
640
- placement: "right",
641
- text: ie.value ? m(u)("favorite_button.remove_shortcut") : m(u)("favorite_button.save_shortcut")
642
- }, {
643
- default: I(() => [
644
- $("button", {
645
- "aria-label": ie.value ? m(u)("favorite_button.remove_shortcut") : m(u)("favorite_button.save_shortcut"),
646
- class: j(["favorite-button", { active: ie.value }]),
647
- "data-testid": "page-layout-favorite-button",
648
- type: "button",
649
- onClick: re
650
- }, [
651
- (r(), D(Ie(ie.value ? m(it) : m(lt)), {
652
- decorative: "",
653
- size: `var(--kui-icon-size-30, ${m(ne)})`
654
- }, null, 8, ["size"]))
655
- ], 10, qt)
656
- ]),
657
- _: 1
658
- }, 8, ["text"])
659
- ])) : k("", !0),
660
- N.$slots["title-after"] && y() ? (r(), f("div", Xt, [
661
- R(N.$slots, "title-after", {}, void 0, !0)
662
- ])) : k("", !0)
663
- ])
664
- ])),
665
- S.value && !b() ? (r(), D(Wt, {
666
- key: 1,
667
- anchors: e.anchors
668
- }, null, 8, ["anchors"])) : k("", !0),
669
- $("div", Zt, [
670
- R(N.$slots, "actions", {}, void 0, !0),
671
- U[0] || (U[0] = $("div", { "data-teleport-target": "ask-kai" }, null, -1))
672
- ])
673
- ]),
674
- p() ? (r(), D(Dt, {
675
- key: 0,
676
- tabs: e.tabs
677
- }, Ae({ _: 2 }, [
678
- G(e.tabs, (ue) => ({
679
- name: `tab-${ue.key}`,
680
- fn: I((q) => [
681
- R(N.$slots, `tab-${ue.key}`, Qe(et(q)), void 0, !0)
682
- ])
683
- }))
684
- ]), 1032, ["tabs"])) : k("", !0)
685
- ], 2)),
686
- $("div", {
687
- class: j(["page-layout-content-container", { "has-nested-page-layout": H.value }])
688
- }, [
689
- h.value && N.$slots.aside ? (r(), f("div", Jt, [
690
- R(N.$slots, "aside", {}, void 0, !0)
691
- ])) : k("", !0),
692
- $("div", Qt, [
693
- p() ? (r(), D($e, { key: 0 })) : R(N.$slots, "default", {}, void 0, !0, 1)
694
- ])
695
- ], 2)
696
- ], 2);
697
- };
698
- }
699
- }), ga = /* @__PURE__ */ Te(ea, [["__scopeId", "data-v-fa3bd24a"]]), ta = {
700
- key: 0,
701
- class: "about-card-description",
702
- "data-testid": "about-card-description"
703
- }, aa = {
704
- key: 1,
705
- class: "about-card-skeleton",
706
- "data-testid": "about-card-skeleton"
707
- }, oa = {
708
- key: 2,
709
- class: "about-card-rows",
710
- "data-testid": "about-card-rows"
711
- }, na = ["data-testid"], sa = { class: "about-card-row-label" }, ia = { class: "about-card-row-text" }, la = ["aria-label", "data-testid"], ra = { class: "about-card-row-value" }, ua = { class: "about-card-row-text" }, ca = {
712
- key: 3,
713
- class: "about-card-content",
714
- "data-testid": "about-card-content"
715
- }, da = /* @__PURE__ */ ke({
716
- __name: "AboutCard",
717
- props: {
718
- title: { default: "" },
719
- titleTag: { default: "h2" },
720
- description: { default: "" },
721
- rows: { default: () => [] },
722
- isLoading: { type: Boolean, default: !1 }
723
- },
724
- setup(e) {
725
- const l = w(() => e.rows.length || 4);
726
- return (a, o) => {
727
- const u = B("KSkeletonBox"), v = B("KTooltip"), d = B("KCard");
728
- return r(), D(d, {
729
- class: "kong-ui-public-about-card",
730
- title: e.title,
731
- "title-tag": e.titleTag
732
- }, Ae({
733
- default: I(() => [
734
- a.$slots.description || e.description ? (r(), f("p", ta, [
735
- R(a.$slots, "description", {}, () => [
736
- oe(x(e.description), 1)
737
- ], !0)
738
- ])) : k("", !0),
739
- e.isLoading ? (r(), f("div", aa, [
740
- (r(!0), f(Z, null, G(l.value, (n) => (r(), D(u, {
741
- key: n,
742
- height: "2",
743
- width: "100"
744
- }))), 128))
745
- ])) : e.rows.length ? (r(), f("dl", oa, [
746
- (r(!0), f(Z, null, G(e.rows, (n) => (r(), f("div", {
747
- key: n.key,
748
- class: "about-card-row",
749
- "data-testid": `about-card-row-${n.key}`
750
- }, [
751
- $("dt", sa, [
752
- R(a.$slots, `label-${n.key}`, { row: n }, () => [
753
- $("span", ia, x(n.label), 1)
754
- ], !0),
755
- n.tooltip ? (r(), D(v, {
756
- key: 0,
757
- text: n.tooltip
758
- }, {
759
- default: I(() => [
760
- $("button", {
761
- "aria-label": n.tooltip,
762
- class: "about-card-row-tooltip-trigger",
763
- "data-testid": `about-card-row-${n.key}-tooltip`,
764
- type: "button"
765
- }, [
766
- z(m(rt), {
767
- size: `var(--kui-icon-size-20, ${m(pt)})`
768
- }, null, 8, ["size"])
769
- ], 8, la)
770
- ]),
771
- _: 2
772
- }, 1032, ["text"])) : k("", !0)
773
- ]),
774
- $("dd", ra, [
775
- R(a.$slots, `row-${n.key}`, { row: n }, () => [
776
- $("span", ua, x(n.value), 1)
777
- ], !0)
778
- ])
779
- ], 8, na))), 128))
780
- ])) : k("", !0),
781
- a.$slots.default ? (r(), f("div", ca, [
782
- R(a.$slots, "default", {}, void 0, !0)
783
- ])) : k("", !0)
784
- ]),
785
- _: 2
786
- }, [
787
- a.$slots.title || e.title ? {
788
- name: "title",
789
- fn: I(() => [
790
- R(a.$slots, "title", {}, () => [
791
- oe(x(e.title), 1)
792
- ], !0)
793
- ]),
794
- key: "0"
795
- } : void 0,
796
- a.$slots.actions ? {
797
- name: "actions",
798
- fn: I(() => [
799
- R(a.$slots, "actions", {}, void 0, !0)
800
- ]),
801
- key: "1"
802
- } : void 0
803
- ]), 1032, ["title", "title-tag"]);
804
- };
805
- }
806
- }), ba = /* @__PURE__ */ Te(da, [["__scopeId", "data-v-48c05270"]]);
807
- export {
808
- ba as AboutCard,
809
- Mt as NEW_APPEARANCE_INJECTION_KEY,
810
- ga as PageLayout
811
- };
@@ -1 +0,0 @@
1
- (function(_,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong/icons")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router","@kong-ui-public/i18n","@kong/icons"],e):(_=typeof globalThis<"u"?globalThis:_||self,e(_["kong-ui-public-page-layout"]={},_.Vue,_.VueRouter,_["kong-ui-public-i18n"],_.KongIcons))})(this,(function(_,e,ee,se,x){"use strict";const ge={back_button:"Go back",favorite_button:{save_shortcut:"Save page to shortcuts",remove_shortcut:"Remove page from shortcuts"},tabs:{more_button:{label:"More",aria_label:"More tabs"}},anchor_navigation:{aria_label:"Page sections",more_button:{aria_label:"More page sections"}}};function be(){const t=se.createI18n("en-us",ge);return{i18n:t,i18nT:se.i18nTComponent(t)}}const te={useI18n:be},ke="12px",z="16px",ye="2px",oe="16px";function we(t,s){return e.getCurrentScope()?(e.onScopeDispose(t,s),!0):!1}const Ce=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const F=()=>{};function Be(t,s){function n(...a){return new Promise((c,p)=>{Promise.resolve(t(()=>s.apply(this,a),{fn:s,thisArg:this,args:a})).then(c).catch(p)})}return"cancel"in t&&Object.assign(n,{cancel:t.cancel,flush:t.flush,isPending:t.isPending}),n}function Te(t,s={}){let n,a,c=F,p=F;const u=e.shallowRef(!1),l=h=>{clearTimeout(h),c(),c=F};let b;return Object.assign(h=>{const r=e.toValue(t),m=e.toValue(s.maxWait);return n&&l(n),r<=0||m!==void 0&&m<=0?(a&&(l(a),a=void 0),u.value=!1,Promise.resolve(h())):(u.value=!0,new Promise((g,f)=>{c=s.rejectOnCancel?f:g,p=g,b=h,m&&!a&&(a=setTimeout(()=>{n&&l(n),a=void 0,u.value=!1,g(b())},m)),n=setTimeout(()=>{a&&l(a),a=void 0,u.value=!1,g(h())},r)}))},{cancel:()=>{n&&(l(n),n=void 0),a&&(l(a),a=void 0),u.value=!1,p=F},flush:()=>{if(u.value){n&&(clearTimeout(n),n=void 0),a&&(clearTimeout(a),a=void 0),u.value=!1;const h=p;c=F,p=F,h(b())}},isPending:e.shallowReadonly(u)})}function Ee(t){return Array.isArray(t)?t:[t]}function _e(t){return e.getCurrentInstance()}function Ne(t,s=200,n={}){return Be(Te(s,n),t)}function Se(t,s=!0,n){_e()?e.onMounted(t,n):s?t():e.nextTick(t)}const ce=Ce?window:void 0;function H(t){var s;const n=e.toValue(t);return(s=n?.$el)!==null&&s!==void 0?s:n}function $e(){const t=e.shallowRef(!1),s=e.getCurrentInstance();return s&&e.onMounted(()=>{t.value=!0},s),t}function Ie(t){const s=$e();return e.computed(()=>(s.value,!!t()))}function ne(t,s,n={}){const{window:a=ce,...c}=n;let p;const u=Ie(()=>a&&"ResizeObserver"in a),l=()=>{p&&(p.disconnect(),p=void 0)},b=e.watch(e.computed(()=>{const h=e.toValue(t);return Array.isArray(h)?h.map(r=>H(r)):[H(h)]}),h=>{if(l(),u.value&&a){p=new ResizeObserver(s);for(const r of h)r&&p.observe(r,c)}},{immediate:!0,flush:"post"}),B=()=>{l(),b()};return we(B),{isSupported:u,stop:B}}function Ae(t,s={width:0,height:0},n={}){const{window:a=ce,box:c="content-box"}=n,p=e.computed(()=>{var r;return(r=H(t))===null||r===void 0||(r=r.namespaceURI)===null||r===void 0?void 0:r.includes("svg")}),u=e.shallowRef(s.width),l=e.shallowRef(s.height),{stop:b}=ne(t,([r])=>{const m=c==="border-box"?r.borderBoxSize:c==="content-box"?r.contentBoxSize:r.devicePixelContentBoxSize;if(a&&p.value){const g=H(t);if(g){const f=g.getBoundingClientRect();u.value=f.width,l.value=f.height}}else if(m){const g=Ee(m);u.value=g.reduce((f,{inlineSize:T})=>f+T,0),l.value=g.reduce((f,{blockSize:T})=>f+T,0)}else u.value=r.contentRect.width,l.value=r.contentRect.height},n);Se(()=>{const r=H(t);if(r&&"offsetWidth"in r)if(c==="content-box"&&a){const m=a.getComputedStyle(r),g=Number.parseFloat(m.paddingLeft)+Number.parseFloat(m.paddingRight),f=Number.parseFloat(m.paddingTop)+Number.parseFloat(m.paddingBottom),T=Number.parseFloat(m.borderLeftWidth)+Number.parseFloat(m.borderRightWidth),S=Number.parseFloat(m.borderTopWidth)+Number.parseFloat(m.borderBottomWidth);u.value=r.offsetWidth-g-T,l.value=r.offsetHeight-f-S}else u.value=r.offsetWidth,l.value=r.offsetHeight;else r&&(u.value=s.width,l.value=s.height)});const B=e.watch(()=>H(t),r=>{u.value=r?s.width:0,l.value=r?s.height:0});function h(){b(),B()}return{width:u,height:l,stop:h}}const Ve={ref:"page-layout-tabs",class:"page-layout-tabs","data-testid":"page-layout-tabs"},Re={key:0},Le=["aria-label"],De={key:0,class:"layout-loader-container"},xe=e.defineComponent({__name:"PageLayoutTabs",props:{tabs:{default:()=>[]}},setup(t){const{i18n:{t:s}}=te.useI18n(),n=ee.useRouter(),a=e.inject("app:navigateTo",null),c=f=>{if(typeof f.to!="string"){n.push(f.to);return}if(typeof a!="function"){window.location.href=f.to;return}a(f.to)},p=e.useTemplateRef("page-layout-tabs"),u=e.useTemplateRef("page-layout-tabs-list"),l=e.ref(t.tabs.length),b=e.ref(!1),B=e.computed(()=>t.tabs.slice(0,l.value)),h=e.computed(()=>t.tabs.slice(l.value)),r=async()=>{if(!p.value||!u.value)return;b.value=!1,l.value=t.tabs.length,await e.nextTick();const f=p.value?.getBoundingClientRect().width-parseInt(oe)*2;let T=u.value?.getBoundingClientRect().width;if(!f||!T){b.value=!0;return}const S=50;for(;T+S>f&&l.value>1;)l.value--,await e.nextTick(),T=u.value?.getBoundingClientRect().width||0;b.value=!0};let m=null;const g=()=>{m&&clearTimeout(m),m=setTimeout(()=>{r()},150)};return e.onMounted(()=>{r(),ne(p,g)}),e.onBeforeUnmount(()=>{m&&clearTimeout(m)}),e.watch(()=>t.tabs,()=>{r()},{deep:!0}),(f,T)=>{const S=e.resolveComponent("KDropdownItem"),M=e.resolveComponent("KDropdown"),U=e.resolveComponent("KSkeletonBox");return e.openBlock(),e.createElementBlock("nav",Ve,[e.createElementVNode("ul",{ref:"page-layout-tabs-list",class:e.normalizeClass({"layout-computing":!b.value})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,d=>(e.openBlock(),e.createElementBlock("li",{key:`${d.key}-tab`},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(typeof d.to=="string"?"a":"router-link"),e.mergeProps({ref_for:!0},typeof d.to=="string"?{href:d.to}:{to:d.to},{"aria-current":d.active?"page":void 0,class:["tab-link",{active:d.active}],"data-testid":d.dataTestId?d.dataTestId:`page-layout-tab-${d.key}`,tabindex:"0",onClick:e.withModifiers(A=>c(d),["prevent"]),onKeydown:e.withKeys(e.withModifiers(A=>c(d),["prevent"]),["enter"])}),{default:e.withCtx(()=>[e.renderSlot(f.$slots,`tab-${d.key}`,{tab:d},()=>[e.createTextVNode(e.toDisplayString(d.label),1)],!0)]),_:2},1040,["aria-current","class","data-testid","onClick","onKeydown"]))]))),128)),t.tabs.length>l.value?(e.openBlock(),e.createElementBlock("li",Re,[e.createVNode(M,{"kpop-attributes":{placement:"bottom-end",popoverElementAttributes:{"data-testid":"tabs-overflow-dropdown-popover"}}},{items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,d=>(e.openBlock(),e.createBlock(S,{key:`${d.key}-dropdown-item`,"aria-current":d.active?"page":void 0,"data-testid":d.dataTestId?d.dataTestId:`page-layout-tab-${d.key}`,item:{label:d.label,value:d.key,to:d.to},selected:d.active},{default:e.withCtx(()=>[e.renderSlot(f.$slots,`tab-${d.key}`,{tab:d},()=>[e.createTextVNode(e.toDisplayString(d.label),1)],!0)]),_:2},1032,["aria-current","data-testid","item","selected"]))),128))]),default:e.withCtx(()=>[e.createElementVNode("button",{"aria-label":e.unref(s)("tabs.more_button.aria_label"),class:e.normalizeClass(["tab-link",{active:h.value.find(d=>d.active)}]),"data-testid":"tabs-overflow-dropdown-button"},[e.createTextVNode(e.toDisplayString(e.unref(s)("tabs.more_button.label"))+" ",1),e.createVNode(e.unref(x.ChevronDownIcon),{decorative:"",size:`var(--kui-icon-size-30, ${e.unref(z)})`},null,8,["size"])],10,Le)]),_:3})])):e.createCommentVNode("",!0)],2),b.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",De,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(3,d=>e.createVNode(U,{key:`layout-loader-${d}`,height:"1",width:"5"})),64))]))],512)}}}),J=(t,s)=>{const n=t.__vccOpts||t;for(const[a,c]of s)n[a]=c;return n},Pe=J(xe,[["__scopeId","data-v-02891bc1"]]),Ke=["aria-label","data-fit"],Oe={key:0,"aria-hidden":"true",class:"anchor-ellipsis","data-testid":"anchor-navigation-leading-ellipsis"},ze=["aria-current","data-testid","title","onClick"],Fe={key:1,"aria-hidden":"true",class:"anchor-ellipsis","data-testid":"anchor-navigation-trailing-ellipsis"},He={key:2},de=140,ue=22,ae=16,j="data-anchor-attention",Me=1200,ve=1600,We=J(e.defineComponent({__name:"PageLayoutAnchorNavigation",props:{anchors:{default:()=>[]}},setup(t){const{i18n:{t:s}}=te.useI18n(),n=e.useTemplateRef("page-layout-anchor-navigation"),a=e.useTemplateRef("page-layout-anchor-navigation-list"),c=e.ref("all"),p=e.ref(""),u=e.ref([]),l=e.computed(()=>t.anchors.filter(o=>u.value.includes(o.id))),b=e.computed(()=>{const o=l.value.findIndex(i=>i.id===p.value);return o===-1?0:o}),B=e.computed(()=>{const o=l.value,i=o.length,k=b.value;if(c.value==="all")return{anchors:o,hasLeadingEllipsis:!1,hasTrailingEllipsis:!1,hasOverflowDropdown:!1};if(c.value==="hidden")return{anchors:[],hasLeadingEllipsis:!1,hasTrailingEllipsis:!1,hasOverflowDropdown:!1};if(c.value==="active-only")return{anchors:o.slice(k,k+1),hasLeadingEllipsis:!1,hasTrailingEllipsis:!1,hasOverflowDropdown:!0};const w=c.value==="window-3"?3:2;if(i<=w)return{anchors:o,hasLeadingEllipsis:!1,hasTrailingEllipsis:!1,hasOverflowDropdown:!0};const $=k<w?0:k>=i-w?i-w:k-1;return{anchors:o.slice($,$+w),hasLeadingEllipsis:$>0,hasTrailingEllipsis:$+w<i,hasOverflowDropdown:!0}}),h=o=>o.dataTestId??`page-layout-anchor-${o.id.replace(/[^\w-]+/g,"-").replace(/^-+|-+$/g,"")}`,r=e.ref(null),m=()=>{let o=n.value?.parentElement??null;for(;o;){const{overflowY:i}=getComputedStyle(o);if(i==="auto"||i==="scroll"||i==="overlay")return o;o=o.parentElement}return null},g=o=>{if(o.element)return o.element.isConnected?o.element:null;const i=r.value??document;try{return i.querySelector(o.id)??i.querySelector(`#${CSS.escape(o.id)}`)}catch{return null}},f=()=>(n.value?.closest(".page-layout-header")?.getBoundingClientRect().height??0)+parseInt(oe,10),T=parseInt(z,10),S=parseInt(ye,10),M=o=>o*de+2*T+ue+(o+2)*S+ae,U=()=>de+ue+S+ae;let d=0;const A=async()=>{if(!l.value.length){c.value="hidden";return}const o=++d;if(c.value="all",await e.nextTick(),o!==d||!n.value||!a.value)return;const i=n.value.getBoundingClientRect().width,k=a.value.getBoundingClientRect().width;i<=0||k<=0||k+ae<=i||(M(3)<=i?c.value="window-3":M(2)<=i?c.value="window-2":U()<=i?c.value="active-only":c.value="hidden")};let R=null;ne(n,()=>{R&&clearTimeout(R),R=setTimeout(()=>{K(),A()},150)});let v=null,L=null,V=0,G=0,P=null,Y=null;const Z=o=>{const i=String(++V);N(),Y=o,o.removeAttribute(j),G=requestAnimationFrame(()=>{o.setAttribute(j,i),P=setTimeout(()=>{o.getAttribute(j)===i&&o.removeAttribute(j)},Me)})},N=()=>{cancelAnimationFrame(G),P&&(clearTimeout(P),P=null),Y?.removeAttribute(j),Y=null},D=()=>r.value??window,le=new Set(["ArrowUp","ArrowDown","PageUp","PageDown","Home","End"," "]),E=o=>{if(o instanceof KeyboardEvent&&!le.has(o.key))return;o&&o.type!=="scrollend"&&V++,v=null,L&&(clearTimeout(L),L=null);const i=D();i.removeEventListener("scrollend",E),i.removeEventListener("wheel",E),i.removeEventListener("touchstart",E),i.removeEventListener("keydown",E)},ie=o=>{E(),v=o;const i=D();i.addEventListener("scrollend",E,{once:!0}),i.addEventListener("wheel",E,{passive:!0}),i.addEventListener("touchstart",E,{passive:!0}),i.addEventListener("keydown",E,{passive:!0}),L=setTimeout(E,1e3)},X=()=>{const o=r.value;return{top:o?o.getBoundingClientRect().top:0,scrollTop:o?o.scrollTop:window.scrollY,clientHeight:o?o.clientHeight:window.innerHeight,scrollHeight:o?o.scrollHeight:document.documentElement.scrollHeight}},K=()=>{const{top:o,scrollTop:i,clientHeight:k,scrollHeight:w}=X(),$=f(),C=[];let y=null,O=null;for(const I of t.anchors){const W=g(I);W&&(C.push(I.id),O=I.id,y??=I.id,W.getBoundingClientRect().top-o<=(I.offset??$)+8&&(y=I.id))}const Q=C.length!==u.value.length||C.some((I,W)=>I!==u.value[W]);return Q&&(u.value=C),v||(O&&i>0&&i+k>=w-2&&(y=O),p.value=y??""),Q};let re=!1;const fe=()=>{re||(re=!0,requestAnimationFrame(()=>{re=!1,K()&&A()}))},mt=o=>{const i=D();let k=!1;const w=()=>{k||(k=!0,i.removeEventListener("scrollend",w),o())};i.addEventListener("scrollend",w,{once:!0}),window.setTimeout(w,ve)},he=o=>{const i=g(o);if(!i)return;p.value=o.id,ie(o.id);const k=o.offset??f(),{scrollTop:w,clientHeight:$,scrollHeight:C}=X(),y=r.value,O=y?i.getBoundingClientRect().top-y.getBoundingClientRect().top+y.scrollTop-k:i.getBoundingClientRect().top+window.scrollY-k,Q=Math.min(Math.max(O,0),Math.max(C-$,0)),I=Math.abs(Q-w)>=2,W=++V;if((y??window).scrollTo({behavior:"smooth",top:O}),!I){Z(i);return}mt(()=>{W===V&&Z(i)})},ft=(o,i)=>{i(),he(o)};return e.onMounted(()=>{r.value=m(),D().addEventListener("scroll",fe,{passive:!0}),K(),A(),requestAnimationFrame(()=>{K(),A()})}),e.onBeforeUnmount(()=>{D().removeEventListener("scroll",fe),E(),V++,N(),R&&clearTimeout(R)}),e.watch(()=>t.anchors,()=>{t.anchors.some(o=>o.id===p.value)||(p.value=""),K(),A()},{deep:!0}),(o,i)=>{const k=e.resolveComponent("KButton"),w=e.resolveComponent("KDropdownItem"),$=e.resolveComponent("KDropdown");return e.openBlock(),e.createElementBlock("nav",{ref:"page-layout-anchor-navigation","aria-label":e.unref(s)("anchor_navigation.aria_label"),class:"page-layout-anchor-navigation","data-fit":c.value,"data-testid":"page-layout-anchor-navigation"},[e.createElementVNode("ul",{ref:"page-layout-anchor-navigation-list",class:e.normalizeClass({"layout-hidden":c.value==="hidden"})},[B.value.hasLeadingEllipsis?(e.openBlock(),e.createElementBlock("li",Oe," … ")):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value.anchors,C=>(e.openBlock(),e.createElementBlock("li",{key:`${C.id}-anchor`},[e.createElementVNode("button",{"aria-current":C.id===p.value?"location":void 0,class:e.normalizeClass(["anchor-link",{active:C.id===p.value}]),"data-testid":h(C),title:C.label,type:"button",onClick:y=>he(C)},e.toDisplayString(C.label),11,ze)]))),128)),B.value.hasTrailingEllipsis?(e.openBlock(),e.createElementBlock("li",Fe," … ")):e.createCommentVNode("",!0),B.value.hasOverflowDropdown?(e.openBlock(),e.createElementBlock("li",He,[e.createVNode($,{"kpop-attributes":{placement:"bottom-end",popoverElementAttributes:{"data-testid":"anchor-navigation-overflow-dropdown-popover"}}},{items:e.withCtx(({closeDropdown:C})=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,y=>(e.openBlock(),e.createBlock(w,{key:`${y.id}-dropdown-item`,"aria-current":y.id===p.value?"location":void 0,"data-testid":h(y),selected:y.id===p.value,onClick:O=>ft(y,C)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.label),1)]),_:2},1032,["aria-current","data-testid","selected","onClick"]))),128))]),default:e.withCtx(()=>[e.createVNode(k,{appearance:"tertiary","aria-label":e.unref(s)("anchor_navigation.more_button.aria_label"),class:"anchor-overflow-button","data-testid":"anchor-navigation-overflow-dropdown-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(x.ChevronDownIcon),{decorative:"",size:`var(--kui-icon-size-30, ${e.unref(z)})`},null,8,["size"])]),_:1},8,["aria-label"])]),_:1})])):e.createCommentVNode("",!0)],2)],8,Ke)}}}),[["__scopeId","data-v-f6d370c5"]]),pe=Symbol("nested-page-layout-detection"),me="page-layout:new-appearance",je={class:"page-header-container"},Ue={key:0,class:"page-header-start"},qe={class:"title-container"},Ge={key:1,class:"page-layout-title-wrapper"},Ye={class:"page-layout-title","data-testid":"page-layout-title"},Xe=["aria-label"],Je={key:3,class:"title-after-container"},Ze={class:"page-header-actions-container"},Qe={key:0,class:"page-layout-aside-container","data-testid":"page-layout-aside"},et={class:"page-layout-content"},tt=J(e.defineComponent({__name:"PageLayout",props:{breadcrumbs:{default:()=>[]},title:{},backTo:{},tabs:{default:()=>[]},anchors:{default:()=>[]},pageShortcutData:{}},setup(t){e.useCssVars(N=>({a3279be2:U.value}));const s=e.inject("app:navigateTo",null),n=e.inject(me,null),a=e.inject("app:pageShortcutsContext",null),{i18n:{t:c}}=te.useI18n(),p=ee.useRouter(),u=ee.useRoute(),l=e.useSlots(),b=()=>!!t.title||!!l.title,B=e.computed(()=>!!(t.breadcrumbs&&t.breadcrumbs.length)),h=e.computed(()=>!!(t.tabs&&t.tabs.length)),r=e.computed(()=>typeof t.backTo=="string"),m=e.computed(()=>e.toValue(n)===!0),g=()=>m.value&&!b()&&!B.value,f=()=>h.value&&!g(),T=e.computed(()=>m.value&&!h.value&&!!(t.anchors&&t.anchors.length)),S=e.useTemplateRef("page-layout-header"),{height:M}=Ae(S,void 0,{box:"border-box"}),U=e.computed(()=>`calc(${M.value}px + var(--kui-space-60, ${oe}))`),d=e.computed(()=>!!t.pageShortcutData&&!!t.pageShortcutData.entityType&&!!t.pageShortcutData.label),A=e.computed(()=>d.value&&!!a&&"onFavoriteToggle"in a&&typeof a.onFavoriteToggle=="function"),R=e.ref(0),q=e.computed(()=>!!a&&"isFavorite"in a&&typeof a.isFavorite=="function"&&a.isFavorite(t.pageShortcutData)===!0),v=async()=>{if(t.backTo){if(typeof t.backTo=="object"){p.push(t.backTo);return}if(typeof s!="function"){window.location.href=t.backTo;return}await s(t.backTo)}},L=e.ref(0),V=e.computed(()=>L.value>0);e.provide(pe,()=>(L.value++,()=>{L.value--}));const G=e.inject(pe,null),P=e.ref(null);typeof G=="function"&&(P.value=G());const Y=()=>{a.onFavoriteToggle({...t.pageShortcutData,path:t.pageShortcutData?.path||u.fullPath})};e.onUnmounted(()=>{P.value?.()});const Z=Ne(()=>{!V.value&&d.value&&a&&"onEntityPageVisit"in a&&typeof a.onEntityPageVisit=="function"&&(a.onEntityPageVisit({...t.pageShortcutData,path:t.pageShortcutData?.path||u?.fullPath}),R.value++)},500);return e.watch([()=>t.pageShortcutData,()=>u?.fullPath],()=>{Z()},{immediate:!0,deep:!0}),(N,D)=>{const le=e.resolveComponent("KBreadcrumbs"),E=e.resolveComponent("KTooltip"),ie=e.resolveComponent("router-view");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["kong-ui-public-page-layout",{"new-appearance":m.value}]),"data-testid":"kong-ui-public-page-layout"},[V.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,ref:"page-layout-header",class:e.normalizeClass(["page-layout-header",{"is-empty":g()}]),"data-testid":"page-layout-header"},[e.createElementVNode("div",je,[g()?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Ue,[B.value?(e.openBlock(),e.createBlock(le,{key:0,class:"header-breadcrumbs","data-testid":"page-layout-breadcrumbs","item-max-width":"25ch",items:t.breadcrumbs},e.createSlots({_:2},[m.value?{name:"divider",fn:e.withCtx(()=>[e.createVNode(e.unref(x.ChevronRightIcon),{decorative:"",size:`var(--kui-icon-size-30, ${e.unref(z)})`},null,8,["size"])]),key:"0"}:void 0]),1032,["items"])):e.createCommentVNode("",!0),e.createElementVNode("div",qe,[t.backTo&&!m.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value?"a":"router-link"),e.mergeProps({key:0},r.value?{href:t.backTo}:{to:t.backTo},{"aria-label":e.unref(c)("back_button"),class:"navigate-back","data-testid":"page-layout-navigate-back",tabindex:"0",onClick:e.withModifiers(v,["prevent"]),onKeydown:e.withKeys(e.withModifiers(v,["prevent"]),["enter"])}),{default:e.withCtx(()=>[e.createVNode(e.unref(x.ArrowTopLeftIcon),{decorative:"",size:`var(--kui-icon-size-30, ${e.unref(z)})`},null,8,["size"])]),_:1},16,["aria-label","onKeydown"])):e.createCommentVNode("",!0),b()?(e.openBlock(),e.createElementBlock("span",Ge,[e.renderSlot(N.$slots,"title",{},()=>[e.createElementVNode("h1",Ye,e.toDisplayString(t.title),1)],!0)])):e.createCommentVNode("",!0),A.value?(e.openBlock(),e.createElementBlock("div",{key:R.value,class:"favorite-button-container"},[e.createVNode(E,{placement:"right",text:q.value?e.unref(c)("favorite_button.remove_shortcut"):e.unref(c)("favorite_button.save_shortcut")},{default:e.withCtx(()=>[e.createElementVNode("button",{"aria-label":q.value?e.unref(c)("favorite_button.remove_shortcut"):e.unref(c)("favorite_button.save_shortcut"),class:e.normalizeClass(["favorite-button",{active:q.value}]),"data-testid":"page-layout-favorite-button",type:"button",onClick:Y},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(q.value?e.unref(x.StarFillIcon):e.unref(x.StarIcon)),{decorative:"",size:`var(--kui-icon-size-30, ${e.unref(z)})`},null,8,["size"]))],10,Xe)]),_:1},8,["text"])])):e.createCommentVNode("",!0),N.$slots["title-after"]&&b()?(e.openBlock(),e.createElementBlock("div",Je,[e.renderSlot(N.$slots,"title-after",{},void 0,!0)])):e.createCommentVNode("",!0)])])),T.value&&!g()?(e.openBlock(),e.createBlock(We,{key:1,anchors:t.anchors},null,8,["anchors"])):e.createCommentVNode("",!0),e.createElementVNode("div",Ze,[e.renderSlot(N.$slots,"actions",{},void 0,!0),D[0]||(D[0]=e.createElementVNode("div",{"data-teleport-target":"ask-kai"},null,-1))])]),f()?(e.openBlock(),e.createBlock(Pe,{key:0,tabs:t.tabs},e.createSlots({_:2},[e.renderList(t.tabs,X=>({name:`tab-${X.key}`,fn:e.withCtx(K=>[e.renderSlot(N.$slots,`tab-${X.key}`,e.normalizeProps(e.guardReactiveProps(K)),void 0,!0)])}))]),1032,["tabs"])):e.createCommentVNode("",!0)],2)),e.createElementVNode("div",{class:e.normalizeClass(["page-layout-content-container",{"has-nested-page-layout":V.value}])},[m.value&&N.$slots.aside?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(N.$slots,"aside",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",et,[f()?(e.openBlock(),e.createBlock(ie,{key:0})):e.renderSlot(N.$slots,"default",{},void 0,!0,1)])],2)],2)}}}),[["__scopeId","data-v-fa3bd24a"]]),ot={key:0,class:"about-card-description","data-testid":"about-card-description"},nt={key:1,class:"about-card-skeleton","data-testid":"about-card-skeleton"},at={key:2,class:"about-card-rows","data-testid":"about-card-rows"},lt=["data-testid"],it={class:"about-card-row-label"},rt={class:"about-card-row-text"},st=["aria-label","data-testid"],ct={class:"about-card-row-value"},dt={class:"about-card-row-text"},ut={key:3,class:"about-card-content","data-testid":"about-card-content"},pt=J(e.defineComponent({__name:"AboutCard",props:{title:{default:""},titleTag:{default:"h2"},description:{default:""},rows:{default:()=>[]},isLoading:{type:Boolean,default:!1}},setup(t){const s=e.computed(()=>t.rows.length||4);return(n,a)=>{const c=e.resolveComponent("KSkeletonBox"),p=e.resolveComponent("KTooltip"),u=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(u,{class:"kong-ui-public-about-card",title:t.title,"title-tag":t.titleTag},e.createSlots({default:e.withCtx(()=>[n.$slots.description||t.description?(e.openBlock(),e.createElementBlock("p",ot,[e.renderSlot(n.$slots,"description",{},()=>[e.createTextVNode(e.toDisplayString(t.description),1)],!0)])):e.createCommentVNode("",!0),t.isLoading?(e.openBlock(),e.createElementBlock("div",nt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,l=>(e.openBlock(),e.createBlock(c,{key:l,height:"2",width:"100"}))),128))])):t.rows.length?(e.openBlock(),e.createElementBlock("dl",at,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.rows,l=>(e.openBlock(),e.createElementBlock("div",{key:l.key,class:"about-card-row","data-testid":`about-card-row-${l.key}`},[e.createElementVNode("dt",it,[e.renderSlot(n.$slots,`label-${l.key}`,{row:l},()=>[e.createElementVNode("span",rt,e.toDisplayString(l.label),1)],!0),l.tooltip?(e.openBlock(),e.createBlock(p,{key:0,text:l.tooltip},{default:e.withCtx(()=>[e.createElementVNode("button",{"aria-label":l.tooltip,class:"about-card-row-tooltip-trigger","data-testid":`about-card-row-${l.key}-tooltip`,type:"button"},[e.createVNode(e.unref(x.InfoIcon),{size:`var(--kui-icon-size-20, ${e.unref(ke)})`},null,8,["size"])],8,st)]),_:2},1032,["text"])):e.createCommentVNode("",!0)]),e.createElementVNode("dd",ct,[e.renderSlot(n.$slots,`row-${l.key}`,{row:l},()=>[e.createElementVNode("span",dt,e.toDisplayString(l.value),1)],!0)])],8,lt))),128))])):e.createCommentVNode("",!0),n.$slots.default?(e.openBlock(),e.createElementBlock("div",ut,[e.renderSlot(n.$slots,"default",{},void 0,!0)])):e.createCommentVNode("",!0)]),_:2},[n.$slots.title||t.title?{name:"title",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)],!0)]),key:"0"}:void 0,n.$slots.actions?{name:"actions",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"actions",{},void 0,!0)]),key:"1"}:void 0]),1032,["title","title-tag"])}}}),[["__scopeId","data-v-48c05270"]]);_.AboutCard=pt,_.NEW_APPEARANCE_INJECTION_KEY=me,_.PageLayout=tt,Object.defineProperty(_,Symbol.toStringTag,{value:"Module"})}));
package/dist/style.css DELETED
@@ -1 +0,0 @@
1
- .page-layout-tabs[data-v-02891bc1]{align-items:flex-end;border-bottom:1px solid #e0e4ea;border-bottom:var(--kui-border-width-10, 1px) solid var(--kui-color-border, #e0e4ea);box-sizing:border-box;display:flex;height:34px;overflow-x:clip;padding:0 16px;padding:var(--kui-space-0, 0px) var(--kui-space-60, 16px);position:relative;width:100%}.page-layout-tabs a[data-v-02891bc1],.page-layout-tabs button[data-v-02891bc1]{background-color:#0000;background-color:var(--kui-color-background-transparent, rgba(0, 0, 0, 0));border:none;color:inherit;cursor:pointer;font:inherit;outline:none;padding:0;padding:var(--kui-space-0, 0px);text-decoration:none}.page-layout-tabs ul[data-v-02891bc1]{display:flex;gap:20px;gap:var(--kui-space-70, 20px);list-style:none;margin:0;margin:var(--kui-space-0, 0px);margin-bottom:-1px;margin-bottom:calc(-1 * var(--kui-border-width-10, 1px));max-width:100%;padding:0;padding:var(--kui-space-0, 0px)}.page-layout-tabs ul.layout-computing[data-v-02891bc1]{height:0;visibility:hidden}.page-layout-tabs ul li[data-v-02891bc1]{display:flex}.page-layout-tabs ul li .tab-link[data-v-02891bc1]{align-items:center;border-bottom:2px solid rgba(0,0,0,0);border-bottom:var(--kui-border-width-20, 2px) solid var(--kui-color-border-transparent, rgba(0, 0, 0, 0));border-radius:4px 4px 0 0;border-radius:var(--kui-border-radius-20, 4px) var(--kui-border-radius-20, 4px) var(--kui-border-radius-0, 0px) var(--kui-border-radius-0, 0px);color:#52596e;color:var(--kui-color-text-neutral-strong, #52596e);cursor:pointer;display:flex;font-size:12px;font-size:var(--kui-font-size-20, 12px);font-weight:500;font-weight:var(--kui-font-weight-medium, 500);gap:6px;gap:var(--kui-space-30, 6px);line-height:20px;line-height:var(--kui-line-height-30, 20px);padding:6px 0;padding:var(--kui-space-30, 6px) var(--kui-space-0, 0px);text-decoration:none;transition:color .2s ease-in,border-color .2s ease-in,font-weight .2s ease-in;white-space:nowrap}.page-layout-tabs ul li .tab-link[data-v-02891bc1]:hover{border-bottom:2px solid #afb7c5;border-bottom:var(--kui-border-width-20, 2px) solid var(--kui-color-border-neutral-weak, #afb7c5);color:#0d0e14;color:var(--kui-color-text, #0d0e14);text-decoration:none}.page-layout-tabs ul li .tab-link[data-v-02891bc1]:focus-visible{box-shadow:0 0 0 4px #0044f433;box-shadow:var(--kui-shadow-focus, 0px 0px 0px 4px rgba(0, 68, 244, .2));text-decoration:none}.page-layout-tabs ul li .tab-link.active[data-v-02891bc1]{border-bottom:2px solid #0044f4;border-bottom:var(--kui-border-width-20, 2px) solid var(--kui-color-border-primary, #0044f4);color:#0044f4!important;color:var(--kui-color-text-primary, #0044f4)!important;font-weight:600;font-weight:var(--kui-font-weight-semibold, 600);text-decoration:none}.page-layout-tabs .layout-loader-container[data-v-02891bc1]{align-items:center;display:flex;gap:20px;gap:var(--kui-space-70, 20px);height:34px;inset:0 0 0 16px;left:var(--kui-space-60, 16px);position:absolute}.page-layout-anchor-navigation[data-v-f6d370c5]{display:flex;flex:1 1 0;justify-content:center;min-width:0;overflow-x:clip}.page-layout-anchor-navigation ul[data-v-f6d370c5]{align-items:center;background-color:#f9fafb;background-color:var(--kui-color-background-neutral-weakest, #f9fafb);border-radius:8px;border-radius:var(--kui-border-radius-40, 8px);display:flex;flex-shrink:0;gap:2px;gap:var(--kui-space-10, 2px);list-style:none;margin:0;margin:var(--kui-space-0, 0px);padding:4px;padding:var(--kui-space-20, 4px)}.page-layout-anchor-navigation ul.layout-hidden[data-v-f6d370c5]{display:none}.page-layout-anchor-navigation ul li[data-v-f6d370c5]{display:flex}.page-layout-anchor-navigation .anchor-link[data-v-f6d370c5]{background-color:#0000;background-color:var(--kui-color-background-transparent, rgba(0, 0, 0, 0));border:none;border-radius:6px;border-radius:var(--kui-border-radius-30, 6px);box-sizing:border-box;color:#6c7489;color:var(--kui-color-text-neutral, #6c7489);cursor:pointer;font-family:inherit;font-size:12px;font-size:var(--kui-font-size-20, 12px);font-weight:500;font-weight:var(--kui-font-weight-medium, 500);line-height:16px;line-height:var(--kui-line-height-20, 16px);max-width:140px;outline:none;overflow:hidden;padding:4px 6px;padding:var(--kui-space-20, 4px) var(--kui-space-30, 6px);text-overflow:ellipsis;transition:background-color .2s ease-in,color .2s ease-in;transition:background-color var(--kui-animation-duration-20, .2s) ease-in,color var(--kui-animation-duration-20, .2s) ease-in;white-space:nowrap}.page-layout-anchor-navigation .anchor-link[data-v-f6d370c5]:hover{color:#0d0e14;color:var(--kui-color-text, #0d0e14)}.page-layout-anchor-navigation .anchor-link[data-v-f6d370c5]:focus-visible{box-shadow:0 0 0 4px #0044f433;box-shadow:var(--kui-shadow-focus, 0px 0px 0px 4px rgba(0, 68, 244, .2))}.page-layout-anchor-navigation .anchor-link.active[data-v-f6d370c5]{background-color:#0044f4;background-color:var(--kui-color-brand, #0044f4);color:#afb7c5;color:var(--kui-color-text-neutral-weak, #afb7c5)}.page-layout-anchor-navigation .anchor-ellipsis[data-v-f6d370c5]{align-items:center;color:#afb7c5;color:var(--kui-color-text-neutral-weak, #afb7c5);font-size:12px;font-size:var(--kui-font-size-20, 12px);justify-content:center;line-height:16px;line-height:var(--kui-line-height-20, 16px);-webkit-user-select:none;user-select:none;width:16px;width:var(--kui-icon-size-30, 16px)}.page-layout-anchor-navigation .anchor-overflow-button[data-v-f6d370c5]{color:#6c7489;color:var(--kui-color-text-neutral, #6c7489)}.kong-ui-public-page-layout[data-v-fa3bd24a]{box-sizing:border-box;container-name:page-layout;container-type:inline-size;font-family:Inter,Roboto,Helvetica,sans-serif;font-family:var(--kui-font-family-text, "Inter", Roboto, Helvetica, sans-serif)}.kong-ui-public-page-layout .page-layout-header[data-v-fa3bd24a]{background-color:#fff;background-color:var(--kui-color-background, #ffffff);display:flex;flex-direction:column;gap:8px;gap:var(--kui-space-40, 8px)}.kong-ui-public-page-layout .page-layout-header .page-header-container[data-v-fa3bd24a]{align-items:flex-end;display:flex;gap:6px;gap:var(--kui-space-30, 6px);justify-content:space-between;padding:16px 16px 0;padding:var(--kui-space-60, 16px) var(--kui-space-60, 16px) var(--kui-space-0, 0px) var(--kui-space-60, 16px)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start[data-v-fa3bd24a]{min-width:0}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .header-breadcrumbs[data-v-fa3bd24a] .breadcrumbs-item-container:first-child .breadcrumbs-item{padding-left:0;padding-left:var(--kui-space-0, 0px)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .header-breadcrumbs[data-v-fa3bd24a] .breadcrumbs-item-container .breadcrumbs-item.active .breadcrumbs-text{color:#6c7489;color:var(--kui-color-text-neutral, #6c7489)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container[data-v-fa3bd24a]{align-items:flex-end;display:flex;gap:4px;gap:var(--kui-space-20, 4px)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .navigate-back[data-v-fa3bd24a],.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .favorite-button[data-v-fa3bd24a]{background-color:#0000;background-color:var(--kui-color-background-transparent, rgba(0, 0, 0, 0));border:none;border-radius:4px;border-radius:var(--kui-border-radius-20, 4px);color:#6c7489;color:var(--kui-color-text-neutral, #6c7489);cursor:pointer;outline:none;padding:4px;padding:var(--kui-space-20, 4px);transition:background-color .2s ease-in,color .2s ease-in}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .navigate-back[data-v-fa3bd24a]:hover,.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .favorite-button[data-v-fa3bd24a]:hover{color:#0d0e14;color:var(--kui-color-text, #0d0e14)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .navigate-back[data-v-fa3bd24a]:focus-visible,.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .favorite-button[data-v-fa3bd24a]:focus-visible{box-shadow:0 0 0 4px #0044f433;box-shadow:var(--kui-shadow-focus, 0px 0px 0px 4px rgba(0, 68, 244, .2))}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .page-layout-title-wrapper[data-v-fa3bd24a]{min-width:0;overflow:hidden}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .page-layout-title-wrapper[data-v-fa3bd24a]>*{color:#0d0e14;color:var(--kui-color-text, #0d0e14);font-size:18px;font-size:var(--kui-font-size-50, 18px);font-weight:600;font-weight:var(--kui-font-weight-semibold, 600);line-height:24px;line-height:var(--kui-line-height-40, 24px);margin:0;margin:var(--kui-space-0, 0px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .favorite-button-container[data-v-fa3bd24a]{align-self:center;display:flex;margin-left:4px;margin-left:var(--kui-space-20, 4px)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .favorite-button-container .favorite-button[data-v-fa3bd24a]{color:#afb7c5;color:var(--kui-color-text-neutral-weak, #afb7c5);padding:0;padding:var(--kui-space-0, 0px)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .favorite-button-container .favorite-button[data-v-fa3bd24a]:hover{color:#6c7489;color:var(--kui-color-text-neutral, #6c7489)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .favorite-button-container .favorite-button.active[data-v-fa3bd24a]{color:#ffc400;color:var(--kui-color-text-warning-weak, #ffc400)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-start .title-container .title-after-container[data-v-fa3bd24a]{align-items:flex-end;display:flex;gap:6px;gap:var(--kui-space-30, 6px);margin-left:4px;margin-left:var(--kui-space-20, 4px)}.kong-ui-public-page-layout .page-layout-header .page-header-container .page-header-actions-container[data-v-fa3bd24a]{align-items:center;display:flex;gap:6px;gap:var(--kui-space-30, 6px)}.kong-ui-public-page-layout .page-layout-header:not(:has(.page-layout-tabs)):not(.is-empty) .page-header-container[data-v-fa3bd24a]{border-bottom:1px solid #e0e4ea;border-bottom:var(--kui-border-width-10, 1px) solid var(--kui-color-border, #e0e4ea);padding:16px;padding:var(--kui-space-60, 16px)}.kong-ui-public-page-layout.new-appearance .page-layout-header[data-v-fa3bd24a]{position:sticky;top:0;z-index:3}.kong-ui-public-page-layout.new-appearance .page-layout-header .page-header-container[data-v-fa3bd24a]{align-items:center;padding:8px 16px 0;padding:var(--kui-space-40, 8px) var(--kui-space-60, 16px) var(--kui-space-0, 0px) var(--kui-space-60, 16px)}.kong-ui-public-page-layout.new-appearance .page-layout-header .page-header-container .page-header-start[data-v-fa3bd24a]{align-items:center;display:flex;gap:4px;gap:var(--kui-space-20, 4px)}.kong-ui-public-page-layout.new-appearance .page-layout-header .page-header-container .page-header-start .title-container[data-v-fa3bd24a]{align-items:center;min-width:0}.kong-ui-public-page-layout.new-appearance .page-layout-header .page-header-container .page-header-start .title-container .page-layout-title-wrapper[data-v-fa3bd24a]{color:#0d0e14;color:var(--kui-color-text, #0d0e14);font-size:12px;font-size:var(--kui-font-size-20, 12px);font-weight:600;font-weight:var(--kui-font-weight-semibold, 600);line-height:16px;line-height:var(--kui-line-height-20, 16px);max-width:40ch;text-overflow:ellipsis;white-space:nowrap}.kong-ui-public-page-layout.new-appearance .page-layout-header .page-header-container .page-header-start .title-container .page-layout-title-wrapper[data-v-fa3bd24a]>*{font-size:12px;font-size:var(--kui-font-size-20, 12px);line-height:16px;line-height:var(--kui-line-height-20, 16px);max-width:40ch}.kong-ui-public-page-layout.new-appearance .page-layout-header .page-header-container .page-header-start .header-breadcrumbs[data-v-fa3bd24a],.kong-ui-public-page-layout.new-appearance .page-layout-header .page-header-container .page-header-start .title-after-container[data-v-fa3bd24a]{flex-shrink:0}.kong-ui-public-page-layout.new-appearance .page-layout-header:not(:has(.page-layout-tabs)) .page-header-container[data-v-fa3bd24a]{box-sizing:border-box;height:44px;padding:8px 16px;padding:var(--kui-space-40, 8px) var(--kui-space-60, 16px)}.kong-ui-public-page-layout.new-appearance .page-layout-header.is-empty .page-header-container[data-v-fa3bd24a]{justify-content:flex-end;padding-bottom:0;padding-bottom:var(--kui-space-0, 0px)}.kong-ui-public-page-layout.new-appearance .page-layout-content-container[data-v-fa3bd24a]{background-color:#fff;background-color:var(--kui-color-background, #ffffff)}.kong-ui-public-page-layout .page-layout-content-container[data-v-fa3bd24a]{background-color:#f9fafb;background-color:var(--kui-color-background-neutral-weakest, #f9fafb);display:flex;flex-direction:column-reverse;gap:12px;gap:var(--kui-space-50, 12px);padding:16px;padding:var(--kui-space-60, 16px)}.kong-ui-public-page-layout .page-layout-content-container.has-nested-page-layout[data-v-fa3bd24a]{padding:0;padding:var(--kui-space-0, 0px)}@container page-layout (min-width: 1024px){.kong-ui-public-page-layout .page-layout-content-container[data-v-fa3bd24a]{flex-direction:row-reverse;gap:8px;gap:var(--kui-space-40, 8px)}}.kong-ui-public-page-layout .page-layout-content-container .page-layout-content[data-v-fa3bd24a]{display:flex;flex-direction:column;gap:12px;gap:var(--kui-space-50, 12px);min-width:0;width:100%}.kong-ui-public-page-layout .page-layout-content-container .page-layout-aside-container[data-v-fa3bd24a]{display:flex;flex-direction:column;gap:8px;gap:var(--kui-space-40, 8px)}@container page-layout (min-width: 1024px){.kong-ui-public-page-layout .page-layout-content-container .page-layout-aside-container[data-v-fa3bd24a]{align-self:flex-start;flex-shrink:0;position:sticky;top:var(--a3279be2);width:400px}}.kong-ui-public-page-layout[data-v-fa3bd24a] [data-anchor-attention]{animation:anchor-attention-fa3bd24a 1s cubic-bezier(.2,0,0,1) both;animation:anchor-attention-fa3bd24a calc(var(--kui-animation-duration-20, .2s) * 5) cubic-bezier(.2,0,0,1) both}@media(prefers-reduced-motion:reduce){.kong-ui-public-page-layout[data-v-fa3bd24a] [data-anchor-attention]{animation-name:anchor-attention-still-fa3bd24a}}@keyframes anchor-attention-fa3bd24a{0%{box-shadow:0 0 color-mix(in srgb,#0044f4 80%,transparent);box-shadow:0 0 color-mix(in srgb,var(--kui-color-brand, #0044f4) 80%,transparent)}18%{box-shadow:0 0 0 4px color-mix(in srgb,#0044f4 70%,transparent);box-shadow:0 0 0 var(--kui-border-width-30, 4px) color-mix(in srgb,var(--kui-color-brand, #0044f4) 70%,transparent)}55%{box-shadow:0 0 0 8px color-mix(in srgb,#0044f4 28%,transparent);box-shadow:0 0 0 calc(var(--kui-border-width-30, 4px) * 2) color-mix(in srgb,var(--kui-color-brand, #0044f4) 28%,transparent)}to{box-shadow:0 0 0 12px color-mix(in srgb,#0044f4 0%,transparent);box-shadow:0 0 0 calc(var(--kui-border-width-30, 4px) * 3) color-mix(in srgb,var(--kui-color-brand, #0044f4) 0%,transparent)}}@keyframes anchor-attention-still-fa3bd24a{0%,45%{box-shadow:0 0 0 2px color-mix(in srgb,#0044f4 70%,transparent);box-shadow:0 0 0 var(--kui-border-width-20, 2px) color-mix(in srgb,var(--kui-color-brand, #0044f4) 70%,transparent)}to{box-shadow:0 0 0 2px color-mix(in srgb,#0044f4 0%,transparent);box-shadow:0 0 0 var(--kui-border-width-20, 2px) color-mix(in srgb,var(--kui-color-brand, #0044f4) 0%,transparent)}}.kong-ui-public-about-card[data-v-48c05270]{container-type:inline-size}.kong-ui-public-about-card .about-card-description[data-v-48c05270]{color:#6c7489;color:var(--kui-color-text-neutral, #6c7489);font-size:14px;font-size:var(--kui-font-size-30, 14px);line-height:20px;line-height:var(--kui-line-height-30, 20px);margin:0 0 16px;margin:var(--kui-space-0, 0px) var(--kui-space-0, 0px) var(--kui-space-60, 16px)}.kong-ui-public-about-card .about-card-skeleton[data-v-48c05270]{display:flex;flex-direction:column;gap:12px;gap:var(--kui-space-50, 12px)}.kong-ui-public-about-card .about-card-rows[data-v-48c05270]{display:flex;flex-direction:column;margin:0;margin:var(--kui-space-0, 0px)}.kong-ui-public-about-card .about-card-row[data-v-48c05270]{align-items:center;border-bottom:1px solid #e0e4ea;border-bottom:var(--kui-border-width-10, 1px) solid var(--kui-color-border, #e0e4ea);box-sizing:border-box;display:flex;gap:8px;gap:var(--kui-space-40, 8px);min-height:47px;padding:8px 0;padding:var(--kui-space-40, 8px) var(--kui-space-0, 0px)}.kong-ui-public-about-card .about-card-row[data-v-48c05270]:last-child{border-bottom:none;padding-bottom:0;padding-bottom:var(--kui-space-0, 0px)}.kong-ui-public-about-card .about-card-row[data-v-48c05270]:first-child{padding-top:0;padding-top:var(--kui-space-0, 0px)}.kong-ui-public-about-card .about-card-row-label[data-v-48c05270]{align-items:center;color:#0d0e14;color:var(--kui-color-text, #0d0e14);display:flex;flex:0 0 auto;font-size:12px;font-size:var(--kui-font-size-20, 12px);font-weight:500;font-weight:var(--kui-font-weight-medium, 500);gap:4px;gap:var(--kui-space-20, 4px);line-height:16px;line-height:var(--kui-line-height-20, 16px);width:140px}.kong-ui-public-about-card .about-card-row-text[data-v-48c05270]{-webkit-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.kong-ui-public-about-card .about-card-row-tooltip-trigger[data-v-48c05270]{align-items:center;background:none;border:none;color:#6c7489;color:var(--kui-color-text-neutral, #6c7489);cursor:pointer;display:flex;padding:0;padding:var(--kui-space-0, 0px)}.kong-ui-public-about-card .about-card-row-value[data-v-48c05270]{color:#6c7489;color:var(--kui-color-text-neutral, #6c7489);flex:1 1 0;font-size:12px;font-size:var(--kui-font-size-20, 12px);line-height:16px;line-height:var(--kui-line-height-20, 16px);margin:0;margin:var(--kui-space-0, 0px);min-width:0;overflow-wrap:anywhere}.kong-ui-public-about-card .about-card-content[data-v-48c05270]{margin-top:8px;margin-top:var(--kui-space-40, 8px)}@container (max-width: 320px){.kong-ui-public-about-card .about-card-row[data-v-48c05270]{align-items:flex-start;flex-direction:column;gap:2px;gap:var(--kui-space-10, 2px)}.kong-ui-public-about-card .about-card-row-label[data-v-48c05270]{width:auto}}
@@ -1,12 +0,0 @@
1
- import type { AboutCardProps, AboutCardSlots } from '../types';
2
- type __VLS_Slots = AboutCardSlots;
3
- declare const __VLS_base: import("vue").DefineComponent<AboutCardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AboutCardProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
5
- declare const _default: typeof __VLS_export;
6
- export default _default;
7
- type __VLS_WithSlots<T, S> = T & {
8
- new (): {
9
- $slots: S;
10
- };
11
- };
12
- //# sourceMappingURL=AboutCard.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AboutCard.vue.d.ts","sourceRoot":"","sources":["../../../src/components/AboutCard.vue"],"names":[],"mappings":"AA4OA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAY9D,KAAK,WAAW,GAAG,cAAc,CAAC;AAwMlC,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,12 +0,0 @@
1
- import type { PageLayoutProps, PageLayoutSlots } from '../types';
2
- type __VLS_Slots = PageLayoutSlots;
3
- declare const __VLS_base: import("vue").DefineComponent<PageLayoutProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageLayoutProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
5
- declare const _default: typeof __VLS_export;
6
- export default _default;
7
- type __VLS_WithSlots<T, S> = T & {
8
- new (): {
9
- $slots: S;
10
- };
11
- };
12
- //# sourceMappingURL=PageLayout.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PageLayout.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PageLayout.vue"],"names":[],"mappings":"AA4nBA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAoB,MAAM,UAAU,CAAA;AAqBlF,KAAK,WAAW,GAAG,eAAe,CAAC;AA2enC,QAAA,MAAM,UAAU,0SAEd,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,5 +0,0 @@
1
- import type { PageLayoutAnchorNavigationProps } from '../types';
2
- declare const __VLS_export: import("vue").DefineComponent<PageLayoutAnchorNavigationProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageLayoutAnchorNavigationProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
3
- declare const _default: typeof __VLS_export;
4
- export default _default;
5
- //# sourceMappingURL=PageLayoutAnchorNavigation.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PageLayoutAnchorNavigation.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PageLayoutAnchorNavigation.vue"],"names":[],"mappings":"AA0vBA,OAAO,KAAK,EAAoB,+BAA+B,EAAE,MAAM,UAAU,CAAA;AAiwBjF,QAAA,MAAM,YAAY,0UAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -1,21 +0,0 @@
1
- import type { PageLayoutTabsProps, PageLayoutTab } from '../types';
2
- declare var __VLS_11: `tab-${string}`, __VLS_12: {
3
- tab: PageLayoutTab;
4
- }, __VLS_33: `tab-${string}`, __VLS_34: {
5
- tab: PageLayoutTab;
6
- };
7
- type __VLS_Slots = {} & {
8
- [K in NonNullable<typeof __VLS_11>]?: (props: typeof __VLS_12) => any;
9
- } & {
10
- [K in NonNullable<typeof __VLS_33>]?: (props: typeof __VLS_34) => any;
11
- };
12
- declare const __VLS_base: import("vue").DefineComponent<PageLayoutTabsProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageLayoutTabsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
14
- declare const _default: typeof __VLS_export;
15
- export default _default;
16
- type __VLS_WithSlots<T, S> = T & {
17
- new (): {
18
- $slots: S;
19
- };
20
- };
21
- //# sourceMappingURL=PageLayoutTabs.vue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PageLayoutTabs.vue.d.ts","sourceRoot":"","sources":["../../../src/components/PageLayoutTabs.vue"],"names":[],"mappings":"AA8SA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AA8TlE,QAAA,IAAI,QAAQ,iBAAW,EAAE,QAAQ;;CAAU,EAAE,QAAQ,iBAAW,EAAE,QAAQ;;CAAY,CAAE;AACxF,KAAK,WAAW,GAAG,EAAE,GACnB;KAAG,CAAC,IAAI,WAAW,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG;CAAE,GACzE;KAAG,CAAC,IAAI,WAAW,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG;CAAE,CAAC;AAQ5E,QAAA,MAAM,UAAU,kTAEd,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,6 +0,0 @@
1
- import useI18n from './useI18n';
2
- declare const _default: {
3
- useI18n: typeof useI18n;
4
- };
5
- export default _default;
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/composables/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAA;;;;AAE/B,wBAEC"}
@@ -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/composables/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,6 +0,0 @@
1
- import PageLayout from './components/PageLayout.vue';
2
- import AboutCard from './components/AboutCard.vue';
3
- export { PageLayout, AboutCard };
4
- export { NEW_APPEARANCE_INJECTION_KEY } from './symbols';
5
- export * from './types';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,6BAA6B,CAAA;AACpD,OAAO,SAAS,MAAM,4BAA4B,CAAA;AAElD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA;AAEhC,OAAO,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAA;AAExD,cAAc,SAAS,CAAA"}
@@ -1,7 +0,0 @@
1
- export declare const nestedPageLayoutInjectionKey: unique symbol;
2
- /**
3
- * Injection key for the boolean (or ref/getter) that tells PageLayout to render the new
4
- * page header appearance.
5
- */
6
- export declare const NEW_APPEARANCE_INJECTION_KEY = "page-layout:new-appearance";
7
- //# sourceMappingURL=symbols.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"symbols.d.ts","sourceRoot":"","sources":["../../src/symbols.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,4BAA4B,eAAyC,CAAA;AAElF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,+BAA+B,CAAA"}
@@ -1,44 +0,0 @@
1
- export interface AboutCardRow {
2
- /**
3
- * Unique key for the row. Also used to build the per-row slot names:
4
- * `label-${key}` and `row-${key}`.
5
- */
6
- key: string;
7
- /** Label text. Ignored when the `label-${key}` slot is provided. */
8
- label?: string;
9
- /** Informational tooltip rendered next to the label. */
10
- tooltip?: string;
11
- /** Value text. Ignored when the `row-${key}` slot is provided. */
12
- value?: string;
13
- }
14
- export interface AboutCardProps {
15
- /** Card title */
16
- title?: string;
17
- /** HTML element the title is rendered as */
18
- titleTag?: 'div' | 'p' | 'span' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
19
- /** Description rendered above the rows */
20
- description?: string;
21
- /** The label/value rows */
22
- rows?: AboutCardRow[];
23
- /** Render skeleton placeholders instead of the rows */
24
- isLoading?: boolean;
25
- }
26
- export interface AboutCardSlots {
27
- /** Content rendered below the rows */
28
- default?(): any;
29
- /** Card title */
30
- title?(): any;
31
- /** Description rendered above the rows */
32
- description?(): any;
33
- /** Action elements rendered to the right of the card title */
34
- actions?(): any;
35
- /** Overrides the label of the row with the matching key */
36
- [key: `label-${string}`]: (props: {
37
- row: AboutCardRow;
38
- }) => any;
39
- /** Overrides the value of the row with the matching key */
40
- [key: `row-${string}`]: (props: {
41
- row: AboutCardRow;
42
- }) => any;
43
- }
44
- //# sourceMappingURL=about-card.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"about-card.d.ts","sourceRoot":"","sources":["../../../src/types/about-card.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAA;IACX,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,KAAK,GAAG,GAAG,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IAClE,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,YAAY,EAAE,CAAA;IACrB,uDAAuD;IACvD,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,sCAAsC;IACtC,OAAO,CAAC,IAAI,GAAG,CAAA;IACf,iBAAiB;IACjB,KAAK,CAAC,IAAI,GAAG,CAAA;IACb,0CAA0C;IAC1C,WAAW,CAAC,IAAI,GAAG,CAAA;IACnB,8DAA8D;IAC9D,OAAO,CAAC,IAAI,GAAG,CAAA;IACf,2DAA2D;IAC3D,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE;QAAE,GAAG,EAAE,YAAY,CAAA;KAAE,KAAK,GAAG,CAAA;IAC/D,2DAA2D;IAC3D,CAAC,GAAG,EAAE,OAAO,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE;QAAE,GAAG,EAAE,YAAY,CAAA;KAAE,KAAK,GAAG,CAAA;CAC9D"}
@@ -1,5 +0,0 @@
1
- export * from './about-card';
2
- export * from './page-layout';
3
- export * from './page-layout-anchor-navigation';
4
- export * from './page-layout-tabs';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,iCAAiC,CAAA;AAC/C,cAAc,oBAAoB,CAAA"}
@@ -1,26 +0,0 @@
1
- export interface PageLayoutAnchor {
2
- /**
3
- * A CSS selector matching the section this item scrolls to (`#usage`, `[data-anchor="usage"]`, ...).
4
- * A bare identifier (`usage`) is also accepted and looked up as `#usage`.
5
- * Doubles as the item's unique key, so it must be unique within the list.
6
- */
7
- id: string;
8
- /** The display text of the navigation item */
9
- label: string;
10
- /**
11
- * The section element itself, for pages that hold a template ref rather than a selector.
12
- * Takes precedence over `id`, which is then only used as the item's key.
13
- */
14
- element?: HTMLElement | null;
15
- /**
16
- * Pixels left between the top of the scrolling container and the section once it has been
17
- * scrolled to. Defaults to the height of the sticky page header plus a small gap.
18
- */
19
- offset?: number;
20
- /** The data-testid attribute to apply to the navigation item. Auto-generated if not provided */
21
- dataTestId?: string;
22
- }
23
- export interface PageLayoutAnchorNavigationProps {
24
- anchors?: PageLayoutAnchor[];
25
- }
26
- //# sourceMappingURL=page-layout-anchor-navigation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"page-layout-anchor-navigation.d.ts","sourceRoot":"","sources":["../../../src/types/page-layout-anchor-navigation.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,EAAE,EAAE,MAAM,CAAA;IACV,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,+BAA+B;IAC9C,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC7B"}
@@ -1,22 +0,0 @@
1
- import type { RouteLocationRaw } from 'vue-router';
2
- export interface PageLayoutTab {
3
- /** The unique kebab-case key of the tab */
4
- key: string;
5
- /** The display text of the navbar tab */
6
- label: string;
7
- /** The [Vue Router `to` object](https://router.vuejs.org/api/interfaces/RouterLinkProps.html#to) or a URL path (relative or absolute) to navigate to on click */
8
- to: string | RouteLocationRaw;
9
- /** Is the navbar tab active */
10
- active?: boolean;
11
- /** The data-testid attribute to apply to the navbar tab. Auto-generated if not provided */
12
- dataTestId?: string;
13
- }
14
- export interface PageLayoutTabsProps {
15
- tabs?: PageLayoutTab[];
16
- }
17
- export interface PageLayoutTabsSlots {
18
- [key: `tab-${string}`]: (props: {
19
- tab: PageLayoutTab;
20
- }) => any;
21
- }
22
- //# sourceMappingURL=page-layout-tabs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"page-layout-tabs.d.ts","sourceRoot":"","sources":["../../../src/types/page-layout-tabs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAA;IACX,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAA;IACb,iKAAiK;IACjK,EAAE,EAAE,MAAM,GAAG,gBAAgB,CAAA;IAC7B,+BAA+B;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAA;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,CAAC,GAAG,EAAE,OAAO,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE;QAAE,GAAG,EAAE,aAAa,CAAA;KAAE,KAAK,GAAG,CAAA;CAC/D"}
@@ -1,60 +0,0 @@
1
- import type { BreadcrumbItem } from '@kong/kongponents';
2
- import type { PageLayoutAnchor, PageLayoutTab } from './';
3
- import type { RouteLocationRaw } from 'vue-router';
4
- export interface PageShortcutData {
5
- /** The display label of the page shortcut */
6
- label: string;
7
- /** The URL path of the page shortcut */
8
- path?: string;
9
- /** The entity type of the page shortcut (snake_case, e.g. "gateway_service") */
10
- entityType: string;
11
- /** The display label of the parent entity */
12
- parentLabel?: string;
13
- }
14
- export interface PageLayoutProps {
15
- /** Breadcrumb items */
16
- breadcrumbs?: BreadcrumbItem[];
17
- /** Page title */
18
- title?: string;
19
- /** The URL to navigate back to when the back button is clicked */
20
- backTo?: string | RouteLocationRaw;
21
- /** Tabs */
22
- tabs?: PageLayoutTab[];
23
- /**
24
- * In-page sections the header's anchor navigation bar scrolls to. New appearance only, and
25
- * ignored when `tabs` are provided -- the header shows one or the other, never both.
26
- */
27
- anchors?: PageLayoutAnchor[];
28
- /** Providing this prop "marks" the current page as an entity page that can be added to shortcuts (favorites and recents) */
29
- pageShortcutData?: PageShortcutData;
30
- }
31
- export interface PageLayoutSlots {
32
- /**
33
- * Default slot for page content
34
- */
35
- default?(): any;
36
- /**
37
- * Actions slot for page actions
38
- */
39
- actions?(): any;
40
- /**
41
- * Title slot for page title
42
- */
43
- title?(): any;
44
- /**
45
- * Title after slot for page title after content
46
- */
47
- 'title-after'?(): any;
48
- /**
49
- * Aside slot for secondary content rendered beside the page content.
50
- * Only rendered in the new appearance.
51
- */
52
- aside?(): any;
53
- /**
54
- * Per-tab slot for customizing the rendering of a specific tab. Slot name is `tab-${tab.key}`.
55
- */
56
- [key: `tab-${string}`]: (props: {
57
- tab: PageLayoutTab;
58
- }) => any;
59
- }
60
- //# sourceMappingURL=page-layout.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"page-layout.d.ts","sourceRoot":"","sources":["../../../src/types/page-layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gFAAgF;IAChF,UAAU,EAAE,MAAM,CAAA;IAClB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,uBAAuB;IACvB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAA;IAC9B,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAA;IAClC,WAAW;IACX,IAAI,CAAC,EAAE,aAAa,EAAE,CAAA;IACtB;;;OAGG;IACH,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,4HAA4H;IAC5H,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,OAAO,CAAC,IAAI,GAAG,CAAA;IACf;;OAEG;IACH,OAAO,CAAC,IAAI,GAAG,CAAA;IACf;;OAEG;IACH,KAAK,CAAC,IAAI,GAAG,CAAA;IACb;;OAEG;IACH,aAAa,CAAC,IAAI,GAAG,CAAA;IACrB;;;OAGG;IACH,KAAK,CAAC,IAAI,GAAG,CAAA;IACb;;OAEG;IACH,CAAC,GAAG,EAAE,OAAO,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE;QAAE,GAAG,EAAE,aAAa,CAAA;KAAE,KAAK,GAAG,CAAA;CAC/D"}