@kong-ui-public/dashboard-renderer 8.29.6 → 8.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{GeoMapRenderer-089QFkSg.js → GeoMapRenderer-DBfDS4cI.js} +1 -1
- package/dist/dashboard-renderer.es.js +1 -1
- package/dist/dashboard-renderer.umd.js +11 -11
- package/dist/{index-D8pPg946.js → index-D0YYz-0D.js} +1008 -997
- package/dist/style.css +1 -1
- package/dist/types/components/BaseAnalyticsChartRenderer.vue.d.ts.map +1 -1
- package/dist/types/components/DashboardRenderer.vue.d.ts +56 -4
- package/dist/types/components/DashboardRenderer.vue.d.ts.map +1 -1
- package/dist/types/components/DashboardTile.vue.d.ts +84 -6
- package/dist/types/components/DashboardTile.vue.d.ts.map +1 -1
- package/package.json +12 -12
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { defineComponent as _e, computed as
|
|
2
|
-
import { isPlatformDatasource as
|
|
3
|
-
import { InfoIcon as
|
|
4
|
-
import { createI18n as
|
|
5
|
-
import { useAnalyticsConfigStore as
|
|
6
|
-
import { handleQueryError as
|
|
7
|
-
import
|
|
1
|
+
import { defineComponent as _e, computed as b, openBlock as z, createElementBlock as se, renderSlot as et, createTextVNode as Je, toDisplayString as ie, createVNode as me, withCtx as U, inject as Ae, provide as As, toRaw as Is, isRef as Ls, isReactive as qs, toRef as dt, hasInjectionContext as ui, ref as Q, onMounted as zt, watch as Ye, onUnmounted as at, getCurrentInstance as Ps, readonly as Wt, resolveComponent as ve, withKeys as Hs, unref as D, createElementVNode as ue, createCommentVNode as fe, createBlock as B, watchEffect as ss, createSlots as pt, normalizeStyle as xt, normalizeClass as rt, mergeProps as ns, normalizeProps as Fs, guardReactiveProps as $s, defineAsyncComponent as rs, Fragment as Vt, useCssVars as Zt, useModel as os, nextTick as Jt, resolveDynamicComponent as as, toHandlers as Us, mergeModels as Et, renderList as ls, useTemplateRef as ci } from "vue";
|
|
2
|
+
import { isPlatformDatasource as ei, msToGranularity as Gt, TimePeriods as ti, TIMEFRAME_LOOKUP as ii, requestFilterTypeEmptyV2 as Bs, relativeTimeRangeValuesRequestV2 as Ws, fetchAllRequests as Gs, restoreAfterCapture as di, prepareForCapture as Ys, formatTimestamp as hi, EXPORT_RECORD_LIMIT as us, finestGranularityForDuration as js, Granularities as fi, formatTime as mi } from "@kong-ui-public/analytics-utilities";
|
|
3
|
+
import { InfoIcon as Ks, VisibilityOffIcon as cs, WarningOutlineIcon as ds, WarningIcon as pi, ProgressIcon as Qs, RefreshIcon as Xs, EditIcon as Vs, MoreIcon as Zs } from "@kong/icons";
|
|
4
|
+
import { createI18n as Js, i18nTComponent as en } from "@kong-ui-public/i18n";
|
|
5
|
+
import { useAnalyticsConfigStore as si, useDatasourceConfigStore as lt } from "@kong-ui-public/analytics-config-store";
|
|
6
|
+
import { handleQueryError as hs, SimpleChart as tn, AnalyticsChart as Yt, requestsToScatterData as sn, TopNTable as nn } from "@kong-ui-public/analytics-chart";
|
|
7
|
+
import fs from "swrv";
|
|
8
8
|
import "axios";
|
|
9
|
-
import { MetricsProvider as
|
|
10
|
-
import { TableDataGrid as
|
|
11
|
-
import { KSegmentedControl as
|
|
12
|
-
const
|
|
9
|
+
import { MetricsProvider as rn, MetricsConsumer as on } from "@kong-ui-public/analytics-metric-provider";
|
|
10
|
+
import { TableDataGrid as an } from "@kong-ui-public/table-data-grid";
|
|
11
|
+
import { KSegmentedControl as ln } from "@kong/kongponents";
|
|
12
|
+
const un = {
|
|
13
13
|
lessThanXSeconds: {
|
|
14
14
|
one: "less than a second",
|
|
15
15
|
other: "less than {{count}} seconds"
|
|
@@ -71,54 +71,54 @@ const ln = {
|
|
|
71
71
|
one: "almost 1 year",
|
|
72
72
|
other: "almost {{count}} years"
|
|
73
73
|
}
|
|
74
|
-
},
|
|
74
|
+
}, cn = (s, e, t) => {
|
|
75
75
|
let i;
|
|
76
|
-
const n =
|
|
76
|
+
const n = un[s];
|
|
77
77
|
return typeof n == "string" ? i = n : e === 1 ? i = n.one : i = n.other.replace("{{count}}", e.toString()), t?.addSuffix ? t.comparison && t.comparison > 0 ? "in " + i : i + " ago" : i;
|
|
78
78
|
};
|
|
79
|
-
function
|
|
79
|
+
function Lt(s) {
|
|
80
80
|
return (e = {}) => {
|
|
81
81
|
const t = e.width ? String(e.width) : s.defaultWidth;
|
|
82
82
|
return s.formats[t] || s.formats[s.defaultWidth];
|
|
83
83
|
};
|
|
84
84
|
}
|
|
85
|
-
const
|
|
85
|
+
const dn = {
|
|
86
86
|
full: "EEEE, MMMM do, y",
|
|
87
87
|
long: "MMMM do, y",
|
|
88
88
|
medium: "MMM d, y",
|
|
89
89
|
short: "MM/dd/yyyy"
|
|
90
|
-
},
|
|
90
|
+
}, hn = {
|
|
91
91
|
full: "h:mm:ss a zzzz",
|
|
92
92
|
long: "h:mm:ss a z",
|
|
93
93
|
medium: "h:mm:ss a",
|
|
94
94
|
short: "h:mm a"
|
|
95
|
-
},
|
|
95
|
+
}, fn = {
|
|
96
96
|
full: "{{date}} 'at' {{time}}",
|
|
97
97
|
long: "{{date}} 'at' {{time}}",
|
|
98
98
|
medium: "{{date}}, {{time}}",
|
|
99
99
|
short: "{{date}}, {{time}}"
|
|
100
|
-
},
|
|
101
|
-
date:
|
|
102
|
-
formats: cn,
|
|
103
|
-
defaultWidth: "full"
|
|
104
|
-
}),
|
|
105
|
-
time: It({
|
|
100
|
+
}, mn = {
|
|
101
|
+
date: Lt({
|
|
106
102
|
formats: dn,
|
|
107
103
|
defaultWidth: "full"
|
|
108
104
|
}),
|
|
109
|
-
|
|
105
|
+
time: Lt({
|
|
110
106
|
formats: hn,
|
|
111
107
|
defaultWidth: "full"
|
|
108
|
+
}),
|
|
109
|
+
dateTime: Lt({
|
|
110
|
+
formats: fn,
|
|
111
|
+
defaultWidth: "full"
|
|
112
112
|
})
|
|
113
|
-
},
|
|
113
|
+
}, pn = {
|
|
114
114
|
lastWeek: "'last' eeee 'at' p",
|
|
115
115
|
yesterday: "'yesterday at' p",
|
|
116
116
|
today: "'today at' p",
|
|
117
117
|
tomorrow: "'tomorrow at' p",
|
|
118
118
|
nextWeek: "eeee 'at' p",
|
|
119
119
|
other: "P"
|
|
120
|
-
},
|
|
121
|
-
function
|
|
120
|
+
}, gn = (s, e, t, i) => pn[s];
|
|
121
|
+
function ut(s) {
|
|
122
122
|
return (e, t) => {
|
|
123
123
|
const i = t?.context ? String(t.context) : "standalone";
|
|
124
124
|
let n;
|
|
@@ -133,15 +133,15 @@ function lt(s) {
|
|
|
133
133
|
return n[r];
|
|
134
134
|
};
|
|
135
135
|
}
|
|
136
|
-
const
|
|
136
|
+
const yn = {
|
|
137
137
|
narrow: ["B", "A"],
|
|
138
138
|
abbreviated: ["BC", "AD"],
|
|
139
139
|
wide: ["Before Christ", "Anno Domini"]
|
|
140
|
-
},
|
|
140
|
+
}, vn = {
|
|
141
141
|
narrow: ["1", "2", "3", "4"],
|
|
142
142
|
abbreviated: ["Q1", "Q2", "Q3", "Q4"],
|
|
143
143
|
wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
|
|
144
|
-
},
|
|
144
|
+
}, _n = {
|
|
145
145
|
narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
|
|
146
146
|
abbreviated: [
|
|
147
147
|
"Jan",
|
|
@@ -171,7 +171,7 @@ const gn = {
|
|
|
171
171
|
"November",
|
|
172
172
|
"December"
|
|
173
173
|
]
|
|
174
|
-
},
|
|
174
|
+
}, wn = {
|
|
175
175
|
narrow: ["S", "M", "T", "W", "T", "F", "S"],
|
|
176
176
|
short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
|
|
177
177
|
abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
|
|
@@ -184,7 +184,7 @@ const gn = {
|
|
|
184
184
|
"Friday",
|
|
185
185
|
"Saturday"
|
|
186
186
|
]
|
|
187
|
-
},
|
|
187
|
+
}, bn = {
|
|
188
188
|
narrow: {
|
|
189
189
|
am: "a",
|
|
190
190
|
pm: "p",
|
|
@@ -215,7 +215,7 @@ const gn = {
|
|
|
215
215
|
evening: "evening",
|
|
216
216
|
night: "night"
|
|
217
217
|
}
|
|
218
|
-
},
|
|
218
|
+
}, xn = {
|
|
219
219
|
narrow: {
|
|
220
220
|
am: "a",
|
|
221
221
|
pm: "p",
|
|
@@ -246,7 +246,7 @@ const gn = {
|
|
|
246
246
|
evening: "in the evening",
|
|
247
247
|
night: "at night"
|
|
248
248
|
}
|
|
249
|
-
},
|
|
249
|
+
}, En = (s, e) => {
|
|
250
250
|
const t = Number(s), i = t % 100;
|
|
251
251
|
if (i > 20 || i < 10)
|
|
252
252
|
switch (i % 10) {
|
|
@@ -258,40 +258,40 @@ const gn = {
|
|
|
258
258
|
return t + "rd";
|
|
259
259
|
}
|
|
260
260
|
return t + "th";
|
|
261
|
-
},
|
|
262
|
-
ordinalNumber:
|
|
263
|
-
era:
|
|
264
|
-
values:
|
|
261
|
+
}, Cn = {
|
|
262
|
+
ordinalNumber: En,
|
|
263
|
+
era: ut({
|
|
264
|
+
values: yn,
|
|
265
265
|
defaultWidth: "wide"
|
|
266
266
|
}),
|
|
267
|
-
quarter:
|
|
268
|
-
values:
|
|
267
|
+
quarter: ut({
|
|
268
|
+
values: vn,
|
|
269
269
|
defaultWidth: "wide",
|
|
270
270
|
argumentCallback: (s) => s - 1
|
|
271
271
|
}),
|
|
272
|
-
month:
|
|
273
|
-
values: vn,
|
|
274
|
-
defaultWidth: "wide"
|
|
275
|
-
}),
|
|
276
|
-
day: lt({
|
|
272
|
+
month: ut({
|
|
277
273
|
values: _n,
|
|
278
274
|
defaultWidth: "wide"
|
|
279
275
|
}),
|
|
280
|
-
|
|
276
|
+
day: ut({
|
|
281
277
|
values: wn,
|
|
278
|
+
defaultWidth: "wide"
|
|
279
|
+
}),
|
|
280
|
+
dayPeriod: ut({
|
|
281
|
+
values: bn,
|
|
282
282
|
defaultWidth: "wide",
|
|
283
|
-
formattingValues:
|
|
283
|
+
formattingValues: xn,
|
|
284
284
|
defaultFormattingWidth: "wide"
|
|
285
285
|
})
|
|
286
286
|
};
|
|
287
|
-
function
|
|
287
|
+
function ct(s) {
|
|
288
288
|
return (e, t = {}) => {
|
|
289
289
|
const i = t.width, n = i && s.matchPatterns[i] || s.matchPatterns[s.defaultMatchWidth], r = e.match(n);
|
|
290
290
|
if (!r)
|
|
291
291
|
return null;
|
|
292
|
-
const o = r[0], a = i && s.parsePatterns[i] || s.parsePatterns[s.defaultParseWidth], c = Array.isArray(a) ?
|
|
292
|
+
const o = r[0], a = i && s.parsePatterns[i] || s.parsePatterns[s.defaultParseWidth], c = Array.isArray(a) ? kn(a, (d) => d.test(o)) : (
|
|
293
293
|
// [TODO] -- I challenge you to fix the type
|
|
294
|
-
|
|
294
|
+
Rn(a, (d) => d.test(o))
|
|
295
295
|
);
|
|
296
296
|
let l;
|
|
297
297
|
l = s.valueCallback ? s.valueCallback(c) : c, l = t.valueCallback ? (
|
|
@@ -302,17 +302,17 @@ function ut(s) {
|
|
|
302
302
|
return { value: l, rest: u };
|
|
303
303
|
};
|
|
304
304
|
}
|
|
305
|
-
function
|
|
305
|
+
function Rn(s, e) {
|
|
306
306
|
for (const t in s)
|
|
307
307
|
if (Object.prototype.hasOwnProperty.call(s, t) && e(s[t]))
|
|
308
308
|
return t;
|
|
309
309
|
}
|
|
310
|
-
function
|
|
310
|
+
function kn(s, e) {
|
|
311
311
|
for (let t = 0; t < s.length; t++)
|
|
312
312
|
if (e(s[t]))
|
|
313
313
|
return t;
|
|
314
314
|
}
|
|
315
|
-
function
|
|
315
|
+
function Tn(s) {
|
|
316
316
|
return (e, t = {}) => {
|
|
317
317
|
const i = e.match(s.matchPattern);
|
|
318
318
|
if (!i) return null;
|
|
@@ -324,23 +324,23 @@ function kn(s) {
|
|
|
324
324
|
return { value: o, rest: a };
|
|
325
325
|
};
|
|
326
326
|
}
|
|
327
|
-
const
|
|
327
|
+
const Sn = /^(\d+)(th|st|nd|rd)?/i, Dn = /\d+/i, On = {
|
|
328
328
|
narrow: /^(b|a)/i,
|
|
329
329
|
abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
|
|
330
330
|
wide: /^(before christ|before common era|anno domini|common era)/i
|
|
331
|
-
}, On = {
|
|
332
|
-
any: [/^b/i, /^(a|c)/i]
|
|
333
331
|
}, zn = {
|
|
332
|
+
any: [/^b/i, /^(a|c)/i]
|
|
333
|
+
}, Mn = {
|
|
334
334
|
narrow: /^[1234]/i,
|
|
335
335
|
abbreviated: /^q[1234]/i,
|
|
336
336
|
wide: /^[1234](th|st|nd|rd)? quarter/i
|
|
337
|
-
}, Mn = {
|
|
338
|
-
any: [/1/i, /2/i, /3/i, /4/i]
|
|
339
337
|
}, Nn = {
|
|
338
|
+
any: [/1/i, /2/i, /3/i, /4/i]
|
|
339
|
+
}, An = {
|
|
340
340
|
narrow: /^[jfmasond]/i,
|
|
341
341
|
abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
|
|
342
342
|
wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
|
|
343
|
-
},
|
|
343
|
+
}, In = {
|
|
344
344
|
narrow: [
|
|
345
345
|
/^j/i,
|
|
346
346
|
/^f/i,
|
|
@@ -369,18 +369,18 @@ const Tn = /^(\d+)(th|st|nd|rd)?/i, Sn = /\d+/i, Dn = {
|
|
|
369
369
|
/^n/i,
|
|
370
370
|
/^d/i
|
|
371
371
|
]
|
|
372
|
-
},
|
|
372
|
+
}, Ln = {
|
|
373
373
|
narrow: /^[smtwf]/i,
|
|
374
374
|
short: /^(su|mo|tu|we|th|fr|sa)/i,
|
|
375
375
|
abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
|
|
376
376
|
wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
|
|
377
|
-
},
|
|
377
|
+
}, qn = {
|
|
378
378
|
narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
|
|
379
379
|
any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
|
|
380
|
-
},
|
|
380
|
+
}, Pn = {
|
|
381
381
|
narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
|
|
382
382
|
any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
|
|
383
|
-
},
|
|
383
|
+
}, Hn = {
|
|
384
384
|
any: {
|
|
385
385
|
am: /^a/i,
|
|
386
386
|
pm: /^p/i,
|
|
@@ -391,67 +391,67 @@ const Tn = /^(\d+)(th|st|nd|rd)?/i, Sn = /\d+/i, Dn = {
|
|
|
391
391
|
evening: /evening/i,
|
|
392
392
|
night: /night/i
|
|
393
393
|
}
|
|
394
|
-
},
|
|
395
|
-
ordinalNumber:
|
|
396
|
-
matchPattern:
|
|
397
|
-
parsePattern:
|
|
394
|
+
}, Fn = {
|
|
395
|
+
ordinalNumber: Tn({
|
|
396
|
+
matchPattern: Sn,
|
|
397
|
+
parsePattern: Dn,
|
|
398
398
|
valueCallback: (s) => parseInt(s, 10)
|
|
399
399
|
}),
|
|
400
|
-
era:
|
|
401
|
-
matchPatterns:
|
|
400
|
+
era: ct({
|
|
401
|
+
matchPatterns: On,
|
|
402
402
|
defaultMatchWidth: "wide",
|
|
403
|
-
parsePatterns:
|
|
403
|
+
parsePatterns: zn,
|
|
404
404
|
defaultParseWidth: "any"
|
|
405
405
|
}),
|
|
406
|
-
quarter:
|
|
407
|
-
matchPatterns:
|
|
406
|
+
quarter: ct({
|
|
407
|
+
matchPatterns: Mn,
|
|
408
408
|
defaultMatchWidth: "wide",
|
|
409
|
-
parsePatterns:
|
|
409
|
+
parsePatterns: Nn,
|
|
410
410
|
defaultParseWidth: "any",
|
|
411
411
|
valueCallback: (s) => s + 1
|
|
412
412
|
}),
|
|
413
|
-
month:
|
|
414
|
-
matchPatterns:
|
|
413
|
+
month: ct({
|
|
414
|
+
matchPatterns: An,
|
|
415
415
|
defaultMatchWidth: "wide",
|
|
416
|
-
parsePatterns:
|
|
416
|
+
parsePatterns: In,
|
|
417
417
|
defaultParseWidth: "any"
|
|
418
418
|
}),
|
|
419
|
-
day:
|
|
420
|
-
matchPatterns:
|
|
419
|
+
day: ct({
|
|
420
|
+
matchPatterns: Ln,
|
|
421
421
|
defaultMatchWidth: "wide",
|
|
422
|
-
parsePatterns:
|
|
422
|
+
parsePatterns: qn,
|
|
423
423
|
defaultParseWidth: "any"
|
|
424
424
|
}),
|
|
425
|
-
dayPeriod:
|
|
426
|
-
matchPatterns:
|
|
425
|
+
dayPeriod: ct({
|
|
426
|
+
matchPatterns: Pn,
|
|
427
427
|
defaultMatchWidth: "any",
|
|
428
|
-
parsePatterns:
|
|
428
|
+
parsePatterns: Hn,
|
|
429
429
|
defaultParseWidth: "any"
|
|
430
430
|
})
|
|
431
|
-
},
|
|
431
|
+
}, $n = {
|
|
432
432
|
code: "en-US",
|
|
433
|
-
formatDistance:
|
|
434
|
-
formatLong:
|
|
435
|
-
formatRelative:
|
|
436
|
-
localize:
|
|
437
|
-
match:
|
|
433
|
+
formatDistance: cn,
|
|
434
|
+
formatLong: mn,
|
|
435
|
+
formatRelative: gn,
|
|
436
|
+
localize: Cn,
|
|
437
|
+
match: Fn,
|
|
438
438
|
options: {
|
|
439
439
|
weekStartsOn: 0,
|
|
440
440
|
firstWeekContainsDate: 1
|
|
441
441
|
}
|
|
442
442
|
};
|
|
443
|
-
let
|
|
444
|
-
function
|
|
445
|
-
return
|
|
443
|
+
let Un = {};
|
|
444
|
+
function gt() {
|
|
445
|
+
return Un;
|
|
446
446
|
}
|
|
447
|
-
const
|
|
447
|
+
const ms = 6048e5, Bn = 864e5, gi = /* @__PURE__ */ Symbol.for("constructDateFrom");
|
|
448
448
|
function je(s, e) {
|
|
449
|
-
return typeof s == "function" ? s(e) : s && typeof s == "object" &&
|
|
449
|
+
return typeof s == "function" ? s(e) : s && typeof s == "object" && gi in s ? s[gi](e) : s instanceof Date ? new s.constructor(e) : new Date(e);
|
|
450
450
|
}
|
|
451
451
|
function Ie(s, e) {
|
|
452
452
|
return je(e || s, s);
|
|
453
453
|
}
|
|
454
|
-
function
|
|
454
|
+
function yi(s) {
|
|
455
455
|
const e = Ie(s), t = new Date(
|
|
456
456
|
Date.UTC(
|
|
457
457
|
e.getFullYear(),
|
|
@@ -465,73 +465,73 @@ function gi(s) {
|
|
|
465
465
|
);
|
|
466
466
|
return t.setUTCFullYear(e.getFullYear()), +s - +t;
|
|
467
467
|
}
|
|
468
|
-
function
|
|
468
|
+
function Wn(s, ...e) {
|
|
469
469
|
const t = je.bind(
|
|
470
470
|
null,
|
|
471
471
|
e.find((i) => typeof i == "object")
|
|
472
472
|
);
|
|
473
473
|
return e.map(t);
|
|
474
474
|
}
|
|
475
|
-
function
|
|
475
|
+
function vi(s, e) {
|
|
476
476
|
const t = Ie(s, e?.in);
|
|
477
477
|
return t.setHours(0, 0, 0, 0), t;
|
|
478
478
|
}
|
|
479
|
-
function
|
|
480
|
-
const [i, n] =
|
|
479
|
+
function Gn(s, e, t) {
|
|
480
|
+
const [i, n] = Wn(
|
|
481
481
|
t?.in,
|
|
482
482
|
s,
|
|
483
483
|
e
|
|
484
|
-
), r =
|
|
485
|
-
return Math.round((a - c) /
|
|
484
|
+
), r = vi(i), o = vi(n), a = +r - yi(r), c = +o - yi(o);
|
|
485
|
+
return Math.round((a - c) / Bn);
|
|
486
486
|
}
|
|
487
|
-
function
|
|
487
|
+
function Yn(s, e) {
|
|
488
488
|
const t = Ie(s, e?.in);
|
|
489
489
|
return t.setFullYear(t.getFullYear(), 0, 1), t.setHours(0, 0, 0, 0), t;
|
|
490
490
|
}
|
|
491
|
-
function
|
|
491
|
+
function jn(s, e) {
|
|
492
492
|
const t = Ie(s, e?.in);
|
|
493
|
-
return
|
|
493
|
+
return Gn(t, Yn(t)) + 1;
|
|
494
494
|
}
|
|
495
|
-
function
|
|
496
|
-
const t =
|
|
495
|
+
function ht(s, e) {
|
|
496
|
+
const t = gt(), i = e?.weekStartsOn ?? e?.locale?.options?.weekStartsOn ?? t.weekStartsOn ?? t.locale?.options?.weekStartsOn ?? 0, n = Ie(s, e?.in), r = n.getDay(), o = (r < i ? 7 : 0) + r - i;
|
|
497
497
|
return n.setDate(n.getDate() - o), n.setHours(0, 0, 0, 0), n;
|
|
498
498
|
}
|
|
499
|
-
function
|
|
500
|
-
return
|
|
499
|
+
function Ct(s, e) {
|
|
500
|
+
return ht(s, { ...e, weekStartsOn: 1 });
|
|
501
501
|
}
|
|
502
|
-
function
|
|
502
|
+
function ps(s, e) {
|
|
503
503
|
const t = Ie(s, e?.in), i = t.getFullYear(), n = je(t, 0);
|
|
504
504
|
n.setFullYear(i + 1, 0, 4), n.setHours(0, 0, 0, 0);
|
|
505
|
-
const r =
|
|
505
|
+
const r = Ct(n), o = je(t, 0);
|
|
506
506
|
o.setFullYear(i, 0, 4), o.setHours(0, 0, 0, 0);
|
|
507
|
-
const a =
|
|
507
|
+
const a = Ct(o);
|
|
508
508
|
return t.getTime() >= r.getTime() ? i + 1 : t.getTime() >= a.getTime() ? i : i - 1;
|
|
509
509
|
}
|
|
510
|
-
function jn(s, e) {
|
|
511
|
-
const t = ms(s, e), i = je(s, 0);
|
|
512
|
-
return i.setFullYear(t, 0, 4), i.setHours(0, 0, 0, 0), Et(i);
|
|
513
|
-
}
|
|
514
510
|
function Kn(s, e) {
|
|
515
|
-
const t =
|
|
516
|
-
return
|
|
511
|
+
const t = ps(s, e), i = je(s, 0);
|
|
512
|
+
return i.setFullYear(t, 0, 4), i.setHours(0, 0, 0, 0), Ct(i);
|
|
517
513
|
}
|
|
518
|
-
function
|
|
519
|
-
const t = Ie(s, e?.in), i = t
|
|
514
|
+
function Qn(s, e) {
|
|
515
|
+
const t = Ie(s, e?.in), i = +Ct(t) - +Kn(t);
|
|
516
|
+
return Math.round(i / ms) + 1;
|
|
517
|
+
}
|
|
518
|
+
function gs(s, e) {
|
|
519
|
+
const t = Ie(s, e?.in), i = t.getFullYear(), n = gt(), r = e?.firstWeekContainsDate ?? e?.locale?.options?.firstWeekContainsDate ?? n.firstWeekContainsDate ?? n.locale?.options?.firstWeekContainsDate ?? 1, o = je(e?.in || s, 0);
|
|
520
520
|
o.setFullYear(i + 1, 0, r), o.setHours(0, 0, 0, 0);
|
|
521
|
-
const a =
|
|
521
|
+
const a = ht(o, e), c = je(e?.in || s, 0);
|
|
522
522
|
c.setFullYear(i, 0, r), c.setHours(0, 0, 0, 0);
|
|
523
|
-
const l =
|
|
523
|
+
const l = ht(c, e);
|
|
524
524
|
return +t >= +a ? i + 1 : +t >= +l ? i : i - 1;
|
|
525
525
|
}
|
|
526
|
-
function Qn(s, e) {
|
|
527
|
-
const t = pt(), i = e?.firstWeekContainsDate ?? e?.locale?.options?.firstWeekContainsDate ?? t.firstWeekContainsDate ?? t.locale?.options?.firstWeekContainsDate ?? 1, n = ps(s, e), r = je(e?.in || s, 0);
|
|
528
|
-
return r.setFullYear(n, 0, i), r.setHours(0, 0, 0, 0), dt(r, e);
|
|
529
|
-
}
|
|
530
526
|
function Xn(s, e) {
|
|
531
|
-
const t =
|
|
532
|
-
return
|
|
527
|
+
const t = gt(), i = e?.firstWeekContainsDate ?? e?.locale?.options?.firstWeekContainsDate ?? t.firstWeekContainsDate ?? t.locale?.options?.firstWeekContainsDate ?? 1, n = gs(s, e), r = je(e?.in || s, 0);
|
|
528
|
+
return r.setFullYear(n, 0, i), r.setHours(0, 0, 0, 0), ht(r, e);
|
|
529
|
+
}
|
|
530
|
+
function Vn(s, e) {
|
|
531
|
+
const t = Ie(s, e?.in), i = +ht(t, e) - +Xn(t, e);
|
|
532
|
+
return Math.round(i / ms) + 1;
|
|
533
533
|
}
|
|
534
|
-
function
|
|
534
|
+
function ee(s, e) {
|
|
535
535
|
const t = s < 0 ? "-" : "", i = Math.abs(s).toString().padStart(e, "0");
|
|
536
536
|
return t + i;
|
|
537
537
|
}
|
|
@@ -539,16 +539,16 @@ const Ge = {
|
|
|
539
539
|
// Year
|
|
540
540
|
y(s, e) {
|
|
541
541
|
const t = s.getFullYear(), i = t > 0 ? t : 1 - t;
|
|
542
|
-
return
|
|
542
|
+
return ee(e === "yy" ? i % 100 : i, e.length);
|
|
543
543
|
},
|
|
544
544
|
// Month
|
|
545
545
|
M(s, e) {
|
|
546
546
|
const t = s.getMonth();
|
|
547
|
-
return e === "M" ? String(t + 1) :
|
|
547
|
+
return e === "M" ? String(t + 1) : ee(t + 1, 2);
|
|
548
548
|
},
|
|
549
549
|
// Day of the month
|
|
550
550
|
d(s, e) {
|
|
551
|
-
return
|
|
551
|
+
return ee(s.getDate(), e.length);
|
|
552
552
|
},
|
|
553
553
|
// AM or PM
|
|
554
554
|
a(s, e) {
|
|
@@ -567,35 +567,35 @@ const Ge = {
|
|
|
567
567
|
},
|
|
568
568
|
// Hour [1-12]
|
|
569
569
|
h(s, e) {
|
|
570
|
-
return
|
|
570
|
+
return ee(s.getHours() % 12 || 12, e.length);
|
|
571
571
|
},
|
|
572
572
|
// Hour [0-23]
|
|
573
573
|
H(s, e) {
|
|
574
|
-
return
|
|
574
|
+
return ee(s.getHours(), e.length);
|
|
575
575
|
},
|
|
576
576
|
// Minute
|
|
577
577
|
m(s, e) {
|
|
578
|
-
return
|
|
578
|
+
return ee(s.getMinutes(), e.length);
|
|
579
579
|
},
|
|
580
580
|
// Second
|
|
581
581
|
s(s, e) {
|
|
582
|
-
return
|
|
582
|
+
return ee(s.getSeconds(), e.length);
|
|
583
583
|
},
|
|
584
584
|
// Fraction of second
|
|
585
585
|
S(s, e) {
|
|
586
586
|
const t = e.length, i = s.getMilliseconds(), n = Math.trunc(
|
|
587
587
|
i * Math.pow(10, t - 3)
|
|
588
588
|
);
|
|
589
|
-
return
|
|
589
|
+
return ee(n, e.length);
|
|
590
590
|
}
|
|
591
|
-
},
|
|
591
|
+
}, it = {
|
|
592
592
|
midnight: "midnight",
|
|
593
593
|
noon: "noon",
|
|
594
594
|
morning: "morning",
|
|
595
595
|
afternoon: "afternoon",
|
|
596
596
|
evening: "evening",
|
|
597
597
|
night: "night"
|
|
598
|
-
},
|
|
598
|
+
}, _i = {
|
|
599
599
|
// Era
|
|
600
600
|
G: function(s, e, t) {
|
|
601
601
|
const i = s.getFullYear() > 0 ? 1 : 0;
|
|
@@ -622,17 +622,17 @@ const Ge = {
|
|
|
622
622
|
},
|
|
623
623
|
// Local week-numbering year
|
|
624
624
|
Y: function(s, e, t, i) {
|
|
625
|
-
const n =
|
|
625
|
+
const n = gs(s, i), r = n > 0 ? n : 1 - n;
|
|
626
626
|
if (e === "YY") {
|
|
627
627
|
const o = r % 100;
|
|
628
|
-
return
|
|
628
|
+
return ee(o, 2);
|
|
629
629
|
}
|
|
630
|
-
return e === "Yo" ? t.ordinalNumber(r, { unit: "year" }) :
|
|
630
|
+
return e === "Yo" ? t.ordinalNumber(r, { unit: "year" }) : ee(r, e.length);
|
|
631
631
|
},
|
|
632
632
|
// ISO week-numbering year
|
|
633
633
|
R: function(s, e) {
|
|
634
|
-
const t =
|
|
635
|
-
return
|
|
634
|
+
const t = ps(s);
|
|
635
|
+
return ee(t, e.length);
|
|
636
636
|
},
|
|
637
637
|
// Extended year. This is a single number designating the year of this calendar system.
|
|
638
638
|
// The main difference between `y` and `u` localizers are B.C. years:
|
|
@@ -645,7 +645,7 @@ const Ge = {
|
|
|
645
645
|
// while `uu` pads single digit years to 2 characters and returns other years unchanged.
|
|
646
646
|
u: function(s, e) {
|
|
647
647
|
const t = s.getFullYear();
|
|
648
|
-
return
|
|
648
|
+
return ee(t, e.length);
|
|
649
649
|
},
|
|
650
650
|
// Quarter
|
|
651
651
|
Q: function(s, e, t) {
|
|
@@ -656,7 +656,7 @@ const Ge = {
|
|
|
656
656
|
return String(i);
|
|
657
657
|
// 01, 02, 03, 04
|
|
658
658
|
case "QQ":
|
|
659
|
-
return
|
|
659
|
+
return ee(i, 2);
|
|
660
660
|
// 1st, 2nd, 3rd, 4th
|
|
661
661
|
case "Qo":
|
|
662
662
|
return t.ordinalNumber(i, { unit: "quarter" });
|
|
@@ -688,7 +688,7 @@ const Ge = {
|
|
|
688
688
|
return String(i);
|
|
689
689
|
// 01, 02, 03, 04
|
|
690
690
|
case "qq":
|
|
691
|
-
return
|
|
691
|
+
return ee(i, 2);
|
|
692
692
|
// 1st, 2nd, 3rd, 4th
|
|
693
693
|
case "qo":
|
|
694
694
|
return t.ordinalNumber(i, { unit: "quarter" });
|
|
@@ -746,7 +746,7 @@ const Ge = {
|
|
|
746
746
|
return String(i + 1);
|
|
747
747
|
// 01, 02, ..., 12
|
|
748
748
|
case "LL":
|
|
749
|
-
return
|
|
749
|
+
return ee(i + 1, 2);
|
|
750
750
|
// 1st, 2nd, ..., 12th
|
|
751
751
|
case "Lo":
|
|
752
752
|
return t.ordinalNumber(i + 1, { unit: "month" });
|
|
@@ -768,13 +768,13 @@ const Ge = {
|
|
|
768
768
|
},
|
|
769
769
|
// Local week of year
|
|
770
770
|
w: function(s, e, t, i) {
|
|
771
|
-
const n =
|
|
772
|
-
return e === "wo" ? t.ordinalNumber(n, { unit: "week" }) :
|
|
771
|
+
const n = Vn(s, i);
|
|
772
|
+
return e === "wo" ? t.ordinalNumber(n, { unit: "week" }) : ee(n, e.length);
|
|
773
773
|
},
|
|
774
774
|
// ISO week of year
|
|
775
775
|
I: function(s, e, t) {
|
|
776
|
-
const i =
|
|
777
|
-
return e === "Io" ? t.ordinalNumber(i, { unit: "week" }) :
|
|
776
|
+
const i = Qn(s);
|
|
777
|
+
return e === "Io" ? t.ordinalNumber(i, { unit: "week" }) : ee(i, e.length);
|
|
778
778
|
},
|
|
779
779
|
// Day of the month
|
|
780
780
|
d: function(s, e, t) {
|
|
@@ -782,8 +782,8 @@ const Ge = {
|
|
|
782
782
|
},
|
|
783
783
|
// Day of year
|
|
784
784
|
D: function(s, e, t) {
|
|
785
|
-
const i =
|
|
786
|
-
return e === "Do" ? t.ordinalNumber(i, { unit: "dayOfYear" }) :
|
|
785
|
+
const i = jn(s);
|
|
786
|
+
return e === "Do" ? t.ordinalNumber(i, { unit: "dayOfYear" }) : ee(i, e.length);
|
|
787
787
|
},
|
|
788
788
|
// Day of week
|
|
789
789
|
E: function(s, e, t) {
|
|
@@ -825,7 +825,7 @@ const Ge = {
|
|
|
825
825
|
return String(r);
|
|
826
826
|
// Padded numerical value
|
|
827
827
|
case "ee":
|
|
828
|
-
return
|
|
828
|
+
return ee(r, 2);
|
|
829
829
|
// 1st, 2nd, ..., 7th
|
|
830
830
|
case "eo":
|
|
831
831
|
return t.ordinalNumber(r, { unit: "day" });
|
|
@@ -862,7 +862,7 @@ const Ge = {
|
|
|
862
862
|
return String(r);
|
|
863
863
|
// Padded numerical value
|
|
864
864
|
case "cc":
|
|
865
|
-
return
|
|
865
|
+
return ee(r, e.length);
|
|
866
866
|
// 1st, 2nd, ..., 7th
|
|
867
867
|
case "co":
|
|
868
868
|
return t.ordinalNumber(r, { unit: "day" });
|
|
@@ -899,7 +899,7 @@ const Ge = {
|
|
|
899
899
|
return String(n);
|
|
900
900
|
// 02
|
|
901
901
|
case "ii":
|
|
902
|
-
return
|
|
902
|
+
return ee(n, e.length);
|
|
903
903
|
// 2nd
|
|
904
904
|
case "io":
|
|
905
905
|
return t.ordinalNumber(n, { unit: "day" });
|
|
@@ -959,7 +959,7 @@ const Ge = {
|
|
|
959
959
|
b: function(s, e, t) {
|
|
960
960
|
const i = s.getHours();
|
|
961
961
|
let n;
|
|
962
|
-
switch (i === 12 ? n =
|
|
962
|
+
switch (i === 12 ? n = it.noon : i === 0 ? n = it.midnight : n = i / 12 >= 1 ? "pm" : "am", e) {
|
|
963
963
|
case "b":
|
|
964
964
|
case "bb":
|
|
965
965
|
return t.dayPeriod(n, {
|
|
@@ -987,7 +987,7 @@ const Ge = {
|
|
|
987
987
|
B: function(s, e, t) {
|
|
988
988
|
const i = s.getHours();
|
|
989
989
|
let n;
|
|
990
|
-
switch (i >= 17 ? n =
|
|
990
|
+
switch (i >= 17 ? n = it.evening : i >= 12 ? n = it.afternoon : i >= 4 ? n = it.morning : n = it.night, e) {
|
|
991
991
|
case "B":
|
|
992
992
|
case "BB":
|
|
993
993
|
case "BBB":
|
|
@@ -1022,12 +1022,12 @@ const Ge = {
|
|
|
1022
1022
|
// Hour [0-11]
|
|
1023
1023
|
K: function(s, e, t) {
|
|
1024
1024
|
const i = s.getHours() % 12;
|
|
1025
|
-
return e === "Ko" ? t.ordinalNumber(i, { unit: "hour" }) :
|
|
1025
|
+
return e === "Ko" ? t.ordinalNumber(i, { unit: "hour" }) : ee(i, e.length);
|
|
1026
1026
|
},
|
|
1027
1027
|
// Hour [1-24]
|
|
1028
1028
|
k: function(s, e, t) {
|
|
1029
1029
|
let i = s.getHours();
|
|
1030
|
-
return i === 0 && (i = 24), e === "ko" ? t.ordinalNumber(i, { unit: "hour" }) :
|
|
1030
|
+
return i === 0 && (i = 24), e === "ko" ? t.ordinalNumber(i, { unit: "hour" }) : ee(i, e.length);
|
|
1031
1031
|
},
|
|
1032
1032
|
// Minute
|
|
1033
1033
|
m: function(s, e, t) {
|
|
@@ -1049,16 +1049,16 @@ const Ge = {
|
|
|
1049
1049
|
switch (e) {
|
|
1050
1050
|
// Hours and optional minutes
|
|
1051
1051
|
case "X":
|
|
1052
|
-
return
|
|
1052
|
+
return bi(i);
|
|
1053
1053
|
// Hours, minutes and optional seconds without `:` delimiter
|
|
1054
1054
|
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
|
|
1055
1055
|
// so this token always has the same output as `XX`
|
|
1056
1056
|
case "XXXX":
|
|
1057
1057
|
case "XX":
|
|
1058
|
-
return
|
|
1058
|
+
return Ze(i);
|
|
1059
1059
|
// Hours and minutes with `:` delimiter
|
|
1060
1060
|
default:
|
|
1061
|
-
return
|
|
1061
|
+
return Ze(i, ":");
|
|
1062
1062
|
}
|
|
1063
1063
|
},
|
|
1064
1064
|
// Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)
|
|
@@ -1067,16 +1067,16 @@ const Ge = {
|
|
|
1067
1067
|
switch (e) {
|
|
1068
1068
|
// Hours and optional minutes
|
|
1069
1069
|
case "x":
|
|
1070
|
-
return
|
|
1070
|
+
return bi(i);
|
|
1071
1071
|
// Hours, minutes and optional seconds without `:` delimiter
|
|
1072
1072
|
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
|
|
1073
1073
|
// so this token always has the same output as `xx`
|
|
1074
1074
|
case "xxxx":
|
|
1075
1075
|
case "xx":
|
|
1076
|
-
return
|
|
1076
|
+
return Ze(i);
|
|
1077
1077
|
// Hours and minutes with `:` delimiter
|
|
1078
1078
|
default:
|
|
1079
|
-
return
|
|
1079
|
+
return Ze(i, ":");
|
|
1080
1080
|
}
|
|
1081
1081
|
},
|
|
1082
1082
|
// Timezone (GMT)
|
|
@@ -1087,9 +1087,9 @@ const Ge = {
|
|
|
1087
1087
|
case "O":
|
|
1088
1088
|
case "OO":
|
|
1089
1089
|
case "OOO":
|
|
1090
|
-
return "GMT" +
|
|
1090
|
+
return "GMT" + wi(i, ":");
|
|
1091
1091
|
default:
|
|
1092
|
-
return "GMT" +
|
|
1092
|
+
return "GMT" + Ze(i, ":");
|
|
1093
1093
|
}
|
|
1094
1094
|
},
|
|
1095
1095
|
// Timezone (specific non-location)
|
|
@@ -1100,33 +1100,33 @@ const Ge = {
|
|
|
1100
1100
|
case "z":
|
|
1101
1101
|
case "zz":
|
|
1102
1102
|
case "zzz":
|
|
1103
|
-
return "GMT" +
|
|
1103
|
+
return "GMT" + wi(i, ":");
|
|
1104
1104
|
default:
|
|
1105
|
-
return "GMT" +
|
|
1105
|
+
return "GMT" + Ze(i, ":");
|
|
1106
1106
|
}
|
|
1107
1107
|
},
|
|
1108
1108
|
// Seconds timestamp
|
|
1109
1109
|
t: function(s, e, t) {
|
|
1110
1110
|
const i = Math.trunc(+s / 1e3);
|
|
1111
|
-
return
|
|
1111
|
+
return ee(i, e.length);
|
|
1112
1112
|
},
|
|
1113
1113
|
// Milliseconds timestamp
|
|
1114
1114
|
T: function(s, e, t) {
|
|
1115
|
-
return
|
|
1115
|
+
return ee(+s, e.length);
|
|
1116
1116
|
}
|
|
1117
1117
|
};
|
|
1118
|
-
function
|
|
1118
|
+
function wi(s, e = "") {
|
|
1119
1119
|
const t = s > 0 ? "-" : "+", i = Math.abs(s), n = Math.trunc(i / 60), r = i % 60;
|
|
1120
|
-
return r === 0 ? t + String(n) : t + String(n) + e +
|
|
1120
|
+
return r === 0 ? t + String(n) : t + String(n) + e + ee(r, 2);
|
|
1121
1121
|
}
|
|
1122
|
-
function
|
|
1123
|
-
return s % 60 === 0 ? (s > 0 ? "-" : "+") +
|
|
1122
|
+
function bi(s, e) {
|
|
1123
|
+
return s % 60 === 0 ? (s > 0 ? "-" : "+") + ee(Math.abs(s) / 60, 2) : Ze(s, e);
|
|
1124
1124
|
}
|
|
1125
|
-
function
|
|
1126
|
-
const t = s > 0 ? "-" : "+", i = Math.abs(s), n =
|
|
1125
|
+
function Ze(s, e = "") {
|
|
1126
|
+
const t = s > 0 ? "-" : "+", i = Math.abs(s), n = ee(Math.trunc(i / 60), 2), r = ee(i % 60, 2);
|
|
1127
1127
|
return t + n + e + r;
|
|
1128
1128
|
}
|
|
1129
|
-
const
|
|
1129
|
+
const xi = (s, e) => {
|
|
1130
1130
|
switch (s) {
|
|
1131
1131
|
case "P":
|
|
1132
1132
|
return e.date({ width: "short" });
|
|
@@ -1137,7 +1137,7 @@ const bi = (s, e) => {
|
|
|
1137
1137
|
default:
|
|
1138
1138
|
return e.date({ width: "full" });
|
|
1139
1139
|
}
|
|
1140
|
-
},
|
|
1140
|
+
}, ys = (s, e) => {
|
|
1141
1141
|
switch (s) {
|
|
1142
1142
|
case "p":
|
|
1143
1143
|
return e.time({ width: "short" });
|
|
@@ -1148,10 +1148,10 @@ const bi = (s, e) => {
|
|
|
1148
1148
|
default:
|
|
1149
1149
|
return e.time({ width: "full" });
|
|
1150
1150
|
}
|
|
1151
|
-
},
|
|
1151
|
+
}, Zn = (s, e) => {
|
|
1152
1152
|
const t = s.match(/(P+)(p+)?/) || [], i = t[1], n = t[2];
|
|
1153
1153
|
if (!n)
|
|
1154
|
-
return
|
|
1154
|
+
return xi(s, e);
|
|
1155
1155
|
let r;
|
|
1156
1156
|
switch (i) {
|
|
1157
1157
|
case "P":
|
|
@@ -1167,52 +1167,52 @@ const bi = (s, e) => {
|
|
|
1167
1167
|
r = e.dateTime({ width: "full" });
|
|
1168
1168
|
break;
|
|
1169
1169
|
}
|
|
1170
|
-
return r.replace("{{date}}",
|
|
1171
|
-
},
|
|
1172
|
-
p:
|
|
1173
|
-
P:
|
|
1174
|
-
},
|
|
1175
|
-
function ir(s) {
|
|
1176
|
-
return Jn.test(s);
|
|
1177
|
-
}
|
|
1170
|
+
return r.replace("{{date}}", xi(i, e)).replace("{{time}}", ys(n, e));
|
|
1171
|
+
}, Jn = {
|
|
1172
|
+
p: ys,
|
|
1173
|
+
P: Zn
|
|
1174
|
+
}, er = /^D+$/, tr = /^Y+$/, ir = ["D", "DD", "YY", "YYYY"];
|
|
1178
1175
|
function sr(s) {
|
|
1179
1176
|
return er.test(s);
|
|
1180
1177
|
}
|
|
1181
|
-
function nr(s
|
|
1182
|
-
|
|
1183
|
-
if (console.warn(i), tr.includes(s)) throw new RangeError(i);
|
|
1178
|
+
function nr(s) {
|
|
1179
|
+
return tr.test(s);
|
|
1184
1180
|
}
|
|
1185
1181
|
function rr(s, e, t) {
|
|
1182
|
+
const i = or(s, e, t);
|
|
1183
|
+
if (console.warn(i), ir.includes(s)) throw new RangeError(i);
|
|
1184
|
+
}
|
|
1185
|
+
function or(s, e, t) {
|
|
1186
1186
|
const i = s[0] === "Y" ? "years" : "days of the month";
|
|
1187
1187
|
return `Use \`${s.toLowerCase()}\` instead of \`${s}\` (in \`${e}\`) for formatting ${i} to the input \`${t}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`;
|
|
1188
1188
|
}
|
|
1189
|
-
function
|
|
1189
|
+
function ar(s) {
|
|
1190
1190
|
return s instanceof Date || typeof s == "object" && Object.prototype.toString.call(s) === "[object Date]";
|
|
1191
1191
|
}
|
|
1192
|
-
function
|
|
1193
|
-
return !(!
|
|
1192
|
+
function lr(s) {
|
|
1193
|
+
return !(!ar(s) && typeof s != "number" || isNaN(+Ie(s)));
|
|
1194
1194
|
}
|
|
1195
|
-
const
|
|
1196
|
-
function
|
|
1197
|
-
const i =
|
|
1198
|
-
if (!
|
|
1195
|
+
const ur = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g, cr = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g, dr = /^'([^]*?)'?$/, hr = /''/g, fr = /[a-zA-Z]/;
|
|
1196
|
+
function mr(s, e, t) {
|
|
1197
|
+
const i = gt(), n = t?.locale ?? i.locale ?? $n, r = t?.firstWeekContainsDate ?? t?.locale?.options?.firstWeekContainsDate ?? i.firstWeekContainsDate ?? i.locale?.options?.firstWeekContainsDate ?? 1, o = t?.weekStartsOn ?? t?.locale?.options?.weekStartsOn ?? i.weekStartsOn ?? i.locale?.options?.weekStartsOn ?? 0, a = Ie(s, t?.in);
|
|
1198
|
+
if (!lr(a))
|
|
1199
1199
|
throw new RangeError("Invalid time value");
|
|
1200
|
-
let c = e.match(
|
|
1200
|
+
let c = e.match(cr).map((u) => {
|
|
1201
1201
|
const d = u[0];
|
|
1202
1202
|
if (d === "p" || d === "P") {
|
|
1203
|
-
const h =
|
|
1203
|
+
const h = Jn[d];
|
|
1204
1204
|
return h(u, n.formatLong);
|
|
1205
1205
|
}
|
|
1206
1206
|
return u;
|
|
1207
|
-
}).join("").match(
|
|
1207
|
+
}).join("").match(ur).map((u) => {
|
|
1208
1208
|
if (u === "''")
|
|
1209
1209
|
return { isToken: !1, value: "'" };
|
|
1210
1210
|
const d = u[0];
|
|
1211
1211
|
if (d === "'")
|
|
1212
|
-
return { isToken: !1, value:
|
|
1213
|
-
if (
|
|
1212
|
+
return { isToken: !1, value: pr(u) };
|
|
1213
|
+
if (_i[d])
|
|
1214
1214
|
return { isToken: !0, value: u };
|
|
1215
|
-
if (d.match(
|
|
1215
|
+
if (d.match(fr))
|
|
1216
1216
|
throw new RangeError(
|
|
1217
1217
|
"Format string contains an unescaped latin alphabet character `" + d + "`"
|
|
1218
1218
|
);
|
|
@@ -1227,43 +1227,43 @@ function fr(s, e, t) {
|
|
|
1227
1227
|
return c.map((u) => {
|
|
1228
1228
|
if (!u.isToken) return u.value;
|
|
1229
1229
|
const d = u.value;
|
|
1230
|
-
(!t?.useAdditionalWeekYearTokens &&
|
|
1231
|
-
const h =
|
|
1230
|
+
(!t?.useAdditionalWeekYearTokens && nr(d) || !t?.useAdditionalDayOfYearTokens && sr(d)) && rr(d, e, String(s));
|
|
1231
|
+
const h = _i[d[0]];
|
|
1232
1232
|
return h(a, d, n.localize, l);
|
|
1233
1233
|
}).join("");
|
|
1234
1234
|
}
|
|
1235
|
-
function
|
|
1236
|
-
const e = s.match(
|
|
1237
|
-
return e ? e[1].replace(
|
|
1235
|
+
function pr(s) {
|
|
1236
|
+
const e = s.match(dr);
|
|
1237
|
+
return e ? e[1].replace(hr, "'") : s;
|
|
1238
1238
|
}
|
|
1239
|
-
function
|
|
1240
|
-
return Object.assign({},
|
|
1239
|
+
function gr() {
|
|
1240
|
+
return Object.assign({}, gt());
|
|
1241
1241
|
}
|
|
1242
|
-
function
|
|
1243
|
-
const i =
|
|
1244
|
-
return "formatToParts" in n ?
|
|
1242
|
+
function Ei(s, e, t) {
|
|
1243
|
+
const i = gr(), n = _r(s, t.timeZone, t.locale ?? i.locale);
|
|
1244
|
+
return "formatToParts" in n ? yr(n, e) : vr(n, e);
|
|
1245
1245
|
}
|
|
1246
|
-
function
|
|
1246
|
+
function yr(s, e) {
|
|
1247
1247
|
const t = s.formatToParts(e);
|
|
1248
1248
|
for (let i = t.length - 1; i >= 0; --i)
|
|
1249
1249
|
if (t[i].type === "timeZoneName")
|
|
1250
1250
|
return t[i].value;
|
|
1251
1251
|
}
|
|
1252
|
-
function
|
|
1252
|
+
function vr(s, e) {
|
|
1253
1253
|
const t = s.format(e).replace(/\u200E/g, ""), i = / [\w-+ ]+$/.exec(t);
|
|
1254
1254
|
return i ? i[0].substr(1) : "";
|
|
1255
1255
|
}
|
|
1256
|
-
function
|
|
1256
|
+
function _r(s, e, t) {
|
|
1257
1257
|
return new Intl.DateTimeFormat(t ? [t.code, "en-US"] : void 0, {
|
|
1258
1258
|
timeZone: e,
|
|
1259
1259
|
timeZoneName: s
|
|
1260
1260
|
});
|
|
1261
1261
|
}
|
|
1262
|
-
function
|
|
1263
|
-
const t =
|
|
1264
|
-
return "formatToParts" in t ?
|
|
1262
|
+
function wr(s, e) {
|
|
1263
|
+
const t = Rr(e);
|
|
1264
|
+
return "formatToParts" in t ? xr(t, s) : Er(t, s);
|
|
1265
1265
|
}
|
|
1266
|
-
const
|
|
1266
|
+
const br = {
|
|
1267
1267
|
year: 0,
|
|
1268
1268
|
month: 1,
|
|
1269
1269
|
day: 2,
|
|
@@ -1271,11 +1271,11 @@ const wr = {
|
|
|
1271
1271
|
minute: 4,
|
|
1272
1272
|
second: 5
|
|
1273
1273
|
};
|
|
1274
|
-
function
|
|
1274
|
+
function xr(s, e) {
|
|
1275
1275
|
try {
|
|
1276
1276
|
const t = s.formatToParts(e), i = [];
|
|
1277
1277
|
for (let n = 0; n < t.length; n++) {
|
|
1278
|
-
const r =
|
|
1278
|
+
const r = br[t[n].type];
|
|
1279
1279
|
r !== void 0 && (i[r] = parseInt(t[n].value, 10));
|
|
1280
1280
|
}
|
|
1281
1281
|
return i;
|
|
@@ -1285,7 +1285,7 @@ function br(s, e) {
|
|
|
1285
1285
|
throw t;
|
|
1286
1286
|
}
|
|
1287
1287
|
}
|
|
1288
|
-
function
|
|
1288
|
+
function Er(s, e) {
|
|
1289
1289
|
const t = s.format(e), i = /(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(t);
|
|
1290
1290
|
return [
|
|
1291
1291
|
parseInt(i[3], 10),
|
|
@@ -1296,7 +1296,7 @@ function xr(s, e) {
|
|
|
1296
1296
|
parseInt(i[6], 10)
|
|
1297
1297
|
];
|
|
1298
1298
|
}
|
|
1299
|
-
const
|
|
1299
|
+
const qt = {}, Ci = new Intl.DateTimeFormat("en-US", {
|
|
1300
1300
|
hourCycle: "h23",
|
|
1301
1301
|
timeZone: "America/New_York",
|
|
1302
1302
|
year: "numeric",
|
|
@@ -1305,9 +1305,9 @@ const Lt = {}, Ei = new Intl.DateTimeFormat("en-US", {
|
|
|
1305
1305
|
hour: "2-digit",
|
|
1306
1306
|
minute: "2-digit",
|
|
1307
1307
|
second: "2-digit"
|
|
1308
|
-
}).format(/* @__PURE__ */ new Date("2014-06-25T04:00:00.123Z")),
|
|
1309
|
-
function
|
|
1310
|
-
return
|
|
1308
|
+
}).format(/* @__PURE__ */ new Date("2014-06-25T04:00:00.123Z")), Cr = Ci === "06/25/2014, 00:00:00" || Ci === "06/25/2014 00:00:00";
|
|
1309
|
+
function Rr(s) {
|
|
1310
|
+
return qt[s] || (qt[s] = Cr ? new Intl.DateTimeFormat("en-US", {
|
|
1311
1311
|
hourCycle: "h23",
|
|
1312
1312
|
timeZone: s,
|
|
1313
1313
|
year: "numeric",
|
|
@@ -1325,119 +1325,119 @@ function Cr(s) {
|
|
|
1325
1325
|
hour: "2-digit",
|
|
1326
1326
|
minute: "2-digit",
|
|
1327
1327
|
second: "2-digit"
|
|
1328
|
-
})),
|
|
1328
|
+
})), qt[s];
|
|
1329
1329
|
}
|
|
1330
|
-
function
|
|
1330
|
+
function vs(s, e, t, i, n, r, o) {
|
|
1331
1331
|
const a = /* @__PURE__ */ new Date(0);
|
|
1332
1332
|
return a.setUTCFullYear(s, e, t), a.setUTCHours(i, n, r, o), a;
|
|
1333
1333
|
}
|
|
1334
|
-
const
|
|
1334
|
+
const Ri = 36e5, kr = 6e4, Pt = {
|
|
1335
1335
|
timezoneZ: /^(Z)$/,
|
|
1336
1336
|
timezoneHH: /^([+-]\d{2})$/,
|
|
1337
1337
|
timezoneHHMM: /^([+-])(\d{2}):?(\d{2})$/
|
|
1338
1338
|
};
|
|
1339
|
-
function
|
|
1339
|
+
function _s(s, e, t) {
|
|
1340
1340
|
if (!s)
|
|
1341
1341
|
return 0;
|
|
1342
|
-
let i =
|
|
1342
|
+
let i = Pt.timezoneZ.exec(s);
|
|
1343
1343
|
if (i)
|
|
1344
1344
|
return 0;
|
|
1345
1345
|
let n, r;
|
|
1346
|
-
if (i =
|
|
1347
|
-
return n = parseInt(i[1], 10),
|
|
1348
|
-
if (i =
|
|
1346
|
+
if (i = Pt.timezoneHH.exec(s), i)
|
|
1347
|
+
return n = parseInt(i[1], 10), ki(n) ? -(n * Ri) : NaN;
|
|
1348
|
+
if (i = Pt.timezoneHHMM.exec(s), i) {
|
|
1349
1349
|
n = parseInt(i[2], 10);
|
|
1350
1350
|
const o = parseInt(i[3], 10);
|
|
1351
|
-
return
|
|
1351
|
+
return ki(n, o) ? (r = Math.abs(n) * Ri + o * kr, i[1] === "+" ? -r : r) : NaN;
|
|
1352
1352
|
}
|
|
1353
|
-
if (
|
|
1353
|
+
if (Dr(s)) {
|
|
1354
1354
|
e = new Date(e || Date.now());
|
|
1355
|
-
const o = t ? e :
|
|
1356
|
-
return -(t ? a :
|
|
1355
|
+
const o = t ? e : Tr(e), a = jt(o, s);
|
|
1356
|
+
return -(t ? a : Sr(e, a, s));
|
|
1357
1357
|
}
|
|
1358
1358
|
return NaN;
|
|
1359
1359
|
}
|
|
1360
|
-
function
|
|
1361
|
-
return
|
|
1360
|
+
function Tr(s) {
|
|
1361
|
+
return vs(s.getFullYear(), s.getMonth(), s.getDate(), s.getHours(), s.getMinutes(), s.getSeconds(), s.getMilliseconds());
|
|
1362
1362
|
}
|
|
1363
|
-
function
|
|
1364
|
-
const t =
|
|
1363
|
+
function jt(s, e) {
|
|
1364
|
+
const t = wr(s, e), i = vs(t[0], t[1] - 1, t[2], t[3] % 24, t[4], t[5], 0).getTime();
|
|
1365
1365
|
let n = s.getTime();
|
|
1366
1366
|
const r = n % 1e3;
|
|
1367
1367
|
return n -= r >= 0 ? r : 1e3 + r, i - n;
|
|
1368
1368
|
}
|
|
1369
|
-
function
|
|
1369
|
+
function Sr(s, e, t) {
|
|
1370
1370
|
let n = s.getTime() - e;
|
|
1371
|
-
const r =
|
|
1371
|
+
const r = jt(new Date(n), t);
|
|
1372
1372
|
if (e === r)
|
|
1373
1373
|
return e;
|
|
1374
1374
|
n -= r - e;
|
|
1375
|
-
const o =
|
|
1375
|
+
const o = jt(new Date(n), t);
|
|
1376
1376
|
return r === o ? r : Math.max(r, o);
|
|
1377
1377
|
}
|
|
1378
|
-
function
|
|
1378
|
+
function ki(s, e) {
|
|
1379
1379
|
return -23 <= s && s <= 23 && (e == null || 0 <= e && e <= 59);
|
|
1380
1380
|
}
|
|
1381
|
-
const
|
|
1382
|
-
function
|
|
1383
|
-
if (
|
|
1381
|
+
const Ti = {};
|
|
1382
|
+
function Dr(s) {
|
|
1383
|
+
if (Ti[s])
|
|
1384
1384
|
return !0;
|
|
1385
1385
|
try {
|
|
1386
|
-
return new Intl.DateTimeFormat(void 0, { timeZone: s }),
|
|
1386
|
+
return new Intl.DateTimeFormat(void 0, { timeZone: s }), Ti[s] = !0, !0;
|
|
1387
1387
|
} catch {
|
|
1388
1388
|
return !1;
|
|
1389
1389
|
}
|
|
1390
1390
|
}
|
|
1391
|
-
const
|
|
1391
|
+
const Or = 60 * 1e3, zr = {
|
|
1392
1392
|
// Timezone (ISO-8601. If offset is 0, output is always `'Z'`)
|
|
1393
1393
|
X: function(s, e, t) {
|
|
1394
|
-
const i =
|
|
1394
|
+
const i = Ht(t.timeZone, s);
|
|
1395
1395
|
if (i === 0)
|
|
1396
1396
|
return "Z";
|
|
1397
1397
|
switch (e) {
|
|
1398
1398
|
// Hours and optional minutes
|
|
1399
1399
|
case "X":
|
|
1400
|
-
return
|
|
1400
|
+
return Si(i);
|
|
1401
1401
|
// Hours, minutes and optional seconds without `:` delimeter
|
|
1402
1402
|
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
|
|
1403
1403
|
// so this token always has the same output as `XX`
|
|
1404
1404
|
case "XXXX":
|
|
1405
1405
|
case "XX":
|
|
1406
|
-
return
|
|
1406
|
+
return st(i);
|
|
1407
1407
|
// Hours and minutes with `:` delimeter
|
|
1408
1408
|
default:
|
|
1409
|
-
return
|
|
1409
|
+
return st(i, ":");
|
|
1410
1410
|
}
|
|
1411
1411
|
},
|
|
1412
1412
|
// Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)
|
|
1413
1413
|
x: function(s, e, t) {
|
|
1414
|
-
const i =
|
|
1414
|
+
const i = Ht(t.timeZone, s);
|
|
1415
1415
|
switch (e) {
|
|
1416
1416
|
// Hours and optional minutes
|
|
1417
1417
|
case "x":
|
|
1418
|
-
return
|
|
1418
|
+
return Si(i);
|
|
1419
1419
|
// Hours, minutes and optional seconds without `:` delimeter
|
|
1420
1420
|
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
|
|
1421
1421
|
// so this token always has the same output as `xx`
|
|
1422
1422
|
case "xxxx":
|
|
1423
1423
|
case "xx":
|
|
1424
|
-
return
|
|
1424
|
+
return st(i);
|
|
1425
1425
|
// Hours and minutes with `:` delimeter
|
|
1426
1426
|
default:
|
|
1427
|
-
return
|
|
1427
|
+
return st(i, ":");
|
|
1428
1428
|
}
|
|
1429
1429
|
},
|
|
1430
1430
|
// Timezone (GMT)
|
|
1431
1431
|
O: function(s, e, t) {
|
|
1432
|
-
const i =
|
|
1432
|
+
const i = Ht(t.timeZone, s);
|
|
1433
1433
|
switch (e) {
|
|
1434
1434
|
// Short
|
|
1435
1435
|
case "O":
|
|
1436
1436
|
case "OO":
|
|
1437
1437
|
case "OOO":
|
|
1438
|
-
return "GMT" +
|
|
1438
|
+
return "GMT" + Mr(i, ":");
|
|
1439
1439
|
default:
|
|
1440
|
-
return "GMT" +
|
|
1440
|
+
return "GMT" + st(i, ":");
|
|
1441
1441
|
}
|
|
1442
1442
|
},
|
|
1443
1443
|
// Timezone (specific non-location)
|
|
@@ -1447,41 +1447,41 @@ const Dr = 60 * 1e3, Or = {
|
|
|
1447
1447
|
case "z":
|
|
1448
1448
|
case "zz":
|
|
1449
1449
|
case "zzz":
|
|
1450
|
-
return
|
|
1450
|
+
return Ei("short", s, t);
|
|
1451
1451
|
default:
|
|
1452
|
-
return
|
|
1452
|
+
return Ei("long", s, t);
|
|
1453
1453
|
}
|
|
1454
1454
|
}
|
|
1455
1455
|
};
|
|
1456
|
-
function
|
|
1457
|
-
const t = s ?
|
|
1456
|
+
function Ht(s, e) {
|
|
1457
|
+
const t = s ? _s(s, e, !0) / Or : e?.getTimezoneOffset() ?? 0;
|
|
1458
1458
|
if (Number.isNaN(t))
|
|
1459
1459
|
throw new RangeError("Invalid time zone specified: " + s);
|
|
1460
1460
|
return t;
|
|
1461
1461
|
}
|
|
1462
|
-
function
|
|
1462
|
+
function Rt(s, e) {
|
|
1463
1463
|
const t = s < 0 ? "-" : "";
|
|
1464
1464
|
let i = Math.abs(s).toString();
|
|
1465
1465
|
for (; i.length < e; )
|
|
1466
1466
|
i = "0" + i;
|
|
1467
1467
|
return t + i;
|
|
1468
1468
|
}
|
|
1469
|
-
function
|
|
1470
|
-
const t = s > 0 ? "-" : "+", i = Math.abs(s), n =
|
|
1469
|
+
function st(s, e = "") {
|
|
1470
|
+
const t = s > 0 ? "-" : "+", i = Math.abs(s), n = Rt(Math.floor(i / 60), 2), r = Rt(Math.floor(i % 60), 2);
|
|
1471
1471
|
return t + n + e + r;
|
|
1472
1472
|
}
|
|
1473
|
-
function
|
|
1474
|
-
return s % 60 === 0 ? (s > 0 ? "-" : "+") +
|
|
1473
|
+
function Si(s, e) {
|
|
1474
|
+
return s % 60 === 0 ? (s > 0 ? "-" : "+") + Rt(Math.abs(s) / 60, 2) : st(s, e);
|
|
1475
1475
|
}
|
|
1476
|
-
function
|
|
1476
|
+
function Mr(s, e = "") {
|
|
1477
1477
|
const t = s > 0 ? "-" : "+", i = Math.abs(s), n = Math.floor(i / 60), r = i % 60;
|
|
1478
|
-
return r === 0 ? t + String(n) : t + String(n) + e +
|
|
1478
|
+
return r === 0 ? t + String(n) : t + String(n) + e + Rt(r, 2);
|
|
1479
1479
|
}
|
|
1480
|
-
function
|
|
1480
|
+
function Di(s) {
|
|
1481
1481
|
const e = new Date(Date.UTC(s.getFullYear(), s.getMonth(), s.getDate(), s.getHours(), s.getMinutes(), s.getSeconds(), s.getMilliseconds()));
|
|
1482
1482
|
return e.setUTCFullYear(s.getFullYear()), +s - +e;
|
|
1483
1483
|
}
|
|
1484
|
-
const
|
|
1484
|
+
const Nr = /(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/, Ft = 36e5, Oi = 6e4, Ar = 2, ke = {
|
|
1485
1485
|
dateTimePattern: /^([0-9W+-]+)(T| )(.*)/,
|
|
1486
1486
|
datePattern: /^([0-9W+-]+)(.*)/,
|
|
1487
1487
|
// year tokens
|
|
@@ -1513,14 +1513,14 @@ const Mr = /(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)
|
|
|
1513
1513
|
HHMM: /^(\d{2}):?(\d{2}([.,]\d*)?)$/,
|
|
1514
1514
|
HHMMSS: /^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,
|
|
1515
1515
|
// time zone tokens (to identify the presence of a tz)
|
|
1516
|
-
timeZone:
|
|
1516
|
+
timeZone: Nr
|
|
1517
1517
|
};
|
|
1518
|
-
function
|
|
1518
|
+
function Ir(s, e = {}) {
|
|
1519
1519
|
if (arguments.length < 1)
|
|
1520
1520
|
throw new TypeError("1 argument required, but only " + arguments.length + " present");
|
|
1521
1521
|
if (s === null)
|
|
1522
1522
|
return /* @__PURE__ */ new Date(NaN);
|
|
1523
|
-
const t = e.additionalDigits == null ?
|
|
1523
|
+
const t = e.additionalDigits == null ? Ar : Number(e.additionalDigits);
|
|
1524
1524
|
if (t !== 2 && t !== 1 && t !== 0)
|
|
1525
1525
|
throw new RangeError("additionalDigits must be 0, 1 or 2");
|
|
1526
1526
|
if (s instanceof Date || typeof s == "object" && Object.prototype.toString.call(s) === "[object Date]")
|
|
@@ -1529,24 +1529,24 @@ function Ar(s, e = {}) {
|
|
|
1529
1529
|
return new Date(s);
|
|
1530
1530
|
if (Object.prototype.toString.call(s) !== "[object String]")
|
|
1531
1531
|
return /* @__PURE__ */ new Date(NaN);
|
|
1532
|
-
const i =
|
|
1532
|
+
const i = Lr(s), { year: n, restDateString: r } = qr(i.date, t), o = Pr(r, n);
|
|
1533
1533
|
if (o === null || isNaN(o.getTime()))
|
|
1534
1534
|
return /* @__PURE__ */ new Date(NaN);
|
|
1535
1535
|
if (o) {
|
|
1536
1536
|
const a = o.getTime();
|
|
1537
1537
|
let c = 0, l;
|
|
1538
|
-
if (i.time && (c =
|
|
1538
|
+
if (i.time && (c = Hr(i.time), c === null || isNaN(c)))
|
|
1539
1539
|
return /* @__PURE__ */ new Date(NaN);
|
|
1540
1540
|
if (i.timeZone || e.timeZone) {
|
|
1541
|
-
if (l =
|
|
1541
|
+
if (l = _s(i.timeZone || e.timeZone, new Date(a + c)), isNaN(l))
|
|
1542
1542
|
return /* @__PURE__ */ new Date(NaN);
|
|
1543
1543
|
} else
|
|
1544
|
-
l =
|
|
1544
|
+
l = Di(new Date(a + c)), l = Di(new Date(a + c + l));
|
|
1545
1545
|
return new Date(a + c + l);
|
|
1546
1546
|
} else
|
|
1547
1547
|
return /* @__PURE__ */ new Date(NaN);
|
|
1548
1548
|
}
|
|
1549
|
-
function
|
|
1549
|
+
function Lr(s) {
|
|
1550
1550
|
const e = {};
|
|
1551
1551
|
let t = ke.dateTimePattern.exec(s), i;
|
|
1552
1552
|
if (t ? (e.date = t[1], i = t[3]) : (t = ke.datePattern.exec(s), t ? (e.date = t[1], i = t[2]) : (e.date = null, i = s)), i) {
|
|
@@ -1555,7 +1555,7 @@ function Ir(s) {
|
|
|
1555
1555
|
}
|
|
1556
1556
|
return e;
|
|
1557
1557
|
}
|
|
1558
|
-
function
|
|
1558
|
+
function qr(s, e) {
|
|
1559
1559
|
if (s) {
|
|
1560
1560
|
const t = ke.YYY[e], i = ke.YYYYY[e];
|
|
1561
1561
|
let n = ke.YYYY.exec(s) || i.exec(s);
|
|
@@ -1578,7 +1578,7 @@ function Lr(s, e) {
|
|
|
1578
1578
|
year: null
|
|
1579
1579
|
};
|
|
1580
1580
|
}
|
|
1581
|
-
function
|
|
1581
|
+
function Pr(s, e) {
|
|
1582
1582
|
if (e === null)
|
|
1583
1583
|
return null;
|
|
1584
1584
|
let t, i, n;
|
|
@@ -1586,100 +1586,100 @@ function qr(s, e) {
|
|
|
1586
1586
|
return t = /* @__PURE__ */ new Date(0), t.setUTCFullYear(e), t;
|
|
1587
1587
|
let r = ke.MM.exec(s);
|
|
1588
1588
|
if (r)
|
|
1589
|
-
return t = /* @__PURE__ */ new Date(0), i = parseInt(r[1], 10) - 1,
|
|
1589
|
+
return t = /* @__PURE__ */ new Date(0), i = parseInt(r[1], 10) - 1, Mi(e, i) ? (t.setUTCFullYear(e, i), t) : /* @__PURE__ */ new Date(NaN);
|
|
1590
1590
|
if (r = ke.DDD.exec(s), r) {
|
|
1591
1591
|
t = /* @__PURE__ */ new Date(0);
|
|
1592
1592
|
const o = parseInt(r[1], 10);
|
|
1593
|
-
return
|
|
1593
|
+
return Ur(e, o) ? (t.setUTCFullYear(e, 0, o), t) : /* @__PURE__ */ new Date(NaN);
|
|
1594
1594
|
}
|
|
1595
1595
|
if (r = ke.MMDD.exec(s), r) {
|
|
1596
1596
|
t = /* @__PURE__ */ new Date(0), i = parseInt(r[1], 10) - 1;
|
|
1597
1597
|
const o = parseInt(r[2], 10);
|
|
1598
|
-
return
|
|
1598
|
+
return Mi(e, i, o) ? (t.setUTCFullYear(e, i, o), t) : /* @__PURE__ */ new Date(NaN);
|
|
1599
1599
|
}
|
|
1600
1600
|
if (r = ke.Www.exec(s), r)
|
|
1601
|
-
return n = parseInt(r[1], 10) - 1,
|
|
1601
|
+
return n = parseInt(r[1], 10) - 1, Ni(n) ? zi(e, n) : /* @__PURE__ */ new Date(NaN);
|
|
1602
1602
|
if (r = ke.WwwD.exec(s), r) {
|
|
1603
1603
|
n = parseInt(r[1], 10) - 1;
|
|
1604
1604
|
const o = parseInt(r[2], 10) - 1;
|
|
1605
|
-
return
|
|
1605
|
+
return Ni(n, o) ? zi(e, n, o) : /* @__PURE__ */ new Date(NaN);
|
|
1606
1606
|
}
|
|
1607
1607
|
return null;
|
|
1608
1608
|
}
|
|
1609
|
-
function
|
|
1609
|
+
function Hr(s) {
|
|
1610
1610
|
let e, t, i = ke.HH.exec(s);
|
|
1611
1611
|
if (i)
|
|
1612
|
-
return e = parseFloat(i[1].replace(",", ".")),
|
|
1612
|
+
return e = parseFloat(i[1].replace(",", ".")), $t(e) ? e % 24 * Ft : NaN;
|
|
1613
1613
|
if (i = ke.HHMM.exec(s), i)
|
|
1614
|
-
return e = parseInt(i[1], 10), t = parseFloat(i[2].replace(",", ".")),
|
|
1614
|
+
return e = parseInt(i[1], 10), t = parseFloat(i[2].replace(",", ".")), $t(e, t) ? e % 24 * Ft + t * Oi : NaN;
|
|
1615
1615
|
if (i = ke.HHMMSS.exec(s), i) {
|
|
1616
1616
|
e = parseInt(i[1], 10), t = parseInt(i[2], 10);
|
|
1617
1617
|
const n = parseFloat(i[3].replace(",", "."));
|
|
1618
|
-
return
|
|
1618
|
+
return $t(e, t, n) ? e % 24 * Ft + t * Oi + n * 1e3 : NaN;
|
|
1619
1619
|
}
|
|
1620
1620
|
return null;
|
|
1621
1621
|
}
|
|
1622
|
-
function
|
|
1622
|
+
function zi(s, e, t) {
|
|
1623
1623
|
e = e || 0, t = t || 0;
|
|
1624
1624
|
const i = /* @__PURE__ */ new Date(0);
|
|
1625
1625
|
i.setUTCFullYear(s, 0, 4);
|
|
1626
1626
|
const n = i.getUTCDay() || 7, r = e * 7 + t + 1 - n;
|
|
1627
1627
|
return i.setUTCDate(i.getUTCDate() + r), i;
|
|
1628
1628
|
}
|
|
1629
|
-
const
|
|
1630
|
-
function
|
|
1629
|
+
const Fr = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31], $r = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
1630
|
+
function ws(s) {
|
|
1631
1631
|
return s % 400 === 0 || s % 4 === 0 && s % 100 !== 0;
|
|
1632
1632
|
}
|
|
1633
|
-
function
|
|
1633
|
+
function Mi(s, e, t) {
|
|
1634
1634
|
if (e < 0 || e > 11)
|
|
1635
1635
|
return !1;
|
|
1636
1636
|
if (t != null) {
|
|
1637
1637
|
if (t < 1)
|
|
1638
1638
|
return !1;
|
|
1639
|
-
const i =
|
|
1640
|
-
if (i && t >
|
|
1639
|
+
const i = ws(s);
|
|
1640
|
+
if (i && t > $r[e] || !i && t > Fr[e])
|
|
1641
1641
|
return !1;
|
|
1642
1642
|
}
|
|
1643
1643
|
return !0;
|
|
1644
1644
|
}
|
|
1645
|
-
function
|
|
1645
|
+
function Ur(s, e) {
|
|
1646
1646
|
if (e < 1)
|
|
1647
1647
|
return !1;
|
|
1648
|
-
const t =
|
|
1648
|
+
const t = ws(s);
|
|
1649
1649
|
return !(t && e > 366 || !t && e > 365);
|
|
1650
1650
|
}
|
|
1651
|
-
function
|
|
1651
|
+
function Ni(s, e) {
|
|
1652
1652
|
return !(s < 0 || s > 52 || e != null && (e < 0 || e > 6));
|
|
1653
1653
|
}
|
|
1654
|
-
function
|
|
1654
|
+
function $t(s, e, t) {
|
|
1655
1655
|
return !(s < 0 || s >= 25 || e != null && (e < 0 || e >= 60) || t != null && (t < 0 || t >= 60));
|
|
1656
1656
|
}
|
|
1657
|
-
const
|
|
1658
|
-
function
|
|
1657
|
+
const Br = /([xXOz]+)|''|'(''|[^'])+('|$)/g;
|
|
1658
|
+
function Ai(s, e, t = {}) {
|
|
1659
1659
|
e = String(e);
|
|
1660
|
-
const i = e.match(
|
|
1660
|
+
const i = e.match(Br);
|
|
1661
1661
|
if (i) {
|
|
1662
|
-
const n =
|
|
1662
|
+
const n = Ir(t.originalDate || s, t);
|
|
1663
1663
|
e = i.reduce(function(r, o) {
|
|
1664
1664
|
if (o[0] === "'")
|
|
1665
1665
|
return r;
|
|
1666
|
-
const a = r.indexOf(o), c = r[a - 1] === "'", l = r.replace(o, "'" +
|
|
1666
|
+
const a = r.indexOf(o), c = r[a - 1] === "'", l = r.replace(o, "'" + zr[o[0]](n, o, t) + "'");
|
|
1667
1667
|
return c ? l.substring(0, a - 1) + l.substring(a + 1) : l;
|
|
1668
1668
|
}, e);
|
|
1669
1669
|
}
|
|
1670
|
-
return
|
|
1670
|
+
return mr(s, e, t);
|
|
1671
1671
|
}
|
|
1672
|
-
const
|
|
1673
|
-
var
|
|
1674
|
-
function
|
|
1672
|
+
const Kt = "#6c7489", Ii = "12px", Wr = "16px", Li = "20px", qi = "32px", bs = "20px";
|
|
1673
|
+
var _t = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
|
|
1674
|
+
function Gr(s) {
|
|
1675
1675
|
return s && s.__esModule && Object.prototype.hasOwnProperty.call(s, "default") ? s.default : s;
|
|
1676
1676
|
}
|
|
1677
|
-
var
|
|
1678
|
-
function
|
|
1679
|
-
return
|
|
1677
|
+
var wt = { exports: {} }, Yr = wt.exports, Pi;
|
|
1678
|
+
function jr() {
|
|
1679
|
+
return Pi || (Pi = 1, (function(s, e) {
|
|
1680
1680
|
(function(t, i) {
|
|
1681
1681
|
i();
|
|
1682
|
-
})(
|
|
1682
|
+
})(Yr, function() {
|
|
1683
1683
|
function t(l, u) {
|
|
1684
1684
|
return typeof u > "u" ? u = { autoBom: !1 } : typeof u != "object" && (console.warn("Deprecated: Expected third argument to be a object"), u = { autoBom: !u }), u.autoBom && /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(l.type) ? new Blob(["\uFEFF", l], { type: l.type }) : l;
|
|
1685
1685
|
}
|
|
@@ -1708,7 +1708,7 @@ function Yr() {
|
|
|
1708
1708
|
u.initMouseEvent("click", !0, !0, window, 0, 0, 0, 80, 20, !1, !1, !1, !1, 0, null), l.dispatchEvent(u);
|
|
1709
1709
|
}
|
|
1710
1710
|
}
|
|
1711
|
-
var o = typeof window == "object" && window.window === window ? window : typeof self == "object" && self.self === self ? self : typeof
|
|
1711
|
+
var o = typeof window == "object" && window.window === window ? window : typeof self == "object" && self.self === self ? self : typeof _t == "object" && _t.global === _t ? _t : void 0, a = o.navigator && /Macintosh/.test(navigator.userAgent) && /AppleWebKit/.test(navigator.userAgent) && !/Safari/.test(navigator.userAgent), c = o.saveAs || (typeof window != "object" || window !== o ? function() {
|
|
1712
1712
|
} : "download" in HTMLAnchorElement.prototype && !a ? function(l, u, d) {
|
|
1713
1713
|
var h = o.URL || o.webkitURL, y = document.createElement("a");
|
|
1714
1714
|
u = u || l.name || "download", y.download = u, y.rel = "noopener", typeof l == "string" ? (y.href = l, y.origin === location.origin ? r(y) : n(y.href) ? i(l, u, d) : r(y, y.target = "_blank")) : (y.href = h.createObjectURL(l), setTimeout(function() {
|
|
@@ -1743,15 +1743,15 @@ function Yr() {
|
|
|
1743
1743
|
});
|
|
1744
1744
|
o.saveAs = c.saveAs = c, s.exports = c;
|
|
1745
1745
|
});
|
|
1746
|
-
})(
|
|
1746
|
+
})(wt)), wt.exports;
|
|
1747
1747
|
}
|
|
1748
|
-
var
|
|
1749
|
-
var
|
|
1750
|
-
function
|
|
1751
|
-
return
|
|
1748
|
+
var Kr = jr(), bt = { exports: {} };
|
|
1749
|
+
var Qr = bt.exports, Hi;
|
|
1750
|
+
function Xr() {
|
|
1751
|
+
return Hi || (Hi = 1, (function(s, e) {
|
|
1752
1752
|
((t, i) => {
|
|
1753
1753
|
s.exports = i();
|
|
1754
|
-
})(
|
|
1754
|
+
})(Qr, function t() {
|
|
1755
1755
|
var i = typeof self < "u" ? self : typeof window < "u" ? window : i !== void 0 ? i : {}, n = !i.document && !!i.postMessage, r = i.IS_PAPA_WORKER || !1, o = {}, a = 0, c = {};
|
|
1756
1756
|
function l(m) {
|
|
1757
1757
|
return m.charCodeAt(0) === 65279 ? m.slice(1) : m;
|
|
@@ -1866,54 +1866,54 @@ function Qr() {
|
|
|
1866
1866
|
}, this);
|
|
1867
1867
|
}
|
|
1868
1868
|
function R(m) {
|
|
1869
|
-
var f, g, C, k, I = Math.pow(2, 53),
|
|
1869
|
+
var f, g, C, k, I = Math.pow(2, 53), oe = -I, we = /^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/, be = /^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/, J = this, le = 0, H = 0, ne = !1, w = !1, T = [], x = { data: [], errors: [], meta: {} };
|
|
1870
1870
|
function X(G) {
|
|
1871
1871
|
return m.skipEmptyLines === "greedy" ? G.join("").trim() === "" : G.length === 1 && G[0].length === 0;
|
|
1872
1872
|
}
|
|
1873
1873
|
function K() {
|
|
1874
|
-
if (
|
|
1874
|
+
if (x && C && (ge("Delimiter", "UndetectableDelimiter", "Unable to auto-detect delimiting character; defaulted to '" + c.DefaultDelimiter + "'"), C = !1), m.skipEmptyLines && (x.data = x.data.filter(function(P) {
|
|
1875
1875
|
return !X(P);
|
|
1876
1876
|
})), ce()) {
|
|
1877
1877
|
let P = function(de) {
|
|
1878
1878
|
T.push(de);
|
|
1879
1879
|
};
|
|
1880
|
-
if (
|
|
1881
|
-
for (var G = 0; ce() && G <
|
|
1882
|
-
|
|
1883
|
-
} else
|
|
1880
|
+
if (x) if (Array.isArray(x.data[0])) {
|
|
1881
|
+
for (var G = 0; ce() && G < x.data.length; G++) x.data[G].forEach(P);
|
|
1882
|
+
x.data.splice(0, 1);
|
|
1883
|
+
} else x.data.forEach(P);
|
|
1884
1884
|
}
|
|
1885
1885
|
function Y(P, de) {
|
|
1886
|
-
for (var
|
|
1887
|
-
var
|
|
1888
|
-
if (we.test(
|
|
1886
|
+
for (var he = m.header ? {} : [], V = 0; V < P.length; V++) {
|
|
1887
|
+
var te = V, j = P[V], j = ((Te, F) => ((re) => (m.dynamicTypingFunction && m.dynamicTyping[re] === void 0 && (m.dynamicTyping[re] = m.dynamicTypingFunction(re)), (m.dynamicTyping[re] || m.dynamicTyping) === !0))(Te) ? F === "true" || F === "TRUE" || F !== "false" && F !== "FALSE" && (((re) => {
|
|
1888
|
+
if (we.test(re) && (re = parseFloat(re), oe < re && re < I))
|
|
1889
1889
|
return 1;
|
|
1890
|
-
})(F) ? parseFloat(F) : be.test(F) ? new Date(F) : F === "" ? null : F) : F)(
|
|
1891
|
-
|
|
1890
|
+
})(F) ? parseFloat(F) : be.test(F) ? new Date(F) : F === "" ? null : F) : F)(te = m.header ? V >= T.length ? "__parsed_extra" : T[V] : te, j = m.transform ? m.transform(j, te) : j);
|
|
1891
|
+
te === "__parsed_extra" ? (he[te] = he[te] || [], he[te].push(j)) : he[te] = j;
|
|
1892
1892
|
}
|
|
1893
|
-
return m.header && (V > T.length ? ge("FieldMismatch", "TooManyFields", "Too many fields: expected " + T.length + " fields but parsed " + V, H + de) : V < T.length && ge("FieldMismatch", "TooFewFields", "Too few fields: expected " + T.length + " fields but parsed " + V, H + de)),
|
|
1893
|
+
return m.header && (V > T.length ? ge("FieldMismatch", "TooManyFields", "Too many fields: expected " + T.length + " fields but parsed " + V, H + de) : V < T.length && ge("FieldMismatch", "TooFewFields", "Too few fields: expected " + T.length + " fields but parsed " + V, H + de)), he;
|
|
1894
1894
|
}
|
|
1895
|
-
var
|
|
1896
|
-
|
|
1895
|
+
var ae;
|
|
1896
|
+
x && (m.header || m.dynamicTyping || m.transform) && (ae = 1, !x.data.length || Array.isArray(x.data[0]) ? (x.data = x.data.map(Y), ae = x.data.length) : x.data = Y(x.data, 0), m.header && x.meta && (x.meta.fields = T), H += ae);
|
|
1897
1897
|
}
|
|
1898
1898
|
function ce() {
|
|
1899
1899
|
return m.header && T.length === 0;
|
|
1900
1900
|
}
|
|
1901
|
-
function ge(G, Y,
|
|
1902
|
-
G = { type: G, code: Y, message:
|
|
1901
|
+
function ge(G, Y, ae, P) {
|
|
1902
|
+
G = { type: G, code: Y, message: ae }, P !== void 0 && (G.row = P), x.errors.push(G);
|
|
1903
1903
|
}
|
|
1904
1904
|
W(m.step) && (k = m.step, m.step = function(G) {
|
|
1905
|
-
|
|
1906
|
-
}), this.parse = function(G, Y,
|
|
1907
|
-
var P = m.quoteChar || '"', P = (m.newline || (m.newline = this.guessLineEndings(G, P)), C = !1, m.delimiter ? W(m.delimiter) && (m.delimiter = m.delimiter(G),
|
|
1908
|
-
var Te, F,
|
|
1905
|
+
x = G, ce() ? K() : (K(), x.data.length !== 0 && (le += G.data.length, m.preview && le > m.preview ? g.abort() : (x.data = x.data[0], k(x, J))));
|
|
1906
|
+
}), this.parse = function(G, Y, ae) {
|
|
1907
|
+
var P = m.quoteChar || '"', P = (m.newline || (m.newline = this.guessLineEndings(G, P)), C = !1, m.delimiter ? W(m.delimiter) && (m.delimiter = m.delimiter(G), x.meta.delimiter = m.delimiter) : ((P = ((de, he, V, te, j) => {
|
|
1908
|
+
var Te, F, re, Fe;
|
|
1909
1909
|
j = j || [",", " ", "|", ";", c.RECORD_SEP, c.UNIT_SEP];
|
|
1910
1910
|
for (var Ue = 0; Ue < j.length; Ue++) {
|
|
1911
|
-
for (var De, Ke = j[Ue], ye = 0, Oe = 0, pe = 0, Ce = (
|
|
1911
|
+
for (var De, Ke = j[Ue], ye = 0, Oe = 0, pe = 0, Ce = (re = void 0, new A({ comments: te, delimiter: Ke, newline: he, preview: 10 }).parse(de)), Me = 0; Me < Ce.data.length; Me++) V && X(Ce.data[Me]) ? pe++ : (De = Ce.data[Me].length, Oe += De, re === void 0 ? re = De : 0 < De && (ye += Math.abs(De - re), re = De));
|
|
1912
1912
|
0 < Ce.data.length && (Oe /= Ce.data.length - pe), 1.99 < Oe && (F === void 0 || ye < F || ye === F && Fe < Oe) && (F = ye, Te = Ke, Fe = Oe);
|
|
1913
1913
|
}
|
|
1914
1914
|
return { successful: !!(m.delimiter = Te), bestDelimiter: Te };
|
|
1915
|
-
})(G, m.newline, m.skipEmptyLines, m.comments, m.delimitersToGuess)).successful ? m.delimiter = P.bestDelimiter : (C = !0, m.delimiter = c.DefaultDelimiter),
|
|
1916
|
-
return P.header = ce(), m.preview && m.header && P.preview++, f = G, g = new A(P),
|
|
1915
|
+
})(G, m.newline, m.skipEmptyLines, m.comments, m.delimitersToGuess)).successful ? m.delimiter = P.bestDelimiter : (C = !0, m.delimiter = c.DefaultDelimiter), x.meta.delimiter = m.delimiter), O(m));
|
|
1916
|
+
return P.header = ce(), m.preview && m.header && P.preview++, f = G, g = new A(P), x = g.parse(f, Y, ae), K(), ne ? { meta: { paused: !0 } } : x || { meta: { paused: !1 } };
|
|
1917
1917
|
}, this.paused = function() {
|
|
1918
1918
|
return ne;
|
|
1919
1919
|
}, this.pause = function() {
|
|
@@ -1923,16 +1923,16 @@ function Qr() {
|
|
|
1923
1923
|
}, this.aborted = function() {
|
|
1924
1924
|
return w;
|
|
1925
1925
|
}, this.abort = function() {
|
|
1926
|
-
w = !0, g.abort(),
|
|
1926
|
+
w = !0, g.abort(), x.meta.aborted = !0, W(m.complete) && m.complete(x), f = "";
|
|
1927
1927
|
}, this.guessLineEndings = function(de, P) {
|
|
1928
1928
|
de = de.substring(0, 1048576);
|
|
1929
|
-
var P = new RegExp(_(P) + "([^]*?)" + _(P), "gm"),
|
|
1930
|
-
`), de = 1 < P.length && P[0].length <
|
|
1931
|
-
if (
|
|
1929
|
+
var P = new RegExp(_(P) + "([^]*?)" + _(P), "gm"), ae = (de = de.replace(P, "")).split("\r"), P = de.split(`
|
|
1930
|
+
`), de = 1 < P.length && P[0].length < ae[0].length;
|
|
1931
|
+
if (ae.length === 1 || de) return `
|
|
1932
1932
|
`;
|
|
1933
|
-
for (var
|
|
1934
|
-
` &&
|
|
1935
|
-
return
|
|
1933
|
+
for (var he = 0, V = 0; V < ae.length; V++) ae[V][0] === `
|
|
1934
|
+
` && he++;
|
|
1935
|
+
return he >= ae.length / 2 ? `\r
|
|
1936
1936
|
` : "\r";
|
|
1937
1937
|
};
|
|
1938
1938
|
}
|
|
@@ -1940,21 +1940,21 @@ function Qr() {
|
|
|
1940
1940
|
return m.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
1941
1941
|
}
|
|
1942
1942
|
function A(m) {
|
|
1943
|
-
var f = (m = m || {}).delimiter, g = m.newline, C = m.comments, k = m.step, I = m.preview,
|
|
1943
|
+
var f = (m = m || {}).delimiter, g = m.newline, C = m.comments, k = m.step, I = m.preview, oe = m.fastMode, we = null, be = !1, J = m.quoteChar == null ? '"' : m.quoteChar, le = J;
|
|
1944
1944
|
if (m.escapeChar !== void 0 && (le = m.escapeChar), (typeof f != "string" || -1 < c.BAD_DELIMITERS.indexOf(f)) && (f = ","), C === f) throw new Error("Comment character same as delimiter");
|
|
1945
1945
|
C === !0 ? C = "#" : (typeof C != "string" || -1 < c.BAD_DELIMITERS.indexOf(C)) && (C = !1), g !== `
|
|
1946
1946
|
` && g !== "\r" && g !== `\r
|
|
1947
1947
|
` && (g = `
|
|
1948
1948
|
`);
|
|
1949
1949
|
var H = 0, ne = !1;
|
|
1950
|
-
this.parse = function(w, T,
|
|
1950
|
+
this.parse = function(w, T, x) {
|
|
1951
1951
|
if (typeof w != "string") throw new Error("Input must be a string");
|
|
1952
|
-
var X = w.length, K = f.length, ce = g.length, ge = C.length, G = W(k), Y = [],
|
|
1952
|
+
var X = w.length, K = f.length, ce = g.length, ge = C.length, G = W(k), Y = [], ae = [], P = [], de = H = 0;
|
|
1953
1953
|
if (!w) return ye();
|
|
1954
|
-
if (
|
|
1955
|
-
for (var
|
|
1956
|
-
if (P =
|
|
1957
|
-
else if (
|
|
1954
|
+
if (oe || oe !== !1 && w.indexOf(J) === -1) {
|
|
1955
|
+
for (var he = w.split(g), V = 0; V < he.length; V++) {
|
|
1956
|
+
if (P = he[V], H += P.length, V !== he.length - 1) H += g.length;
|
|
1957
|
+
else if (x) return ye();
|
|
1958
1958
|
if (!C || P.substring(0, ge) !== C) {
|
|
1959
1959
|
if (G) {
|
|
1960
1960
|
if (Y = [], Fe(P.split(f)), Oe(), ne) return ye();
|
|
@@ -1964,29 +1964,29 @@ function Qr() {
|
|
|
1964
1964
|
}
|
|
1965
1965
|
return ye();
|
|
1966
1966
|
}
|
|
1967
|
-
for (var
|
|
1968
|
-
if ((F = w.indexOf(J, F + 1)) === -1) return
|
|
1967
|
+
for (var te = w.indexOf(f, H), j = w.indexOf(g, H), Te = new RegExp(_(le) + _(J), "g"), F = w.indexOf(J, H); ; ) if (w[H] === J) for (F = H, H++; ; ) {
|
|
1968
|
+
if ((F = w.indexOf(J, F + 1)) === -1) return x || ae.push({ type: "Quotes", code: "MissingQuotes", message: "Quoted field unterminated", row: Y.length, index: H }), De();
|
|
1969
1969
|
if (F === X - 1) return De(w.substring(H, F).replace(Te, J));
|
|
1970
1970
|
if (J === le && w[F + 1] === le) F++;
|
|
1971
1971
|
else if (J === le || F === 0 || w[F - 1] !== le) {
|
|
1972
|
-
|
|
1973
|
-
var
|
|
1974
|
-
if (w.substr(F + 1 +
|
|
1975
|
-
P.push(w.substring(H, F).replace(Te, J)), w[H = F + 1 +
|
|
1972
|
+
te !== -1 && te < F + 1 && (te = w.indexOf(f, F + 1));
|
|
1973
|
+
var re = Ue((j = j !== -1 && j < F + 1 ? w.indexOf(g, F + 1) : j) === -1 ? te : Math.min(te, j));
|
|
1974
|
+
if (w.substr(F + 1 + re, K) === f) {
|
|
1975
|
+
P.push(w.substring(H, F).replace(Te, J)), w[H = F + 1 + re + K] !== J && (F = w.indexOf(J, H)), te = w.indexOf(f, H), j = w.indexOf(g, H);
|
|
1976
1976
|
break;
|
|
1977
1977
|
}
|
|
1978
|
-
if (
|
|
1979
|
-
if (P.push(w.substring(H, F).replace(Te, J)), Ke(F + 1 +
|
|
1978
|
+
if (re = Ue(j), w.substring(F + 1 + re, F + 1 + re + ce) === g) {
|
|
1979
|
+
if (P.push(w.substring(H, F).replace(Te, J)), Ke(F + 1 + re + ce), te = w.indexOf(f, H), F = w.indexOf(J, H), G && (Oe(), ne)) return ye();
|
|
1980
1980
|
if (I && Y.length >= I) return ye(!0);
|
|
1981
1981
|
break;
|
|
1982
1982
|
}
|
|
1983
|
-
|
|
1983
|
+
ae.push({ type: "Quotes", code: "InvalidQuotes", message: "Trailing quote on quoted field is malformed", row: Y.length, index: H }), F++;
|
|
1984
1984
|
}
|
|
1985
1985
|
}
|
|
1986
1986
|
else if (C && P.length === 0 && w.substring(H, H + ge) === C) {
|
|
1987
1987
|
if (j === -1) return ye();
|
|
1988
|
-
H = j + ce, j = w.indexOf(g, H),
|
|
1989
|
-
} else if (
|
|
1988
|
+
H = j + ce, j = w.indexOf(g, H), te = w.indexOf(f, H);
|
|
1989
|
+
} else if (te !== -1 && (te < j || j === -1)) P.push(w.substring(H, te)), H = te + K, te = w.indexOf(f, H);
|
|
1990
1990
|
else {
|
|
1991
1991
|
if (j === -1) break;
|
|
1992
1992
|
if (P.push(w.substring(H, j)), Ke(j + ce), G && (Oe(), ne)) return ye();
|
|
@@ -2001,30 +2001,30 @@ function Qr() {
|
|
|
2001
2001
|
return Ce = pe !== -1 && (pe = w.substring(F + 1, pe)) && pe.trim() === "" ? pe.length : Ce;
|
|
2002
2002
|
}
|
|
2003
2003
|
function De(pe) {
|
|
2004
|
-
return
|
|
2004
|
+
return x || (pe === void 0 && (pe = w.substring(H)), P.push(pe), H = X, Fe(P), G && Oe()), ye();
|
|
2005
2005
|
}
|
|
2006
2006
|
function Ke(pe) {
|
|
2007
2007
|
H = pe, Fe(P), P = [], j = w.indexOf(g, H);
|
|
2008
2008
|
}
|
|
2009
2009
|
function ye(pe) {
|
|
2010
2010
|
if (m.header && !T && Y.length && !be) {
|
|
2011
|
-
var Ce = Y[0],
|
|
2012
|
-
let
|
|
2011
|
+
var Ce = Y[0], Me = /* @__PURE__ */ Object.create(null), tt = new Set(Ce);
|
|
2012
|
+
let vt = !1;
|
|
2013
2013
|
for (let Be = 0; Be < Ce.length; Be++) {
|
|
2014
|
-
let
|
|
2015
|
-
if (ze
|
|
2016
|
-
let
|
|
2017
|
-
for (;
|
|
2018
|
-
|
|
2019
|
-
} else ze
|
|
2020
|
-
|
|
2014
|
+
let ze = l(Ce[Be]);
|
|
2015
|
+
if (Me[ze = W(m.transformHeader) ? m.transformHeader(ze, Be) : ze]) {
|
|
2016
|
+
let Qe, M = Me[ze];
|
|
2017
|
+
for (; Qe = ze + "_" + M, M++, tt.has(Qe); ) ;
|
|
2018
|
+
tt.add(Qe), Ce[Be] = Qe, Me[ze]++, vt = !0, (we = we === null ? {} : we)[Qe] = ze;
|
|
2019
|
+
} else Me[ze] = 1, Ce[Be] = ze;
|
|
2020
|
+
tt.add(ze);
|
|
2021
2021
|
}
|
|
2022
|
-
|
|
2022
|
+
vt && console.warn("Duplicate headers found and renamed."), be = !0;
|
|
2023
2023
|
}
|
|
2024
|
-
return { data: Y, errors:
|
|
2024
|
+
return { data: Y, errors: ae, meta: { delimiter: f, linebreak: g, aborted: ne, truncated: !!pe, cursor: de + (T || 0), renamedHeaders: we } };
|
|
2025
2025
|
}
|
|
2026
2026
|
function Oe() {
|
|
2027
|
-
k(ye()), Y = [],
|
|
2027
|
+
k(ye()), Y = [], ae = [];
|
|
2028
2028
|
}
|
|
2029
2029
|
}, this.abort = function() {
|
|
2030
2030
|
ne = !0;
|
|
@@ -2084,64 +2084,64 @@ function Qr() {
|
|
|
2084
2084
|
})()).userStep = f.step, g.userChunk = f.chunk, g.userComplete = f.complete, g.userError = f.error, f.step = W(f.step), f.chunk = W(f.chunk), f.complete = W(f.complete), f.error = W(f.error), delete f.worker, g.postMessage({ input: m, config: f, workerId: g.id });
|
|
2085
2085
|
}, c.unparse = function(m, f) {
|
|
2086
2086
|
var g = !1, C = !0, k = ",", I = `\r
|
|
2087
|
-
`,
|
|
2087
|
+
`, oe = '"', we = oe + oe, be = !1, J = null, le = !1, H = ((() => {
|
|
2088
2088
|
if (typeof f == "object") {
|
|
2089
2089
|
if (typeof f.delimiter != "string" || c.BAD_DELIMITERS.filter(function(T) {
|
|
2090
2090
|
return f.delimiter.indexOf(T) !== -1;
|
|
2091
|
-
}).length || (k = f.delimiter), typeof f.quotes != "boolean" && typeof f.quotes != "function" && !Array.isArray(f.quotes) || (g = f.quotes), typeof f.skipEmptyLines != "boolean" && typeof f.skipEmptyLines != "string" || (be = f.skipEmptyLines), typeof f.newline == "string" && (I = f.newline), typeof f.quoteChar == "string" && (
|
|
2091
|
+
}).length || (k = f.delimiter), typeof f.quotes != "boolean" && typeof f.quotes != "function" && !Array.isArray(f.quotes) || (g = f.quotes), typeof f.skipEmptyLines != "boolean" && typeof f.skipEmptyLines != "string" || (be = f.skipEmptyLines), typeof f.newline == "string" && (I = f.newline), typeof f.quoteChar == "string" && (oe = f.quoteChar, we = oe + oe), typeof f.header == "boolean" && (C = f.header), Array.isArray(f.columns)) {
|
|
2092
2092
|
if (f.columns.length === 0) throw new Error("Option columns is empty");
|
|
2093
2093
|
J = f.columns;
|
|
2094
2094
|
}
|
|
2095
|
-
f.escapeChar !== void 0 && (we = f.escapeChar +
|
|
2095
|
+
f.escapeChar !== void 0 && (we = f.escapeChar + oe), f.escapeFormulae instanceof RegExp ? le = f.escapeFormulae : typeof f.escapeFormulae == "boolean" && f.escapeFormulae && (le = /^[=+\-@\t\r].*$/);
|
|
2096
2096
|
}
|
|
2097
|
-
})(), new RegExp(_(
|
|
2097
|
+
})(), new RegExp(_(oe), "g"));
|
|
2098
2098
|
if (typeof m == "string" && (m = JSON.parse(m)), Array.isArray(m)) {
|
|
2099
2099
|
if (!m.length || Array.isArray(m[0])) return ne(null, m, be);
|
|
2100
2100
|
if (typeof m[0] == "object") return ne(J || Object.keys(m[0]), m, be);
|
|
2101
2101
|
} else if (typeof m == "object") return typeof m.data == "string" && (m.data = JSON.parse(m.data)), Array.isArray(m.data) && (m.fields || (m.fields = m.meta && m.meta.fields || J), m.fields || (m.fields = Array.isArray(m.data[0]) ? m.fields : typeof m.data[0] == "object" ? Object.keys(m.data[0]) : []), Array.isArray(m.data[0]) || typeof m.data[0] == "object" || (m.data = [m.data])), ne(m.fields || [], m.data || [], be);
|
|
2102
2102
|
throw new Error("Unable to serialize unrecognized input");
|
|
2103
|
-
function ne(T,
|
|
2104
|
-
var K = "", ce = (typeof T == "string" && (T = JSON.parse(T)), typeof
|
|
2103
|
+
function ne(T, x, X) {
|
|
2104
|
+
var K = "", ce = (typeof T == "string" && (T = JSON.parse(T)), typeof x == "string" && (x = JSON.parse(x)), Array.isArray(T) && 0 < T.length), ge = !Array.isArray(x[0]);
|
|
2105
2105
|
if (ce && C) {
|
|
2106
2106
|
for (var G = 0; G < T.length; G++) 0 < G && (K += k), K += w(T[G], G);
|
|
2107
|
-
0 <
|
|
2107
|
+
0 < x.length && (K += I);
|
|
2108
2108
|
}
|
|
2109
|
-
for (var Y = 0; Y <
|
|
2110
|
-
var
|
|
2111
|
-
if (X && !ce && (P = X === "greedy" ?
|
|
2112
|
-
for (var
|
|
2113
|
-
var
|
|
2114
|
-
|
|
2109
|
+
for (var Y = 0; Y < x.length; Y++) {
|
|
2110
|
+
var ae = (ce ? T : x[Y]).length, P = !1, de = ce ? Object.keys(x[Y]).length === 0 : x[Y].length === 0;
|
|
2111
|
+
if (X && !ce && (P = X === "greedy" ? x[Y].join("").trim() === "" : x[Y].length === 1 && x[Y][0].length === 0), X === "greedy" && ce) {
|
|
2112
|
+
for (var he = [], V = 0; V < ae; V++) {
|
|
2113
|
+
var te = ge ? T[V] : V;
|
|
2114
|
+
he.push(x[Y][te]);
|
|
2115
2115
|
}
|
|
2116
|
-
P =
|
|
2116
|
+
P = he.join("").trim() === "";
|
|
2117
2117
|
}
|
|
2118
2118
|
if (!P) {
|
|
2119
|
-
for (var j = 0; j <
|
|
2119
|
+
for (var j = 0; j < ae; j++) {
|
|
2120
2120
|
0 < j && !de && (K += k);
|
|
2121
2121
|
var Te = ce && ge ? T[j] : j;
|
|
2122
|
-
K += w(
|
|
2122
|
+
K += w(x[Y][Te], j);
|
|
2123
2123
|
}
|
|
2124
|
-
Y <
|
|
2124
|
+
Y < x.length - 1 && (!X || 0 < ae && !de) && (K += I);
|
|
2125
2125
|
}
|
|
2126
2126
|
}
|
|
2127
2127
|
return K;
|
|
2128
2128
|
}
|
|
2129
|
-
function w(T,
|
|
2129
|
+
function w(T, x) {
|
|
2130
2130
|
var X, K, ce;
|
|
2131
|
-
return T == null ? "" : T.constructor === Date ? isNaN(T.getTime()) ? "" : T.toISOString() : (ce = !1, le && typeof T == "string" && le.test(T) && (T = "'" + T, ce = !0), K = (X = T.toString()).replace(H, we), (ce = ce || g === !0 || typeof g == "function" && g(T,
|
|
2131
|
+
return T == null ? "" : T.constructor === Date ? isNaN(T.getTime()) ? "" : T.toISOString() : (ce = !1, le && typeof T == "string" && le.test(T) && (T = "'" + T, ce = !0), K = (X = T.toString()).replace(H, we), (ce = ce || g === !0 || typeof g == "function" && g(T, x) || Array.isArray(g) && g[x] || ((ge, G) => {
|
|
2132
2132
|
for (var Y = 0; Y < G.length; Y++) if (-1 < ge.indexOf(G[Y])) return !0;
|
|
2133
2133
|
return !1;
|
|
2134
|
-
})(K, c.BAD_DELIMITERS) || -1 < K.indexOf(k) || -1 < X.indexOf(
|
|
2134
|
+
})(K, c.BAD_DELIMITERS) || -1 < K.indexOf(k) || -1 < X.indexOf(oe) || K.charAt(0) === " " || K.charAt(K.length - 1) === " ") ? oe + K + oe : K);
|
|
2135
2135
|
}
|
|
2136
2136
|
}, c.RECORD_SEP = "", c.UNIT_SEP = "", c.BYTE_ORDER_MARK = "\uFEFF", c.BAD_DELIMITERS = ["\r", `
|
|
2137
2137
|
`, '"', c.BYTE_ORDER_MARK], c.WORKERS_SUPPORTED = !n && !!i.Worker, c.NODE_STREAM_INPUT = 1, c.LocalChunkSize = 10485760, c.RemoteChunkSize = 5242880, c.DefaultDelimiter = ",", c.Parser = A, c.ParserHandle = R, c.NetworkStreamer = d, c.FileStreamer = h, c.StringStreamer = y, c.ReadableStreamStreamer = v, r && (i.onmessage = function(m) {
|
|
2138
2138
|
m = m.data, c.WORKER_ID === void 0 && m && (c.WORKER_ID = m.workerId), typeof m.input == "string" ? i.postMessage({ workerId: c.WORKER_ID, results: c.parse(m.input, m.config), finished: !0 }) : (i.File && m.input instanceof File || m.input instanceof Object) && (m = c.parse(m.input, m.config)) && i.postMessage({ workerId: c.WORKER_ID, results: m, finished: !0 });
|
|
2139
2139
|
}), (d.prototype = Object.create(u.prototype)).constructor = d, (h.prototype = Object.create(u.prototype)).constructor = h, (y.prototype = Object.create(y.prototype)).constructor = y, (v.prototype = Object.create(u.prototype)).constructor = v, c;
|
|
2140
2140
|
});
|
|
2141
|
-
})(
|
|
2141
|
+
})(bt)), bt.exports;
|
|
2142
2142
|
}
|
|
2143
|
-
var
|
|
2144
|
-
const
|
|
2143
|
+
var Vr = Xr(), nt = /* @__PURE__ */ ((s) => (s.String = "string", s.Number = "number", s.Boolean = "boolean", s.Object = "object", s.Undefined = "undefined", s))(nt || {});
|
|
2144
|
+
const Zr = ["id"], Jr = /* @__PURE__ */ _e({
|
|
2145
2145
|
__name: "VueJsonCsv",
|
|
2146
2146
|
props: {
|
|
2147
2147
|
data: {
|
|
@@ -2183,25 +2183,25 @@ const Vr = ["id"], Zr = /* @__PURE__ */ _e({
|
|
|
2183
2183
|
},
|
|
2184
2184
|
emits: ["export-started", "export-finished"],
|
|
2185
2185
|
setup(s, { emit: e }) {
|
|
2186
|
-
const t = e, i = s, n =
|
|
2186
|
+
const t = e, i = s, n = b(() => `export_${(/* @__PURE__ */ new Date()).getTime()}`), r = b(() => {
|
|
2187
2187
|
const u = c();
|
|
2188
2188
|
return u.length ? u : null;
|
|
2189
2189
|
}), o = () => {
|
|
2190
2190
|
const u = i.labels;
|
|
2191
|
-
if (typeof i.fields !==
|
|
2191
|
+
if (typeof i.fields !== nt.Object)
|
|
2192
2192
|
throw new Error("Labels needs to be a object containing key / value pairs.");
|
|
2193
|
-
return u !== null && typeof u ===
|
|
2193
|
+
return u !== null && typeof u === nt.Object ? (d) => Object.fromEntries(
|
|
2194
2194
|
Object.entries(d).map(([h, y]) => [u[h] || h, y])
|
|
2195
2195
|
) : (d) => d;
|
|
2196
2196
|
}, a = () => {
|
|
2197
2197
|
const u = i.fields;
|
|
2198
|
-
if (typeof i.fields !==
|
|
2198
|
+
if (typeof i.fields !== nt.Object && !Array.isArray(u))
|
|
2199
2199
|
throw new Error("Fields needs to be an array of strings.");
|
|
2200
2200
|
return Array.isArray(u) ? (d) => Object.fromEntries(
|
|
2201
2201
|
u.filter((h) => h in d).map((h) => [h, d[h]])
|
|
2202
2202
|
) : (d) => d;
|
|
2203
2203
|
}, c = () => {
|
|
2204
|
-
if (typeof i.fields ===
|
|
2204
|
+
if (typeof i.fields === nt.Undefined && typeof i.labels === nt.Undefined)
|
|
2205
2205
|
return i.data;
|
|
2206
2206
|
const u = o(), d = a();
|
|
2207
2207
|
return i.data.map((h) => u(d(h)));
|
|
@@ -2211,7 +2211,7 @@ const Vr = ["id"], Zr = /* @__PURE__ */ _e({
|
|
|
2211
2211
|
return;
|
|
2212
2212
|
}
|
|
2213
2213
|
t("export-started", r.value);
|
|
2214
|
-
let u =
|
|
2214
|
+
let u = Vr.unparse(r.value, Object.assign({
|
|
2215
2215
|
delimiter: i.delimiter,
|
|
2216
2216
|
encoding: i.encoding
|
|
2217
2217
|
}));
|
|
@@ -2220,7 +2220,7 @@ const Vr = ["id"], Zr = /* @__PURE__ */ _e({
|
|
|
2220
2220
|
const d = new Blob([u], {
|
|
2221
2221
|
type: "text/csv;charset=" + i.encoding
|
|
2222
2222
|
});
|
|
2223
|
-
|
|
2223
|
+
Kr.saveAs(d, i.filename);
|
|
2224
2224
|
}
|
|
2225
2225
|
};
|
|
2226
2226
|
return (u, d) => (z(), se("div", {
|
|
@@ -2228,12 +2228,12 @@ const Vr = ["id"], Zr = /* @__PURE__ */ _e({
|
|
|
2228
2228
|
"data-testid": "export-csv",
|
|
2229
2229
|
onClick: l
|
|
2230
2230
|
}, [
|
|
2231
|
-
|
|
2232
|
-
|
|
2231
|
+
et(u.$slots, "default", {}, () => [
|
|
2232
|
+
Je("Download " + ie(s.filename), 1)
|
|
2233
2233
|
])
|
|
2234
|
-
], 8,
|
|
2234
|
+
], 8, Zr));
|
|
2235
2235
|
}
|
|
2236
|
-
}),
|
|
2236
|
+
}), eo = /* @__PURE__ */ _e({
|
|
2237
2237
|
__name: "DownloadCsv",
|
|
2238
2238
|
props: {
|
|
2239
2239
|
rows: {},
|
|
@@ -2241,51 +2241,51 @@ const Vr = ["id"], Zr = /* @__PURE__ */ _e({
|
|
|
2241
2241
|
filename: {}
|
|
2242
2242
|
},
|
|
2243
2243
|
setup(s) {
|
|
2244
|
-
const e = s, t =
|
|
2244
|
+
const e = s, t = b(() => Object.keys(e.headers));
|
|
2245
2245
|
return (i, n) => (z(), se("div", null, [
|
|
2246
|
-
|
|
2246
|
+
me(Jr, {
|
|
2247
2247
|
data: s.rows,
|
|
2248
2248
|
fields: t.value,
|
|
2249
2249
|
filename: s.filename,
|
|
2250
2250
|
labels: s.headers
|
|
2251
2251
|
}, {
|
|
2252
2252
|
default: U(() => [
|
|
2253
|
-
|
|
2253
|
+
et(i.$slots, "default")
|
|
2254
2254
|
]),
|
|
2255
2255
|
_: 3
|
|
2256
2256
|
}, 8, ["data", "fields", "filename", "labels"])
|
|
2257
2257
|
]));
|
|
2258
2258
|
}
|
|
2259
|
-
}),
|
|
2260
|
-
renderer:
|
|
2261
|
-
pdfExport:
|
|
2262
|
-
csvExport:
|
|
2263
|
-
chartLabels:
|
|
2264
|
-
jumpToExplore:
|
|
2265
|
-
jumpToRequests:
|
|
2266
|
-
unsupported_time_range_badge:
|
|
2267
|
-
unsupported_time_range_warning:
|
|
2268
|
-
query_aged_out_warning:
|
|
2269
|
-
granularities:
|
|
2259
|
+
}), to = { not_configured: { title: "Chart is not fully configured", description: "Begin by choosing at least one metric" }, noQueryBridge: "No query bridge provided. Unable to render dashboard.", unexpectedError: "An unexpected error has occurred.", trendRange: { "24h": "Last 24-hour summary", "7d": "Last 7-day summary", "30d": "Last 30-day summary" }, edit: "Edit", duplicateTile: "Duplicate", exit_fullscreen: "Exit fullscreen", fullscreen: "Fullscreen", remove: "Remove", delete: "Delete", as_of_today: "As of today" }, io = { branding: "Kong Konnect", generated: "Generated {timestamp}", dashboardNote: "For a live, interactive experience, open this dashboard in Konnect", pageOf: "{page} / {total}" }, so = { defaultFilename: "Chart export", exportAsCsv: "Export as CSV", dataError: "Error loading data", noDataRange: "No data in selected range", noDataRetry: "Please adjust the time period and try again", timeRangeSelected: "selected", exportPreview: "Export preview", exportTimeRange: "Time range", exportDescription: "Exports a CSV of the data represented in the chart.", maximumRecordAmount: "The number of groups is limited to {value}", previewRows: "Previewing {rowsMax} of {rowsTotal} row{plural}", downloadButton: "Export", cancelButton: "Cancel", UtcOffset: "UTC offset", Timestamp: "Timestamp" }, no = { control_plane: "Control plane", data_plane_node_version: "Data plane node version", env: "Environment", gateway_service: "Gateway service", hostname: "Hostname", plugin: "Plugin", plugin_name: "Plugin name", plugin_scope: "Plugin scope", region: "Region", request_count: "Request count", route: "Route", status_code: "Status code", team: "Team", name: "Name", ai_count: "LLM request count", ai_plugin: "AI plugin", ai_provider: "Provider", ai_request_model: "Request model", ai_response_model: "Response model", error_rate: "Error rate", request_per_minute: "Requests per minute", requests_per_minute: "Requests per minute", response_latency_average: "Response latency (avg)", response_latency_p99: "Response latency (p99)", response_latency_p95: "Response latency (p95)", response_latency_p50: "Response latency (p50)", kong_latency_average: "Kong latency (avg)", kong_latency_p99: "Kong latency (p99)", kong_latency_p95: "Kong latency (p95)", kong_latency_p50: "Kong latency (p50)", kong_internal_latency_average: "Kong internal latency (avg)", kong_internal_latency_p99: "Kong internal latency (p99)", kong_internal_latency_p95: "Kong internal latency (p95)", kong_internal_latency_p50: "Kong internal latency (p50)", llm_cache_status: "Cache status", llm_embeddings_model: "Embeddings model", llm_embeddings_provider: "Embeddings provider", upstream_latency_average: "Upstream latency (avg)", upstream_latency_p99: "Upstream latency (p99)", upstream_latency_p95: "Upstream latency (p95)", upstream_latency_p50: "Upstream latency (p50)", response_size_p99: "Response size (p99)", response_size_p95: "Response size (p95)", response_size_p50: "Response size (p50)", response_size_average: "Response size (avg)", response_size_sum: "Response size (sum)", response_source: "Response source", request_size_p99: "Request size (p99)", request_size_p95: "Request size (p95)", request_size_p50: "Request size (p50)", request_size_average: "Request size (avg)", request_size_sum: "Request size (sum)", total_tokens_per_minute: "Total tokens per minute", control_plane_group: "Control plane group", consumer: "Consumer", country_code: "Country", country: "Country", data_plane_node: "Data plane node", api_package: "API package", api_product: "API product", api_product_version: "API product version", portal: "Portal", realm: "Realm", runtime_group: "Runtime group", application: "Application", status_code_grouped: "Status code (grouped)", upstream_status_code: "Upstream status code", upstream_status_code_grouped: "Upstream status code group", time: "Time", Service: "Service", ServiceVersion: "Service version", Route: "Route", Application: "Application", RuntimeGroup: "Runtime group", GatewayService: "Gateway service", StatusCode: "Status code", CodeClass: "Status code (grouped)", Time: "Time", API_PRODUCT: "Api product", API_PRODUCT_VERSION: "API product version", RUNTIME_GROUP: "Runtime group", GATEWAY_SERVICE: "Gateway service", ROUTE: "Route", APPLICATION: "Application", STATUS_CODE: "Status code", STATUS_CODE_GROUPED: "Status code (grouped)", TIME: "Time", ORGANIZATION: "Organization", TotalRequests: "Request count", RequestsPerMinute: "Requests per minute", LatencyP99: "Response latency (p99)", LatencyP95: "Response latency (p95)", LatencyP50: "Response latency (p50)", LatencyAverage: "Response latency (avg)", UpstreamLatencyP99: "Upstream latency (p99)", UpstreamLatencyP95: "Upstream latency (p95)", UpstreamLatencyP50: "Upstream latency (p50)", UpstreamLatencyAverage: "Upstream latency (avg)", KongLatencyP99: "Kong latency (p99)", KongLatencyP95: "Kong latency (p95)", KongLatencyP50: "Kong latency (p50)", KongLatencyAverage: "Kong latency (avg)", ResponseSizeP99: "Response size (p99)", ResponseSizeP95: "Response size (p95)", ResponseSizeP50: "Response size (p50)", RequestSizeP99: "Request size (p99)", RequestSizeP95: "Request size (p95)", RequestSizeP50: "Request size (p50)", SuccessfulRequests: "Successful requests", SUCCESS: "Successful requests", FailedRequests: "Failed requests", FAILURE: "Failed requests", "5XX": "5xx", "4XX": "4xx", "3XX": "3xx", "2XX": "2xx", "1XX": "1xx", REQUEST_COUNT: "Request count", REQUEST_PER_MINUTE: "Requests per minute", RESPONSE_LATENCY_P99: "Response latency", RESPONSE_LATENCY_P95: "Response latency", RESPONSE_LATENCY_P50: "Response latency", RESPONSE_SIZE_P99: "Response size (p99)", RESPONSE_SIZE_P95: "Response size (p95)", RESPONSE_SIZE_P50: "Response size (p50)", REQUEST_SIZE_P99: "Request size (p99)", REQUEST_SIZE_P95: "Request size (p95)", REQUEST_SIZE_P50: "Request size (p50)", CONTROL_PLANE: "Control plane", ____OTHER____: "Others", ai_request_count: "Request count", total_tokens: "Total token count", prompt_tokens: "Prompt token count", completion_tokens: "Completion token count", cost: "Costs", cost_per_request_average: "Cost per request (avg)", llm_cache_embeddings_latency_average: "Embeddings latency (avg)", llm_cache_fetch_latency_average: "Fetch latency (avg)", llm_latency_average: "Llm latency (avg)", time_to_first_token_average: "Time to first token (avg)", time_to_first_token_p99: "Time to first token (p99)", time_to_first_token_p95: "Time to first token (p95)", time_to_first_token_p50: "Time to first token (p50)", time_per_token_average: "Time per token (avg)", time_per_token_p99: "Time per token (p99)", time_per_token_p95: "Time per token (p95)", time_per_token_p50: "Time per token (p50)", "threshold-warning": "Warning threshold: {value}", "threshold-error": "Error threshold: {value}", "thatreshold-neutral": "Alert threshold: {value}", api: "API", vulnerability_count: "Vulnerability count", a2a_latency_average: "A2A latency (avg)", a2a_response_size_sum: "A2A response size (sum)", a2a_context_id: "A2A context ID", a2a_error: "A2A error", a2a_method: "A2A method", a2a_task_id: "A2A task ID", active_agents: "Active agents", mcp_error: "MCP error", mcp_method: "MCP method", mcp_latency_average: "MCP latency (avg)", mcp_latency_p99: "MCP latency (p99)", mcp_latency_p95: "MCP latency (p95)", mcp_latency_p50: "MCP latency (p50)", mcp_response_size_sum: "MCP response size (sum)", mcp_session_id: "MCP session ID", mcp_tool_name: "MCP tool name", mcp_response_body_size_sum: "MCP response size (sum)", control_plane_count: "Control plane count", service_count: "Gateway service count", "record_bytes:sum": "Record size (sum)", "record_count:sum": "Record count (sum)", "request_count:sum": "Request count (sum)", route_count: "Route count", consumer_count: "Consumer count", plugin_count: "Plugin count", node_count: "Data plane node count", virtual_cluster_id: "Virtual cluster", backend_cluster_id: "Backend cluster", listener_id: "Listener", principal_name: "Principal name", principal_type: "Principal type", request_type: "Request type", topic_name: "Topic name", partition_index: "Partition index", api_key: "API key", data_plane_group: "Data plane group", managed_cache: "Managed cache", network: "Network", provider: "Provider", provider_region: "Provider region", cache_eviction_rate: "Cache eviction rate", cache_expiration_rate: "Cache expiration rate", cache_items_average: "Cache items (avg)", cache_memory_utilization_max: "Cache memory utilization (max)", cache_status: "Cache status", cache_hit_rate: "Cache hit rate" }, ro = "Explore", oo = "View requests", ao = "Limited timeframe", lo = "The selected timeframe exceeds what this datasource supports, so this tile is limited to the maximum supported timeframe.", uo = "This tile was configured with {savedGranularity} granularity, which is no longer available. It now shows {currentGranularity} data, the closest available granularity.", co = { daily: "1 day", fiveMinutely: "5 minutes", hourly: "1 hour", minutely: "1 minute", tenMinutely: "10 minutes", tenSecondly: "10 seconds", thirtyMinutely: "30 minutes", thirtySecondly: "30 seconds", twelveHourly: "12 hours", twoHourly: "2 hours", weekly: "1 week", unknown: "Unknown" }, xs = {
|
|
2260
|
+
renderer: to,
|
|
2261
|
+
pdfExport: io,
|
|
2262
|
+
csvExport: so,
|
|
2263
|
+
chartLabels: no,
|
|
2264
|
+
jumpToExplore: ro,
|
|
2265
|
+
jumpToRequests: oo,
|
|
2266
|
+
unsupported_time_range_badge: ao,
|
|
2267
|
+
unsupported_time_range_warning: lo,
|
|
2268
|
+
query_aged_out_warning: uo,
|
|
2269
|
+
granularities: co
|
|
2270
2270
|
};
|
|
2271
|
-
function
|
|
2272
|
-
const s =
|
|
2271
|
+
function Es() {
|
|
2272
|
+
const s = Js("en-us", xs);
|
|
2273
2273
|
return {
|
|
2274
2274
|
i18n: s,
|
|
2275
|
-
i18nT:
|
|
2275
|
+
i18nT: en(s)
|
|
2276
2276
|
// Translation component <i18n-t>
|
|
2277
2277
|
};
|
|
2278
2278
|
}
|
|
2279
|
-
const
|
|
2280
|
-
function
|
|
2279
|
+
const yt = 170, ni = 6, He = "analytics-query-provider", Fi = "{entity-id}", ho = "{cp-id}", fo = "{timeframe}", mo = 30 * 1e3, po = 3e5, go = 36e5;
|
|
2280
|
+
function yo() {
|
|
2281
2281
|
const s = Ae(He);
|
|
2282
2282
|
return {
|
|
2283
2283
|
evaluateFeatureFlag: (t, i) => typeof s?.evaluateFeatureFlagFn != "function" ? i : s.evaluateFeatureFlagFn(t, i)
|
|
2284
2284
|
};
|
|
2285
2285
|
}
|
|
2286
|
-
var
|
|
2287
|
-
function
|
|
2288
|
-
return
|
|
2286
|
+
var Ut = { exports: {} }, $i;
|
|
2287
|
+
function vo() {
|
|
2288
|
+
return $i || ($i = 1, (function(s) {
|
|
2289
2289
|
var e = Object.prototype.hasOwnProperty, t = "~";
|
|
2290
2290
|
function i() {
|
|
2291
2291
|
}
|
|
@@ -2388,18 +2388,18 @@ function yo() {
|
|
|
2388
2388
|
var u;
|
|
2389
2389
|
return l ? (u = t ? t + l : l, this._events[u] && o(this, u)) : (this._events = new i(), this._eventsCount = 0), this;
|
|
2390
2390
|
}, a.prototype.off = a.prototype.removeListener, a.prototype.addListener = a.prototype.on, a.prefixed = t, a.EventEmitter = a, s.exports = a;
|
|
2391
|
-
})(
|
|
2391
|
+
})(Ut)), Ut.exports;
|
|
2392
2392
|
}
|
|
2393
|
-
var
|
|
2394
|
-
const
|
|
2395
|
-
class
|
|
2393
|
+
var _o = vo();
|
|
2394
|
+
const wo = /* @__PURE__ */ Gr(_o);
|
|
2395
|
+
class ri extends Error {
|
|
2396
2396
|
name = "TimeoutError";
|
|
2397
2397
|
constructor(e, t) {
|
|
2398
|
-
super(e, t), Error.captureStackTrace?.(this,
|
|
2398
|
+
super(e, t), Error.captureStackTrace?.(this, ri);
|
|
2399
2399
|
}
|
|
2400
2400
|
}
|
|
2401
|
-
const
|
|
2402
|
-
function
|
|
2401
|
+
const Ui = (s) => s.reason ?? new DOMException("This operation was aborted.", "AbortError");
|
|
2402
|
+
function bo(s, e) {
|
|
2403
2403
|
const {
|
|
2404
2404
|
milliseconds: t,
|
|
2405
2405
|
fallback: i,
|
|
@@ -2412,14 +2412,14 @@ function wo(s, e) {
|
|
|
2412
2412
|
if (typeof t != "number" || Math.sign(t) !== 1)
|
|
2413
2413
|
throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);
|
|
2414
2414
|
if (o?.aborted) {
|
|
2415
|
-
h(
|
|
2415
|
+
h(Ui(o));
|
|
2416
2416
|
return;
|
|
2417
2417
|
}
|
|
2418
2418
|
if (o && (c = () => {
|
|
2419
|
-
h(
|
|
2419
|
+
h(Ui(o));
|
|
2420
2420
|
}, o.addEventListener("abort", c, { once: !0 })), s.then(d, h), t === Number.POSITIVE_INFINITY)
|
|
2421
2421
|
return;
|
|
2422
|
-
const y = new
|
|
2422
|
+
const y = new ri();
|
|
2423
2423
|
a = r.setTimeout.call(void 0, () => {
|
|
2424
2424
|
if (i) {
|
|
2425
2425
|
try {
|
|
@@ -2438,7 +2438,7 @@ function wo(s, e) {
|
|
|
2438
2438
|
r.clearTimeout.call(void 0, a), a = void 0;
|
|
2439
2439
|
}, u;
|
|
2440
2440
|
}
|
|
2441
|
-
function
|
|
2441
|
+
function xo(s, e, t) {
|
|
2442
2442
|
let i = 0, n = s.length;
|
|
2443
2443
|
for (; n > 0; ) {
|
|
2444
2444
|
const r = Math.trunc(n / 2);
|
|
@@ -2447,8 +2447,8 @@ function bo(s, e, t) {
|
|
|
2447
2447
|
}
|
|
2448
2448
|
return i;
|
|
2449
2449
|
}
|
|
2450
|
-
const
|
|
2451
|
-
class
|
|
2450
|
+
const Eo = 100;
|
|
2451
|
+
class Bi {
|
|
2452
2452
|
#t = [];
|
|
2453
2453
|
// The queue is stored as a sorted array, but dequeued items are left before `#head` until compaction. Only items from `#head` onward are live, which keeps repeated dequeues amortized O(1).
|
|
2454
2454
|
#e = 0;
|
|
@@ -2467,7 +2467,7 @@ class Ui {
|
|
|
2467
2467
|
return;
|
|
2468
2468
|
}
|
|
2469
2469
|
this.#r();
|
|
2470
|
-
const a =
|
|
2470
|
+
const a = xo(this.#t, o, (c, l) => l.priority - c.priority);
|
|
2471
2471
|
this.#t.splice(a, 0, o);
|
|
2472
2472
|
}
|
|
2473
2473
|
setPriority(e, t) {
|
|
@@ -2485,7 +2485,7 @@ class Ui {
|
|
|
2485
2485
|
if (this.#e === this.#t.length)
|
|
2486
2486
|
return;
|
|
2487
2487
|
const e = this.#t[this.#e];
|
|
2488
|
-
return this.#e++, this.#e === this.#t.length ? (this.#t.length = 0, this.#e = 0) : this.#e >
|
|
2488
|
+
return this.#e++, this.#e === this.#t.length ? (this.#t.length = 0, this.#e = 0) : this.#e > Eo && this.#e > this.#t.length / 2 && this.#r(), e?.run;
|
|
2489
2489
|
}
|
|
2490
2490
|
filter(e) {
|
|
2491
2491
|
const t = [];
|
|
@@ -2502,7 +2502,7 @@ class Ui {
|
|
|
2502
2502
|
this.#e !== 0 && (this.#t.splice(0, this.#e), this.#e = 0);
|
|
2503
2503
|
}
|
|
2504
2504
|
}
|
|
2505
|
-
class
|
|
2505
|
+
class Co extends wo {
|
|
2506
2506
|
#t;
|
|
2507
2507
|
#e;
|
|
2508
2508
|
#r = 0;
|
|
@@ -2556,7 +2556,7 @@ class Eo extends _o {
|
|
|
2556
2556
|
interval: 0,
|
|
2557
2557
|
concurrency: Number.POSITIVE_INFINITY,
|
|
2558
2558
|
autoStart: !0,
|
|
2559
|
-
queueClass:
|
|
2559
|
+
queueClass: Bi,
|
|
2560
2560
|
strict: !1,
|
|
2561
2561
|
...e
|
|
2562
2562
|
}, !(typeof e.intervalCap == "number" && e.intervalCap >= 1))
|
|
@@ -2744,7 +2744,7 @@ class Eo extends _o {
|
|
|
2744
2744
|
throw this.#$(), this.#y.delete(r), h;
|
|
2745
2745
|
}
|
|
2746
2746
|
let u = e({ signal: t.signal });
|
|
2747
|
-
if (t.timeout !== void 0 && (u =
|
|
2747
|
+
if (t.timeout !== void 0 && (u = bo(Promise.resolve(u), {
|
|
2748
2748
|
milliseconds: t.timeout,
|
|
2749
2749
|
message: `Task timed out after ${t.timeout}ms (queue has ${this.#s} running, ${this.#i.size} waiting)`
|
|
2750
2750
|
})), t.signal) {
|
|
@@ -2767,7 +2767,7 @@ class Eo extends _o {
|
|
|
2767
2767
|
};
|
|
2768
2768
|
this.#i.enqueue(a, t);
|
|
2769
2769
|
const c = () => {
|
|
2770
|
-
if (this.#i instanceof
|
|
2770
|
+
if (this.#i instanceof Bi) {
|
|
2771
2771
|
this.#i.remove(a);
|
|
2772
2772
|
return;
|
|
2773
2773
|
}
|
|
@@ -3038,15 +3038,15 @@ class Eo extends _o {
|
|
|
3038
3038
|
}));
|
|
3039
3039
|
}
|
|
3040
3040
|
}
|
|
3041
|
-
const
|
|
3042
|
-
const s =
|
|
3041
|
+
const Ro = () => {
|
|
3042
|
+
const s = si(), e = Ae(He);
|
|
3043
3043
|
if (!e)
|
|
3044
3044
|
return;
|
|
3045
3045
|
if (e.queryFnOverride) {
|
|
3046
3046
|
console.warn("Detected incorrect use of useRequestQueue. This composable should not be used in nested components. Please discuss with team-data or report an issue if you feel you have a use case.");
|
|
3047
3047
|
return;
|
|
3048
3048
|
}
|
|
3049
|
-
const t = new
|
|
3049
|
+
const t = new Co({
|
|
3050
3050
|
carryoverConcurrencyCount: !0,
|
|
3051
3051
|
concurrency: s.maxParallelRequests,
|
|
3052
3052
|
interval: s.requestInterval,
|
|
@@ -3056,24 +3056,24 @@ const Co = () => {
|
|
|
3056
3056
|
queryFnOverride: !0,
|
|
3057
3057
|
queryFn: (n, r) => t.add(() => e.queryFn(n, r))
|
|
3058
3058
|
};
|
|
3059
|
-
|
|
3059
|
+
As(He, i);
|
|
3060
3060
|
};
|
|
3061
|
-
function
|
|
3061
|
+
function ko(s) {
|
|
3062
3062
|
const e = `[${s.name}] ${s.message}`, t = [];
|
|
3063
3063
|
return s.fix && t.push(`fix: ${s.fix}`), s.sources?.length && t.push(`sources: ${s.sources.join(", ")}`), s.docs && t.push(`see: ${s.docs}`), t.length === 0 ? e : [e, ...t.map((i, n) => `${n < t.length - 1 ? "├▶" : "╰▶"} ${i}`)].join(`
|
|
3064
3064
|
`);
|
|
3065
3065
|
}
|
|
3066
|
-
function
|
|
3066
|
+
function Wi(s, ...e) {
|
|
3067
3067
|
return typeof s == "function" ? s(...e) : s;
|
|
3068
3068
|
}
|
|
3069
3069
|
// @__NO_SIDE_EFFECTS__
|
|
3070
|
-
function
|
|
3070
|
+
function To({ method: s = "warn", formatter: e = ko } = {}) {
|
|
3071
3071
|
return (t, { method: i = s } = {}) => {
|
|
3072
3072
|
console[i](e(t));
|
|
3073
3073
|
};
|
|
3074
3074
|
}
|
|
3075
|
-
const
|
|
3076
|
-
var
|
|
3075
|
+
const So = Error.captureStackTrace;
|
|
3076
|
+
var Do = class Cs extends Error {
|
|
3077
3077
|
name;
|
|
3078
3078
|
/**
|
|
3079
3079
|
* The diagnostic code, e.g. `MATH_E001`.
|
|
@@ -3109,8 +3109,8 @@ var So = class Es extends Error {
|
|
|
3109
3109
|
* `defineDiagnostics` passes its action method to strip its own frames too.
|
|
3110
3110
|
* Ignored on engines without `Error.captureStackTrace`.
|
|
3111
3111
|
*/
|
|
3112
|
-
constructor(e, t =
|
|
3113
|
-
super(e.why, { cause: e.cause }), this.code = this.name = e.code, this.fix = e.fix, this.docs = e.docs, this.sources = e.sources,
|
|
3112
|
+
constructor(e, t = Cs) {
|
|
3113
|
+
super(e.why, { cause: e.cause }), this.code = this.name = e.code, this.fix = e.fix, this.docs = e.docs, this.sources = e.sources, So?.(this, t);
|
|
3114
3114
|
}
|
|
3115
3115
|
/**
|
|
3116
3116
|
* Converts the diagnostic into a serializable structured object.
|
|
@@ -3127,18 +3127,18 @@ var So = class Es extends Error {
|
|
|
3127
3127
|
};
|
|
3128
3128
|
}
|
|
3129
3129
|
};
|
|
3130
|
-
function
|
|
3130
|
+
function Oo(s, e) {
|
|
3131
3131
|
return typeof s == "string" ? `${s}/${e.toLowerCase()}` : s?.(e);
|
|
3132
3132
|
}
|
|
3133
3133
|
// @__NO_SIDE_EFFECTS__
|
|
3134
|
-
function
|
|
3134
|
+
function zo(s) {
|
|
3135
3135
|
const e = s.reporters ?? [], t = {}, { docsBase: i } = s;
|
|
3136
3136
|
for (const n of Object.keys(s.codes)) {
|
|
3137
|
-
const r = s.codes[n], o = r.docs === !1 ? void 0 : r.docs ||
|
|
3138
|
-
const u = new
|
|
3137
|
+
const r = s.codes[n], o = r.docs === !1 ? void 0 : r.docs || Oo(i, n), a = (c = {}, l = {}) => {
|
|
3138
|
+
const u = new Do({
|
|
3139
3139
|
code: n,
|
|
3140
|
-
why:
|
|
3141
|
-
fix:
|
|
3140
|
+
why: Wi(r.why, c),
|
|
3141
|
+
fix: Wi(r.fix, c),
|
|
3142
3142
|
docs: o,
|
|
3143
3143
|
cause: c.cause,
|
|
3144
3144
|
sources: c.sources
|
|
@@ -3150,8 +3150,8 @@ function Oo(s) {
|
|
|
3150
3150
|
}
|
|
3151
3151
|
return t;
|
|
3152
3152
|
}
|
|
3153
|
-
const
|
|
3154
|
-
reporters: [/* @__PURE__ */
|
|
3153
|
+
const Mo = typeof window < "u", No = /* @__PURE__ */ zo({
|
|
3154
|
+
reporters: [/* @__PURE__ */ To()],
|
|
3155
3155
|
codes: {
|
|
3156
3156
|
PINIA_R1001: {
|
|
3157
3157
|
why: 'Directly pass all stores to "mapStores()" without putting them in an array. This will fail in production.',
|
|
@@ -3189,31 +3189,31 @@ const zo = typeof window < "u", Mo = /* @__PURE__ */ Oo({
|
|
|
3189
3189
|
}
|
|
3190
3190
|
}
|
|
3191
3191
|
});
|
|
3192
|
-
let
|
|
3192
|
+
let Gi;
|
|
3193
3193
|
process.env.NODE_ENV;
|
|
3194
|
-
const
|
|
3194
|
+
const Yi = process.env.NODE_ENV !== "production" ? /* @__PURE__ */ Symbol("pinia") : (
|
|
3195
3195
|
/* istanbul ignore next */
|
|
3196
3196
|
/* @__PURE__ */ Symbol()
|
|
3197
3197
|
);
|
|
3198
3198
|
process.env.NODE_ENV;
|
|
3199
|
-
function
|
|
3200
|
-
const e =
|
|
3199
|
+
function ot(s) {
|
|
3200
|
+
const e = Is(s), t = {};
|
|
3201
3201
|
for (const i in e) {
|
|
3202
3202
|
const n = e[i];
|
|
3203
|
-
n?.effect ? t[i] =
|
|
3203
|
+
n?.effect ? t[i] = b({
|
|
3204
3204
|
get: () => s[i],
|
|
3205
3205
|
set(r) {
|
|
3206
3206
|
s[i] = r;
|
|
3207
3207
|
}
|
|
3208
|
-
}) : (
|
|
3208
|
+
}) : (Ls(n) || qs(n)) && (t[i] = dt(s, i));
|
|
3209
3209
|
}
|
|
3210
3210
|
return t;
|
|
3211
3211
|
}
|
|
3212
|
-
const Pe = (s) => s?.chart.type === "table",
|
|
3212
|
+
const Pe = (s) => s?.chart.type === "table", Qt = (s) => s?.query?.datasource === "requests", Xt = (s) => !!s && !Pe(s) && !Qt(s), Ao = (s, e) => {
|
|
3213
3213
|
const t = s.header_description ?? ("description" in s.chart ? s.chart.description : void 0);
|
|
3214
3214
|
if (t)
|
|
3215
|
-
return t.replaceAll(
|
|
3216
|
-
},
|
|
3215
|
+
return t.replaceAll(fo, e) || void 0;
|
|
3216
|
+
}, Io = [
|
|
3217
3217
|
"basic",
|
|
3218
3218
|
"api_usage",
|
|
3219
3219
|
"llm_usage",
|
|
@@ -3222,28 +3222,28 @@ const Pe = (s) => s?.chart.type === "table", Kt = (s) => s?.query?.datasource ==
|
|
|
3222
3222
|
"platform_usage",
|
|
3223
3223
|
"managed_cache_usage",
|
|
3224
3224
|
void 0
|
|
3225
|
-
],
|
|
3226
|
-
function
|
|
3225
|
+
], Lo = (s) => Io.includes(s);
|
|
3226
|
+
function qo({
|
|
3227
3227
|
queryBridge: s,
|
|
3228
3228
|
context: e,
|
|
3229
3229
|
definition: t,
|
|
3230
3230
|
chartData: i
|
|
3231
3231
|
}) {
|
|
3232
|
-
const n = Q(""), r = Q(""), o = Q(void 0), a = Q(void 0), c =
|
|
3233
|
-
|
|
3232
|
+
const n = Q(""), r = Q(""), o = Q(void 0), a = Q(void 0), c = si(), l = lt(), { stripUnknownFilters: u, loading: d } = ot(l), h = b(() => Pe(t.value));
|
|
3233
|
+
zt(async () => {
|
|
3234
3234
|
n.value = await s?.exploreBaseUrl?.() ?? "", r.value = await s?.requestsBaseUrl?.() ?? "";
|
|
3235
3235
|
});
|
|
3236
|
-
const y =
|
|
3236
|
+
const y = b(() => c.analytics && c.percentiles), v = b(() => {
|
|
3237
3237
|
const g = t.value.chart.type;
|
|
3238
3238
|
return ["golden_signals", "gauge"].includes(g) ? !1 : g === "top_n" ? !!e.value.editable || !!e.value.showTileActions : !0;
|
|
3239
|
-
}), R =
|
|
3239
|
+
}), R = b(() => r.value && t.value.query && !h.value && t.value.query.datasource !== "llm_usage" && t.value.query.datasource !== "managed_cache_usage" && !ei(t.value.query.datasource) && y.value && !d.value), _ = b(() => n.value && t.value.query && Lo(t.value.query.datasource) && y.value && !d.value), A = b(() => i.value ? Gt(i.value.meta.granularity_ms) : void 0), N = b(() => {
|
|
3240
3240
|
const g = t.value, C = [...e.value.filters, ...g.query.filters ?? []], k = "metrics" in g.query ? g.query.metrics : void 0, I = g.query?.datasource ?? "api_usage";
|
|
3241
3241
|
return u.value({
|
|
3242
3242
|
datasource: I,
|
|
3243
3243
|
filters: C,
|
|
3244
3244
|
queryFields: k
|
|
3245
3245
|
});
|
|
3246
|
-
}), E =
|
|
3246
|
+
}), E = b(() => {
|
|
3247
3247
|
if (!_.value || !v.value)
|
|
3248
3248
|
return "";
|
|
3249
3249
|
const g = t.value;
|
|
@@ -3254,7 +3254,7 @@ function Lo({
|
|
|
3254
3254
|
});
|
|
3255
3255
|
const C = g.query.time_range || e.value.timeSpec, k = m(C, N.value);
|
|
3256
3256
|
return f(k);
|
|
3257
|
-
}), S =
|
|
3257
|
+
}), S = b(() => {
|
|
3258
3258
|
if (!R.value || !v.value)
|
|
3259
3259
|
return "";
|
|
3260
3260
|
const g = N.value, C = t.value;
|
|
@@ -3284,12 +3284,12 @@ function Lo({
|
|
|
3284
3284
|
}
|
|
3285
3285
|
}), m = (g, C) => {
|
|
3286
3286
|
const k = t.value;
|
|
3287
|
-
if (!
|
|
3287
|
+
if (!Xt(k))
|
|
3288
3288
|
throw new Error("Cannot build a chart explore query for table or api-requests definitions");
|
|
3289
|
-
const I = [...k.query.dimensions ?? []],
|
|
3289
|
+
const I = [...k.query.dimensions ?? []], oe = [...k.query.metrics ?? []];
|
|
3290
3290
|
return {
|
|
3291
3291
|
filters: C,
|
|
3292
|
-
metrics:
|
|
3292
|
+
metrics: oe,
|
|
3293
3293
|
dimensions: I,
|
|
3294
3294
|
time_range: g,
|
|
3295
3295
|
granularity: k.query.granularity || A.value || void 0
|
|
@@ -3316,16 +3316,16 @@ function Lo({
|
|
|
3316
3316
|
buildRequestLink: O
|
|
3317
3317
|
};
|
|
3318
3318
|
}
|
|
3319
|
-
const
|
|
3320
|
-
const i =
|
|
3319
|
+
const Rs = (s) => s.type === "relative" ? ti.get(ii[s.time_range])?.timeframeLengthMs() : new Date(s.end).getTime() - new Date(s.start).getTime(), Po = (s) => s.reduce((e, t) => {
|
|
3320
|
+
const i = ti.get(ii[t])?.maximumTimeframeLength();
|
|
3321
3321
|
return i === void 0 || e && i <= e.durationSeconds ? e : { durationSeconds: i, key: t };
|
|
3322
|
-
}, void 0),
|
|
3322
|
+
}, void 0), ks = (s, e) => {
|
|
3323
3323
|
if (!s || !e?.length)
|
|
3324
3324
|
return;
|
|
3325
|
-
const t =
|
|
3325
|
+
const t = Rs(s), i = Po(e);
|
|
3326
3326
|
return t !== void 0 && i && t > i.durationSeconds * 1e3 ? i : void 0;
|
|
3327
|
-
},
|
|
3328
|
-
const t =
|
|
3327
|
+
}, Ts = (s, e) => {
|
|
3328
|
+
const t = ks(s, e);
|
|
3329
3329
|
return !t || !s ? s : s.type === "relative" ? {
|
|
3330
3330
|
...s,
|
|
3331
3331
|
time_range: t.key
|
|
@@ -3334,10 +3334,10 @@ const Cs = (s) => s.type === "relative" ? ei.get(ti[s.time_range])?.timeframeLen
|
|
|
3334
3334
|
start: new Date(new Date(s.end).getTime() - t.durationSeconds * 1e3)
|
|
3335
3335
|
};
|
|
3336
3336
|
};
|
|
3337
|
-
function
|
|
3338
|
-
const s = Ae(He), e =
|
|
3337
|
+
function Ho() {
|
|
3338
|
+
const s = Ae(He), e = lt(), { datasourceConfigMap: t, stripUnknownFilters: i } = ot(e);
|
|
3339
3339
|
let n = null;
|
|
3340
|
-
return
|
|
3340
|
+
return at(() => {
|
|
3341
3341
|
n?.abort();
|
|
3342
3342
|
}), { issueQuery: async (o, a, c) => {
|
|
3343
3343
|
if (!s)
|
|
@@ -3349,14 +3349,14 @@ function Po() {
|
|
|
3349
3349
|
datasource: u,
|
|
3350
3350
|
limit: d,
|
|
3351
3351
|
...h
|
|
3352
|
-
} = o, y = u || "basic", v =
|
|
3352
|
+
} = o, y = u || "basic", v = ei(y), R = i.value({
|
|
3353
3353
|
datasource: y,
|
|
3354
3354
|
filters: [
|
|
3355
3355
|
...o.filters ?? [],
|
|
3356
3356
|
...a.filters
|
|
3357
3357
|
],
|
|
3358
3358
|
queryFields: o.metrics
|
|
3359
|
-
}).filter(({ operator: N }) => !v || !
|
|
3359
|
+
}).filter(({ operator: N }) => !v || !Bs.some((E) => E === N));
|
|
3360
3360
|
let _ = o.time_range;
|
|
3361
3361
|
!_ && a.timeSpec ? _ = {
|
|
3362
3362
|
...a.timeSpec,
|
|
@@ -3364,7 +3364,7 @@ function Po() {
|
|
|
3364
3364
|
} : _ && !_.tz && (_ = {
|
|
3365
3365
|
..._,
|
|
3366
3366
|
tz: a.tz
|
|
3367
|
-
}), _ =
|
|
3367
|
+
}), _ = Ts(_, t.value[y]?.timeRangeOptions);
|
|
3368
3368
|
const A = {
|
|
3369
3369
|
datasource: y,
|
|
3370
3370
|
query: {
|
|
@@ -3377,10 +3377,10 @@ function Po() {
|
|
|
3377
3377
|
return s.queryFn(A, l);
|
|
3378
3378
|
} };
|
|
3379
3379
|
}
|
|
3380
|
-
const
|
|
3380
|
+
const Fo = "24H", $o = {
|
|
3381
3381
|
status_code: "response_http_status",
|
|
3382
3382
|
upstream_status_code: "upstream_status"
|
|
3383
|
-
},
|
|
3383
|
+
}, Uo = {
|
|
3384
3384
|
cost: "usd",
|
|
3385
3385
|
latencies_response_ms: "ms",
|
|
3386
3386
|
latencies_upstream_ms: "ms",
|
|
@@ -3390,34 +3390,34 @@ const Ho = "24H", Fo = {
|
|
|
3390
3390
|
response_body_size: "bytes",
|
|
3391
3391
|
response_header_content_length: "bytes",
|
|
3392
3392
|
ai_count: "count"
|
|
3393
|
-
},
|
|
3393
|
+
}, Bo = (s) => Ws.includes(s), Wo = (s) => {
|
|
3394
3394
|
const e = s?.tz ? { tz: s.tz } : {};
|
|
3395
3395
|
if (s?.type === "absolute")
|
|
3396
3396
|
return { type: "absolute", start: s.start, end: s.end, ...e };
|
|
3397
3397
|
const t = s?.time_range.toUpperCase() ?? "";
|
|
3398
3398
|
return {
|
|
3399
3399
|
type: "relative",
|
|
3400
|
-
time_range:
|
|
3400
|
+
time_range: Bo(t) ? t : Fo,
|
|
3401
3401
|
...e
|
|
3402
3402
|
};
|
|
3403
|
-
},
|
|
3404
|
-
metric:
|
|
3405
|
-
dimension: s.dimension ?
|
|
3403
|
+
}, ji = (s) => $o[s] ?? s, Go = (s) => ({
|
|
3404
|
+
metric: ji(s.metric),
|
|
3405
|
+
dimension: s.dimension ? ji(s.dimension) : void 0,
|
|
3406
3406
|
unroll: s.unroll,
|
|
3407
|
-
metricUnit:
|
|
3407
|
+
metricUnit: Uo[s.metric],
|
|
3408
3408
|
extraFields: s.extra_fields
|
|
3409
|
-
}),
|
|
3410
|
-
function
|
|
3411
|
-
const s = Ae(He), e =
|
|
3409
|
+
}), Bt = "requests";
|
|
3410
|
+
function Yo() {
|
|
3411
|
+
const s = Ae(He), e = lt(), { datasourceConfigMap: t, stripUnknownFilters: i } = ot(e);
|
|
3412
3412
|
let n = null;
|
|
3413
|
-
|
|
3413
|
+
at(() => {
|
|
3414
3414
|
n?.abort();
|
|
3415
3415
|
});
|
|
3416
3416
|
const r = (a, c) => {
|
|
3417
3417
|
const l = a.time_range ?? c.timeSpec;
|
|
3418
|
-
return
|
|
3418
|
+
return Ts(
|
|
3419
3419
|
l && { ...l, tz: l.tz ?? c.tz },
|
|
3420
|
-
t.value[
|
|
3420
|
+
t.value[Bt]?.timeRangeOptions
|
|
3421
3421
|
);
|
|
3422
3422
|
};
|
|
3423
3423
|
return { issueRequestsQuery: async (a, c) => {
|
|
@@ -3428,39 +3428,39 @@ function Go() {
|
|
|
3428
3428
|
const u = new AbortController();
|
|
3429
3429
|
n = u, await e.isReady();
|
|
3430
3430
|
const d = i.value({
|
|
3431
|
-
datasource:
|
|
3431
|
+
datasource: Bt,
|
|
3432
3432
|
filters: [...a.filters ?? [], ...c.filters]
|
|
3433
3433
|
});
|
|
3434
|
-
return
|
|
3435
|
-
datasource:
|
|
3434
|
+
return Gs(l, {
|
|
3435
|
+
datasource: Bt,
|
|
3436
3436
|
query: {
|
|
3437
3437
|
filters: d,
|
|
3438
|
-
time_range:
|
|
3438
|
+
time_range: Wo(r(a, c))
|
|
3439
3439
|
}
|
|
3440
3440
|
}, u, { maxRecords: a.max_records });
|
|
3441
3441
|
} };
|
|
3442
3442
|
}
|
|
3443
|
-
function
|
|
3443
|
+
function jo({
|
|
3444
3444
|
context: s,
|
|
3445
3445
|
globalFilters: e = Q([]),
|
|
3446
3446
|
isFullscreen: t = Q(!1),
|
|
3447
3447
|
preview: i = Q(!1)
|
|
3448
3448
|
}) {
|
|
3449
|
-
const n =
|
|
3449
|
+
const n = si(), r = lt(), { loading: o } = ot(n), { loading: a } = ot(r), c = b(() => s.value.timeSpec ? s.value.timeSpec : {
|
|
3450
3450
|
type: "relative",
|
|
3451
3451
|
time_range: n.defaultQueryTimeForOrg
|
|
3452
|
-
}), l =
|
|
3452
|
+
}), l = b(() => {
|
|
3453
3453
|
const { tz: S } = s.value;
|
|
3454
3454
|
return S || new Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
3455
|
-
}), u =
|
|
3455
|
+
}), u = b(() => {
|
|
3456
3456
|
const { editable: S } = s.value;
|
|
3457
3457
|
return S === void 0 || i.value ? !1 : S;
|
|
3458
|
-
}), d =
|
|
3458
|
+
}), d = b(() => {
|
|
3459
3459
|
const { showTileActions: S } = s.value;
|
|
3460
3460
|
return i.value ? !1 : S === void 0 ? !0 : S;
|
|
3461
|
-
}), h =
|
|
3461
|
+
}), h = b(() => [...s.value.filters ?? [], ...e.value]), y = b(() => {
|
|
3462
3462
|
let { refreshInterval: S } = s.value;
|
|
3463
|
-
if (S === void 0 && (S =
|
|
3463
|
+
if (S === void 0 && (S = mo), t.value) {
|
|
3464
3464
|
let O = !1;
|
|
3465
3465
|
if (c.value.type === "relative")
|
|
3466
3466
|
O = ["15m", "1h", "6h", "12h", "24h"].includes(c.value.time_range);
|
|
@@ -3469,17 +3469,17 @@ function Yo({
|
|
|
3469
3469
|
O = Math.abs(f - m) <= 864e5;
|
|
3470
3470
|
}
|
|
3471
3471
|
const $ = (/* @__PURE__ */ new Date()).getTime();
|
|
3472
|
-
c.value.type === "absolute" && c.value.end.getTime() < $ || c.value.type === "relative" && ["previous_week", "previous_month"].includes(c.value.time_range) ? S = 0 : O ? S =
|
|
3472
|
+
c.value.type === "absolute" && c.value.end.getTime() < $ || c.value.type === "relative" && ["previous_week", "previous_month"].includes(c.value.time_range) ? S = 0 : O ? S = po : S = go;
|
|
3473
3473
|
}
|
|
3474
3474
|
return S;
|
|
3475
|
-
}), v =
|
|
3475
|
+
}), v = b(() => ({
|
|
3476
3476
|
filters: h.value,
|
|
3477
3477
|
timeSpec: c.value,
|
|
3478
3478
|
tz: l.value,
|
|
3479
3479
|
refreshInterval: y.value,
|
|
3480
3480
|
editable: u.value,
|
|
3481
3481
|
showTileActions: d.value
|
|
3482
|
-
})), R =
|
|
3482
|
+
})), R = b(() => !o.value && !a.value), _ = b(() => !i.value && !!Ps()?.vnode?.props?.onTileTimeRangeZoom), A = b(() => !i.value), N = b(() => !i.value), E = b(() => ({
|
|
3483
3483
|
enabled: _.value,
|
|
3484
3484
|
showExploreAction: A.value,
|
|
3485
3485
|
showRequestsAction: N.value,
|
|
@@ -3529,16 +3529,16 @@ function Yo({
|
|
|
3529
3529
|
zoomConfiguration: E
|
|
3530
3530
|
};
|
|
3531
3531
|
}
|
|
3532
|
-
const
|
|
3533
|
-
function
|
|
3534
|
-
const { pageWidth: t, pageHeight: i, margin: n } = e, r = n + 1, o = n + e.headerHeight - 3, a = i - n -
|
|
3535
|
-
e.title && (s.setFont("helvetica", "bold"), s.setFontSize(11), s.setTextColor(60), s.text(e.title, n, r)), s.setFont("helvetica", "normal"), s.setFontSize(8), s.setTextColor(120), s.text(e.generatedAt, t - n, r, { align: "right" }), e.subtitle && s.text(e.subtitle, n, r +
|
|
3532
|
+
const Ko = 6, Ss = 6, Ds = 4;
|
|
3533
|
+
function Qo(s, e) {
|
|
3534
|
+
const { pageWidth: t, pageHeight: i, margin: n } = e, r = n + 1, o = n + e.headerHeight - 3, a = i - n - Ss + 3, c = a + 4;
|
|
3535
|
+
e.title && (s.setFont("helvetica", "bold"), s.setFontSize(11), s.setTextColor(60), s.text(e.title, n, r)), s.setFont("helvetica", "normal"), s.setFontSize(8), s.setTextColor(120), s.text(e.generatedAt, t - n, r, { align: "right" }), e.subtitle && s.text(e.subtitle, n, r + Ds), s.setDrawColor(220), s.line(n, o, t - n, o), s.line(n, a, t - n, a), s.setFont("helvetica", "bold"), s.setTextColor(60), s.text(e.branding, n, c);
|
|
3536
3536
|
const l = s.getTextWidth(e.branding);
|
|
3537
3537
|
s.setFont("helvetica", "normal");
|
|
3538
3538
|
const u = ` ${e.dashboardNote}`;
|
|
3539
3539
|
e.dashboardUrl ? (s.setTextColor(0, 68, 204), s.textWithLink(u, n + l, c, { url: e.dashboardUrl })) : (s.setTextColor(120), s.text(u, n + l, c)), s.setTextColor(120), s.text(e.pageLabel, t - n, c, { align: "right" });
|
|
3540
3540
|
}
|
|
3541
|
-
function
|
|
3541
|
+
function Xo(s) {
|
|
3542
3542
|
const e = s.querySelector(".kong-ui-public-grid-layout, .grid-stack");
|
|
3543
3543
|
if (!e)
|
|
3544
3544
|
return [];
|
|
@@ -3551,7 +3551,7 @@ function Qo(s) {
|
|
|
3551
3551
|
n.set(a, l !== void 0 ? Math.max(l, c) : c);
|
|
3552
3552
|
}), [...n.entries()].map(([r, o]) => ({ top: r, bottom: o })).sort((r, o) => r.top - o.top);
|
|
3553
3553
|
}
|
|
3554
|
-
function
|
|
3554
|
+
function Vo(s, e, t, i) {
|
|
3555
3555
|
if (!s.length) {
|
|
3556
3556
|
const o = [];
|
|
3557
3557
|
let a = 0;
|
|
@@ -3569,8 +3569,8 @@ function Xo(s, e, t, i) {
|
|
|
3569
3569
|
}
|
|
3570
3570
|
return r < e && n.push({ startY: r, height: e - r }), n;
|
|
3571
3571
|
}
|
|
3572
|
-
function
|
|
3573
|
-
const { i18n: e } =
|
|
3572
|
+
function Zo(s) {
|
|
3573
|
+
const { i18n: e } = Es(), t = Q({ status: "idle" });
|
|
3574
3574
|
async function i(n = {}) {
|
|
3575
3575
|
const {
|
|
3576
3576
|
filename: r = "dashboard-export",
|
|
@@ -3599,17 +3599,17 @@ function Vo(s) {
|
|
|
3599
3599
|
t.value = { status: "capturing" };
|
|
3600
3600
|
const S = {
|
|
3601
3601
|
name: "kong-webgl-snapshot",
|
|
3602
|
-
beforeClone: () =>
|
|
3603
|
-
afterClone: () =>
|
|
3602
|
+
beforeClone: () => Ys(),
|
|
3603
|
+
afterClone: () => di()
|
|
3604
3604
|
}, O = await N.toCanvas(A, {
|
|
3605
3605
|
scale: h,
|
|
3606
3606
|
exclude: y,
|
|
3607
3607
|
excludeMode: "remove",
|
|
3608
3608
|
embedFonts: !0,
|
|
3609
3609
|
plugins: [S]
|
|
3610
|
-
}), $ =
|
|
3610
|
+
}), $ = Xo(A), W = A.getBoundingClientRect().width, m = W ? O.width / W : h;
|
|
3611
3611
|
t.value = { status: "generating" };
|
|
3612
|
-
const f = /* @__PURE__ */ new Date(), g = new E({ orientation: l, unit: "mm", format: u }), C = g.internal.pageSize.getWidth(), k = g.internal.pageSize.getHeight(), I =
|
|
3612
|
+
const f = /* @__PURE__ */ new Date(), g = new E({ orientation: l, unit: "mm", format: u }), C = g.internal.pageSize.getWidth(), k = g.internal.pageSize.getHeight(), I = Ko + (a ? Ds : 0), oe = C - d * 2, we = k - d * 2 - I - Ss, be = O.width / oe, J = we * be, le = Vo($, O.height, J, m), H = {
|
|
3613
3613
|
title: o,
|
|
3614
3614
|
subtitle: a,
|
|
3615
3615
|
dashboardUrl: c,
|
|
@@ -3625,8 +3625,8 @@ function Vo(s) {
|
|
|
3625
3625
|
};
|
|
3626
3626
|
for (let ne = 0; ne < le.length; ne++) {
|
|
3627
3627
|
ne > 0 && g.addPage();
|
|
3628
|
-
const { startY: w, height: T } = le[ne],
|
|
3629
|
-
|
|
3628
|
+
const { startY: w, height: T } = le[ne], x = document.createElement("canvas");
|
|
3629
|
+
x.width = O.width, x.height = T, x.getContext("2d").drawImage(
|
|
3630
3630
|
O,
|
|
3631
3631
|
0,
|
|
3632
3632
|
w,
|
|
@@ -3637,13 +3637,13 @@ function Vo(s) {
|
|
|
3637
3637
|
O.width,
|
|
3638
3638
|
T
|
|
3639
3639
|
), g.addImage(
|
|
3640
|
-
|
|
3640
|
+
x.toDataURL("image/png"),
|
|
3641
3641
|
"PNG",
|
|
3642
3642
|
d,
|
|
3643
3643
|
d + I,
|
|
3644
|
-
|
|
3644
|
+
oe,
|
|
3645
3645
|
T / be
|
|
3646
|
-
),
|
|
3646
|
+
), Qo(g, {
|
|
3647
3647
|
...H,
|
|
3648
3648
|
pageLabel: e.t("pdfExport.pageOf", { page: String(ne + 1), total: String(le.length) })
|
|
3649
3649
|
});
|
|
@@ -3656,31 +3656,31 @@ function Vo(s) {
|
|
|
3656
3656
|
} catch (N) {
|
|
3657
3657
|
t.value = { status: "error", error: N };
|
|
3658
3658
|
} finally {
|
|
3659
|
-
|
|
3659
|
+
di(), await _?.();
|
|
3660
3660
|
}
|
|
3661
3661
|
}
|
|
3662
3662
|
return {
|
|
3663
3663
|
exportPdf: i,
|
|
3664
|
-
exportState:
|
|
3664
|
+
exportState: Wt(t)
|
|
3665
3665
|
};
|
|
3666
3666
|
}
|
|
3667
3667
|
const Ee = {
|
|
3668
|
-
useContextLinks:
|
|
3669
|
-
useDashboardContext:
|
|
3670
|
-
useEvaluateFeatureFlag:
|
|
3671
|
-
useExportPdf:
|
|
3672
|
-
useI18n:
|
|
3673
|
-
useIssueQuery:
|
|
3674
|
-
useIssueRequestsQuery:
|
|
3675
|
-
useRequestQueue:
|
|
3676
|
-
},
|
|
3668
|
+
useContextLinks: qo,
|
|
3669
|
+
useDashboardContext: jo,
|
|
3670
|
+
useEvaluateFeatureFlag: yo,
|
|
3671
|
+
useExportPdf: Zo,
|
|
3672
|
+
useI18n: Es,
|
|
3673
|
+
useIssueQuery: Ho,
|
|
3674
|
+
useIssueRequestsQuery: Yo,
|
|
3675
|
+
useRequestQueue: Ro
|
|
3676
|
+
}, Jo = { class: "kong-ui-public-csv-export-modal" }, ea = {
|
|
3677
3677
|
key: 0,
|
|
3678
3678
|
class: "selected-range"
|
|
3679
|
-
},
|
|
3679
|
+
}, ta = {
|
|
3680
3680
|
key: 4,
|
|
3681
3681
|
class: "text-muted",
|
|
3682
3682
|
tag: "span"
|
|
3683
|
-
},
|
|
3683
|
+
}, Ki = 3, ia = /* @__PURE__ */ _e({
|
|
3684
3684
|
__name: "CsvExportModal",
|
|
3685
3685
|
props: {
|
|
3686
3686
|
exportState: {},
|
|
@@ -3689,18 +3689,18 @@ const Ee = {
|
|
|
3689
3689
|
},
|
|
3690
3690
|
emits: ["closeModal"],
|
|
3691
3691
|
setup(s, { emit: e }) {
|
|
3692
|
-
const { i18n: t } = Ee.useI18n(), i = s, n = e, r = `${i.filename.replace(/\s+/g, "-").toLowerCase()}-${(/* @__PURE__ */ new Date()).toISOString().slice(0, 10)}.csv`, o = Q(1), a =
|
|
3692
|
+
const { i18n: t } = Ee.useI18n(), i = s, n = e, r = `${i.filename.replace(/\s+/g, "-").toLowerCase()}-${(/* @__PURE__ */ new Date()).toISOString().slice(0, 10)}.csv`, o = Q(1), a = b(() => h.value.rows.length), c = b(() => i.exportState.status === "success" && !!i.exportState.chartData?.data?.length), l = b(() => {
|
|
3693
3693
|
if (i.exportState.status !== "success" || !i.exportState.chartData?.meta)
|
|
3694
3694
|
return "";
|
|
3695
3695
|
const { start: v, end: R } = i.exportState.chartData.meta;
|
|
3696
|
-
return v && R ? `${
|
|
3697
|
-
}), u =
|
|
3698
|
-
rowsMax: Math.min(
|
|
3696
|
+
return v && R ? `${hi(new Date(v))} - ${hi(new Date(R), { includeTZ: !0 })}` : "";
|
|
3697
|
+
}), u = b(() => i.exportState.status !== "success" ? "" : t.t("csvExport.previewRows", {
|
|
3698
|
+
rowsMax: Math.min(Ki, a.value),
|
|
3699
3699
|
rowsTotal: a.value,
|
|
3700
3700
|
plural: a.value === 1 ? "" : "s"
|
|
3701
3701
|
})), d = () => {
|
|
3702
3702
|
n("closeModal");
|
|
3703
|
-
}, h =
|
|
3703
|
+
}, h = b(() => {
|
|
3704
3704
|
if (i.exportState.status !== "success" || !c.value || !i.exportState.chartData?.meta.metric_names)
|
|
3705
3705
|
return { headers: [], rows: [], csvHeaders: {} };
|
|
3706
3706
|
const v = i.exportState.chartData, R = v.data.some((O) => O.timestamp !== v.data[0].timestamp), _ = v.data.map((O) => {
|
|
@@ -3715,8 +3715,8 @@ const Ee = {
|
|
|
3715
3715
|
return m;
|
|
3716
3716
|
}, {}),
|
|
3717
3717
|
...R ? {
|
|
3718
|
-
timestamp:
|
|
3719
|
-
tzOffset:
|
|
3718
|
+
timestamp: Ai($, "yyyy-MM-dd HH:mm:ss"),
|
|
3719
|
+
tzOffset: Ai($, "XXX")
|
|
3720
3720
|
} : {}
|
|
3721
3721
|
};
|
|
3722
3722
|
});
|
|
@@ -3745,29 +3745,29 @@ const Ee = {
|
|
|
3745
3745
|
const { rows: v } = h.value;
|
|
3746
3746
|
return {
|
|
3747
3747
|
total: Number(v.length) || 0,
|
|
3748
|
-
data: v.slice(0,
|
|
3748
|
+
data: v.slice(0, Ki)
|
|
3749
3749
|
};
|
|
3750
3750
|
};
|
|
3751
3751
|
return Ye(h, () => {
|
|
3752
3752
|
o.value++;
|
|
3753
3753
|
}), (v, R) => {
|
|
3754
3754
|
const _ = ve("KSkeleton"), A = ve("KEmptyState"), N = ve("KTableData"), E = ve("KTooltip"), S = ve("KButton"), O = ve("KModal");
|
|
3755
|
-
return z(), se("div",
|
|
3756
|
-
|
|
3755
|
+
return z(), se("div", Jo, [
|
|
3756
|
+
me(O, {
|
|
3757
3757
|
class: "vitals-report",
|
|
3758
3758
|
"data-testid": "csv-export-modal",
|
|
3759
3759
|
"show-dismiss-icon": "",
|
|
3760
3760
|
title: D(t).t("csvExport.exportPreview"),
|
|
3761
3761
|
visible: "",
|
|
3762
3762
|
onCancel: d,
|
|
3763
|
-
onKeyup:
|
|
3763
|
+
onKeyup: Hs(d, ["esc"])
|
|
3764
3764
|
}, {
|
|
3765
3765
|
default: U(() => [
|
|
3766
3766
|
ue("div", null, [
|
|
3767
|
-
s.exportState.status === "success" && c.value ? (z(), se("div",
|
|
3767
|
+
s.exportState.status === "success" && c.value ? (z(), se("div", ea, [
|
|
3768
3768
|
ue("p", null, ie(s.modalDescription ? s.modalDescription : D(t).t("csvExport.exportDescription")), 1),
|
|
3769
3769
|
ue("p", null, ie(D(t).t("csvExport.exportTimeRange")) + ": " + ie(l.value), 1)
|
|
3770
|
-
])) :
|
|
3770
|
+
])) : fe("", !0),
|
|
3771
3771
|
s.exportState.status === "loading" ? (z(), B(_, {
|
|
3772
3772
|
key: 1,
|
|
3773
3773
|
class: "chart-skeleton",
|
|
@@ -3783,7 +3783,7 @@ const Ee = {
|
|
|
3783
3783
|
sortable: !1
|
|
3784
3784
|
}, {
|
|
3785
3785
|
"empty-state": U(() => [
|
|
3786
|
-
|
|
3786
|
+
me(A, { "action-button-visible": !1 }, {
|
|
3787
3787
|
title: U(() => [
|
|
3788
3788
|
ue("h5", null, ie(D(t).t("csvExport.noDataRange")), 1)
|
|
3789
3789
|
]),
|
|
@@ -3802,50 +3802,50 @@ const Ee = {
|
|
|
3802
3802
|
ue("h5", null, ie(D(t).t("csvExport.dataError")), 1)
|
|
3803
3803
|
]),
|
|
3804
3804
|
_: 1
|
|
3805
|
-
})) :
|
|
3806
|
-
s.exportState.status === "success" && c.value ? (z(), se("div",
|
|
3807
|
-
|
|
3808
|
-
|
|
3805
|
+
})) : fe("", !0),
|
|
3806
|
+
s.exportState.status === "success" && c.value ? (z(), se("div", ta, [
|
|
3807
|
+
Je(ie(u.value) + " ", 1),
|
|
3808
|
+
me(E, {
|
|
3809
3809
|
class: "preview-tooltip",
|
|
3810
3810
|
placement: "right",
|
|
3811
|
-
text: D(t).t("csvExport.maximumRecordAmount", { value: D(
|
|
3811
|
+
text: D(t).t("csvExport.maximumRecordAmount", { value: D(us) })
|
|
3812
3812
|
}, {
|
|
3813
3813
|
default: U(() => [
|
|
3814
|
-
|
|
3815
|
-
color: `var(--kui-color-text-neutral, ${D(
|
|
3816
|
-
size: `var(--kui-icon-size-30, ${D(
|
|
3814
|
+
me(D(Ks), {
|
|
3815
|
+
color: `var(--kui-color-text-neutral, ${D(Kt)})`,
|
|
3816
|
+
size: `var(--kui-icon-size-30, ${D(Wr)})`
|
|
3817
3817
|
}, null, 8, ["color", "size"])
|
|
3818
3818
|
]),
|
|
3819
3819
|
_: 1
|
|
3820
3820
|
}, 8, ["text"])
|
|
3821
|
-
])) :
|
|
3821
|
+
])) : fe("", !0)
|
|
3822
3822
|
])
|
|
3823
3823
|
]),
|
|
3824
3824
|
"footer-actions": U(() => [
|
|
3825
|
-
|
|
3825
|
+
me(S, {
|
|
3826
3826
|
appearance: "tertiary",
|
|
3827
3827
|
class: "cancel-btn",
|
|
3828
3828
|
onClick: d
|
|
3829
3829
|
}, {
|
|
3830
3830
|
default: U(() => [
|
|
3831
|
-
|
|
3831
|
+
Je(ie(D(t).t("csvExport.cancelButton")), 1)
|
|
3832
3832
|
]),
|
|
3833
3833
|
_: 1
|
|
3834
3834
|
}),
|
|
3835
|
-
|
|
3835
|
+
me(eo, {
|
|
3836
3836
|
class: "vitals-report-export-button",
|
|
3837
3837
|
filename: r,
|
|
3838
3838
|
headers: h.value.csvHeaders,
|
|
3839
3839
|
rows: h.value.rows
|
|
3840
3840
|
}, {
|
|
3841
3841
|
default: U(() => [
|
|
3842
|
-
|
|
3842
|
+
me(S, {
|
|
3843
3843
|
appearance: "primary",
|
|
3844
3844
|
"data-testid": "csv-download-button",
|
|
3845
3845
|
disabled: s.exportState.status !== "success" || !c.value
|
|
3846
3846
|
}, {
|
|
3847
3847
|
default: U(() => [
|
|
3848
|
-
|
|
3848
|
+
Je(ie(D(t).t("csvExport.downloadButton")), 1)
|
|
3849
3849
|
]),
|
|
3850
3850
|
_: 1
|
|
3851
3851
|
}, 8, ["disabled"])
|
|
@@ -3859,15 +3859,15 @@ const Ee = {
|
|
|
3859
3859
|
};
|
|
3860
3860
|
}
|
|
3861
3861
|
});
|
|
3862
|
-
var
|
|
3863
|
-
const
|
|
3862
|
+
var Os = /* @__PURE__ */ ((s) => (s.VALIDATING = "VALIDATING", s.VALIDATING_HAS_DATA = "VALIDATING_HAS_DATA", s.PENDING = "PENDING", s.SUCCESS = "SUCCESS", s.SUCCESS_HAS_DATA = "SUCCESS_HAS_DATA", s.ERROR = "ERROR", s.STALE_IF_ERROR = "STALE_IF_ERROR", s))(Os || {});
|
|
3863
|
+
const sa = (s) => s ? !!// TODO: revisit: currently only the first check ever matters?
|
|
3864
3864
|
(Object.keys(s)?.length || s.data?.length || s.data?.data?.length || !s.data?.data && typeof s.data == "object" && Object.keys(s?.data).length) : !1;
|
|
3865
|
-
function
|
|
3865
|
+
function zs(s = Q({}), e, t, i = sa) {
|
|
3866
3866
|
const n = Q(
|
|
3867
3867
|
"PENDING"
|
|
3868
3868
|
/* PENDING */
|
|
3869
3869
|
);
|
|
3870
|
-
return
|
|
3870
|
+
return ss(() => {
|
|
3871
3871
|
const r = i(s.value);
|
|
3872
3872
|
if (s.value && r && t.value) {
|
|
3873
3873
|
n.value = "VALIDATING_HAS_DATA";
|
|
@@ -3896,10 +3896,10 @@ function Os(s = Q({}), e, t, i = ia) {
|
|
|
3896
3896
|
s.value === void 0 && e && (n.value = "ERROR");
|
|
3897
3897
|
}), {
|
|
3898
3898
|
state: n,
|
|
3899
|
-
swrvState:
|
|
3899
|
+
swrvState: Os
|
|
3900
3900
|
};
|
|
3901
3901
|
}
|
|
3902
|
-
const
|
|
3902
|
+
const Mt = /* @__PURE__ */ _e({
|
|
3903
3903
|
__name: "QueryDataProvider",
|
|
3904
3904
|
props: {
|
|
3905
3905
|
context: {},
|
|
@@ -3910,7 +3910,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
3910
3910
|
},
|
|
3911
3911
|
emits: ["chart-data", "query-complete"],
|
|
3912
3912
|
setup(s, { emit: e }) {
|
|
3913
|
-
const t = s, i = e, { i18n: n } = Ee.useI18n(), { issueQuery: r } = Ee.useIssueQuery(), o = Ae(He), a = () => t.queryReady && o ? JSON.stringify([t.query, t.context, t.refreshCounter]) : null, { data: c, error: l, isValidating: u } =
|
|
3913
|
+
const t = s, i = e, { i18n: n } = Ee.useI18n(), { issueQuery: r } = Ee.useIssueQuery(), o = Ae(He), a = () => t.queryReady && o ? JSON.stringify([t.query, t.context, t.refreshCounter]) : null, { data: c, error: l, isValidating: u } = fs(a, async () => {
|
|
3914
3914
|
const N = a();
|
|
3915
3915
|
try {
|
|
3916
3916
|
const E = await r(t.query, t.context, t.limitOverride);
|
|
@@ -3918,7 +3918,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
3918
3918
|
} catch (E) {
|
|
3919
3919
|
if (a() !== N)
|
|
3920
3920
|
return;
|
|
3921
|
-
throw y.value =
|
|
3921
|
+
throw y.value = hs(E), E;
|
|
3922
3922
|
} finally {
|
|
3923
3923
|
a() === N && i("query-complete");
|
|
3924
3924
|
}
|
|
@@ -3926,7 +3926,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
3926
3926
|
refreshInterval: t.context.refreshInterval,
|
|
3927
3927
|
revalidateOnFocus: !1,
|
|
3928
3928
|
shouldRetryOnError: !1
|
|
3929
|
-
}), { state: d, swrvState: h } =
|
|
3929
|
+
}), { state: d, swrvState: h } = zs(c, l, u), y = Q(null), v = b(() => d.value === h.ERROR || !!y.value), R = b(() => !t.queryReady || d.value === h.PENDING), _ = Q(), A = b(() => c.value ?? (t.queryReady && d.value === h.PENDING ? _.value : void 0));
|
|
3930
3930
|
return Ye([() => c.value, () => d.value], ([N, E]) => {
|
|
3931
3931
|
N && (E === "SUCCESS_HAS_DATA" || E === "SUCCESS") && N !== _.value && (_.value = N, i("chart-data", N));
|
|
3932
3932
|
}), (N, E) => {
|
|
@@ -3939,9 +3939,9 @@ const zt = /* @__PURE__ */ _e({
|
|
|
3939
3939
|
key: 1,
|
|
3940
3940
|
"action-button-visible": !1,
|
|
3941
3941
|
"data-testid": "chart-empty-state"
|
|
3942
|
-
},
|
|
3942
|
+
}, pt({
|
|
3943
3943
|
icon: U(() => [
|
|
3944
|
-
y.value?.type === "forbidden" ? (z(), B(D(
|
|
3944
|
+
y.value?.type === "forbidden" ? (z(), B(D(cs), { key: 0 })) : (z(), B(D(ds), { key: 1 }))
|
|
3945
3945
|
]),
|
|
3946
3946
|
title: U(() => [
|
|
3947
3947
|
ue("p", null, ie(y.value?.message || D(n).t("renderer.unexpectedError")), 1)
|
|
@@ -3955,10 +3955,10 @@ const zt = /* @__PURE__ */ _e({
|
|
|
3955
3955
|
]),
|
|
3956
3956
|
key: "0"
|
|
3957
3957
|
} : void 0
|
|
3958
|
-
]), 1024)) : A.value ?
|
|
3958
|
+
]), 1024)) : A.value ? et(N.$slots, "default", { data: A.value }, void 0, void 0, 2) : fe("", !0);
|
|
3959
3959
|
};
|
|
3960
3960
|
}
|
|
3961
|
-
}),
|
|
3961
|
+
}), na = /* @__PURE__ */ _e({
|
|
3962
3962
|
__name: "SimpleChartRenderer",
|
|
3963
3963
|
props: {
|
|
3964
3964
|
query: {},
|
|
@@ -3974,12 +3974,12 @@ const zt = /* @__PURE__ */ _e({
|
|
|
3974
3974
|
zoomConfiguration: {}
|
|
3975
3975
|
},
|
|
3976
3976
|
setup(s) {
|
|
3977
|
-
const e = s, t =
|
|
3977
|
+
const e = s, t = b(() => e.chartOptions.type === "single_value"), i = b(() => e.chartOptions.type === "single_value" ? {
|
|
3978
3978
|
...e.chartOptions,
|
|
3979
3979
|
alignX: e.chartOptions.align_x ?? "left",
|
|
3980
3980
|
showTrend: e.query.granularity === "trend"
|
|
3981
3981
|
} : e.chartOptions);
|
|
3982
|
-
return (n, r) => (z(), B(
|
|
3982
|
+
return (n, r) => (z(), B(Mt, {
|
|
3983
3983
|
context: s.context,
|
|
3984
3984
|
query: s.query,
|
|
3985
3985
|
"query-ready": s.queryReady,
|
|
@@ -3987,10 +3987,10 @@ const zt = /* @__PURE__ */ _e({
|
|
|
3987
3987
|
}, {
|
|
3988
3988
|
default: U(({ data: o }) => [
|
|
3989
3989
|
ue("div", {
|
|
3990
|
-
class:
|
|
3991
|
-
style:
|
|
3990
|
+
class: rt(["analytics-chart", { "single-value": t.value }]),
|
|
3991
|
+
style: xt(t.value ? void 0 : { height: `${s.height}px` })
|
|
3992
3992
|
}, [
|
|
3993
|
-
|
|
3993
|
+
me(D(tn), {
|
|
3994
3994
|
"chart-data": o,
|
|
3995
3995
|
"chart-options": i.value,
|
|
3996
3996
|
"synthetics-data-key": t.value ? void 0 : s.chartOptions.synthetics_data_key
|
|
@@ -4005,7 +4005,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4005
4005
|
for (const [i, n] of e)
|
|
4006
4006
|
t[i] = n;
|
|
4007
4007
|
return t;
|
|
4008
|
-
},
|
|
4008
|
+
}, Qi = /* @__PURE__ */ $e(na, [["__scopeId", "data-v-22077b88"]]), ra = { class: "analytics-chart" }, oa = /* @__PURE__ */ _e({
|
|
4009
4009
|
__name: "BaseAnalyticsChartRenderer",
|
|
4010
4010
|
props: {
|
|
4011
4011
|
query: {},
|
|
@@ -4023,31 +4023,39 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4023
4023
|
},
|
|
4024
4024
|
emits: ["edit-tile", "chart-data", "zoom-time-range", "view-requests", "select-chart-range"],
|
|
4025
4025
|
setup(s, { emit: e }) {
|
|
4026
|
-
const t = s, i = e, { i18n: n } = Ee.useI18n(), r =
|
|
4026
|
+
const t = s, i = e, { i18n: n } = Ee.useI18n(), r = b(() => ({
|
|
4027
4027
|
type: t.chartOptions.type,
|
|
4028
4028
|
stacked: t.chartOptions.stacked ?? !1,
|
|
4029
4029
|
chartDatasetColors: t.chartOptions.chart_dataset_colors,
|
|
4030
4030
|
threshold: t.chartOptions.threshold,
|
|
4031
|
+
metricAxisMap: t.chartOptions.metric_axis_map,
|
|
4032
|
+
yAxes: t.chartOptions.y_axes && {
|
|
4033
|
+
left: o(t.chartOptions.y_axes.left),
|
|
4034
|
+
right: o(t.chartOptions.y_axes.right)
|
|
4035
|
+
},
|
|
4031
4036
|
hideTruncationWarning: t.query.limit !== void 0 && t.query.limit > 0
|
|
4032
|
-
})), o = () => {
|
|
4037
|
+
})), o = (l) => l && {
|
|
4038
|
+
title: l.title,
|
|
4039
|
+
showGrid: l.show_grid
|
|
4040
|
+
}, a = () => {
|
|
4033
4041
|
i("edit-tile");
|
|
4034
|
-
},
|
|
4035
|
-
i("chart-data",
|
|
4042
|
+
}, c = (l) => {
|
|
4043
|
+
i("chart-data", l);
|
|
4036
4044
|
};
|
|
4037
|
-
return (
|
|
4038
|
-
const
|
|
4039
|
-
return z(), B(
|
|
4045
|
+
return (l, u) => {
|
|
4046
|
+
const d = ve("KDropdownItem");
|
|
4047
|
+
return z(), B(Mt, {
|
|
4040
4048
|
context: s.context,
|
|
4041
4049
|
query: s.query,
|
|
4042
4050
|
"query-ready": s.queryReady,
|
|
4043
4051
|
"refresh-counter": s.refreshCounter,
|
|
4044
|
-
onChartData:
|
|
4052
|
+
onChartData: c
|
|
4045
4053
|
}, {
|
|
4046
|
-
default: U(({ data:
|
|
4047
|
-
ue("div",
|
|
4048
|
-
|
|
4054
|
+
default: U(({ data: h }) => [
|
|
4055
|
+
ue("div", ra, [
|
|
4056
|
+
me(D(Yt), ns({
|
|
4049
4057
|
"active-metric": s.activeMetric,
|
|
4050
|
-
"chart-data":
|
|
4058
|
+
"chart-data": h,
|
|
4051
4059
|
"chart-options": r.value,
|
|
4052
4060
|
"explore-link": s.exploreLink,
|
|
4053
4061
|
"legend-position": "bottom",
|
|
@@ -4056,15 +4064,15 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4056
4064
|
"timeseries-zoom": s.zoomConfiguration?.showZoomInAction,
|
|
4057
4065
|
"tooltip-title": ""
|
|
4058
4066
|
}, s.extraProps, {
|
|
4059
|
-
onSelectChartRange:
|
|
4060
|
-
onZoomTimeRange:
|
|
4061
|
-
}),
|
|
4067
|
+
onSelectChartRange: u[0] || (u[0] = (y) => i("select-chart-range", y)),
|
|
4068
|
+
onZoomTimeRange: u[1] || (u[1] = (y) => i("zoom-time-range", y))
|
|
4069
|
+
}), pt({ _: 2 }, [
|
|
4062
4070
|
s.context.editable ? {
|
|
4063
4071
|
name: "menu-items",
|
|
4064
4072
|
fn: U(() => [
|
|
4065
|
-
|
|
4073
|
+
me(d, { onClick: a }, {
|
|
4066
4074
|
default: U(() => [
|
|
4067
|
-
|
|
4075
|
+
Je(ie(D(n).t("renderer.edit")), 1)
|
|
4068
4076
|
]),
|
|
4069
4077
|
_: 1
|
|
4070
4078
|
})
|
|
@@ -4078,7 +4086,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4078
4086
|
}, 8, ["context", "query", "query-ready", "refresh-counter"]);
|
|
4079
4087
|
};
|
|
4080
4088
|
}
|
|
4081
|
-
}),
|
|
4089
|
+
}), oi = /* @__PURE__ */ $e(oa, [["__scopeId", "data-v-5e3d0a14"]]), Xi = /* @__PURE__ */ _e({
|
|
4082
4090
|
__name: "BarChartRenderer",
|
|
4083
4091
|
props: {
|
|
4084
4092
|
query: {},
|
|
@@ -4094,7 +4102,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4094
4102
|
zoomConfiguration: {}
|
|
4095
4103
|
},
|
|
4096
4104
|
setup(s) {
|
|
4097
|
-
return (e, t) => (z(), B(
|
|
4105
|
+
return (e, t) => (z(), B(oi, {
|
|
4098
4106
|
"chart-options": s.chartOptions,
|
|
4099
4107
|
context: s.context,
|
|
4100
4108
|
"extra-props": { showAnnotations: !1 },
|
|
@@ -4104,10 +4112,10 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4104
4112
|
"refresh-counter": s.refreshCounter
|
|
4105
4113
|
}, null, 8, ["chart-options", "context", "height", "query", "query-ready", "refresh-counter"]));
|
|
4106
4114
|
}
|
|
4107
|
-
}),
|
|
4115
|
+
}), aa = { class: "analytics-chart" }, la = {
|
|
4108
4116
|
key: 3,
|
|
4109
4117
|
class: "analytics-chart"
|
|
4110
|
-
},
|
|
4118
|
+
}, ua = /* @__PURE__ */ _e({
|
|
4111
4119
|
__name: "ScatterChartRenderer",
|
|
4112
4120
|
props: {
|
|
4113
4121
|
query: {},
|
|
@@ -4124,22 +4132,22 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4124
4132
|
},
|
|
4125
4133
|
emits: ["chart-data", "query-complete"],
|
|
4126
4134
|
setup(s, { emit: e }) {
|
|
4127
|
-
const t = s, i = e, { i18n: n } = Ee.useI18n(), { issueRequestsQuery: r } = Ee.useIssueRequestsQuery(), o =
|
|
4128
|
-
const S = t.query, O = S.time_range ?? t.context.timeSpec, $ = O ?
|
|
4135
|
+
const t = s, i = e, { i18n: n } = Ee.useI18n(), { issueRequestsQuery: r } = Ee.useIssueRequestsQuery(), o = b(() => t.query.datasource === "requests"), a = b(() => {
|
|
4136
|
+
const S = t.query, O = S.time_range ?? t.context.timeSpec, $ = O ? Rs(O) : void 0;
|
|
4129
4137
|
if (!$)
|
|
4130
4138
|
return S;
|
|
4131
|
-
const W =
|
|
4139
|
+
const W = js($);
|
|
4132
4140
|
let m;
|
|
4133
|
-
return S.granularity &&
|
|
4134
|
-
}), c = () => o.value && t.queryReady ? JSON.stringify([t.query, t.context, t.refreshCounter]) : null, l = Q(null), { data: u, error: d, isValidating: h } =
|
|
4141
|
+
return S.granularity && fi[S.granularity] >= fi[W] ? m = S.granularity : m = W, { ...S, granularity: m };
|
|
4142
|
+
}), c = () => o.value && t.queryReady ? JSON.stringify([t.query, t.context, t.refreshCounter]) : null, l = Q(null), { data: u, error: d, isValidating: h } = fs(c, async () => {
|
|
4135
4143
|
const S = c(), O = t.query;
|
|
4136
4144
|
try {
|
|
4137
4145
|
const $ = await r(O, t.context);
|
|
4138
|
-
return c() !== S ? void 0 : (l.value = null,
|
|
4146
|
+
return c() !== S ? void 0 : (l.value = null, sn($, Go(O)));
|
|
4139
4147
|
} catch ($) {
|
|
4140
4148
|
if (c() !== S)
|
|
4141
4149
|
return;
|
|
4142
|
-
throw l.value =
|
|
4150
|
+
throw l.value = hs($), $;
|
|
4143
4151
|
} finally {
|
|
4144
4152
|
c() === S && i("query-complete");
|
|
4145
4153
|
}
|
|
@@ -4147,11 +4155,11 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4147
4155
|
refreshInterval: t.context.refreshInterval,
|
|
4148
4156
|
revalidateOnFocus: !1,
|
|
4149
4157
|
shouldRetryOnError: !1
|
|
4150
|
-
}), { state: y, swrvState: v } =
|
|
4158
|
+
}), { state: y, swrvState: v } = zs(u, d, h), R = Q(), _ = b(() => u.value ?? R.value);
|
|
4151
4159
|
Ye(u, (S) => {
|
|
4152
4160
|
S && (R.value = S);
|
|
4153
4161
|
});
|
|
4154
|
-
const A =
|
|
4162
|
+
const A = b(() => y.value === v.ERROR || !!l.value), N = b(() => !A.value && (!t.queryReady || y.value === v.PENDING) && !_.value), E = b(() => ({
|
|
4155
4163
|
type: "scatter",
|
|
4156
4164
|
chartDatasetColors: t.chartOptions.chart_dataset_colors,
|
|
4157
4165
|
scatter: {
|
|
@@ -4178,9 +4186,9 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4178
4186
|
key: 2,
|
|
4179
4187
|
"action-button-visible": !1,
|
|
4180
4188
|
"data-testid": "scatter-chart-empty-state"
|
|
4181
|
-
},
|
|
4189
|
+
}, pt({
|
|
4182
4190
|
icon: U(() => [
|
|
4183
|
-
l.value?.type === "forbidden" ? (z(), B(D(
|
|
4191
|
+
l.value?.type === "forbidden" ? (z(), B(D(cs), { key: 0 })) : (z(), B(D(ds), { key: 1 }))
|
|
4184
4192
|
]),
|
|
4185
4193
|
title: U(() => [
|
|
4186
4194
|
ue("p", null, ie(l.value?.message || D(n).t("renderer.unexpectedError")), 1)
|
|
@@ -4194,15 +4202,15 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4194
4202
|
]),
|
|
4195
4203
|
key: "0"
|
|
4196
4204
|
} : void 0
|
|
4197
|
-
]), 1024)) : _.value ? (z(), se("div",
|
|
4198
|
-
|
|
4205
|
+
]), 1024)) : _.value ? (z(), se("div", la, [
|
|
4206
|
+
me(D(Yt), {
|
|
4199
4207
|
"chart-data": _.value,
|
|
4200
4208
|
"chart-options": E.value,
|
|
4201
4209
|
"legend-position": "bottom",
|
|
4202
4210
|
"synthetics-data-key": s.chartOptions.synthetics_data_key,
|
|
4203
4211
|
"tooltip-title": ""
|
|
4204
4212
|
}, null, 8, ["chart-data", "chart-options", "synthetics-data-key"])
|
|
4205
|
-
])) :
|
|
4213
|
+
])) : fe("", !0) : (z(), B(Mt, {
|
|
4206
4214
|
key: 0,
|
|
4207
4215
|
context: s.context,
|
|
4208
4216
|
query: a.value,
|
|
@@ -4212,8 +4220,8 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4212
4220
|
onQueryComplete: O[1] || (O[1] = (m) => i("query-complete"))
|
|
4213
4221
|
}, {
|
|
4214
4222
|
default: U(({ data: m }) => [
|
|
4215
|
-
ue("div",
|
|
4216
|
-
|
|
4223
|
+
ue("div", aa, [
|
|
4224
|
+
me(D(Yt), {
|
|
4217
4225
|
"chart-data": m,
|
|
4218
4226
|
"chart-options": E.value,
|
|
4219
4227
|
"legend-position": "bottom",
|
|
@@ -4226,7 +4234,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4226
4234
|
}, 8, ["context", "query", "query-ready", "refresh-counter"]));
|
|
4227
4235
|
};
|
|
4228
4236
|
}
|
|
4229
|
-
}),
|
|
4237
|
+
}), ca = /* @__PURE__ */ $e(ua, [["__scopeId", "data-v-e823be94"]]), Vi = /* @__PURE__ */ _e({
|
|
4230
4238
|
__name: "TimeseriesChartRenderer",
|
|
4231
4239
|
props: {
|
|
4232
4240
|
query: {},
|
|
@@ -4244,7 +4252,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4244
4252
|
emits: ["zoom-time-range", "select-chart-range"],
|
|
4245
4253
|
setup(s, { emit: e }) {
|
|
4246
4254
|
const t = e;
|
|
4247
|
-
return (i, n) => (z(), B(
|
|
4255
|
+
return (i, n) => (z(), B(oi, {
|
|
4248
4256
|
"active-metric": s.activeMetric,
|
|
4249
4257
|
"chart-options": s.chartOptions,
|
|
4250
4258
|
context: s.context,
|
|
@@ -4259,7 +4267,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4259
4267
|
onZoomTimeRange: n[1] || (n[1] = (r) => t("zoom-time-range", r))
|
|
4260
4268
|
}, null, 8, ["active-metric", "chart-options", "context", "explore-link", "height", "query", "query-ready", "refresh-counter", "requests-link", "zoom-configuration"]));
|
|
4261
4269
|
}
|
|
4262
|
-
}),
|
|
4270
|
+
}), da = /* @__PURE__ */ _e({
|
|
4263
4271
|
__name: "GoldenSignalsRenderer",
|
|
4264
4272
|
props: {
|
|
4265
4273
|
query: {},
|
|
@@ -4275,7 +4283,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4275
4283
|
zoomConfiguration: {}
|
|
4276
4284
|
},
|
|
4277
4285
|
setup(s) {
|
|
4278
|
-
const e = s, t =
|
|
4286
|
+
const e = s, t = b(() => {
|
|
4279
4287
|
const n = e.query?.datasource;
|
|
4280
4288
|
if (n && n !== "api_usage" && n !== "basic")
|
|
4281
4289
|
throw new Error(`Invalid datasource value: ${n}`);
|
|
@@ -4290,30 +4298,30 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4290
4298
|
queryReady: e.queryReady,
|
|
4291
4299
|
refreshCounter: e.refreshCounter
|
|
4292
4300
|
};
|
|
4293
|
-
}), i =
|
|
4301
|
+
}), i = b(() => !!(e.chartOptions.chart_title || e.headerDescription));
|
|
4294
4302
|
return (n, r) => (z(), se("div", {
|
|
4295
|
-
class:
|
|
4303
|
+
class: rt(["metric-card-tile-wrapper", { titled: i.value }])
|
|
4296
4304
|
}, [
|
|
4297
|
-
|
|
4305
|
+
me(D(rn), Fs($s(t.value)), {
|
|
4298
4306
|
default: U(() => [
|
|
4299
|
-
|
|
4307
|
+
me(D(on))
|
|
4300
4308
|
]),
|
|
4301
4309
|
_: 1
|
|
4302
4310
|
}, 16)
|
|
4303
4311
|
], 2));
|
|
4304
4312
|
}
|
|
4305
|
-
}),
|
|
4313
|
+
}), ha = /* @__PURE__ */ $e(da, [["__scopeId", "data-v-3eda5028"]]), fa = {
|
|
4306
4314
|
class: "fallback-entity-link",
|
|
4307
4315
|
"data-testid": "entity-link-parent"
|
|
4308
|
-
},
|
|
4316
|
+
}, Zi = /* @__PURE__ */ _e({
|
|
4309
4317
|
__name: "FallbackEntityLink",
|
|
4310
4318
|
props: {
|
|
4311
4319
|
entityLinkData: {}
|
|
4312
4320
|
},
|
|
4313
4321
|
setup(s) {
|
|
4314
|
-
return (e, t) => (z(), se("div",
|
|
4322
|
+
return (e, t) => (z(), se("div", fa, ie(s.entityLinkData.label), 1));
|
|
4315
4323
|
}
|
|
4316
|
-
}),
|
|
4324
|
+
}), ma = { key: 0 }, pa = { key: 1 }, ga = /* @__PURE__ */ _e({
|
|
4317
4325
|
__name: "TopNTableRenderer",
|
|
4318
4326
|
props: {
|
|
4319
4327
|
query: {},
|
|
@@ -4329,15 +4337,15 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4329
4337
|
zoomConfiguration: {}
|
|
4330
4338
|
},
|
|
4331
4339
|
setup(s) {
|
|
4332
|
-
const e = s, t = Ae(He), i =
|
|
4340
|
+
const e = s, t = Ae(He), i = rs(async () => {
|
|
4333
4341
|
if (t?.fetchComponent)
|
|
4334
4342
|
try {
|
|
4335
4343
|
return await t.fetchComponent("EntityLink");
|
|
4336
4344
|
} catch {
|
|
4337
|
-
return
|
|
4345
|
+
return Zi;
|
|
4338
4346
|
}
|
|
4339
|
-
return
|
|
4340
|
-
}), n =
|
|
4347
|
+
return Zi;
|
|
4348
|
+
}), n = b(() => !!e.chartOptions.entity_link || !!Object.keys(e.chartOptions.entity_links || {}).length), r = (l) => {
|
|
4341
4349
|
const u = e.chartOptions.entity_links;
|
|
4342
4350
|
return u && (u[l] || Object.entries(u).find(([d]) => d.toLowerCase() === l.toLowerCase())?.[1]) || "";
|
|
4343
4351
|
}, o = (l) => {
|
|
@@ -4348,23 +4356,23 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4348
4356
|
if (u)
|
|
4349
4357
|
if (l.id.includes(":")) {
|
|
4350
4358
|
const [d, h] = l.id.split(":");
|
|
4351
|
-
return u.replace(
|
|
4359
|
+
return u.replace(ho, d).replace(Fi, h);
|
|
4352
4360
|
} else
|
|
4353
|
-
return u.replace(
|
|
4361
|
+
return u.replace(Fi, l.id);
|
|
4354
4362
|
return "";
|
|
4355
4363
|
};
|
|
4356
|
-
return (l, u) => (z(), B(
|
|
4364
|
+
return (l, u) => (z(), B(Mt, {
|
|
4357
4365
|
context: s.context,
|
|
4358
4366
|
query: s.query,
|
|
4359
4367
|
"query-ready": s.queryReady,
|
|
4360
4368
|
"refresh-counter": s.refreshCounter
|
|
4361
4369
|
}, {
|
|
4362
4370
|
default: U(({ data: d }) => [
|
|
4363
|
-
|
|
4371
|
+
me(D(nn), {
|
|
4364
4372
|
"column-options": s.chartOptions.column_options,
|
|
4365
4373
|
data: d,
|
|
4366
4374
|
"synthetics-data-key": s.chartOptions.synthetics_data_key
|
|
4367
|
-
},
|
|
4375
|
+
}, pt({ _: 2 }, [
|
|
4368
4376
|
n.value ? {
|
|
4369
4377
|
name: "name",
|
|
4370
4378
|
fn: U(({ record: h }) => [
|
|
@@ -4376,8 +4384,8 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4376
4384
|
deleted: h.deleted
|
|
4377
4385
|
},
|
|
4378
4386
|
"external-link": c(h)
|
|
4379
|
-
}, null, 8, ["entity-link-data", "external-link"])) : (z(), se(
|
|
4380
|
-
h.name === "empty" ? (z(), se("i",
|
|
4387
|
+
}, null, 8, ["entity-link-data", "external-link"])) : (z(), se(Vt, { key: 1 }, [
|
|
4388
|
+
h.name === "empty" ? (z(), se("i", ma, ie(h.name), 1)) : (z(), se("span", pa, ie(h.name), 1))
|
|
4381
4389
|
], 64))
|
|
4382
4390
|
]),
|
|
4383
4391
|
key: "0"
|
|
@@ -4387,7 +4395,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4387
4395
|
_: 1
|
|
4388
4396
|
}, 8, ["context", "query", "query-ready", "refresh-counter"]));
|
|
4389
4397
|
}
|
|
4390
|
-
}),
|
|
4398
|
+
}), ya = (s) => s.records.map((e) => {
|
|
4391
4399
|
const t = { ...e };
|
|
4392
4400
|
return Object.entries(e).forEach(([i, n]) => {
|
|
4393
4401
|
if (n === null)
|
|
@@ -4395,7 +4403,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4395
4403
|
const r = s.meta.display?.[i]?.[String(n)]?.name;
|
|
4396
4404
|
r && (t[i] = r);
|
|
4397
4405
|
}), t;
|
|
4398
|
-
}),
|
|
4406
|
+
}), Ji = ({
|
|
4399
4407
|
canTranslate: s,
|
|
4400
4408
|
columns: e,
|
|
4401
4409
|
translate: t
|
|
@@ -4405,11 +4413,11 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4405
4413
|
key: i,
|
|
4406
4414
|
label: s(n) ? t(n) : i
|
|
4407
4415
|
};
|
|
4408
|
-
}),
|
|
4416
|
+
}), va = {
|
|
4409
4417
|
/** @deprecated Use `platform_usage`. */
|
|
4410
|
-
platform:
|
|
4411
|
-
platform_usage:
|
|
4412
|
-
},
|
|
4418
|
+
platform: Ji,
|
|
4419
|
+
platform_usage: Ji
|
|
4420
|
+
}, es = async ({
|
|
4413
4421
|
abortController: s,
|
|
4414
4422
|
context: e,
|
|
4415
4423
|
cursor: t,
|
|
@@ -4439,15 +4447,15 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4439
4447
|
}
|
|
4440
4448
|
}, s);
|
|
4441
4449
|
return u.meta.columns?.length && r?.(u.meta.columns), {
|
|
4442
|
-
data:
|
|
4450
|
+
data: ya(u),
|
|
4443
4451
|
cursor: u.meta.cursor,
|
|
4444
4452
|
hasMore: !!u.meta.cursor
|
|
4445
4453
|
};
|
|
4446
|
-
},
|
|
4454
|
+
}, _a = {
|
|
4447
4455
|
/** @deprecated Use `platform_usage`. */
|
|
4448
|
-
platform:
|
|
4449
|
-
platform_usage:
|
|
4450
|
-
},
|
|
4456
|
+
platform: es,
|
|
4457
|
+
platform_usage: es
|
|
4458
|
+
}, wa = /* @__PURE__ */ _e({
|
|
4451
4459
|
__name: "TableDataGridRenderer",
|
|
4452
4460
|
props: {
|
|
4453
4461
|
query: {},
|
|
@@ -4458,7 +4466,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4458
4466
|
},
|
|
4459
4467
|
emits: ["loading-change"],
|
|
4460
4468
|
setup(s, { emit: e }) {
|
|
4461
|
-
const t = s, i = e, n = Ae(He), r =
|
|
4469
|
+
const t = s, i = e, n = Ae(He), r = lt(), { i18n: o } = Ee.useI18n(), a = new AbortController(), c = Q([]), l = Q(!1), u = b(() => t.height === void 0 ? void 0 : { height: `${t.height}px` }), d = b(() => ({
|
|
4462
4470
|
datasource: t.query.datasource,
|
|
4463
4471
|
query: {
|
|
4464
4472
|
columns: t.query.columns,
|
|
@@ -4467,7 +4475,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4467
4475
|
filters: t.query.filters,
|
|
4468
4476
|
page_size: t.query.page_size
|
|
4469
4477
|
}
|
|
4470
|
-
})), h =
|
|
4478
|
+
})), h = b(() => JSON.stringify({
|
|
4471
4479
|
refreshCounter: t.refreshCounter,
|
|
4472
4480
|
query: {
|
|
4473
4481
|
columns: t.query.columns,
|
|
@@ -4482,19 +4490,19 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4482
4490
|
tz: t.context.tz
|
|
4483
4491
|
}
|
|
4484
4492
|
}));
|
|
4485
|
-
|
|
4493
|
+
at(() => {
|
|
4486
4494
|
a.abort();
|
|
4487
4495
|
});
|
|
4488
|
-
const y =
|
|
4496
|
+
const y = b(() => va[t.query.datasource]({
|
|
4489
4497
|
// query.columns are optional in the API. If not provided, backend will return default columns.
|
|
4490
4498
|
// If query columns are not provided, fallback to using columns from the response metadata for header configuration.
|
|
4491
4499
|
columns: t.query.columns?.length ? t.query.columns : c.value,
|
|
4492
4500
|
translate: (_) => o.t(_),
|
|
4493
4501
|
canTranslate: (_) => o.te(_)
|
|
4494
|
-
})), v =
|
|
4502
|
+
})), v = b(() => async ({ cursor: _, pageSize: A }) => {
|
|
4495
4503
|
try {
|
|
4496
4504
|
await r.isReady();
|
|
4497
|
-
const N =
|
|
4505
|
+
const N = _a[d.value.datasource];
|
|
4498
4506
|
if (!N)
|
|
4499
4507
|
throw new Error(`No table data grid fetcher found for datasource: ${d.value.datasource}`);
|
|
4500
4508
|
const E = await N({
|
|
@@ -4520,9 +4528,9 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4520
4528
|
const N = ve("KSkeleton");
|
|
4521
4529
|
return z(), se("div", {
|
|
4522
4530
|
class: "table-data-grid-renderer",
|
|
4523
|
-
style:
|
|
4531
|
+
style: xt(u.value)
|
|
4524
4532
|
}, [
|
|
4525
|
-
s.queryReady ? (z(), B(D(
|
|
4533
|
+
s.queryReady ? (z(), B(D(an), {
|
|
4526
4534
|
key: 1,
|
|
4527
4535
|
error: l.value,
|
|
4528
4536
|
fetcher: v.value,
|
|
@@ -4538,7 +4546,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4538
4546
|
], 4);
|
|
4539
4547
|
};
|
|
4540
4548
|
}
|
|
4541
|
-
}),
|
|
4549
|
+
}), ba = /* @__PURE__ */ $e(wa, [["__scopeId", "data-v-c49ff2eb"]]), xa = /* @__PURE__ */ _e({
|
|
4542
4550
|
__name: "DonutChartRenderer",
|
|
4543
4551
|
props: {
|
|
4544
4552
|
query: {},
|
|
@@ -4554,7 +4562,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4554
4562
|
zoomConfiguration: {}
|
|
4555
4563
|
},
|
|
4556
4564
|
setup(s) {
|
|
4557
|
-
return (e, t) => (z(), B(
|
|
4565
|
+
return (e, t) => (z(), B(oi, {
|
|
4558
4566
|
"chart-options": s.chartOptions,
|
|
4559
4567
|
context: s.context,
|
|
4560
4568
|
height: s.height,
|
|
@@ -4563,18 +4571,18 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4563
4571
|
"refresh-counter": s.refreshCounter
|
|
4564
4572
|
}, null, 8, ["chart-options", "context", "height", "query", "query-ready", "refresh-counter"]));
|
|
4565
4573
|
}
|
|
4566
|
-
}),
|
|
4574
|
+
}), Ea = ["data-testid"], Ca = {
|
|
4567
4575
|
key: 0,
|
|
4568
4576
|
class: "tile-header"
|
|
4569
|
-
},
|
|
4577
|
+
}, Ra = { class: "badge-container" }, ka = { class: "badge-text" }, Ta = { class: "badge-text" }, Sa = {
|
|
4570
4578
|
key: 0,
|
|
4571
4579
|
class: "metric-selector-wrapper"
|
|
4572
|
-
},
|
|
4580
|
+
}, Da = { key: 1 }, Oa = ["data-testid"], za = ["data-testid"], Ma = ["data-testid"], Na = { class: "delete-option" }, Aa = ["data-testid"], Ia = /* @__PURE__ */ _e({
|
|
4573
4581
|
__name: "DashboardTile",
|
|
4574
|
-
props: /* @__PURE__ */
|
|
4582
|
+
props: /* @__PURE__ */ Et({
|
|
4575
4583
|
context: {},
|
|
4576
4584
|
definition: {},
|
|
4577
|
-
height: { default: () =>
|
|
4585
|
+
height: { default: () => yt },
|
|
4578
4586
|
hideActions: { type: Boolean, default: !1 },
|
|
4579
4587
|
isFullscreen: { type: Boolean },
|
|
4580
4588
|
preview: { type: Boolean, default: !1 },
|
|
@@ -4586,23 +4594,23 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4586
4594
|
refreshCounter: { default: 0 },
|
|
4587
4595
|
refreshCounterModifiers: {}
|
|
4588
4596
|
}),
|
|
4589
|
-
emits: /* @__PURE__ */
|
|
4597
|
+
emits: /* @__PURE__ */ Et(["chart-data", "tile-loaded", "edit-tile", "duplicate-tile", "remove-tile", "tile-time-range-zoom", "tile-bounds-change"], ["update:refreshCounter"]),
|
|
4590
4598
|
setup(s, { expose: e, emit: t }) {
|
|
4591
|
-
|
|
4592
|
-
|
|
4599
|
+
Zt((M) => ({
|
|
4600
|
+
v5a7e7e82: `${M.height}px`
|
|
4593
4601
|
}));
|
|
4594
|
-
const i = parseInt(
|
|
4595
|
-
context:
|
|
4596
|
-
preview:
|
|
4597
|
-
}), r =
|
|
4602
|
+
const i = parseInt(bs, 10), { zoomConfiguration: n } = Ee.useDashboardContext({
|
|
4603
|
+
context: b(() => s.context),
|
|
4604
|
+
preview: b(() => s.preview)
|
|
4605
|
+
}), r = os(s, "refreshCounter"), o = () => {
|
|
4598
4606
|
E.value = !0, r.value++;
|
|
4599
|
-
}, a = t, c =
|
|
4607
|
+
}, a = t, c = rs(() => import("./GeoMapRenderer-DBfDS4cI.js")), l = Ae(He), u = lt(), { datasourceConfigMap: d, stripUnknownFilters: h } = ot(u), { i18n: y } = Ee.useI18n(), v = Q(), R = Q({ status: "loading" }), _ = Q(!1), A = Q(), N = Q(!1), E = Q(!0), S = b(() => s.definition.chart), O = b(() => "chart_title" in S.value ? S.value.chart_title : void 0), $ = b(() => s.definition.header_description), W = b(() => S.value.type === "slottable"), m = b(() => Pe(s.definition) || Qt(s.definition) ? !1 : !("allow_csv_export" in S.value) || S.value.allow_csv_export !== !1), {
|
|
4600
4608
|
exploreLinkKebabMenu: f,
|
|
4601
4609
|
requestsLinkKebabMenu: g,
|
|
4602
4610
|
canShowKebabMenu: C,
|
|
4603
4611
|
canGenerateRequestsLink: k,
|
|
4604
4612
|
canGenerateExploreLink: I,
|
|
4605
|
-
requestsLinkZoomActions:
|
|
4613
|
+
requestsLinkZoomActions: oe,
|
|
4606
4614
|
exploreLinkZoomActions: we,
|
|
4607
4615
|
buildExploreQuery: be,
|
|
4608
4616
|
buildExploreLink: J,
|
|
@@ -4610,172 +4618,175 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4610
4618
|
buildRequestsQueryZoomActions: H
|
|
4611
4619
|
} = Ee.useContextLinks({
|
|
4612
4620
|
queryBridge: l,
|
|
4613
|
-
chartData:
|
|
4614
|
-
definition:
|
|
4615
|
-
context:
|
|
4621
|
+
chartData: Wt(v),
|
|
4622
|
+
definition: dt(() => s.definition),
|
|
4623
|
+
context: Wt(dt(() => s.context))
|
|
4616
4624
|
}), { issueQuery: ne } = Ee.useIssueQuery();
|
|
4617
4625
|
Ye(() => s.definition, async (M, Z) => {
|
|
4618
|
-
await
|
|
4626
|
+
await Jt(), A.value && (N.value = A.value.scrollWidth > A.value.clientWidth);
|
|
4619
4627
|
try {
|
|
4620
4628
|
JSON.stringify(M?.query) !== JSON.stringify(Z?.query) && (E.value = !0);
|
|
4621
4629
|
} catch {
|
|
4622
4630
|
}
|
|
4623
4631
|
}, { immediate: !0, deep: !0 });
|
|
4624
|
-
const w =
|
|
4625
|
-
timeseries_line:
|
|
4626
|
-
timeseries_bar:
|
|
4627
|
-
scatter:
|
|
4628
|
-
horizontal_bar:
|
|
4629
|
-
vertical_bar:
|
|
4630
|
-
gauge:
|
|
4631
|
-
donut:
|
|
4632
|
-
golden_signals:
|
|
4633
|
-
top_n:
|
|
4634
|
-
table:
|
|
4632
|
+
const w = b(() => y.t("csvExport.defaultFilename")), T = b(() => !!f.value || m.value || !!s.context.editable), x = b(() => !s.hideActions && C.value && T.value), X = b(() => x.value && T.value && !s.isFullscreen), K = {
|
|
4633
|
+
timeseries_line: Vi,
|
|
4634
|
+
timeseries_bar: Vi,
|
|
4635
|
+
scatter: ca,
|
|
4636
|
+
horizontal_bar: Xi,
|
|
4637
|
+
vertical_bar: Xi,
|
|
4638
|
+
gauge: Qi,
|
|
4639
|
+
donut: xa,
|
|
4640
|
+
golden_signals: ha,
|
|
4641
|
+
top_n: ga,
|
|
4642
|
+
table: ba,
|
|
4635
4643
|
slottable: void 0,
|
|
4636
|
-
single_value:
|
|
4644
|
+
single_value: Qi,
|
|
4637
4645
|
choropleth_map: c
|
|
4638
|
-
}, ce =
|
|
4639
|
-
...ge.value?.rendererEvents.supportsRequests ? { "select-chart-range":
|
|
4640
|
-
...ge.value?.rendererEvents.supportsZoom ? { "zoom-time-range":
|
|
4641
|
-
...ge.value?.rendererEvents.supportsBounds ? { "bounds-change":
|
|
4642
|
-
...ge.value?.rendererEvents.supportsLoadingChange ? { "loading-change":
|
|
4643
|
-
})), ge =
|
|
4644
|
-
const M = K[s.definition.chart.type], Z = Pe(s.definition), xe = !!M?.emits?.includes("select-chart-range"),
|
|
4646
|
+
}, ce = b(() => ({
|
|
4647
|
+
...ge.value?.rendererEvents.supportsRequests ? { "select-chart-range": Qe } : {},
|
|
4648
|
+
...ge.value?.rendererEvents.supportsZoom ? { "zoom-time-range": Be } : {},
|
|
4649
|
+
...ge.value?.rendererEvents.supportsBounds ? { "bounds-change": ze } : {},
|
|
4650
|
+
...ge.value?.rendererEvents.supportsLoadingChange ? { "loading-change": Ce } : {}
|
|
4651
|
+
})), ge = b(() => {
|
|
4652
|
+
const M = K[s.definition.chart.type], Z = Pe(s.definition), xe = !!M?.emits?.includes("select-chart-range"), Xe = !!M?.emits?.includes("zoom-time-range"), We = s.definition.chart.type === "choropleth_map", Ve = !!M?.emits?.includes("loading-change"), At = {
|
|
4645
4653
|
query: s.definition.query,
|
|
4646
4654
|
context: s.context,
|
|
4647
4655
|
queryReady: s.queryReady,
|
|
4648
4656
|
height: s.height - i * 2,
|
|
4649
4657
|
refreshCounter: r.value,
|
|
4650
4658
|
zoomConfiguration: n.value
|
|
4651
|
-
},
|
|
4659
|
+
}, It = {
|
|
4652
4660
|
chartOptions: s.definition.chart,
|
|
4653
4661
|
activeMetric: V.value,
|
|
4654
4662
|
headerDescription: $.value,
|
|
4655
|
-
requestsLink: n.value.showRequestsAction ?
|
|
4663
|
+
requestsLink: n.value.showRequestsAction ? oe.value : void 0,
|
|
4656
4664
|
exploreLink: n.value.showExploreAction ? we.value : void 0
|
|
4657
4665
|
};
|
|
4658
4666
|
return M && {
|
|
4659
4667
|
component: M,
|
|
4660
4668
|
rendererProps: {
|
|
4661
|
-
...
|
|
4662
|
-
...Z ? {} :
|
|
4669
|
+
...At,
|
|
4670
|
+
...Z ? {} : It
|
|
4663
4671
|
},
|
|
4664
4672
|
rendererEvents: {
|
|
4665
4673
|
supportsRequests: xe,
|
|
4666
|
-
supportsZoom:
|
|
4674
|
+
supportsZoom: Xe,
|
|
4667
4675
|
supportsBounds: We,
|
|
4668
|
-
supportsLoadingChange:
|
|
4676
|
+
supportsLoadingChange: Ve
|
|
4669
4677
|
}
|
|
4670
4678
|
};
|
|
4671
|
-
}), G =
|
|
4679
|
+
}), G = b(() => {
|
|
4672
4680
|
if (Pe(s.definition))
|
|
4673
4681
|
return null;
|
|
4674
4682
|
const M = s.definition.query, Z = M?.time_range;
|
|
4675
|
-
if (
|
|
4683
|
+
if (ei(M?.datasource) && !M.dimensions?.includes("time"))
|
|
4676
4684
|
return y.t("renderer.as_of_today");
|
|
4677
4685
|
if (Z?.type === "relative") {
|
|
4678
|
-
const xe =
|
|
4686
|
+
const xe = ti.get(ii[Z.time_range]);
|
|
4679
4687
|
return xe ? xe.display : (console.warn("Did not recognize the given relative time range:", Z.time_range), Z.time_range);
|
|
4680
4688
|
} else if (Z?.type === "absolute") {
|
|
4681
4689
|
const xe = Z.tz || "Etc/UTC";
|
|
4682
|
-
return `${
|
|
4690
|
+
return `${mi(Z.start, { short: !0, tz: xe })} - ${mi(Z.end, { short: !0, tz: xe })}`;
|
|
4683
4691
|
}
|
|
4684
4692
|
return null;
|
|
4685
|
-
}), Y =
|
|
4693
|
+
}), Y = b(() => {
|
|
4686
4694
|
const M = s.definition.query, Z = M?.datasource, xe = Z ? d.value[Z]?.timeRangeOptions : void 0, We = (M && "time_range" in M ? M.time_range : void 0) ?? s.context.timeSpec;
|
|
4687
|
-
return
|
|
4688
|
-
}),
|
|
4695
|
+
return ks(We, xe);
|
|
4696
|
+
}), ae = b(() => W.value ? !1 : [
|
|
4689
4697
|
!!O.value,
|
|
4690
4698
|
X.value,
|
|
4691
4699
|
!!G.value,
|
|
4692
4700
|
Y.value,
|
|
4693
4701
|
!!$.value,
|
|
4694
4702
|
s.showRefresh,
|
|
4695
|
-
|
|
4696
|
-
].some(Boolean)), P =
|
|
4697
|
-
Ye(
|
|
4703
|
+
j.value
|
|
4704
|
+
].some(Boolean)), P = b(() => v.value ? Gt(v.value.meta.granularity_ms) : void 0), de = b(() => ["timeseries_line", "timeseries_bar"].includes(S.value.type)), he = b(() => v.value?.meta.metric_names ?? []), V = Q();
|
|
4705
|
+
Ye(he, (M) => {
|
|
4698
4706
|
(!V.value || !M.includes(V.value)) && (V.value = M[0]);
|
|
4699
4707
|
}, { immediate: !0 });
|
|
4700
|
-
const
|
|
4708
|
+
const te = b(() => {
|
|
4709
|
+
const M = S.value;
|
|
4710
|
+
return M.type !== "timeseries_line" ? !1 : he.value.some((Z) => M.metric_axis_map?.[Z] === "right");
|
|
4711
|
+
}), j = b(() => de.value && !te.value && (v.value?.data.length ?? 0) > 0 && he.value.length > 1 && Object.keys(v.value?.meta.display ?? {}).length > 0), Te = (M) => Object.hasOwn(xs.chartLabels, M), F = b(() => he.value.map((M) => ({
|
|
4701
4712
|
value: M,
|
|
4702
|
-
label:
|
|
4703
|
-
}))),
|
|
4704
|
-
if (!
|
|
4713
|
+
label: Te(M) ? y.t(`chartLabels.${M}`) : M
|
|
4714
|
+
}))), re = b(() => {
|
|
4715
|
+
if (!Xt(s.definition) || !de.value || !s.queryReady || E.value)
|
|
4705
4716
|
return !1;
|
|
4706
4717
|
const M = s.definition.query.granularity;
|
|
4707
4718
|
return !M || !P.value ? !1 : M !== P.value;
|
|
4708
|
-
}),
|
|
4709
|
-
const M =
|
|
4719
|
+
}), Fe = b(() => {
|
|
4720
|
+
const M = Gt(v.value?.meta.granularity_ms ?? 0) ?? "unknown", Z = Xt(s.definition) ? s.definition.query.granularity ?? "unknown" : "unknown";
|
|
4710
4721
|
return y.t("query_aged_out_warning", {
|
|
4711
4722
|
currentGranularity: y.t(`granularities.${M}`),
|
|
4712
4723
|
savedGranularity: y.t(`granularities.${Z}`)
|
|
4713
4724
|
});
|
|
4714
|
-
}),
|
|
4725
|
+
}), Ue = b(() => {
|
|
4715
4726
|
const M = [...s.context.filters, ...s.definition.query.filters ?? []], Z = "metrics" in s.definition.query ? s.definition.query.metrics : void 0, xe = s.definition.query.datasource ?? "api_usage";
|
|
4716
4727
|
return h.value({
|
|
4717
4728
|
datasource: xe,
|
|
4718
4729
|
filters: M,
|
|
4719
4730
|
queryFields: Z
|
|
4720
4731
|
});
|
|
4721
|
-
}),
|
|
4732
|
+
}), De = () => {
|
|
4722
4733
|
a("edit-tile", s.definition);
|
|
4723
|
-
}, De = () => {
|
|
4724
|
-
a("duplicate-tile", s.definition);
|
|
4725
4734
|
}, Ke = () => {
|
|
4735
|
+
a("duplicate-tile", s.definition);
|
|
4736
|
+
}, ye = () => {
|
|
4726
4737
|
a("remove-tile", s.definition);
|
|
4727
|
-
},
|
|
4738
|
+
}, Oe = (M) => {
|
|
4728
4739
|
v.value = M, E.value = !1, a("chart-data", M), a("tile-loaded");
|
|
4729
|
-
},
|
|
4740
|
+
}, pe = () => {
|
|
4730
4741
|
E.value = !1, a("tile-loaded");
|
|
4731
|
-
},
|
|
4742
|
+
}, Ce = (M) => {
|
|
4732
4743
|
E.value = M, M || a("tile-loaded");
|
|
4733
|
-
},
|
|
4744
|
+
}, Me = () => {
|
|
4734
4745
|
_.value = !1;
|
|
4735
|
-
},
|
|
4736
|
-
if (
|
|
4746
|
+
}, tt = () => {
|
|
4747
|
+
if (Qt(s.definition))
|
|
4737
4748
|
throw new Error("Cannot export data for a tile backed by the api-requests endpoint");
|
|
4738
4749
|
const M = s.definition.query.datasource?.startsWith("goap");
|
|
4739
|
-
return l?.staticConfig?.increaseCsvExportLimit !== !1 && !M ? ne(s.definition.query, s.context,
|
|
4740
|
-
const
|
|
4741
|
-
We && (xe(We),
|
|
4750
|
+
return l?.staticConfig?.increaseCsvExportLimit !== !1 && !M ? ne(s.definition.query, s.context, us) : v.value ? Promise.resolve(v.value) : new Promise((xe) => {
|
|
4751
|
+
const Xe = Ye(v, (We) => {
|
|
4752
|
+
We && (xe(We), Xe());
|
|
4742
4753
|
});
|
|
4743
4754
|
});
|
|
4744
|
-
},
|
|
4755
|
+
}, vt = async () => {
|
|
4745
4756
|
_.value = !0, R.value = { status: "loading" };
|
|
4746
4757
|
try {
|
|
4747
|
-
const M = await
|
|
4758
|
+
const M = await tt();
|
|
4748
4759
|
R.value = { status: "success", chartData: M };
|
|
4749
4760
|
} catch (M) {
|
|
4750
4761
|
R.value = { status: "error", error: M };
|
|
4751
4762
|
}
|
|
4752
|
-
},
|
|
4763
|
+
}, Be = (M) => {
|
|
4753
4764
|
const Z = {
|
|
4754
4765
|
tileId: s.tileId.toString(),
|
|
4755
4766
|
timeRange: M
|
|
4756
4767
|
};
|
|
4757
4768
|
a("tile-time-range-zoom", Z);
|
|
4758
|
-
},
|
|
4769
|
+
}, ze = (M) => {
|
|
4759
4770
|
const Z = {
|
|
4760
4771
|
tileId: s.tileId.toString(),
|
|
4761
4772
|
bounds: M
|
|
4762
4773
|
};
|
|
4763
4774
|
a("tile-bounds-change", Z);
|
|
4764
|
-
},
|
|
4765
|
-
const Z =
|
|
4766
|
-
we.value = I.value ? { href: J(xe) } : void 0,
|
|
4775
|
+
}, Qe = (M) => {
|
|
4776
|
+
const Z = Ue.value, xe = be(M, Z);
|
|
4777
|
+
we.value = I.value ? { href: J(xe) } : void 0, oe.value = k.value ? { href: le(H(M, Z)) } : void 0;
|
|
4767
4778
|
};
|
|
4768
|
-
return e({ getExportData:
|
|
4769
|
-
const xe = ve("KTooltip"),
|
|
4779
|
+
return e({ getExportData: tt }), (M, Z) => {
|
|
4780
|
+
const xe = ve("KTooltip"), Xe = ve("KBadge"), We = ve("KButton"), Ve = ve("KDropdownItem"), At = ve("KDropdown");
|
|
4770
4781
|
return z(), se("div", {
|
|
4771
|
-
class:
|
|
4782
|
+
class: rt(["tile-boundary", {
|
|
4772
4783
|
editable: s.context.editable,
|
|
4773
|
-
headless: !
|
|
4784
|
+
headless: !ae.value
|
|
4774
4785
|
}]),
|
|
4775
4786
|
"data-testid": `tile-${s.tileId}`
|
|
4776
4787
|
}, [
|
|
4777
|
-
|
|
4778
|
-
|
|
4788
|
+
ae.value && !W.value ? (z(), se("div", Ca, [
|
|
4789
|
+
me(xe, {
|
|
4779
4790
|
class: "title-tooltip",
|
|
4780
4791
|
disabled: !N.value,
|
|
4781
4792
|
"max-width": "500",
|
|
@@ -4790,8 +4801,8 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4790
4801
|
]),
|
|
4791
4802
|
_: 1
|
|
4792
4803
|
}, 8, ["disabled", "text"]),
|
|
4793
|
-
ue("div",
|
|
4794
|
-
Y.value ? (z(), B(
|
|
4804
|
+
ue("div", Ra, [
|
|
4805
|
+
Y.value ? (z(), B(Xe, {
|
|
4795
4806
|
key: 0,
|
|
4796
4807
|
appearance: "warning",
|
|
4797
4808
|
"data-testid": "unsupported-time-range-badge",
|
|
@@ -4799,48 +4810,48 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4799
4810
|
"tooltip-attributes": { maxWidth: "320px" }
|
|
4800
4811
|
}, {
|
|
4801
4812
|
icon: U(() => [
|
|
4802
|
-
|
|
4803
|
-
size: `var(--kui-icon-size-20, ${D(
|
|
4813
|
+
me(D(pi), {
|
|
4814
|
+
size: `var(--kui-icon-size-20, ${D(Ii)})`
|
|
4804
4815
|
}, null, 8, ["size"])
|
|
4805
4816
|
]),
|
|
4806
4817
|
default: U(() => [
|
|
4807
|
-
ue("span",
|
|
4818
|
+
ue("span", ka, ie(D(y).t("unsupported_time_range_badge")), 1)
|
|
4808
4819
|
]),
|
|
4809
4820
|
_: 1
|
|
4810
|
-
}, 8, ["tooltip"])) :
|
|
4811
|
-
G.value ? (z(), B(
|
|
4821
|
+
}, 8, ["tooltip"])) : fe("", !0),
|
|
4822
|
+
G.value ? (z(), B(Xe, {
|
|
4812
4823
|
key: 1,
|
|
4813
4824
|
"data-testid": "time-range-badge",
|
|
4814
|
-
tooltip:
|
|
4825
|
+
tooltip: re.value ? Fe.value : void 0,
|
|
4815
4826
|
"tooltip-attributes": { maxWidth: "320px" }
|
|
4816
|
-
},
|
|
4827
|
+
}, pt({
|
|
4817
4828
|
default: U(() => [
|
|
4818
|
-
ue("span",
|
|
4829
|
+
ue("span", Ta, ie(G.value), 1)
|
|
4819
4830
|
]),
|
|
4820
4831
|
_: 2
|
|
4821
4832
|
}, [
|
|
4822
|
-
|
|
4833
|
+
re.value ? {
|
|
4823
4834
|
name: "icon",
|
|
4824
4835
|
fn: U(() => [
|
|
4825
|
-
|
|
4826
|
-
size: `var(--kui-icon-size-20, ${D(
|
|
4836
|
+
me(D(pi), {
|
|
4837
|
+
size: `var(--kui-icon-size-20, ${D(Ii)})`
|
|
4827
4838
|
}, null, 8, ["size"])
|
|
4828
4839
|
]),
|
|
4829
4840
|
key: "0"
|
|
4830
4841
|
} : void 0
|
|
4831
|
-
]), 1032, ["tooltip"])) :
|
|
4842
|
+
]), 1032, ["tooltip"])) : fe("", !0)
|
|
4832
4843
|
]),
|
|
4833
|
-
|
|
4834
|
-
|
|
4844
|
+
j.value ? (z(), se("div", Sa, [
|
|
4845
|
+
me(D(ln), {
|
|
4835
4846
|
modelValue: V.value,
|
|
4836
|
-
"onUpdate:modelValue": Z[0] || (Z[0] = (
|
|
4847
|
+
"onUpdate:modelValue": Z[0] || (Z[0] = (It) => V.value = It),
|
|
4837
4848
|
class: "metric-selector",
|
|
4838
4849
|
"data-testid": "metric-selector",
|
|
4839
|
-
options:
|
|
4850
|
+
options: F.value
|
|
4840
4851
|
}, null, 8, ["modelValue", "options"])
|
|
4841
|
-
])) :
|
|
4842
|
-
s.showRefresh ? (z(), se("div",
|
|
4843
|
-
|
|
4852
|
+
])) : fe("", !0),
|
|
4853
|
+
s.showRefresh ? (z(), se("div", Da, [
|
|
4854
|
+
me(We, {
|
|
4844
4855
|
appearance: "secondary",
|
|
4845
4856
|
class: "refresh-button",
|
|
4846
4857
|
"data-testid": `tile-refresh-button-${s.tileId}`,
|
|
@@ -4850,123 +4861,123 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4850
4861
|
onClick: o
|
|
4851
4862
|
}, {
|
|
4852
4863
|
default: U(() => [
|
|
4853
|
-
E.value ? (z(), B(D(
|
|
4864
|
+
E.value ? (z(), B(D(Qs), {
|
|
4854
4865
|
key: 0,
|
|
4855
4866
|
role: "button",
|
|
4856
|
-
size: `var(--kui-icon-size-60, ${D(
|
|
4867
|
+
size: `var(--kui-icon-size-60, ${D(qi)})`,
|
|
4857
4868
|
tabindex: "0"
|
|
4858
|
-
}, null, 8, ["size"])) : (z(), B(D(
|
|
4869
|
+
}, null, 8, ["size"])) : (z(), B(D(Xs), {
|
|
4859
4870
|
key: 1,
|
|
4860
4871
|
role: "button",
|
|
4861
|
-
size: `var(--kui-icon-size-60, ${D(
|
|
4872
|
+
size: `var(--kui-icon-size-60, ${D(qi)})`,
|
|
4862
4873
|
tabindex: "0"
|
|
4863
4874
|
}, null, 8, ["size"]))
|
|
4864
4875
|
]),
|
|
4865
4876
|
_: 1
|
|
4866
4877
|
}, 8, ["data-testid", "disabled"])
|
|
4867
|
-
])) :
|
|
4878
|
+
])) : fe("", !0),
|
|
4868
4879
|
$.value ? (z(), se("div", {
|
|
4869
4880
|
key: 2,
|
|
4870
4881
|
class: "header-description",
|
|
4871
4882
|
"data-testid": `tile-description-${s.tileId}`
|
|
4872
|
-
}, ie($.value), 9,
|
|
4873
|
-
|
|
4883
|
+
}, ie($.value), 9, Oa)) : fe("", !0),
|
|
4884
|
+
x.value ? (z(), se("div", {
|
|
4874
4885
|
key: 3,
|
|
4875
4886
|
class: "tile-actions",
|
|
4876
4887
|
"data-testid": `tile-actions-${s.tileId}`
|
|
4877
4888
|
}, [
|
|
4878
|
-
|
|
4889
|
+
x.value && s.context.editable && !s.isFullscreen ? (z(), B(D(Vs), {
|
|
4879
4890
|
key: 0,
|
|
4880
4891
|
class: "edit-icon",
|
|
4881
|
-
color: `var(--kui-color-text-neutral, ${D(
|
|
4892
|
+
color: `var(--kui-color-text-neutral, ${D(Kt)})`,
|
|
4882
4893
|
"data-testid": `edit-tile-${s.tileId}`,
|
|
4883
|
-
size: `var(--kui-icon-size-40, ${D(
|
|
4884
|
-
onClick:
|
|
4885
|
-
}, null, 8, ["color", "data-testid", "size"])) :
|
|
4886
|
-
|
|
4894
|
+
size: `var(--kui-icon-size-40, ${D(Li)})`,
|
|
4895
|
+
onClick: De
|
|
4896
|
+
}, null, 8, ["color", "data-testid", "size"])) : fe("", !0),
|
|
4897
|
+
x.value && T.value && !s.isFullscreen ? (z(), B(At, {
|
|
4887
4898
|
key: 1,
|
|
4888
4899
|
class: "dropdown",
|
|
4889
4900
|
"data-testid": `chart-action-menu-${s.tileId}`,
|
|
4890
4901
|
"kpop-attributes": { placement: "bottom-end" }
|
|
4891
4902
|
}, {
|
|
4892
4903
|
items: U(() => [
|
|
4893
|
-
D(f) ? (z(), B(
|
|
4904
|
+
D(f) ? (z(), B(Ve, {
|
|
4894
4905
|
key: 0,
|
|
4895
4906
|
"data-testid": `chart-jump-to-explore-${s.tileId}`,
|
|
4896
4907
|
item: { label: D(y).t("jumpToExplore"), to: D(f) }
|
|
4897
|
-
}, null, 8, ["data-testid", "item"])) :
|
|
4898
|
-
!D(Pe)(s.definition) && D(g) ? (z(), B(
|
|
4908
|
+
}, null, 8, ["data-testid", "item"])) : fe("", !0),
|
|
4909
|
+
!D(Pe)(s.definition) && D(g) ? (z(), B(Ve, {
|
|
4899
4910
|
key: 1,
|
|
4900
4911
|
"data-testid": `chart-jump-to-requests-${s.tileId}`,
|
|
4901
4912
|
item: { label: D(y).t("jumpToRequests"), to: D(g) }
|
|
4902
|
-
}, null, 8, ["data-testid", "item"])) :
|
|
4903
|
-
m.value ? (z(), B(
|
|
4913
|
+
}, null, 8, ["data-testid", "item"])) : fe("", !0),
|
|
4914
|
+
m.value ? (z(), B(Ve, {
|
|
4904
4915
|
key: 2,
|
|
4905
4916
|
class: "chart-export-button",
|
|
4906
4917
|
"data-testid": `chart-csv-export-${s.tileId}`,
|
|
4907
|
-
onClick:
|
|
4918
|
+
onClick: vt
|
|
4908
4919
|
}, {
|
|
4909
4920
|
default: U(() => [
|
|
4910
4921
|
ue("span", {
|
|
4911
4922
|
class: "chart-export-trigger",
|
|
4912
4923
|
"data-testid": `csv-export-button-${s.tileId}`
|
|
4913
|
-
}, ie(D(y).t("csvExport.exportAsCsv")), 9,
|
|
4924
|
+
}, ie(D(y).t("csvExport.exportAsCsv")), 9, Ma)
|
|
4914
4925
|
]),
|
|
4915
4926
|
_: 1
|
|
4916
|
-
}, 8, ["data-testid"])) :
|
|
4917
|
-
s.context.editable ? (z(), B(
|
|
4927
|
+
}, 8, ["data-testid"])) : fe("", !0),
|
|
4928
|
+
s.context.editable ? (z(), B(Ve, {
|
|
4918
4929
|
key: 3,
|
|
4919
4930
|
"data-testid": `duplicate-tile-${s.tileId}`,
|
|
4920
|
-
onClick:
|
|
4931
|
+
onClick: Ke
|
|
4921
4932
|
}, {
|
|
4922
4933
|
default: U(() => [
|
|
4923
|
-
|
|
4934
|
+
Je(ie(D(y).t("renderer.duplicateTile")), 1)
|
|
4924
4935
|
]),
|
|
4925
4936
|
_: 1
|
|
4926
|
-
}, 8, ["data-testid"])) :
|
|
4927
|
-
s.context.editable ? (z(), B(
|
|
4937
|
+
}, 8, ["data-testid"])) : fe("", !0),
|
|
4938
|
+
s.context.editable ? (z(), B(Ve, {
|
|
4928
4939
|
key: 4,
|
|
4929
4940
|
"data-testid": `remove-tile-${s.tileId}`,
|
|
4930
|
-
onClick:
|
|
4941
|
+
onClick: ye
|
|
4931
4942
|
}, {
|
|
4932
4943
|
default: U(() => [
|
|
4933
|
-
ue("span",
|
|
4944
|
+
ue("span", Na, ie(D(y).t("renderer.delete")), 1)
|
|
4934
4945
|
]),
|
|
4935
4946
|
_: 1
|
|
4936
|
-
}, 8, ["data-testid"])) :
|
|
4947
|
+
}, 8, ["data-testid"])) : fe("", !0)
|
|
4937
4948
|
]),
|
|
4938
4949
|
default: U(() => [
|
|
4939
|
-
|
|
4950
|
+
me(D(Zs), {
|
|
4940
4951
|
class: "kebab-action-menu",
|
|
4941
|
-
color: `var(--kui-color-text-neutral, ${D(
|
|
4952
|
+
color: `var(--kui-color-text-neutral, ${D(Kt)})`,
|
|
4942
4953
|
"data-testid": `kebab-action-menu-${s.tileId}`,
|
|
4943
|
-
size: `var(--kui-icon-size-40, ${D(
|
|
4954
|
+
size: `var(--kui-icon-size-40, ${D(Li)})`
|
|
4944
4955
|
}, null, 8, ["color", "data-testid", "size"])
|
|
4945
4956
|
]),
|
|
4946
4957
|
_: 1
|
|
4947
|
-
}, 8, ["data-testid"])) :
|
|
4948
|
-
], 8,
|
|
4949
|
-
_.value ? (z(), B(
|
|
4958
|
+
}, 8, ["data-testid"])) : fe("", !0)
|
|
4959
|
+
], 8, za)) : fe("", !0),
|
|
4960
|
+
_.value ? (z(), B(ia, {
|
|
4950
4961
|
key: 4,
|
|
4951
4962
|
"data-testid": `csv-export-modal-${s.tileId}`,
|
|
4952
4963
|
"export-state": R.value,
|
|
4953
4964
|
filename: w.value,
|
|
4954
|
-
onCloseModal:
|
|
4955
|
-
}, null, 8, ["data-testid", "export-state", "filename"])) :
|
|
4956
|
-
])) :
|
|
4965
|
+
onCloseModal: Me
|
|
4966
|
+
}, null, 8, ["data-testid", "export-state", "filename"])) : fe("", !0)
|
|
4967
|
+
])) : fe("", !0),
|
|
4957
4968
|
ue("div", {
|
|
4958
|
-
class:
|
|
4969
|
+
class: rt(["tile-content", `type-${s.tileType}-${S.value.type}`]),
|
|
4959
4970
|
"data-testid": `tile-content-${s.tileId}`
|
|
4960
4971
|
}, [
|
|
4961
|
-
ge.value ? (z(), B(
|
|
4962
|
-
onChartData:
|
|
4963
|
-
onQueryComplete:
|
|
4964
|
-
}), null, 16)) :
|
|
4965
|
-
], 10,
|
|
4966
|
-
], 10,
|
|
4972
|
+
ge.value ? (z(), B(as(ge.value.component), ns({ key: 0 }, ge.value.rendererProps, Us(ce.value), {
|
|
4973
|
+
onChartData: Oe,
|
|
4974
|
+
onQueryComplete: pe
|
|
4975
|
+
}), null, 16)) : fe("", !0)
|
|
4976
|
+
], 10, Aa)
|
|
4977
|
+
], 10, Ea);
|
|
4967
4978
|
};
|
|
4968
4979
|
}
|
|
4969
|
-
}),
|
|
4980
|
+
}), Ms = /* @__PURE__ */ $e(Ia, [["__scopeId", "data-v-8a501cb0"]]), La = (s, e) => {
|
|
4970
4981
|
let t = 0;
|
|
4971
4982
|
const i = /* @__PURE__ */ new Map();
|
|
4972
4983
|
e.forEach((r) => {
|
|
@@ -4977,18 +4988,18 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4977
4988
|
for (let r = 0; r < t; r++)
|
|
4978
4989
|
i.get(r) ? n.push("auto") : n.push(`${s}px`);
|
|
4979
4990
|
return n;
|
|
4980
|
-
},
|
|
4991
|
+
}, qa = /* @__PURE__ */ _e({
|
|
4981
4992
|
__name: "GridLayout",
|
|
4982
4993
|
props: {
|
|
4983
4994
|
tileHeight: {
|
|
4984
4995
|
type: Number,
|
|
4985
4996
|
required: !1,
|
|
4986
|
-
default: () =>
|
|
4997
|
+
default: () => yt
|
|
4987
4998
|
},
|
|
4988
4999
|
columns: {
|
|
4989
5000
|
type: Number,
|
|
4990
5001
|
required: !1,
|
|
4991
|
-
default: () =>
|
|
5002
|
+
default: () => ni
|
|
4992
5003
|
},
|
|
4993
5004
|
tiles: {
|
|
4994
5005
|
type: Array,
|
|
@@ -4996,7 +5007,7 @@ const zt = /* @__PURE__ */ _e({
|
|
|
4996
5007
|
}
|
|
4997
5008
|
},
|
|
4998
5009
|
setup(s) {
|
|
4999
|
-
|
|
5010
|
+
Zt((a) => ({
|
|
5000
5011
|
e54d6296: e.columns,
|
|
5001
5012
|
v524bdfba: r.value
|
|
5002
5013
|
}));
|
|
@@ -5005,12 +5016,12 @@ const zt = /* @__PURE__ */ _e({
|
|
|
5005
5016
|
!Array.isArray(a) || !a.length || (i.value = a[0].contentRect.width);
|
|
5006
5017
|
});
|
|
5007
5018
|
});
|
|
5008
|
-
|
|
5019
|
+
zt(() => {
|
|
5009
5020
|
t.value && n.observe(t.value);
|
|
5010
|
-
}),
|
|
5021
|
+
}), at(() => {
|
|
5011
5022
|
t.value && n.unobserve(t.value);
|
|
5012
5023
|
});
|
|
5013
|
-
const r =
|
|
5024
|
+
const r = b(() => La(e.tileHeight, e.tiles).join(" ")), o = b(() => e.tiles.map((a, c) => ({
|
|
5014
5025
|
key: `tile-${c}`,
|
|
5015
5026
|
tile: a,
|
|
5016
5027
|
style: {
|
|
@@ -5025,22 +5036,22 @@ const zt = /* @__PURE__ */ _e({
|
|
|
5025
5036
|
ref: t,
|
|
5026
5037
|
class: "kong-ui-public-grid-layout"
|
|
5027
5038
|
}, [
|
|
5028
|
-
(z(!0), se(
|
|
5039
|
+
(z(!0), se(Vt, null, ls(o.value, (l) => (z(), se("div", {
|
|
5029
5040
|
key: l.key,
|
|
5030
|
-
class:
|
|
5041
|
+
class: rt(["grid-cell", {
|
|
5031
5042
|
"empty-cell": !l.tile
|
|
5032
5043
|
}]),
|
|
5033
|
-
style:
|
|
5044
|
+
style: xt(l.style)
|
|
5034
5045
|
}, [
|
|
5035
|
-
|
|
5036
|
-
style:
|
|
5046
|
+
et(a.$slots, "tile", {
|
|
5047
|
+
style: xt(l.style),
|
|
5037
5048
|
tile: l.tile
|
|
5038
5049
|
}, void 0, !0)
|
|
5039
5050
|
], 6))), 128))
|
|
5040
5051
|
], 512));
|
|
5041
5052
|
}
|
|
5042
|
-
}),
|
|
5043
|
-
function
|
|
5053
|
+
}), Pa = /* @__PURE__ */ $e(qa, [["__scopeId", "data-v-374ba32b"]]);
|
|
5054
|
+
function Ha(s, e, t, i, n) {
|
|
5044
5055
|
const r = (...o) => (console.warn("gridstack.js: Function `" + t + "` is deprecated in " + n + " and has been replaced with `" + i + "`. It will be **removed** in a future release"), e.apply(s, o));
|
|
5045
5056
|
return r.prototype = e.prototype, r;
|
|
5046
5057
|
}
|
|
@@ -5876,52 +5887,52 @@ class q {
|
|
|
5876
5887
|
const Ne = typeof window < "u" && typeof document < "u" && ("ontouchstart" in document || "ontouchstart" in window || window.DocumentTouch && document instanceof window.DocumentTouch || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0);
|
|
5877
5888
|
class qe {
|
|
5878
5889
|
}
|
|
5879
|
-
function
|
|
5890
|
+
function kt(s, e) {
|
|
5880
5891
|
s.touches.length > 1 || (s.cancelable && s.preventDefault(), p.simulateMouseEvent(s.changedTouches[0], e));
|
|
5881
5892
|
}
|
|
5882
|
-
function
|
|
5893
|
+
function Ns(s, e) {
|
|
5883
5894
|
s.cancelable && s.preventDefault(), p.simulateMouseEvent(s, e);
|
|
5884
5895
|
}
|
|
5885
|
-
function kt(s) {
|
|
5886
|
-
qe.touchHandled || (qe.touchHandled = !0, Rt(s, "mousedown"));
|
|
5887
|
-
}
|
|
5888
5896
|
function Tt(s) {
|
|
5889
|
-
qe.touchHandled
|
|
5897
|
+
qe.touchHandled || (qe.touchHandled = !0, kt(s, "mousedown"));
|
|
5890
5898
|
}
|
|
5891
5899
|
function St(s) {
|
|
5900
|
+
qe.touchHandled && kt(s, "mousemove");
|
|
5901
|
+
}
|
|
5902
|
+
function Dt(s) {
|
|
5892
5903
|
if (!qe.touchHandled)
|
|
5893
5904
|
return;
|
|
5894
5905
|
qe.pointerLeaveTimeout && (window.clearTimeout(qe.pointerLeaveTimeout), delete qe.pointerLeaveTimeout);
|
|
5895
5906
|
const e = !!q.dragElement;
|
|
5896
|
-
|
|
5907
|
+
kt(s, "mouseup"), e || kt(s, "click"), qe.touchHandled = !1;
|
|
5897
5908
|
}
|
|
5898
|
-
function
|
|
5909
|
+
function Ot(s) {
|
|
5899
5910
|
s.pointerType !== "mouse" && s.target.releasePointerCapture(s.pointerId);
|
|
5900
5911
|
}
|
|
5901
|
-
function es(s) {
|
|
5902
|
-
q.dragElement && s.pointerType !== "mouse" && Ms(s, "mouseenter");
|
|
5903
|
-
}
|
|
5904
5912
|
function ts(s) {
|
|
5913
|
+
q.dragElement && s.pointerType !== "mouse" && Ns(s, "mouseenter");
|
|
5914
|
+
}
|
|
5915
|
+
function is(s) {
|
|
5905
5916
|
q.dragElement && s.pointerType !== "mouse" && (qe.pointerLeaveTimeout = window.setTimeout(() => {
|
|
5906
|
-
delete qe.pointerLeaveTimeout,
|
|
5917
|
+
delete qe.pointerLeaveTimeout, Ns(s, "mouseleave");
|
|
5907
5918
|
}, 10));
|
|
5908
5919
|
}
|
|
5909
|
-
class
|
|
5920
|
+
class Nt {
|
|
5910
5921
|
constructor(e, t, i) {
|
|
5911
5922
|
this.host = e, this.dir = t, this.option = i, this.moving = !1, this._mouseDown = this._mouseDown.bind(this), this._mouseMove = this._mouseMove.bind(this), this._mouseUp = this._mouseUp.bind(this), this._keyEvent = this._keyEvent.bind(this), this._init();
|
|
5912
5923
|
}
|
|
5913
5924
|
/** @internal */
|
|
5914
5925
|
_init() {
|
|
5915
5926
|
const e = this.el = document.createElement("div");
|
|
5916
|
-
return e.classList.add("ui-resizable-handle"), e.classList.add(`${
|
|
5927
|
+
return e.classList.add("ui-resizable-handle"), e.classList.add(`${Nt.prefix}${this.dir}`), e.style.zIndex = "100", e.style.userSelect = "none", this.host.appendChild(this.el), this.el.addEventListener("mousedown", this._mouseDown), Ne && (this.el.addEventListener("touchstart", Tt), this.el.addEventListener("pointerdown", Ot)), this;
|
|
5917
5928
|
}
|
|
5918
5929
|
/** call this when resize handle needs to be removed and cleaned up */
|
|
5919
5930
|
destroy() {
|
|
5920
|
-
return this.moving && this._mouseUp(this.mouseDownEvent), this.el.removeEventListener("mousedown", this._mouseDown), Ne && (this.el.removeEventListener("touchstart",
|
|
5931
|
+
return this.moving && this._mouseUp(this.mouseDownEvent), this.el.removeEventListener("mousedown", this._mouseDown), Ne && (this.el.removeEventListener("touchstart", Tt), this.el.removeEventListener("pointerdown", Ot)), this.host.removeChild(this.el), delete this.el, delete this.host, this;
|
|
5921
5932
|
}
|
|
5922
5933
|
/** @internal called on mouse down on us: capture move on the entire document (mouse might not stay on us) until we release the mouse */
|
|
5923
5934
|
_mouseDown(e) {
|
|
5924
|
-
this.mouseDownEvent = e, document.addEventListener("mousemove", this._mouseMove, { capture: !0, passive: !0 }), document.addEventListener("mouseup", this._mouseUp, !0), Ne && (this.el.addEventListener("touchmove",
|
|
5935
|
+
this.mouseDownEvent = e, document.addEventListener("mousemove", this._mouseMove, { capture: !0, passive: !0 }), document.addEventListener("mouseup", this._mouseUp, !0), Ne && (this.el.addEventListener("touchmove", St), this.el.addEventListener("touchend", Dt)), e.stopPropagation(), e.preventDefault();
|
|
5925
5936
|
}
|
|
5926
5937
|
/** @internal */
|
|
5927
5938
|
_mouseMove(e) {
|
|
@@ -5930,7 +5941,7 @@ class Mt {
|
|
|
5930
5941
|
}
|
|
5931
5942
|
/** @internal */
|
|
5932
5943
|
_mouseUp(e) {
|
|
5933
|
-
this.moving && (this._triggerEvent("stop", e), document.removeEventListener("keydown", this._keyEvent)), document.removeEventListener("mousemove", this._mouseMove, !0), document.removeEventListener("mouseup", this._mouseUp, !0), Ne && (this.el.removeEventListener("touchmove",
|
|
5944
|
+
this.moving && (this._triggerEvent("stop", e), document.removeEventListener("keydown", this._keyEvent)), document.removeEventListener("mousemove", this._mouseMove, !0), document.removeEventListener("mouseup", this._mouseUp, !0), Ne && (this.el.removeEventListener("touchmove", St), this.el.removeEventListener("touchend", Dt)), delete this.moving, delete this.mouseDownEvent, e.stopPropagation(), e.preventDefault();
|
|
5934
5945
|
}
|
|
5935
5946
|
/** @internal call when keys are being pressed - use Esc to cancel */
|
|
5936
5947
|
_keyEvent(e) {
|
|
@@ -5941,8 +5952,8 @@ class Mt {
|
|
|
5941
5952
|
return this.option[e] && this.option[e](t), this;
|
|
5942
5953
|
}
|
|
5943
5954
|
}
|
|
5944
|
-
|
|
5945
|
-
class
|
|
5955
|
+
Nt.prefix = "ui-resizable-";
|
|
5956
|
+
class ai {
|
|
5946
5957
|
constructor() {
|
|
5947
5958
|
this._eventRegister = {};
|
|
5948
5959
|
}
|
|
@@ -5970,7 +5981,7 @@ class oi {
|
|
|
5970
5981
|
return this._eventRegister[e](t);
|
|
5971
5982
|
}
|
|
5972
5983
|
}
|
|
5973
|
-
class
|
|
5984
|
+
class ft extends ai {
|
|
5974
5985
|
// have to be public else complains for HTMLElementExtendOpt ?
|
|
5975
5986
|
constructor(e, t = {}) {
|
|
5976
5987
|
super(), this.el = e, this.option = t, this.rectScale = { x: 1, y: 1 }, this._ui = () => {
|
|
@@ -6040,7 +6051,7 @@ class ht extends oi {
|
|
|
6040
6051
|
}
|
|
6041
6052
|
/** @internal */
|
|
6042
6053
|
_setupHandlers() {
|
|
6043
|
-
return this.handlers = this.option.handles.split(",").map((e) => e.trim()).map((e) => new
|
|
6054
|
+
return this.handlers = this.option.handles.split(",").map((e) => e.trim()).map((e) => new Nt(this.el, e, {
|
|
6044
6055
|
start: (t) => {
|
|
6045
6056
|
this._resizeStart(t);
|
|
6046
6057
|
},
|
|
@@ -6071,7 +6082,7 @@ class ht extends oi {
|
|
|
6071
6082
|
}
|
|
6072
6083
|
/** @internal */
|
|
6073
6084
|
_setupHelper() {
|
|
6074
|
-
this.elOriginStyleVal =
|
|
6085
|
+
this.elOriginStyleVal = ft._originStyleProp.map((i) => this.el.style[i]), this.parentOriginStylePosition = this.el.parentElement.style.position;
|
|
6075
6086
|
const e = this.el.parentElement, t = p.getValuesFromTransformedElement(e);
|
|
6076
6087
|
return this.rectScale = {
|
|
6077
6088
|
x: t.xScale,
|
|
@@ -6080,7 +6091,7 @@ class ht extends oi {
|
|
|
6080
6091
|
}
|
|
6081
6092
|
/** @internal */
|
|
6082
6093
|
_cleanHelper() {
|
|
6083
|
-
return
|
|
6094
|
+
return ft._originStyleProp.forEach((e, t) => {
|
|
6084
6095
|
this.el.style[e] = this.elOriginStyleVal[t] || null;
|
|
6085
6096
|
}), this.el.parentElement.style.position = this.parentOriginStylePosition || null, this;
|
|
6086
6097
|
}
|
|
@@ -6119,9 +6130,9 @@ class ht extends oi {
|
|
|
6119
6130
|
return this.handlers.forEach((e) => e.destroy()), delete this.handlers, this;
|
|
6120
6131
|
}
|
|
6121
6132
|
}
|
|
6122
|
-
|
|
6123
|
-
const
|
|
6124
|
-
class
|
|
6133
|
+
ft._originStyleProp = ["width", "height", "position", "left", "top", "opacity", "zIndex"];
|
|
6134
|
+
const Fa = 'input,textarea,button,select,option,[contenteditable="true"],.ui-resizable-handle';
|
|
6135
|
+
class mt extends ai {
|
|
6125
6136
|
constructor(e, t = {}) {
|
|
6126
6137
|
super(), this.el = e, this.option = t, this.dragTransform = {
|
|
6127
6138
|
xScale: 1,
|
|
@@ -6140,12 +6151,12 @@ class ft extends oi {
|
|
|
6140
6151
|
}
|
|
6141
6152
|
enable() {
|
|
6142
6153
|
this.disabled !== !1 && (super.enable(), this.dragEls.forEach((e) => {
|
|
6143
|
-
e.addEventListener("mousedown", this._mouseDown), Ne && (e.addEventListener("touchstart",
|
|
6154
|
+
e.addEventListener("mousedown", this._mouseDown), Ne && (e.addEventListener("touchstart", Tt), e.addEventListener("pointerdown", Ot));
|
|
6144
6155
|
}), this.el.classList.remove("ui-draggable-disabled"));
|
|
6145
6156
|
}
|
|
6146
6157
|
disable(e = !1) {
|
|
6147
6158
|
this.disabled !== !0 && (super.disable(), this.dragEls.forEach((t) => {
|
|
6148
|
-
t.removeEventListener("mousedown", this._mouseDown), Ne && (t.removeEventListener("touchstart",
|
|
6159
|
+
t.removeEventListener("mousedown", this._mouseDown), Ne && (t.removeEventListener("touchstart", Tt), t.removeEventListener("pointerdown", Ot));
|
|
6149
6160
|
}), e || this.el.classList.add("ui-draggable-disabled"));
|
|
6150
6161
|
}
|
|
6151
6162
|
destroy() {
|
|
@@ -6157,7 +6168,7 @@ class ft extends oi {
|
|
|
6157
6168
|
/** @internal call when mouse goes down before a dragstart happens */
|
|
6158
6169
|
_mouseDown(e) {
|
|
6159
6170
|
if (!q.mouseHandled)
|
|
6160
|
-
return e.button !== 0 || !this.dragEls.find((t) => t === e.target) && e.target.closest(
|
|
6171
|
+
return e.button !== 0 || !this.dragEls.find((t) => t === e.target) && e.target.closest(Fa) || this.option.cancel && e.target.closest(this.option.cancel) || (this.mouseDownEvent = e, delete this.dragging, delete q.dragElement, delete q.dropElement, document.addEventListener("mousemove", this._mouseMove, { capture: !0, passive: !0 }), document.addEventListener("mouseup", this._mouseUp, !0), Ne && (e.currentTarget.addEventListener("touchmove", St), e.currentTarget.addEventListener("touchend", Dt)), e.preventDefault(), document.activeElement && document.activeElement.blur(), q.mouseHandled = !0), !0;
|
|
6161
6172
|
}
|
|
6162
6173
|
/** @internal method to call actual drag event */
|
|
6163
6174
|
_callDrag(e) {
|
|
@@ -6186,7 +6197,7 @@ class ft extends oi {
|
|
|
6186
6197
|
}
|
|
6187
6198
|
/** @internal call when the mouse gets released to drop the item at current location */
|
|
6188
6199
|
_mouseUp(e) {
|
|
6189
|
-
if (document.removeEventListener("mousemove", this._mouseMove, !0), document.removeEventListener("mouseup", this._mouseUp, !0), Ne && e.currentTarget && (e.currentTarget.removeEventListener("touchmove",
|
|
6200
|
+
if (document.removeEventListener("mousemove", this._mouseMove, !0), document.removeEventListener("mouseup", this._mouseUp, !0), Ne && e.currentTarget && (e.currentTarget.removeEventListener("touchmove", St, !0), e.currentTarget.removeEventListener("touchend", Dt, !0)), this.dragging) {
|
|
6190
6201
|
delete this.dragging, delete this.el.gridstackNode?._origRotate, document.removeEventListener("keydown", this._keyEvent), q.dropElement?.el === this.el.parentElement && delete q.dropElement, this.helperContainment.style.position = this.parentOriginStylePosition || null, this.helper !== this.el && this.helper.remove(), this._removeHelperStyle();
|
|
6191
6202
|
const t = p.initEvent(e, { target: this.el, type: "dragstop" });
|
|
6192
6203
|
this.option.stop && this.option.stop(t), this.triggerEvent("dragstop", t), q.dropElement && q.dropElement.drop(e);
|
|
@@ -6207,7 +6218,7 @@ class ft extends oi {
|
|
|
6207
6218
|
/** @internal create a clone copy (or user defined method) of the original drag item if set */
|
|
6208
6219
|
_createHelper() {
|
|
6209
6220
|
let e = this.el;
|
|
6210
|
-
return typeof this.option.helper == "function" ? e = this.option.helper(this.el) : this.option.helper === "clone" && (e = p.cloneNode(this.el)), e.parentElement || p.appendTo(e, this.option.appendTo === "parent" ? this.el.parentElement : this.option.appendTo), this.dragElementOriginStyle =
|
|
6221
|
+
return typeof this.option.helper == "function" ? e = this.option.helper(this.el) : this.option.helper === "clone" && (e = p.cloneNode(this.el)), e.parentElement || p.appendTo(e, this.option.appendTo === "parent" ? this.el.parentElement : this.option.appendTo), this.dragElementOriginStyle = mt.originStyleProp.map((t) => this.el.style[t]), e;
|
|
6211
6222
|
}
|
|
6212
6223
|
/** @internal set the fix position of the dragged item */
|
|
6213
6224
|
_setupHelperStyle(e) {
|
|
@@ -6221,7 +6232,7 @@ class ft extends oi {
|
|
|
6221
6232
|
_removeHelperStyle() {
|
|
6222
6233
|
if (this.helper.classList.remove("ui-draggable-dragging"), !this.helper?.gridstackNode?._isAboutToRemove && this.dragElementOriginStyle) {
|
|
6223
6234
|
const t = this.helper, i = this.dragElementOriginStyle.transition || null;
|
|
6224
|
-
t.style.transition = this.dragElementOriginStyle.transition = "none",
|
|
6235
|
+
t.style.transition = this.dragElementOriginStyle.transition = "none", mt.originStyleProp.forEach((n) => t.style[n] = this.dragElementOriginStyle[n] || null), setTimeout(() => t.style.transition = i, 50);
|
|
6225
6236
|
}
|
|
6226
6237
|
return delete this.dragElementOriginStyle, this;
|
|
6227
6238
|
}
|
|
@@ -6263,8 +6274,8 @@ class ft extends oi {
|
|
|
6263
6274
|
};
|
|
6264
6275
|
}
|
|
6265
6276
|
}
|
|
6266
|
-
|
|
6267
|
-
class
|
|
6277
|
+
mt.originStyleProp = ["width", "height", "transform", "transform-origin", "transition", "pointerEvents", "position", "left", "top", "minWidth", "willChange"];
|
|
6278
|
+
class $a extends ai {
|
|
6268
6279
|
constructor(e, t = {}) {
|
|
6269
6280
|
super(), this.el = e, this.option = t, this._mouseEnter = this._mouseEnter.bind(this), this._mouseLeave = this._mouseLeave.bind(this), this.enable(), this._setupAccept();
|
|
6270
6281
|
}
|
|
@@ -6275,10 +6286,10 @@ class Fa extends oi {
|
|
|
6275
6286
|
super.off(e);
|
|
6276
6287
|
}
|
|
6277
6288
|
enable() {
|
|
6278
|
-
this.disabled !== !1 && (super.enable(), this.el.classList.add("ui-droppable"), this.el.classList.remove("ui-droppable-disabled"), this.el.addEventListener("mouseenter", this._mouseEnter), this.el.addEventListener("mouseleave", this._mouseLeave), Ne && (this.el.addEventListener("pointerenter",
|
|
6289
|
+
this.disabled !== !1 && (super.enable(), this.el.classList.add("ui-droppable"), this.el.classList.remove("ui-droppable-disabled"), this.el.addEventListener("mouseenter", this._mouseEnter), this.el.addEventListener("mouseleave", this._mouseLeave), Ne && (this.el.addEventListener("pointerenter", ts), this.el.addEventListener("pointerleave", is)));
|
|
6279
6290
|
}
|
|
6280
6291
|
disable(e = !1) {
|
|
6281
|
-
this.disabled !== !0 && (super.disable(), this.el.classList.remove("ui-droppable"), e || this.el.classList.add("ui-droppable-disabled"), this.el.removeEventListener("mouseenter", this._mouseEnter), this.el.removeEventListener("mouseleave", this._mouseLeave), Ne && (this.el.removeEventListener("pointerenter",
|
|
6292
|
+
this.disabled !== !0 && (super.disable(), this.el.classList.remove("ui-droppable"), e || this.el.classList.add("ui-droppable-disabled"), this.el.removeEventListener("mouseenter", this._mouseEnter), this.el.removeEventListener("mouseleave", this._mouseLeave), Ne && (this.el.removeEventListener("pointerenter", ts), this.el.removeEventListener("pointerleave", is)));
|
|
6282
6293
|
}
|
|
6283
6294
|
destroy() {
|
|
6284
6295
|
this.disable(!0), this.el.classList.remove("ui-droppable"), this.el.classList.remove("ui-droppable-disabled"), super.destroy();
|
|
@@ -6329,9 +6340,9 @@ class Fa extends oi {
|
|
|
6329
6340
|
};
|
|
6330
6341
|
}
|
|
6331
6342
|
}
|
|
6332
|
-
class
|
|
6343
|
+
class li {
|
|
6333
6344
|
static init(e) {
|
|
6334
|
-
return e.ddElement || (e.ddElement = new
|
|
6345
|
+
return e.ddElement || (e.ddElement = new li(e)), e.ddElement;
|
|
6335
6346
|
}
|
|
6336
6347
|
constructor(e) {
|
|
6337
6348
|
this.el = e;
|
|
@@ -6343,25 +6354,25 @@ class ai {
|
|
|
6343
6354
|
return this.ddDraggable && ["drag", "dragstart", "dragstop"].indexOf(e) > -1 ? this.ddDraggable.off(e) : this.ddDroppable && ["drop", "dropover", "dropout"].indexOf(e) > -1 ? this.ddDroppable.off(e) : this.ddResizable && ["resizestart", "resize", "resizestop"].indexOf(e) > -1 && this.ddResizable.off(e), this;
|
|
6344
6355
|
}
|
|
6345
6356
|
setupDraggable(e) {
|
|
6346
|
-
return this.ddDraggable ? this.ddDraggable.updateOption(e) : this.ddDraggable = new
|
|
6357
|
+
return this.ddDraggable ? this.ddDraggable.updateOption(e) : this.ddDraggable = new mt(this.el, e), this;
|
|
6347
6358
|
}
|
|
6348
6359
|
cleanDraggable() {
|
|
6349
6360
|
return this.ddDraggable && (this.ddDraggable.destroy(), delete this.ddDraggable), this;
|
|
6350
6361
|
}
|
|
6351
6362
|
setupResizable(e) {
|
|
6352
|
-
return this.ddResizable ? this.ddResizable.updateOption(e) : this.ddResizable = new
|
|
6363
|
+
return this.ddResizable ? this.ddResizable.updateOption(e) : this.ddResizable = new ft(this.el, e), this;
|
|
6353
6364
|
}
|
|
6354
6365
|
cleanResizable() {
|
|
6355
6366
|
return this.ddResizable && (this.ddResizable.destroy(), delete this.ddResizable), this;
|
|
6356
6367
|
}
|
|
6357
6368
|
setupDroppable(e) {
|
|
6358
|
-
return this.ddDroppable ? this.ddDroppable.updateOption(e) : this.ddDroppable = new
|
|
6369
|
+
return this.ddDroppable ? this.ddDroppable.updateOption(e) : this.ddDroppable = new $a(this.el, e), this;
|
|
6359
6370
|
}
|
|
6360
6371
|
cleanDroppable() {
|
|
6361
6372
|
return this.ddDroppable && (this.ddDroppable.destroy(), delete this.ddDroppable), this;
|
|
6362
6373
|
}
|
|
6363
6374
|
}
|
|
6364
|
-
class
|
|
6375
|
+
class Ua {
|
|
6365
6376
|
resizable(e, t, i, n) {
|
|
6366
6377
|
return this._getDDElements(e, t).forEach((r) => {
|
|
6367
6378
|
if (t === "disable" || t === "enable")
|
|
@@ -6437,10 +6448,10 @@ class $a {
|
|
|
6437
6448
|
/** @internal returns a list of DD elements, creating them on the fly by default unless option is to destroy or disable */
|
|
6438
6449
|
_getDDElements(e, t) {
|
|
6439
6450
|
const i = e.gridstack || t !== "destroy" && t !== "disable", n = p.getElements(e);
|
|
6440
|
-
return n.length ? n.map((o) => o.ddElement || (i ?
|
|
6451
|
+
return n.length ? n.map((o) => o.ddElement || (i ? li.init(o) : null)).filter((o) => o) : [];
|
|
6441
6452
|
}
|
|
6442
6453
|
}
|
|
6443
|
-
const Re = new
|
|
6454
|
+
const Re = new Ua();
|
|
6444
6455
|
class L {
|
|
6445
6456
|
/**
|
|
6446
6457
|
* initializing the HTML element, or selector string, into a grid will return the grid. Calling it again will
|
|
@@ -7643,7 +7654,7 @@ Note: ".grid-stack" is required for proper CSS styling and drag/drop, and is the
|
|
|
7643
7654
|
}
|
|
7644
7655
|
// legacy method removed
|
|
7645
7656
|
commit() {
|
|
7646
|
-
return
|
|
7657
|
+
return Ha(this, this.batchUpdate(!1), "commit", "batchUpdate", "5.2"), this;
|
|
7647
7658
|
}
|
|
7648
7659
|
}
|
|
7649
7660
|
L.renderCB = (s, e) => {
|
|
@@ -7653,12 +7664,12 @@ L.resizeToContentParent = ".grid-stack-item-content";
|
|
|
7653
7664
|
L.Utils = p;
|
|
7654
7665
|
L.Engine = Le;
|
|
7655
7666
|
L.GDRev = "11.5.1";
|
|
7656
|
-
const
|
|
7667
|
+
const Ba = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Wa = { class: "grid-stack-item-content" }, Ga = /* @__PURE__ */ _e({
|
|
7657
7668
|
__name: "DraggableGridLayout",
|
|
7658
7669
|
props: {
|
|
7659
7670
|
tiles: {},
|
|
7660
|
-
tileHeight: { default:
|
|
7661
|
-
columns: { default:
|
|
7671
|
+
tileHeight: { default: yt },
|
|
7672
|
+
columns: { default: ni }
|
|
7662
7673
|
},
|
|
7663
7674
|
emits: ["update-tiles"],
|
|
7664
7675
|
setup(s, { expose: e, emit: t }) {
|
|
@@ -7683,7 +7694,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7683
7694
|
o.value.delete(`${R.el?.getAttribute("data-id")}`);
|
|
7684
7695
|
}), n("update-tiles", Array.from(o.value.values()));
|
|
7685
7696
|
};
|
|
7686
|
-
|
|
7697
|
+
zt(() => {
|
|
7687
7698
|
r.value && (a = L.init({
|
|
7688
7699
|
margin: 5,
|
|
7689
7700
|
column: i.columns,
|
|
@@ -7691,7 +7702,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7691
7702
|
resizable: { handles: "se, sw" },
|
|
7692
7703
|
handle: ".tile-header"
|
|
7693
7704
|
}, r.value), a.on("change", u), a.on("added", u), a.on("removed", d));
|
|
7694
|
-
}),
|
|
7705
|
+
}), at(() => {
|
|
7695
7706
|
a && a.destroy(!1);
|
|
7696
7707
|
});
|
|
7697
7708
|
const h = (y) => {
|
|
@@ -7704,13 +7715,13 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7704
7715
|
if (y > v && a) {
|
|
7705
7716
|
const R = i.tiles.slice(v);
|
|
7706
7717
|
for (const _ of R)
|
|
7707
|
-
o.value.set(`${_.id}`, _), await
|
|
7718
|
+
o.value.set(`${_.id}`, _), await Jt(), a.makeWidget(c(_.id), {
|
|
7708
7719
|
autoPosition: !0,
|
|
7709
7720
|
w: _.layout.size.cols,
|
|
7710
7721
|
h: _.layout.size.rows
|
|
7711
7722
|
});
|
|
7712
7723
|
}
|
|
7713
|
-
}),
|
|
7724
|
+
}), ss(() => {
|
|
7714
7725
|
i.tiles.forEach((y) => {
|
|
7715
7726
|
o.value.set(`${y.id}`, y);
|
|
7716
7727
|
});
|
|
@@ -7719,7 +7730,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7719
7730
|
ref: r,
|
|
7720
7731
|
class: "grid-stack"
|
|
7721
7732
|
}, [
|
|
7722
|
-
(z(!0), se(
|
|
7733
|
+
(z(!0), se(Vt, null, ls(i.tiles, (R) => (z(), se("div", {
|
|
7723
7734
|
key: R.id,
|
|
7724
7735
|
class: "grid-stack-item",
|
|
7725
7736
|
"data-id": `${R.id}`,
|
|
@@ -7730,13 +7741,13 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7730
7741
|
"gs-x": R.layout.position.col,
|
|
7731
7742
|
"gs-y": R.layout.position.row
|
|
7732
7743
|
}, [
|
|
7733
|
-
ue("div",
|
|
7734
|
-
|
|
7744
|
+
ue("div", Wa, [
|
|
7745
|
+
et(y.$slots, "tile", { tile: R }, void 0, !0)
|
|
7735
7746
|
])
|
|
7736
|
-
], 8,
|
|
7747
|
+
], 8, Ba))), 128))
|
|
7737
7748
|
], 512));
|
|
7738
7749
|
}
|
|
7739
|
-
}),
|
|
7750
|
+
}), Ya = /* @__PURE__ */ $e(Ga, [["__scopeId", "data-v-0b128fad"]]), ja = (s) => {
|
|
7740
7751
|
const e = {
|
|
7741
7752
|
position: {
|
|
7742
7753
|
col: 0,
|
|
@@ -7760,39 +7771,39 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7760
7771
|
definition: i,
|
|
7761
7772
|
layout: e
|
|
7762
7773
|
};
|
|
7763
|
-
},
|
|
7774
|
+
}, Ka = {
|
|
7764
7775
|
key: 0,
|
|
7765
7776
|
class: "fullscreen-header"
|
|
7766
|
-
},
|
|
7777
|
+
}, Qa = {
|
|
7767
7778
|
key: 0,
|
|
7768
7779
|
class: "tile-container slottable-tile"
|
|
7769
|
-
},
|
|
7780
|
+
}, Xa = /* @__PURE__ */ _e({
|
|
7770
7781
|
__name: "DashboardRenderer",
|
|
7771
|
-
props: /* @__PURE__ */
|
|
7782
|
+
props: /* @__PURE__ */ Et({
|
|
7772
7783
|
context: {},
|
|
7773
7784
|
preview: { type: Boolean, default: !1 }
|
|
7774
7785
|
}, {
|
|
7775
7786
|
modelValue: { required: !0 },
|
|
7776
7787
|
modelModifiers: {}
|
|
7777
7788
|
}),
|
|
7778
|
-
emits: /* @__PURE__ */
|
|
7789
|
+
emits: /* @__PURE__ */ Et(["edit-tile", "tile-time-range-zoom", "tiles-loaded"], ["update:modelValue"]),
|
|
7779
7790
|
setup(s, { expose: e, emit: t }) {
|
|
7780
|
-
|
|
7791
|
+
Zt((w) => ({
|
|
7781
7792
|
b355756c: u.value
|
|
7782
7793
|
}));
|
|
7783
|
-
const i = t, n =
|
|
7794
|
+
const i = t, n = os(s, "modelValue"), { i18n: r } = Ee.useI18n(), o = Q(0), a = Q(null), c = Q(), l = Q(), u = Q("scale(1)"), d = /* @__PURE__ */ new Set(), h = Ae(He);
|
|
7784
7795
|
h || (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/dashboard-renderer/README.md#requirements")), Ee.useRequestQueue();
|
|
7785
7796
|
const { exportPdf: y, exportState: v } = Ee.useExportPdf(l), R = (w) => {
|
|
7786
7797
|
d.add(w.id);
|
|
7787
|
-
const T = N.value.filter((
|
|
7798
|
+
const T = N.value.filter((x) => !S(x)).length;
|
|
7788
7799
|
d.size >= T && i("tiles-loaded", !0);
|
|
7789
|
-
}, _ =
|
|
7800
|
+
}, _ = b(() => {
|
|
7790
7801
|
const T = `renderer.trendRange.${ne.value.type === "absolute" ? "custom" : ne.value.time_range}`;
|
|
7791
7802
|
return r.te(T) ? r.t(T) : "";
|
|
7792
7803
|
}), A = (w, T) => {
|
|
7793
|
-
const
|
|
7794
|
-
return
|
|
7795
|
-
}, N =
|
|
7804
|
+
const x = w.layout.position.row - T.layout.position.row;
|
|
7805
|
+
return x !== 0 ? x : w.layout.position.col - T.layout.position.col;
|
|
7806
|
+
}, N = b(() => n.value.tiles.map((w) => {
|
|
7796
7807
|
if (be.value && !w.id && console.warn(
|
|
7797
7808
|
"No id provided for tile. One will be generated automatically,",
|
|
7798
7809
|
"however tracking changes to this tile may not work as expected.",
|
|
@@ -7804,14 +7815,14 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7804
7815
|
id: w.id ?? crypto.randomUUID()
|
|
7805
7816
|
};
|
|
7806
7817
|
let T = w.definition;
|
|
7807
|
-
const
|
|
7818
|
+
const x = w.type ?? "chart", X = Ao(T, _.value);
|
|
7808
7819
|
return X !== T.header_description && (T = {
|
|
7809
7820
|
...T,
|
|
7810
7821
|
header_description: X
|
|
7811
7822
|
}), {
|
|
7812
7823
|
layout: w.layout,
|
|
7813
7824
|
meta: T,
|
|
7814
|
-
type:
|
|
7825
|
+
type: x,
|
|
7815
7826
|
// Add a unique key to each tile internally.
|
|
7816
7827
|
id: w.id ?? crypto.randomUUID()
|
|
7817
7828
|
};
|
|
@@ -7824,7 +7835,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7824
7835
|
return T && O(T) ? T.id : void 0;
|
|
7825
7836
|
}, W = (w) => {
|
|
7826
7837
|
try {
|
|
7827
|
-
const T =
|
|
7838
|
+
const T = ja(w);
|
|
7828
7839
|
n.value.tiles.push(JSON.parse(JSON.stringify(T)));
|
|
7829
7840
|
} catch (T) {
|
|
7830
7841
|
console.warn(T);
|
|
@@ -7834,27 +7845,27 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7834
7845
|
}, f = () => {
|
|
7835
7846
|
d.clear(), o.value++;
|
|
7836
7847
|
}, g = (w) => {
|
|
7837
|
-
const T = w.map((
|
|
7838
|
-
id:
|
|
7839
|
-
type:
|
|
7840
|
-
layout:
|
|
7848
|
+
const T = w.map((x) => x.type === "slottable" ? {
|
|
7849
|
+
id: x.id,
|
|
7850
|
+
type: x.type,
|
|
7851
|
+
layout: x.layout
|
|
7841
7852
|
} : {
|
|
7842
|
-
id:
|
|
7843
|
-
type:
|
|
7844
|
-
layout:
|
|
7845
|
-
definition:
|
|
7853
|
+
id: x.id,
|
|
7854
|
+
type: x.type,
|
|
7855
|
+
layout: x.layout,
|
|
7856
|
+
definition: x.meta
|
|
7846
7857
|
});
|
|
7847
7858
|
n.value.tiles = T.sort(A);
|
|
7848
7859
|
}, C = async () => {
|
|
7849
|
-
if (u.value = "scale(1)", await
|
|
7850
|
-
const { availWidth: w, availHeight: T } = window.screen, { width:
|
|
7860
|
+
if (u.value = "scale(1)", await Jt(), l.value) {
|
|
7861
|
+
const { availWidth: w, availHeight: T } = window.screen, { width: x, height: X } = l.value.getBoundingClientRect(), K = Math.min(T / X, w / x);
|
|
7851
7862
|
u.value = `scale(${K})`;
|
|
7852
7863
|
}
|
|
7853
7864
|
}, k = () => {
|
|
7854
7865
|
c.value && (document.fullscreenElement ? document.exitFullscreen() : c.value.requestFullscreen());
|
|
7855
|
-
}, I = Q(!1),
|
|
7866
|
+
}, I = Q(!1), oe = () => {
|
|
7856
7867
|
I.value = document.fullscreenElement !== null, I.value && C();
|
|
7857
|
-
}, we =
|
|
7868
|
+
}, we = b(() => n.value.preset_filters ?? []), {
|
|
7858
7869
|
editable: be,
|
|
7859
7870
|
enrichedContext: J,
|
|
7860
7871
|
queryReady: le,
|
|
@@ -7862,9 +7873,9 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7862
7873
|
timeSpec: ne
|
|
7863
7874
|
} = Ee.useDashboardContext({
|
|
7864
7875
|
globalFilters: we,
|
|
7865
|
-
context:
|
|
7876
|
+
context: b(() => s.context),
|
|
7866
7877
|
isFullscreen: I,
|
|
7867
|
-
preview:
|
|
7878
|
+
preview: b(() => s.preview)
|
|
7868
7879
|
});
|
|
7869
7880
|
return e({
|
|
7870
7881
|
refresh: f,
|
|
@@ -7872,22 +7883,22 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7872
7883
|
exportPdf: y,
|
|
7873
7884
|
pdfExportState: v
|
|
7874
7885
|
}), (w, T) => {
|
|
7875
|
-
const
|
|
7886
|
+
const x = ve("KAlert");
|
|
7876
7887
|
return z(), se("div", {
|
|
7877
7888
|
ref_key: "dashboardContainer",
|
|
7878
7889
|
ref: c,
|
|
7879
|
-
class:
|
|
7880
|
-
onFullscreenchange:
|
|
7890
|
+
class: rt(["kong-ui-public-dashboard-renderer", { "is-fullscreen": I.value }]),
|
|
7891
|
+
onFullscreenchange: oe
|
|
7881
7892
|
}, [
|
|
7882
7893
|
ue("div", {
|
|
7883
7894
|
ref_key: "layoutContainer",
|
|
7884
7895
|
ref: l,
|
|
7885
7896
|
class: "layout"
|
|
7886
7897
|
}, [
|
|
7887
|
-
D(h) && I.value ? (z(), se("div",
|
|
7888
|
-
|
|
7889
|
-
])) :
|
|
7890
|
-
D(h) ? (z(), B(
|
|
7898
|
+
D(h) && I.value ? (z(), se("div", Ka, [
|
|
7899
|
+
et(w.$slots, "fullscreenHeader", {}, void 0, !0)
|
|
7900
|
+
])) : fe("", !0),
|
|
7901
|
+
D(h) ? (z(), B(as(D(be) && !I.value ? Ya : Pa), {
|
|
7891
7902
|
key: 2,
|
|
7892
7903
|
ref_key: "gridLayoutRef",
|
|
7893
7904
|
ref: a,
|
|
@@ -7897,16 +7908,16 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7897
7908
|
onUpdateTiles: g
|
|
7898
7909
|
}, {
|
|
7899
7910
|
tile: U(({ tile: X }) => [
|
|
7900
|
-
S(X) ? (z(), se("div",
|
|
7901
|
-
|
|
7902
|
-
])) : (z(), B(
|
|
7911
|
+
S(X) ? (z(), se("div", Qa, [
|
|
7912
|
+
et(w.$slots, $(X), {}, void 0, !0)
|
|
7913
|
+
])) : (z(), B(Ms, {
|
|
7903
7914
|
key: I.value ? `${X.id}-tile` : `${X.id}-tile-fullscreen`,
|
|
7904
7915
|
"refresh-counter": o.value,
|
|
7905
7916
|
"onUpdate:refreshCounter": T[0] || (T[0] = (K) => o.value = K),
|
|
7906
7917
|
class: "tile-container",
|
|
7907
7918
|
context: D(J),
|
|
7908
7919
|
definition: X.meta,
|
|
7909
|
-
height: X.layout.size.rows * (n.value.tile_height || D(
|
|
7920
|
+
height: X.layout.size.rows * (n.value.tile_height || D(yt)) + parseInt(D(bs), 10),
|
|
7910
7921
|
"hide-actions": !D(H),
|
|
7911
7922
|
"is-fullscreen": I.value,
|
|
7912
7923
|
preview: s.preview,
|
|
@@ -7921,12 +7932,12 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7921
7932
|
}, null, 8, ["refresh-counter", "context", "definition", "height", "hide-actions", "is-fullscreen", "preview", "query-ready", "tile-id", "tile-type", "onDuplicateTile", "onEditTile", "onRemoveTile", "onTileLoaded"]))
|
|
7922
7933
|
]),
|
|
7923
7934
|
_: 3
|
|
7924
|
-
}, 40, ["columns", "tile-height", "tiles"])) : (z(), B(
|
|
7935
|
+
}, 40, ["columns", "tile-height", "tiles"])) : (z(), B(x, {
|
|
7925
7936
|
key: 1,
|
|
7926
7937
|
appearance: "danger"
|
|
7927
7938
|
}, {
|
|
7928
7939
|
default: U(() => [
|
|
7929
|
-
|
|
7940
|
+
Je(ie(D(r).t("renderer.noQueryBridge")), 1)
|
|
7930
7941
|
]),
|
|
7931
7942
|
_: 1
|
|
7932
7943
|
}))
|
|
@@ -7934,7 +7945,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7934
7945
|
], 34);
|
|
7935
7946
|
};
|
|
7936
7947
|
}
|
|
7937
|
-
}),
|
|
7948
|
+
}), dl = /* @__PURE__ */ $e(Xa, [["__scopeId", "data-v-b6240c23"]]), hl = /* @__PURE__ */ _e({
|
|
7938
7949
|
__name: "DashboardTilePreview",
|
|
7939
7950
|
props: {
|
|
7940
7951
|
context: {},
|
|
@@ -7944,25 +7955,25 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7944
7955
|
},
|
|
7945
7956
|
emits: ["chart-data", "tile-time-range-zoom", "tile-bounds-change"],
|
|
7946
7957
|
setup(s, { expose: e, emit: t }) {
|
|
7947
|
-
const i =
|
|
7958
|
+
const i = ci("root"), n = ci("dashboard-tile"), r = crypto.randomUUID(), o = t, a = (E) => {
|
|
7948
7959
|
o("tile-time-range-zoom", E);
|
|
7949
7960
|
}, c = (E) => {
|
|
7950
7961
|
o("chart-data", E);
|
|
7951
7962
|
}, l = (E) => {
|
|
7952
7963
|
o("tile-bounds-change", E);
|
|
7953
7964
|
}, { i18n: u } = Ee.useI18n(), { enrichedContext: d, queryReady: h } = Ee.useDashboardContext({
|
|
7954
|
-
globalFilters:
|
|
7955
|
-
context:
|
|
7956
|
-
preview:
|
|
7957
|
-
}), y =
|
|
7965
|
+
globalFilters: dt(() => s.globalFilters),
|
|
7966
|
+
context: dt(() => s.context),
|
|
7967
|
+
preview: b(() => s.preview)
|
|
7968
|
+
}), y = b(() => Pe(s.definition)), v = b(() => y.value ? "columns" in s.definition.query && !s.definition.query.columns?.length : !("metrics" in s.definition.query) || !s.definition.query.metrics || s.definition.query.metrics.length === 0), R = Q(yt);
|
|
7958
7969
|
let _;
|
|
7959
|
-
|
|
7970
|
+
zt(() => {
|
|
7960
7971
|
const E = i.value?.parentElement;
|
|
7961
7972
|
E && (R.value = E.getBoundingClientRect().height, _ = new ResizeObserver(([S]) => {
|
|
7962
7973
|
const { height: O } = S.contentRect;
|
|
7963
7974
|
R.value = O;
|
|
7964
7975
|
}), _.observe(E));
|
|
7965
|
-
}),
|
|
7976
|
+
}), at(() => _?.disconnect());
|
|
7966
7977
|
const A = Q(0);
|
|
7967
7978
|
return e({
|
|
7968
7979
|
refresh: () => {
|
|
@@ -7988,7 +7999,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
7988
7999
|
ue("p", null, ie(D(u).t("renderer.not_configured.description")), 1)
|
|
7989
8000
|
]),
|
|
7990
8001
|
_: 1
|
|
7991
|
-
})) : (z(), B(
|
|
8002
|
+
})) : (z(), B(Ms, {
|
|
7992
8003
|
key: 1,
|
|
7993
8004
|
ref: "dashboard-tile",
|
|
7994
8005
|
"refresh-counter": A.value,
|
|
@@ -8011,7 +8022,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
8011
8022
|
], 512);
|
|
8012
8023
|
};
|
|
8013
8024
|
}
|
|
8014
|
-
}),
|
|
8025
|
+
}), Va = (s) => {
|
|
8015
8026
|
if (s.type !== "chart")
|
|
8016
8027
|
return s;
|
|
8017
8028
|
const e = s.definition?.query;
|
|
@@ -8022,7 +8033,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
8022
8033
|
return;
|
|
8023
8034
|
}
|
|
8024
8035
|
return s;
|
|
8025
|
-
},
|
|
8036
|
+
}, Za = (s) => {
|
|
8026
8037
|
if (s.type !== "chart" || Pe(s.definition))
|
|
8027
8038
|
return s;
|
|
8028
8039
|
const e = s.definition?.query;
|
|
@@ -8039,7 +8050,7 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
8039
8050
|
query: t
|
|
8040
8051
|
}
|
|
8041
8052
|
};
|
|
8042
|
-
},
|
|
8053
|
+
}, Ja = (s, e = ni) => {
|
|
8043
8054
|
if (!s.length)
|
|
8044
8055
|
return [];
|
|
8045
8056
|
let t = 0, i = 0, n = 0;
|
|
@@ -8061,37 +8072,37 @@ const Ua = ["data-id", "data-testid", "gs-h", "gs-w", "gs-x", "gs-y"], Ba = { cl
|
|
|
8061
8072
|
r.push(l), i += a, n = Math.max(n, c);
|
|
8062
8073
|
}
|
|
8063
8074
|
return r;
|
|
8064
|
-
},
|
|
8075
|
+
}, fl = (s, e) => {
|
|
8065
8076
|
if (e) {
|
|
8066
|
-
const n = s.tiles.map(
|
|
8077
|
+
const n = s.tiles.map(Za);
|
|
8067
8078
|
return {
|
|
8068
8079
|
...s,
|
|
8069
8080
|
tiles: n
|
|
8070
8081
|
};
|
|
8071
8082
|
}
|
|
8072
|
-
const t = s.tiles.map(
|
|
8083
|
+
const t = s.tiles.map(Va).filter((n) => n !== void 0), i = Ja(t, s.columns);
|
|
8073
8084
|
return {
|
|
8074
8085
|
...s,
|
|
8075
8086
|
tiles: i
|
|
8076
8087
|
};
|
|
8077
8088
|
};
|
|
8078
8089
|
export {
|
|
8079
|
-
|
|
8080
|
-
|
|
8081
|
-
|
|
8082
|
-
|
|
8083
|
-
|
|
8090
|
+
ho as C,
|
|
8091
|
+
ni as D,
|
|
8092
|
+
Fi as E,
|
|
8093
|
+
go as F,
|
|
8094
|
+
Pa as G,
|
|
8084
8095
|
He as I,
|
|
8085
|
-
|
|
8086
|
-
|
|
8087
|
-
|
|
8088
|
-
|
|
8089
|
-
|
|
8090
|
-
|
|
8091
|
-
|
|
8092
|
-
|
|
8093
|
-
|
|
8094
|
-
|
|
8095
|
-
|
|
8096
|
-
|
|
8096
|
+
fo as T,
|
|
8097
|
+
Mt as _,
|
|
8098
|
+
ia as a,
|
|
8099
|
+
yt as b,
|
|
8100
|
+
mo as c,
|
|
8101
|
+
dl as d,
|
|
8102
|
+
hl as e,
|
|
8103
|
+
po as f,
|
|
8104
|
+
fl as g,
|
|
8105
|
+
Rs as h,
|
|
8106
|
+
ks as i,
|
|
8107
|
+
Ts as l
|
|
8097
8108
|
};
|