vercel 51.4.0 → 51.5.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.
Files changed (56) hide show
  1. package/dist/chunks/{add-RNQLGEYS.js → add-CSYGALLC.js} +4 -4
  2. package/dist/chunks/chunk-3VIDEX7A.js +692 -0
  3. package/dist/chunks/{chunk-PBGN54ZH.js → chunk-4T7RWBT7.js} +3 -3
  4. package/dist/chunks/{chunk-BRQBLRFB.js → chunk-5I2ESU2C.js} +1 -1
  5. package/dist/chunks/{chunk-5NTBJ33M.js → chunk-7IM2OOGY.js} +1 -1
  6. package/dist/chunks/{chunk-3GDNTBCE.js → chunk-7V43C2HB.js} +7 -7
  7. package/dist/chunks/{chunk-4RBF6ZDU.js → chunk-BHDZCUTT.js} +13 -31
  8. package/dist/chunks/{chunk-4DR2FV6O.js → chunk-CXTJ4RY4.js} +1 -1
  9. package/dist/chunks/{chunk-L2JUC7NX.js → chunk-EQIXUYBY.js} +1 -1
  10. package/dist/chunks/{chunk-5VKKTHMP.js → chunk-GZF6VMKA.js} +8 -4
  11. package/dist/chunks/{chunk-D2D4FJ6S.js → chunk-JHVQUIP6.js} +2 -2
  12. package/dist/chunks/{chunk-NKJC5SI4.js → chunk-K3HUUZM5.js} +1 -1
  13. package/dist/chunks/{chunk-6C33Y3DC.js → chunk-KAKD6QXJ.js} +6 -6
  14. package/dist/chunks/{chunk-7ZDERWUW.js → chunk-KNZNWP2U.js} +2 -2
  15. package/dist/chunks/{chunk-7MF47FW3.js → chunk-LR5Y63NG.js} +1 -1
  16. package/dist/chunks/{chunk-UJ4JXXED.js → chunk-NJ7GOUCE.js} +218 -79
  17. package/dist/chunks/{chunk-537JTK2U.js → chunk-P445TBWL.js} +1 -1
  18. package/dist/chunks/{chunk-ELUNQCFN.js → chunk-QIHIANBF.js} +5 -3
  19. package/dist/chunks/{chunk-DKFFXOHJ.js → chunk-QO2ED7OU.js} +2 -2
  20. package/dist/chunks/{chunk-HNU5CXW4.js → chunk-SVYO7LZ5.js} +1 -1
  21. package/dist/chunks/{chunk-HQXVCOH6.js → chunk-T7LHO6SF.js} +1 -1
  22. package/dist/chunks/{chunk-P56KWLXY.js → chunk-TX6K3Z5E.js} +1 -1
  23. package/dist/chunks/{chunk-AUSDBXUD.js → chunk-TY6AGA4P.js} +2 -2
  24. package/dist/chunks/{compile-vercel-config-ZVY7LBE3.js → compile-vercel-config-OLTGIW27.js} +1 -1
  25. package/dist/chunks/{delete-SKTJMJNP.js → delete-XAYXXDEB.js} +2 -2
  26. package/dist/chunks/{disable-AG7I6DPV.js → disable-PNN5ZWF4.js} +2 -2
  27. package/dist/chunks/{discard-LUK6LBLT.js → discard-QUK6T2AQ.js} +2 -2
  28. package/dist/chunks/{edit-3BR5HP3U.js → edit-D2OHUFQ6.js} +3 -3
  29. package/dist/chunks/{enable-4JNLOKSM.js → enable-SJV7HD2Y.js} +2 -2
  30. package/dist/chunks/{export-YLZ6QSHG.js → export-SN3F75NH.js} +2 -2
  31. package/dist/chunks/{inspect-HUJLUQAV.js → inspect-C2ZW7BZA.js} +3 -3
  32. package/dist/chunks/{list-EPU4SB3E.js → list-2DKITLDE.js} +2 -2
  33. package/dist/chunks/{list-RMA56KYZ.js → list-EUXU6BVD.js} +3 -3
  34. package/dist/chunks/{ls-7HHDYE6F.js → ls-7R3DRCUY.js} +4 -4
  35. package/dist/chunks/{publish-6YE4OUDI.js → publish-HNGKZNDH.js} +2 -2
  36. package/dist/chunks/{query-VNBKOI65.js → query-G4SY7VMM.js} +8 -6
  37. package/dist/chunks/{reorder-VFM23ESC.js → reorder-Q2LYGVZK.js} +2 -2
  38. package/dist/chunks/{restore-VX34SXVF.js → restore-YJUUQLZG.js} +2 -2
  39. package/dist/chunks/{rm-5KXF2PY3.js → rm-XEV4FF6H.js} +4 -4
  40. package/dist/chunks/{rule-inspect-JG7AE5TI.js → rule-inspect-JNZMBVJF.js} +4 -4
  41. package/dist/chunks/{rules-XRJBT22L.js → rules-5PJVEET5.js} +6 -6
  42. package/dist/chunks/{schema-FUOKCZTW.js → schema-OU7FKPQZ.js} +51 -21
  43. package/dist/chunks/{update-4FMWTIJK.js → update-6LXBPVBH.js} +4 -4
  44. package/dist/commands/build/index.js +13 -13
  45. package/dist/commands/deploy/index.js +27 -28
  46. package/dist/commands/dev/index.js +8 -8
  47. package/dist/commands/env/index.js +26 -12
  48. package/dist/commands/link/index.js +12 -12
  49. package/dist/commands/list/index.js +3 -3
  50. package/dist/commands-bulk.js +2361 -1424
  51. package/dist/help.js +1 -1
  52. package/dist/index.js +41 -20
  53. package/dist/version.mjs +1 -1
  54. package/package.json +17 -17
  55. package/dist/chunks/chunk-O7SQKNIT.js +0 -247
  56. package/dist/chunks/chunk-RJD5NYGF.js +0 -149
