@kong-ui-public/analytics-metric-provider 7.2.1 → 7.2.2
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ref as re, watchEffect as $e, computed as g, getCurrentInstance as Be, reactive as
|
|
1
|
+
import { ref as re, watchEffect as $e, computed as g, getCurrentInstance as Be, reactive as Ke, onMounted as Ue, onUnmounted as Pe, watch as Ze, isReadonly as Xe, toRefs as Ge, defineComponent as k, inject as ke, toRef as J, provide as je, renderSlot as Le, openBlock as p, createBlock as E, resolveDynamicComponent as L, normalizeStyle as A, withCtx as q, createElementBlock as y, toDisplayString as w, createCommentVNode as N, pushScopeId as z, popScopeId as V, createElementVNode as x, resolveComponent as qe, normalizeClass as Y, unref as R, createTextVNode as Ae, createVNode as G, Fragment as _e, renderList as Ye, mergeProps as Qe, normalizeProps as We, guardReactiveProps as Je } from "vue";
|
|
2
2
|
import { TimePeriods as ie, TimeframeKeys as ne, queryableExploreDimensions as et, DeltaQueryTime as tt, UnaryQueryTime as rt } from "@kong-ui-public/analytics-utilities";
|
|
3
3
|
import { createI18n as it, i18nTComponent as nt } from "@kong-ui-public/i18n";
|
|
4
4
|
import { useAnalyticsConfigStore as at } from "@kong-ui-public/analytics-config-store";
|
|
@@ -108,7 +108,7 @@ function yt(e, t) {
|
|
|
108
108
|
}
|
|
109
109
|
function mt(e) {
|
|
110
110
|
e.queryReady === void 0 && (e.queryReady = g(() => !0));
|
|
111
|
-
const { i18n: t } =
|
|
111
|
+
const { i18n: t } = U.useI18n(), r = g(() => {
|
|
112
112
|
var u, d;
|
|
113
113
|
return {
|
|
114
114
|
metrics: e.metrics.value,
|
|
@@ -126,7 +126,7 @@ function mt(e) {
|
|
|
126
126
|
return null;
|
|
127
127
|
const u = (v = e.filter) != null && v.value ? JSON.stringify(e.filter.value) : "";
|
|
128
128
|
return `metric-fetcher-${e.timeframe.value.cacheKey()}-${(C = e.dimensions) == null ? void 0 : C.join("-")}-${(m = e.metrics.value) == null ? void 0 : m.join("-")}-${u}`;
|
|
129
|
-
}), { response: n, error: i, isValidating: l } =
|
|
129
|
+
}), { response: n, error: i, isValidating: l } = U.useRequest(
|
|
130
130
|
() => a.value,
|
|
131
131
|
() => e.queryFn(r.value, e.abortController ?? new AbortController()),
|
|
132
132
|
{
|
|
@@ -135,16 +135,16 @@ function mt(e) {
|
|
|
135
135
|
errorRetryCount: ct
|
|
136
136
|
}
|
|
137
137
|
), { state: f, swrvState: c } = gt(n, i, l), o = g(() => {
|
|
138
|
-
var u, d, v, C, m,
|
|
139
|
-
return !((d = (u = n.value) == null ? void 0 : u.data) != null && d.length) || !((C = (v = n.value) == null ? void 0 : v.meta) != null && C.display) || !((T = (
|
|
138
|
+
var u, d, v, C, m, b, T;
|
|
139
|
+
return !((d = (u = n.value) == null ? void 0 : u.data) != null && d.length) || !((C = (v = n.value) == null ? void 0 : v.meta) != null && C.display) || !((T = (b = (m = n.value) == null ? void 0 : m.meta) == null ? void 0 : b.metric_names) != null && T.length) ? { current: {}, previous: {} } : yt(n.value, e.withTrend.value);
|
|
140
140
|
}), s = g(() => {
|
|
141
141
|
var u, d, v;
|
|
142
142
|
if (e.timeframe.value.key === "custom") {
|
|
143
143
|
if (!((d = (u = n.value) == null ? void 0 : u.meta) != null && d.start_ms))
|
|
144
144
|
return "";
|
|
145
145
|
const { start_ms: C, end_ms: m } = n.value.meta;
|
|
146
|
-
let
|
|
147
|
-
return e.withTrend.value && (
|
|
146
|
+
let b = (m - C) / (1e3 * 60 * 60 * 24);
|
|
147
|
+
return e.withTrend.value && (b /= 2), t.t("trendRange.custom", { numDays: Math.round(b) });
|
|
148
148
|
} else
|
|
149
149
|
return e.withTrend.value ? t.t(`trendRange.${e.timeframe.value.key}`) : t.t(`trendRange.${(v = ie.get(ne.ONE_DAY)) == null ? void 0 : v.key}`);
|
|
150
150
|
});
|
|
@@ -156,7 +156,7 @@ function mt(e) {
|
|
|
156
156
|
trendRange: s
|
|
157
157
|
};
|
|
158
158
|
}
|
|
159
|
-
const
|
|
159
|
+
const X = (e, t, r = $, a) => (a ?? [$]).reduce((i, l) => {
|
|
160
160
|
const f = e[t][r];
|
|
161
161
|
return f ? i + (f[l] || 0) : i;
|
|
162
162
|
}, 0);
|
|
@@ -175,7 +175,7 @@ function ht(e) {
|
|
|
175
175
|
let o = 0, s = 0;
|
|
176
176
|
if (n != null && n.value)
|
|
177
177
|
try {
|
|
178
|
-
o =
|
|
178
|
+
o = X(n.value, "current", e.lookupKey, e.sumGroupedValues), s = X(n.value, "previous", e.lookupKey, e.sumGroupedValues);
|
|
179
179
|
} catch (u) {
|
|
180
180
|
console.error(
|
|
181
181
|
"Metric card data doesn't have the expected structure:",
|
|
@@ -206,7 +206,7 @@ function Ct(e) {
|
|
|
206
206
|
}
|
|
207
207
|
return t;
|
|
208
208
|
}
|
|
209
|
-
function
|
|
209
|
+
function bt(e) {
|
|
210
210
|
if (typeof e == "function")
|
|
211
211
|
try {
|
|
212
212
|
e = e();
|
|
@@ -222,7 +222,7 @@ var ge = (
|
|
|
222
222
|
t === void 0 && (t = 0), this.items = /* @__PURE__ */ new Map(), this.ttl = t;
|
|
223
223
|
}
|
|
224
224
|
return e.prototype.serializeKey = function(t) {
|
|
225
|
-
return
|
|
225
|
+
return bt(t);
|
|
226
226
|
}, e.prototype.get = function(t) {
|
|
227
227
|
var r = this.serializeKey(t);
|
|
228
228
|
return this.items.get(r);
|
|
@@ -244,7 +244,7 @@ var ge = (
|
|
|
244
244
|
}, e;
|
|
245
245
|
}()
|
|
246
246
|
);
|
|
247
|
-
function
|
|
247
|
+
function St() {
|
|
248
248
|
return typeof navigator.onLine < "u" ? navigator.onLine : !0;
|
|
249
249
|
}
|
|
250
250
|
function _t() {
|
|
@@ -256,7 +256,7 @@ var wt = function(e) {
|
|
|
256
256
|
});
|
|
257
257
|
};
|
|
258
258
|
const fe = {
|
|
259
|
-
isOnline:
|
|
259
|
+
isOnline: St,
|
|
260
260
|
isDocumentVisible: _t,
|
|
261
261
|
fetcher: wt
|
|
262
262
|
};
|
|
@@ -295,7 +295,7 @@ var O = function() {
|
|
|
295
295
|
}
|
|
296
296
|
o((a = a.apply(e, t || [])).next());
|
|
297
297
|
});
|
|
298
|
-
},
|
|
298
|
+
}, Z = function(e, t) {
|
|
299
299
|
var r = { label: 0, sent: function() {
|
|
300
300
|
if (i[0] & 1)
|
|
301
301
|
throw i[1];
|
|
@@ -383,8 +383,8 @@ var O = function() {
|
|
|
383
383
|
for (var a = 0, n = t.length, i; a < n; a++)
|
|
384
384
|
(i || !(a in t)) && (i || (i = Array.prototype.slice.call(t, 0, a)), i[a] = t[a]);
|
|
385
385
|
return e.concat(i || Array.prototype.slice.call(t));
|
|
386
|
-
},
|
|
387
|
-
cache:
|
|
386
|
+
}, Ve = new ge(), ae = new ge(), ve = new ge(), De = {
|
|
387
|
+
cache: Ve,
|
|
388
388
|
refreshInterval: 0,
|
|
389
389
|
ttl: 0,
|
|
390
390
|
serverTTL: 1e3,
|
|
@@ -407,7 +407,7 @@ function Tt(e, t, r) {
|
|
|
407
407
|
ae.set(e, [t], r > 0 ? r + n : r);
|
|
408
408
|
}
|
|
409
409
|
}
|
|
410
|
-
function
|
|
410
|
+
function Et(e, t, r) {
|
|
411
411
|
if (r.isDocumentVisible() && !(r.errorRetryCount !== void 0 && t > r.errorRetryCount)) {
|
|
412
412
|
var a = Math.min(t || 0, r.errorRetryCount), n = a * r.errorRetryInterval;
|
|
413
413
|
setTimeout(function() {
|
|
@@ -416,9 +416,9 @@ function It(e, t, r) {
|
|
|
416
416
|
}
|
|
417
417
|
}
|
|
418
418
|
var Te = function(e, t, r, a) {
|
|
419
|
-
return r === void 0 && (r =
|
|
419
|
+
return r === void 0 && (r = Ve), a === void 0 && (a = De.ttl), P(void 0, void 0, void 0, function() {
|
|
420
420
|
var n, i, l, f, c, o, s;
|
|
421
|
-
return
|
|
421
|
+
return Z(this, function(u) {
|
|
422
422
|
switch (u.label) {
|
|
423
423
|
case 0:
|
|
424
424
|
if (!xt(t))
|
|
@@ -452,10 +452,10 @@ var Te = function(e, t, r, a) {
|
|
|
452
452
|
});
|
|
453
453
|
});
|
|
454
454
|
};
|
|
455
|
-
function
|
|
455
|
+
function It() {
|
|
456
456
|
for (var e = this, t = [], r = 0; r < arguments.length; r++)
|
|
457
457
|
t[r] = arguments[r];
|
|
458
|
-
var a, n, i = O({},
|
|
458
|
+
var a, n, i = O({}, De), l = !1, f = !1, c = Be(), o = (c == null ? void 0 : c.proxy) || c;
|
|
459
459
|
if (!o)
|
|
460
460
|
return console.error("Could not get current instance, check to make sure that `useSwrv` is declared in the top level of the setup function."), null;
|
|
461
461
|
var s = (o == null ? void 0 : o.$isServer) || !1;
|
|
@@ -463,19 +463,19 @@ function Et() {
|
|
|
463
463
|
var u = s ? i.serverTTL : i.ttl, d = typeof a == "function" ? a : re(a);
|
|
464
464
|
typeof n > "u" && (n = i.fetcher);
|
|
465
465
|
var v = null;
|
|
466
|
-
v || (v =
|
|
466
|
+
v || (v = Ke({
|
|
467
467
|
data: void 0,
|
|
468
468
|
error: void 0,
|
|
469
469
|
isValidating: !0,
|
|
470
470
|
key: null
|
|
471
471
|
}));
|
|
472
|
-
var C = function(
|
|
472
|
+
var C = function(S, h) {
|
|
473
473
|
return P(e, void 0, void 0, function() {
|
|
474
|
-
var H,
|
|
475
|
-
return
|
|
474
|
+
var H, I, B, j, oe, he, se, Ce = this;
|
|
475
|
+
return Z(this, function(le) {
|
|
476
476
|
switch (le.label) {
|
|
477
477
|
case 0:
|
|
478
|
-
return H = v.data === void 0,
|
|
478
|
+
return H = v.data === void 0, I = d.value, I ? (B = i.cache.get(I), j = B && B.data, v.isValidating = !0, j && (v.data = j.data, v.error = j.error), oe = S || n, !oe || !i.isDocumentVisible() && !H || (h == null ? void 0 : h.forceRevalidate) !== void 0 && !(h != null && h.forceRevalidate) ? (v.isValidating = !1, [
|
|
479
479
|
2
|
|
480
480
|
/*return*/
|
|
481
481
|
]) : B && (he = !!(Date.now() - B.createdAt >= i.dedupingInterval || h != null && h.forceRevalidate), !he) ? (v.isValidating = !1, [
|
|
@@ -483,19 +483,19 @@ function Et() {
|
|
|
483
483
|
/*return*/
|
|
484
484
|
]) : (se = function() {
|
|
485
485
|
return P(Ce, void 0, void 0, function() {
|
|
486
|
-
var
|
|
487
|
-
return
|
|
486
|
+
var K, be, ue, Se;
|
|
487
|
+
return Z(this, function(W) {
|
|
488
488
|
switch (W.label) {
|
|
489
489
|
case 0:
|
|
490
|
-
return
|
|
490
|
+
return K = ve.get(I), K ? [3, 2] : (be = Array.isArray(I) ? I : [I], ue = oe.apply(void 0, Nt([], Rt(be), !1)), ve.set(I, ue, i.dedupingInterval), [4, Te(I, ue, i.cache, u)]);
|
|
491
491
|
case 1:
|
|
492
492
|
return W.sent(), [3, 4];
|
|
493
493
|
case 2:
|
|
494
|
-
return [4, Te(
|
|
494
|
+
return [4, Te(I, K.data, i.cache, u)];
|
|
495
495
|
case 3:
|
|
496
496
|
W.sent(), W.label = 4;
|
|
497
497
|
case 4:
|
|
498
|
-
return v.isValidating = !1, ve.delete(
|
|
498
|
+
return v.isValidating = !1, ve.delete(I), v.error !== void 0 && (Se = !l && i.shouldRetryOnError && (h ? h.shouldRetryOnError : !0), Se && Et(C, h ? h.errorRetryCount : 1, i)), [
|
|
499
499
|
2
|
|
500
500
|
/*return*/
|
|
501
501
|
];
|
|
@@ -504,12 +504,12 @@ function Et() {
|
|
|
504
504
|
});
|
|
505
505
|
}, j && i.revalidateDebounce ? (setTimeout(function() {
|
|
506
506
|
return P(Ce, void 0, void 0, function() {
|
|
507
|
-
return
|
|
508
|
-
switch (
|
|
507
|
+
return Z(this, function(K) {
|
|
508
|
+
switch (K.label) {
|
|
509
509
|
case 0:
|
|
510
510
|
return l ? [3, 2] : [4, se()];
|
|
511
511
|
case 1:
|
|
512
|
-
|
|
512
|
+
K.sent(), K.label = 2;
|
|
513
513
|
case 2:
|
|
514
514
|
return [
|
|
515
515
|
2
|
|
@@ -536,24 +536,24 @@ function Et() {
|
|
|
536
536
|
});
|
|
537
537
|
}, m = function() {
|
|
538
538
|
return P(e, void 0, void 0, function() {
|
|
539
|
-
return
|
|
539
|
+
return Z(this, function(S) {
|
|
540
540
|
return [2, C(null, { shouldRetryOnError: !1 })];
|
|
541
541
|
});
|
|
542
542
|
});
|
|
543
|
-
},
|
|
544
|
-
|
|
545
|
-
var
|
|
543
|
+
}, b = null;
|
|
544
|
+
Ue(function() {
|
|
545
|
+
var S = function() {
|
|
546
546
|
return P(e, void 0, void 0, function() {
|
|
547
|
-
return
|
|
547
|
+
return Z(this, function(h) {
|
|
548
548
|
switch (h.label) {
|
|
549
549
|
case 0:
|
|
550
550
|
return !v.error && i.isOnline() ? [4, C()] : [3, 2];
|
|
551
551
|
case 1:
|
|
552
552
|
return h.sent(), [3, 3];
|
|
553
553
|
case 2:
|
|
554
|
-
|
|
554
|
+
b && clearTimeout(b), h.label = 3;
|
|
555
555
|
case 3:
|
|
556
|
-
return i.refreshInterval && !l && (
|
|
556
|
+
return i.refreshInterval && !l && (b = setTimeout(S, i.refreshInterval)), [
|
|
557
557
|
2
|
|
558
558
|
/*return*/
|
|
559
559
|
];
|
|
@@ -561,24 +561,24 @@ function Et() {
|
|
|
561
561
|
});
|
|
562
562
|
});
|
|
563
563
|
};
|
|
564
|
-
i.refreshInterval && (
|
|
564
|
+
i.refreshInterval && (b = setTimeout(S, i.refreshInterval)), i.revalidateOnFocus && (document.addEventListener("visibilitychange", m, !1), window.addEventListener("focus", m, !1));
|
|
565
565
|
}), Pe(function() {
|
|
566
|
-
l = !0,
|
|
567
|
-
var
|
|
568
|
-
|
|
566
|
+
l = !0, b && clearTimeout(b), i.revalidateOnFocus && (document.removeEventListener("visibilitychange", m, !1), window.removeEventListener("focus", m, !1));
|
|
567
|
+
var S = ae.get(d.value);
|
|
568
|
+
S && (S.data = S.data.filter(function(h) {
|
|
569
569
|
return h !== v;
|
|
570
570
|
}));
|
|
571
571
|
});
|
|
572
572
|
try {
|
|
573
|
-
|
|
574
|
-
|
|
573
|
+
Ze(d, function(S) {
|
|
574
|
+
Xe(d) || (d.value = S), v.key = S, v.isValidating = !!S, Tt(d.value, v, u), !s && !f && d.value && C(), f = !1;
|
|
575
575
|
}, {
|
|
576
576
|
immediate: !0
|
|
577
577
|
});
|
|
578
578
|
} catch {
|
|
579
579
|
}
|
|
580
|
-
var T = O(O({},
|
|
581
|
-
return C(
|
|
580
|
+
var T = O(O({}, Ge(v)), { mutate: function(S, h) {
|
|
581
|
+
return C(S, O(O({}, h), { forceRevalidate: !0 }));
|
|
582
582
|
} });
|
|
583
583
|
return T;
|
|
584
584
|
}
|
|
@@ -591,7 +591,7 @@ function kt(e, t, r) {
|
|
|
591
591
|
error: n,
|
|
592
592
|
isValidating: i,
|
|
593
593
|
mutate: l
|
|
594
|
-
} =
|
|
594
|
+
} = It(e, t, {
|
|
595
595
|
revalidateDebounce: 500,
|
|
596
596
|
revalidateOnFocus: !1,
|
|
597
597
|
dedupingInterval: 100,
|
|
@@ -605,7 +605,7 @@ function kt(e, t, r) {
|
|
|
605
605
|
revalidate: l
|
|
606
606
|
};
|
|
607
607
|
}
|
|
608
|
-
const
|
|
608
|
+
const U = {
|
|
609
609
|
useI18n: dt,
|
|
610
610
|
useMetricCardBuilder: ht,
|
|
611
611
|
useMetricFetcher: mt,
|
|
@@ -652,7 +652,7 @@ const K = {
|
|
|
652
652
|
refreshInterval: c,
|
|
653
653
|
queryFn: s,
|
|
654
654
|
abortController: o
|
|
655
|
-
},
|
|
655
|
+
}, b = {
|
|
656
656
|
metrics: g(() => [
|
|
657
657
|
u.value ? "response_latency_average" : "response_latency_p99"
|
|
658
658
|
]),
|
|
@@ -668,10 +668,10 @@ const K = {
|
|
|
668
668
|
refreshInterval: c,
|
|
669
669
|
queryFn: s,
|
|
670
670
|
abortController: o
|
|
671
|
-
}, T =
|
|
671
|
+
}, T = U.useMetricFetcher(m), S = U.useMetricFetcher(b);
|
|
672
672
|
return {
|
|
673
673
|
trafficData: T,
|
|
674
|
-
latencyData:
|
|
674
|
+
latencyData: S
|
|
675
675
|
};
|
|
676
676
|
}, hi = /* @__PURE__ */ k({
|
|
677
677
|
__name: "MetricsProvider",
|
|
@@ -736,7 +736,7 @@ const K = {
|
|
|
736
736
|
});
|
|
737
737
|
}
|
|
738
738
|
});
|
|
739
|
-
function
|
|
739
|
+
function qt(e) {
|
|
740
740
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
741
741
|
}
|
|
742
742
|
var Me = { exports: {} };
|
|
@@ -766,18 +766,18 @@ var Me = { exports: {} };
|
|
|
766
766
|
c.addCommas = t, e.exports = c;
|
|
767
767
|
})();
|
|
768
768
|
})(Me);
|
|
769
|
-
var
|
|
770
|
-
const zt = /* @__PURE__ */ At
|
|
769
|
+
var At = Me.exports;
|
|
770
|
+
const zt = /* @__PURE__ */ qt(At);
|
|
771
771
|
var M = /* @__PURE__ */ ((e) => (e.GENERIC_COUNT = "GenericCount", e.TRAFFIC = "Traffic", e.ERROR_RATE = "ErrorRate", e.LATENCY = "Latency", e))(M || {}), F = /* @__PURE__ */ ((e) => (e.Small = "sm", e.Medium = "md", e.Large = "lg", e.ExtraLarge = "xl", e))(F || {});
|
|
772
|
-
const _ = "24px",
|
|
772
|
+
const _ = "24px", D = (e, t) => {
|
|
773
773
|
const r = e.__vccOpts || e;
|
|
774
774
|
for (const [a, n] of t)
|
|
775
775
|
r[a] = n;
|
|
776
776
|
return r;
|
|
777
|
-
},
|
|
777
|
+
}, Vt = (e) => (z("data-v-6e7c19a8"), e = e(), V(), e), Dt = ["aria-hidden"], Ot = {
|
|
778
778
|
key: 0,
|
|
779
779
|
"data-testid": "kui-icon-svg-title"
|
|
780
|
-
}, Mt = /* @__PURE__ */
|
|
780
|
+
}, Mt = /* @__PURE__ */ Vt(() => /* @__PURE__ */ x("path", {
|
|
781
781
|
d: "M6.5 20C4.98333 20 3.6875 19.475 2.6125 18.425C1.5375 17.375 1 16.0917 1 14.575C1 13.275 1.39167 12.1167 2.175 11.1C2.95833 10.0833 3.98333 9.43333 5.25 9.15C5.66667 7.61667 6.5 6.375 7.75 5.425C9 4.475 10.4167 4 12 4C13.95 4 15.6042 4.67917 16.9625 6.0375C18.3208 7.39583 19 9.05 19 11C20.15 11.1333 21.1042 11.6292 21.8625 12.4875C22.6208 13.3458 23 14.35 23 15.5C23 16.75 22.5625 17.8125 21.6875 18.6875C20.8125 19.5625 19.75 20 18.5 20H13C12.45 20 11.9792 19.8042 11.5875 19.4125C11.1958 19.0208 11 18.55 11 18V12.85L9.4 14.4L8 13L12 9L16 13L14.6 14.4L13 12.85V18H18.5C19.2 18 19.7917 17.7583 20.275 17.275C20.7583 16.7917 21 16.2 21 15.5C21 14.8 20.7583 14.2083 20.275 13.725C19.7917 13.2417 19.2 13 18.5 13H17V11C17 9.61667 16.5125 8.4375 15.5375 7.4625C14.5625 6.4875 13.3833 6 12 6C10.6167 6 9.4375 6.4875 8.4625 7.4625C7.4875 8.4375 7 9.61667 7 11H6.5C5.53333 11 4.70833 11.3417 4.025 12.025C3.34167 12.7083 3 13.5333 3 14.5C3 15.4667 3.34167 16.2917 4.025 16.975C4.70833 17.6583 5.53333 18 6.5 18H9V20H6.5Z",
|
|
782
782
|
fill: "currentColor"
|
|
783
783
|
}, null, -1)), Ft = /* @__PURE__ */ k({
|
|
@@ -849,13 +849,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
849
849
|
lineHeight: "0",
|
|
850
850
|
width: r.value
|
|
851
851
|
}));
|
|
852
|
-
return (n, i) => (p(),
|
|
852
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
853
853
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
854
854
|
class: "kui-icon cloud-upload-icon",
|
|
855
855
|
"data-testid": "kui-icon-wrapper-cloud-upload-icon",
|
|
856
|
-
style:
|
|
856
|
+
style: A(a.value)
|
|
857
857
|
}, {
|
|
858
|
-
default:
|
|
858
|
+
default: q(() => [
|
|
859
859
|
(p(), y("svg", {
|
|
860
860
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
861
861
|
"data-testid": "kui-icon-svg-cloud-upload-icon",
|
|
@@ -868,15 +868,15 @@ const _ = "24px", V = (e, t) => {
|
|
|
868
868
|
}, [
|
|
869
869
|
e.title ? (p(), y("title", Ot, w(e.title), 1)) : N("", !0),
|
|
870
870
|
Mt
|
|
871
|
-
], 8,
|
|
871
|
+
], 8, Dt))
|
|
872
872
|
]),
|
|
873
873
|
_: 1
|
|
874
874
|
}, 8, ["aria-hidden", "style"]));
|
|
875
875
|
}
|
|
876
|
-
}), Ht = /* @__PURE__ */
|
|
876
|
+
}), Ht = /* @__PURE__ */ D(Ft, [["__scopeId", "data-v-6e7c19a8"]]), $t = (e) => (z("data-v-d71ed5b6"), e = e(), V(), e), Bt = ["aria-hidden"], Kt = {
|
|
877
877
|
key: 0,
|
|
878
878
|
"data-testid": "kui-icon-svg-title"
|
|
879
|
-
},
|
|
879
|
+
}, Ut = /* @__PURE__ */ $t(() => /* @__PURE__ */ x("path", {
|
|
880
880
|
d: "M4 17V14H20V17H4ZM4 10V7H20V10H4Z",
|
|
881
881
|
fill: "currentColor"
|
|
882
882
|
}, null, -1)), Pt = /* @__PURE__ */ k({
|
|
@@ -948,13 +948,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
948
948
|
lineHeight: "0",
|
|
949
949
|
width: r.value
|
|
950
950
|
}));
|
|
951
|
-
return (n, i) => (p(),
|
|
951
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
952
952
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
953
953
|
class: "kui-icon equal-icon",
|
|
954
954
|
"data-testid": "kui-icon-wrapper-equal-icon",
|
|
955
|
-
style:
|
|
955
|
+
style: A(a.value)
|
|
956
956
|
}, {
|
|
957
|
-
default:
|
|
957
|
+
default: q(() => [
|
|
958
958
|
(p(), y("svg", {
|
|
959
959
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
960
960
|
"data-testid": "kui-icon-svg-equal-icon",
|
|
@@ -965,17 +965,17 @@ const _ = "24px", V = (e, t) => {
|
|
|
965
965
|
width: "100%",
|
|
966
966
|
xmlns: "http://www.w3.org/2000/svg"
|
|
967
967
|
}, [
|
|
968
|
-
e.title ? (p(), y("title",
|
|
969
|
-
|
|
968
|
+
e.title ? (p(), y("title", Kt, w(e.title), 1)) : N("", !0),
|
|
969
|
+
Ut
|
|
970
970
|
], 8, Bt))
|
|
971
971
|
]),
|
|
972
972
|
_: 1
|
|
973
973
|
}, 8, ["aria-hidden", "style"]));
|
|
974
974
|
}
|
|
975
|
-
}),
|
|
975
|
+
}), Zt = /* @__PURE__ */ D(Pt, [["__scopeId", "data-v-d71ed5b6"]]), Xt = (e) => (z("data-v-32f3bfab"), e = e(), V(), e), Gt = ["aria-hidden"], jt = {
|
|
976
976
|
key: 0,
|
|
977
977
|
"data-testid": "kui-icon-svg-title"
|
|
978
|
-
}, Yt = /* @__PURE__ */
|
|
978
|
+
}, Yt = /* @__PURE__ */ Xt(() => /* @__PURE__ */ x("path", {
|
|
979
979
|
d: "M5 11V9H15V11H5Z",
|
|
980
980
|
fill: "currentColor"
|
|
981
981
|
}, null, -1)), Qt = /* @__PURE__ */ k({
|
|
@@ -1047,13 +1047,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1047
1047
|
lineHeight: "0",
|
|
1048
1048
|
width: r.value
|
|
1049
1049
|
}));
|
|
1050
|
-
return (n, i) => (p(),
|
|
1050
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1051
1051
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1052
1052
|
class: "kui-icon indeterminate-small-icon",
|
|
1053
1053
|
"data-testid": "kui-icon-wrapper-indeterminate-small-icon",
|
|
1054
|
-
style:
|
|
1054
|
+
style: A(a.value)
|
|
1055
1055
|
}, {
|
|
1056
|
-
default:
|
|
1056
|
+
default: q(() => [
|
|
1057
1057
|
(p(), y("svg", {
|
|
1058
1058
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1059
1059
|
"data-testid": "kui-icon-svg-indeterminate-small-icon",
|
|
@@ -1066,12 +1066,12 @@ const _ = "24px", V = (e, t) => {
|
|
|
1066
1066
|
}, [
|
|
1067
1067
|
e.title ? (p(), y("title", jt, w(e.title), 1)) : N("", !0),
|
|
1068
1068
|
Yt
|
|
1069
|
-
], 8,
|
|
1069
|
+
], 8, Gt))
|
|
1070
1070
|
]),
|
|
1071
1071
|
_: 1
|
|
1072
1072
|
}, 8, ["aria-hidden", "style"]));
|
|
1073
1073
|
}
|
|
1074
|
-
}), Fe = /* @__PURE__ */
|
|
1074
|
+
}), Fe = /* @__PURE__ */ D(Qt, [["__scopeId", "data-v-32f3bfab"]]), Wt = (e) => (z("data-v-f641d33a"), e = e(), V(), e), Jt = ["aria-hidden"], er = {
|
|
1075
1075
|
key: 0,
|
|
1076
1076
|
"data-testid": "kui-icon-svg-title"
|
|
1077
1077
|
}, tr = /* @__PURE__ */ Wt(() => /* @__PURE__ */ x("path", {
|
|
@@ -1146,13 +1146,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1146
1146
|
lineHeight: "0",
|
|
1147
1147
|
width: r.value
|
|
1148
1148
|
}));
|
|
1149
|
-
return (n, i) => (p(),
|
|
1149
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1150
1150
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1151
1151
|
class: "kui-icon info-icon",
|
|
1152
1152
|
"data-testid": "kui-icon-wrapper-info-icon",
|
|
1153
|
-
style:
|
|
1153
|
+
style: A(a.value)
|
|
1154
1154
|
}, {
|
|
1155
|
-
default:
|
|
1155
|
+
default: q(() => [
|
|
1156
1156
|
(p(), y("svg", {
|
|
1157
1157
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1158
1158
|
"data-testid": "kui-icon-svg-info-icon",
|
|
@@ -1170,7 +1170,7 @@ const _ = "24px", V = (e, t) => {
|
|
|
1170
1170
|
_: 1
|
|
1171
1171
|
}, 8, ["aria-hidden", "style"]));
|
|
1172
1172
|
}
|
|
1173
|
-
}), ir = /* @__PURE__ */
|
|
1173
|
+
}), ir = /* @__PURE__ */ D(rr, [["__scopeId", "data-v-f641d33a"]]), nr = (e) => (z("data-v-ff64c8af"), e = e(), V(), e), ar = ["aria-hidden"], or = {
|
|
1174
1174
|
key: 0,
|
|
1175
1175
|
"data-testid": "kui-icon-svg-title"
|
|
1176
1176
|
}, sr = /* @__PURE__ */ nr(() => /* @__PURE__ */ x("path", {
|
|
@@ -1245,13 +1245,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1245
1245
|
lineHeight: "0",
|
|
1246
1246
|
width: r.value
|
|
1247
1247
|
}));
|
|
1248
|
-
return (n, i) => (p(),
|
|
1248
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1249
1249
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1250
1250
|
class: "kui-icon response-icon",
|
|
1251
1251
|
"data-testid": "kui-icon-wrapper-response-icon",
|
|
1252
|
-
style:
|
|
1252
|
+
style: A(a.value)
|
|
1253
1253
|
}, {
|
|
1254
|
-
default:
|
|
1254
|
+
default: q(() => [
|
|
1255
1255
|
(p(), y("svg", {
|
|
1256
1256
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1257
1257
|
"data-testid": "kui-icon-svg-response-icon",
|
|
@@ -1269,7 +1269,7 @@ const _ = "24px", V = (e, t) => {
|
|
|
1269
1269
|
_: 1
|
|
1270
1270
|
}, 8, ["aria-hidden", "style"]));
|
|
1271
1271
|
}
|
|
1272
|
-
}), ur = /* @__PURE__ */
|
|
1272
|
+
}), ur = /* @__PURE__ */ D(lr, [["__scopeId", "data-v-ff64c8af"]]), dr = (e) => (z("data-v-19d79ba8"), e = e(), V(), e), cr = ["aria-hidden"], fr = {
|
|
1273
1273
|
key: 0,
|
|
1274
1274
|
"data-testid": "kui-icon-svg-title"
|
|
1275
1275
|
}, vr = /* @__PURE__ */ dr(() => /* @__PURE__ */ x("path", {
|
|
@@ -1344,13 +1344,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1344
1344
|
lineHeight: "0",
|
|
1345
1345
|
width: r.value
|
|
1346
1346
|
}));
|
|
1347
|
-
return (n, i) => (p(),
|
|
1347
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1348
1348
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1349
1349
|
class: "kui-icon trend-down-icon",
|
|
1350
1350
|
"data-testid": "kui-icon-wrapper-trend-down-icon",
|
|
1351
|
-
style:
|
|
1351
|
+
style: A(a.value)
|
|
1352
1352
|
}, {
|
|
1353
|
-
default:
|
|
1353
|
+
default: q(() => [
|
|
1354
1354
|
(p(), y("svg", {
|
|
1355
1355
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1356
1356
|
"data-testid": "kui-icon-svg-trend-down-icon",
|
|
@@ -1368,13 +1368,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1368
1368
|
_: 1
|
|
1369
1369
|
}, 8, ["aria-hidden", "style"]));
|
|
1370
1370
|
}
|
|
1371
|
-
}), gr = /* @__PURE__ */
|
|
1371
|
+
}), gr = /* @__PURE__ */ D(pr, [["__scopeId", "data-v-19d79ba8"]]), yr = (e) => (z("data-v-d4a4b583"), e = e(), V(), e), mr = ["aria-hidden"], hr = {
|
|
1372
1372
|
key: 0,
|
|
1373
1373
|
"data-testid": "kui-icon-svg-title"
|
|
1374
1374
|
}, Cr = /* @__PURE__ */ yr(() => /* @__PURE__ */ x("path", {
|
|
1375
1375
|
d: "M3.4 18L2 16.6L9.4 9.15L13.4 13.15L18.6 8H16V6H22V12H20V9.4L13.4 16L9.4 12L3.4 18Z",
|
|
1376
1376
|
fill: "currentColor"
|
|
1377
|
-
}, null, -1)),
|
|
1377
|
+
}, null, -1)), br = /* @__PURE__ */ k({
|
|
1378
1378
|
__name: "TrendUpIcon",
|
|
1379
1379
|
props: {
|
|
1380
1380
|
/** The accessibility text provided to screen readers */
|
|
@@ -1443,13 +1443,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1443
1443
|
lineHeight: "0",
|
|
1444
1444
|
width: r.value
|
|
1445
1445
|
}));
|
|
1446
|
-
return (n, i) => (p(),
|
|
1446
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1447
1447
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1448
1448
|
class: "kui-icon trend-up-icon",
|
|
1449
1449
|
"data-testid": "kui-icon-wrapper-trend-up-icon",
|
|
1450
|
-
style:
|
|
1450
|
+
style: A(a.value)
|
|
1451
1451
|
}, {
|
|
1452
|
-
default:
|
|
1452
|
+
default: q(() => [
|
|
1453
1453
|
(p(), y("svg", {
|
|
1454
1454
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1455
1455
|
"data-testid": "kui-icon-svg-trend-up-icon",
|
|
@@ -1467,7 +1467,7 @@ const _ = "24px", V = (e, t) => {
|
|
|
1467
1467
|
_: 1
|
|
1468
1468
|
}, 8, ["aria-hidden", "style"]));
|
|
1469
1469
|
}
|
|
1470
|
-
}),
|
|
1470
|
+
}), Sr = /* @__PURE__ */ D(br, [["__scopeId", "data-v-d4a4b583"]]), _r = (e) => (z("data-v-037898c7"), e = e(), V(), e), wr = ["aria-hidden"], Rr = {
|
|
1471
1471
|
key: 0,
|
|
1472
1472
|
"data-testid": "kui-icon-svg-title"
|
|
1473
1473
|
}, Nr = /* @__PURE__ */ _r(() => /* @__PURE__ */ x("path", {
|
|
@@ -1542,13 +1542,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1542
1542
|
lineHeight: "0",
|
|
1543
1543
|
width: r.value
|
|
1544
1544
|
}));
|
|
1545
|
-
return (n, i) => (p(),
|
|
1545
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1546
1546
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1547
1547
|
class: "kui-icon vitals-icon",
|
|
1548
1548
|
"data-testid": "kui-icon-wrapper-vitals-icon",
|
|
1549
|
-
style:
|
|
1549
|
+
style: A(a.value)
|
|
1550
1550
|
}, {
|
|
1551
|
-
default:
|
|
1551
|
+
default: q(() => [
|
|
1552
1552
|
(p(), y("svg", {
|
|
1553
1553
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1554
1554
|
"data-testid": "kui-icon-svg-vitals-icon",
|
|
@@ -1566,13 +1566,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1566
1566
|
_: 1
|
|
1567
1567
|
}, 8, ["aria-hidden", "style"]));
|
|
1568
1568
|
}
|
|
1569
|
-
}),
|
|
1569
|
+
}), Er = /* @__PURE__ */ D(Tr, [["__scopeId", "data-v-037898c7"]]), Ir = (e) => (z("data-v-5c520bd5"), e = e(), V(), e), xr = ["aria-hidden"], kr = {
|
|
1570
1570
|
key: 0,
|
|
1571
1571
|
"data-testid": "kui-icon-svg-title"
|
|
1572
|
-
}, Lr = /* @__PURE__ */
|
|
1572
|
+
}, Lr = /* @__PURE__ */ Ir(() => /* @__PURE__ */ x("path", {
|
|
1573
1573
|
d: "M12.0001 22.025C11.7334 22.025 11.4793 21.975 11.2376 21.875C10.9959 21.775 10.7751 21.6333 10.5751 21.45L2.5501 13.425C2.36676 13.225 2.2251 13.0041 2.1251 12.7625C2.0251 12.5208 1.9751 12.2666 1.9751 12C1.9751 11.7333 2.0251 11.475 2.1251 11.225C2.2251 10.975 2.36676 10.7583 2.5501 10.575L10.5751 2.54998C10.7751 2.34998 10.9959 2.20414 11.2376 2.11248C11.4793 2.02081 11.7334 1.97498 12.0001 1.97498C12.2668 1.97498 12.5251 2.02081 12.7751 2.11248C13.0251 2.20414 13.2418 2.34998 13.4251 2.54998L21.4501 10.575C21.6501 10.7583 21.7959 10.975 21.8876 11.225C21.9793 11.475 22.0251 11.7333 22.0251 12C22.0251 12.2666 21.9793 12.5208 21.8876 12.7625C21.7959 13.0041 21.6501 13.225 21.4501 13.425L13.4251 21.45C13.2418 21.6333 13.0251 21.775 12.7751 21.875C12.5251 21.975 12.2668 22.025 12.0001 22.025ZM12.0001 20.025L20.0251 12L12.0001 3.97498L3.9751 12L12.0001 20.025ZM11.0001 13H13.0001V6.99998H11.0001V13ZM12.0001 16C12.2834 16 12.5209 15.9041 12.7126 15.7125C12.9043 15.5208 13.0001 15.2833 13.0001 15C13.0001 14.7166 12.9043 14.4791 12.7126 14.2875C12.5209 14.0958 12.2834 14 12.0001 14C11.7168 14 11.4793 14.0958 11.2876 14.2875C11.0959 14.4791 11.0001 14.7166 11.0001 15C11.0001 15.2833 11.0959 15.5208 11.2876 15.7125C11.4793 15.9041 11.7168 16 12.0001 16Z",
|
|
1574
1574
|
fill: "currentColor"
|
|
1575
|
-
}, null, -1)),
|
|
1575
|
+
}, null, -1)), qr = /* @__PURE__ */ k({
|
|
1576
1576
|
__name: "WarningOutlineIcon",
|
|
1577
1577
|
props: {
|
|
1578
1578
|
/** The accessibility text provided to screen readers */
|
|
@@ -1641,13 +1641,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1641
1641
|
lineHeight: "0",
|
|
1642
1642
|
width: r.value
|
|
1643
1643
|
}));
|
|
1644
|
-
return (n, i) => (p(),
|
|
1644
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1645
1645
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1646
1646
|
class: "kui-icon warning-outline-icon",
|
|
1647
1647
|
"data-testid": "kui-icon-wrapper-warning-outline-icon",
|
|
1648
|
-
style:
|
|
1648
|
+
style: A(a.value)
|
|
1649
1649
|
}, {
|
|
1650
|
-
default:
|
|
1650
|
+
default: q(() => [
|
|
1651
1651
|
(p(), y("svg", {
|
|
1652
1652
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1653
1653
|
"data-testid": "kui-icon-svg-warning-outline-icon",
|
|
@@ -1665,7 +1665,7 @@ const _ = "24px", V = (e, t) => {
|
|
|
1665
1665
|
_: 1
|
|
1666
1666
|
}, 8, ["aria-hidden", "style"]));
|
|
1667
1667
|
}
|
|
1668
|
-
}),
|
|
1668
|
+
}), Ar = /* @__PURE__ */ D(qr, [["__scopeId", "data-v-5c520bd5"]]), zr = (e) => (z("data-v-26958fb8"), e = e(), V(), e), Vr = ["aria-hidden"], Dr = {
|
|
1669
1669
|
key: 0,
|
|
1670
1670
|
"data-testid": "kui-icon-svg-title"
|
|
1671
1671
|
}, Or = /* @__PURE__ */ zr(() => /* @__PURE__ */ x("path", {
|
|
@@ -1740,13 +1740,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1740
1740
|
lineHeight: "0",
|
|
1741
1741
|
width: r.value
|
|
1742
1742
|
}));
|
|
1743
|
-
return (n, i) => (p(),
|
|
1743
|
+
return (n, i) => (p(), E(L(e.as), {
|
|
1744
1744
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1745
1745
|
class: "kui-icon warning-icon",
|
|
1746
1746
|
"data-testid": "kui-icon-wrapper-warning-icon",
|
|
1747
|
-
style:
|
|
1747
|
+
style: A(a.value)
|
|
1748
1748
|
}, {
|
|
1749
|
-
default:
|
|
1749
|
+
default: q(() => [
|
|
1750
1750
|
(p(), y("svg", {
|
|
1751
1751
|
"aria-hidden": e.decorative ? "true" : void 0,
|
|
1752
1752
|
"data-testid": "kui-icon-svg-warning-icon",
|
|
@@ -1757,20 +1757,20 @@ const _ = "24px", V = (e, t) => {
|
|
|
1757
1757
|
width: "100%",
|
|
1758
1758
|
xmlns: "http://www.w3.org/2000/svg"
|
|
1759
1759
|
}, [
|
|
1760
|
-
e.title ? (p(), y("title",
|
|
1760
|
+
e.title ? (p(), y("title", Dr, w(e.title), 1)) : N("", !0),
|
|
1761
1761
|
Or
|
|
1762
|
-
], 8,
|
|
1762
|
+
], 8, Vr))
|
|
1763
1763
|
]),
|
|
1764
1764
|
_: 1
|
|
1765
1765
|
}, 8, ["aria-hidden", "style"]));
|
|
1766
1766
|
}
|
|
1767
|
-
}), He = /* @__PURE__ */
|
|
1768
|
-
let a = !t || Number(e.toFixed(
|
|
1767
|
+
}), He = /* @__PURE__ */ D(Mr, [["__scopeId", "data-v-26958fb8"]]), ye = 2, Ee = ye + 2, Fr = (e, t, r = !1) => {
|
|
1768
|
+
let a = !t || Number(e.toFixed(Ee)) === 0 ? 0 : Number(e.toFixed(Ee)) > 0 ? 1 : -1;
|
|
1769
1769
|
return r && (a *= -1), a;
|
|
1770
|
-
}, Hr = (e, t, r) => t ? `${Math.abs(e * 100).toFixed(ye)}%` : r, $r = (e, t) => t === 0 ? 0 : e / t - 1, Br = (e, t = !1) => (t && (e *= -1), e > 0 ?
|
|
1770
|
+
}, Hr = (e, t, r) => t ? `${Math.abs(e * 100).toFixed(ye)}%` : r, $r = (e, t) => t === 0 ? 0 : e / t - 1, Br = (e, t = !1) => (t && (e *= -1), e > 0 ? Sr : e < 0 ? gr : Fe), Kr = "#ad000e", pe = "#6c7489", Ie = "#52596e", Ur = "#007d60", ee = "16px", Pr = "20px", Zr = { class: "metricscard" }, Xr = {
|
|
1771
1771
|
key: 0,
|
|
1772
1772
|
class: "metricscard-description"
|
|
1773
|
-
},
|
|
1773
|
+
}, Gr = { class: "metricscard-valuetrend" }, jr = {
|
|
1774
1774
|
key: 0,
|
|
1775
1775
|
class: "metricscard-error"
|
|
1776
1776
|
}, Yr = {
|
|
@@ -1852,44 +1852,44 @@ const _ = "24px", V = (e, t) => {
|
|
|
1852
1852
|
},
|
|
1853
1853
|
setup(e) {
|
|
1854
1854
|
const t = /* @__PURE__ */ new Map([
|
|
1855
|
-
[M.GENERIC_COUNT,
|
|
1855
|
+
[M.GENERIC_COUNT, Er],
|
|
1856
1856
|
[M.TRAFFIC, Ht],
|
|
1857
|
-
[M.ERROR_RATE,
|
|
1857
|
+
[M.ERROR_RATE, Ar],
|
|
1858
1858
|
[M.LATENCY, ur]
|
|
1859
1859
|
]), r = e, a = (f) => {
|
|
1860
1860
|
const c = {
|
|
1861
|
-
red: `var(--kong-ui-metric-card-trend-negative, ${
|
|
1862
|
-
green: `var(--kong-ui-metric-card-trend-positive, ${
|
|
1863
|
-
grey: `var(--kong-ui-metric-card-trend-neutral, ${
|
|
1861
|
+
red: `var(--kong-ui-metric-card-trend-negative, ${Kr})`,
|
|
1862
|
+
green: `var(--kong-ui-metric-card-trend-positive, ${Ur})`,
|
|
1863
|
+
grey: `var(--kong-ui-metric-card-trend-neutral, ${Ie})`
|
|
1864
1864
|
};
|
|
1865
1865
|
return f > 0 ? c.green : f < 0 ? c.red : c.grey;
|
|
1866
1866
|
}, n = (f) => f > 0 ? "positive" : f < 0 ? "negative" : "neutral", i = [F.Medium, F.Large].includes(r.cardSize), l = [F.Small].includes(r.cardSize);
|
|
1867
1867
|
return (f, c) => {
|
|
1868
|
-
const o =
|
|
1869
|
-
return p(), y("div",
|
|
1868
|
+
const o = qe("KTooltip");
|
|
1869
|
+
return p(), y("div", Zr, [
|
|
1870
1870
|
x("div", {
|
|
1871
1871
|
class: Y(["metricscard-title", e.cardSize])
|
|
1872
1872
|
}, [
|
|
1873
|
-
R(l) ? N("", !0) : (p(),
|
|
1873
|
+
R(l) ? N("", !0) : (p(), E(L(R(t).get(e.cardType)), {
|
|
1874
1874
|
key: 0,
|
|
1875
1875
|
class: "metricscard-icon",
|
|
1876
1876
|
color: R(pe),
|
|
1877
1877
|
size: R(ee)
|
|
1878
1878
|
}, null, 8, ["color", "size"])),
|
|
1879
|
-
(p(),
|
|
1880
|
-
default:
|
|
1881
|
-
|
|
1879
|
+
(p(), E(L(e.titleTag), null, {
|
|
1880
|
+
default: q(() => [
|
|
1881
|
+
Ae(w(e.title), 1)
|
|
1882
1882
|
]),
|
|
1883
1883
|
_: 1
|
|
1884
1884
|
})),
|
|
1885
|
-
e.tooltip ? (p(),
|
|
1885
|
+
e.tooltip ? (p(), E(o, {
|
|
1886
1886
|
key: 1,
|
|
1887
1887
|
class: "metricscard-tooltip",
|
|
1888
1888
|
placement: "right",
|
|
1889
1889
|
text: e.tooltip
|
|
1890
1890
|
}, {
|
|
1891
|
-
default:
|
|
1892
|
-
|
|
1891
|
+
default: q(() => [
|
|
1892
|
+
G(R(ir), {
|
|
1893
1893
|
color: R(pe),
|
|
1894
1894
|
size: R(ee)
|
|
1895
1895
|
}, null, 8, ["color", "size"])
|
|
@@ -1897,12 +1897,12 @@ const _ = "24px", V = (e, t) => {
|
|
|
1897
1897
|
_: 1
|
|
1898
1898
|
}, 8, ["text"])) : N("", !0)
|
|
1899
1899
|
], 2),
|
|
1900
|
-
e.description && R(i) ? (p(), y("div",
|
|
1900
|
+
e.description && R(i) ? (p(), y("div", Xr, [
|
|
1901
1901
|
x("span", null, w(e.description), 1)
|
|
1902
1902
|
])) : N("", !0),
|
|
1903
|
-
x("div",
|
|
1903
|
+
x("div", Gr, [
|
|
1904
1904
|
e.hasError ? (p(), y("div", jr, [
|
|
1905
|
-
|
|
1905
|
+
G(R(He), {
|
|
1906
1906
|
color: R(pe),
|
|
1907
1907
|
size: R(Pr)
|
|
1908
1908
|
}, null, 8, ["color", "size"]),
|
|
@@ -1917,13 +1917,13 @@ const _ = "24px", V = (e, t) => {
|
|
|
1917
1917
|
class: Y(["metricscard-trend-change", n(e.changePolarity)]),
|
|
1918
1918
|
"data-testid": "metric-trend-parent"
|
|
1919
1919
|
}, [
|
|
1920
|
-
e.changePolarity !== 0 ? (p(),
|
|
1920
|
+
e.changePolarity !== 0 ? (p(), E(L(e.trendIcon), {
|
|
1921
1921
|
key: 0,
|
|
1922
1922
|
color: a(e.changePolarity),
|
|
1923
1923
|
size: R(ee)
|
|
1924
|
-
}, null, 8, ["color", "size"])) : (p(),
|
|
1924
|
+
}, null, 8, ["color", "size"])) : (p(), E(R(Zt), {
|
|
1925
1925
|
key: 1,
|
|
1926
|
-
color: R(
|
|
1926
|
+
color: R(Ie),
|
|
1927
1927
|
size: R(ee)
|
|
1928
1928
|
}, null, 8, ["color", "size"])),
|
|
1929
1929
|
x("div", Qr, w(e.metricChange), 1)
|
|
@@ -1941,10 +1941,10 @@ const _ = "24px", V = (e, t) => {
|
|
|
1941
1941
|
return r;
|
|
1942
1942
|
}, ei = /* @__PURE__ */ me(Jr, [["__scopeId", "data-v-1b8a31a0"]]), ti = {}, ri = { class: "loading-tabs" };
|
|
1943
1943
|
function ii(e, t) {
|
|
1944
|
-
const r =
|
|
1944
|
+
const r = qe("KSkeletonBox");
|
|
1945
1945
|
return p(), y("div", ri, [
|
|
1946
|
-
|
|
1947
|
-
|
|
1946
|
+
G(r, { width: "100" }),
|
|
1947
|
+
G(r, { width: "75" })
|
|
1948
1948
|
]);
|
|
1949
1949
|
}
|
|
1950
1950
|
const ni = /* @__PURE__ */ me(ti, [["render", ii], ["__scopeId", "data-v-f7eb9c40"]]), ai = {
|
|
@@ -2020,18 +2020,18 @@ const ni = /* @__PURE__ */ me(ti, [["render", ii], ["__scopeId", "data-v-f7eb9c4
|
|
|
2020
2020
|
class: Y(["kong-ui-public-metric-card-container", e.cardSize])
|
|
2021
2021
|
}, [
|
|
2022
2022
|
t.containerTitle ? (p(), y("div", ai, [
|
|
2023
|
-
|
|
2023
|
+
Ae(w(t.containerTitle) + " ", 1),
|
|
2024
2024
|
t.containerDescription ? (p(), y("div", oi, w(t.containerDescription), 1)) : N("", !0)
|
|
2025
2025
|
])) : N("", !0),
|
|
2026
2026
|
r.value ? (p(), y("div", si, [
|
|
2027
|
-
|
|
2027
|
+
G(R(He), { class: "error-display-icon" }),
|
|
2028
2028
|
e.errorMessage ? (p(), y("div", li, w(e.errorMessage), 1)) : N("", !0)
|
|
2029
2029
|
])) : (p(), y("div", ui, [
|
|
2030
2030
|
(p(!0), y(_e, null, Ye(e.cards, (l, f) => (p(), y(_e, null, [
|
|
2031
|
-
e.loading ? (p(),
|
|
2031
|
+
e.loading ? (p(), E(ni, {
|
|
2032
2032
|
key: `skeleton-${f}`,
|
|
2033
2033
|
class: Y(e.cardSize === R(F).Small ? "loading-tabs-small" : "loading-tabs-large")
|
|
2034
|
-
}, null, 8, ["class"])) : (p(),
|
|
2034
|
+
}, null, 8, ["class"])) : (p(), E(ei, Qe({
|
|
2035
2035
|
key: f,
|
|
2036
2036
|
ref_for: !0
|
|
2037
2037
|
}, a(l), {
|
|
@@ -2060,7 +2060,7 @@ const ni = /* @__PURE__ */ me(ti, [["render", ii], ["__scopeId", "data-v-f7eb9c4
|
|
|
2060
2060
|
const t = e, r = ke(Oe);
|
|
2061
2061
|
if (!r)
|
|
2062
2062
|
throw new Error("MetricsConsumer must be nested inside a MetricsProvider instance.");
|
|
2063
|
-
const { traffic: a, latency: n } = r.data, { i18n: i } =
|
|
2063
|
+
const { traffic: a, latency: n } = r.data, { i18n: i } = U.useI18n(), l = U.useMetricCardBuilder({
|
|
2064
2064
|
cardType: M.TRAFFIC,
|
|
2065
2065
|
title: g(() => r.longCardTitles ? i.t("metricCard.long.traffic") : i.t("metricCard.short.traffic")),
|
|
2066
2066
|
record: a.mapped,
|
|
@@ -2069,21 +2069,21 @@ const ni = /* @__PURE__ */ me(ti, [["render", ii], ["__scopeId", "data-v-f7eb9c4
|
|
|
2069
2069
|
sumGroupedValues: Q,
|
|
2070
2070
|
trendRange: a.trendRange
|
|
2071
2071
|
}), f = (m) => `${m.toFixed(ye)}%`, c = g(() => {
|
|
2072
|
-
const m = a.mapped.value,
|
|
2072
|
+
const m = a.mapped.value, b = X(m, "current", t.lookupKey, we), T = X(m, "current", t.lookupKey, Q), S = b / T * 100 || 0, h = X(m, "previous", t.lookupKey, we), H = X(m, "previous", t.lookupKey, Q), I = h / H * 100 || 0;
|
|
2073
2073
|
return {
|
|
2074
2074
|
cardType: M.ERROR_RATE,
|
|
2075
2075
|
hasError: a.hasError.value,
|
|
2076
|
-
currentValue:
|
|
2077
|
-
previousValue:
|
|
2076
|
+
currentValue: S,
|
|
2077
|
+
previousValue: I,
|
|
2078
2078
|
formatValueFn: f,
|
|
2079
2079
|
title: r.longCardTitles ? i.t("metricCard.long.errorRate") : i.t("metricCard.short.errorRate"),
|
|
2080
2080
|
increaseIsBad: !0,
|
|
2081
2081
|
trendRange: a.trendRange.value
|
|
2082
2082
|
};
|
|
2083
|
-
}), o = (m) => `${m}ms`, s =
|
|
2083
|
+
}), o = (m) => `${m}ms`, s = U.useMetricCardBuilder({
|
|
2084
2084
|
cardType: M.LATENCY,
|
|
2085
2085
|
title: g(() => {
|
|
2086
|
-
const { longCardTitles: m, averageLatencies:
|
|
2086
|
+
const { longCardTitles: m, averageLatencies: b } = r, T = b.value ? "averageLatency" : "p99Latency";
|
|
2087
2087
|
return m ? i.t(`metricCard.long.${T}`) : i.t(`metricCard.short.${T}`);
|
|
2088
2088
|
}),
|
|
2089
2089
|
hasError: n.hasError,
|
|
@@ -2110,11 +2110,11 @@ const ni = /* @__PURE__ */ me(ti, [["render", ii], ["__scopeId", "data-v-f7eb9c4
|
|
|
2110
2110
|
errorRateFormatted: f(c.value.currentValue),
|
|
2111
2111
|
latencyFormatted: o(s.value.currentValue)
|
|
2112
2112
|
}));
|
|
2113
|
-
return (m,
|
|
2114
|
-
|
|
2113
|
+
return (m, b) => Le(m.$slots, "default", { cardValues: C.value }, () => [
|
|
2114
|
+
G(ci, We(Je(v.value)), null, 16)
|
|
2115
2115
|
]);
|
|
2116
2116
|
}
|
|
2117
|
-
}), te = (e) => new Date(e),
|
|
2117
|
+
}), te = (e) => new Date(e), bi = (e, t) => {
|
|
2118
2118
|
const r = e.body;
|
|
2119
2119
|
e.reply({
|
|
2120
2120
|
statusCode: 200,
|
|
@@ -2125,21 +2125,21 @@ const ni = /* @__PURE__ */ me(ti, [["render", ii], ["__scopeId", "data-v-f7eb9c4
|
|
|
2125
2125
|
const r = ie.get(ne.ONE_DAY), a = e.granularity === "trend" ? new tt(r) : new rt(r), n = a.endMs(), i = a.startMs(), l = a.granularityMs(), f = e.granularity === "trend" ? 2 : 1;
|
|
2126
2126
|
if ((e.dimensions ?? []).length > 2)
|
|
2127
2127
|
throw new Error(`Explore only supports 0-2 dimensions; got: ${JSON.stringify(e.dimensions)}`);
|
|
2128
|
-
const c = (e.dimensions ?? []).find((
|
|
2129
|
-
for (let
|
|
2128
|
+
const c = (e.dimensions ?? []).find((b) => b !== "time"), o = (t == null ? void 0 : t.dimensionNames) ?? [], s = Math.max(o.length, 1), u = e.metrics || [], d = [];
|
|
2129
|
+
for (let b = 0; b < f; b++)
|
|
2130
2130
|
for (let T = 0; T < s; T++) {
|
|
2131
|
-
const
|
|
2131
|
+
const S = c ? { [c]: o[T] } : {};
|
|
2132
2132
|
(C = e.dimensions) != null && C.includes("status_code_grouped") ? Q.forEach((h) => {
|
|
2133
|
-
const H = u.reduce((
|
|
2133
|
+
const H = u.reduce((I, B) => (I[B] = (f - b) * 1e3 + 100 * T + 1, I), { ...S, status_code_grouped: h });
|
|
2134
2134
|
d.push({
|
|
2135
2135
|
version: "v1",
|
|
2136
|
-
timestamp:
|
|
2136
|
+
timestamp: b === 0 ? te(i).toISOString() : te(i + l).toISOString(),
|
|
2137
2137
|
event: H
|
|
2138
2138
|
});
|
|
2139
2139
|
}) : d.push({
|
|
2140
2140
|
version: "v1",
|
|
2141
|
-
timestamp:
|
|
2142
|
-
event: u.reduce((h, H) => (h[H] = (f -
|
|
2141
|
+
timestamp: b === 0 ? te(i).toISOString() : te(i + l).toISOString(),
|
|
2142
|
+
event: u.reduce((h, H) => (h[H] = (f - b) * 1e3 + 100 * T + 1, h), { ...S })
|
|
2143
2143
|
});
|
|
2144
2144
|
}
|
|
2145
2145
|
const v = {
|
|
@@ -2170,5 +2170,5 @@ export {
|
|
|
2170
2170
|
we as STATUS_CODES_FAILED,
|
|
2171
2171
|
mi as STATUS_CODES_SUCCESS,
|
|
2172
2172
|
fi as mockExploreResponse,
|
|
2173
|
-
|
|
2173
|
+
bi as mockExploreResponseFromCypress
|
|
2174
2174
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(v,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/analytics-utilities"),require("@kong-ui-public/i18n"),require("@kong-ui-public/analytics-config-store")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/analytics-utilities","@kong-ui-public/i18n","@kong-ui-public/analytics-config-store"],t):(v=typeof globalThis<"u"?globalThis:v||self,t(v["kong-ui-public-vitals-metric-provider"]={},v.Vue,v["kong-ui-public-analytics-utilities"],v["kong-ui-public-i18n"],v["kong-ui-public-analytics-config-store"]))})(this,function(v,t,_,re,_e){"use strict";const Ne={general:{notAvailable:"N/A"},metricCard:{short:{traffic:"Requests",errorRate:"Error Rate",averageLatency:"Average Latency",p99Latency:"P99 Latency"},long:{traffic:"Number of Requests",errorRate:"Average Error Rate",averageLatency:"Average Latency",p99Latency:"P99 Latency"}},trendRange:{custom:"vs previous {numDays, plural, =1 {day} other {# days}}","15m":"vs previous 15 minutes","1h":"vs previous hour","6h":"vs previous 6 hours","12h":"vs previous 12 hours","24h":"vs previous 24 hours","7d":"vs previous 7 days","30d":"vs previous 30 days",current_week:"vs previous week",current_month:"vs previous month",current_quarter:"vs previous quarter",previous_week:"vs previous time period",previous_month:"vs previous time period",previous_quarter:"vs previous quarter"}};function we(){const e=re.createI18n("en-us",Ne);return{i18n:e,i18nT:re.i18nTComponent(e)}}const ie=2,L=["1XX","2XX","3XX","4XX","5XX"],P=["4XX","5XX"],Re=["1XX","2XX","3XX"],ne=30*1e3,ae="analytics-query-provider";var oe=(e=>(e.VALIDATING="VALIDATING",e.VALIDATING_HAS_DATA="VALIDATING_HAS_DATA",e.PENDING="PENDING",e.SUCCESS="SUCCESS",e.SUCCESS_HAS_DATA="SUCCESS_HAS_DATA",e.ERROR="ERROR",e.STALE_IF_ERROR="STALE_IF_ERROR",e))(oe||{});const Te=e=>{var r,i,o,a,n;return e?!!((r=Object.keys(e))!=null&&r.length||(i=e.data)!=null&&i.length||(a=(o=e.data)==null?void 0:o.data)!=null&&a.length||!((n=e.data)!=null&&n.data)&&typeof e.data=="object"&&Object.keys(e==null?void 0:e.data).length):!1};function Ie(e=t.ref({}),r,i,o=Te){const a=t.ref("PENDING");return t.watchEffect(()=>{const n=o(e.value);if(e.value&&n&&i.value){a.value="VALIDATING_HAS_DATA";return}if(e.value&&i.value){a.value="VALIDATING";return}if(e.value&&r.value){a.value="STALE_IF_ERROR";return}if(e.value===void 0&&!r.value){a.value="PENDING";return}if(e.value&&!r.value&&n){a.value="SUCCESS_HAS_DATA";return}if(e.value&&!r.value){a.value="SUCCESS";return}e.value===void 0&&r&&(a.value="ERROR")}),{state:a,swrvState:oe}}const I=Symbol("default"),K="status_code_grouped",le=(e,r,i,o,a)=>{e[r][i]||(e[r][i]={}),e[r][i][o]=a};function Be(e,r){var p;const i=((p=e.meta.metric_names)==null?void 0:p[0])||"",o=e.meta.start_ms,a=Object.keys(e.meta.display||{}),n=!!a.find(f=>f===K),c=a.find(f=>f!==K);return a.length>2||a.length>1&&!n?(console.error("Don't know how to work with provided dimensions:",a),{previous:{[I]:{[I]:0}},current:{[I]:{[I]:0}}}):e.data.reduce((f,l)=>{const s=l.event[i],d=c?l.event[c]:I,u=n?l.event[K]:I;return new Date(l.timestamp).getTime()===o&&r?le(f,"previous",d,u,s):le(f,"current",d,u,s),f},{previous:{},current:{}})}function Ve(e){e.queryReady===void 0&&(e.queryReady=t.computed(()=>!0));const{i18n:r}=V.useI18n(),i=t.computed(()=>{var d,u;return{metrics:e.metrics.value,dimensions:[...(d=e.dimensions)!=null&&d.length?[...e.dimensions]:[],...e.withTrend.value?["time"]:[]],granularity:e.withTrend.value?"trend":void 0,...(u=e.filter.value)!=null&&u.length?{filters:e.filter.value}:{},time_range:e.timeframe.value.v4Query(e.tz.value)}}),o=t.computed(()=>{var u,m,h,g;if(!((u=e.queryReady)!=null&&u.value))return null;const d=(m=e.filter)!=null&&m.value?JSON.stringify(e.filter.value):"";return`metric-fetcher-${e.timeframe.value.cacheKey()}-${(h=e.dimensions)==null?void 0:h.join("-")}-${(g=e.metrics.value)==null?void 0:g.join("-")}-${d}`}),{response:a,error:n,isValidating:c}=V.useRequest(()=>o.value,()=>e.queryFn(i.value,e.abortController??new AbortController),{refreshInterval:e.refreshInterval,revalidateOnFocus:!1,errorRetryCount:ie}),{state:p,swrvState:f}=Ie(a,n,c),l=t.computed(()=>{var d,u,m,h,g,C,E;return!((u=(d=a.value)==null?void 0:d.data)!=null&&u.length)||!((h=(m=a.value)==null?void 0:m.meta)!=null&&h.display)||!((E=(C=(g=a.value)==null?void 0:g.meta)==null?void 0:C.metric_names)!=null&&E.length)?{current:{},previous:{}}:Be(a.value,e.withTrend.value)}),s=t.computed(()=>{var d,u,m;if(e.timeframe.value.key==="custom"){if(!((u=(d=a.value)==null?void 0:d.meta)!=null&&u.start_ms))return"";const{start_ms:h,end_ms:g}=a.value.meta;let C=(g-h)/(1e3*60*60*24);return e.withTrend.value&&(C/=2),r.t("trendRange.custom",{numDays:Math.round(C)})}else return e.withTrend.value?r.t(`trendRange.${e.timeframe.value.key}`):r.t(`trendRange.${(m=_.TimePeriods.get(_.TimeframeKeys.ONE_DAY))==null?void 0:m.key}`)});return{isLoading:t.computed(()=>f.PENDING===p.value),hasError:t.computed(()=>f.ERROR===p.value),raw:a,mapped:l,trendRange:s}}const A=(e,r,i=I,o)=>(o??[I]).reduce((n,c)=>{const p=e[r][i];return p?n+(p[c]||0):n},0);function xe(e){const{cardType:r,title:i,description:o,record:a,hasError:n,increaseIsBad:c,formatValueFn:p,trendRange:f}=e;return t.computed(()=>{let l=0,s=0;if(a!=null&&a.value)try{l=A(a.value,"current",e.lookupKey,e.sumGroupedValues),s=A(a.value,"previous",e.lookupKey,e.sumGroupedValues)}catch(d){console.error("Metric card data doesn't have the expected structure:",d)}return{cardType:r,hasError:n.value,currentValue:l,previousValue:s,title:i.value,description:o,increaseIsBad:!!c,formatValueFn:p,trendRange:f==null?void 0:f.value}})}var U=new WeakMap,se=0;function De(e){if(!e.length)return"";for(var r="arg",i=0;i<e.length;++i){var o=void 0;e[i]===null||typeof e[i]!="object"&&typeof e[i]!="function"?typeof e[i]=="string"?o='"'+e[i]+'"':o=String(e[i]):U.has(e[i])?o=U.get(e[i]):(o=se,U.set(e[i],se++)),r+="@"+o}return r}function Le(e){if(typeof e=="function")try{e=e()}catch{e=""}return Array.isArray(e)?e=De(e):e=String(e||""),e}var G=function(){function e(r){r===void 0&&(r=0),this.items=new Map,this.ttl=r}return e.prototype.serializeKey=function(r){return Le(r)},e.prototype.get=function(r){var i=this.serializeKey(r);return this.items.get(i)},e.prototype.set=function(r,i,o){var a=this.serializeKey(r),n=o||this.ttl,c=Date.now(),p={data:i,createdAt:c,expiresAt:n?c+n:1/0};this.dispatchExpire(n,p,a),this.items.set(a,p)},e.prototype.dispatchExpire=function(r,i,o){var a=this;r&&setTimeout(function(){var n=Date.now(),c=n>=i.expiresAt;c&&a.delete(o)},r)},e.prototype.delete=function(r){this.items.delete(r)},e}();function Ae(){return typeof navigator.onLine<"u"?navigator.onLine:!0}function ze(){return typeof document<"u"&&typeof document.visibilityState<"u"?document.visibilityState!=="hidden":!0}var qe=function(e){return fetch(e).then(function(r){return r.json()})};const Z={isOnline:Ae,isDocumentVisible:ze,fetcher:qe};var T=function(){return T=Object.assign||function(e){for(var r,i=1,o=arguments.length;i<o;i++){r=arguments[i];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},T.apply(this,arguments)},z=function(e,r,i,o){function a(n){return n instanceof i?n:new i(function(c){c(n)})}return new(i||(i=Promise))(function(n,c){function p(s){try{l(o.next(s))}catch(d){c(d)}}function f(s){try{l(o.throw(s))}catch(d){c(d)}}function l(s){s.done?n(s.value):a(s.value).then(p,f)}l((o=o.apply(e,r||[])).next())})},q=function(e,r){var i={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},o,a,n,c;return c={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function p(l){return function(s){return f([l,s])}}function f(l){if(o)throw new TypeError("Generator is already executing.");for(;i;)try{if(o=1,a&&(n=l[0]&2?a.return:l[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,l[1])).done)return n;switch(a=0,n&&(l=[l[0]&2,n.value]),l[0]){case 0:case 1:n=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,a=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(n=i.trys,!(n=n.length>0&&n[n.length-1])&&(l[0]===6||l[0]===2)){i=0;continue}if(l[0]===3&&(!n||l[1]>n[0]&&l[1]<n[3])){i.label=l[1];break}if(l[0]===6&&i.label<n[1]){i.label=n[1],n=l;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(l);break}n[2]&&i.ops.pop(),i.trys.pop();continue}l=r.call(e,i)}catch(s){l=[6,s],a=0}finally{o=n=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}},Oe=function(e,r){var i=typeof Symbol=="function"&&e[Symbol.iterator];if(!i)return e;var o=i.call(e),a,n=[],c;try{for(;(r===void 0||r-- >0)&&!(a=o.next()).done;)n.push(a.value)}catch(p){c={error:p}}finally{try{a&&!a.done&&(i=o.return)&&i.call(o)}finally{if(c)throw c.error}}return n},Me=function(e,r,i){if(i||arguments.length===2)for(var o=0,a=r.length,n;o<a;o++)(n||!(o in r))&&(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))},ce=new G,M=new G,j=new G,de={cache:ce,refreshInterval:0,ttl:0,serverTTL:1e3,dedupingInterval:2e3,revalidateOnFocus:!0,revalidateDebounce:0,shouldRetryOnError:!0,errorRetryInterval:5e3,errorRetryCount:5,fetcher:Z.fetcher,isOnline:Z.isOnline,isDocumentVisible:Z.isDocumentVisible};function Fe(e,r,i){var o=M.get(e);if(o)o.data.push(r);else{var a=5e3;M.set(e,[r],i>0?i+a:i)}}function He(e,r,i){if(i.isDocumentVisible()&&!(i.errorRetryCount!==void 0&&r>i.errorRetryCount)){var o=Math.min(r||0,i.errorRetryCount),a=o*i.errorRetryInterval;setTimeout(function(){e(null,{errorRetryCount:o+1,shouldRetryOnError:!0})},a)}}var ue=function(e,r,i,o){return i===void 0&&(i=ce),o===void 0&&(o=de.ttl),z(void 0,void 0,void 0,function(){var a,n,c,p,f,l,s;return q(this,function(d){switch(d.label){case 0:if(!Pe(r))return[3,5];d.label=1;case 1:return d.trys.push([1,3,,4]),[4,r];case 2:return a=d.sent(),[3,4];case 3:return p=d.sent(),n=p,[3,4];case 4:return[3,6];case 5:a=r,d.label=6;case 6:if(c=!1,f={data:a,error:n,isValidating:c},typeof a<"u")try{i.set(e,f,o)}catch(u){console.error("swrv(mutate): failed to set cache",u)}return l=M.get(e),l&&l.data.length&&(s=l.data.filter(function(u){return u.key===e}),s.forEach(function(u,m){typeof f.data<"u"&&(u.data=f.data),u.error=f.error,u.isValidating=f.isValidating;var h=m===s.length-1;h||delete s[m]}),s=s.filter(Boolean)),[2,f]}})})};function $e(){for(var e=this,r=[],i=0;i<arguments.length;i++)r[i]=arguments[i];var o,a,n=T({},de),c=!1,p=!1,f=t.getCurrentInstance(),l=(f==null?void 0:f.proxy)||f;if(!l)return console.error("Could not get current instance, check to make sure that `useSwrv` is declared in the top level of the setup function."),null;var s=(l==null?void 0:l.$isServer)||!1;r.length>=1&&(o=r[0]),r.length>=2&&(a=r[1]),r.length>2&&(n=T(T({},n),r[2]));var d=s?n.serverTTL:n.ttl,u=typeof o=="function"?o:t.ref(o);typeof a>"u"&&(a=n.fetcher);var m=null;m||(m=t.reactive({data:void 0,error:void 0,isValidating:!0,key:null}));var h=function(S,y){return z(e,void 0,void 0,function(){var B,b,x,O,W,ve,J,ke=this;return q(this,function(ee){switch(ee.label){case 0:return B=m.data===void 0,b=u.value,b?(x=n.cache.get(b),O=x&&x.data,m.isValidating=!0,O&&(m.data=O.data,m.error=O.error),W=S||a,!W||!n.isDocumentVisible()&&!B||(y==null?void 0:y.forceRevalidate)!==void 0&&!(y!=null&&y.forceRevalidate)?(m.isValidating=!1,[2]):x&&(ve=!!(Date.now()-x.createdAt>=n.dedupingInterval||y!=null&&y.forceRevalidate),!ve)?(m.isValidating=!1,[2]):(J=function(){return z(ke,void 0,void 0,function(){var D,Ee,te,be;return q(this,function($){switch($.label){case 0:return D=j.get(b),D?[3,2]:(Ee=Array.isArray(b)?b:[b],te=W.apply(void 0,Me([],Oe(Ee),!1)),j.set(b,te,n.dedupingInterval),[4,ue(b,te,n.cache,d)]);case 1:return $.sent(),[3,4];case 2:return[4,ue(b,D.data,n.cache,d)];case 3:$.sent(),$.label=4;case 4:return m.isValidating=!1,j.delete(b),m.error!==void 0&&(be=!c&&n.shouldRetryOnError&&(y?y.shouldRetryOnError:!0),be&&He(h,y?y.errorRetryCount:1,n)),[2]}})})},O&&n.revalidateDebounce?(setTimeout(function(){return z(ke,void 0,void 0,function(){return q(this,function(D){switch(D.label){case 0:return c?[3,2]:[4,J()];case 1:D.sent(),D.label=2;case 2:return[2]}})})},n.revalidateDebounce),[3,3]):[3,1])):[2];case 1:return[4,J()];case 2:ee.sent(),ee.label=3;case 3:return[2]}})})},g=function(){return z(e,void 0,void 0,function(){return q(this,function(S){return[2,h(null,{shouldRetryOnError:!1})]})})},C=null;t.onMounted(function(){var S=function(){return z(e,void 0,void 0,function(){return q(this,function(y){switch(y.label){case 0:return!m.error&&n.isOnline()?[4,h()]:[3,2];case 1:return y.sent(),[3,3];case 2:C&&clearTimeout(C),y.label=3;case 3:return n.refreshInterval&&!c&&(C=setTimeout(S,n.refreshInterval)),[2]}})})};n.refreshInterval&&(C=setTimeout(S,n.refreshInterval)),n.revalidateOnFocus&&(document.addEventListener("visibilitychange",g,!1),window.addEventListener("focus",g,!1))}),t.onUnmounted(function(){c=!0,C&&clearTimeout(C),n.revalidateOnFocus&&(document.removeEventListener("visibilitychange",g,!1),window.removeEventListener("focus",g,!1));var S=M.get(u.value);S&&(S.data=S.data.filter(function(y){return y!==m}))});try{t.watch(u,function(S){t.isReadonly(u)||(u.value=S),m.key=S,m.isValidating=!!S,Fe(u.value,m,d),!s&&!p&&u.value&&h(),p=!1},{immediate:!0})}catch{}var E=T(T({},t.toRefs(m)),{mutate:function(S,y){return h(S,T(T({},y),{forceRevalidate:!0}))}});return E}function Pe(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}function Ke(e,r,i){const{data:o,error:a,isValidating:n,mutate:c}=$e(e,r,{revalidateDebounce:500,revalidateOnFocus:!1,dedupingInterval:100,...i});return{data:t.computed(()=>o.value),response:o,error:a,isValidating:n,revalidate:c}}const V={useI18n:we,useMetricCardBuilder:xe,useMetricFetcher:Ve,useRequest:Ke},fe=Symbol("METRICS_PROVIDER_KEY"),Ue=e=>{const{dimension:r,dimensionFilterValue:i,additionalFilter:o,queryReady:a,timeframe:n,tz:c,hasTrendAccess:p,refreshInterval:f,abortController:l,queryFn:s,averageLatencies:d}=e;if(i&&!r)throw new Error("Must provide a dimension if filtering by a value");const u=!!(r&&i),m=!!(r&&!i),h=t.computed(()=>{const y=[];return u&&y.push({dimension:r,type:"in",values:[i]}),o.value&&y.push(...o.value),y}),g={metrics:t.ref(["request_count"]),dimensions:[...r&&!u?[r]:[],"status_code_grouped"],filter:h,queryReady:a,timeframe:n,tz:c,withTrend:t.computed(()=>p.value&&!m),refreshInterval:f,queryFn:s,abortController:l},C={metrics:t.computed(()=>[d.value?"response_latency_average":"response_latency_p99"]),...r&&!u?{dimensions:[r]}:{},filter:h,queryReady:a,timeframe:n,tz:c,withTrend:t.computed(()=>p.value&&!m),refreshInterval:f,queryFn:s,abortController:l},E=V.useMetricFetcher(g),S=V.useMetricFetcher(C);return{trafficData:E,latencyData:S}},Ge=t.defineComponent({__name:"MetricsProvider",props:{maxTimeframe:{default:_.TimeframeKeys.THIRTY_DAY},overrideTimeframe:{default:void 0},tz:{default:void 0},dimension:{default:void 0},filterValue:{default:void 0},additionalFilter:{default:void 0},queryReady:{type:Boolean,default:!0},refreshInterval:{default:ne},longCardTitles:{type:Boolean,default:!1},containerTitle:{default:void 0},description:{default:void 0},percentileLatency:{type:Boolean,default:void 0},abortController:{default:void 0}},setup(e){const r=e;if(r.dimension&&_.queryableExploreDimensions.findIndex(m=>m===r.dimension)===-1)throw new Error(`Attempted to use MetricsProvider with an invalid dimension: ${r.dimension}`);const i=t.inject(ae);let o,a;i?(o=i.queryFn,a=i.evaluateFeatureFlagFn):(console.warn("Analytics dashboards require a query bridge supplied via provide / inject."),console.warn("Please ensure your application has a query bridge provided under the key 'analytics-query-provider', as described in"),console.warn("https://github.com/Kong/public-ui-components/blob/main/packages/analytics/analytics-metric-provider/README.md#requirements"),o=()=>Promise.reject(new Error("Query bridge required")),a=(m,h)=>h);const n=_e.useAnalyticsConfigStore(),c=t.toRef(()=>n.longRetention),p=t.computed(()=>!n.loading&&r.queryReady),f=t.computed(()=>r.tz?r.tz:new Intl.DateTimeFormat().resolvedOptions().timeZone),l=t.computed(()=>{if(r.overrideTimeframe)return r.overrideTimeframe;const m=c.value?_.TimePeriods.get(r.maxTimeframe):_.TimePeriods.get(_.TimeframeKeys.ONE_DAY);if(!m)throw new Error("Metrics provider failed to resolve fallback timeframe.");return m}),s=t.computed(()=>r.percentileLatency?!1:a("MA-2527-analytics-sku-config-endpoint",!1)),{trafficData:d,latencyData:u}=Ue({dimension:r.dimension,dimensionFilterValue:r.filterValue,additionalFilter:t.toRef(r,"additionalFilter"),queryReady:p,timeframe:l,tz:f,hasTrendAccess:c,refreshInterval:r.refreshInterval,queryFn:o,averageLatencies:s,abortController:r.abortController});return t.provide(fe,{data:{traffic:d,latency:u},description:t.toRef(()=>r.description),containerTitle:t.toRef(()=>r.containerTitle),hasTrendAccess:c,longCardTitles:r.longCardTitles,averageLatencies:s}),(m,h)=>t.renderSlot(m.$slots,"default",{hasTrendAccess:c.value,timeframe:l.value})}});function Ze(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pe={exports:{}};(function(e){(function(){function r(l,s){if(s.separator===!1||l<1e3)return l.toString();var d=typeof s.separator=="string"?s.separator:",",u=[],m=Math.round(l).toString().split("");return m.reverse().forEach(function(h,g){g&&g%3===0&&u.push(d),u.push(h)}),u.reverse().join("")}function i(l,s,d){var u=l/s,m=d.round?"round":"floor";return d.decimal===!1?(l=Math[m](u),l.toString()):(d.precision?l=u:l=u<10?Math[m](u*10)/10:Math[m](u),l=l.toString(),typeof d.decimal=="string"&&(l=l.replace(".",d.decimal)),l)}var o=1e3,a=1e4,n=1e6,c=1e9,p=1e12;function f(l,s){var d;s=s||{};var u=l<0;u&&(l=Math.abs(l)),s.precision&&(l=parseFloat(l.toPrecision(s.precision)));var m=s.min10k?a:o;return l<m||s.precision&&s.precision>Math.log10(l)?d=r(i(l,1,s),s):l<n?d=i(l,o,s)+"k":l<c?d=i(l,n,s)+"m":l<p?d=r(i(l,c,s),s)+"b":d=r(i(l,p,s),s)+"t",u&&(d="-"+d),s.capital&&(d=d.toUpperCase()),s.prefix&&(d=s.prefix+d),s.suffix&&(d=d+s.suffix),d}f.addCommas=r,e.exports=f})()})(pe);var je=pe.exports;const Xe=Ze(je);var N=(e=>(e.GENERIC_COUNT="GenericCount",e.TRAFFIC="Traffic",e.ERROR_RATE="ErrorRate",e.LATENCY="Latency",e))(N||{}),w=(e=>(e.Small="sm",e.Medium="md",e.Large="lg",e.ExtraLarge="xl",e))(w||{});const k="24px",R=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},Ye=e=>(t.pushScopeId("data-v-80a84c23"),e=e(),t.popScopeId(),e),Qe=["aria-hidden"],We={key:0,"data-testid":"kui-icon-svg-title"},Je=Ye(()=>t.createElementVNode("path",{d:"M6.5 20C4.98333 20 3.6875 19.475 2.6125 18.425C1.5375 17.375 1 16.0917 1 14.575C1 13.275 1.39167 12.1167 2.175 11.1C2.95833 10.0833 3.98333 9.43333 5.25 9.15C5.66667 7.61667 6.5 6.375 7.75 5.425C9 4.475 10.4167 4 12 4C13.95 4 15.6042 4.67917 16.9625 6.0375C18.3208 7.39583 19 9.05 19 11C20.15 11.1333 21.1042 11.6292 21.8625 12.4875C22.6208 13.3458 23 14.35 23 15.5C23 16.75 22.5625 17.8125 21.6875 18.6875C20.8125 19.5625 19.75 20 18.5 20H13C12.45 20 11.9792 19.8042 11.5875 19.4125C11.1958 19.0208 11 18.55 11 18V12.85L9.4 14.4L8 13L12 9L16 13L14.6 14.4L13 12.85V18H18.5C19.2 18 19.7917 17.7583 20.275 17.275C20.7583 16.7917 21 16.2 21 15.5C21 14.8 20.7583 14.2083 20.275 13.725C19.7917 13.2417 19.2 13 18.5 13H17V11C17 9.61667 16.5125 8.4375 15.5375 7.4625C14.5625 6.4875 13.3833 6 12 6C10.6167 6 9.4375 6.4875 8.4625 7.4625C7.4875 8.4375 7 9.61667 7 11H6.5C5.53333 11 4.70833 11.3417 4.025 12.025C3.34167 12.7083 3 13.5333 3 14.5C3 15.4667 3.34167 16.2917 4.025 16.975C4.70833 17.6583 5.53333 18 6.5 18H9V20H6.5Z",fill:"currentColor"},null,-1)),et=t.defineComponent({__name:"CloudUploadIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon cloud-upload-icon","data-testid":"kui-icon-wrapper-cloud-upload-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-cloud-upload-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",We,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Je],8,Qe))]),_:1},8,["aria-hidden","style"]))}}),tt=R(et,[["__scopeId","data-v-80a84c23"]]),rt=e=>(t.pushScopeId("data-v-51fd13af"),e=e(),t.popScopeId(),e),it=["aria-hidden"],nt={key:0,"data-testid":"kui-icon-svg-title"},at=rt(()=>t.createElementVNode("path",{d:"M4 17V14H20V17H4ZM4 10V7H20V10H4Z",fill:"currentColor"},null,-1)),ot=t.defineComponent({__name:"EqualIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon equal-icon","data-testid":"kui-icon-wrapper-equal-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-equal-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",nt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),at],8,it))]),_:1},8,["aria-hidden","style"]))}}),lt=R(ot,[["__scopeId","data-v-51fd13af"]]),st=e=>(t.pushScopeId("data-v-c5283a2c"),e=e(),t.popScopeId(),e),ct=["aria-hidden"],dt={key:0,"data-testid":"kui-icon-svg-title"},ut=st(()=>t.createElementVNode("path",{d:"M5 11V9H15V11H5Z",fill:"currentColor"},null,-1)),ft=t.defineComponent({__name:"IndeterminateSmallIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon indeterminate-small-icon","data-testid":"kui-icon-wrapper-indeterminate-small-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-indeterminate-small-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",dt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),ut],8,ct))]),_:1},8,["aria-hidden","style"]))}}),me=R(ft,[["__scopeId","data-v-c5283a2c"]]),pt=e=>(t.pushScopeId("data-v-7958c198"),e=e(),t.popScopeId(),e),mt=["aria-hidden"],gt={key:0,"data-testid":"kui-icon-svg-title"},yt=pt(()=>t.createElementVNode("path",{d:"M11 17H13V11H11V17ZM12 9C12.2833 9 12.5208 8.90417 12.7125 8.7125C12.9042 8.52083 13 8.28333 13 8C13 7.71667 12.9042 7.47917 12.7125 7.2875C12.5208 7.09583 12.2833 7 12 7C11.7167 7 11.4792 7.09583 11.2875 7.2875C11.0958 7.47917 11 7.71667 11 8C11 8.28333 11.0958 8.52083 11.2875 8.7125C11.4792 8.90417 11.7167 9 12 9ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2C13.3833 2 14.6833 2.2625 15.9 2.7875C17.1167 3.3125 18.175 4.025 19.075 4.925C19.975 5.825 20.6875 6.88333 21.2125 8.1C21.7375 9.31667 22 10.6167 22 12C22 13.3833 21.7375 14.6833 21.2125 15.9C20.6875 17.1167 19.975 18.175 19.075 19.075C18.175 19.975 17.1167 20.6875 15.9 21.2125C14.6833 21.7375 13.3833 22 12 22Z",fill:"currentColor"},null,-1)),ht=t.defineComponent({__name:"InfoIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon info-icon","data-testid":"kui-icon-wrapper-info-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-info-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",gt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),yt],8,mt))]),_:1},8,["aria-hidden","style"]))}}),Ct=R(ht,[["__scopeId","data-v-7958c198"]]),St=e=>(t.pushScopeId("data-v-d0ffb1de"),e=e(),t.popScopeId(),e),vt=["aria-hidden"],kt={key:0,"data-testid":"kui-icon-svg-title"},Et=St(()=>t.createElementVNode("path",{d:"M15.25 5C14.9 5 14.6042 4.87917 14.3625 4.6375C14.1208 4.39583 14 4.1 14 3.75C14 3.4 14.1208 3.10417 14.3625 2.8625C14.6042 2.62083 14.9 2.5 15.25 2.5C15.6 2.5 15.8958 2.62083 16.1375 2.8625C16.3792 3.10417 16.5 3.4 16.5 3.75C16.5 4.1 16.3792 4.39583 16.1375 4.6375C15.8958 4.87917 15.6 5 15.25 5ZM15.25 21.5C14.9 21.5 14.6042 21.3792 14.3625 21.1375C14.1208 20.8958 14 20.6 14 20.25C14 19.9 14.1208 19.6042 14.3625 19.3625C14.6042 19.1208 14.9 19 15.25 19C15.6 19 15.8958 19.1208 16.1375 19.3625C16.3792 19.6042 16.5 19.9 16.5 20.25C16.5 20.6 16.3792 20.8958 16.1375 21.1375C15.8958 21.3792 15.6 21.5 15.25 21.5ZM19.25 8.5C18.9 8.5 18.6042 8.37917 18.3625 8.1375C18.1208 7.89583 18 7.6 18 7.25C18 6.9 18.1208 6.60417 18.3625 6.3625C18.6042 6.12083 18.9 6 19.25 6C19.6 6 19.8958 6.12083 20.1375 6.3625C20.3792 6.60417 20.5 6.9 20.5 7.25C20.5 7.6 20.3792 7.89583 20.1375 8.1375C19.8958 8.37917 19.6 8.5 19.25 8.5ZM19.25 18C18.9 18 18.6042 17.8792 18.3625 17.6375C18.1208 17.3958 18 17.1 18 16.75C18 16.4 18.1208 16.1042 18.3625 15.8625C18.6042 15.6208 18.9 15.5 19.25 15.5C19.6 15.5 19.8958 15.6208 20.1375 15.8625C20.3792 16.1042 20.5 16.4 20.5 16.75C20.5 17.1 20.3792 17.3958 20.1375 17.6375C19.8958 17.8792 19.6 18 19.25 18ZM20.75 13.25C20.4 13.25 20.1042 13.1292 19.8625 12.8875C19.6208 12.6458 19.5 12.35 19.5 12C19.5 11.65 19.6208 11.3542 19.8625 11.1125C20.1042 10.8708 20.4 10.75 20.75 10.75C21.1 10.75 21.3958 10.8708 21.6375 11.1125C21.8792 11.3542 22 11.65 22 12C22 12.35 21.8792 12.6458 21.6375 12.8875C21.3958 13.1292 21.1 13.25 20.75 13.25ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2V4C9.76667 4 7.875 4.775 6.325 6.325C4.775 7.875 4 9.76667 4 12C4 14.2333 4.775 16.125 6.325 17.675C7.875 19.225 9.76667 20 12 20V22ZM12 14C11.45 14 10.9792 13.8042 10.5875 13.4125C10.1958 13.0208 10 12.55 10 12C10 11.9167 10.0042 11.8292 10.0125 11.7375C10.0208 11.6458 10.0417 11.5583 10.075 11.475L8 9.4L9.4 8L11.475 10.075C11.5417 10.0583 11.7167 10.0333 12 10C12.55 10 13.0208 10.1958 13.4125 10.5875C13.8042 10.9792 14 11.45 14 12C14 12.55 13.8042 13.0208 13.4125 13.4125C13.0208 13.8042 12.55 14 12 14Z",fill:"currentColor"},null,-1)),bt=t.defineComponent({__name:"ResponseIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon response-icon","data-testid":"kui-icon-wrapper-response-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-response-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",kt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Et],8,vt))]),_:1},8,["aria-hidden","style"]))}}),_t=R(bt,[["__scopeId","data-v-d0ffb1de"]]),Nt=e=>(t.pushScopeId("data-v-7939cf04"),e=e(),t.popScopeId(),e),wt=["aria-hidden"],Rt={key:0,"data-testid":"kui-icon-svg-title"},Tt=Nt(()=>t.createElementVNode("path",{d:"M16 18V16H18.6L13.4 10.85L9.4 14.85L2 7.4L3.4 6L9.4 12L13.4 8L20 14.6V12H22V18H16Z",fill:"currentColor"},null,-1)),It=t.defineComponent({__name:"TrendDownIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-down-icon","data-testid":"kui-icon-wrapper-trend-down-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-down-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Rt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Tt],8,wt))]),_:1},8,["aria-hidden","style"]))}}),Bt=R(It,[["__scopeId","data-v-7939cf04"]]),Vt=e=>(t.pushScopeId("data-v-c6ab90e9"),e=e(),t.popScopeId(),e),xt=["aria-hidden"],Dt={key:0,"data-testid":"kui-icon-svg-title"},Lt=Vt(()=>t.createElementVNode("path",{d:"M3.4 18L2 16.6L9.4 9.15L13.4 13.15L18.6 8H16V6H22V12H20V9.4L13.4 16L9.4 12L3.4 18Z",fill:"currentColor"},null,-1)),At=t.defineComponent({__name:"TrendUpIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-up-icon","data-testid":"kui-icon-wrapper-trend-up-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-up-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Dt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Lt],8,xt))]),_:1},8,["aria-hidden","style"]))}}),zt=R(At,[["__scopeId","data-v-c6ab90e9"]]),qt=e=>(t.pushScopeId("data-v-989e7f51"),e=e(),t.popScopeId(),e),Ot=["aria-hidden"],Mt={key:0,"data-testid":"kui-icon-svg-title"},Ft=qt(()=>t.createElementVNode("path",{d:"M9 20C8.68333 20 8.4 19.9083 8.15 19.725C7.9 19.5417 7.71667 19.3083 7.6 19.025L5.3 13H1V11H6.7L9 17.1L13.6 4.975C13.7167 4.69167 13.9 4.45833 14.15 4.275C14.4 4.09167 14.6833 4 15 4C15.3167 4 15.6 4.09167 15.85 4.275C16.1 4.45833 16.2833 4.69167 16.4 4.975L18.7 11H23V13H17.3L15 6.9L10.4 19.025C10.2833 19.3083 10.1 19.5417 9.85 19.725C9.6 19.9083 9.31667 20 9 20Z",fill:"currentColor"},null,-1)),Ht=t.defineComponent({__name:"VitalsIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon vitals-icon","data-testid":"kui-icon-wrapper-vitals-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-vitals-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Mt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Ft],8,Ot))]),_:1},8,["aria-hidden","style"]))}}),$t=R(Ht,[["__scopeId","data-v-989e7f51"]]),Pt=e=>(t.pushScopeId("data-v-5fc3c6c8"),e=e(),t.popScopeId(),e),Kt=["aria-hidden"],Ut={key:0,"data-testid":"kui-icon-svg-title"},Gt=Pt(()=>t.createElementVNode("path",{d:"M12.0001 22.025C11.7334 22.025 11.4793 21.975 11.2376 21.875C10.9959 21.775 10.7751 21.6333 10.5751 21.45L2.5501 13.425C2.36676 13.225 2.2251 13.0041 2.1251 12.7625C2.0251 12.5208 1.9751 12.2666 1.9751 12C1.9751 11.7333 2.0251 11.475 2.1251 11.225C2.2251 10.975 2.36676 10.7583 2.5501 10.575L10.5751 2.54998C10.7751 2.34998 10.9959 2.20414 11.2376 2.11248C11.4793 2.02081 11.7334 1.97498 12.0001 1.97498C12.2668 1.97498 12.5251 2.02081 12.7751 2.11248C13.0251 2.20414 13.2418 2.34998 13.4251 2.54998L21.4501 10.575C21.6501 10.7583 21.7959 10.975 21.8876 11.225C21.9793 11.475 22.0251 11.7333 22.0251 12C22.0251 12.2666 21.9793 12.5208 21.8876 12.7625C21.7959 13.0041 21.6501 13.225 21.4501 13.425L13.4251 21.45C13.2418 21.6333 13.0251 21.775 12.7751 21.875C12.5251 21.975 12.2668 22.025 12.0001 22.025ZM12.0001 20.025L20.0251 12L12.0001 3.97498L3.9751 12L12.0001 20.025ZM11.0001 13H13.0001V6.99998H11.0001V13ZM12.0001 16C12.2834 16 12.5209 15.9041 12.7126 15.7125C12.9043 15.5208 13.0001 15.2833 13.0001 15C13.0001 14.7166 12.9043 14.4791 12.7126 14.2875C12.5209 14.0958 12.2834 14 12.0001 14C11.7168 14 11.4793 14.0958 11.2876 14.2875C11.0959 14.4791 11.0001 14.7166 11.0001 15C11.0001 15.2833 11.0959 15.5208 11.2876 15.7125C11.4793 15.9041 11.7168 16 12.0001 16Z",fill:"currentColor"},null,-1)),Zt=t.defineComponent({__name:"WarningOutlineIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-outline-icon","data-testid":"kui-icon-wrapper-warning-outline-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-outline-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Ut,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Gt],8,Kt))]),_:1},8,["aria-hidden","style"]))}}),jt=R(Zt,[["__scopeId","data-v-5fc3c6c8"]]),Xt=e=>(t.pushScopeId("data-v-9f0a015f"),e=e(),t.popScopeId(),e),Yt=["aria-hidden"],Qt={key:0,"data-testid":"kui-icon-svg-title"},Wt=Xt(()=>t.createElementVNode("path",{d:"M12.025 22.05C11.7583 22.05 11.5042 22 11.2625 21.9C11.0208 21.8 10.8 21.6583 10.6 21.475L2.575 13.45C2.39167 13.25 2.25 13.0292 2.15 12.7875C2.05 12.5458 2 12.2917 2 12.025C2 11.7583 2.05 11.5 2.15 11.25C2.25 11 2.39167 10.7833 2.575 10.6L10.6 2.575C10.8 2.375 11.0208 2.22917 11.2625 2.1375C11.5042 2.04583 11.7583 2 12.025 2C12.2917 2 12.55 2.04583 12.8 2.1375C13.05 2.22917 13.2667 2.375 13.45 2.575L21.475 10.6C21.675 10.7833 21.8208 11 21.9125 11.25C22.0042 11.5 22.05 11.7583 22.05 12.025C22.05 12.2917 22.0042 12.5458 21.9125 12.7875C21.8208 13.0292 21.675 13.25 21.475 13.45L13.45 21.475C13.2667 21.6583 13.05 21.8 12.8 21.9C12.55 22 12.2917 22.05 12.025 22.05ZM11.025 13.025H13.025V7.025H11.025V13.025ZM12.025 16.025C12.3083 16.025 12.5458 15.9292 12.7375 15.7375C12.9292 15.5458 13.025 15.3083 13.025 15.025C13.025 14.7417 12.9292 14.5042 12.7375 14.3125C12.5458 14.1208 12.3083 14.025 12.025 14.025C11.7417 14.025 11.5042 14.1208 11.3125 14.3125C11.1208 14.5042 11.025 14.7417 11.025 15.025C11.025 15.3083 11.1208 15.5458 11.3125 15.7375C11.5042 15.9292 11.7417 16.025 12.025 16.025Z",fill:"currentColor"},null,-1)),Jt=t.defineComponent({__name:"WarningIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-icon","data-testid":"kui-icon-wrapper-warning-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Qt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Wt],8,Yt))]),_:1},8,["aria-hidden","style"]))}}),ge=R(Jt,[["__scopeId","data-v-9f0a015f"]]),X=2,ye=X+2,er=(e,r,i=!1)=>{let o=!r||Number(e.toFixed(ye))===0?0:Number(e.toFixed(ye))>0?1:-1;return i&&(o*=-1),o},tr=(e,r,i)=>r?`${Math.abs(e*100).toFixed(X)}%`:i,rr=(e,r)=>r===0?0:e/r-1,ir=(e,r=!1)=>(r&&(e*=-1),e>0?zt:e<0?Bt:me),nr="#ad000e",Y="#6c7489",he="#52596e",ar="#007d60",F="16px",or="20px",lr={class:"metricscard"},sr={key:0,class:"metricscard-description"},cr={class:"metricscard-valuetrend"},dr={key:0,class:"metricscard-error"},ur={key:2,class:"metricscard-trend"},fr={"data-testid":"metric-trend-change"},pr={key:0,class:"metricscard-trend-range"},mr=t.defineComponent({__name:"MetricsCard",props:{cardType:{type:String,required:!0,default:N.GENERIC_COUNT},title:{type:String,default:"0%",required:!0},description:{type:String,default:"",required:!1},tooltip:{type:String,required:!1,default:""},timeframe:{type:String,required:!1,default:""},metricValue:{type:String,default:""},metricChange:{type:String,required:!0},changePolarity:{type:Number,required:!0},trendIcon:{type:Object,default:me},trendRange:{type:String,default:""},hasError:{type:Boolean,default:!1},errorMessage:{type:String,default:"Vitals data error"},cardSize:{type:String,required:!1,default:()=>w.Large},hasContainerTitle:{type:Boolean,required:!1,default:!1},titleTag:{type:String,default:"span"}},setup(e){const r=new Map([[N.GENERIC_COUNT,$t],[N.TRAFFIC,tt],[N.ERROR_RATE,jt],[N.LATENCY,_t]]),i=e,o=p=>{const f={red:`var(--kong-ui-metric-card-trend-negative, ${nr})`,green:`var(--kong-ui-metric-card-trend-positive, ${ar})`,grey:`var(--kong-ui-metric-card-trend-neutral, ${he})`};return p>0?f.green:p<0?f.red:f.grey},a=p=>p>0?"positive":p<0?"negative":"neutral",n=[w.Medium,w.Large].includes(i.cardSize),c=[w.Small].includes(i.cardSize);return(p,f)=>{const l=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",lr,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-title",e.cardSize])},[t.unref(c)?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r).get(e.cardType)),{key:0,class:"metricscard-icon",color:t.unref(Y),size:t.unref(F)},null,8,["color","size"])),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.titleTag),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.title),1)]),_:1})),e.tooltip?(t.openBlock(),t.createBlock(l,{key:1,class:"metricscard-tooltip",placement:"right",text:e.tooltip},{default:t.withCtx(()=>[t.createVNode(t.unref(Ct),{color:t.unref(Y),size:t.unref(F)},null,8,["color","size"])]),_:1},8,["text"])):t.createCommentVNode("",!0)],2),e.description&&t.unref(n)?(t.openBlock(),t.createElementBlock("div",sr,[t.createElementVNode("span",null,t.toDisplayString(e.description),1)])):t.createCommentVNode("",!0),t.createElementVNode("div",cr,[e.hasError?(t.openBlock(),t.createElementBlock("div",dr,[t.createVNode(t.unref(ge),{color:t.unref(Y),size:t.unref(or)},null,8,["color","size"]),t.createElementVNode("div",null," "+t.toDisplayString(e.errorMessage),1)])):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["metricscard-value",e.cardSize]),"data-testid":"metric-value"},t.toDisplayString(e.metricValue),3)),t.unref(n)?(t.openBlock(),t.createElementBlock("div",ur,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-trend-change",a(e.changePolarity)]),"data-testid":"metric-trend-parent"},[e.changePolarity!==0?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.trendIcon),{key:0,color:o(e.changePolarity),size:t.unref(F)},null,8,["color","size"])):(t.openBlock(),t.createBlock(t.unref(lt),{key:1,color:t.unref(he),size:t.unref(F)},null,8,["color","size"])),t.createElementVNode("div",fr,t.toDisplayString(e.metricChange),1)],2),e.trendRange?(t.openBlock(),t.createElementBlock("div",pr,t.toDisplayString(e.trendRange),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)])])}}}),Q=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},gr=Q(mr,[["__scopeId","data-v-1b8a31a0"]]),yr={},hr={class:"loading-tabs"};function Cr(e,r){const i=t.resolveComponent("KSkeletonBox");return t.openBlock(),t.createElementBlock("div",hr,[t.createVNode(i,{width:"100"}),t.createVNode(i,{width:"75"})])}const Sr=Q(yr,[["render",Cr],["__scopeId","data-v-f7eb9c40"]]),vr={key:0,class:"container-title"},kr={key:0,class:"container-description"},Er={key:1,class:"error-display"},br={key:0,class:"error-display-message"},_r={key:2,class:"cards-wrapper"},Nr=Q(t.defineComponent({__name:"MetricCardContainer",props:{fallbackDisplayText:{type:String,required:!0},cards:{type:Array,required:!0},errorMessage:{type:String,required:!1,default:""},loading:{type:Boolean,required:!1,default:!1},hasTrendAccess:{type:Boolean,required:!1,default:!0},cardSize:{type:String,required:!1,default:()=>w.Large},containerTitle:{type:String,required:!1,default:""},containerDescription:{type:String,required:!1,default:""}},setup(e){const r=e,i=t.computed(()=>r.cards.every(a=>(a==null?void 0:a.hasError)===!0)),o=a=>{const n=rr(a.currentValue,a.previousValue)||0,c=er(n,r.hasTrendAccess,a.increaseIsBad);return{metricValue:a.formatValueFn?a.formatValueFn(a.currentValue):Xe(a.currentValue,{capital:!0,round:!0})||"0",metricChange:a.formatChangeFn?a.formatChangeFn(n):tr(n,r.hasTrendAccess,r.fallbackDisplayText),changePolarity:c,trendIcon:ir(c,a.increaseIsBad),cardSize:r.cardSize,hasContainerTitle:!!r.containerTitle}};return(a,n)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-public-metric-card-container",e.cardSize])},[r.containerTitle?(t.openBlock(),t.createElementBlock("div",vr,[t.createTextVNode(t.toDisplayString(r.containerTitle)+" ",1),r.containerDescription?(t.openBlock(),t.createElementBlock("div",kr,t.toDisplayString(r.containerDescription),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0),i.value?(t.openBlock(),t.createElementBlock("div",Er,[t.createVNode(t.unref(ge),{class:"error-display-icon"}),e.errorMessage?(t.openBlock(),t.createElementBlock("div",br,t.toDisplayString(e.errorMessage),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("div",_r,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.cards,(c,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.loading?(t.openBlock(),t.createBlock(Sr,{key:`skeleton-${p}`,class:t.normalizeClass(e.cardSize===t.unref(w).Small?"loading-tabs-small":"loading-tabs-large")},null,8,["class"])):(t.openBlock(),t.createBlock(gr,t.mergeProps({key:p,ref_for:!0},o(c),{"card-size":e.cardSize,"card-type":c.cardType,description:c.description,"error-message":e.errorMessage,"has-error":c.hasError,title:c.title,"title-tag":c.titleTag,tooltip:c.tooltip,"trend-range":c.trendRange}),null,16,["card-size","card-type","description","error-message","has-error","title","title-tag","tooltip","trend-range"]))],64))),256))]))],2))}}),[["__scopeId","data-v-d3a810e0"]]),wr=t.defineComponent({__name:"MetricsConsumer",props:{lookupKey:{default:void 0},cardSize:{default:w.Large},cardToDisplay:{default:void 0}},setup(e){const r=e,i=t.inject(fe);if(!i)throw new Error("MetricsConsumer must be nested inside a MetricsProvider instance.");const{traffic:o,latency:a}=i.data,{i18n:n}=V.useI18n(),c=V.useMetricCardBuilder({cardType:N.TRAFFIC,title:t.computed(()=>i.longCardTitles?n.t("metricCard.long.traffic"):n.t("metricCard.short.traffic")),record:o.mapped,hasError:o.hasError,lookupKey:r.lookupKey,sumGroupedValues:L,trendRange:o.trendRange}),p=g=>`${g.toFixed(X)}%`,f=t.computed(()=>{const g=o.mapped.value,C=A(g,"current",r.lookupKey,P),E=A(g,"current",r.lookupKey,L),S=C/E*100||0,y=A(g,"previous",r.lookupKey,P),B=A(g,"previous",r.lookupKey,L),b=y/B*100||0;return{cardType:N.ERROR_RATE,hasError:o.hasError.value,currentValue:S,previousValue:b,formatValueFn:p,title:i.longCardTitles?n.t("metricCard.long.errorRate"):n.t("metricCard.short.errorRate"),increaseIsBad:!0,trendRange:o.trendRange.value}}),l=g=>`${g}ms`,s=V.useMetricCardBuilder({cardType:N.LATENCY,title:t.computed(()=>{const{longCardTitles:g,averageLatencies:C}=i,E=C.value?"averageLatency":"p99Latency";return g?n.t(`metricCard.long.${E}`):n.t(`metricCard.short.${E}`)}),hasError:a.hasError,record:a.mapped,lookupKey:r.lookupKey,increaseIsBad:!0,formatValueFn:l,trendRange:a.trendRange}),d=t.computed(()=>r.cardToDisplay==="TRAFFIC"?[c.value]:r.cardToDisplay==="ERROR_RATE"?[f.value]:r.cardToDisplay==="LATENCY"?[s.value]:[c.value,f.value,s.value]),u=t.computed(()=>r.cardToDisplay==="TRAFFIC"||r.cardToDisplay==="ERROR_RATE"?o.isLoading.value:r.cardToDisplay==="LATENCY"?a.isLoading.value:o.isLoading.value||a.isLoading.value),m=t.computed(()=>({cards:d.value,containerTitle:i.containerTitle.value,containerDescription:i.description.value,loading:u.value,hasTrendAccess:i.hasTrendAccess.value,fallbackDisplayText:n.t("general.notAvailable"),cardSize:i.containerTitle.value?w.Medium:r.cardSize,hideTitle:!0})),h=t.computed(()=>({loading:m.value.loading,trafficCard:c.value,errorRateCard:f.value,latencyCard:s.value,errorRateFormatted:p(f.value.currentValue),latencyFormatted:l(s.value.currentValue)}));return(g,C)=>t.renderSlot(g.$slots,"default",{cardValues:h.value},()=>[t.createVNode(Nr,t.normalizeProps(t.guardReactiveProps(m.value)),null,16)])}}),H=e=>new Date(e),Rr=(e,r)=>{const i=e.body;e.reply({statusCode:200,body:Se(i,r)})},Ce=e=>e.reduce((r,i)=>(r[i]={name:i},r),{}),Se=(e,r)=>{var h,g;const i=_.TimePeriods.get(_.TimeframeKeys.ONE_DAY),o=e.granularity==="trend"?new _.DeltaQueryTime(i):new _.UnaryQueryTime(i),a=o.endMs(),n=o.startMs(),c=o.granularityMs(),p=e.granularity==="trend"?2:1;if((e.dimensions??[]).length>2)throw new Error(`Explore only supports 0-2 dimensions; got: ${JSON.stringify(e.dimensions)}`);const f=(e.dimensions??[]).find(C=>C!=="time"),l=(r==null?void 0:r.dimensionNames)??[],s=Math.max(l.length,1),d=e.metrics||[],u=[];for(let C=0;C<p;C++)for(let E=0;E<s;E++){const S=f?{[f]:l[E]}:{};(h=e.dimensions)!=null&&h.includes("status_code_grouped")?L.forEach(y=>{const B=d.reduce((b,x)=>(b[x]=(p-C)*1e3+100*E+1,b),{...S,status_code_grouped:y});u.push({version:"v1",timestamp:C===0?H(n).toISOString():H(n+c).toISOString(),event:B})}):u.push({version:"v1",timestamp:C===0?H(n).toISOString():H(n+c).toISOString(),event:d.reduce((y,B)=>(y[B]=(p-C)*1e3+100*E+1,y),{...S})})}const m={start_ms:n,end_ms:a,granularity_ms:c,display:f?{[f]:Ce(l),...(g=e.dimensions)!=null&&g.includes("status_code_grouped")?{status_code_grouped:Ce(L)}:{}}:{},metric_names:e.metrics,query_id:"test"};return{data:u,meta:m}};v.ALL_STATUS_CODE_GROUPS=L,v.DEFAULT_REFRESH_INTERVAL=ne,v.INJECT_QUERY_PROVIDER=ae,v.MAX_ANALYTICS_REQUEST_RETRIES=ie,v.MetricCardSize=w,v.MetricCardType=N,v.MetricsConsumer=wr,v.MetricsProvider=Ge,v.STATUS_CODES_FAILED=P,v.STATUS_CODES_SUCCESS=Re,v.mockExploreResponse=Se,v.mockExploreResponseFromCypress=Rr,Object.defineProperty(v,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(v,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/analytics-utilities"),require("@kong-ui-public/i18n"),require("@kong-ui-public/analytics-config-store")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/analytics-utilities","@kong-ui-public/i18n","@kong-ui-public/analytics-config-store"],t):(v=typeof globalThis<"u"?globalThis:v||self,t(v["kong-ui-public-vitals-metric-provider"]={},v.Vue,v["kong-ui-public-analytics-utilities"],v["kong-ui-public-i18n"],v["kong-ui-public-analytics-config-store"]))})(this,function(v,t,_,re,_e){"use strict";const Ne={general:{notAvailable:"N/A"},metricCard:{short:{traffic:"Requests",errorRate:"Error Rate",averageLatency:"Average Latency",p99Latency:"P99 Latency"},long:{traffic:"Number of Requests",errorRate:"Average Error Rate",averageLatency:"Average Latency",p99Latency:"P99 Latency"}},trendRange:{custom:"vs previous {numDays, plural, =1 {day} other {# days}}","15m":"vs previous 15 minutes","1h":"vs previous hour","6h":"vs previous 6 hours","12h":"vs previous 12 hours","24h":"vs previous 24 hours","7d":"vs previous 7 days","30d":"vs previous 30 days",current_week:"vs previous week",current_month:"vs previous month",current_quarter:"vs previous quarter",previous_week:"vs previous time period",previous_month:"vs previous time period",previous_quarter:"vs previous quarter"}};function we(){const e=re.createI18n("en-us",Ne);return{i18n:e,i18nT:re.i18nTComponent(e)}}const ie=2,L=["1XX","2XX","3XX","4XX","5XX"],K=["4XX","5XX"],Re=["1XX","2XX","3XX"],ne=30*1e3,ae="analytics-query-provider";var oe=(e=>(e.VALIDATING="VALIDATING",e.VALIDATING_HAS_DATA="VALIDATING_HAS_DATA",e.PENDING="PENDING",e.SUCCESS="SUCCESS",e.SUCCESS_HAS_DATA="SUCCESS_HAS_DATA",e.ERROR="ERROR",e.STALE_IF_ERROR="STALE_IF_ERROR",e))(oe||{});const Te=e=>{var r,i,o,a,n;return e?!!((r=Object.keys(e))!=null&&r.length||(i=e.data)!=null&&i.length||(a=(o=e.data)==null?void 0:o.data)!=null&&a.length||!((n=e.data)!=null&&n.data)&&typeof e.data=="object"&&Object.keys(e==null?void 0:e.data).length):!1};function Ie(e=t.ref({}),r,i,o=Te){const a=t.ref("PENDING");return t.watchEffect(()=>{const n=o(e.value);if(e.value&&n&&i.value){a.value="VALIDATING_HAS_DATA";return}if(e.value&&i.value){a.value="VALIDATING";return}if(e.value&&r.value){a.value="STALE_IF_ERROR";return}if(e.value===void 0&&!r.value){a.value="PENDING";return}if(e.value&&!r.value&&n){a.value="SUCCESS_HAS_DATA";return}if(e.value&&!r.value){a.value="SUCCESS";return}e.value===void 0&&r&&(a.value="ERROR")}),{state:a,swrvState:oe}}const I=Symbol("default"),P="status_code_grouped",le=(e,r,i,o,a)=>{e[r][i]||(e[r][i]={}),e[r][i][o]=a};function Be(e,r){var p;const i=((p=e.meta.metric_names)==null?void 0:p[0])||"",o=e.meta.start_ms,a=Object.keys(e.meta.display||{}),n=!!a.find(f=>f===P),c=a.find(f=>f!==P);return a.length>2||a.length>1&&!n?(console.error("Don't know how to work with provided dimensions:",a),{previous:{[I]:{[I]:0}},current:{[I]:{[I]:0}}}):e.data.reduce((f,l)=>{const s=l.event[i],d=c?l.event[c]:I,u=n?l.event[P]:I;return new Date(l.timestamp).getTime()===o&&r?le(f,"previous",d,u,s):le(f,"current",d,u,s),f},{previous:{},current:{}})}function Ve(e){e.queryReady===void 0&&(e.queryReady=t.computed(()=>!0));const{i18n:r}=V.useI18n(),i=t.computed(()=>{var d,u;return{metrics:e.metrics.value,dimensions:[...(d=e.dimensions)!=null&&d.length?[...e.dimensions]:[],...e.withTrend.value?["time"]:[]],granularity:e.withTrend.value?"trend":void 0,...(u=e.filter.value)!=null&&u.length?{filters:e.filter.value}:{},time_range:e.timeframe.value.v4Query(e.tz.value)}}),o=t.computed(()=>{var u,m,h,g;if(!((u=e.queryReady)!=null&&u.value))return null;const d=(m=e.filter)!=null&&m.value?JSON.stringify(e.filter.value):"";return`metric-fetcher-${e.timeframe.value.cacheKey()}-${(h=e.dimensions)==null?void 0:h.join("-")}-${(g=e.metrics.value)==null?void 0:g.join("-")}-${d}`}),{response:a,error:n,isValidating:c}=V.useRequest(()=>o.value,()=>e.queryFn(i.value,e.abortController??new AbortController),{refreshInterval:e.refreshInterval,revalidateOnFocus:!1,errorRetryCount:ie}),{state:p,swrvState:f}=Ie(a,n,c),l=t.computed(()=>{var d,u,m,h,g,C,b;return!((u=(d=a.value)==null?void 0:d.data)!=null&&u.length)||!((h=(m=a.value)==null?void 0:m.meta)!=null&&h.display)||!((b=(C=(g=a.value)==null?void 0:g.meta)==null?void 0:C.metric_names)!=null&&b.length)?{current:{},previous:{}}:Be(a.value,e.withTrend.value)}),s=t.computed(()=>{var d,u,m;if(e.timeframe.value.key==="custom"){if(!((u=(d=a.value)==null?void 0:d.meta)!=null&&u.start_ms))return"";const{start_ms:h,end_ms:g}=a.value.meta;let C=(g-h)/(1e3*60*60*24);return e.withTrend.value&&(C/=2),r.t("trendRange.custom",{numDays:Math.round(C)})}else return e.withTrend.value?r.t(`trendRange.${e.timeframe.value.key}`):r.t(`trendRange.${(m=_.TimePeriods.get(_.TimeframeKeys.ONE_DAY))==null?void 0:m.key}`)});return{isLoading:t.computed(()=>f.PENDING===p.value),hasError:t.computed(()=>f.ERROR===p.value),raw:a,mapped:l,trendRange:s}}const A=(e,r,i=I,o)=>(o??[I]).reduce((n,c)=>{const p=e[r][i];return p?n+(p[c]||0):n},0);function xe(e){const{cardType:r,title:i,description:o,record:a,hasError:n,increaseIsBad:c,formatValueFn:p,trendRange:f}=e;return t.computed(()=>{let l=0,s=0;if(a!=null&&a.value)try{l=A(a.value,"current",e.lookupKey,e.sumGroupedValues),s=A(a.value,"previous",e.lookupKey,e.sumGroupedValues)}catch(d){console.error("Metric card data doesn't have the expected structure:",d)}return{cardType:r,hasError:n.value,currentValue:l,previousValue:s,title:i.value,description:o,increaseIsBad:!!c,formatValueFn:p,trendRange:f==null?void 0:f.value}})}var U=new WeakMap,se=0;function De(e){if(!e.length)return"";for(var r="arg",i=0;i<e.length;++i){var o=void 0;e[i]===null||typeof e[i]!="object"&&typeof e[i]!="function"?typeof e[i]=="string"?o='"'+e[i]+'"':o=String(e[i]):U.has(e[i])?o=U.get(e[i]):(o=se,U.set(e[i],se++)),r+="@"+o}return r}function Le(e){if(typeof e=="function")try{e=e()}catch{e=""}return Array.isArray(e)?e=De(e):e=String(e||""),e}var X=function(){function e(r){r===void 0&&(r=0),this.items=new Map,this.ttl=r}return e.prototype.serializeKey=function(r){return Le(r)},e.prototype.get=function(r){var i=this.serializeKey(r);return this.items.get(i)},e.prototype.set=function(r,i,o){var a=this.serializeKey(r),n=o||this.ttl,c=Date.now(),p={data:i,createdAt:c,expiresAt:n?c+n:1/0};this.dispatchExpire(n,p,a),this.items.set(a,p)},e.prototype.dispatchExpire=function(r,i,o){var a=this;r&&setTimeout(function(){var n=Date.now(),c=n>=i.expiresAt;c&&a.delete(o)},r)},e.prototype.delete=function(r){this.items.delete(r)},e}();function Ae(){return typeof navigator.onLine<"u"?navigator.onLine:!0}function ze(){return typeof document<"u"&&typeof document.visibilityState<"u"?document.visibilityState!=="hidden":!0}var qe=function(e){return fetch(e).then(function(r){return r.json()})};const Z={isOnline:Ae,isDocumentVisible:ze,fetcher:qe};var T=function(){return T=Object.assign||function(e){for(var r,i=1,o=arguments.length;i<o;i++){r=arguments[i];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},T.apply(this,arguments)},z=function(e,r,i,o){function a(n){return n instanceof i?n:new i(function(c){c(n)})}return new(i||(i=Promise))(function(n,c){function p(s){try{l(o.next(s))}catch(d){c(d)}}function f(s){try{l(o.throw(s))}catch(d){c(d)}}function l(s){s.done?n(s.value):a(s.value).then(p,f)}l((o=o.apply(e,r||[])).next())})},q=function(e,r){var i={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},o,a,n,c;return c={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function p(l){return function(s){return f([l,s])}}function f(l){if(o)throw new TypeError("Generator is already executing.");for(;i;)try{if(o=1,a&&(n=l[0]&2?a.return:l[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,l[1])).done)return n;switch(a=0,n&&(l=[l[0]&2,n.value]),l[0]){case 0:case 1:n=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,a=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(n=i.trys,!(n=n.length>0&&n[n.length-1])&&(l[0]===6||l[0]===2)){i=0;continue}if(l[0]===3&&(!n||l[1]>n[0]&&l[1]<n[3])){i.label=l[1];break}if(l[0]===6&&i.label<n[1]){i.label=n[1],n=l;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(l);break}n[2]&&i.ops.pop(),i.trys.pop();continue}l=r.call(e,i)}catch(s){l=[6,s],a=0}finally{o=n=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}},Oe=function(e,r){var i=typeof Symbol=="function"&&e[Symbol.iterator];if(!i)return e;var o=i.call(e),a,n=[],c;try{for(;(r===void 0||r-- >0)&&!(a=o.next()).done;)n.push(a.value)}catch(p){c={error:p}}finally{try{a&&!a.done&&(i=o.return)&&i.call(o)}finally{if(c)throw c.error}}return n},Me=function(e,r,i){if(i||arguments.length===2)for(var o=0,a=r.length,n;o<a;o++)(n||!(o in r))&&(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))},ce=new X,M=new X,G=new X,de={cache:ce,refreshInterval:0,ttl:0,serverTTL:1e3,dedupingInterval:2e3,revalidateOnFocus:!0,revalidateDebounce:0,shouldRetryOnError:!0,errorRetryInterval:5e3,errorRetryCount:5,fetcher:Z.fetcher,isOnline:Z.isOnline,isDocumentVisible:Z.isDocumentVisible};function Fe(e,r,i){var o=M.get(e);if(o)o.data.push(r);else{var a=5e3;M.set(e,[r],i>0?i+a:i)}}function He(e,r,i){if(i.isDocumentVisible()&&!(i.errorRetryCount!==void 0&&r>i.errorRetryCount)){var o=Math.min(r||0,i.errorRetryCount),a=o*i.errorRetryInterval;setTimeout(function(){e(null,{errorRetryCount:o+1,shouldRetryOnError:!0})},a)}}var ue=function(e,r,i,o){return i===void 0&&(i=ce),o===void 0&&(o=de.ttl),z(void 0,void 0,void 0,function(){var a,n,c,p,f,l,s;return q(this,function(d){switch(d.label){case 0:if(!Ke(r))return[3,5];d.label=1;case 1:return d.trys.push([1,3,,4]),[4,r];case 2:return a=d.sent(),[3,4];case 3:return p=d.sent(),n=p,[3,4];case 4:return[3,6];case 5:a=r,d.label=6;case 6:if(c=!1,f={data:a,error:n,isValidating:c},typeof a<"u")try{i.set(e,f,o)}catch(u){console.error("swrv(mutate): failed to set cache",u)}return l=M.get(e),l&&l.data.length&&(s=l.data.filter(function(u){return u.key===e}),s.forEach(function(u,m){typeof f.data<"u"&&(u.data=f.data),u.error=f.error,u.isValidating=f.isValidating;var h=m===s.length-1;h||delete s[m]}),s=s.filter(Boolean)),[2,f]}})})};function $e(){for(var e=this,r=[],i=0;i<arguments.length;i++)r[i]=arguments[i];var o,a,n=T({},de),c=!1,p=!1,f=t.getCurrentInstance(),l=(f==null?void 0:f.proxy)||f;if(!l)return console.error("Could not get current instance, check to make sure that `useSwrv` is declared in the top level of the setup function."),null;var s=(l==null?void 0:l.$isServer)||!1;r.length>=1&&(o=r[0]),r.length>=2&&(a=r[1]),r.length>2&&(n=T(T({},n),r[2]));var d=s?n.serverTTL:n.ttl,u=typeof o=="function"?o:t.ref(o);typeof a>"u"&&(a=n.fetcher);var m=null;m||(m=t.reactive({data:void 0,error:void 0,isValidating:!0,key:null}));var h=function(S,y){return z(e,void 0,void 0,function(){var B,E,x,O,W,ve,J,ke=this;return q(this,function(ee){switch(ee.label){case 0:return B=m.data===void 0,E=u.value,E?(x=n.cache.get(E),O=x&&x.data,m.isValidating=!0,O&&(m.data=O.data,m.error=O.error),W=S||a,!W||!n.isDocumentVisible()&&!B||(y==null?void 0:y.forceRevalidate)!==void 0&&!(y!=null&&y.forceRevalidate)?(m.isValidating=!1,[2]):x&&(ve=!!(Date.now()-x.createdAt>=n.dedupingInterval||y!=null&&y.forceRevalidate),!ve)?(m.isValidating=!1,[2]):(J=function(){return z(ke,void 0,void 0,function(){var D,be,te,Ee;return q(this,function($){switch($.label){case 0:return D=G.get(E),D?[3,2]:(be=Array.isArray(E)?E:[E],te=W.apply(void 0,Me([],Oe(be),!1)),G.set(E,te,n.dedupingInterval),[4,ue(E,te,n.cache,d)]);case 1:return $.sent(),[3,4];case 2:return[4,ue(E,D.data,n.cache,d)];case 3:$.sent(),$.label=4;case 4:return m.isValidating=!1,G.delete(E),m.error!==void 0&&(Ee=!c&&n.shouldRetryOnError&&(y?y.shouldRetryOnError:!0),Ee&&He(h,y?y.errorRetryCount:1,n)),[2]}})})},O&&n.revalidateDebounce?(setTimeout(function(){return z(ke,void 0,void 0,function(){return q(this,function(D){switch(D.label){case 0:return c?[3,2]:[4,J()];case 1:D.sent(),D.label=2;case 2:return[2]}})})},n.revalidateDebounce),[3,3]):[3,1])):[2];case 1:return[4,J()];case 2:ee.sent(),ee.label=3;case 3:return[2]}})})},g=function(){return z(e,void 0,void 0,function(){return q(this,function(S){return[2,h(null,{shouldRetryOnError:!1})]})})},C=null;t.onMounted(function(){var S=function(){return z(e,void 0,void 0,function(){return q(this,function(y){switch(y.label){case 0:return!m.error&&n.isOnline()?[4,h()]:[3,2];case 1:return y.sent(),[3,3];case 2:C&&clearTimeout(C),y.label=3;case 3:return n.refreshInterval&&!c&&(C=setTimeout(S,n.refreshInterval)),[2]}})})};n.refreshInterval&&(C=setTimeout(S,n.refreshInterval)),n.revalidateOnFocus&&(document.addEventListener("visibilitychange",g,!1),window.addEventListener("focus",g,!1))}),t.onUnmounted(function(){c=!0,C&&clearTimeout(C),n.revalidateOnFocus&&(document.removeEventListener("visibilitychange",g,!1),window.removeEventListener("focus",g,!1));var S=M.get(u.value);S&&(S.data=S.data.filter(function(y){return y!==m}))});try{t.watch(u,function(S){t.isReadonly(u)||(u.value=S),m.key=S,m.isValidating=!!S,Fe(u.value,m,d),!s&&!p&&u.value&&h(),p=!1},{immediate:!0})}catch{}var b=T(T({},t.toRefs(m)),{mutate:function(S,y){return h(S,T(T({},y),{forceRevalidate:!0}))}});return b}function Ke(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}function Pe(e,r,i){const{data:o,error:a,isValidating:n,mutate:c}=$e(e,r,{revalidateDebounce:500,revalidateOnFocus:!1,dedupingInterval:100,...i});return{data:t.computed(()=>o.value),response:o,error:a,isValidating:n,revalidate:c}}const V={useI18n:we,useMetricCardBuilder:xe,useMetricFetcher:Ve,useRequest:Pe},fe=Symbol("METRICS_PROVIDER_KEY"),Ue=e=>{const{dimension:r,dimensionFilterValue:i,additionalFilter:o,queryReady:a,timeframe:n,tz:c,hasTrendAccess:p,refreshInterval:f,abortController:l,queryFn:s,averageLatencies:d}=e;if(i&&!r)throw new Error("Must provide a dimension if filtering by a value");const u=!!(r&&i),m=!!(r&&!i),h=t.computed(()=>{const y=[];return u&&y.push({dimension:r,type:"in",values:[i]}),o.value&&y.push(...o.value),y}),g={metrics:t.ref(["request_count"]),dimensions:[...r&&!u?[r]:[],"status_code_grouped"],filter:h,queryReady:a,timeframe:n,tz:c,withTrend:t.computed(()=>p.value&&!m),refreshInterval:f,queryFn:s,abortController:l},C={metrics:t.computed(()=>[d.value?"response_latency_average":"response_latency_p99"]),...r&&!u?{dimensions:[r]}:{},filter:h,queryReady:a,timeframe:n,tz:c,withTrend:t.computed(()=>p.value&&!m),refreshInterval:f,queryFn:s,abortController:l},b=V.useMetricFetcher(g),S=V.useMetricFetcher(C);return{trafficData:b,latencyData:S}},Xe=t.defineComponent({__name:"MetricsProvider",props:{maxTimeframe:{default:_.TimeframeKeys.THIRTY_DAY},overrideTimeframe:{default:void 0},tz:{default:void 0},dimension:{default:void 0},filterValue:{default:void 0},additionalFilter:{default:void 0},queryReady:{type:Boolean,default:!0},refreshInterval:{default:ne},longCardTitles:{type:Boolean,default:!1},containerTitle:{default:void 0},description:{default:void 0},percentileLatency:{type:Boolean,default:void 0},abortController:{default:void 0}},setup(e){const r=e;if(r.dimension&&_.queryableExploreDimensions.findIndex(m=>m===r.dimension)===-1)throw new Error(`Attempted to use MetricsProvider with an invalid dimension: ${r.dimension}`);const i=t.inject(ae);let o,a;i?(o=i.queryFn,a=i.evaluateFeatureFlagFn):(console.warn("Analytics dashboards require a query bridge supplied via provide / inject."),console.warn("Please ensure your application has a query bridge provided under the key 'analytics-query-provider', as described in"),console.warn("https://github.com/Kong/public-ui-components/blob/main/packages/analytics/analytics-metric-provider/README.md#requirements"),o=()=>Promise.reject(new Error("Query bridge required")),a=(m,h)=>h);const n=_e.useAnalyticsConfigStore(),c=t.toRef(()=>n.longRetention),p=t.computed(()=>!n.loading&&r.queryReady),f=t.computed(()=>r.tz?r.tz:new Intl.DateTimeFormat().resolvedOptions().timeZone),l=t.computed(()=>{if(r.overrideTimeframe)return r.overrideTimeframe;const m=c.value?_.TimePeriods.get(r.maxTimeframe):_.TimePeriods.get(_.TimeframeKeys.ONE_DAY);if(!m)throw new Error("Metrics provider failed to resolve fallback timeframe.");return m}),s=t.computed(()=>r.percentileLatency?!1:a("MA-2527-analytics-sku-config-endpoint",!1)),{trafficData:d,latencyData:u}=Ue({dimension:r.dimension,dimensionFilterValue:r.filterValue,additionalFilter:t.toRef(r,"additionalFilter"),queryReady:p,timeframe:l,tz:f,hasTrendAccess:c,refreshInterval:r.refreshInterval,queryFn:o,averageLatencies:s,abortController:r.abortController});return t.provide(fe,{data:{traffic:d,latency:u},description:t.toRef(()=>r.description),containerTitle:t.toRef(()=>r.containerTitle),hasTrendAccess:c,longCardTitles:r.longCardTitles,averageLatencies:s}),(m,h)=>t.renderSlot(m.$slots,"default",{hasTrendAccess:c.value,timeframe:l.value})}});function Ze(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pe={exports:{}};(function(e){(function(){function r(l,s){if(s.separator===!1||l<1e3)return l.toString();var d=typeof s.separator=="string"?s.separator:",",u=[],m=Math.round(l).toString().split("");return m.reverse().forEach(function(h,g){g&&g%3===0&&u.push(d),u.push(h)}),u.reverse().join("")}function i(l,s,d){var u=l/s,m=d.round?"round":"floor";return d.decimal===!1?(l=Math[m](u),l.toString()):(d.precision?l=u:l=u<10?Math[m](u*10)/10:Math[m](u),l=l.toString(),typeof d.decimal=="string"&&(l=l.replace(".",d.decimal)),l)}var o=1e3,a=1e4,n=1e6,c=1e9,p=1e12;function f(l,s){var d;s=s||{};var u=l<0;u&&(l=Math.abs(l)),s.precision&&(l=parseFloat(l.toPrecision(s.precision)));var m=s.min10k?a:o;return l<m||s.precision&&s.precision>Math.log10(l)?d=r(i(l,1,s),s):l<n?d=i(l,o,s)+"k":l<c?d=i(l,n,s)+"m":l<p?d=r(i(l,c,s),s)+"b":d=r(i(l,p,s),s)+"t",u&&(d="-"+d),s.capital&&(d=d.toUpperCase()),s.prefix&&(d=s.prefix+d),s.suffix&&(d=d+s.suffix),d}f.addCommas=r,e.exports=f})()})(pe);var Ge=pe.exports;const je=Ze(Ge);var N=(e=>(e.GENERIC_COUNT="GenericCount",e.TRAFFIC="Traffic",e.ERROR_RATE="ErrorRate",e.LATENCY="Latency",e))(N||{}),w=(e=>(e.Small="sm",e.Medium="md",e.Large="lg",e.ExtraLarge="xl",e))(w||{});const k="24px",R=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},Ye=e=>(t.pushScopeId("data-v-6e7c19a8"),e=e(),t.popScopeId(),e),Qe=["aria-hidden"],We={key:0,"data-testid":"kui-icon-svg-title"},Je=Ye(()=>t.createElementVNode("path",{d:"M6.5 20C4.98333 20 3.6875 19.475 2.6125 18.425C1.5375 17.375 1 16.0917 1 14.575C1 13.275 1.39167 12.1167 2.175 11.1C2.95833 10.0833 3.98333 9.43333 5.25 9.15C5.66667 7.61667 6.5 6.375 7.75 5.425C9 4.475 10.4167 4 12 4C13.95 4 15.6042 4.67917 16.9625 6.0375C18.3208 7.39583 19 9.05 19 11C20.15 11.1333 21.1042 11.6292 21.8625 12.4875C22.6208 13.3458 23 14.35 23 15.5C23 16.75 22.5625 17.8125 21.6875 18.6875C20.8125 19.5625 19.75 20 18.5 20H13C12.45 20 11.9792 19.8042 11.5875 19.4125C11.1958 19.0208 11 18.55 11 18V12.85L9.4 14.4L8 13L12 9L16 13L14.6 14.4L13 12.85V18H18.5C19.2 18 19.7917 17.7583 20.275 17.275C20.7583 16.7917 21 16.2 21 15.5C21 14.8 20.7583 14.2083 20.275 13.725C19.7917 13.2417 19.2 13 18.5 13H17V11C17 9.61667 16.5125 8.4375 15.5375 7.4625C14.5625 6.4875 13.3833 6 12 6C10.6167 6 9.4375 6.4875 8.4625 7.4625C7.4875 8.4375 7 9.61667 7 11H6.5C5.53333 11 4.70833 11.3417 4.025 12.025C3.34167 12.7083 3 13.5333 3 14.5C3 15.4667 3.34167 16.2917 4.025 16.975C4.70833 17.6583 5.53333 18 6.5 18H9V20H6.5Z",fill:"currentColor"},null,-1)),et=t.defineComponent({__name:"CloudUploadIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon cloud-upload-icon","data-testid":"kui-icon-wrapper-cloud-upload-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-cloud-upload-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",We,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Je],8,Qe))]),_:1},8,["aria-hidden","style"]))}}),tt=R(et,[["__scopeId","data-v-6e7c19a8"]]),rt=e=>(t.pushScopeId("data-v-d71ed5b6"),e=e(),t.popScopeId(),e),it=["aria-hidden"],nt={key:0,"data-testid":"kui-icon-svg-title"},at=rt(()=>t.createElementVNode("path",{d:"M4 17V14H20V17H4ZM4 10V7H20V10H4Z",fill:"currentColor"},null,-1)),ot=t.defineComponent({__name:"EqualIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon equal-icon","data-testid":"kui-icon-wrapper-equal-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-equal-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",nt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),at],8,it))]),_:1},8,["aria-hidden","style"]))}}),lt=R(ot,[["__scopeId","data-v-d71ed5b6"]]),st=e=>(t.pushScopeId("data-v-32f3bfab"),e=e(),t.popScopeId(),e),ct=["aria-hidden"],dt={key:0,"data-testid":"kui-icon-svg-title"},ut=st(()=>t.createElementVNode("path",{d:"M5 11V9H15V11H5Z",fill:"currentColor"},null,-1)),ft=t.defineComponent({__name:"IndeterminateSmallIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon indeterminate-small-icon","data-testid":"kui-icon-wrapper-indeterminate-small-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-indeterminate-small-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",dt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),ut],8,ct))]),_:1},8,["aria-hidden","style"]))}}),me=R(ft,[["__scopeId","data-v-32f3bfab"]]),pt=e=>(t.pushScopeId("data-v-f641d33a"),e=e(),t.popScopeId(),e),mt=["aria-hidden"],gt={key:0,"data-testid":"kui-icon-svg-title"},yt=pt(()=>t.createElementVNode("path",{d:"M11 17H13V11H11V17ZM12 9C12.2833 9 12.5208 8.90417 12.7125 8.7125C12.9042 8.52083 13 8.28333 13 8C13 7.71667 12.9042 7.47917 12.7125 7.2875C12.5208 7.09583 12.2833 7 12 7C11.7167 7 11.4792 7.09583 11.2875 7.2875C11.0958 7.47917 11 7.71667 11 8C11 8.28333 11.0958 8.52083 11.2875 8.7125C11.4792 8.90417 11.7167 9 12 9ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2C13.3833 2 14.6833 2.2625 15.9 2.7875C17.1167 3.3125 18.175 4.025 19.075 4.925C19.975 5.825 20.6875 6.88333 21.2125 8.1C21.7375 9.31667 22 10.6167 22 12C22 13.3833 21.7375 14.6833 21.2125 15.9C20.6875 17.1167 19.975 18.175 19.075 19.075C18.175 19.975 17.1167 20.6875 15.9 21.2125C14.6833 21.7375 13.3833 22 12 22Z",fill:"currentColor"},null,-1)),ht=t.defineComponent({__name:"InfoIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon info-icon","data-testid":"kui-icon-wrapper-info-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-info-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",gt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),yt],8,mt))]),_:1},8,["aria-hidden","style"]))}}),Ct=R(ht,[["__scopeId","data-v-f641d33a"]]),St=e=>(t.pushScopeId("data-v-ff64c8af"),e=e(),t.popScopeId(),e),vt=["aria-hidden"],kt={key:0,"data-testid":"kui-icon-svg-title"},bt=St(()=>t.createElementVNode("path",{d:"M15.25 5C14.9 5 14.6042 4.87917 14.3625 4.6375C14.1208 4.39583 14 4.1 14 3.75C14 3.4 14.1208 3.10417 14.3625 2.8625C14.6042 2.62083 14.9 2.5 15.25 2.5C15.6 2.5 15.8958 2.62083 16.1375 2.8625C16.3792 3.10417 16.5 3.4 16.5 3.75C16.5 4.1 16.3792 4.39583 16.1375 4.6375C15.8958 4.87917 15.6 5 15.25 5ZM15.25 21.5C14.9 21.5 14.6042 21.3792 14.3625 21.1375C14.1208 20.8958 14 20.6 14 20.25C14 19.9 14.1208 19.6042 14.3625 19.3625C14.6042 19.1208 14.9 19 15.25 19C15.6 19 15.8958 19.1208 16.1375 19.3625C16.3792 19.6042 16.5 19.9 16.5 20.25C16.5 20.6 16.3792 20.8958 16.1375 21.1375C15.8958 21.3792 15.6 21.5 15.25 21.5ZM19.25 8.5C18.9 8.5 18.6042 8.37917 18.3625 8.1375C18.1208 7.89583 18 7.6 18 7.25C18 6.9 18.1208 6.60417 18.3625 6.3625C18.6042 6.12083 18.9 6 19.25 6C19.6 6 19.8958 6.12083 20.1375 6.3625C20.3792 6.60417 20.5 6.9 20.5 7.25C20.5 7.6 20.3792 7.89583 20.1375 8.1375C19.8958 8.37917 19.6 8.5 19.25 8.5ZM19.25 18C18.9 18 18.6042 17.8792 18.3625 17.6375C18.1208 17.3958 18 17.1 18 16.75C18 16.4 18.1208 16.1042 18.3625 15.8625C18.6042 15.6208 18.9 15.5 19.25 15.5C19.6 15.5 19.8958 15.6208 20.1375 15.8625C20.3792 16.1042 20.5 16.4 20.5 16.75C20.5 17.1 20.3792 17.3958 20.1375 17.6375C19.8958 17.8792 19.6 18 19.25 18ZM20.75 13.25C20.4 13.25 20.1042 13.1292 19.8625 12.8875C19.6208 12.6458 19.5 12.35 19.5 12C19.5 11.65 19.6208 11.3542 19.8625 11.1125C20.1042 10.8708 20.4 10.75 20.75 10.75C21.1 10.75 21.3958 10.8708 21.6375 11.1125C21.8792 11.3542 22 11.65 22 12C22 12.35 21.8792 12.6458 21.6375 12.8875C21.3958 13.1292 21.1 13.25 20.75 13.25ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2V4C9.76667 4 7.875 4.775 6.325 6.325C4.775 7.875 4 9.76667 4 12C4 14.2333 4.775 16.125 6.325 17.675C7.875 19.225 9.76667 20 12 20V22ZM12 14C11.45 14 10.9792 13.8042 10.5875 13.4125C10.1958 13.0208 10 12.55 10 12C10 11.9167 10.0042 11.8292 10.0125 11.7375C10.0208 11.6458 10.0417 11.5583 10.075 11.475L8 9.4L9.4 8L11.475 10.075C11.5417 10.0583 11.7167 10.0333 12 10C12.55 10 13.0208 10.1958 13.4125 10.5875C13.8042 10.9792 14 11.45 14 12C14 12.55 13.8042 13.0208 13.4125 13.4125C13.0208 13.8042 12.55 14 12 14Z",fill:"currentColor"},null,-1)),Et=t.defineComponent({__name:"ResponseIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon response-icon","data-testid":"kui-icon-wrapper-response-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-response-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",kt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),bt],8,vt))]),_:1},8,["aria-hidden","style"]))}}),_t=R(Et,[["__scopeId","data-v-ff64c8af"]]),Nt=e=>(t.pushScopeId("data-v-19d79ba8"),e=e(),t.popScopeId(),e),wt=["aria-hidden"],Rt={key:0,"data-testid":"kui-icon-svg-title"},Tt=Nt(()=>t.createElementVNode("path",{d:"M16 18V16H18.6L13.4 10.85L9.4 14.85L2 7.4L3.4 6L9.4 12L13.4 8L20 14.6V12H22V18H16Z",fill:"currentColor"},null,-1)),It=t.defineComponent({__name:"TrendDownIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-down-icon","data-testid":"kui-icon-wrapper-trend-down-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-down-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Rt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Tt],8,wt))]),_:1},8,["aria-hidden","style"]))}}),Bt=R(It,[["__scopeId","data-v-19d79ba8"]]),Vt=e=>(t.pushScopeId("data-v-d4a4b583"),e=e(),t.popScopeId(),e),xt=["aria-hidden"],Dt={key:0,"data-testid":"kui-icon-svg-title"},Lt=Vt(()=>t.createElementVNode("path",{d:"M3.4 18L2 16.6L9.4 9.15L13.4 13.15L18.6 8H16V6H22V12H20V9.4L13.4 16L9.4 12L3.4 18Z",fill:"currentColor"},null,-1)),At=t.defineComponent({__name:"TrendUpIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-up-icon","data-testid":"kui-icon-wrapper-trend-up-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-up-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Dt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Lt],8,xt))]),_:1},8,["aria-hidden","style"]))}}),zt=R(At,[["__scopeId","data-v-d4a4b583"]]),qt=e=>(t.pushScopeId("data-v-037898c7"),e=e(),t.popScopeId(),e),Ot=["aria-hidden"],Mt={key:0,"data-testid":"kui-icon-svg-title"},Ft=qt(()=>t.createElementVNode("path",{d:"M9 20C8.68333 20 8.4 19.9083 8.15 19.725C7.9 19.5417 7.71667 19.3083 7.6 19.025L5.3 13H1V11H6.7L9 17.1L13.6 4.975C13.7167 4.69167 13.9 4.45833 14.15 4.275C14.4 4.09167 14.6833 4 15 4C15.3167 4 15.6 4.09167 15.85 4.275C16.1 4.45833 16.2833 4.69167 16.4 4.975L18.7 11H23V13H17.3L15 6.9L10.4 19.025C10.2833 19.3083 10.1 19.5417 9.85 19.725C9.6 19.9083 9.31667 20 9 20Z",fill:"currentColor"},null,-1)),Ht=t.defineComponent({__name:"VitalsIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon vitals-icon","data-testid":"kui-icon-wrapper-vitals-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-vitals-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Mt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Ft],8,Ot))]),_:1},8,["aria-hidden","style"]))}}),$t=R(Ht,[["__scopeId","data-v-037898c7"]]),Kt=e=>(t.pushScopeId("data-v-5c520bd5"),e=e(),t.popScopeId(),e),Pt=["aria-hidden"],Ut={key:0,"data-testid":"kui-icon-svg-title"},Xt=Kt(()=>t.createElementVNode("path",{d:"M12.0001 22.025C11.7334 22.025 11.4793 21.975 11.2376 21.875C10.9959 21.775 10.7751 21.6333 10.5751 21.45L2.5501 13.425C2.36676 13.225 2.2251 13.0041 2.1251 12.7625C2.0251 12.5208 1.9751 12.2666 1.9751 12C1.9751 11.7333 2.0251 11.475 2.1251 11.225C2.2251 10.975 2.36676 10.7583 2.5501 10.575L10.5751 2.54998C10.7751 2.34998 10.9959 2.20414 11.2376 2.11248C11.4793 2.02081 11.7334 1.97498 12.0001 1.97498C12.2668 1.97498 12.5251 2.02081 12.7751 2.11248C13.0251 2.20414 13.2418 2.34998 13.4251 2.54998L21.4501 10.575C21.6501 10.7583 21.7959 10.975 21.8876 11.225C21.9793 11.475 22.0251 11.7333 22.0251 12C22.0251 12.2666 21.9793 12.5208 21.8876 12.7625C21.7959 13.0041 21.6501 13.225 21.4501 13.425L13.4251 21.45C13.2418 21.6333 13.0251 21.775 12.7751 21.875C12.5251 21.975 12.2668 22.025 12.0001 22.025ZM12.0001 20.025L20.0251 12L12.0001 3.97498L3.9751 12L12.0001 20.025ZM11.0001 13H13.0001V6.99998H11.0001V13ZM12.0001 16C12.2834 16 12.5209 15.9041 12.7126 15.7125C12.9043 15.5208 13.0001 15.2833 13.0001 15C13.0001 14.7166 12.9043 14.4791 12.7126 14.2875C12.5209 14.0958 12.2834 14 12.0001 14C11.7168 14 11.4793 14.0958 11.2876 14.2875C11.0959 14.4791 11.0001 14.7166 11.0001 15C11.0001 15.2833 11.0959 15.5208 11.2876 15.7125C11.4793 15.9041 11.7168 16 12.0001 16Z",fill:"currentColor"},null,-1)),Zt=t.defineComponent({__name:"WarningOutlineIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-outline-icon","data-testid":"kui-icon-wrapper-warning-outline-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-outline-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Ut,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Xt],8,Pt))]),_:1},8,["aria-hidden","style"]))}}),Gt=R(Zt,[["__scopeId","data-v-5c520bd5"]]),jt=e=>(t.pushScopeId("data-v-26958fb8"),e=e(),t.popScopeId(),e),Yt=["aria-hidden"],Qt={key:0,"data-testid":"kui-icon-svg-title"},Wt=jt(()=>t.createElementVNode("path",{d:"M12.025 22.05C11.7583 22.05 11.5042 22 11.2625 21.9C11.0208 21.8 10.8 21.6583 10.6 21.475L2.575 13.45C2.39167 13.25 2.25 13.0292 2.15 12.7875C2.05 12.5458 2 12.2917 2 12.025C2 11.7583 2.05 11.5 2.15 11.25C2.25 11 2.39167 10.7833 2.575 10.6L10.6 2.575C10.8 2.375 11.0208 2.22917 11.2625 2.1375C11.5042 2.04583 11.7583 2 12.025 2C12.2917 2 12.55 2.04583 12.8 2.1375C13.05 2.22917 13.2667 2.375 13.45 2.575L21.475 10.6C21.675 10.7833 21.8208 11 21.9125 11.25C22.0042 11.5 22.05 11.7583 22.05 12.025C22.05 12.2917 22.0042 12.5458 21.9125 12.7875C21.8208 13.0292 21.675 13.25 21.475 13.45L13.45 21.475C13.2667 21.6583 13.05 21.8 12.8 21.9C12.55 22 12.2917 22.05 12.025 22.05ZM11.025 13.025H13.025V7.025H11.025V13.025ZM12.025 16.025C12.3083 16.025 12.5458 15.9292 12.7375 15.7375C12.9292 15.5458 13.025 15.3083 13.025 15.025C13.025 14.7417 12.9292 14.5042 12.7375 14.3125C12.5458 14.1208 12.3083 14.025 12.025 14.025C11.7417 14.025 11.5042 14.1208 11.3125 14.3125C11.1208 14.5042 11.025 14.7417 11.025 15.025C11.025 15.3083 11.1208 15.5458 11.3125 15.7375C11.5042 15.9292 11.7417 16.025 12.025 16.025Z",fill:"currentColor"},null,-1)),Jt=t.defineComponent({__name:"WarningIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:k,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return k}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-icon","data-testid":"kui-icon-wrapper-warning-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Qt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Wt],8,Yt))]),_:1},8,["aria-hidden","style"]))}}),ge=R(Jt,[["__scopeId","data-v-26958fb8"]]),j=2,ye=j+2,er=(e,r,i=!1)=>{let o=!r||Number(e.toFixed(ye))===0?0:Number(e.toFixed(ye))>0?1:-1;return i&&(o*=-1),o},tr=(e,r,i)=>r?`${Math.abs(e*100).toFixed(j)}%`:i,rr=(e,r)=>r===0?0:e/r-1,ir=(e,r=!1)=>(r&&(e*=-1),e>0?zt:e<0?Bt:me),nr="#ad000e",Y="#6c7489",he="#52596e",ar="#007d60",F="16px",or="20px",lr={class:"metricscard"},sr={key:0,class:"metricscard-description"},cr={class:"metricscard-valuetrend"},dr={key:0,class:"metricscard-error"},ur={key:2,class:"metricscard-trend"},fr={"data-testid":"metric-trend-change"},pr={key:0,class:"metricscard-trend-range"},mr=t.defineComponent({__name:"MetricsCard",props:{cardType:{type:String,required:!0,default:N.GENERIC_COUNT},title:{type:String,default:"0%",required:!0},description:{type:String,default:"",required:!1},tooltip:{type:String,required:!1,default:""},timeframe:{type:String,required:!1,default:""},metricValue:{type:String,default:""},metricChange:{type:String,required:!0},changePolarity:{type:Number,required:!0},trendIcon:{type:Object,default:me},trendRange:{type:String,default:""},hasError:{type:Boolean,default:!1},errorMessage:{type:String,default:"Vitals data error"},cardSize:{type:String,required:!1,default:()=>w.Large},hasContainerTitle:{type:Boolean,required:!1,default:!1},titleTag:{type:String,default:"span"}},setup(e){const r=new Map([[N.GENERIC_COUNT,$t],[N.TRAFFIC,tt],[N.ERROR_RATE,Gt],[N.LATENCY,_t]]),i=e,o=p=>{const f={red:`var(--kong-ui-metric-card-trend-negative, ${nr})`,green:`var(--kong-ui-metric-card-trend-positive, ${ar})`,grey:`var(--kong-ui-metric-card-trend-neutral, ${he})`};return p>0?f.green:p<0?f.red:f.grey},a=p=>p>0?"positive":p<0?"negative":"neutral",n=[w.Medium,w.Large].includes(i.cardSize),c=[w.Small].includes(i.cardSize);return(p,f)=>{const l=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",lr,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-title",e.cardSize])},[t.unref(c)?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r).get(e.cardType)),{key:0,class:"metricscard-icon",color:t.unref(Y),size:t.unref(F)},null,8,["color","size"])),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.titleTag),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.title),1)]),_:1})),e.tooltip?(t.openBlock(),t.createBlock(l,{key:1,class:"metricscard-tooltip",placement:"right",text:e.tooltip},{default:t.withCtx(()=>[t.createVNode(t.unref(Ct),{color:t.unref(Y),size:t.unref(F)},null,8,["color","size"])]),_:1},8,["text"])):t.createCommentVNode("",!0)],2),e.description&&t.unref(n)?(t.openBlock(),t.createElementBlock("div",sr,[t.createElementVNode("span",null,t.toDisplayString(e.description),1)])):t.createCommentVNode("",!0),t.createElementVNode("div",cr,[e.hasError?(t.openBlock(),t.createElementBlock("div",dr,[t.createVNode(t.unref(ge),{color:t.unref(Y),size:t.unref(or)},null,8,["color","size"]),t.createElementVNode("div",null," "+t.toDisplayString(e.errorMessage),1)])):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["metricscard-value",e.cardSize]),"data-testid":"metric-value"},t.toDisplayString(e.metricValue),3)),t.unref(n)?(t.openBlock(),t.createElementBlock("div",ur,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-trend-change",a(e.changePolarity)]),"data-testid":"metric-trend-parent"},[e.changePolarity!==0?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.trendIcon),{key:0,color:o(e.changePolarity),size:t.unref(F)},null,8,["color","size"])):(t.openBlock(),t.createBlock(t.unref(lt),{key:1,color:t.unref(he),size:t.unref(F)},null,8,["color","size"])),t.createElementVNode("div",fr,t.toDisplayString(e.metricChange),1)],2),e.trendRange?(t.openBlock(),t.createElementBlock("div",pr,t.toDisplayString(e.trendRange),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)])])}}}),Q=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},gr=Q(mr,[["__scopeId","data-v-1b8a31a0"]]),yr={},hr={class:"loading-tabs"};function Cr(e,r){const i=t.resolveComponent("KSkeletonBox");return t.openBlock(),t.createElementBlock("div",hr,[t.createVNode(i,{width:"100"}),t.createVNode(i,{width:"75"})])}const Sr=Q(yr,[["render",Cr],["__scopeId","data-v-f7eb9c40"]]),vr={key:0,class:"container-title"},kr={key:0,class:"container-description"},br={key:1,class:"error-display"},Er={key:0,class:"error-display-message"},_r={key:2,class:"cards-wrapper"},Nr=Q(t.defineComponent({__name:"MetricCardContainer",props:{fallbackDisplayText:{type:String,required:!0},cards:{type:Array,required:!0},errorMessage:{type:String,required:!1,default:""},loading:{type:Boolean,required:!1,default:!1},hasTrendAccess:{type:Boolean,required:!1,default:!0},cardSize:{type:String,required:!1,default:()=>w.Large},containerTitle:{type:String,required:!1,default:""},containerDescription:{type:String,required:!1,default:""}},setup(e){const r=e,i=t.computed(()=>r.cards.every(a=>(a==null?void 0:a.hasError)===!0)),o=a=>{const n=rr(a.currentValue,a.previousValue)||0,c=er(n,r.hasTrendAccess,a.increaseIsBad);return{metricValue:a.formatValueFn?a.formatValueFn(a.currentValue):je(a.currentValue,{capital:!0,round:!0})||"0",metricChange:a.formatChangeFn?a.formatChangeFn(n):tr(n,r.hasTrendAccess,r.fallbackDisplayText),changePolarity:c,trendIcon:ir(c,a.increaseIsBad),cardSize:r.cardSize,hasContainerTitle:!!r.containerTitle}};return(a,n)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-public-metric-card-container",e.cardSize])},[r.containerTitle?(t.openBlock(),t.createElementBlock("div",vr,[t.createTextVNode(t.toDisplayString(r.containerTitle)+" ",1),r.containerDescription?(t.openBlock(),t.createElementBlock("div",kr,t.toDisplayString(r.containerDescription),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0),i.value?(t.openBlock(),t.createElementBlock("div",br,[t.createVNode(t.unref(ge),{class:"error-display-icon"}),e.errorMessage?(t.openBlock(),t.createElementBlock("div",Er,t.toDisplayString(e.errorMessage),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createElementBlock("div",_r,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.cards,(c,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.loading?(t.openBlock(),t.createBlock(Sr,{key:`skeleton-${p}`,class:t.normalizeClass(e.cardSize===t.unref(w).Small?"loading-tabs-small":"loading-tabs-large")},null,8,["class"])):(t.openBlock(),t.createBlock(gr,t.mergeProps({key:p,ref_for:!0},o(c),{"card-size":e.cardSize,"card-type":c.cardType,description:c.description,"error-message":e.errorMessage,"has-error":c.hasError,title:c.title,"title-tag":c.titleTag,tooltip:c.tooltip,"trend-range":c.trendRange}),null,16,["card-size","card-type","description","error-message","has-error","title","title-tag","tooltip","trend-range"]))],64))),256))]))],2))}}),[["__scopeId","data-v-d3a810e0"]]),wr=t.defineComponent({__name:"MetricsConsumer",props:{lookupKey:{default:void 0},cardSize:{default:w.Large},cardToDisplay:{default:void 0}},setup(e){const r=e,i=t.inject(fe);if(!i)throw new Error("MetricsConsumer must be nested inside a MetricsProvider instance.");const{traffic:o,latency:a}=i.data,{i18n:n}=V.useI18n(),c=V.useMetricCardBuilder({cardType:N.TRAFFIC,title:t.computed(()=>i.longCardTitles?n.t("metricCard.long.traffic"):n.t("metricCard.short.traffic")),record:o.mapped,hasError:o.hasError,lookupKey:r.lookupKey,sumGroupedValues:L,trendRange:o.trendRange}),p=g=>`${g.toFixed(j)}%`,f=t.computed(()=>{const g=o.mapped.value,C=A(g,"current",r.lookupKey,K),b=A(g,"current",r.lookupKey,L),S=C/b*100||0,y=A(g,"previous",r.lookupKey,K),B=A(g,"previous",r.lookupKey,L),E=y/B*100||0;return{cardType:N.ERROR_RATE,hasError:o.hasError.value,currentValue:S,previousValue:E,formatValueFn:p,title:i.longCardTitles?n.t("metricCard.long.errorRate"):n.t("metricCard.short.errorRate"),increaseIsBad:!0,trendRange:o.trendRange.value}}),l=g=>`${g}ms`,s=V.useMetricCardBuilder({cardType:N.LATENCY,title:t.computed(()=>{const{longCardTitles:g,averageLatencies:C}=i,b=C.value?"averageLatency":"p99Latency";return g?n.t(`metricCard.long.${b}`):n.t(`metricCard.short.${b}`)}),hasError:a.hasError,record:a.mapped,lookupKey:r.lookupKey,increaseIsBad:!0,formatValueFn:l,trendRange:a.trendRange}),d=t.computed(()=>r.cardToDisplay==="TRAFFIC"?[c.value]:r.cardToDisplay==="ERROR_RATE"?[f.value]:r.cardToDisplay==="LATENCY"?[s.value]:[c.value,f.value,s.value]),u=t.computed(()=>r.cardToDisplay==="TRAFFIC"||r.cardToDisplay==="ERROR_RATE"?o.isLoading.value:r.cardToDisplay==="LATENCY"?a.isLoading.value:o.isLoading.value||a.isLoading.value),m=t.computed(()=>({cards:d.value,containerTitle:i.containerTitle.value,containerDescription:i.description.value,loading:u.value,hasTrendAccess:i.hasTrendAccess.value,fallbackDisplayText:n.t("general.notAvailable"),cardSize:i.containerTitle.value?w.Medium:r.cardSize,hideTitle:!0})),h=t.computed(()=>({loading:m.value.loading,trafficCard:c.value,errorRateCard:f.value,latencyCard:s.value,errorRateFormatted:p(f.value.currentValue),latencyFormatted:l(s.value.currentValue)}));return(g,C)=>t.renderSlot(g.$slots,"default",{cardValues:h.value},()=>[t.createVNode(Nr,t.normalizeProps(t.guardReactiveProps(m.value)),null,16)])}}),H=e=>new Date(e),Rr=(e,r)=>{const i=e.body;e.reply({statusCode:200,body:Se(i,r)})},Ce=e=>e.reduce((r,i)=>(r[i]={name:i},r),{}),Se=(e,r)=>{var h,g;const i=_.TimePeriods.get(_.TimeframeKeys.ONE_DAY),o=e.granularity==="trend"?new _.DeltaQueryTime(i):new _.UnaryQueryTime(i),a=o.endMs(),n=o.startMs(),c=o.granularityMs(),p=e.granularity==="trend"?2:1;if((e.dimensions??[]).length>2)throw new Error(`Explore only supports 0-2 dimensions; got: ${JSON.stringify(e.dimensions)}`);const f=(e.dimensions??[]).find(C=>C!=="time"),l=(r==null?void 0:r.dimensionNames)??[],s=Math.max(l.length,1),d=e.metrics||[],u=[];for(let C=0;C<p;C++)for(let b=0;b<s;b++){const S=f?{[f]:l[b]}:{};(h=e.dimensions)!=null&&h.includes("status_code_grouped")?L.forEach(y=>{const B=d.reduce((E,x)=>(E[x]=(p-C)*1e3+100*b+1,E),{...S,status_code_grouped:y});u.push({version:"v1",timestamp:C===0?H(n).toISOString():H(n+c).toISOString(),event:B})}):u.push({version:"v1",timestamp:C===0?H(n).toISOString():H(n+c).toISOString(),event:d.reduce((y,B)=>(y[B]=(p-C)*1e3+100*b+1,y),{...S})})}const m={start_ms:n,end_ms:a,granularity_ms:c,display:f?{[f]:Ce(l),...(g=e.dimensions)!=null&&g.includes("status_code_grouped")?{status_code_grouped:Ce(L)}:{}}:{},metric_names:e.metrics,query_id:"test"};return{data:u,meta:m}};v.ALL_STATUS_CODE_GROUPS=L,v.DEFAULT_REFRESH_INTERVAL=ne,v.INJECT_QUERY_PROVIDER=ae,v.MAX_ANALYTICS_REQUEST_RETRIES=ie,v.MetricCardSize=w,v.MetricCardType=N,v.MetricsConsumer=wr,v.MetricsProvider=Xe,v.STATUS_CODES_FAILED=K,v.STATUS_CODES_SUCCESS=Re,v.mockExploreResponse=Se,v.mockExploreResponseFromCypress=Rr,Object.defineProperty(v,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kong-ui-public/analytics-metric-provider",
|
|
3
|
-
"version": "7.2.
|
|
3
|
+
"version": "7.2.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/vitals-metric-provider.umd.js",
|
|
6
6
|
"module": "./dist/vitals-metric-provider.es.js",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@kong-ui-public/core": "1.1.0",
|
|
36
|
-
"@kong/icons": "^1.9.
|
|
36
|
+
"@kong/icons": "^1.9.2",
|
|
37
37
|
"approximate-number": "^2.1.1",
|
|
38
38
|
"axios": "^1.6.8",
|
|
39
39
|
"swrv": "^1.0.4"
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
"@kong/kongponents": "9.0.0-alpha.162",
|
|
50
50
|
"pinia": ">= 2.1.7 < 3",
|
|
51
51
|
"@kong-ui-public/analytics-config-store": "^0.6.0",
|
|
52
|
-
"@kong-ui-public/
|
|
53
|
-
"@kong-ui-public/
|
|
52
|
+
"@kong-ui-public/analytics-utilities": "^3.5.0",
|
|
53
|
+
"@kong-ui-public/i18n": "^2.2.1"
|
|
54
54
|
},
|
|
55
55
|
"scripts": {
|
|
56
56
|
"dev": "cross-env USE_SANDBOX=true vite",
|