@wraps.dev/cli 2.14.2 → 2.14.3

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/cli.js CHANGED
@@ -8969,8 +8969,8 @@ async function authStatus(_options = {}) {
8969
8969
  init_esm_shims();
8970
8970
  init_events();
8971
8971
  init_aws();
8972
- init_json_output();
8973
8972
  init_aws_detection();
8973
+ init_json_output();
8974
8974
  import * as clack5 from "@clack/prompts";
8975
8975
  import pc6 from "picocolors";
8976
8976
  async function runDiagnostics(state) {
@@ -9902,8 +9902,8 @@ init_events();
9902
9902
  init_route53();
9903
9903
  init_aws();
9904
9904
  init_errors();
9905
- init_json_output();
9906
9905
  init_fs();
9906
+ init_json_output();
9907
9907
  init_metadata();
9908
9908
  init_output();
9909
9909
  import * as clack9 from "@clack/prompts";
@@ -11158,8 +11158,8 @@ function validateConfig2(config2) {
11158
11158
  // src/commands/cdn/init.ts
11159
11159
  init_aws();
11160
11160
  init_errors();
11161
- init_json_output();
11162
11161
  init_fs();
11162
+ init_json_output();
11163
11163
  init_metadata();
11164
11164
  init_output();
11165
11165
  init_prompts();
@@ -12083,10 +12083,10 @@ import * as pulumi7 from "@pulumi/pulumi";
12083
12083
  import pc13 from "picocolors";
12084
12084
  init_client();
12085
12085
  init_events();
12086
- init_errors();
12087
- init_json_output();
12088
12086
  init_aws();
12087
+ init_errors();
12089
12088
  init_fs();
12089
+ init_json_output();
12090
12090
  init_metadata();
12091
12091
  init_output();
12092
12092
  async function cdnSync(options) {
@@ -12262,10 +12262,10 @@ import * as pulumi8 from "@pulumi/pulumi";
12262
12262
  import pc14 from "picocolors";
12263
12263
  init_client();
12264
12264
  init_events();
12265
- init_errors();
12266
- init_json_output();
12267
12265
  init_aws();
12266
+ init_errors();
12268
12267
  init_fs();
12268
+ init_json_output();
12269
12269
  init_metadata();
12270
12270
  init_output();
12271
12271
  async function cdnUpgrade(options) {
@@ -12273,7 +12273,9 @@ async function cdnUpgrade(options) {
12273
12273
  const progress = new DeploymentProgress();
12274
12274
  if (!isJsonMode()) {
12275
12275
  clack13.intro(
12276
- pc14.bold(options.preview ? "Wraps CDN Upgrade Preview" : "Wraps CDN Upgrade")
12276
+ pc14.bold(
12277
+ options.preview ? "Wraps CDN Upgrade Preview" : "Wraps CDN Upgrade"
12278
+ )
12277
12279
  );
12278
12280
  }
12279
12281
  const identity = await progress.execute(
@@ -12562,10 +12564,10 @@ ${pc14.green("")} ${pc14.bold("Upgrade complete!")}
12562
12564
  // src/commands/cdn/verify.ts
12563
12565
  init_esm_shims();
12564
12566
  init_events();
12565
- init_errors();
12566
- init_json_output();
12567
12567
  init_aws();
12568
+ init_errors();
12568
12569
  init_fs();
12570
+ init_json_output();
12569
12571
  init_metadata();
12570
12572
  init_output();
12571
12573
  import * as clack14 from "@clack/prompts";
@@ -16941,8 +16943,8 @@ async function deployEmailStack(config2) {
16941
16943
  init_events();
16942
16944
  init_aws();
16943
16945
  init_errors();
16944
- init_json_output();
16945
16946
  init_fs();
16947
+ init_json_output();
16946
16948
  init_metadata();
16947
16949
  init_output();
16948
16950
  async function config(options) {
@@ -17230,8 +17232,8 @@ init_events();
17230
17232
  init_presets();
17231
17233
  init_aws();
17232
17234
  init_errors();
17233
- init_json_output();
17234
17235
  init_fs();
17236
+ init_json_output();
17235
17237
  init_metadata();
17236
17238
  init_output();
17237
17239
  init_prompts();
@@ -17825,11 +17827,10 @@ ${pc18.dim("Example:")}`);
17825
17827
  init_esm_shims();
17826
17828
  init_events();
17827
17829
  init_route53();
17828
- init_errors();
17829
- init_json_output();
17830
17830
  init_aws();
17831
17831
  init_errors();
17832
17832
  init_fs();
17833
+ init_json_output();
17833
17834
  init_metadata();
17834
17835
  init_output();
17835
17836
  import * as clack18 from "@clack/prompts";
@@ -19234,8 +19235,8 @@ async function deleteReceiptRuleSet(region) {
19234
19235
  // src/commands/email/inbound.ts
19235
19236
  init_aws();
19236
19237
  init_errors();
19237
- init_json_output();
19238
19238
  init_fs();
19239
+ init_json_output();
19239
19240
  init_metadata();
19240
19241
  init_output();
19241
19242
  init_prompts();
@@ -19636,9 +19637,7 @@ Enable it: ${pc21.cyan("wraps email inbound init")}
19636
19637
  console.log();
19637
19638
  console.log(pc21.bold(" Inbound Email Configuration"));
19638
19639
  console.log();
19639
- console.log(
19640
- ` ${pc21.dim("Receiving domain:")} ${pc21.cyan(receivingDomain)}`
19641
- );
19640
+ console.log(` ${pc21.dim("Receiving domain:")} ${pc21.cyan(receivingDomain)}`);
19642
19641
  console.log(
19643
19642
  ` ${pc21.dim("S3 bucket:")} ${pc21.cyan(inbound.bucketName || "")}`
19644
19643
  );
@@ -19913,7 +19912,6 @@ init_costs();
19913
19912
  init_presets();
19914
19913
  init_aws();
19915
19914
  init_errors();
19916
- init_json_output();
19917
19915
  init_fs();
19918
19916
 
19919
19917
  // src/utils/shared/iam-check.ts
@@ -20060,6 +20058,7 @@ function formatDeniedActions(actions) {
20060
20058
  }
20061
20059
 
20062
20060
  // src/commands/email/init.ts
20061
+ init_json_output();
20063
20062
  init_metadata();
20064
20063
  init_output();
20065
20064
  init_prompts();
@@ -20661,8 +20660,8 @@ init_esm_shims();
20661
20660
  init_events();
20662
20661
  init_aws();
20663
20662
  init_errors();
20664
- init_json_output();
20665
20663
  init_fs();
20664
+ init_json_output();
20666
20665
  init_metadata();
20667
20666
  init_output();
20668
20667
  import * as clack24 from "@clack/prompts";
@@ -20865,8 +20864,8 @@ init_events();
20865
20864
  init_aws();
20866
20865
  init_errors();
20867
20866
  init_fs();
20868
- init_metadata();
20869
20867
  init_json_output();
20868
+ init_metadata();
20870
20869
  init_output();
20871
20870
  import * as clack25 from "@clack/prompts";
20872
20871
  import * as pulumi19 from "@pulumi/pulumi";
@@ -21075,7 +21074,8 @@ async function scaffoldClaudeSkill({
21075
21074
  const skillDir = join8(projectDir, ".claude", "skills", skillName);
21076
21075
  const skillPath = join8(skillDir, "SKILL.md");
21077
21076
  await mkdir2(skillDir, { recursive: true });
21078
- await writeFile4(skillPath, skillContent.trim() + "\n", "utf-8");
21077
+ await writeFile4(skillPath, `${skillContent.trim()}
21078
+ `, "utf-8");
21079
21079
  }
21080
21080
  function escapeRegex(str) {
21081
21081
  return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
@@ -21587,9 +21587,10 @@ wraps/.wraps/
21587
21587
  });
21588
21588
  claudeFiles.push(".claude/skills/wraps-templates/SKILL.md");
21589
21589
  progress.succeed("Claude Code context scaffolded");
21590
- } catch {
21590
+ } catch (e) {
21591
+ const msg = e instanceof Error ? e.message : String(e);
21591
21592
  progress.info(
21592
- "Could not scaffold .claude/ context \u2014 template files are still ready"
21593
+ `Could not scaffold .claude/ context \u2014 template files are still ready (${msg})`
21593
21594
  );
21594
21595
  }
21595
21596
  }
@@ -22809,8 +22810,8 @@ init_costs();
22809
22810
  init_presets();
22810
22811
  init_aws();
22811
22812
  init_errors();
22812
- init_json_output();
22813
22813
  init_fs();
22814
+ init_json_output();
22814
22815
  init_metadata();
22815
22816
  init_output();
22816
22817
  init_prompts();
@@ -25973,8 +25974,12 @@ async function callGenerateApi(description, slug, token, progress) {
25973
25974
  try {
25974
25975
  const parsed = JSON.parse(body);
25975
25976
  message = parsed.error || parsed.message || body;
25976
- } catch {
25977
- message = body;
25977
+ } catch (e) {
25978
+ if (e instanceof SyntaxError) {
25979
+ message = body;
25980
+ } else {
25981
+ throw e;
25982
+ }
25978
25983
  }
25979
25984
  throw errors.workflowGenerationFailed(message);
25980
25985
  }
@@ -26058,9 +26063,10 @@ async function autoValidate(filePath, wrapsDir, slug, progress) {
26058
26063
  `${pc31.cyan(slug)} has ${errs.length} validation error(s) \u2014 review and fix manually`
26059
26064
  );
26060
26065
  }
26061
- } catch {
26066
+ } catch (e) {
26067
+ const msg = e instanceof Error ? e.message : String(e);
26062
26068
  progress.info(
26063
- `Could not auto-validate ${pc31.cyan(slug)} \u2014 run ${pc31.cyan("wraps email workflows validate")} manually`
26069
+ `Could not auto-validate ${pc31.cyan(slug)} \u2014 run ${pc31.cyan("wraps email workflows validate")} manually (${msg})`
26064
26070
  );
26065
26071
  }
26066
26072
  }
@@ -26478,20 +26484,16 @@ async function workflowsInit(options) {
26478
26484
  const tsFiles = files.filter(
26479
26485
  (f) => f.endsWith(".ts") && !f.startsWith("_")
26480
26486
  );
26481
- if (tsFiles.length > 0 && !options.force) {
26482
- if (!isJsonMode()) {
26483
- clack30.log.warn(
26484
- `${pc32.cyan("wraps/workflows/")} already contains ${tsFiles.length} workflow file(s). Use ${pc32.bold("--force")} to overwrite.`
26485
- );
26486
- }
26487
+ if (tsFiles.length > 0 && !options.force && !isJsonMode()) {
26488
+ clack30.log.warn(
26489
+ `${pc32.cyan("wraps/workflows/")} already contains ${tsFiles.length} workflow file(s). Use ${pc32.bold("--force")} to overwrite.`
26490
+ );
26487
26491
  }
26488
26492
  }
26489
26493
  progress.start("Creating wraps/workflows/ directory");
26490
26494
  await mkdir8(workflowsDir, { recursive: true });
26491
26495
  const configPath = join16(cwd, "wraps", "wraps.config.ts");
26492
- if (!existsSync15(configPath)) {
26493
- await writeFile10(configPath, generateMinimalConfig(), "utf-8");
26494
- } else {
26496
+ if (existsSync15(configPath)) {
26495
26497
  const configContent = await readFile8(configPath, "utf-8");
26496
26498
  if (!configContent.includes("workflowsDir")) {
26497
26499
  const updated = configContent.replace(
@@ -26503,6 +26505,8 @@ async function workflowsInit(options) {
26503
26505
  await writeFile10(configPath, updated, "utf-8");
26504
26506
  }
26505
26507
  }
26508
+ } else {
26509
+ await writeFile10(configPath, generateMinimalConfig(), "utf-8");
26506
26510
  }
26507
26511
  const filesCreated = [];
26508
26512
  if (!options.noExample) {
@@ -26529,9 +26533,10 @@ async function workflowsInit(options) {
26529
26533
  });
26530
26534
  filesCreated.push(".claude/skills/wraps-workflows/SKILL.md");
26531
26535
  progress.succeed("Claude Code context scaffolded");
26532
- } catch {
26536
+ } catch (e) {
26537
+ const msg = e instanceof Error ? e.message : String(e);
26533
26538
  progress.info(
26534
- "Could not scaffold .claude/ context \u2014 workflow files are still ready"
26539
+ `Could not scaffold .claude/ context \u2014 workflow files are still ready (${msg})`
26535
26540
  );
26536
26541
  }
26537
26542
  }
@@ -26565,14 +26570,10 @@ async function workflowsInit(options) {
26565
26570
  console.log(
26566
26571
  ` 1. Edit or create workflows in ${pc32.cyan("wraps/workflows/")}`
26567
26572
  );
26568
- console.log(
26569
- ` 2. Validate: ${pc32.cyan("wraps email workflows validate")}`
26570
- );
26573
+ console.log(` 2. Validate: ${pc32.cyan("wraps email workflows validate")}`);
26571
26574
  console.log(` 3. Push: ${pc32.cyan("wraps email workflows push")}`);
26572
26575
  if (!options.noClaude) {
26573
- console.log(
26574
- ` 4. Use Claude Code to generate workflows from descriptions`
26575
- );
26576
+ console.log(" 4. Use Claude Code to generate workflows from descriptions");
26576
26577
  }
26577
26578
  console.log();
26578
26579
  }
@@ -27635,8 +27636,8 @@ init_events();
27635
27636
  init_aws();
27636
27637
  init_config();
27637
27638
  init_fs();
27638
- init_metadata();
27639
27639
  init_json_output();
27640
+ init_metadata();
27640
27641
  init_output();
27641
27642
  init_prompts();
27642
27643
  function buildConsolePolicyDocument(emailConfig, smsConfig) {
@@ -32699,8 +32700,8 @@ async function deleteSMSProtectConfigurationWithSDK(region) {
32699
32700
  init_events();
32700
32701
  init_aws();
32701
32702
  init_errors();
32702
- init_json_output();
32703
32703
  init_fs();
32704
+ init_json_output();
32704
32705
  init_metadata();
32705
32706
  init_output();
32706
32707
  async function smsDestroy(options) {
@@ -32931,8 +32932,8 @@ import pc44 from "picocolors";
32931
32932
  init_events();
32932
32933
  init_aws();
32933
32934
  init_errors();
32934
- init_json_output();
32935
32935
  init_fs();
32936
+ init_json_output();
32936
32937
  init_metadata();
32937
32938
  init_output();
32938
32939
  init_prompts();
@@ -34113,8 +34114,8 @@ import pc47 from "picocolors";
34113
34114
  init_events();
34114
34115
  init_aws();
34115
34116
  init_errors();
34116
- init_json_output();
34117
34117
  init_fs();
34118
+ init_json_output();
34118
34119
  init_metadata();
34119
34120
  init_output();
34120
34121
  async function smsSync(options) {
@@ -34548,8 +34549,8 @@ import pc49 from "picocolors";
34548
34549
  init_events();
34549
34550
  init_aws();
34550
34551
  init_errors();
34551
- init_json_output();
34552
34552
  init_fs();
34553
+ init_json_output();
34553
34554
  init_metadata();
34554
34555
  init_output();
34555
34556
  init_prompts();