@@ -39115,7 +39115,7 @@ var require_package = __commonJS({
39115
39115
  "../client/package.json"(exports, module) {
39116
39116
  module.exports = {
39117
39117
  name: "@vercel/client",
39118
- version: "17.3.4",
39118
+ version: "17.3.5",
39119
39119
  main: "dist/index.js",
39120
39120
  typings: "dist/index.d.ts",
39121
39121
  homepage: "https://vercel.com",
@@ -15,7 +15,7 @@ import {
15
15
  var import_chalk = __toESM(require_source(), 1);
16
16
  var packageName = "vercel";
17
17
  var logo = "\u25B2";
18
- var metricsLine = process.env.FF_METRICS ? "\n metrics Queries observability metrics for your project or team" : "";
18
+ var connexLine = process.env.FF_CONNEX_ENABLED ? "\n connex [cmd] Manage Vercel Connect OAuth clients" : "";
19
19
  var help = () => `
20
20
  ${import_chalk.default.bold(`${logo} ${packageName}`)} [options] <command | path>
21
21
 
@@ -60,14 +60,16 @@ var help = () => `
60
60
  bisect Use binary search to find the deployment that introduced a bug
61
61
  blob [cmd] Manages your Blob stores and files
62
62
  buy [cmd] Purchase Vercel products for your team
63
- certs [cmd] Manages your SSL certificates
63
+ certs [cmd] Manages your SSL certificates${connexLine}
64
64
  contract Show contract information for billing periods
65
65
  cron | crons [cmd] Manage cron jobs for a project [beta]
66
66
  curl [path] cURL requests to your linked project's deployment [beta]
67
+ deploy-hooks [cmd] Manage deploy hooks for Git-triggered builds
67
68
  dns [name] Manages your DNS records
68
69
  domains [name] Manages your domain names
69
70
  httpstat path Visualize HTTP timing statistics for deployments
70
- logs [url] Displays the logs for a deployment${metricsLine}
71
+ logs [url] Displays the logs for a deployment
72
+ metrics <metric> Queries observability metrics for your project or team
71
73
  mcp Set up MCP agents and configuration
72
74
  microfrontends Manages your microfrontends
73
75
  projects Manages your Projects
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-IB5L4LKZ.js";
10
10
  import {
11
11
  require_execa
12
- } from "./chunk-7MF47FW3.js";
12
+ } from "./chunk-LR5Y63NG.js";
13
13
  import {
14
14
  VERCEL_DIR,
15
15
  readJSONFile,
@@ -18,7 +18,7 @@ import {
18
18
  require_lib,
19
19
  require_minimatch,
20
20
  require_pluralize
21
- } from "./chunk-537JTK2U.js";
21
+ } from "./chunk-P445TBWL.js";
22
22
  import {
23
23
  CantParseJSONFile,
24
24
  cmd,
@@ -10,7 +10,7 @@ import {
10
10
  } from "./chunk-E3NE4SKN.js";
11
11
  import {
12
12
  getLinkedProject
13
- } from "./chunk-537JTK2U.js";
13
+ } from "./chunk-P445TBWL.js";
14
14
  import {
15
15
  buildCommandWithYes,
16
16
  outputAgentError
@@ -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-7ZDERWUW.js";
9
+ } from "./chunk-KNZNWP2U.js";
10
10
  import {
11
11
  handleValidationError,
12
12
  outputError,
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  STANDARD_ENVIRONMENTS
9
- } from "./chunk-537JTK2U.js";
9
+ } from "./chunk-P445TBWL.js";
10
10
  import {
11
11
  getCommandName,
12
12
  require_lib
@@ -6,12 +6,12 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  setupAndLink
9
- } from "./chunk-D2D4FJ6S.js";
9
+ } from "./chunk-JHVQUIP6.js";
10
10
  import {
11
11
  getLinkedProject,
12
12
  param,
13
13
  resolveProjectCwd
14
- } from "./chunk-537JTK2U.js";
14
+ } from "./chunk-P445TBWL.js";
15
15
  import {
16
16
  buildCommandWithYes,
17
17
  outputActionRequired
@@ -11,7 +11,7 @@ import {
11
11
  findSourceVercelConfigFile,
12
12
  getVercelConfigPath,
13
13
  normalizeConfig
14
- } from "./chunk-537JTK2U.js";
14
+ } from "./chunk-P445TBWL.js";
15
15
  import "./chunk-U3WLEFHU.js";
16
16
  import "./chunk-CGTXAXZ4.js";
17
17
  import "./chunk-CO5D46AG.js";
@@ -15,7 +15,7 @@ import {
15
15
  parseSubcommandArgs,
16
16
  resolveRoutes,
17
17
  withGlobalFlags
18
- } from "./chunk-HNU5CXW4.js";
18
+ } from "./chunk-SVYO7LZ5.js";
19
19
  import {
20
20
  deleteSubcommand
21
21
  } from "./chunk-CRZM5WM2.js";
