@zapier/zapier-sdk-cli 0.84.6 → 0.85.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/index.cjs CHANGED
@@ -9,7 +9,7 @@ var path = require('path');
9
9
  var lockfile = require('proper-lockfile');
10
10
  var zapierSdk = require('@zapier/zapier-sdk');
11
11
  var zod = require('zod');
12
- var chalk5 = require('chalk');
12
+ var chalk6 = require('chalk');
13
13
  var os = require('os');
14
14
  var inquirer4 = require('inquirer');
15
15
  var core = require('@inquirer/core');
@@ -61,7 +61,7 @@ var fs__namespace = /*#__PURE__*/_interopNamespace(fs);
61
61
  var crypto__default = /*#__PURE__*/_interopDefault(crypto);
62
62
  var path__namespace = /*#__PURE__*/_interopNamespace(path);
63
63
  var lockfile__namespace = /*#__PURE__*/_interopNamespace(lockfile);
64
- var chalk5__default = /*#__PURE__*/_interopDefault(chalk5);
64
+ var chalk6__default = /*#__PURE__*/_interopDefault(chalk6);
65
65
  var inquirer4__default = /*#__PURE__*/_interopDefault(inquirer4);
66
66
  var express__default = /*#__PURE__*/_interopDefault(express);
67
67
  var open__default = /*#__PURE__*/_interopDefault(open);
