ecomcoder-cli 1.3.11 → 1.3.12

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 (72) hide show
  1. package/README.md +16 -0
  2. package/dist/commands/asset/delete.d.ts.map +1 -1
  3. package/dist/commands/asset/delete.js +14 -0
  4. package/dist/commands/asset/delete.js.map +1 -1
  5. package/dist/commands/asset/import.d.ts.map +1 -1
  6. package/dist/commands/asset/import.js +14 -0
  7. package/dist/commands/asset/import.js.map +1 -1
  8. package/dist/commands/asset/upload.d.ts.map +1 -1
  9. package/dist/commands/asset/upload.js +14 -0
  10. package/dist/commands/asset/upload.js.map +1 -1
  11. package/dist/commands/create-dummy-products.d.ts.map +1 -1
  12. package/dist/commands/create-dummy-products.js +14 -0
  13. package/dist/commands/create-dummy-products.js.map +1 -1
  14. package/dist/commands/create-metafield.d.ts.map +1 -1
  15. package/dist/commands/create-metafield.js +14 -0
  16. package/dist/commands/create-metafield.js.map +1 -1
  17. package/dist/commands/discount/create-basic.d.ts.map +1 -1
  18. package/dist/commands/discount/create-basic.js +14 -0
  19. package/dist/commands/discount/create-basic.js.map +1 -1
  20. package/dist/commands/discount/create-bxgy.d.ts.map +1 -1
  21. package/dist/commands/discount/create-bxgy.js +14 -0
  22. package/dist/commands/discount/create-bxgy.js.map +1 -1
  23. package/dist/commands/discount/create-shipping.d.ts.map +1 -1
  24. package/dist/commands/discount/create-shipping.js +14 -0
  25. package/dist/commands/discount/create-shipping.js.map +1 -1
  26. package/dist/commands/discount/delete.d.ts.map +1 -1
  27. package/dist/commands/discount/delete.js +14 -0
  28. package/dist/commands/discount/delete.js.map +1 -1
  29. package/dist/commands/product/add-options.d.ts.map +1 -1
  30. package/dist/commands/product/add-options.js +14 -0
  31. package/dist/commands/product/add-options.js.map +1 -1
  32. package/dist/commands/product/create-variants.d.ts.map +1 -1
  33. package/dist/commands/product/create-variants.js +14 -0
  34. package/dist/commands/product/create-variants.js.map +1 -1
  35. package/dist/commands/product/create.d.ts.map +1 -1
  36. package/dist/commands/product/create.js +14 -0
  37. package/dist/commands/product/create.js.map +1 -1
  38. package/dist/commands/product/delete-variants.d.ts.map +1 -1
  39. package/dist/commands/product/delete-variants.js +14 -0
  40. package/dist/commands/product/delete-variants.js.map +1 -1
  41. package/dist/commands/product/set-metafield.d.ts.map +1 -1
  42. package/dist/commands/product/set-metafield.js +14 -0
  43. package/dist/commands/product/set-metafield.js.map +1 -1
  44. package/dist/commands/product/update-description.d.ts.map +1 -1
  45. package/dist/commands/product/update-description.js +14 -0
  46. package/dist/commands/product/update-description.js.map +1 -1
  47. package/dist/commands/product/update-options.d.ts.map +1 -1
  48. package/dist/commands/product/update-options.js +14 -0
  49. package/dist/commands/product/update-options.js.map +1 -1
  50. package/dist/commands/product/update-price.d.ts.map +1 -1
  51. package/dist/commands/product/update-price.js +14 -0
  52. package/dist/commands/product/update-price.js.map +1 -1
  53. package/dist/commands/product/update-status.d.ts.map +1 -1
  54. package/dist/commands/product/update-status.js +14 -0
  55. package/dist/commands/product/update-status.js.map +1 -1
  56. package/dist/commands/product/update-template.d.ts.map +1 -1
  57. package/dist/commands/product/update-template.js +14 -0
  58. package/dist/commands/product/update-template.js.map +1 -1
  59. package/dist/commands/product/update-title.d.ts.map +1 -1
  60. package/dist/commands/product/update-title.js +14 -0
  61. package/dist/commands/product/update-title.js.map +1 -1
  62. package/dist/commands/set-product-rating.d.ts.map +1 -1
  63. package/dist/commands/set-product-rating.js +14 -0
  64. package/dist/commands/set-product-rating.js.map +1 -1
  65. package/dist/commands/shop/set-metafield.d.ts.map +1 -1
  66. package/dist/commands/shop/set-metafield.js +14 -0
  67. package/dist/commands/shop/set-metafield.js.map +1 -1
  68. package/dist/lib/approval.d.ts +28 -0
  69. package/dist/lib/approval.d.ts.map +1 -0
  70. package/dist/lib/approval.js +38 -0
  71. package/dist/lib/approval.js.map +1 -0
  72. package/package.json +1 -1
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Command Approval Utility
3
+ *
4
+ * Handles approval protocol for destructive commands
5
+ * Communicates with ecomcoder-app via stdout/stdin
6
+ */
7
+ import { randomUUID } from 'crypto';
8
+ /**
9
+ * Request approval from user (via ecomcoder-app)
10
+ *
11
+ * Protocol:
12
+ * 1. Check if APPROVAL_GRANTED=true env var is set
13
+ * 2. If set, return true (approved)
14
+ * 3. If not set, output APPROVAL_REQUIRED JSON and exit
15
+ *
16
+ * @param request - Approval request details
17
+ * @returns true if approved (only returns if pre-approved via env var)
18
+ */
19
+ export async function requestApproval(request) {
20
+ // Check if approval was pre-granted via environment variable
21
+ if (process.env.APPROVAL_GRANTED === 'true') {
22
+ return true;
23
+ }
24
+ const approvalId = randomUUID();
25
+ // Output approval request JSON to stdout
26
+ const approvalRequest = {
27
+ type: 'APPROVAL_REQUIRED',
28
+ command: request.command,
29
+ message: request.message,
30
+ riskLevel: request.riskLevel,
31
+ approvalId,
32
+ timestamp: new Date().toISOString()
33
+ };
34
+ console.log(JSON.stringify(approvalRequest));
35
+ // Exit immediately - ecomcoder-app will re-run with APPROVAL_GRANTED=true if approved
36
+ process.exit(0);
37
+ }
38
+ //# sourceMappingURL=approval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval.js","sourceRoot":"","sources":["../../src/lib/approval.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAapC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAwB;IAC5D,6DAA6D;IAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;IAEhC,yCAAyC;IACzC,MAAM,eAAe,GAAG;QACtB,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,UAAU;QACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;IAE7C,sFAAsF;IACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ecomcoder-cli",
3
- "version": "1.3.11",
3
+ "version": "1.3.12",
4
4
  "type": "module",
5
5
  "description": "CLI tools for EcomCoder - Shopify development utilities",
6
6
  "main": "./dist/index.js",