@@ -23,7 +23,7 @@ import {
23
23
  AGENT_REASON,
24
24
  AGENT_STATUS
25
25
  } from "./chunk-E3NE4SKN.js";
26
- import "./chunk-537JTK2U.js";
26
+ import "./chunk-P445TBWL.js";
27
27
  import "./chunk-U3WLEFHU.js";
28
28
  import {
29
29
  outputAgentError
@@ -17,12 +17,12 @@ import {
17
17
  parseSubcommandArgs,
18
18
  resolveRoute,
19
19
  withGlobalFlags
20
- } from "./chunk-HNU5CXW4.js";
20
+ } from "./chunk-SVYO7LZ5.js";
21
21
  import {
22
22
  disableSubcommand
23
23
  } from "./chunk-CRZM5WM2.js";
24
24
  import "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
@@ -17,12 +17,12 @@ import {
17
17
  parseSubcommandArgs,
18
18
  printDiffSummary,
19
19
  withGlobalFlags
20
- } from "./chunk-HNU5CXW4.js";
20
+ } from "./chunk-SVYO7LZ5.js";
21
21
  import {
22
22
  discardSubcommand
23
23
  } from "./chunk-CRZM5WM2.js";
24
24
  import "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
@@ -19,7 +19,7 @@ import {
19
19
  printRouteConfig,
20
20
  routingRuleToCurrentRoute,
21
21
  runInteractiveEditLoop
22
- } from "./chunk-5NTBJ33M.js";
22
+ } from "./chunk-7IM2OOGY.js";
23
23
  import {
24
24
  getRouteVersions
25
25
  } from "./chunk-AHU7WNL2.js";