@@ -916,6 +916,17 @@ function getConfigPath() {
916
916
  function toKebabCase(str) {
917
917
  return str.replace(/([A-Z]+)([A-Z][a-z])/g, "$1-$2").replace(/([a-z\d])([A-Z])/g, "$1-$2").toLowerCase();
918
918
  }
919
+ function warningBlock({
920
+ banner,
921
+ message,
922
+ detail
923
+ }) {
924
+ console.warn();
925
+ console.warn(chalk6__default.default.yellow.bold(banner) + chalk6__default.default.yellow(message));
926
+ if (detail) console.warn(chalk6__default.default.yellow(` ${detail}`));
927
+ console.warn();
928
+ }
929
+ var DEPRECATION_BANNER = "\u26A0\uFE0F DEPRECATION WARNING";
919
930
 
920
931
  // src/utils/retry.ts
921
932
  function sleep(ms) {
@@ -1152,9 +1163,9 @@ function normalizeChoices(choices) {
1152
1163
  var theme = core.makeTheme({
1153
1164
  icon: { cursor: "\u276F" },
1154
1165
  style: {
1155
- disabled: (text) => chalk5__default.default.dim(`- ${text}`),
1156
- searchTerm: (text) => chalk5__default.default.cyan(text),
1157
- keysHelpTip: (keys) => keys.map(([key, action]) => `${chalk5__default.default.bold(key)} ${chalk5__default.default.dim(action)}`).join(chalk5__default.default.dim(" \u2022 "))
1166
+ disabled: (text) => chalk6__default.default.dim(`- ${text}`),
1167
+ searchTerm: (text) => chalk6__default.default.cyan(text),
1168
+ keysHelpTip: (keys) => keys.map(([key, action]) => `${chalk6__default.default.bold(key)} ${chalk6__default.default.dim(action)}`).join(chalk6__default.default.dim(" \u2022 "))
1158
1169
  }
1159
1170
  });
1160
1171
  var searchSelect = core.createPrompt(
@@ -1331,14 +1342,14 @@ function formatCredentialsChoice({
1331
1342
  credentials,
1332
1343
  current
1333
1344
  }) {
1334
- const currentLabel = current ? chalk5__default.default.cyan(" (current)") : "";
1345
+ const currentLabel = current ? chalk6__default.default.cyan(" (current)") : "";
1335
1346
  const details = [
1336
1347
  credentials.clientId,
1337
1348
  credentials.scopes.join(", "),
1338
1349
  `created ${createdAtIso(credentials).slice(0, 10)}`
1339
1350
  ].join(" \xB7 ");
1340
1351
  return {
1341
- name: `${credentials.name}${currentLabel} ${chalk5__default.default.dim(`\xB7 ${details}`)}`,
1352
+ name: `${credentials.name}${currentLabel} ${chalk6__default.default.dim(`\xB7 ${details}`)}`,
1342
1353
  short: credentials.name,
1343
1354
  value: { action: "switch", credentials }
1344
1355
  };
@@ -1514,20 +1525,20 @@ var getCallablePromise = () => {
1514
1525
  var getCallablePromise_default = getCallablePromise;
1515
1526
  var log = {
1516
1527
  info: (message, ...args) => {
1517
- console.error(chalk5__default.default.blue("\u2139"), message, ...args);
1528
+ console.error(chalk6__default.default.blue("\u2139"), message, ...args);
1518
1529
  },
1519
1530
  error: (message, ...args) => {
1520
- console.error(chalk5__default.default.red("\u2716"), message, ...args);
1531
+ console.error(chalk6__default.default.red("\u2716"), message, ...args);
1521
1532
  },
1522
1533
  success: (message, ...args) => {
1523
- console.error(chalk5__default.default.green("\u2713"), message, ...args);
1534
+ console.error(chalk6__default.default.green("\u2713"), message, ...args);
1524
1535
  },
1525
1536
  warn: (message, ...args) => {
1526
- console.error(chalk5__default.default.yellow("\u26A0"), message, ...args);
1537
+ console.error(chalk6__default.default.yellow("\u26A0"), message, ...args);
1527
1538
  },
1528
1539
  debug: (message, ...args) => {
1529
1540
  if (process.env.DEBUG === "true" || process.argv.includes("--debug")) {
1530
- console.error(chalk5__default.default.gray("\u{1F41B}"), message, ...args);
1541
+ console.error(chalk6__default.default.gray("\u{1F41B}"), message, ...args);
1531
1542
  }
1532
1543
  }
1533
1544
  };
@@ -3039,9 +3050,9 @@ var CLI_EXTENSIONS_ID = "cli/extensions";
3039
3050
  var cliExtensionsPluginRef = zapierSdk.declareOptionalProperty({
3040
3051
  id: CLI_EXTENSIONS_ID
3041
3052
  });
3042
- var CLI_EXPERIMENTAL_ID = "cli/experimental";
3043
- var cliExperimentalPluginRef = zapierSdk.declareOptionalProperty({
3044
- id: CLI_EXPERIMENTAL_ID
3053
+ var CLI_STABILITY_ID = "cli/stability";
3054
+ var cliStabilityPluginRef = zapierSdk.declareOptionalProperty({
3055
+ id: CLI_STABILITY_ID
3045
3056
  });
3046
3057
  var McpSchema = zod.z.object({
3047
3058
  port: zod.z.string().optional().describe("Port to listen on (for future HTTP transport)")
@@ -3050,11 +3061,7 @@ var McpSchema = zod.z.object({
3050
3061
  // src/plugins/mcp/index.ts
3051
3062
  var mcpPlugin = zapierSdk.defineMethod({
3052
3063
  name: "mcp",
3053
- imports: [
3054
- zapierSdk.sdkOptionsPluginRef,
3055
- cliExtensionsPluginRef,
3056
- cliExperimentalPluginRef
3057
- ],
3064
+ imports: [zapierSdk.sdkOptionsPluginRef, cliExtensionsPluginRef, cliStabilityPluginRef],
3058
3065
  output: "raw",
3059
3066
  inputSchema: McpSchema,
3060
3067
  categories: ["utility"],
@@ -3064,7 +3071,7 @@ var mcpPlugin = zapierSdk.defineMethod({
3064
3071
  debug: imports.sdkOptions?.debug,
3065
3072
  maxConcurrentRequests: imports.sdkOptions?.maxConcurrentRequests,
3066
3073
  extensions: imports.extensions,
3067
- experimental: imports.experimental
3074
+ stability: imports.stability
3068
3075
  });
3069
3076
  }
3070
3077
  });
@@ -4747,7 +4754,7 @@ function buildTemplateVariables({
4747
4754
  };
4748
4755
  }
4749
4756
  function cleanupProject({ projectDir }) {
4750
- console.log("\n" + chalk5__default.default.yellow("!") + " Cleaning up...");
4757
+ console.log("\n" + chalk6__default.default.yellow("!") + " Cleaning up...");
4751
4758
  fs.rmSync(projectDir, { recursive: true, force: true });
4752
4759
  }
4753
4760
  async function withInterruptCleanup(cleanup, fn) {
@@ -4957,8 +4964,8 @@ function buildNextSteps({
4957
4964
  }
4958
4965
  function createConsoleDisplayHooks() {
4959
4966
  return {
4960
- onItemComplete: (message) => console.log(" " + chalk5__default.default.green("\u2713") + " " + chalk5__default.default.dim(message)),
4961
- onWarn: (message) => console.warn(chalk5__default.default.yellow("!") + " " + message),
4967
+ onItemComplete: (message) => console.log(" " + chalk6__default.default.green("\u2713") + " " + chalk6__default.default.dim(message)),
4968
+ onWarn: (message) => console.warn(chalk6__default.default.yellow("!") + " " + message),
4962
4969
  onStepStart: ({
4963
4970
  description,
4964
4971
  stepNumber,
@@ -4967,31 +4974,31 @@ function createConsoleDisplayHooks() {
4967
4974
  nonInteractive
4968
4975
  }) => {
4969
4976
  const progressMessage = `${description}...`;
4970
- const stepCounter = chalk5__default.default.dim(`${stepNumber}/${totalSteps}`);
4977
+ const stepCounter = chalk6__default.default.dim(`${stepNumber}/${totalSteps}`);
4971
4978
  if (nonInteractive) {
4972
4979
  console.log(
4973
- "\n" + chalk5__default.default.bold(`\u276F ${progressMessage}`) + " " + stepCounter + "\n"
4980
+ "\n" + chalk6__default.default.bold(`\u276F ${progressMessage}`) + " " + stepCounter + "\n"
4974
4981
  );
4975
4982
  } else {
4976
4983
  console.log(
4977
- chalk5__default.default.dim("\u2192") + " " + progressMessage + " " + stepCounter
4984
+ chalk6__default.default.dim("\u2192") + " " + progressMessage + " " + stepCounter
4978
4985
  );
4979
4986
  }
4980
4987
  if (command) {
4981
- console.log(" " + chalk5__default.default.cyan(`$ ${command}`));
4988
+ console.log(" " + chalk6__default.default.cyan(`$ ${command}`));
4982
4989
  }
4983
4990
  },
4984
4991
  onStepSuccess: ({ stepNumber, totalSteps }) => console.log(
4985
- "\n" + chalk5__default.default.green("\u2713") + " " + chalk5__default.default.dim(`Step ${stepNumber}/${totalSteps} complete`) + "\n"
4992
+ "\n" + chalk6__default.default.green("\u2713") + " " + chalk6__default.default.dim(`Step ${stepNumber}/${totalSteps} complete`) + "\n"
4986
4993
  ),
4987
4994
  onStepError: ({ description, command, err }) => {
4988
4995
  const detail = err instanceof Error && err.message ? `
4989
- ${chalk5__default.default.dim(err.message)}` : "";
4996
+ ${chalk6__default.default.dim(err.message)}` : "";
4990
4997
  const hint = command ? `
4991
- ${chalk5__default.default.dim("run manually:")} ${chalk5__default.default.cyan(`$ ${command}`)}` : "";
4998
+ ${chalk6__default.default.dim("run manually:")} ${chalk6__default.default.cyan(`$ ${command}`)}` : "";
4992
4999
  console.error(
4993
5000
  `
4994
- ${chalk5__default.default.red("\u2716")} ${chalk5__default.default.bold(description)}${chalk5__default.default.dim(" failed")}${detail}${hint}`
5001
+ ${chalk6__default.default.red("\u2716")} ${chalk6__default.default.bold(description)}${chalk6__default.default.dim(" failed")}${detail}${hint}`
4995
5002
  );
4996
5003
  }
4997
5004
  };
@@ -5003,22 +5010,22 @@ function displaySummaryAndNextSteps({
5003
5010
  packageManager
5004
5011
  }) {
5005
5012
  const formatStatus = (complete) => ({
5006
- icon: complete ? chalk5__default.default.green("\u2713") : chalk5__default.default.yellow("!"),
5007
- text: complete ? chalk5__default.default.green("Setup complete") : chalk5__default.default.yellow("Setup interrupted")
5013
+ icon: complete ? chalk6__default.default.green("\u2713") : chalk6__default.default.yellow("!"),
5014
+ text: complete ? chalk6__default.default.green("Setup complete") : chalk6__default.default.yellow("Setup interrupted")
5008
5015
  });
5009
- const formatNextStep = (step, i) => " " + chalk5__default.default.dim(`${i + 1}.`) + " " + chalk5__default.default.bold(step.description);
5010
- const formatCommand = (cmd) => " " + chalk5__default.default.cyan(`$ ${cmd}`);
5011
- const formatCompletedStep = (step) => " " + chalk5__default.default.green("\u2713") + " " + step.description;
5016
+ const formatNextStep = (step, i) => " " + chalk6__default.default.dim(`${i + 1}.`) + " " + chalk6__default.default.bold(step.description);
5017
+ const formatCommand = (cmd) => " " + chalk6__default.default.cyan(`$ ${cmd}`);
5018
+ const formatCompletedStep = (step) => " " + chalk6__default.default.green("\u2713") + " " + step.description;
5012
5019
  const { execCmd } = getPackageManagerCommands({ packageManager });
5013
5020
  const leftoverSteps = steps.filter(
5014
5021
  (s) => !completedSetupStepIds.includes(s.id)
5015
5022
  );
5016
5023
  const isComplete = leftoverSteps.length === 0;
5017
5024
  const status = formatStatus(isComplete);
5018
- console.log("\n" + chalk5__default.default.bold("\u276F Summary") + "\n");
5019
- console.log(" " + chalk5__default.default.dim("Project") + " " + chalk5__default.default.bold(projectName));
5025
+ console.log("\n" + chalk6__default.default.bold("\u276F Summary") + "\n");
5026
+ console.log(" " + chalk6__default.default.dim("Project") + " " + chalk6__default.default.bold(projectName));
5020
5027
  console.log(
5021
- " " + chalk5__default.default.dim("Status") + " " + status.icon + " " + status.text
5028
+ " " + chalk6__default.default.dim("Status") + " " + status.icon + " " + status.text
5022
5029
  );
5023
5030
  const completedSteps = steps.filter(
5024
5031
  (s) => completedSetupStepIds.includes(s.id)
@@ -5028,7 +5035,7 @@ function displaySummaryAndNextSteps({
5028
5035
  for (const step of completedSteps) console.log(formatCompletedStep(step));
5029
5036
  }
5030
5037
  const nextSteps = buildNextSteps({ projectName, leftoverSteps, execCmd });
5031
- console.log("\n" + chalk5__default.default.bold("\u276F Next Steps") + "\n");
5038
+ console.log("\n" + chalk6__default.default.bold("\u276F Next Steps") + "\n");
5032
5039
  nextSteps.forEach((step, i) => {
5033
5040
  console.log(formatNextStep(step, i));
5034
5041
  if (step.command) console.log(formatCommand(step.command));
@@ -5111,10 +5118,10 @@ async function promptText({
5111
5118
  ]);
5112
5119
  return value;
5113
5120
  }
5114
- var display = (c) => c.hint ? `${c.label} ${chalk5__default.default.dim(`(${c.hint})`)}` : c.label;
5121
+ var display = (c) => c.hint ? `${c.label} ${chalk6__default.default.dim(`(${c.hint})`)}` : c.label;
5115
5122
  var HIGH_CONTRAST_PROMPT_THEME = {
5116
5123
  style: {
5117
- answer: (text) => chalk5__default.default.inverse.bold(` ${text} `)
5124
+ answer: (text) => chalk6__default.default.inverse.bold(` ${text} `)
5118
5125
  }
5119
5126
  };
5120
5127
  function buildSelectRows(question, term) {
@@ -5130,8 +5137,8 @@ function buildSelectRows(question, term) {
5130
5137
  name: display(c),
5131
5138
  value: c.value
5132
5139
  }));
5133
- const skipRow = offers(question, "skip") ? [row(chalk5__default.default.dim("Skip (optional)"), "skip")] : [];
5134
- const customRow = offers(question, "custom") ? [row(chalk5__default.default.dim("Enter a value manually\u2026"), "custom")] : [];
5140
+ const skipRow = offers(question, "skip") ? [row(chalk6__default.default.dim("Skip (optional)"), "skip")] : [];
5141
+ const customRow = offers(question, "custom") ? [row(chalk6__default.default.dim("Enter a value manually\u2026"), "custom")] : [];
5135
5142
  const committed = !!t || question.search !== void 0;
5136
5143
  let rows;
5137
5144
  if (!committed) {
@@ -5142,13 +5149,13 @@ function buildSelectRows(question, term) {
5142
5149
  rows = [...customRow, ...skipRow];
5143
5150
  }
5144
5151
  if (offers(question, "search"))
5145
- rows.push(row(chalk5__default.default.cyan("Search again\u2026"), "search"));
5152
+ rows.push(row(chalk6__default.default.cyan("Search again\u2026"), "search"));
5146
5153
  if (offers(question, "next_page"))
5147
- rows.push(row(chalk5__default.default.dim("Load more\u2026"), "next_page"));
5148
- if (offers(question, "retry")) rows.push(row(chalk5__default.default.yellow("Retry"), "retry"));
5149
- if (offers(question, "cancel")) rows.push(row(chalk5__default.default.dim("Cancel"), "cancel"));
5154
+ rows.push(row(chalk6__default.default.dim("Load more\u2026"), "next_page"));
5155
+ if (offers(question, "retry")) rows.push(row(chalk6__default.default.yellow("Retry"), "retry"));
5156
+ if (offers(question, "cancel")) rows.push(row(chalk6__default.default.dim("Cancel"), "cancel"));
5150
5157
  for (const note of question.notes ?? [])
5151
- rows.push({ name: chalk5__default.default.dim(note), value: note, disabled: true });
5158
+ rows.push({ name: chalk6__default.default.dim(note), value: note, disabled: true });
5152
5159
  return rows;
5153
5160
  }
5154
5161
  function foldPage(acc, question, field) {
@@ -5228,12 +5235,12 @@ async function answerSelect(question, field, box, failed, mode) {
5228
5235
  })),
5229
5236
  ...offers(question, "next_page") ? [
5230
5237
  {
5231
- name: chalk5__default.default.dim("Load more\u2026"),
5238
+ name: chalk6__default.default.dim("Load more\u2026"),
5232
5239
  value: { action: "next_page" }
5233
5240
  }
5234
5241
  ] : [],
5235
5242
  ...(question.notes ?? []).map((note) => ({
5236
- name: chalk5__default.default.dim(note),
5243
+ name: chalk6__default.default.dim(note),
5237
5244
  value: note,
5238
5245
  disabled: true
5239
5246
  }))
@@ -5310,14 +5317,14 @@ async function answerSelect(question, field, box, failed, mode) {
5310
5317
  case "retry":
5311
5318
  return { type: "retry" };
5312
5319
  case "skip":
5313
- printAnswered(view.message, chalk5__default.default.dim("(skipped)"));
5320
+ printAnswered(view.message, chalk6__default.default.dim("(skipped)"));
5314
5321
  return { type: "skip" };
5315
5322
  case "cancel":
5316
5323
  return { type: "cancel" };
5317
5324
  }
5318
5325
  }
5319
5326
  function printAnswered(message, label) {
5320
- console.log(`${chalk5__default.default.green("\u2714")} ${message} ${chalk5__default.default.cyan(label)}`);
5327
+ console.log(`${chalk6__default.default.green("\u2714")} ${message} ${chalk6__default.default.cyan(label)}`);
5321
5328
  }
5322
5329
  async function answerInput(question) {
5323
5330
  const message = question.placeholder ? question.message.replace(/:?\s*$/, ` (${question.placeholder}):`) : question.message;
@@ -5354,7 +5361,7 @@ function createCliAnswer({
5354
5361
  try {
5355
5362
  if (result.error !== void 0) {
5356
5363
  const message = typeof result.error === "string" ? result.error : result.error.message;
5357
- console.log(chalk5__default.default.yellow(`! ${message}`));
5364
+ console.log(chalk6__default.default.yellow(`! ${message}`));
5358
5365
  }
5359
5366
  const question = result.question;
5360
5367
  const field = question.path.length ? question.path.join(".") : "value";
@@ -5523,7 +5530,7 @@ var boltFillRanks = new Map(
5523
5530
  );
5524
5531
  var STATUS_ROW_INDEX = Math.floor(boltRows.length / 2);
5525
5532
  function formatPhase({ label, detail }) {
5526
- return detail ? `${chalk5__default.default.bold(label)} ${chalk5__default.default.dim(detail)}` : chalk5__default.default.bold(label);
5533
+ return detail ? `${chalk6__default.default.bold(label)} ${chalk6__default.default.dim(detail)}` : chalk6__default.default.bold(label);
5527
5534
  }
5528
5535
  function formatLoaderFrame({
5529
5536
  phase,
@@ -5535,7 +5542,7 @@ function formatLoaderFrame({
5535
5542
  const cellIndex = rowIndex * row.length + columnIndex;
5536
5543
  const fillRank = boltFillRanks.get(cellIndex);
5537
5544
  const isFilled = fillRank !== void 0 && fillRank < fillStage;
5538
- return isFilled ? chalk5__default.default.bold.yellow(cell) : chalk5__default.default.dim.yellow(cell);
5545
+ return isFilled ? chalk6__default.default.bold.yellow(cell) : chalk6__default.default.dim.yellow(cell);
5539
5546
  }).join("");
5540
5547
  const status = rowIndex === STATUS_ROW_INDEX ? ` ${formatPhase(phase)}` : "";
5541
5548
  return `${bolt}${status}`;
@@ -5567,12 +5574,12 @@ async function runWithSetupLoader({
5567
5574
  const result = await promise;
5568
5575
  clearInterval(animationTimer);
5569
5576
  const elapsedSeconds = ((Date.now() - startedAt) / 1e3).toFixed(1);
5570
- loader.succeed(`${formatPhase(phase)} ${chalk5__default.default.dim(`${elapsedSeconds}s`)}`);
5577
+ loader.succeed(`${formatPhase(phase)} ${chalk6__default.default.dim(`${elapsedSeconds}s`)}`);
5571
5578
  return result;
5572
5579
  } catch (error) {
5573
5580
  clearInterval(animationTimer);
5574
5581
  const elapsedSeconds = ((Date.now() - startedAt) / 1e3).toFixed(1);
5575
- loader.fail(`${formatPhase(phase)} ${chalk5__default.default.dim(`${elapsedSeconds}s`)}`);
5582
+ loader.fail(`${formatPhase(phase)} ${chalk6__default.default.dim(`${elapsedSeconds}s`)}`);
5576
5583
  throw error;
5577
5584
  }
5578
5585
  }
@@ -6063,7 +6070,7 @@ async function runCommand({
6063
6070
  detail: commandLabel
6064
6071
  });
6065
6072
  }
6066
- console.log(chalk5__default.default.dim(commandLabel));
6073
+ console.log(chalk6__default.default.dim(commandLabel));
6067
6074
  return await execute;
6068
6075
  } catch (error) {
6069
6076
  const message = error instanceof Error ? error.message : String(error);
@@ -6330,7 +6337,7 @@ function printAgentPrompt({
6330
6337
  message
6331
6338
  }) {
6332
6339
  console.log();
6333
- console.log(chalk5__default.default.bgYellow.black.bold(message));
6340
+ console.log(chalk6__default.default.bgYellow.black.bold(message));
6334
6341
  console.log();
6335
6342
  console.log(buildAgentPrompt({ context }));
6336
6343
  }
@@ -6615,7 +6622,7 @@ var MINIMUM_MESSAGE_WIDTH = 20;
6615
6622
  var MAXIMUM_MESSAGE_WIDTH = 88;
6616
6623
  function showPhase({ number, title }) {
6617
6624
  console.log();
6618
- console.log(chalk5__default.default.bgCyan.black.bold(` ${number}/${PHASE_COUNT} ${title} `));
6625
+ console.log(chalk6__default.default.bgCyan.black.bold(` ${number}/${PHASE_COUNT} ${title} `));
6619
6626
  }
6620
6627
  function printWrapped(text) {
6621
6628
  const width = Math.max(
@@ -6629,7 +6636,7 @@ function printWrapped(text) {
6629
6636
  }
6630
6637
  function showReadyMessage() {
6631
6638
  console.log();
6632
- console.log(chalk5__default.default.bgGreen.black.bold(" \u2713 Zapier SDK setup complete "));
6639
+ console.log(chalk6__default.default.bgGreen.black.bold(" \u2713 Zapier SDK setup complete "));
6633
6640
  console.log();
6634
6641
  printWrapped(
6635
6642
  "Use active Zapier connections to access 9,000+ app connectors without managing each app's OAuth, token refresh, or retries."
@@ -6641,7 +6648,7 @@ function showReadyMessage() {
6641
6648
  console.log();
6642
6649
  }
6643
6650
  async function runWizard(context) {
6644
- console.log(chalk5__default.default.bold("Zapier SDK setup"));
6651
+ console.log(chalk6__default.default.bold("Zapier SDK setup"));
6645
6652
  showPhase({ number: 1, title: "Project directory" });
6646
6653
  await chooseDirectory(context);
6647
6654
  showPhase({ number: 2, title: "Node.js" });
@@ -6656,7 +6663,7 @@ async function runWizard(context) {
6656
6663
  showPhase({ number: 6, title: "Slack demo" });
6657
6664
  await offerSlackTest(context);
6658
6665
  showReadyMessage();
6659
- console.log(chalk5__default.default.bgCyan.black.bold(" Next steps "));
6666
+ console.log(chalk6__default.default.bgCyan.black.bold(" Next steps "));
6660
6667
  await openAgentHandoff(context);
6661
6668
  }
6662
6669
 
@@ -6715,13 +6722,13 @@ function createInteractiveCallback() {
6715
6722
  const attrs = message.message_attributes;
6716
6723
  console.log(
6717
6724
  `
6718
- ${chalk5__default.default.bold(`Message #${messageNumber}`)} ${chalk5__default.default.dim(message.id)} ${chalk5__default.default.dim(`(lease #${attrs.lease_count})`)}`
6725
+ ${chalk6__default.default.bold(`Message #${messageNumber}`)} ${chalk6__default.default.dim(message.id)} ${chalk6__default.default.dim(`(lease #${attrs.lease_count})`)}`
6719
6726
  );
6720
6727
  if (attrs.error_message) {
6721
- console.log(chalk5__default.default.yellow(` upstream error: ${attrs.error_message}`));
6728
+ console.log(chalk6__default.default.yellow(` upstream error: ${attrs.error_message}`));
6722
6729
  }
6723
6730
  if (attrs.possible_duplicate_data) {
6724
- console.log(chalk5__default.default.yellow(" possible duplicate data"));
6731
+ console.log(chalk6__default.default.yellow(" possible duplicate data"));
6725
6732
  }
6726
6733
  while (true) {
6727
6734
  let action;
@@ -6751,7 +6758,7 @@ ${chalk5__default.default.bold(`Message #${messageNumber}`)} ${chalk5__default.d
6751
6758
  throw error;
6752
6759
  }
6753
6760
  if (action === "view") {
6754
- console.log(chalk5__default.default.dim(JSON.stringify(message.payload, null, 2)));
6761
+ console.log(chalk6__default.default.dim(JSON.stringify(message.payload, null, 2)));
6755
6762
  continue;
6756
6763
  }
6757
6764
  if (action === "ack") {
@@ -6854,7 +6861,7 @@ function describeReason(reason) {
6854
6861
  }
6855
6862
  function printDrainError(reason, message) {
6856
6863
  console.error(
6857
- chalk5__default.default.red(`Error processing ${message.id}: ${describeReason(reason)}`)
6864
+ chalk6__default.default.red(`Error processing ${message.id}: ${describeReason(reason)}`)
6858
6865
  );
6859
6866
  }
6860
6867
  function printDrainSummary(counts) {
@@ -6864,7 +6871,7 @@ function printDrainSummary(counts) {
6864
6871
  if (skipped > 0) parts.push(`${skipped} skipped`);
6865
6872
  parts.push(`${counts.rejected} rejected`);
6866
6873
  console.log(
6867
- chalk5__default.default.dim(
6874
+ chalk6__default.default.dim(
6868
6875
  `
6869
6876
  Processed ${total} message${total === 1 ? "" : "s"} (${parts.join(", ")}).`
6870
6877
  )
@@ -6872,7 +6879,7 @@ Processed ${total} message${total === 1 ? "" : "s"} (${parts.join(", ")}).`
6872
6879
  }
6873
6880
  function warnInteractiveContinueOnErrorOverride() {
6874
6881
  console.warn(
6875
- chalk5__default.default.yellow(
6882
+ chalk6__default.default.yellow(
6876
6883
  'Note: continueOnError=false is overridden to true in interactive mode (the "Skip (let lease expire)" choice would otherwise terminate the drain).'
6877
6884
  )
6878
6885
  );
@@ -7198,7 +7205,7 @@ experimental.defineMethod({
7198
7205
  type: "create",
7199
7206
  itemType: "Workflow",
7200
7207
  categories: ["code-workflow"],
7201
- experimental: true,
7208
+ stability: "experimental",
7202
7209
  inputSchema: CreateWorkflowCliOptionsSchema,
7203
7210
  outputSchema: experimental.CreateWorkflowResponseSchema,
7204
7211
  skipOutputValidation: true,
@@ -7225,21 +7232,33 @@ function collectDeprecationNoticeAndForward(event, onEvent) {
7225
7232
  // package.json with { type: 'json' }
7226
7233
  var package_default = {
7227
7234
  name: "@zapier/zapier-sdk-cli",
7228
- version: "0.84.6"};
7235
+ version: "0.85.0"};
7229
7236
 
7230
7237
  // src/sdk.ts
7231
7238
  var warnedDeprecatedMethods = /* @__PURE__ */ new Set();
7239
+ var warnedStabilityMethods = /* @__PURE__ */ new Set();
7232
7240
  var cliCoreOptions = {
7233
7241
  ...zapierSdk.zapierCoreOptions,
7234
7242
  logDeprecation: ({ methodName, deprecation }) => {
7235
7243
  if (warnedDeprecatedMethods.has(methodName)) return;
7236
7244
  warnedDeprecatedMethods.add(methodName);
7237
- console.warn();
7238
- console.warn(
7239
- chalk5__default.default.yellow.bold("\u26A0\uFE0F DEPRECATION WARNING") + chalk5__default.default.yellow(` - \`${toKebabCase(methodName)}\` is deprecated.`)
7240
- );
7241
- console.warn(chalk5__default.default.yellow(` ${deprecation.message}`));
7242
- console.warn();
7245
+ warningBlock({
7246
+ banner: DEPRECATION_BANNER,
7247
+ message: ` - \`${toKebabCase(methodName)}\` is deprecated.`,
7248
+ detail: deprecation.message
7249
+ });
7250
+ },
7251
+ logStabilityNotice: ({ methodName, stability }) => {
7252
+ if (stability === "stable") return;
7253
+ if (warnedStabilityMethods.has(methodName)) return;
7254
+ warnedStabilityMethods.add(methodName);
7255
+ warningBlock({
7256
+ banner: `\u26A0\uFE0F ${stability.toUpperCase()} COMMAND`,
7257
+ message: ` - \`${toKebabCase(methodName)}\` is marked ${stability}.`,
7258
+ // The detail line is the tier's consumer contract, so the CLI says the
7259
+ // same thing as the SDK's runtime notice and the generated docs.
7260
+ detail: zapierSdk.STABILITY_DEFINITIONS[stability]
7261
+ });
7243
7262
  }
7244
7263
  };
7245
7264
  zapierSdk.injectCliLogin(login_exports);
@@ -7307,7 +7326,7 @@ function createZapierCliSdk(options = {}) {
7307
7326
 
7308
7327
  // package.json
7309
7328
  var package_default2 = {
7310
- version: "0.84.6"};
7329
+ version: "0.85.0"};
7311
7330
 
7312
7331
  // src/telemetry/builders.ts
7313
7332
  function createCliBaseEvent(context = {}) {
@@ -7366,11 +7385,10 @@ function buildCliCommandExecutedEvent({
7366
7385
  is_headless: data.is_headless ?? null
7367
7386
  };
7368
7387
  }
7369
-
7370
- // src/utils/cli-options.ts
7371
7388
  var ReservedCliParameter = /* @__PURE__ */ ((ReservedCliParameter2) => {
7372
7389
  ReservedCliParameter2["Version"] = "version";
7373
7390
  ReservedCliParameter2["Help"] = "help";
7391
+ ReservedCliParameter2["Stability"] = "stability";
7374
7392
  return ReservedCliParameter2;
7375
7393
  })(ReservedCliParameter || {});
7376
7394
  var RESERVED_CLI_OPTIONS = [
@@ -7385,6 +7403,11 @@ var RESERVED_CLI_OPTIONS = [
7385
7403
  flag: "--help",
7386
7404
  short: "-h",
7387
7405
  description: "Display help for command"
7406
+ },
7407
+ {
7408
+ name: "stability" /* Stability */,
7409
+ flag: "--stability <level>",
7410
+ description: `Which stability tier of the SDK / CLI surface to use: ${zapierSdk.STABILITY_LEVELS.join(", ")}. Can also be set with the ZAPIER_STABILITY environment variable (default: stable).`
7388
7411
  }
7389
7412
  ];
7390
7413
  function getReservedCliOption(name) {
package/dist/index.d.mts CHANGED
@@ -118,7 +118,8 @@ interface CliOption {
118
118
  }
119
119
  declare enum ReservedCliParameter {
120
120
  Version = "version",
121
- Help = "help"
121
+ Help = "help",
122
+ Stability = "stability"
122
123
  }
123
124
  /** CLI options at the framework level, not defined by any SDK command. */
124
125
  declare const RESERVED_CLI_OPTIONS: readonly Readonly<CliOption>[];
package/dist/index.d.ts CHANGED
@@ -118,7 +118,8 @@ interface CliOption {
118
118
  }
119
119
  declare enum ReservedCliParameter {
120
120
  Version = "version",
121
- Help = "help"
121
+ Help = "help",
122
+ Stability = "stability"
122
123
  }
123
124
  /** CLI options at the framework level, not defined by any SDK command. */
124
125
  declare const RESERVED_CLI_OPTIONS: readonly Readonly<CliOption>[];