vercel 54.14.0 → 54.14.1
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/chunks/{add-PVEKZBHH.js → add-INSQH24S.js} +7 -7
- package/dist/chunks/{chunk-FPRA7U2P.js → chunk-467YGYFK.js} +1 -1
- package/dist/chunks/{chunk-6K3WJDFA.js → chunk-4WQGP4Z4.js} +9 -9
- package/dist/chunks/{chunk-V4GROAUJ.js → chunk-5QKYBWW2.js} +4 -7
- package/dist/chunks/chunk-64IF634X.js +18 -0
- package/dist/chunks/{chunk-V2WFM23D.js → chunk-74VEZPM6.js} +1 -1
- package/dist/chunks/{chunk-5SYDEK2N.js → chunk-D7MGZH35.js} +1 -1
- package/dist/chunks/{chunk-Y76J3TGD.js → chunk-DAKMPPIS.js} +1 -1
- package/dist/chunks/{chunk-KJ5O7JQQ.js → chunk-F4WXNECT.js} +27 -60
- package/dist/chunks/{chunk-RWJORLQP.js → chunk-F6SCQ6XU.js} +58 -16
- package/dist/chunks/{chunk-7CJZCFLW.js → chunk-FKNOCLZU.js} +2 -2
- package/dist/chunks/{chunk-CO5D46AG.js → chunk-GGP5R3FU.js} +18 -38
- package/dist/chunks/{chunk-J5273CSE.js → chunk-HIYWSGI7.js} +19 -10
- package/dist/chunks/{chunk-TH555JND.js → chunk-J4LCBXF2.js} +14 -41
- package/dist/chunks/{chunk-ABOX5TXU.js → chunk-L7U3Z7E4.js} +3 -3
- package/dist/chunks/{chunk-7OZWGXPA.js → chunk-MKB32SJZ.js} +2 -2
- package/dist/chunks/{chunk-4KAFHBYE.js → chunk-NMGGBH7K.js} +1 -1
- package/dist/chunks/{chunk-C3VH3X5Y.js → chunk-P2AMQX7F.js} +3 -3
- package/dist/chunks/{chunk-6D6CSOSK.js → chunk-P6VIXOWO.js} +84 -60
- package/dist/chunks/{chunk-PV533MBH.js → chunk-PMUUPCDL.js} +1 -1
- package/dist/chunks/{chunk-S4VHXL2Y.js → chunk-TVBXGFEL.js} +1 -1
- package/dist/chunks/{chunk-G7QWUIGS.js → chunk-UEFCAT3N.js} +2 -2
- package/dist/chunks/{chunk-OEM7RB3X.js → chunk-UJ3ZCBUA.js} +1 -1
- package/dist/chunks/{chunk-VNUNCNPE.js → chunk-UPI3OHBK.js} +1 -1
- package/dist/chunks/chunk-VXYGCOKL.js +28 -0
- package/dist/chunks/{chunk-5UCWXYNH.js → chunk-XLLAD5DR.js} +87 -45
- package/dist/chunks/{chunk-Z7KOKD2G.js → chunk-YQPAAXUU.js} +1 -1
- package/dist/chunks/{chunk-B6C7NMT3.js → chunk-Z2MBXYZZ.js} +1 -1
- package/dist/chunks/{chunk-DAASB6YQ.js → chunk-ZRJQY3VK.js} +22 -2
- package/dist/chunks/{compile-vercel-config-MD37D2F7.js → compile-vercel-config-VPPGDFKL.js} +3 -3
- package/dist/chunks/{delete-6EMDCXSA.js → delete-O3EHQHYD.js} +8 -6
- package/dist/chunks/{disable-FLJ27NHG.js → disable-GJDQC34I.js} +8 -6
- package/dist/chunks/{discard-KEIII6RM.js → discard-UZT23XN2.js} +8 -6
- package/dist/chunks/{edit-DOL2ZJPG.js → edit-PEQIROSE.js} +10 -8
- package/dist/chunks/{enable-PZWZIETT.js → enable-ACNEAJ5S.js} +8 -6
- package/dist/chunks/{export-2PFHAELC.js → export-ZICIQKHJ.js} +4 -4
- package/dist/chunks/{inspect-WPWOZJ2K.js → inspect-PUFF7LND.js} +6 -6
- package/dist/chunks/{list-4R5DCLTB.js → list-FWUV4NO4.js} +5 -5
- package/dist/chunks/{list-ZT7QK2H7.js → list-L2UFHHQ7.js} +7 -7
- package/dist/chunks/{ls-4JTXQXMQ.js → ls-6HVFGIQS.js} +7 -7
- package/dist/chunks/{publish-JV4J3SOA.js → publish-HKTAQMYG.js} +8 -6
- package/dist/chunks/{query-N22EYSZZ.js → query-VQ5HDMFO.js} +97 -41
- package/dist/chunks/{reorder-TG53BKW4.js → reorder-CVMW6VL7.js} +8 -6
- package/dist/chunks/{restore-U7O4VESA.js → restore-32NXH4EH.js} +8 -6
- package/dist/chunks/{rm-XA4LYZXI.js → rm-7TPDWMJZ.js} +7 -7
- package/dist/chunks/{routes-EAMQVFU2.js → routes-YEU33SON.js} +2 -2
- package/dist/chunks/{rule-inspect-HC745CYT.js → rule-inspect-PQORU3SU.js} +7 -7
- package/dist/chunks/{rules-RMN72YHN.js → rules-VIITOYFN.js} +6 -6
- package/dist/chunks/{schema-CZVKUXM6.js → schema-AECGMSF5.js} +6 -6
- package/dist/chunks/{stamp-ENIXDCRO.js → stamp-AA7R3MZS.js} +3 -1
- package/dist/chunks/{update-PU3WLIA7.js → update-J4QCT3GS.js} +7 -7
- package/dist/commands/build/index.js +16 -14
- package/dist/commands/deploy/index.js +22 -163
- package/dist/commands/dev/index.js +13 -14
- package/dist/commands/env/index.js +153 -92
- package/dist/commands/link/index.js +11 -11
- package/dist/commands/list/index.js +10 -8
- package/dist/commands-bulk.js +222 -85
- package/dist/index.js +18 -18
- package/dist/version.mjs +1 -1
- package/package.json +16 -16
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
validateIntegerRangeWithDefault,
|
|
13
13
|
validateTimeBound,
|
|
14
14
|
validateTimeOrder
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-D7MGZH35.js";
|
|
16
16
|
import {
|
|
17
17
|
getCommandFlags
|
|
18
18
|
} from "./chunk-EOZFDJSY.js";
|
|
@@ -24,15 +24,15 @@ import {
|
|
|
24
24
|
} from "./chunk-FMN3NXRC.js";
|
|
25
25
|
import {
|
|
26
26
|
getScope
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-YQPAAXUU.js";
|
|
28
28
|
import {
|
|
29
29
|
getLinkedProject,
|
|
30
30
|
getProjectByNameOrId
|
|
31
|
-
} from "./chunk-
|
|
32
|
-
import "./chunk-
|
|
31
|
+
} from "./chunk-XLLAD5DR.js";
|
|
32
|
+
import "./chunk-HIYWSGI7.js";
|
|
33
33
|
import "./chunk-NHGCQRK5.js";
|
|
34
|
-
import "./chunk-CO5D46AG.js";
|
|
35
34
|
import "./chunk-N2T234LO.js";
|
|
35
|
+
import "./chunk-GGP5R3FU.js";
|
|
36
36
|
import {
|
|
37
37
|
getFlagsSpecification,
|
|
38
38
|
parseArguments,
|
|
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
|
|
|
6
6
|
const __dirname = __dirname_(__filename);
|
|
7
7
|
import {
|
|
8
8
|
resolveAlertsScope
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-L7U3Z7E4.js";
|
|
10
10
|
import {
|
|
11
11
|
handleValidationError,
|
|
12
12
|
normalizeRepeatableStringFilters,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
validateOptionalIntegerRange,
|
|
16
16
|
validateTimeBound,
|
|
17
17
|
validateTimeOrder
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-D7MGZH35.js";
|
|
19
19
|
import {
|
|
20
20
|
validateJsonOutput
|
|
21
21
|
} from "./chunk-XPKWKPWA.js";
|
|
@@ -26,18 +26,18 @@ import "./chunk-NGRSQRSN.js";
|
|
|
26
26
|
import {
|
|
27
27
|
AGENT_REASON
|
|
28
28
|
} from "./chunk-LJ5WXXG6.js";
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-YQPAAXUU.js";
|
|
30
|
+
import "./chunk-XLLAD5DR.js";
|
|
31
|
+
import "./chunk-HIYWSGI7.js";
|
|
32
32
|
import {
|
|
33
33
|
buildCommandWithGlobalFlags,
|
|
34
34
|
outputAgentError,
|
|
35
35
|
shouldEmitNonInteractiveCommandError
|
|
36
36
|
} from "./chunk-NHGCQRK5.js";
|
|
37
|
+
import "./chunk-N2T234LO.js";
|
|
37
38
|
import {
|
|
38
39
|
require_ms
|
|
39
|
-
} from "./chunk-
|
|
40
|
-
import "./chunk-N2T234LO.js";
|
|
40
|
+
} from "./chunk-GGP5R3FU.js";
|
|
41
41
|
import {
|
|
42
42
|
table
|
|
43
43
|
} from "./chunk-4NDOMD3E.js";
|
|
@@ -9,9 +9,9 @@ import {
|
|
|
9
9
|
handleRulesApiError,
|
|
10
10
|
parseRulesFlagsAndScope,
|
|
11
11
|
rulesCollectionPath
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-MKB32SJZ.js";
|
|
13
|
+
import "./chunk-L7U3Z7E4.js";
|
|
14
|
+
import "./chunk-D7MGZH35.js";
|
|
15
15
|
import {
|
|
16
16
|
validateJsonOutput
|
|
17
17
|
} from "./chunk-XPKWKPWA.js";
|
|
@@ -21,14 +21,14 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
AGENT_REASON
|
|
23
23
|
} from "./chunk-LJ5WXXG6.js";
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-YQPAAXUU.js";
|
|
25
|
+
import "./chunk-XLLAD5DR.js";
|
|
26
|
+
import "./chunk-HIYWSGI7.js";
|
|
27
27
|
import {
|
|
28
28
|
outputAgentError
|
|
29
29
|
} from "./chunk-NHGCQRK5.js";
|
|
30
|
-
import "./chunk-CO5D46AG.js";
|
|
31
30
|
import "./chunk-N2T234LO.js";
|
|
31
|
+
import "./chunk-GGP5R3FU.js";
|
|
32
32
|
import {
|
|
33
33
|
getFlagsSpecification,
|
|
34
34
|
parseArguments,
|
|
@@ -17,20 +17,22 @@ import {
|
|
|
17
17
|
parseSubcommandArgs,
|
|
18
18
|
printDiffSummary,
|
|
19
19
|
withGlobalFlags
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-UEFCAT3N.js";
|
|
21
21
|
import {
|
|
22
22
|
publishSubcommand
|
|
23
23
|
} from "./chunk-WFRHKZFI.js";
|
|
24
|
+
import {
|
|
25
|
+
stamp_default
|
|
26
|
+
} from "./chunk-64IF634X.js";
|
|
27
|
+
import "./chunk-VXYGCOKL.js";
|
|
24
28
|
import "./chunk-LJ5WXXG6.js";
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-XLLAD5DR.js";
|
|
30
|
+
import "./chunk-HIYWSGI7.js";
|
|
27
31
|
import {
|
|
28
32
|
outputAgentError
|
|
29
33
|
} from "./chunk-NHGCQRK5.js";
|
|
30
|
-
import {
|
|
31
|
-
stamp_default
|
|
32
|
-
} from "./chunk-CO5D46AG.js";
|
|
33
34
|
import "./chunk-N2T234LO.js";
|
|
35
|
+
import "./chunk-GGP5R3FU.js";
|
|
34
36
|
import "./chunk-6IQZVQV6.js";
|
|
35
37
|
import {
|
|
36
38
|
getCommandName
|
|
@@ -11,33 +11,33 @@ import {
|
|
|
11
11
|
getDefaultAggregation,
|
|
12
12
|
getRollupColumnName,
|
|
13
13
|
handleApiError
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-Z2MBXYZZ.js";
|
|
15
15
|
import {
|
|
16
16
|
indent_default
|
|
17
17
|
} from "./chunk-A3NYPUKZ.js";
|
|
18
18
|
import {
|
|
19
19
|
resolveTimeRange,
|
|
20
20
|
validateAllProjectMutualExclusivity
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-D7MGZH35.js";
|
|
22
22
|
import {
|
|
23
23
|
validateJsonOutput
|
|
24
24
|
} from "./chunk-XPKWKPWA.js";
|
|
25
25
|
import {
|
|
26
26
|
metricsCommand
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-ZRJQY3VK.js";
|
|
28
28
|
import {
|
|
29
29
|
getScope
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-YQPAAXUU.js";
|
|
31
31
|
import {
|
|
32
32
|
getLinkedProject,
|
|
33
33
|
getProjectByNameOrId
|
|
34
|
-
} from "./chunk-
|
|
35
|
-
import "./chunk-
|
|
34
|
+
} from "./chunk-XLLAD5DR.js";
|
|
35
|
+
import "./chunk-HIYWSGI7.js";
|
|
36
36
|
import "./chunk-NHGCQRK5.js";
|
|
37
|
+
import "./chunk-N2T234LO.js";
|
|
37
38
|
import {
|
|
38
39
|
require_ms
|
|
39
|
-
} from "./chunk-
|
|
40
|
-
import "./chunk-N2T234LO.js";
|
|
40
|
+
} from "./chunk-GGP5R3FU.js";
|
|
41
41
|
import {
|
|
42
42
|
table
|
|
43
43
|
} from "./chunk-4NDOMD3E.js";
|
|
@@ -161,15 +161,6 @@ function computeGranularity(rangeMs, explicit) {
|
|
|
161
161
|
adjusted: false
|
|
162
162
|
};
|
|
163
163
|
}
|
|
164
|
-
function roundTimeBoundaries(start, end, granularityMs) {
|
|
165
|
-
const flooredStart = new Date(
|
|
166
|
-
Math.floor(start.getTime() / granularityMs) * granularityMs
|
|
167
|
-
);
|
|
168
|
-
const ceiledEnd = new Date(
|
|
169
|
-
Math.ceil(end.getTime() / granularityMs) * granularityMs
|
|
170
|
-
);
|
|
171
|
-
return { start: flooredStart, end: ceiledEnd };
|
|
172
|
-
}
|
|
173
164
|
function toGranularityMsFromDuration(duration) {
|
|
174
165
|
if ("minutes" in duration) {
|
|
175
166
|
return duration.minutes * MINUTE_MS;
|
|
@@ -199,6 +190,10 @@ var MISSING_CHAR = "\xB7";
|
|
|
199
190
|
function normalizeUnit(unit) {
|
|
200
191
|
return unit.trim().toLowerCase().replace(/[_\s]+/g, " ");
|
|
201
192
|
}
|
|
193
|
+
function isAggregationWithDimension(aggregation) {
|
|
194
|
+
const [, dimension] = aggregation.split("/");
|
|
195
|
+
return Boolean(dimension);
|
|
196
|
+
}
|
|
202
197
|
function toGroupKey(groupValues) {
|
|
203
198
|
if (groupValues.length === 0) {
|
|
204
199
|
return "";
|
|
@@ -338,6 +333,30 @@ function buildExpectedTimestamps(periodStart, periodEnd, granularityMs) {
|
|
|
338
333
|
}
|
|
339
334
|
return timestamps;
|
|
340
335
|
}
|
|
336
|
+
function buildObservedTimestamps(observedTimestamps, granularityMs) {
|
|
337
|
+
const timestamps = [...observedTimestamps].map((timestamp) => Date.parse(timestamp)).filter(Number.isFinite).sort((a, b) => a - b);
|
|
338
|
+
if (timestamps.length === 0 || granularityMs <= 0) {
|
|
339
|
+
return [];
|
|
340
|
+
}
|
|
341
|
+
const start = timestamps[0];
|
|
342
|
+
const end = timestamps[timestamps.length - 1] + granularityMs;
|
|
343
|
+
return buildExpectedTimestamps(
|
|
344
|
+
new Date(start).toISOString(),
|
|
345
|
+
new Date(end).toISOString(),
|
|
346
|
+
granularityMs
|
|
347
|
+
);
|
|
348
|
+
}
|
|
349
|
+
function buildSeriesTimestamps(periodStart, periodEnd, granularityMs, observedTimestamps) {
|
|
350
|
+
const expectedTimestamps = buildExpectedTimestamps(
|
|
351
|
+
periodStart,
|
|
352
|
+
periodEnd,
|
|
353
|
+
granularityMs
|
|
354
|
+
);
|
|
355
|
+
if (observedTimestamps.size === 0 || expectedTimestamps.some((timestamp) => observedTimestamps.has(timestamp))) {
|
|
356
|
+
return expectedTimestamps;
|
|
357
|
+
}
|
|
358
|
+
return buildObservedTimestamps(observedTimestamps, granularityMs);
|
|
359
|
+
}
|
|
341
360
|
function getMeasureType(unit) {
|
|
342
361
|
const normalized = normalizeUnit(unit);
|
|
343
362
|
if (COUNT_UNITS.has(normalized)) {
|
|
@@ -387,14 +406,10 @@ function formatMinMaxTimestamp(date, periodStart, periodEnd) {
|
|
|
387
406
|
return `${pad4(date.getUTCFullYear())}-${pad2(date.getUTCMonth() + 1)}-${pad2(date.getUTCDate())} ${pad2(date.getUTCHours())}:${pad2(date.getUTCMinutes())}`;
|
|
388
407
|
}
|
|
389
408
|
function extractGroupedSeries(data, groupBy, rollupColumn, periodStart, periodEnd, granularityMs) {
|
|
390
|
-
const expectedTimestamps = buildExpectedTimestamps(
|
|
391
|
-
periodStart,
|
|
392
|
-
periodEnd,
|
|
393
|
-
granularityMs
|
|
394
|
-
);
|
|
395
409
|
const groups = [];
|
|
396
410
|
const groupValues = /* @__PURE__ */ new Map();
|
|
397
411
|
const valueByGroup = /* @__PURE__ */ new Map();
|
|
412
|
+
const observedTimestamps = /* @__PURE__ */ new Set();
|
|
398
413
|
for (const row of data) {
|
|
399
414
|
const values = groupBy.map((field) => getGroupFieldValue(row, field));
|
|
400
415
|
const key = toGroupKey(values);
|
|
@@ -411,9 +426,16 @@ function extractGroupedSeries(data, groupBy, rollupColumn, periodStart, periodEn
|
|
|
411
426
|
if (!timestamp) {
|
|
412
427
|
continue;
|
|
413
428
|
}
|
|
429
|
+
observedTimestamps.add(timestamp);
|
|
414
430
|
const numeric = toNumericValue(row[rollupColumn]);
|
|
415
431
|
groupMap.set(timestamp, numeric);
|
|
416
432
|
}
|
|
433
|
+
const expectedTimestamps = buildSeriesTimestamps(
|
|
434
|
+
periodStart,
|
|
435
|
+
periodEnd,
|
|
436
|
+
granularityMs,
|
|
437
|
+
observedTimestamps
|
|
438
|
+
);
|
|
417
439
|
const series = /* @__PURE__ */ new Map();
|
|
418
440
|
for (const key of groups) {
|
|
419
441
|
const byTimestamp = valueByGroup.get(key);
|
|
@@ -527,14 +549,27 @@ function formatMetadataHeader(opts) {
|
|
|
527
549
|
value: `${opts.metric} ${opts.aggregation}`
|
|
528
550
|
},
|
|
529
551
|
{
|
|
552
|
+
// Period bounds are always UTC; annotate them so the boundary is
|
|
553
|
+
// unambiguous when the Interval below reports a different
|
|
554
|
+
// --bucket-timezone.
|
|
530
555
|
key: "Period",
|
|
531
|
-
value: `${formatPeriodBound(opts.periodStart)} to ${formatPeriodBound(opts.periodEnd)}`
|
|
556
|
+
value: `${formatPeriodBound(opts.periodStart)} to ${formatPeriodBound(opts.periodEnd)} (UTC)`
|
|
532
557
|
},
|
|
533
558
|
{
|
|
559
|
+
// Period bounds are always UTC; the timezone only controls calendar
|
|
560
|
+
// bucket alignment, which is a no-op below 1d granularity. Annotate the
|
|
561
|
+
// interval (instead of a standalone Timezone row) to avoid implying the
|
|
562
|
+
// period itself is zone-local.
|
|
534
563
|
key: "Interval",
|
|
535
|
-
value: formatGranularity(opts.granularity)
|
|
564
|
+
value: "days" in opts.granularity ? `${formatGranularity(opts.granularity)} (${opts.bucketTimezone ?? "UTC"})` : formatGranularity(opts.granularity)
|
|
536
565
|
}
|
|
537
566
|
];
|
|
567
|
+
if (typeof opts.periodUnique === "number") {
|
|
568
|
+
rows.push({
|
|
569
|
+
key: "Unique (period)",
|
|
570
|
+
value: formatCount(opts.periodUnique)
|
|
571
|
+
});
|
|
572
|
+
}
|
|
538
573
|
if (opts.filter) {
|
|
539
574
|
rows.push({ key: "Filter", value: opts.filter });
|
|
540
575
|
}
|
|
@@ -630,6 +665,9 @@ function formatSparklineSection(groupRows, sparklines, groupByFields) {
|
|
|
630
665
|
return lines.join("\n");
|
|
631
666
|
}
|
|
632
667
|
function getEffectiveDisplay(baseUnit, aggregation) {
|
|
668
|
+
if (isAggregationWithDimension(aggregation)) {
|
|
669
|
+
return { displayUnit: void 0, measureType: "count" };
|
|
670
|
+
}
|
|
633
671
|
switch (aggregation) {
|
|
634
672
|
case "percent":
|
|
635
673
|
return { displayUnit: "%", measureType: "ratio" };
|
|
@@ -640,8 +678,6 @@ function getEffectiveDisplay(baseUnit, aggregation) {
|
|
|
640
678
|
measureType: getMeasureType(baseUnit ?? "ratio")
|
|
641
679
|
};
|
|
642
680
|
}
|
|
643
|
-
case "unique":
|
|
644
|
-
return { displayUnit: void 0, measureType: "count" };
|
|
645
681
|
default:
|
|
646
682
|
return {
|
|
647
683
|
displayUnit: baseUnit,
|
|
@@ -664,12 +700,21 @@ function formatText(response, opts) {
|
|
|
664
700
|
opts.periodEnd,
|
|
665
701
|
granularityMs
|
|
666
702
|
);
|
|
703
|
+
let periodUnique;
|
|
704
|
+
if (isAggregationWithDimension(opts.aggregation) && opts.groupBy.length === 0) {
|
|
705
|
+
const summaryValue = toNumericValue(response.summary?.[0]?.[rollupColumn]);
|
|
706
|
+
if (summaryValue !== null) {
|
|
707
|
+
periodUnique = summaryValue;
|
|
708
|
+
}
|
|
709
|
+
}
|
|
667
710
|
const metadata = formatMetadataHeader({
|
|
668
711
|
metric: opts.metric,
|
|
669
712
|
aggregation: opts.aggregation,
|
|
670
713
|
periodStart: opts.periodStart,
|
|
671
714
|
periodEnd: opts.periodEnd,
|
|
672
715
|
granularity: opts.granularity,
|
|
716
|
+
periodUnique,
|
|
717
|
+
bucketTimezone: opts.bucketTimezone,
|
|
673
718
|
filter: opts.filter,
|
|
674
719
|
scope: opts.scope,
|
|
675
720
|
projectName: opts.projectName,
|
|
@@ -727,6 +772,16 @@ function handleValidationError(result, jsonOutput, client) {
|
|
|
727
772
|
}
|
|
728
773
|
return 1;
|
|
729
774
|
}
|
|
775
|
+
function combineFilters(filters) {
|
|
776
|
+
const nonEmptyFilters = filters?.filter((filter) => filter.length > 0) ?? [];
|
|
777
|
+
if (nonEmptyFilters.length === 0) {
|
|
778
|
+
return void 0;
|
|
779
|
+
}
|
|
780
|
+
if (nonEmptyFilters.length === 1) {
|
|
781
|
+
return nonEmptyFilters[0];
|
|
782
|
+
}
|
|
783
|
+
return nonEmptyFilters.map((filter) => `(${filter})`).join(" and ");
|
|
784
|
+
}
|
|
730
785
|
async function resolveQueryScope(client, opts) {
|
|
731
786
|
if (opts.project || opts.all) {
|
|
732
787
|
const { team } = await getScope(client);
|
|
@@ -813,20 +868,23 @@ async function query(client, telemetry) {
|
|
|
813
868
|
const aggregationFlag = flags["--aggregation"];
|
|
814
869
|
const groupBy = flags["--group-by"] ?? [];
|
|
815
870
|
const limit = flags["--limit"];
|
|
816
|
-
const
|
|
871
|
+
const filters = flags["--filter"];
|
|
872
|
+
const filter = combineFilters(filters);
|
|
817
873
|
const since = flags["--since"];
|
|
818
874
|
const until = flags["--until"];
|
|
819
875
|
const granularity = flags["--granularity"];
|
|
876
|
+
const bucketTimezone = flags["--bucket-timezone"]?.trim();
|
|
820
877
|
const project = flags["--project"];
|
|
821
878
|
const all = flags["--all"];
|
|
822
879
|
telemetry.trackCliArgumentMetricId(metricFlag);
|
|
823
880
|
telemetry.trackCliOptionAggregation(aggregationFlag);
|
|
824
881
|
telemetry.trackCliOptionGroupBy(groupBy.length > 0 ? groupBy : void 0);
|
|
825
882
|
telemetry.trackCliOptionLimit(limit);
|
|
826
|
-
telemetry.trackCliOptionFilter(
|
|
883
|
+
telemetry.trackCliOptionFilter(filters);
|
|
827
884
|
telemetry.trackCliOptionSince(since);
|
|
828
885
|
telemetry.trackCliOptionUntil(until);
|
|
829
886
|
telemetry.trackCliOptionGranularity(granularity);
|
|
887
|
+
telemetry.trackCliOptionBucketTimezone(bucketTimezone);
|
|
830
888
|
telemetry.trackCliOptionProject(project);
|
|
831
889
|
telemetry.trackCliFlagAll(all);
|
|
832
890
|
telemetry.trackCliOptionFormat(flags["--format"]);
|
|
@@ -877,18 +935,14 @@ async function query(client, telemetry) {
|
|
|
877
935
|
if (!jsonOutput && granResult.adjusted && granResult.notice) {
|
|
878
936
|
output_manager_default.log(`Notice: ${granResult.notice}`);
|
|
879
937
|
}
|
|
880
|
-
const rounded = roundTimeBoundaries(
|
|
881
|
-
startTime,
|
|
882
|
-
endTime,
|
|
883
|
-
toGranularityMsFromDuration(granResult.duration)
|
|
884
|
-
);
|
|
885
938
|
const body = {
|
|
886
939
|
scope,
|
|
887
940
|
metric,
|
|
888
941
|
aggregation,
|
|
889
|
-
startTime:
|
|
890
|
-
endTime:
|
|
942
|
+
startTime: startTime.toISOString(),
|
|
943
|
+
endTime: endTime.toISOString(),
|
|
891
944
|
granularity: granResult.duration,
|
|
945
|
+
...bucketTimezone ? { bucketTimezone } : {},
|
|
892
946
|
...groupBy.length > 0 ? { groupBy } : {},
|
|
893
947
|
...filter ? { filter } : {},
|
|
894
948
|
limit: limit ?? 10
|
|
@@ -932,9 +986,10 @@ async function query(client, telemetry) {
|
|
|
932
986
|
aggregation,
|
|
933
987
|
groupBy,
|
|
934
988
|
filter,
|
|
935
|
-
startTime:
|
|
936
|
-
endTime:
|
|
937
|
-
granularity: granResult.duration
|
|
989
|
+
startTime: startTime.toISOString(),
|
|
990
|
+
endTime: endTime.toISOString(),
|
|
991
|
+
granularity: granResult.duration,
|
|
992
|
+
...bucketTimezone ? { bucketTimezone } : {}
|
|
938
993
|
},
|
|
939
994
|
response
|
|
940
995
|
)
|
|
@@ -950,9 +1005,10 @@ async function query(client, telemetry) {
|
|
|
950
1005
|
scope,
|
|
951
1006
|
projectName,
|
|
952
1007
|
teamName,
|
|
953
|
-
periodStart:
|
|
954
|
-
periodEnd:
|
|
955
|
-
granularity: granResult.duration
|
|
1008
|
+
periodStart: startTime.toISOString(),
|
|
1009
|
+
periodEnd: endTime.toISOString(),
|
|
1010
|
+
granularity: granResult.duration,
|
|
1011
|
+
bucketTimezone
|
|
956
1012
|
})
|
|
957
1013
|
);
|
|
958
1014
|
}
|
|
@@ -16,20 +16,22 @@ import {
|
|
|
16
16
|
resolveRoute,
|
|
17
17
|
shellQuoteRouteIdentifierForSuggestion,
|
|
18
18
|
withGlobalFlags
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-UEFCAT3N.js";
|
|
20
20
|
import {
|
|
21
21
|
reorderSubcommand
|
|
22
22
|
} from "./chunk-WFRHKZFI.js";
|
|
23
|
+
import {
|
|
24
|
+
stamp_default
|
|
25
|
+
} from "./chunk-64IF634X.js";
|
|
26
|
+
import "./chunk-VXYGCOKL.js";
|
|
23
27
|
import "./chunk-LJ5WXXG6.js";
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-XLLAD5DR.js";
|
|
29
|
+
import "./chunk-HIYWSGI7.js";
|
|
26
30
|
import {
|
|
27
31
|
outputAgentError
|
|
28
32
|
} from "./chunk-NHGCQRK5.js";
|
|
29
|
-
import {
|
|
30
|
-
stamp_default
|
|
31
|
-
} from "./chunk-CO5D46AG.js";
|
|
32
33
|
import "./chunk-N2T234LO.js";
|
|
34
|
+
import "./chunk-GGP5R3FU.js";
|
|
33
35
|
import "./chunk-6IQZVQV6.js";
|
|
34
36
|
import {
|
|
35
37
|
getCommandName
|
|
@@ -19,20 +19,22 @@ import {
|
|
|
19
19
|
printDiffSummary,
|
|
20
20
|
validateRequiredArgs,
|
|
21
21
|
withGlobalFlags
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-UEFCAT3N.js";
|
|
23
23
|
import {
|
|
24
24
|
restoreSubcommand
|
|
25
25
|
} from "./chunk-WFRHKZFI.js";
|
|
26
|
+
import {
|
|
27
|
+
stamp_default
|
|
28
|
+
} from "./chunk-64IF634X.js";
|
|
29
|
+
import "./chunk-VXYGCOKL.js";
|
|
26
30
|
import "./chunk-LJ5WXXG6.js";
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
31
|
+
import "./chunk-XLLAD5DR.js";
|
|
32
|
+
import "./chunk-HIYWSGI7.js";
|
|
29
33
|
import {
|
|
30
34
|
outputAgentError
|
|
31
35
|
} from "./chunk-NHGCQRK5.js";
|
|
32
|
-
import {
|
|
33
|
-
stamp_default
|
|
34
|
-
} from "./chunk-CO5D46AG.js";
|
|
35
36
|
import "./chunk-N2T234LO.js";
|
|
37
|
+
import "./chunk-GGP5R3FU.js";
|
|
36
38
|
import "./chunk-6IQZVQV6.js";
|
|
37
39
|
import {
|
|
38
40
|
getCommandName
|
|
@@ -9,9 +9,9 @@ import {
|
|
|
9
9
|
handleRulesApiError,
|
|
10
10
|
parseRulesFlagsAndScope,
|
|
11
11
|
rulesItemPath
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-MKB32SJZ.js";
|
|
13
|
+
import "./chunk-L7U3Z7E4.js";
|
|
14
|
+
import "./chunk-D7MGZH35.js";
|
|
15
15
|
import {
|
|
16
16
|
validateJsonOutput
|
|
17
17
|
} from "./chunk-XPKWKPWA.js";
|
|
@@ -21,16 +21,16 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
AGENT_REASON
|
|
23
23
|
} from "./chunk-LJ5WXXG6.js";
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-YQPAAXUU.js";
|
|
25
|
+
import "./chunk-XLLAD5DR.js";
|
|
26
|
+
import "./chunk-HIYWSGI7.js";
|
|
27
27
|
import {
|
|
28
28
|
buildCommandWithGlobalFlags,
|
|
29
29
|
buildCommandWithYes,
|
|
30
30
|
outputAgentError
|
|
31
31
|
} from "./chunk-NHGCQRK5.js";
|
|
32
|
-
import "./chunk-CO5D46AG.js";
|
|
33
32
|
import "./chunk-N2T234LO.js";
|
|
33
|
+
import "./chunk-GGP5R3FU.js";
|
|
34
34
|
import {
|
|
35
35
|
getFlagsSpecification,
|
|
36
36
|
parseArguments,
|
|
@@ -8,8 +8,8 @@ import {
|
|
|
8
8
|
RoutesAddTelemetryClient,
|
|
9
9
|
RoutesEditTelemetryClient,
|
|
10
10
|
RoutesTelemetryClient
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-PMUUPCDL.js";
|
|
12
|
+
import "./chunk-HIYWSGI7.js";
|
|
13
13
|
import "./chunk-Z5SBJH6L.js";
|
|
14
14
|
import "./chunk-S7KYDPEM.js";
|
|
15
15
|
import "./chunk-TZ2YI2VH.js";
|
|
@@ -9,9 +9,9 @@ import {
|
|
|
9
9
|
handleRulesApiError,
|
|
10
10
|
parseRulesFlagsAndScope,
|
|
11
11
|
rulesItemPath
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-MKB32SJZ.js";
|
|
13
|
+
import "./chunk-L7U3Z7E4.js";
|
|
14
|
+
import "./chunk-D7MGZH35.js";
|
|
15
15
|
import {
|
|
16
16
|
validateJsonOutput
|
|
17
17
|
} from "./chunk-XPKWKPWA.js";
|
|
@@ -21,15 +21,15 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
AGENT_REASON
|
|
23
23
|
} from "./chunk-LJ5WXXG6.js";
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-YQPAAXUU.js";
|
|
25
|
+
import "./chunk-XLLAD5DR.js";
|
|
26
|
+
import "./chunk-HIYWSGI7.js";
|
|
27
27
|
import {
|
|
28
28
|
buildCommandWithGlobalFlags,
|
|
29
29
|
outputAgentError
|
|
30
30
|
} from "./chunk-NHGCQRK5.js";
|
|
31
|
-
import "./chunk-CO5D46AG.js";
|
|
32
31
|
import "./chunk-N2T234LO.js";
|
|
32
|
+
import "./chunk-GGP5R3FU.js";
|
|
33
33
|
import {
|
|
34
34
|
getFlagsSpecification,
|
|
35
35
|
parseArguments,
|
|
@@ -32,7 +32,7 @@ var RULES_CONFIG = {
|
|
|
32
32
|
};
|
|
33
33
|
async function rules(client, argv) {
|
|
34
34
|
if (argv.length === 0) {
|
|
35
|
-
const lsFn = (await import("./ls-
|
|
35
|
+
const lsFn = (await import("./ls-6HVFGIQS.js")).default;
|
|
36
36
|
return lsFn(client, []);
|
|
37
37
|
}
|
|
38
38
|
const { subcommand, args, subcommandOriginal } = getSubcommand(
|
|
@@ -65,15 +65,15 @@ async function rules(client, argv) {
|
|
|
65
65
|
}
|
|
66
66
|
switch (subcommand) {
|
|
67
67
|
case "ls":
|
|
68
|
-
return (await import("./ls-
|
|
68
|
+
return (await import("./ls-6HVFGIQS.js")).default(client, args);
|
|
69
69
|
case "add":
|
|
70
|
-
return (await import("./add-
|
|
70
|
+
return (await import("./add-INSQH24S.js")).default(client, args);
|
|
71
71
|
case "inspect":
|
|
72
|
-
return (await import("./rule-inspect-
|
|
72
|
+
return (await import("./rule-inspect-PQORU3SU.js")).default(client, args);
|
|
73
73
|
case "rm":
|
|
74
|
-
return (await import("./rm-
|
|
74
|
+
return (await import("./rm-7TPDWMJZ.js")).default(client, args);
|
|
75
75
|
case "update":
|
|
76
|
-
return (await import("./update-
|
|
76
|
+
return (await import("./update-J4QCT3GS.js")).default(client, args);
|
|
77
77
|
default:
|
|
78
78
|
output_manager_default.error(`Unhandled rules subcommand: ${String(subcommandOriginal)}`);
|
|
79
79
|
return 1;
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
fetchMetricDetailOrExit,
|
|
9
9
|
fetchMetricListOrExit,
|
|
10
10
|
formatErrorJson
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-Z2MBXYZZ.js";
|
|
12
12
|
import {
|
|
13
13
|
indent_default
|
|
14
14
|
} from "./chunk-A3NYPUKZ.js";
|
|
@@ -20,17 +20,17 @@ import {
|
|
|
20
20
|
} from "./chunk-XPKWKPWA.js";
|
|
21
21
|
import {
|
|
22
22
|
schemaSubcommand
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-ZRJQY3VK.js";
|
|
24
24
|
import {
|
|
25
25
|
getScope
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-YQPAAXUU.js";
|
|
27
27
|
import {
|
|
28
28
|
require_pluralize
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import "./chunk-
|
|
29
|
+
} from "./chunk-XLLAD5DR.js";
|
|
30
|
+
import "./chunk-HIYWSGI7.js";
|
|
31
31
|
import "./chunk-NHGCQRK5.js";
|
|
32
|
-
import "./chunk-CO5D46AG.js";
|
|
33
32
|
import "./chunk-N2T234LO.js";
|
|
33
|
+
import "./chunk-GGP5R3FU.js";
|
|
34
34
|
import "./chunk-4NDOMD3E.js";
|
|
35
35
|
import {
|
|
36
36
|
getFlagsSpecification,
|
|
@@ -6,7 +6,9 @@ const __filename = __fileURLToPath(import.meta.url);
|
|
|
6
6
|
const __dirname = __dirname_(__filename);
|
|
7
7
|
import {
|
|
8
8
|
stamp_default
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-64IF634X.js";
|
|
10
|
+
import "./chunk-VXYGCOKL.js";
|
|
11
|
+
import "./chunk-GGP5R3FU.js";
|
|
10
12
|
import "./chunk-S7KYDPEM.js";
|
|
11
13
|
import "./chunk-TZ2YI2VH.js";
|
|
12
14
|
export {
|
|
@@ -9,9 +9,9 @@ import {
|
|
|
9
9
|
handleRulesApiError,
|
|
10
10
|
parseRulesFlagsAndScope,
|
|
11
11
|
rulesItemPath
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-MKB32SJZ.js";
|
|
13
|
+
import "./chunk-L7U3Z7E4.js";
|
|
14
|
+
import "./chunk-D7MGZH35.js";
|
|
15
15
|
import {
|
|
16
16
|
validateJsonOutput
|
|
17
17
|
} from "./chunk-XPKWKPWA.js";
|
|
@@ -21,15 +21,15 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
AGENT_REASON
|
|
23
23
|
} from "./chunk-LJ5WXXG6.js";
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-YQPAAXUU.js";
|
|
25
|
+
import "./chunk-XLLAD5DR.js";
|
|
26
|
+
import "./chunk-HIYWSGI7.js";
|
|
27
27
|
import {
|
|
28
28
|
buildCommandWithGlobalFlags,
|
|
29
29
|
outputAgentError
|
|
30
30
|
} from "./chunk-NHGCQRK5.js";
|
|
31
|
-
import "./chunk-CO5D46AG.js";
|
|
32
31
|
import "./chunk-N2T234LO.js";
|
|
32
|
+
import "./chunk-GGP5R3FU.js";
|
|
33
33
|
import {
|
|
34
34
|
getFlagsSpecification,
|
|
35
35
|
parseArguments,
|