@@ -31,12 +31,12 @@ import {
31
31
  resolveRoute,
32
32
  shellQuoteRouteIdentifierForSuggestion,
33
33
  withGlobalFlags
34
- } from "./chunk-HNU5CXW4.js";
34
+ } from "./chunk-SVYO7LZ5.js";
35
35
  import {
36
36
  editSubcommand
37
37
  } from "./chunk-CRZM5WM2.js";
38
38
  import "./chunk-E3NE4SKN.js";
39
- import "./chunk-537JTK2U.js";
39
+ import "./chunk-P445TBWL.js";
40
40
  import "./chunk-U3WLEFHU.js";
41
41
  import {
42
42
  outputAgentError
@@ -17,12 +17,12 @@ import {
17
17
  parseSubcommandArgs,
18
18
  resolveRoute,
19
19
  withGlobalFlags
20
- } from "./chunk-HNU5CXW4.js";
20
+ } from "./chunk-SVYO7LZ5.js";
21
21
  import {
22
22
  enableSubcommand
23
23
  } from "./chunk-CRZM5WM2.js";
24
24
  import "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
@@ -9,12 +9,12 @@ import {
9
9
  getRoutes,
10
10
  parseSubcommandArgs,
11
11
  withGlobalFlags
12
- } from "./chunk-HNU5CXW4.js";
12
+ } from "./chunk-SVYO7LZ5.js";
13
13
  import {
14
14
  exportSubcommand
15
15
  } from "./chunk-CRZM5WM2.js";
16
16
  import "./chunk-E3NE4SKN.js";
17
- import "./chunk-537JTK2U.js";
17
+ import "./chunk-P445TBWL.js";
18
18
  import "./chunk-U3WLEFHU.js";
19
19
  import {
20
20
  outputAgentError
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  emitAlertsScopeError
9
- } from "./chunk-7ZDERWUW.js";
9
+ } from "./chunk-KNZNWP2U.js";
10
10
  import {
11
11
  handleValidationError,
12
12
  outputError,
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-HTOH3MSD.js";
15
15
  import {
16
16
  getScope
17
- } from "./chunk-L2JUC7NX.js";
17
+ } from "./chunk-EQIXUYBY.js";
18
18
  import {
19
19
  validateJsonOutput
20
20
  } from "./chunk-XPKWKPWA.js";
@@ -28,7 +28,7 @@ import {
28
28
  import {
29
29
  getLinkedProject,
30
30
  getProjectByNameOrId
31
- } from "./chunk-537JTK2U.js";
31
+ } from "./chunk-P445TBWL.js";
32
32
  import "./chunk-U3WLEFHU.js";
33
33
  import {
34
34
  buildCommandWithGlobalFlags,
@@ -18,7 +18,7 @@ import {
18
18
  } from "./chunk-EOZFDJSY.js";
19
19
  import {
20
20
  getScope
21
- } from "./chunk-L2JUC7NX.js";
21
+ } from "./chunk-EQIXUYBY.js";
22
22
  import {
23
23
  validateJsonOutput
24
24
  } from "./chunk-XPKWKPWA.js";
@@ -28,7 +28,7 @@ import {
28
28
  import {
29
29
  getLinkedProject,
30
30
  getProjectByNameOrId
31
- } from "./chunk-537JTK2U.js";
31
+ } from "./chunk-P445TBWL.js";
32
32
  import "./chunk-U3WLEFHU.js";
33
33
  import "./chunk-CGTXAXZ4.js";
34
34
  import "./chunk-CO5D46AG.js";
