@teleporthq/teleport-plugin-next-workflows 0.43.64 → 0.43.66

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 (193) hide show
  1. package/__tests__/cart-clear-db-mirror.test.ts +12 -0
  2. package/__tests__/cart-get-total-regional-pricing.test.ts +166 -0
  3. package/__tests__/continue-on-error.test.ts +119 -0
  4. package/__tests__/custom-node-page-route-rewrite.test.ts +109 -0
  5. package/__tests__/invoice-delivery-fee.test.ts +104 -0
  6. package/__tests__/invoice-regional-tax.test.ts +126 -0
  7. package/__tests__/payment-redirect-and-order-notification.test.ts +6 -0
  8. package/__tests__/paypal-webhook-order-notification.test.ts +41 -0
  9. package/__tests__/resolve-handler-entry-name.test.ts +25 -0
  10. package/__tests__/sent-email-log-module.test.ts +381 -0
  11. package/__tests__/sent-email-log-wiring.test.ts +267 -0
  12. package/dist/cjs/account-delete-route-generator.d.ts.map +1 -1
  13. package/dist/cjs/account-delete-route-generator.js +14 -5
  14. package/dist/cjs/account-delete-route-generator.js.map +1 -1
  15. package/dist/cjs/api-route-generator.d.ts.map +1 -1
  16. package/dist/cjs/api-route-generator.js +44 -9
  17. package/dist/cjs/api-route-generator.js.map +1 -1
  18. package/dist/cjs/auth-generator.d.ts.map +1 -1
  19. package/dist/cjs/auth-generator.js +15 -6
  20. package/dist/cjs/auth-generator.js.map +1 -1
  21. package/dist/cjs/executor-generator.d.ts.map +1 -1
  22. package/dist/cjs/executor-generator.js +17 -4
  23. package/dist/cjs/executor-generator.js.map +1 -1
  24. package/dist/cjs/index.d.ts +1 -0
  25. package/dist/cjs/index.d.ts.map +1 -1
  26. package/dist/cjs/index.js +3 -1
  27. package/dist/cjs/index.js.map +1 -1
  28. package/dist/cjs/invoice/api-routes-code.d.ts.map +1 -1
  29. package/dist/cjs/invoice/api-routes-code.js +42 -4
  30. package/dist/cjs/invoice/api-routes-code.js.map +1 -1
  31. package/dist/cjs/invoice/email-sender-code.d.ts.map +1 -1
  32. package/dist/cjs/invoice/email-sender-code.js +58 -29
  33. package/dist/cjs/invoice/email-sender-code.js.map +1 -1
  34. package/dist/cjs/invoice/index.d.ts +1 -4
  35. package/dist/cjs/invoice/index.d.ts.map +1 -1
  36. package/dist/cjs/invoice/index.js +5 -19
  37. package/dist/cjs/invoice/index.js.map +1 -1
  38. package/dist/cjs/invoice/invoice-html-code.d.ts.map +1 -1
  39. package/dist/cjs/invoice/invoice-html-code.js +31 -8
  40. package/dist/cjs/invoice/invoice-html-code.js.map +1 -1
  41. package/dist/cjs/invoice/regional-invoice-tax-code.d.ts +25 -0
  42. package/dist/cjs/invoice/regional-invoice-tax-code.d.ts.map +1 -0
  43. package/dist/cjs/invoice/regional-invoice-tax-code.js +116 -0
  44. package/dist/cjs/invoice/regional-invoice-tax-code.js.map +1 -0
  45. package/dist/cjs/invoice/resolve-data-source.d.ts +6 -0
  46. package/dist/cjs/invoice/resolve-data-source.d.ts.map +1 -0
  47. package/dist/cjs/invoice/resolve-data-source.js +23 -0
  48. package/dist/cjs/invoice/resolve-data-source.js.map +1 -0
  49. package/dist/cjs/nodes/analytics/commerce-tracking.d.ts +38 -2
  50. package/dist/cjs/nodes/analytics/commerce-tracking.d.ts.map +1 -1
  51. package/dist/cjs/nodes/analytics/commerce-tracking.js +41 -26
  52. package/dist/cjs/nodes/analytics/commerce-tracking.js.map +1 -1
  53. package/dist/cjs/nodes/cart/cart-add-item.d.ts.map +1 -1
  54. package/dist/cjs/nodes/cart/cart-add-item.js +3 -1
  55. package/dist/cjs/nodes/cart/cart-add-item.js.map +1 -1
  56. package/dist/cjs/nodes/cart/cart-clear.d.ts.map +1 -1
  57. package/dist/cjs/nodes/cart/cart-clear.js +6 -0
  58. package/dist/cjs/nodes/cart/cart-clear.js.map +1 -1
  59. package/dist/cjs/nodes/cart/cart-get-total.d.ts.map +1 -1
  60. package/dist/cjs/nodes/cart/cart-get-total.js +81 -5
  61. package/dist/cjs/nodes/cart/cart-get-total.js.map +1 -1
  62. package/dist/cjs/nodes/data/data-create-item.d.ts.map +1 -1
  63. package/dist/cjs/nodes/data/data-create-item.js +8 -0
  64. package/dist/cjs/nodes/data/data-create-item.js.map +1 -1
  65. package/dist/cjs/nodes/types.d.ts.map +1 -1
  66. package/dist/cjs/nodes/types.js +19 -0
  67. package/dist/cjs/nodes/types.js.map +1 -1
  68. package/dist/cjs/sent-email-log/index.d.ts +16 -0
  69. package/dist/cjs/sent-email-log/index.d.ts.map +1 -0
  70. package/dist/cjs/sent-email-log/index.js +53 -0
  71. package/dist/cjs/sent-email-log/index.js.map +1 -0
  72. package/dist/cjs/sent-email-log/sent-email-log-code.d.ts +4 -0
  73. package/dist/cjs/sent-email-log/sent-email-log-code.d.ts.map +1 -0
  74. package/dist/cjs/sent-email-log/sent-email-log-code.js +415 -0
  75. package/dist/cjs/sent-email-log/sent-email-log-code.js.map +1 -0
  76. package/dist/cjs/sent-email-log/sent-email-log-scope.d.ts +21 -0
  77. package/dist/cjs/sent-email-log/sent-email-log-scope.d.ts.map +1 -0
  78. package/dist/cjs/sent-email-log/sent-email-log-scope.js +36 -0
  79. package/dist/cjs/sent-email-log/sent-email-log-scope.js.map +1 -0
  80. package/dist/cjs/transactional-email-code.d.ts +12 -1
  81. package/dist/cjs/transactional-email-code.d.ts.map +1 -1
  82. package/dist/cjs/transactional-email-code.js +43 -5
  83. package/dist/cjs/transactional-email-code.js.map +1 -1
  84. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  85. package/dist/cjs/webhook-generator.d.ts.map +1 -1
  86. package/dist/cjs/webhook-generator.js +9 -2
  87. package/dist/cjs/webhook-generator.js.map +1 -1
  88. package/dist/cjs/workflow-project-plugin.d.ts.map +1 -1
  89. package/dist/cjs/workflow-project-plugin.js +53 -30
  90. package/dist/cjs/workflow-project-plugin.js.map +1 -1
  91. package/dist/esm/account-delete-route-generator.d.ts.map +1 -1
  92. package/dist/esm/account-delete-route-generator.js +15 -6
  93. package/dist/esm/account-delete-route-generator.js.map +1 -1
  94. package/dist/esm/api-route-generator.d.ts.map +1 -1
  95. package/dist/esm/api-route-generator.js +44 -9
  96. package/dist/esm/api-route-generator.js.map +1 -1
  97. package/dist/esm/auth-generator.d.ts.map +1 -1
  98. package/dist/esm/auth-generator.js +15 -6
  99. package/dist/esm/auth-generator.js.map +1 -1
  100. package/dist/esm/executor-generator.d.ts.map +1 -1
  101. package/dist/esm/executor-generator.js +17 -4
  102. package/dist/esm/executor-generator.js.map +1 -1
  103. package/dist/esm/index.d.ts +1 -0
  104. package/dist/esm/index.d.ts.map +1 -1
  105. package/dist/esm/index.js +1 -0
  106. package/dist/esm/index.js.map +1 -1
  107. package/dist/esm/invoice/api-routes-code.d.ts.map +1 -1
  108. package/dist/esm/invoice/api-routes-code.js +42 -4
  109. package/dist/esm/invoice/api-routes-code.js.map +1 -1
  110. package/dist/esm/invoice/email-sender-code.d.ts.map +1 -1
  111. package/dist/esm/invoice/email-sender-code.js +58 -29
  112. package/dist/esm/invoice/email-sender-code.js.map +1 -1
  113. package/dist/esm/invoice/index.d.ts +1 -4
  114. package/dist/esm/invoice/index.d.ts.map +1 -1
  115. package/dist/esm/invoice/index.js +4 -18
  116. package/dist/esm/invoice/index.js.map +1 -1
  117. package/dist/esm/invoice/invoice-html-code.d.ts.map +1 -1
  118. package/dist/esm/invoice/invoice-html-code.js +31 -8
  119. package/dist/esm/invoice/invoice-html-code.js.map +1 -1
  120. package/dist/esm/invoice/regional-invoice-tax-code.d.ts +25 -0
  121. package/dist/esm/invoice/regional-invoice-tax-code.d.ts.map +1 -0
  122. package/dist/esm/invoice/regional-invoice-tax-code.js +113 -0
  123. package/dist/esm/invoice/regional-invoice-tax-code.js.map +1 -0
  124. package/dist/esm/invoice/resolve-data-source.d.ts +6 -0
  125. package/dist/esm/invoice/resolve-data-source.d.ts.map +1 -0
  126. package/dist/esm/invoice/resolve-data-source.js +19 -0
  127. package/dist/esm/invoice/resolve-data-source.js.map +1 -0
  128. package/dist/esm/nodes/analytics/commerce-tracking.d.ts +38 -2
  129. package/dist/esm/nodes/analytics/commerce-tracking.d.ts.map +1 -1
  130. package/dist/esm/nodes/analytics/commerce-tracking.js +41 -26
  131. package/dist/esm/nodes/analytics/commerce-tracking.js.map +1 -1
  132. package/dist/esm/nodes/cart/cart-add-item.d.ts.map +1 -1
  133. package/dist/esm/nodes/cart/cart-add-item.js +3 -1
  134. package/dist/esm/nodes/cart/cart-add-item.js.map +1 -1
  135. package/dist/esm/nodes/cart/cart-clear.d.ts.map +1 -1
  136. package/dist/esm/nodes/cart/cart-clear.js +6 -0
  137. package/dist/esm/nodes/cart/cart-clear.js.map +1 -1
  138. package/dist/esm/nodes/cart/cart-get-total.d.ts.map +1 -1
  139. package/dist/esm/nodes/cart/cart-get-total.js +81 -5
  140. package/dist/esm/nodes/cart/cart-get-total.js.map +1 -1
  141. package/dist/esm/nodes/data/data-create-item.d.ts.map +1 -1
  142. package/dist/esm/nodes/data/data-create-item.js +8 -0
  143. package/dist/esm/nodes/data/data-create-item.js.map +1 -1
  144. package/dist/esm/nodes/types.d.ts.map +1 -1
  145. package/dist/esm/nodes/types.js +19 -0
  146. package/dist/esm/nodes/types.js.map +1 -1
  147. package/dist/esm/sent-email-log/index.d.ts +16 -0
  148. package/dist/esm/sent-email-log/index.d.ts.map +1 -0
  149. package/dist/esm/sent-email-log/index.js +45 -0
  150. package/dist/esm/sent-email-log/index.js.map +1 -0
  151. package/dist/esm/sent-email-log/sent-email-log-code.d.ts +4 -0
  152. package/dist/esm/sent-email-log/sent-email-log-code.d.ts.map +1 -0
  153. package/dist/esm/sent-email-log/sent-email-log-code.js +411 -0
  154. package/dist/esm/sent-email-log/sent-email-log-code.js.map +1 -0
  155. package/dist/esm/sent-email-log/sent-email-log-scope.d.ts +21 -0
  156. package/dist/esm/sent-email-log/sent-email-log-scope.d.ts.map +1 -0
  157. package/dist/esm/sent-email-log/sent-email-log-scope.js +31 -0
  158. package/dist/esm/sent-email-log/sent-email-log-scope.js.map +1 -0
  159. package/dist/esm/transactional-email-code.d.ts +12 -1
  160. package/dist/esm/transactional-email-code.d.ts.map +1 -1
  161. package/dist/esm/transactional-email-code.js +42 -4
  162. package/dist/esm/transactional-email-code.js.map +1 -1
  163. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  164. package/dist/esm/webhook-generator.d.ts.map +1 -1
  165. package/dist/esm/webhook-generator.js +9 -2
  166. package/dist/esm/webhook-generator.js.map +1 -1
  167. package/dist/esm/workflow-project-plugin.d.ts.map +1 -1
  168. package/dist/esm/workflow-project-plugin.js +53 -30
  169. package/dist/esm/workflow-project-plugin.js.map +1 -1
  170. package/package.json +4 -4
  171. package/src/account-delete-route-generator.ts +16 -5
  172. package/src/api-route-generator.ts +51 -9
  173. package/src/auth-generator.ts +17 -6
  174. package/src/executor-generator.ts +17 -4
  175. package/src/index.ts +1 -0
  176. package/src/invoice/api-routes-code.ts +48 -4
  177. package/src/invoice/email-sender-code.ts +58 -29
  178. package/src/invoice/index.ts +4 -23
  179. package/src/invoice/invoice-html-code.ts +31 -8
  180. package/src/invoice/regional-invoice-tax-code.ts +112 -0
  181. package/src/invoice/resolve-data-source.ts +25 -0
  182. package/src/nodes/analytics/commerce-tracking.ts +37 -21
  183. package/src/nodes/cart/cart-add-item.ts +3 -1
  184. package/src/nodes/cart/cart-clear.ts +6 -0
  185. package/src/nodes/cart/cart-get-total.ts +94 -5
  186. package/src/nodes/data/data-create-item.ts +8 -0
  187. package/src/nodes/types.ts +23 -0
  188. package/src/sent-email-log/index.ts +57 -0
  189. package/src/sent-email-log/sent-email-log-code.ts +419 -0
  190. package/src/sent-email-log/sent-email-log-scope.ts +36 -0
  191. package/src/transactional-email-code.ts +61 -4
  192. package/src/webhook-generator.ts +11 -2
  193. package/src/workflow-project-plugin.ts +52 -29
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/invoice/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/invoice/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-html-code.d.ts","sourceRoot":"","sources":["../../../src/invoice/invoice-html-code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AA4HhE,eAAO,MAAM,uBAAuB,aACxB,mBAAmB,uBACR,OAAO,iBACb,OAAO,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,KACxD,MAs4BF,CAAA"}
1
+ {"version":3,"file":"invoice-html-code.d.ts","sourceRoot":"","sources":["../../../src/invoice/invoice-html-code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AA4HhE,eAAO,MAAM,uBAAuB,aACxB,mBAAmB,uBACR,OAAO,iBACb,OAAO,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,KACxD,MA65BF,CAAA"}
@@ -285,6 +285,7 @@ function buildInvoiceDataScope(invoiceData) {
285
285
  discountAmount: formatCurrencyValue(invoiceData.discountAmount, sym),
286
286
  shippingAmount: formatCurrencyValue(shippingAmountNumber, sym),
287
287
  hasShipping: shippingAmountNumber > 0 ? 'true' : 'false',
288
+ hasTax: Number(invoiceData.taxAmount) > 0 ? 'true' : 'false',
288
289
  total: formatCurrencyValue(invoiceData.total, sym),
289
290
  currency: invoiceData.currency || 'USD',
290
291
  currencySymbol: sym,
@@ -331,13 +332,18 @@ function buildInvoiceDataScope(invoiceData) {
331
332
  var lineStored = Number(it.totalPrice || it.total_price);
332
333
  if (!isFinite(lineStored) || lineStored === 0) lineStored = qty * unitStored;
333
334
 
334
- var unitNet = computeNetFromGrossValue(unitStored, taxRate, taxIncluded);
335
- var lineNet = computeNetFromGrossValue(lineStored, taxRate, taxIncluded);
335
+ // A line on an order priced by region carries its own rate and inclusion
336
+ // mode (a food line at 7% beside a tools line at 19%); every other line is
337
+ // taxed at the invoice's single rate.
338
+ var lineRate = typeof it.taxIncluded === 'boolean' ? Number(it.taxRate) || 0 : taxRate;
339
+ var lineIncluded = typeof it.taxIncluded === 'boolean' ? it.taxIncluded : taxIncluded;
340
+ var unitNet = computeNetFromGrossValue(unitStored, lineRate, lineIncluded);
341
+ var lineNet = computeNetFromGrossValue(lineStored, lineRate, lineIncluded);
336
342
  // Per-unit VAT mirrors the GUI helper: derived from the NET unit
337
343
  // price at the configured rate (rather than dividing line VAT by qty,
338
344
  // which yields odd values when qty is 0 or missing).
339
- var unitVat = computeLineVatAmountValue(unitStored, taxRate, taxIncluded);
340
- var lineVat = computeLineVatAmountValue(lineStored, taxRate, taxIncluded);
345
+ var unitVat = computeLineVatAmountValue(unitStored, lineRate, lineIncluded);
346
+ var lineVat = computeLineVatAmountValue(lineStored, lineRate, lineIncluded);
341
347
  var unitGross = unitNet + unitVat;
342
348
  var lineGross = lineNet + lineVat;
343
349
 
@@ -375,6 +381,9 @@ function buildInvoiceDataScope(invoiceData) {
375
381
  lineTotalNet: formatCurrencyValue(lineNet, sym),
376
382
  lineTotalGross: formatCurrencyValue(lineGross, sym),
377
383
  lineVatAmount: formatCurrencyValue(lineVat, sym),
384
+ // The rate this line was taxed at ("20%"): its own on an order priced by
385
+ // region, the invoice's single rate otherwise. Bound by the VAT % column.
386
+ lineVatRate: (lineRate > 0 ? Math.round(lineRate * 100) / 100 : 0) + '%',
378
387
  sku: it.sku || '',
379
388
  itemTaxRate: it.taxRate != null ? String(it.taxRate) : (taxRate > 0 ? String(taxRate) : ''),
380
389
  itemTaxAmount: it.taxAmount != null ? formatCurrencyValue(it.taxAmount, sym) : formatCurrencyValue(lineVat, sym),
@@ -545,13 +554,20 @@ function resolveReferenceValue(ref, scope) {
545
554
  }
546
555
 
547
556
  function matchConditionOperation(val, op, operand) {
557
+ // The editor stores every operand as a STRING ('true', '0'), while
558
+ // \`resolveReferenceValue\` hands back a typed value for \`expr\` references
559
+ // (it turns 'true' into boolean true). A strict \`===\` across those two
560
+ // shapes never matches — that is how the template's Delivery row, gated on
561
+ // \`Invoice.hasShipping = 'true'\`, stayed hidden on every invoice with a
562
+ // fee — so mixed-type equality compares the string forms instead.
563
+ var sameType = typeof val === typeof operand;
548
564
  switch (op) {
549
565
  case '=':
550
566
  case '===':
551
- return val === operand;
567
+ return sameType ? val === operand : String(val) === String(operand);
552
568
  case '!=':
553
569
  case '!==':
554
- return val !== operand;
570
+ return sameType ? val !== operand : String(val) !== String(operand);
555
571
  case '>': return Number(val) > Number(operand);
556
572
  case '<': return Number(val) < Number(operand);
557
573
  case '>=': return Number(val) >= Number(operand);
@@ -896,18 +912,25 @@ function buildFallbackInvoiceHtml(scope) {
896
912
  '<th style="text-align:left;border-bottom:2px solid #333;padding:6px;">Item</th>' +
897
913
  '<th style="text-align:right;border-bottom:2px solid #333;padding:6px;">Qty</th>' +
898
914
  '<th style="text-align:right;border-bottom:2px solid #333;padding:6px;">Unit Price</th>' +
915
+ '<th style="text-align:right;border-bottom:2px solid #333;padding:6px;">VAT %</th>' +
916
+ '<th style="text-align:right;border-bottom:2px solid #333;padding:6px;">VAT</th>' +
899
917
  '<th style="text-align:right;border-bottom:2px solid #333;padding:6px;">Total</th>' +
900
918
  '</tr></thead><tbody>');
901
919
  products.forEach(function (p) {
902
920
  parts.push('<tr>' +
903
921
  '<td style="border-bottom:1px solid #eee;padding:6px;">' + (p.variantSwatchesHtml || '') + escapeHtml(p.name) + '</td>' +
904
922
  '<td style="border-bottom:1px solid #eee;padding:6px;text-align:right;">' + escapeHtml(p.quantity) + '</td>' +
905
- '<td style="border-bottom:1px solid #eee;padding:6px;text-align:right;">' + escapeHtml(p.unitPrice) + '</td>' +
906
- '<td style="border-bottom:1px solid #eee;padding:6px;text-align:right;">' + escapeHtml(p.lineTotal) + '</td>' +
923
+ '<td style="border-bottom:1px solid #eee;padding:6px;text-align:right;">' + escapeHtml(p.unitPriceNet) + '</td>' +
924
+ '<td style="border-bottom:1px solid #eee;padding:6px;text-align:right;">' + escapeHtml(p.lineVatRate) + '</td>' +
925
+ '<td style="border-bottom:1px solid #eee;padding:6px;text-align:right;">' + escapeHtml(p.lineVatAmount) + '</td>' +
926
+ '<td style="border-bottom:1px solid #eee;padding:6px;text-align:right;">' + escapeHtml(p.lineTotalGross) + '</td>' +
907
927
  '</tr>');
908
928
  });
909
929
  parts.push('</tbody></table>');
910
930
  var totalsRows = '<div style="display:flex;justify-content:space-between;margin-bottom:4px;"><span>Subtotal</span><span>' + escapeHtml(inv.subtotal) + '</span></div>';
931
+ if (inv.hasTax === 'true') {
932
+ totalsRows += '<div style="display:flex;justify-content:space-between;margin-bottom:4px;"><span>VAT</span><span>' + escapeHtml(inv.taxAmount) + '</span></div>';
933
+ }
911
934
  if (inv.hasShipping === 'true') {
912
935
  totalsRows += '<div style="display:flex;justify-content:space-between;margin-bottom:4px;"><span>Delivery</span><span>' + escapeHtml(inv.shippingAmount) + '</span></div>';
913
936
  }
@@ -1 +1 @@
1
- {"version":3,"file":"invoice-html-code.js","sourceRoot":"","sources":["../../../src/invoice/invoice-html-code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoice-html-code.js","sourceRoot":"","sources":["../../../src/invoice/invoice-html-code.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Invoice VAT for an order placed on a store with shipping zones and tax
3
+ * jurisdictions, as source for the generated `/api/invoices/generate` route.
4
+ *
5
+ * Such an order does not have ONE rate: a German food line at 7% can sit beside
6
+ * a tools line at 19%, a French order's prices may include VAT while the store
7
+ * default adds it on top, and the delivery fee may be taxed. The store's
8
+ * baked `DEFAULT_TAX_RATE` / `TAX_INCLUDED_IN_PRICE` describe none of that, so
9
+ * the place-order workflow records what was actually charged in
10
+ * `teleport_orders.tax_breakdown`, and this prices the invoice from it.
11
+ *
12
+ * Totals reconcile with `teleport_orders.total_amount` by construction:
13
+ * `goods (gross) + shipping_amount (gross) - discount_amount`. The discount is
14
+ * taken off the goods first and only then off the shipping, exactly as the
15
+ * payment line items split it, and each part's tax shrinks in proportion.
16
+ *
17
+ * The printed rows add up too: `subtotal` (goods, net) + `taxAmount` (goods
18
+ * AND shipping tax) + `shippingNet` = `total`. Delivery is therefore shown net
19
+ * of its tax, or its tax would be counted twice.
20
+ *
21
+ * An order without a breakdown — every order placed before regions existed —
22
+ * returns null and keeps the single-rate arithmetic it was always invoiced with.
23
+ */
24
+ export declare const REGIONAL_INVOICE_TAX_CODE = "\nfunction parseOrderTaxBreakdown(raw) {\n if (!raw) return null;\n var parsed = raw;\n if (typeof raw === 'string') {\n try {\n parsed = JSON.parse(raw);\n } catch (e) {\n return null;\n }\n }\n if (!parsed || typeof parsed !== 'object' || !Array.isArray(parsed.lines)) return null;\n return parsed;\n}\n\nfunction regionalInvoiceRound(value, decimals) {\n var factor = decimals === 0 ? 1 : 100;\n var n = Number(value);\n return Math.round((isFinite(n) ? n : 0) * factor) / factor;\n}\n\n// items: the invoice lines as the route normalised them (productId, variantId,\n// quantity, unitPrice, totalPrice \u2014 all stored, i.e. NET where tax is added on\n// top and GROSS where it is included).\nfunction resolveRegionalInvoiceTax(breakdown, items, discountAmount, shippingAmount) {\n var decimals = breakdown.taxDecimals === 0 ? 0 : 2;\n var standardRate = Number(breakdown.taxRate);\n if (!isFinite(standardRate) || standardRate < 0) standardRate = 0;\n var standardIncluded = breakdown.taxIncluded === true;\n var claimed = [];\n var itemTax = [];\n var goodsGross = 0;\n var goodsTax = 0;\n for (var i = 0; i < items.length; i++) {\n var item = items[i];\n var match = null;\n for (var l = 0; l < breakdown.lines.length; l++) {\n var line = breakdown.lines[l];\n if (!line || claimed.indexOf(l) !== -1) continue;\n if (\n String(line.productId || '') === String(item.productId || '') &&\n String(line.variantId || '') === String(item.variantId || '')\n ) {\n match = line;\n claimed.push(l);\n break;\n }\n }\n var matchedRate = match ? Number(match.taxRate) : NaN;\n var rate = isFinite(matchedRate) && matchedRate >= 0 ? matchedRate : standardRate;\n var included = match ? match.taxIncluded === true : standardIncluded;\n var quantity = Number(item.quantity) || 1;\n var stored = Number(item.totalPrice) || 0;\n var lineGross = !included && rate > 0\n ? regionalInvoiceRound(\n regionalInvoiceRound((Number(item.unitPrice) || 0) * (1 + rate / 100), decimals) * quantity,\n decimals\n )\n : stored;\n var lineTax = included\n ? (rate > 0 ? stored - stored / (1 + rate / 100) : 0)\n : lineGross - stored;\n goodsGross += lineGross;\n goodsTax += lineTax;\n itemTax.push({ rate: rate, included: included, amount: regionalInvoiceRound(lineTax, decimals) });\n }\n\n var discount = discountAmount > 0 ? discountAmount : 0;\n var shipping = shippingAmount > 0 ? shippingAmount : 0;\n var goodsAfter = Math.max(0, goodsGross - discount);\n var goodsShare = goodsGross > 0 ? goodsAfter / goodsGross : 0;\n var shippingAfter = Math.max(0, shipping - Math.max(0, discount - goodsGross));\n var shippingShare = shipping > 0 ? shippingAfter / shipping : 0;\n var shippingTax = Number(breakdown.shippingTax);\n if (!isFinite(shippingTax) || shippingTax < 0) shippingTax = 0;\n var allocatedGoodsTax = goodsTax * goodsShare;\n var allocatedShippingTax = shippingTax * shippingShare;\n\n return {\n taxRate: standardRate,\n taxIncluded: standardIncluded,\n subtotal: goodsAfter - allocatedGoodsTax,\n taxAmount: allocatedGoodsTax + allocatedShippingTax,\n shippingNet: shippingAfter - allocatedShippingTax,\n total: goodsAfter + shippingAfter,\n itemTax: itemTax,\n };\n}\n";
25
+ //# sourceMappingURL=regional-invoice-tax-code.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"regional-invoice-tax-code.d.ts","sourceRoot":"","sources":["../../../src/invoice/regional-invoice-tax-code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,yBAAyB,8zGAwFrC,CAAA"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.REGIONAL_INVOICE_TAX_CODE = void 0;
4
+ /**
5
+ * Invoice VAT for an order placed on a store with shipping zones and tax
6
+ * jurisdictions, as source for the generated `/api/invoices/generate` route.
7
+ *
8
+ * Such an order does not have ONE rate: a German food line at 7% can sit beside
9
+ * a tools line at 19%, a French order's prices may include VAT while the store
10
+ * default adds it on top, and the delivery fee may be taxed. The store's
11
+ * baked `DEFAULT_TAX_RATE` / `TAX_INCLUDED_IN_PRICE` describe none of that, so
12
+ * the place-order workflow records what was actually charged in
13
+ * `teleport_orders.tax_breakdown`, and this prices the invoice from it.
14
+ *
15
+ * Totals reconcile with `teleport_orders.total_amount` by construction:
16
+ * `goods (gross) + shipping_amount (gross) - discount_amount`. The discount is
17
+ * taken off the goods first and only then off the shipping, exactly as the
18
+ * payment line items split it, and each part's tax shrinks in proportion.
19
+ *
20
+ * The printed rows add up too: `subtotal` (goods, net) + `taxAmount` (goods
21
+ * AND shipping tax) + `shippingNet` = `total`. Delivery is therefore shown net
22
+ * of its tax, or its tax would be counted twice.
23
+ *
24
+ * An order without a breakdown — every order placed before regions existed —
25
+ * returns null and keeps the single-rate arithmetic it was always invoiced with.
26
+ */
27
+ exports.REGIONAL_INVOICE_TAX_CODE = `
28
+ function parseOrderTaxBreakdown(raw) {
29
+ if (!raw) return null;
30
+ var parsed = raw;
31
+ if (typeof raw === 'string') {
32
+ try {
33
+ parsed = JSON.parse(raw);
34
+ } catch (e) {
35
+ return null;
36
+ }
37
+ }
38
+ if (!parsed || typeof parsed !== 'object' || !Array.isArray(parsed.lines)) return null;
39
+ return parsed;
40
+ }
41
+
42
+ function regionalInvoiceRound(value, decimals) {
43
+ var factor = decimals === 0 ? 1 : 100;
44
+ var n = Number(value);
45
+ return Math.round((isFinite(n) ? n : 0) * factor) / factor;
46
+ }
47
+
48
+ // items: the invoice lines as the route normalised them (productId, variantId,
49
+ // quantity, unitPrice, totalPrice — all stored, i.e. NET where tax is added on
50
+ // top and GROSS where it is included).
51
+ function resolveRegionalInvoiceTax(breakdown, items, discountAmount, shippingAmount) {
52
+ var decimals = breakdown.taxDecimals === 0 ? 0 : 2;
53
+ var standardRate = Number(breakdown.taxRate);
54
+ if (!isFinite(standardRate) || standardRate < 0) standardRate = 0;
55
+ var standardIncluded = breakdown.taxIncluded === true;
56
+ var claimed = [];
57
+ var itemTax = [];
58
+ var goodsGross = 0;
59
+ var goodsTax = 0;
60
+ for (var i = 0; i < items.length; i++) {
61
+ var item = items[i];
62
+ var match = null;
63
+ for (var l = 0; l < breakdown.lines.length; l++) {
64
+ var line = breakdown.lines[l];
65
+ if (!line || claimed.indexOf(l) !== -1) continue;
66
+ if (
67
+ String(line.productId || '') === String(item.productId || '') &&
68
+ String(line.variantId || '') === String(item.variantId || '')
69
+ ) {
70
+ match = line;
71
+ claimed.push(l);
72
+ break;
73
+ }
74
+ }
75
+ var matchedRate = match ? Number(match.taxRate) : NaN;
76
+ var rate = isFinite(matchedRate) && matchedRate >= 0 ? matchedRate : standardRate;
77
+ var included = match ? match.taxIncluded === true : standardIncluded;
78
+ var quantity = Number(item.quantity) || 1;
79
+ var stored = Number(item.totalPrice) || 0;
80
+ var lineGross = !included && rate > 0
81
+ ? regionalInvoiceRound(
82
+ regionalInvoiceRound((Number(item.unitPrice) || 0) * (1 + rate / 100), decimals) * quantity,
83
+ decimals
84
+ )
85
+ : stored;
86
+ var lineTax = included
87
+ ? (rate > 0 ? stored - stored / (1 + rate / 100) : 0)
88
+ : lineGross - stored;
89
+ goodsGross += lineGross;
90
+ goodsTax += lineTax;
91
+ itemTax.push({ rate: rate, included: included, amount: regionalInvoiceRound(lineTax, decimals) });
92
+ }
93
+
94
+ var discount = discountAmount > 0 ? discountAmount : 0;
95
+ var shipping = shippingAmount > 0 ? shippingAmount : 0;
96
+ var goodsAfter = Math.max(0, goodsGross - discount);
97
+ var goodsShare = goodsGross > 0 ? goodsAfter / goodsGross : 0;
98
+ var shippingAfter = Math.max(0, shipping - Math.max(0, discount - goodsGross));
99
+ var shippingShare = shipping > 0 ? shippingAfter / shipping : 0;
100
+ var shippingTax = Number(breakdown.shippingTax);
101
+ if (!isFinite(shippingTax) || shippingTax < 0) shippingTax = 0;
102
+ var allocatedGoodsTax = goodsTax * goodsShare;
103
+ var allocatedShippingTax = shippingTax * shippingShare;
104
+
105
+ return {
106
+ taxRate: standardRate,
107
+ taxIncluded: standardIncluded,
108
+ subtotal: goodsAfter - allocatedGoodsTax,
109
+ taxAmount: allocatedGoodsTax + allocatedShippingTax,
110
+ shippingNet: shippingAfter - allocatedShippingTax,
111
+ total: goodsAfter + shippingAfter,
112
+ itemTax: itemTax,
113
+ };
114
+ }
115
+ `;
116
+ //# sourceMappingURL=regional-invoice-tax-code.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"regional-invoice-tax-code.js","sourceRoot":"","sources":["../../../src/invoice/regional-invoice-tax-code.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACU,QAAA,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwFxC,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { DataSourceType, ProjectPluginStructure } from '@teleporthq/teleport-types';
2
+ export declare const resolveInvoiceDataSource: (structure: ProjectPluginStructure) => {
3
+ dataSourceType: DataSourceType | null;
4
+ dataSourceConfig: Record<string, unknown> | null;
5
+ };
6
+ //# sourceMappingURL=resolve-data-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-data-source.d.ts","sourceRoot":"","sources":["../../../src/invoice/resolve-data-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAEnF,eAAO,MAAM,wBAAwB,cACxB,sBAAsB,KAChC;IAAE,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IAAC,gBAAgB,EAAE,OAAO,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CAoB3F,CAAA"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveInvoiceDataSource = void 0;
4
+ const resolveInvoiceDataSource = (structure) => {
5
+ var _a;
6
+ const { uidl } = structure;
7
+ if (!uidl.dataSources) {
8
+ return { dataSourceType: null, dataSourceConfig: null };
9
+ }
10
+ if ((_a = uidl.authentication) === null || _a === void 0 ? void 0 : _a.dataSourceId) {
11
+ const ds = uidl.dataSources[uidl.authentication.dataSourceId];
12
+ if (ds) {
13
+ return { dataSourceType: ds.type, dataSourceConfig: ds.config };
14
+ }
15
+ }
16
+ const dsEntries = Object.values(uidl.dataSources);
17
+ if (dsEntries.length > 0) {
18
+ return { dataSourceType: dsEntries[0].type, dataSourceConfig: dsEntries[0].config };
19
+ }
20
+ return { dataSourceType: null, dataSourceConfig: null };
21
+ };
22
+ exports.resolveInvoiceDataSource = resolveInvoiceDataSource;
23
+ //# sourceMappingURL=resolve-data-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-data-source.js","sourceRoot":"","sources":["../../../src/invoice/resolve-data-source.ts"],"names":[],"mappings":";;;AAEO,MAAM,wBAAwB,GAAG,CACtC,SAAiC,EAC4D,EAAE;;IAC/F,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;IAE1B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;QACrB,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAA;KACxD;IAED,IAAI,MAAA,IAAI,CAAC,cAAc,0CAAE,YAAY,EAAE;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;QAC7D,IAAI,EAAE,EAAE;YACN,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,EAAE,gBAAgB,EAAE,EAAE,CAAC,MAAM,EAAE,CAAA;SAChE;KACF;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACjD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QACxB,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;KACpF;IAED,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAA;AACzD,CAAC,CAAA;AAtBY,QAAA,wBAAwB,4BAsBpC"}
@@ -32,8 +32,44 @@
32
32
  * definition travels with it. `assertHandlerHasNoModuleRefs` fails the build if
33
33
  * a module reference ever creeps back in.
34
34
  */
35
- /** ES5 source of the helper, for concatenating after a serialized handler. */
36
- export declare const COMMERCE_TRACKING_HELPER_SOURCE: string;
35
+ /**
36
+ * ⛔ A STRING LITERAL, not `someFunction.toString()`. Not a style choice.
37
+ *
38
+ * The helper used to be a real TypeScript function read back through
39
+ * `.toString()`. Its ONLY reference was that read, so when a consumer bundles
40
+ * and minifies this package (teleport-gui's browser packer worker, webpack +
41
+ * Terser) the minifier inlined the single-use declaration into the call site
42
+ * and dropped the now-pointless name:
43
+ *
44
+ * COMMERCE_TRACKING_HELPER_SOURCE = function(e){ ... }.toString()
45
+ *
46
+ * The emitted text was therefore an ANONYMOUS function expression, and every
47
+ * consumer of this constant appends it as a STATEMENT after a handler. A
48
+ * statement-position `function(e){…}` is not parseable, so `next build` of the
49
+ * generated project died in `utils/workflows/node-handlers-client.js` with
50
+ * SWC's "Expected ident" — for any store with an add-to-cart or
51
+ * remove-from-cart workflow, and only in a minified build, so no local run and
52
+ * no source-reading test could see it.
53
+ *
54
+ * A string literal is immune: a minifier never rewrites the contents of one.
55
+ * It also keeps the emitted name EXACTLY `trackCommerceStep`, which is the name
56
+ * every caller's ambient `declare function` leaves in its serialized body, so
57
+ * no bundler-name aliasing is needed either.
58
+ *
59
+ * ⛔ EXACTLY ONE PARAMETER, for the same reason the arity mattered before:
60
+ * `resolveHandlerEntryName` identifies a minified handler's entry point by
61
+ * ARITY, preferring a 2-param declaration because every real entry is
62
+ * `(config, context)`. A 2-param helper concatenated after a 1-param entry
63
+ * would WIN, and the generated workflow would call the tracking helper where it
64
+ * meant to call add-to-cart. One object parameter keeps the helper out of that
65
+ * contest. `resolve-handler-entry-name.test.ts` checks every registered node
66
+ * type against exactly this, and is what caught it.
67
+ *
68
+ * Declared with `function` (not `var f = function`) so that concatenating it
69
+ * after a handler stays a plain, re-declarable statement in whatever scope the
70
+ * emitters splice it into.
71
+ */
72
+ export declare const COMMERCE_TRACKING_HELPER_SOURCE = "function trackCommerceStep(step) {\n try {\n var tracker = globalThis.tpTrackCommerce;\n if (typeof tracker === 'function') {\n tracker(step.name, step.detail);\n }\n } catch (err) {\n /* analytics must never break a cart or a checkout */\n }\n}";
37
73
  /**
38
74
  * Fails the BUILD when a serialized handler still references a module namespace.
39
75
  *
@@ -1 +1 @@
1
- {"version":3,"file":"commerce-tracking.d.ts","sourceRoot":"","sources":["../../../../src/nodes/analytics/commerce-tracking.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AA+BH,8EAA8E;AAC9E,eAAO,MAAM,+BAA+B,QAA+B,CAAA;AAQ3E;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWrF"}
1
+ {"version":3,"file":"commerce-tracking.d.ts","sourceRoot":"","sources":["../../../../src/nodes/analytics/commerce-tracking.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,+BAA+B,8QAS1C,CAAA;AAQF;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWrF"}
@@ -36,37 +36,52 @@
36
36
  Object.defineProperty(exports, "__esModule", { value: true });
37
37
  exports.assertHandlerHasNoModuleRefs = exports.COMMERCE_TRACKING_HELPER_SOURCE = void 0;
38
38
  /**
39
- * ⛔ EXACTLY ONE PARAMETER. Not a style choice.
39
+ * ⛔ A STRING LITERAL, not `someFunction.toString()`. Not a style choice.
40
40
  *
41
- * When this package is minified by a consumer, the handler's own entry function
42
- * loses its conventional name, and `resolveHandlerEntryName` then identifies the
43
- * entry by ARITY: it prefers a 2-param declaration, because every real handler
44
- * entry is `(config, context)`. A 2-param helper concatenated after a 1-param
45
- * entry therefore WINS, and the generated workflow calls the tracking helper
46
- * where it meant to call add-to-cart.
41
+ * The helper used to be a real TypeScript function read back through
42
+ * `.toString()`. Its ONLY reference was that read, so when a consumer bundles
43
+ * and minifies this package (teleport-gui's browser packer worker, webpack +
44
+ * Terser) the minifier inlined the single-use declaration into the call site
45
+ * and dropped the now-pointless name:
47
46
  *
48
- * One object parameter keeps the helper out of that contest, and the resolver's
49
- * positional fallback then correctly picks the entry, which is emitted first.
50
- * `resolve-handler-entry-name.test.ts` checks every registered node type against
51
- * exactly this, and is what caught it.
47
+ * COMMERCE_TRACKING_HELPER_SOURCE = function(e){ ... }.toString()
52
48
  *
53
- * Not exported either: exporting invites the cross-module call this file exists
54
- * to prevent. It is here to be read by `.toString()` below, nothing else.
49
+ * The emitted text was therefore an ANONYMOUS function expression, and every
50
+ * consumer of this constant appends it as a STATEMENT after a handler. A
51
+ * statement-position `function(e){…}` is not parseable, so `next build` of the
52
+ * generated project died in `utils/workflows/node-handlers-client.js` with
53
+ * SWC's "Expected ident" — for any store with an add-to-cart or
54
+ * remove-from-cart workflow, and only in a minified build, so no local run and
55
+ * no source-reading test could see it.
56
+ *
57
+ * A string literal is immune: a minifier never rewrites the contents of one.
58
+ * It also keeps the emitted name EXACTLY `trackCommerceStep`, which is the name
59
+ * every caller's ambient `declare function` leaves in its serialized body, so
60
+ * no bundler-name aliasing is needed either.
61
+ *
62
+ * ⛔ EXACTLY ONE PARAMETER, for the same reason the arity mattered before:
63
+ * `resolveHandlerEntryName` identifies a minified handler's entry point by
64
+ * ARITY, preferring a 2-param declaration because every real entry is
65
+ * `(config, context)`. A 2-param helper concatenated after a 1-param entry
66
+ * would WIN, and the generated workflow would call the tracking helper where it
67
+ * meant to call add-to-cart. One object parameter keeps the helper out of that
68
+ * contest. `resolve-handler-entry-name.test.ts` checks every registered node
69
+ * type against exactly this, and is what caught it.
70
+ *
71
+ * Declared with `function` (not `var f = function`) so that concatenating it
72
+ * after a handler stays a plain, re-declarable statement in whatever scope the
73
+ * emitters splice it into.
55
74
  */
56
- function trackCommerceStep(step) {
57
- try {
58
- const tracker = globalThis.tpTrackCommerce;
59
- if (typeof tracker === 'function') {
60
- ;
61
- tracker(step.name, step.detail);
62
- }
75
+ exports.COMMERCE_TRACKING_HELPER_SOURCE = `function trackCommerceStep(step) {
76
+ try {
77
+ var tracker = globalThis.tpTrackCommerce;
78
+ if (typeof tracker === 'function') {
79
+ tracker(step.name, step.detail);
63
80
  }
64
- catch (e) {
65
- /* analytics must never break a cart or a checkout */
66
- }
67
- }
68
- /** ES5 source of the helper, for concatenating after a serialized handler. */
69
- exports.COMMERCE_TRACKING_HELPER_SOURCE = trackCommerceStep.toString();
81
+ } catch (err) {
82
+ /* analytics must never break a cart or a checkout */
83
+ }
84
+ }`;
70
85
  /**
71
86
  * Matches the two shapes TypeScript's CJS emit produces for a cross-module
72
87
  * call — `(0, ns_1.fn)(…)` and a bare `ns_1.fn(…)`.
@@ -1 +1 @@
1
- {"version":3,"file":"commerce-tracking.js","sourceRoot":"","sources":["../../../../src/nodes/analytics/commerce-tracking.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;;;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,iBAAiB,CAAC,IAAwD;IACjF,IAAI;QACF,MAAM,OAAO,GAAI,UAAsC,CAAC,eAAe,CAAA;QACvE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;YACjC,CAAC;YAAC,OAA4D,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;SACvF;KACF;IAAC,OAAO,CAAC,EAAE;QACV,qDAAqD;KACtD;AACH,CAAC;AAED,8EAA8E;AACjE,QAAA,+BAA+B,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAA;AAE3E;;;GAGG;AACH,MAAM,gBAAgB,GAAG,6BAA6B,CAAA;AAEtD;;;;;;;GAOG;AACH,SAAgB,4BAA4B,CAAC,MAAc,EAAE,QAAgB;IAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;IAC5C,IAAI,KAAK,EAAE;QACT,MAAM,IAAI,KAAK,CACb,QAAQ,QAAQ,8CAA8C,KAAK,CAAC,CAAC,CAAC,KAAK;YACzE,6EAA6E;YAC7E,8EAA8E;YAC9E,iCAAiC,CACpC,CAAA;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAXD,oEAWC"}
1
+ {"version":3,"file":"commerce-tracking.js","sourceRoot":"","sources":["../../../../src/nodes/analytics/commerce-tracking.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;;;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACU,QAAA,+BAA+B,GAAG;;;;;;;;;EAS7C,CAAA;AAEF;;;GAGG;AACH,MAAM,gBAAgB,GAAG,6BAA6B,CAAA;AAEtD;;;;;;;GAOG;AACH,SAAgB,4BAA4B,CAAC,MAAc,EAAE,QAAgB;IAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;IAC5C,IAAI,KAAK,EAAE;QACT,MAAM,IAAI,KAAK,CACb,QAAQ,QAAQ,8CAA8C,KAAK,CAAC,CAAC,CAAC,KAAK;YACzE,6EAA6E;YAC7E,8EAA8E;YAC9E,iCAAiC,CACpC,CAAA;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAXD,oEAWC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cart-add-item.d.ts","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-add-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AAmJhE,eAAO,MAAM,WAAW,EAAE,oBAWzB,CAAA"}
1
+ {"version":3,"file":"cart-add-item.d.ts","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-add-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AAmJhE,eAAO,MAAM,WAAW,EAAE,oBAazB,CAAA"}
@@ -138,7 +138,9 @@ exports.cartAddItem = {
138
138
  executionEnv: 'client',
139
139
  generateHandler() {
140
140
  // The helper is concatenated rather than imported: the handler ships as a
141
- // serialized function body with no module scope. See `commerce-tracking.ts`.
141
+ // serialized function body with no module scope. It is a string literal
142
+ // rather than a `.toString()` so a consumer's minifier cannot strip its
143
+ // declaration name. See `commerce-tracking.ts`.
142
144
  return (0, commerce_tracking_1.assertHandlerHasNoModuleRefs)((0, types_1.handlerToString)(cart_add_item) + '\n' + commerce_tracking_1.COMMERCE_TRACKING_HELPER_SOURCE, 'cart-add-item');
143
145
  },
144
146
  };
@@ -1 +1 @@
1
- {"version":3,"file":"cart-add-item.js","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-add-item.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cart-add-item.js","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-add-item.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cart-clear.d.ts","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-clear.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AAyDhE,eAAO,MAAM,SAAS,EAAE,oBAMvB,CAAA"}
1
+ {"version":3,"file":"cart-clear.d.ts","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-clear.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AA+DhE,eAAO,MAAM,SAAS,EAAE,oBAMvB,CAAA"}
@@ -39,6 +39,11 @@ async function cart_clear() {
39
39
  // An applied voucher belongs to the cart that is being emptied — after
40
40
  // a completed checkout it must not carry over to the next order.
41
41
  localStorage.removeItem('workflow_voucher');
42
+ // So is the shipping method picked for it: the next order starts from
43
+ // the cheapest rate again instead of a choice made weeks ago. Literal
44
+ // key — a serialized handler cannot import
45
+ // `RegionalPricing.SHIPPING_RATE_STORAGE_KEY`.
46
+ localStorage.removeItem('workflow_shipping_rate');
42
47
  const sessionId = localStorage.getItem('workflow_cart_session_id') || null;
43
48
  fetch('/api/cart/sync', {
44
49
  method: 'POST',
@@ -51,6 +56,7 @@ async function cart_clear() {
51
56
  }
52
57
  window.dispatchEvent(new CustomEvent('teleport:cart-changed'));
53
58
  window.dispatchEvent(new CustomEvent('teleport:voucher-changed'));
59
+ window.dispatchEvent(new CustomEvent('teleport:shipping-rate-changed'));
54
60
  }
55
61
  return { success: true };
56
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cart-clear.js","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-clear.ts"],"names":[],"mappings":";;;AAAA,oCAAgE;AAEhE,KAAK,UAAU,UAAU;IACvB,IAAI;QACF,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;QAEzD,wDAAwD;QACxD,EAAE;QACF,iEAAiE;QACjE,6DAA6D;QAC7D,qEAAqE;QACrE,kEAAkE;QAClE,0EAA0E;QAC1E,0EAA0E;QAC1E,wEAAwE;QACxE,uCAAuC;QACvC,EAAE;QACF,0EAA0E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,sEAAsE;QACtE,uEAAuE;QACvE,0EAA0E;QAC1E,kEAAkE;QAClE,6BAA6B;QAC7B,EAAE;QACF,wEAAwE;QACxE,2EAA2E;QAC3E,uEAAuE;QACvE,YAAY;QACZ,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,IAAI;gBACF,gEAAgE;gBAChE,oEAAoE;gBACpE,oEAAoE;gBACpE,iEAAiE;gBACjE,YAAY,CAAC,OAAO,CAAC,0BAA0B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;gBACpE,uEAAuE;gBACvE,iEAAiE;gBACjE,YAAY,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAA;gBAC3C,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,0BAA0B,CAAC,IAAI,IAAI,CAAA;gBAC1E,KAAK,CAAC,gBAAgB,EAAE;oBACtB,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;iBAC/C,CAAC,CAAC,KAAK,CAAC,cAAa,CAAC,CAAC,CAAA;aACzB;YAAC,OAAO,MAAM,EAAE;gBACf,uEAAuE;aACxE;YACD,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAA;YAC9D,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,0BAA0B,CAAC,CAAC,CAAA;SAClE;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;KACzB;IAAC,OAAO,GAAY,EAAE;QACrB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAG,GAAa,CAAC,OAAO,EAAE,CAAA;KACzD;AACH,CAAC;AACY,QAAA,SAAS,GAAyB;IAC7C,QAAQ,EAAE,YAAY;IACtB,YAAY,EAAE,QAAQ;IACtB,eAAe;QACb,OAAO,IAAA,uBAAe,EAAC,UAAU,CAAC,CAAA;IACpC,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"cart-clear.js","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-clear.ts"],"names":[],"mappings":";;;AAAA,oCAAgE;AAEhE,KAAK,UAAU,UAAU;IACvB,IAAI;QACF,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;QAEzD,wDAAwD;QACxD,EAAE;QACF,iEAAiE;QACjE,6DAA6D;QAC7D,qEAAqE;QACrE,kEAAkE;QAClE,0EAA0E;QAC1E,0EAA0E;QAC1E,wEAAwE;QACxE,uCAAuC;QACvC,EAAE;QACF,0EAA0E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,sEAAsE;QACtE,uEAAuE;QACvE,0EAA0E;QAC1E,kEAAkE;QAClE,6BAA6B;QAC7B,EAAE;QACF,wEAAwE;QACxE,2EAA2E;QAC3E,uEAAuE;QACvE,YAAY;QACZ,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,IAAI;gBACF,gEAAgE;gBAChE,oEAAoE;gBACpE,oEAAoE;gBACpE,iEAAiE;gBACjE,YAAY,CAAC,OAAO,CAAC,0BAA0B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;gBACpE,uEAAuE;gBACvE,iEAAiE;gBACjE,YAAY,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAA;gBAC3C,sEAAsE;gBACtE,sEAAsE;gBACtE,2CAA2C;gBAC3C,+CAA+C;gBAC/C,YAAY,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAA;gBACjD,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,0BAA0B,CAAC,IAAI,IAAI,CAAA;gBAC1E,KAAK,CAAC,gBAAgB,EAAE;oBACtB,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;iBAC/C,CAAC,CAAC,KAAK,CAAC,cAAa,CAAC,CAAC,CAAA;aACzB;YAAC,OAAO,MAAM,EAAE;gBACf,uEAAuE;aACxE;YACD,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAA;YAC9D,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,0BAA0B,CAAC,CAAC,CAAA;YACjE,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,gCAAgC,CAAC,CAAC,CAAA;SACxE;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;KACzB;IAAC,OAAO,GAAY,EAAE;QACrB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAG,GAAa,CAAC,OAAO,EAAE,CAAA;KACzD;AACH,CAAC;AACY,QAAA,SAAS,GAAyB;IAC7C,QAAQ,EAAE,YAAY;IACtB,YAAY,EAAE,QAAQ;IACtB,eAAe;QACb,OAAO,IAAA,uBAAe,EAAC,UAAU,CAAC,CAAA;IACpC,CAAC;CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"cart-get-total.d.ts","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-get-total.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AA4JhE,eAAO,MAAM,YAAY,EAAE,oBAM1B,CAAA"}
1
+ {"version":3,"file":"cart-get-total.d.ts","sourceRoot":"","sources":["../../../../src/nodes/cart/cart-get-total.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAmB,MAAM,UAAU,CAAA;AA2OhE,eAAO,MAAM,YAAY,EAAE,oBAe1B,CAAA"}