@@ -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-7ZDERWUW.js";
9
+ } from "./chunk-KNZNWP2U.js";
10
10
  import {
11
11
  handleValidationError,
12
12
  normalizeRepeatableStringFilters,
@@ -16,7 +16,7 @@ import {
16
16
  validateTimeBound,
17
17
  validateTimeOrder
18
18
  } from "./chunk-HTOH3MSD.js";
19
- import "./chunk-L2JUC7NX.js";
19
+ import "./chunk-EQIXUYBY.js";
20
20
  import {
21
21
  validateJsonOutput
22
22
  } from "./chunk-XPKWKPWA.js";
@@ -30,7 +30,7 @@ import {
30
30
  import {
31
31
  table
32
32
  } from "./chunk-GE6G37P4.js";
33
- import "./chunk-537JTK2U.js";
33
+ import "./chunk-P445TBWL.js";
34
34
  import "./chunk-U3WLEFHU.js";
35
35
  import {
36
36
  buildCommandWithGlobalFlags,
@@ -9,10 +9,10 @@ import {
9
9
  handleRulesApiError,
10
10
  parseRulesFlagsAndScope,
11
11
  rulesCollectionPath
12
- } from "./chunk-HQXVCOH6.js";
13
- import "./chunk-7ZDERWUW.js";
12
+ } from "./chunk-T7LHO6SF.js";
13
+ import "./chunk-KNZNWP2U.js";
14
14
  import "./chunk-HTOH3MSD.js";
15
- import "./chunk-L2JUC7NX.js";
15
+ import "./chunk-EQIXUYBY.js";
16
16
  import {
17
17
  validateJsonOutput
18
18
  } from "./chunk-XPKWKPWA.js";
@@ -22,7 +22,7 @@ import {
22
22
  import {
23
23
  AGENT_REASON
24
24
  } from "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
@@ -17,12 +17,12 @@ import {
17
17
  parseSubcommandArgs,
18
18
  printDiffSummary,
19
19
  withGlobalFlags
20
- } from "./chunk-HNU5CXW4.js";
20
+ } from "./chunk-SVYO7LZ5.js";
21
21
  import {
22
22
  publishSubcommand
23
23
  } from "./chunk-CRZM5WM2.js";
24
24
  import "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
@@ -21,20 +21,20 @@ import {
21
21
  } from "./chunk-A3NYPUKZ.js";
22
22
  import {
23
23
  getScope
24
- } from "./chunk-L2JUC7NX.js";
24
+ } from "./chunk-EQIXUYBY.js";
25
25
  import {
26
26
  validateJsonOutput
27
27
  } from "./chunk-XPKWKPWA.js";
28
28
  import {
29
29
  metricsCommand
30
- } from "./chunk-4RBF6ZDU.js";
30
+ } from "./chunk-BHDZCUTT.js";
31
31
  import {
32
32
  table
33
33
  } from "./chunk-GE6G37P4.js";
34
34
  import {
35
35
  getLinkedProject,
36
36
  getProjectByNameOrId
37
- } from "./chunk-537JTK2U.js";
37
+ } from "./chunk-P445TBWL.js";
38
38
  import "./chunk-U3WLEFHU.js";
39
39
  import "./chunk-CGTXAXZ4.js";
40
40
  import {
@@ -70,7 +70,7 @@ function validateRequiredMetric(metric) {
70
70
  return {
71
71
  valid: false,
72
72
  code: "MISSING_METRIC",
73
- message: "Missing required flag --metric. Specify the metric to query.\n\nRun 'vercel metrics schema' to see available metrics."
73
+ message: "Missing required metric. Specify the metric to query.\n\nRun 'vercel metrics schema' to see available metrics."
74
74
  };
75
75
  }
76
76
 
@@ -799,13 +799,15 @@ async function query(client, telemetry) {
799
799
  return 1;
800
800
  }
801
801
  const flags = parsedArgs.flags;
802
+ const positionalArgs = parsedArgs.args.slice(1);
803
+ const positionalMetric = positionalArgs[0] === "query" ? positionalArgs[1] : positionalArgs[0];
802
804
  const formatResult = validateJsonOutput(flags);
803
805
  if (!formatResult.valid) {
804
806
  output_manager_default.error(formatResult.error);
805
807
  return 1;
806
808
  }
807
809
  const jsonOutput = formatResult.jsonOutput;
808
- const metricFlag = flags["--metric"];
810
+ const metricFlag = positionalMetric;
809
811
  const aggregationFlag = flags["--aggregation"];
810
812
  const groupBy = flags["--group-by"] ?? [];
811
813
  const limit = flags["--limit"];
@@ -815,7 +817,7 @@ async function query(client, telemetry) {
815
817
  const granularity = flags["--granularity"];
816
818
  const project = flags["--project"];
817
819
  const all = flags["--all"];
818
- telemetry.trackCliOptionMetric(metricFlag);
820
+ telemetry.trackCliArgumentMetricId(metricFlag);
819
821
  telemetry.trackCliOptionAggregation(aggregationFlag);
820
822
  telemetry.trackCliOptionGroupBy(groupBy.length > 0 ? groupBy : void 0);
821
823
  telemetry.trackCliOptionLimit(limit);
@@ -16,12 +16,12 @@ import {
16
16
  resolveRoute,
17
17
  shellQuoteRouteIdentifierForSuggestion,
18
18
  withGlobalFlags
19
- } from "./chunk-HNU5CXW4.js";
19
+ } from "./chunk-SVYO7LZ5.js";
20
20
  import {
21
21
  reorderSubcommand
22
22
  } from "./chunk-CRZM5WM2.js";
23
23
  import "./chunk-E3NE4SKN.js";
24
- import "./chunk-537JTK2U.js";
24
+ import "./chunk-P445TBWL.js";
25
25
  import "./chunk-U3WLEFHU.js";
26
26
  import {
27
27
  outputAgentError
@@ -19,12 +19,12 @@ import {
19
19
  printDiffSummary,
20
20
  validateRequiredArgs,
21
21
  withGlobalFlags
22
- } from "./chunk-HNU5CXW4.js";
22
+ } from "./chunk-SVYO7LZ5.js";
23
23
  import {
24
24
  restoreSubcommand
25
25
  } from "./chunk-CRZM5WM2.js";
26
26
  import "./chunk-E3NE4SKN.js";
27
- import "./chunk-537JTK2U.js";
27
+ import "./chunk-P445TBWL.js";
28
28
  import "./chunk-U3WLEFHU.js";
29
29
  import {
30
30
  outputAgentError
@@ -9,10 +9,10 @@ import {
9
9
  handleRulesApiError,
10
10
  parseRulesFlagsAndScope,
11
11
  rulesItemPath
12
- } from "./chunk-HQXVCOH6.js";
13
- import "./chunk-7ZDERWUW.js";
12
+ } from "./chunk-T7LHO6SF.js";
13
+ import "./chunk-KNZNWP2U.js";
14
14
  import "./chunk-HTOH3MSD.js";
15
- import "./chunk-L2JUC7NX.js";
15
+ import "./chunk-EQIXUYBY.js";
16
16
  import {
17
17
  validateJsonOutput
18
18
  } from "./chunk-XPKWKPWA.js";
@@ -22,7 +22,7 @@ import {
22
22
  import {
23
23
  AGENT_REASON
24
24
  } from "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  buildCommandWithGlobalFlags,
@@ -9,10 +9,10 @@ import {
9
9
  handleRulesApiError,
10
10
  parseRulesFlagsAndScope,
11
11
  rulesItemPath
12
- } from "./chunk-HQXVCOH6.js";
13
- import "./chunk-7ZDERWUW.js";
12
+ } from "./chunk-T7LHO6SF.js";
13
+ import "./chunk-KNZNWP2U.js";
14
14
  import "./chunk-HTOH3MSD.js";
15
- import "./chunk-L2JUC7NX.js";
15
+ import "./chunk-EQIXUYBY.js";
16
16
  import {
17
17
  validateJsonOutput
18
18
  } from "./chunk-XPKWKPWA.js";
@@ -22,7 +22,7 @@ import {
22
22
  import {
23
23
  AGENT_REASON
24
24
  } from "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  buildCommandWithGlobalFlags,
@@ -31,7 +31,7 @@ var RULES_CONFIG = {
31
31
  };
32
32
  async function rules(client, argv) {
33
33
  if (argv.length === 0) {
34
- const lsFn = (await import("./ls-7HHDYE6F.js")).default;
34
+ const lsFn = (await import("./ls-7R3DRCUY.js")).default;
35
35
  return lsFn(client, []);
36
36
  }
37
37
  const { subcommand, args, subcommandOriginal } = getSubcommand(
@@ -64,15 +64,15 @@ async function rules(client, argv) {
64
64
  }
65
65
  switch (subcommand) {
66
66
  case "ls":
67
- return (await import("./ls-7HHDYE6F.js")).default(client, args);
67
+ return (await import("./ls-7R3DRCUY.js")).default(client, args);
68
68
  case "add":
69
- return (await import("./add-RNQLGEYS.js")).default(client, args);
69
+ return (await import("./add-CSYGALLC.js")).default(client, args);
70
70
  case "inspect":
71
- return (await import("./rule-inspect-JG7AE5TI.js")).default(client, args);
71
+ return (await import("./rule-inspect-JNZMBVJF.js")).default(client, args);
72
72
  case "rm":
73
- return (await import("./rm-5KXF2PY3.js")).default(client, args);
73
+ return (await import("./rm-XEV4FF6H.js")).default(client, args);
74
74
  case "update":
75
- return (await import("./update-4FMWTIJK.js")).default(client, args);
75
+ return (await import("./update-6LXBPVBH.js")).default(client, args);
76
76
  default:
77
77
  output_manager_default.error(`Unhandled rules subcommand: ${String(subcommandOriginal)}`);
78
78
  return 1;
@@ -17,17 +17,17 @@ import {
17
17
  } from "./chunk-G6RXZLQ2.js";
18
18
  import {
19
19
  getScope
20
- } from "./chunk-L2JUC7NX.js";
20
+ } from "./chunk-EQIXUYBY.js";
21
21
  import {
22
22
  validateJsonOutput
23
23
  } from "./chunk-XPKWKPWA.js";
24
24
  import {
25
25
  schemaSubcommand
26
- } from "./chunk-4RBF6ZDU.js";
26
+ } from "./chunk-BHDZCUTT.js";
27
27
  import "./chunk-GE6G37P4.js";
28
28
  import {
29
29
  require_pluralize
30
- } from "./chunk-537JTK2U.js";
30
+ } from "./chunk-P445TBWL.js";
31
31
  import "./chunk-U3WLEFHU.js";
32
32
  import "./chunk-CGTXAXZ4.js";
33
33
  import "./chunk-CO5D46AG.js";
@@ -57,14 +57,16 @@ async function schema(client, telemetry) {
57
57
  return 1;
58
58
  }
59
59
  const flags = parsedArgs.flags;
60
+ const positionalArgs = parsedArgs.args.slice(1);
61
+ const positionalMetric = positionalArgs[0] === "schema" ? positionalArgs[1] : positionalArgs[0];
60
62
  const formatResult = validateJsonOutput(flags);
61
63
  if (!formatResult.valid) {
62
64
  output_manager_default.error(formatResult.error);
63
65
  return 1;
64
66
  }
65
67
  const jsonOutput = formatResult.jsonOutput;
66
- const metric = flags["--metric"];
67
- telemetry.trackCliOptionMetric(metric);
68
+ const metric = positionalMetric;
69
+ telemetry.trackCliArgumentMetricId(metric);
68
70
  telemetry.trackCliOptionFormat(flags["--format"]);
69
71
  const { team } = await getScope(client);
70
72
  if (!team) {
@@ -129,26 +131,54 @@ function formatMetricsTable(metrics) {
129
131
  if (metrics.length === 0) {
130
132
  return null;
131
133
  }
132
- return indent_default(
134
+ const dimensionsByMetric = metrics.map(
135
+ (metric) => metric.dimensions.map((dimension) => dimension.name)
136
+ );
137
+ const sharedDimensions = dimensionsByMetric[0].filter(
138
+ (dimension) => dimensionsByMetric.every(
139
+ (metricDimensions) => metricDimensions.includes(dimension)
140
+ )
141
+ );
142
+ const rows = metrics.map((metric) => {
143
+ const extraDimensions = metric.dimensions.map((dimension) => dimension.name).filter((dimension) => !sharedDimensions.includes(dimension)).map((dimension) => `+${dimension}`);
144
+ const aggregations = metric.aggregations.map(
145
+ (aggregation) => aggregation === metric.defaultAggregation ? `${aggregation} (default)` : aggregation
146
+ ).join(", ");
147
+ return {
148
+ metric: metric.id,
149
+ description: metric.description,
150
+ unit: metric.unit,
151
+ aggregations,
152
+ extraDimensions
153
+ };
154
+ });
155
+ const hasExtraDimensions = rows.some((row) => row.extraDimensions.length > 0);
156
+ const tableHeaders = hasExtraDimensions ? ["Metric", "Description", "Unit", "Aggregations", "Dimensions"] : ["Metric", "Description", "Unit", "Aggregations"];
157
+ const tableRows = rows.map(
158
+ (row) => hasExtraDimensions ? [
159
+ row.metric,
160
+ row.description,
161
+ row.unit,
162
+ row.aggregations,
163
+ row.extraDimensions.join(", ") || "\u2014"
164
+ ] : [row.metric, row.description, row.unit, row.aggregations]
165
+ );
166
+ const sharedDimensionsLine = sharedDimensions.length > 0 ? metrics.length === 1 ? `Dimensions:
167
+ ${sharedDimensions.join(", ")}` : `Shared dimensions:
168
+ ${sharedDimensions.join(", ")}` : null;
169
+ const table = indent_default(
133
170
  formatTable(
134
- ["Metric", "Description", "Dimensions", "Unit", "Aggregations"],
135
- ["l", "l", "l", "l", "l"],
136
- [
137
- {
138
- rows: metrics.map((metric) => [
139
- metric.id,
140
- metric.description,
141
- metric.dimensions.map((dimension) => dimension.name).join(", ") || "\u2014",
142
- metric.unit,
143
- metric.aggregations.map(
144
- (aggregation) => aggregation === metric.defaultAggregation ? `${aggregation} (default)` : aggregation
145
- ).join(", ")
146
- ])
147
- }
148
- ]
171
+ tableHeaders,
172
+ hasExtraDimensions ? ["l", "l", "l", "l", "l"] : ["l", "l", "l", "l"],
173
+ [{ rows: tableRows }]
149
174
  ),
150
175
  1
151
176
  );
177
+ return sharedDimensionsLine ? `
178
+ ${table}
179
+
180
+ ${sharedDimensionsLine}` : `
181
+ ${table}`;
152
182
  }
153
183
  export {
154
184
  schema as default
@@ -9,10 +9,10 @@ import {
9
9
  handleRulesApiError,
10
10
  parseRulesFlagsAndScope,
11
11
  rulesItemPath
12
- } from "./chunk-HQXVCOH6.js";
13
- import "./chunk-7ZDERWUW.js";
12
+ } from "./chunk-T7LHO6SF.js";
13
+ import "./chunk-KNZNWP2U.js";
14
14
  import "./chunk-HTOH3MSD.js";
15
- import "./chunk-L2JUC7NX.js";
15
+ import "./chunk-EQIXUYBY.js";
16
16
  import {
17
17
  validateJsonOutput
18
18
  } from "./chunk-XPKWKPWA.js";
@@ -22,7 +22,7 @@ import {
22
22
  import {
23
23
  AGENT_REASON
24
24
  } from "./chunk-E3NE4SKN.js";
25
- import "./chunk-537JTK2U.js";
25
+ import "./chunk-P445TBWL.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  buildCommandWithGlobalFlags,