@rebuy/rebuy 2.23.0-rc.8 → 2.23.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.
Files changed (84) hide show
  1. package/dist/index.js +542 -469
  2. package/dist/index.js.map +4 -4
  3. package/dist/index.mjs +541 -468
  4. package/dist/index.mjs.map +4 -4
  5. package/dist/schema/checkout-and-beyond/constants.js +19 -2
  6. package/dist/schema/checkout-and-beyond/constants.js.map +2 -2
  7. package/dist/schema/checkout-and-beyond/constants.mjs +19 -2
  8. package/dist/schema/checkout-and-beyond/constants.mjs.map +2 -2
  9. package/dist/schema/checkout-and-beyond/index.js +399 -326
  10. package/dist/schema/checkout-and-beyond/index.js.map +4 -4
  11. package/dist/schema/checkout-and-beyond/index.mjs +397 -324
  12. package/dist/schema/checkout-and-beyond/index.mjs.map +4 -4
  13. package/dist/schema/widget-data.js +317 -259
  14. package/dist/schema/widget-data.js.map +4 -4
  15. package/dist/schema/widget-data.mjs +316 -258
  16. package/dist/schema/widget-data.mjs.map +4 -4
  17. package/dist/schema/widgetData.d.ts +4 -0
  18. package/dist/schema/widgetData.d.ts.map +1 -1
  19. package/dist/schema/widgets/checkout-and-beyond/banner.d.ts +156 -0
  20. package/dist/schema/widgets/checkout-and-beyond/banner.d.ts.map +1 -0
  21. package/dist/schema/widgets/checkout-and-beyond/button.d.ts +3 -0
  22. package/dist/schema/widgets/checkout-and-beyond/button.d.ts.map +1 -1
  23. package/dist/schema/widgets/checkout-and-beyond/carousel.d.ts +48 -46
  24. package/dist/schema/widgets/checkout-and-beyond/carousel.d.ts.map +1 -1
  25. package/dist/schema/widgets/checkout-and-beyond/cartLine.d.ts +48 -46
  26. package/dist/schema/widgets/checkout-and-beyond/cartLine.d.ts.map +1 -1
  27. package/dist/schema/widgets/checkout-and-beyond/common.d.ts +33 -5
  28. package/dist/schema/widgets/checkout-and-beyond/common.d.ts.map +1 -1
  29. package/dist/schema/widgets/checkout-and-beyond/dataSource.d.ts +30 -0
  30. package/dist/schema/widgets/checkout-and-beyond/dataSource.d.ts.map +1 -1
  31. package/dist/schema/widgets/checkout-and-beyond/image.d.ts +1 -0
  32. package/dist/schema/widgets/checkout-and-beyond/image.d.ts.map +1 -1
  33. package/dist/schema/widgets/checkout-and-beyond/index.d.ts +2 -0
  34. package/dist/schema/widgets/checkout-and-beyond/index.d.ts.map +1 -1
  35. package/dist/schema/widgets/checkout-and-beyond/layout.d.ts +3 -0
  36. package/dist/schema/widgets/checkout-and-beyond/layout.d.ts.map +1 -1
  37. package/dist/schema/widgets/checkout-and-beyond/monetize.d.ts +59 -0
  38. package/dist/schema/widgets/checkout-and-beyond/monetize.d.ts.map +1 -0
  39. package/dist/schema/widgets/checkout-and-beyond/offers.d.ts +48 -46
  40. package/dist/schema/widgets/checkout-and-beyond/offers.d.ts.map +1 -1
  41. package/dist/schema/widgets/checkout-and-beyond/progressBar.d.ts +2 -1
  42. package/dist/schema/widgets/checkout-and-beyond/progressBar.d.ts.map +1 -1
  43. package/dist/schema/widgets/checkout-and-beyond/root.d.ts +2 -0
  44. package/dist/schema/widgets/checkout-and-beyond/root.d.ts.map +1 -1
  45. package/dist/schema/widgets/checkout-and-beyond/shared.d.ts +3 -1
  46. package/dist/schema/widgets/checkout-and-beyond/shared.d.ts.map +1 -1
  47. package/dist/schema/widgets/checkout-and-beyond/text.d.ts +5 -4
  48. package/dist/schema/widgets/checkout-and-beyond/text.d.ts.map +1 -1
  49. package/dist/schema/widgets/checkout-and-beyond/utils.d.ts +6 -0
  50. package/dist/schema/widgets/checkout-and-beyond/utils.d.ts.map +1 -1
  51. package/dist/schema/widgets/contentBlock.d.ts +2 -0
  52. package/dist/schema/widgets/contentBlock.d.ts.map +1 -1
  53. package/dist/schema/widgets/post-purchase-offer/postPurchaseBlocks.d.ts +20 -20
  54. package/dist/schema/widgets/post-purchase-offer/postPurchaseOffer.d.ts +12 -12
  55. package/dist/schema/widgets/post-purchase-offer/postPurchaseSettings.d.ts +12 -12
  56. package/dist/schema/widgets/post-purchase-offer/postPurchaseWidget.d.ts +12 -12
  57. package/dist/schema/widgets/rebuyButton.d.ts +2 -0
  58. package/dist/schema/widgets/rebuyButton.d.ts.map +1 -1
  59. package/dist/transforms/index.d.ts +7 -14
  60. package/dist/transforms/index.d.ts.map +1 -1
  61. package/dist/transforms/index.js +764 -1033
  62. package/dist/transforms/index.js.map +4 -4
  63. package/dist/transforms/index.mjs +766 -1035
  64. package/dist/transforms/index.mjs.map +4 -4
  65. package/dist/transforms/isCABRootSection.d.ts +1 -2
  66. package/dist/transforms/isCABRootSection.d.ts.map +1 -1
  67. package/dist/transforms/normalizeTokens.d.ts.map +1 -1
  68. package/package.json +1 -1
  69. package/dist/transforms/lineItemEditorV1/convertLineItemEditorToV2.d.ts +0 -4
  70. package/dist/transforms/lineItemEditorV1/convertLineItemEditorToV2.d.ts.map +0 -1
  71. package/dist/transforms/lineItemEditorV1/switchLabels.d.ts +0 -93
  72. package/dist/transforms/lineItemEditorV1/switchLabels.d.ts.map +0 -1
  73. package/dist/transforms/lineItemEditorV1/types.d.ts +0 -25
  74. package/dist/transforms/lineItemEditorV1/types.d.ts.map +0 -1
  75. package/dist/transforms/offerV1/convertOfferToV2.d.ts +0 -17
  76. package/dist/transforms/offerV1/convertOfferToV2.d.ts.map +0 -1
  77. package/dist/transforms/offerV1/offerCard.d.ts +0 -17
  78. package/dist/transforms/offerV1/offerCard.d.ts.map +0 -1
  79. package/dist/transforms/offerV1/types.d.ts +0 -68
  80. package/dist/transforms/offerV1/types.d.ts.map +0 -1
  81. package/dist/transforms/progressBarV1/convertProgressBarToV2.d.ts +0 -25
  82. package/dist/transforms/progressBarV1/convertProgressBarToV2.d.ts.map +0 -1
  83. package/dist/transforms/progressBarV1/types.d.ts +0 -42
  84. package/dist/transforms/progressBarV1/types.d.ts.map +0 -1
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ __export(src_exports, {
23
23
  ABTestingPlaceholder: () => ABTestingPlaceholder,
24
24
  ARRAY_INDEX_STRING: () => ARRAY_INDEX_STRING,
25
25
  Api: () => Api,
26
+ BannerColor: () => BannerColor,
26
27
  BlockType: () => BlockType,
27
28
  BorderRadius: () => BorderRadius,
28
29
  BorderStyle: () => BorderStyle,
@@ -30,15 +31,18 @@ __export(src_exports, {
30
31
  ButtonAction: () => ButtonAction,
31
32
  ButtonField: () => ButtonField,
32
33
  ButtonStyle: () => ButtonStyle,
34
+ CABBannerSection: () => CABBannerSection,
33
35
  CABBorder: () => CABBorder,
34
36
  CABButtonContent: () => CABButtonContent,
35
37
  CABButtonSection: () => CABButtonSection,
36
38
  CABCarouselSection: () => CABCarouselSection,
37
39
  CABCartLineSection: () => CABCartLineSection,
38
40
  CABDataSourceSection: () => CABDataSourceSection,
41
+ CABDiscount: () => CABDiscount,
39
42
  CABImageSection: () => CABImageSection,
40
43
  CABIntegrations: () => CABIntegrations,
41
44
  CABLayoutSection: () => CABLayoutSection,
45
+ CABMonetizeSection: () => CABMonetizeSection,
42
46
  CABOffersSection: () => CABOffersSection,
43
47
  CABProductSection: () => CABProductSection,
44
48
  CABProductsSection: () => CABProductsSection,
@@ -62,6 +66,8 @@ __export(src_exports, {
62
66
  DEFAULT_ENDPOINTS: () => DEFAULT_ENDPOINTS,
63
67
  DYNAMIC_TOKEN_REGEX: () => DYNAMIC_TOKEN_REGEX,
64
68
  Direction: () => Direction,
69
+ DiscountSource: () => DiscountSource,
70
+ DiscountType: () => DiscountType,
65
71
  EditorMode: () => EditorMode,
66
72
  Geolocation: () => Geolocation,
67
73
  GiftWithPurchase: () => GiftWithPurchase,
@@ -121,6 +127,7 @@ __export(src_exports, {
121
127
  WidgetData: () => WidgetData,
122
128
  WidgetType: () => WidgetType,
123
129
  amountToCents: () => amountToCents,
130
+ bannerColors: () => bannerColors,
124
131
  blockTypes: () => blockTypes,
125
132
  borderRadii: () => borderRadii,
126
133
  borderStyles: () => borderStyles,
@@ -136,6 +143,8 @@ __export(src_exports, {
136
143
  dataToString: () => dataToString,
137
144
  destroy: () => destroy,
138
145
  directions: () => directions,
146
+ discountSources: () => discountSources,
147
+ discountTypes: () => discountTypes,
139
148
  editorModes: () => editorModes,
140
149
  enabled: () => enabled,
141
150
  extensionWidgetTypes: () => extensionWidgetTypes,
@@ -147,6 +156,7 @@ __export(src_exports, {
147
156
  getIdFromGraphUrl: () => getIdFromGraphUrl,
148
157
  hasHTMLInDoc: () => hasHTMLInDoc,
149
158
  horizontalAlignments: () => horizontalAlignments,
159
+ isBannerType: () => isBannerType,
150
160
  isBase64Encoded: () => isBase64Encoded,
151
161
  isButtonType: () => isButtonType,
152
162
  isCalloutBannerBlock: () => isCalloutBannerBlock,
@@ -158,12 +168,14 @@ __export(src_exports, {
158
168
  isImageContentBlock: () => isImageContentBlock,
159
169
  isImageType: () => isImageType,
160
170
  isLayoutType: () => isLayoutType,
171
+ isMonetizeType: () => isMonetizeType,
161
172
  isOffersType: () => isOffersType,
162
173
  isOverlayType: () => isOverlayType,
163
174
  isPayButtonBlock: () => isPayButtonBlock,
164
175
  isProductInformationBlock: () => isProductInformationBlock,
165
176
  isProductType: () => isProductType,
166
177
  isProductsType: () => isProductsType,
178
+ isProgressBarType: () => isProgressBarType,
167
179
  isQuantityType: () => isQuantityType,
168
180
  isReviewsType: () => isReviewsType,
169
181
  isSeparatorBlock: () => isSeparatorBlock,
@@ -1271,7 +1283,7 @@ var UserConfig = import_v44.z.object({
1271
1283
  });
1272
1284
 
1273
1285
  // src/schema/widgetData.ts
1274
- var import_v430 = require("zod/v4");
1286
+ var import_v432 = require("zod/v4");
1275
1287
 
1276
1288
  // src/schema/widgets/abTestingPlaceholder.ts
1277
1289
  var import_v45 = require("zod/v4");
@@ -1284,6 +1296,8 @@ var import_es_toolkit = require("es-toolkit");
1284
1296
 
1285
1297
  // src/schema/widgets/checkout-and-beyond/common.ts
1286
1298
  var freezeEnum = (values) => Object.freeze(Object.fromEntries(values.map((v) => [v, v])));
1299
+ var bannerColors = ["auto", "info", "success", "warning", "critical"];
1300
+ var BannerColor = freezeEnum(bannerColors);
1287
1301
  var borderRadii = ["none", "small", "base", "large", "fullyRounded"];
1288
1302
  var BorderRadius = freezeEnum(borderRadii);
1289
1303
  var borderStyles = ["none", "base", "dotted", "dashed"];
@@ -1291,6 +1305,7 @@ var BorderStyle = freezeEnum(borderStyles);
1291
1305
  var borderWidths = ["base", "medium", "thick"];
1292
1306
  var BorderWidth = freezeEnum(borderWidths);
1293
1307
  var buttonActions = [
1308
+ "acceptOffer",
1294
1309
  "addToOrder",
1295
1310
  "declineAllOffers",
1296
1311
  "declineOffer",
@@ -1302,7 +1317,8 @@ var buttonActions = [
1302
1317
  "removeFromCart",
1303
1318
  "selectVariant",
1304
1319
  "showPagination",
1305
- "switchToSubscription"
1320
+ "switchToSubscription",
1321
+ "undoAddToOrder"
1306
1322
  ];
1307
1323
  var ButtonAction = freezeEnum(buttonActions);
1308
1324
  var buttonFields = [
@@ -1325,13 +1341,18 @@ var buttonFields = [
1325
1341
  "soldOut",
1326
1342
  "switchToOneTimePurchase",
1327
1343
  "switchToSubscriptionNoDiscount",
1328
- "switchToSubscriptionWithDiscount"
1344
+ "switchToSubscriptionWithDiscount",
1345
+ "undoAddToOrder"
1329
1346
  ];
1330
1347
  var ButtonField = freezeEnum(buttonFields);
1331
1348
  var buttonStyles = ["primary", "secondary", "plain", "custom"];
1332
1349
  var ButtonStyle = freezeEnum(buttonStyles);
1333
1350
  var directions = ["columns", "rows", "grid"];
1334
1351
  var Direction = freezeEnum(directions);
1352
+ var discountSources = ["price", "compare_at_price"];
1353
+ var DiscountSource = freezeEnum(discountSources);
1354
+ var discountTypes = ["none", "percentage", "fixed", "fixed_amount"];
1355
+ var DiscountType = freezeEnum(discountTypes);
1335
1356
  var editorModes = [
1336
1357
  "checkoutExtension",
1337
1358
  "postPurchaseOffer",
@@ -1391,12 +1412,14 @@ var QuantityInput = freezeEnum(quantityInputs);
1391
1412
  var reviewsSizes = ["small", "default", "large"];
1392
1413
  var ReviewsSize = freezeEnum(reviewsSizes);
1393
1414
  var sectionTypes = [
1415
+ "banner",
1394
1416
  "button",
1395
1417
  "carousel",
1396
1418
  "cartLine",
1397
1419
  "dataSource",
1398
1420
  "image",
1399
1421
  "layout",
1422
+ "monetize",
1400
1423
  "offers",
1401
1424
  "product",
1402
1425
  "products",
@@ -1504,14 +1527,14 @@ var CheckoutExtension = import_v46.z.looseObject({
1504
1527
  });
1505
1528
 
1506
1529
  // src/schema/widgets/contentBlock.ts
1507
- var import_v424 = require("zod/v4");
1530
+ var import_v426 = require("zod/v4");
1508
1531
 
1509
1532
  // src/schema/widgets/checkout-and-beyond/root.ts
1510
- var import_v423 = require("zod/v4");
1533
+ var import_v425 = require("zod/v4");
1511
1534
 
1512
1535
  // src/schema/widgets/checkout-and-beyond/layout.ts
1513
- var import_uuid11 = require("uuid");
1514
- var import_v422 = require("zod/v4");
1536
+ var import_uuid12 = require("uuid");
1537
+ var import_v424 = require("zod/v4");
1515
1538
 
1516
1539
  // src/schema/widgets/checkout-and-beyond/rule.ts
1517
1540
  var import_v47 = require("zod/v4");
@@ -1581,15 +1604,26 @@ var CABRule = import_v47.z.object({
1581
1604
  });
1582
1605
 
1583
1606
  // src/schema/widgets/checkout-and-beyond/shared.ts
1584
- var import_v421 = require("zod/v4");
1607
+ var import_v423 = require("zod/v4");
1608
+
1609
+ // src/schema/widgets/checkout-and-beyond/banner.ts
1610
+ var import_v48 = require("zod/v4");
1611
+ var CABBannerSection = import_v48.z.lazy(
1612
+ () => CABLayoutSection.omit({ sectionType: true }).extend({
1613
+ buttonField: import_v48.z.enum(buttonFields).optional(),
1614
+ color: import_v48.z.enum(bannerColors).default("auto"),
1615
+ dismissible: import_v48.z.boolean().default(false),
1616
+ sectionType: import_v48.z.literal(SectionType.banner).default(SectionType.banner)
1617
+ })
1618
+ );
1585
1619
 
1586
1620
  // src/schema/widgets/checkout-and-beyond/button.ts
1587
1621
  var import_uuid3 = require("uuid");
1588
- var import_v410 = require("zod/v4");
1622
+ var import_v411 = require("zod/v4");
1589
1623
 
1590
1624
  // src/schema/widgets/checkout-and-beyond/image.ts
1591
1625
  var import_uuid = require("uuid");
1592
- var import_v48 = require("zod/v4");
1626
+ var import_v49 = require("zod/v4");
1593
1627
 
1594
1628
  // src/schema/widgets/checkout-and-beyond/regex.ts
1595
1629
  var ARRAY_INDEX_STRING = /^(0|[1-9]\d*)$/;
@@ -1612,16 +1646,19 @@ var isHTML = (html = "") => {
1612
1646
  var hasHTMLInDoc = (doc) => doc.content.some(({ content = [] }) => content.some(({ text }) => isHTML(text)));
1613
1647
  var checkForHTML = (input) => !((0, import_compat.isString)(input) && isHTML(input) || (0, import_es_toolkit2.isPlainObject)(input) && hasHTMLInDoc(input));
1614
1648
  var NO_HTML = { message: "HTML is not supported" };
1649
+ var isBannerType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.banner;
1615
1650
  var isButtonType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.button;
1616
1651
  var isCarouselType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.carousel;
1617
1652
  var isCartLineType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.cartLine;
1618
1653
  var isDataSourceType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.dataSource;
1619
1654
  var isImageType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.image;
1620
1655
  var isLayoutType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.layout;
1656
+ var isMonetizeType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.monetize;
1621
1657
  var isOffersType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.offers;
1622
1658
  var isOverlayType = (section) => isLayoutType(section) && (0, import_compat.get)(section, "buttonField") === ButtonField.overlayContent;
1623
1659
  var isProductType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.product;
1624
1660
  var isProductsType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.products;
1661
+ var isProgressBarType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.progressBar;
1625
1662
  var isQuantityType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.quantity;
1626
1663
  var isReviewsType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.reviews;
1627
1664
  var isTextType = (section) => (0, import_compat.get)(section, "sectionType") === SectionType.text;
@@ -1638,85 +1675,85 @@ var convertNumericObjects = (input) => {
1638
1675
  };
1639
1676
 
1640
1677
  // src/schema/widgets/checkout-and-beyond/image.ts
1641
- var CABImageSection = import_v48.z.object({
1642
- altText: import_v48.z.string().refine(checkForHTML, NO_HTML).default(""),
1643
- aspectRatio: import_v48.z.literal(1).nullable().default(null),
1644
- border: import_v48.z.lazy(() => CABBorder),
1645
- buttonField: import_v48.z.enum(buttonFields).optional(),
1646
- category: import_v48.z.enum(["gallery", "icons", "payment-methods", "secure-checkout"]).nullable().default(null),
1647
- name: import_v48.z.string().optional(),
1648
- naturalHeight: import_v48.z.number().default(0),
1649
- naturalWidth: import_v48.z.number().default(0),
1650
- objectFit: import_v48.z.enum(objectFits).default(ObjectFit.cover),
1678
+ var CABImageSection = import_v49.z.object({
1679
+ altText: import_v49.z.string().refine(checkForHTML, NO_HTML).default(""),
1680
+ aspectRatio: import_v49.z.literal(1).nullable().default(null),
1681
+ border: import_v49.z.lazy(() => CABBorder),
1682
+ buttonField: import_v49.z.enum(buttonFields).optional(),
1683
+ category: import_v49.z.enum(["gallery", "icons", "payment-methods", "secure-checkout"]).nullable().default(null),
1684
+ name: import_v49.z.string().optional(),
1685
+ naturalHeight: import_v49.z.number().default(0),
1686
+ naturalWidth: import_v49.z.number().default(0),
1687
+ objectFit: import_v49.z.enum(objectFits).default(ObjectFit.cover),
1651
1688
  rule: CABRule.optional(),
1652
- sectionId: import_v48.z.uuid().default(() => (0, import_uuid.v7)()),
1653
- sectionType: import_v48.z.literal(SectionType.image).default(SectionType.image),
1654
- source: import_v48.z.union([import_v48.z.url(), import_v48.z.literal(""), import_v48.z.string().regex(DYNAMIC_TOKEN_REGEX)]).default(""),
1655
- width: import_v48.z.number().default(100)
1689
+ sectionId: import_v49.z.uuid().default(() => (0, import_uuid.v7)()),
1690
+ sectionType: import_v49.z.literal(SectionType.image).default(SectionType.image),
1691
+ source: import_v49.z.union([import_v49.z.url(), import_v49.z.literal(""), import_v49.z.string().regex(DYNAMIC_TOKEN_REGEX)]).default(""),
1692
+ width: import_v49.z.number().default(100)
1656
1693
  });
1657
1694
 
1658
1695
  // src/schema/widgets/checkout-and-beyond/text.ts
1659
1696
  var import_compat2 = require("es-toolkit/compat");
1660
1697
  var import_uuid2 = require("uuid");
1661
- var import_v49 = require("zod/v4");
1662
- var enumOrOmit = (...vals) => import_v49.z.string().transform((val) => vals.includes(val) ? val : void 0).optional();
1663
- var TiptapText = import_v49.z.object({
1664
- marks: import_v49.z.union([
1665
- import_v49.z.array(
1666
- import_v49.z.discriminatedUnion("type", [
1667
- import_v49.z.object({ type: import_v49.z.literal("bold") }),
1668
- import_v49.z.object({ type: import_v49.z.literal("italic") }),
1669
- import_v49.z.object({
1670
- attrs: import_v49.z.object({
1671
- class: import_v49.z.string().nullable(),
1672
- href: import_v49.z.union([import_v49.z.url(), import_v49.z.literal("#"), import_v49.z.string().regex(DYNAMIC_TOKEN_REGEX)]),
1673
- rel: import_v49.z.string().default("noopener noreferrer nofollow"),
1674
- target: import_v49.z.string().default("_blank")
1698
+ var import_v410 = require("zod/v4");
1699
+ var enumOrOmit = (...vals) => import_v410.z.string().transform((val) => vals.includes(val) ? val : void 0).optional();
1700
+ var TiptapText = import_v410.z.object({
1701
+ marks: import_v410.z.union([
1702
+ import_v410.z.array(
1703
+ import_v410.z.discriminatedUnion("type", [
1704
+ import_v410.z.object({ type: import_v410.z.literal("bold") }),
1705
+ import_v410.z.object({ type: import_v410.z.literal("italic") }),
1706
+ import_v410.z.object({
1707
+ attrs: import_v410.z.object({
1708
+ class: import_v410.z.string().nullable(),
1709
+ href: import_v410.z.union([import_v410.z.url(), import_v410.z.literal("#"), import_v410.z.string().regex(DYNAMIC_TOKEN_REGEX)]),
1710
+ rel: import_v410.z.string().default("noopener noreferrer nofollow"),
1711
+ target: import_v410.z.string().default("_blank")
1675
1712
  }),
1676
- type: import_v49.z.literal("link")
1713
+ type: import_v410.z.literal("link")
1677
1714
  }),
1678
- import_v49.z.object({ type: import_v49.z.literal("strike") }),
1679
- import_v49.z.object({
1680
- attrs: import_v49.z.object({
1715
+ import_v410.z.object({ type: import_v410.z.literal("strike") }),
1716
+ import_v410.z.object({
1717
+ attrs: import_v410.z.object({
1681
1718
  color: enumOrOmit(...textColorNames).default(TextColorName.base),
1682
1719
  fontSize: enumOrOmit(...textSizeNames).default(TextSizeName.base)
1683
1720
  }),
1684
- type: import_v49.z.literal("textStyle")
1721
+ type: import_v410.z.literal("textStyle")
1685
1722
  })
1686
1723
  ])
1687
1724
  ),
1688
- import_v49.z.strictObject({}).transform(() => [])
1725
+ import_v410.z.strictObject({}).transform(() => [])
1689
1726
  ]).optional(),
1690
- text: import_v49.z.string().default(""),
1691
- type: import_v49.z.literal("text").default("text")
1727
+ text: import_v410.z.string().default(""),
1728
+ type: import_v410.z.literal("text").default("text")
1692
1729
  });
1693
- var TiptapParagraph = import_v49.z.object({
1694
- attrs: import_v49.z.object({
1730
+ var TiptapParagraph = import_v410.z.object({
1731
+ attrs: import_v410.z.object({
1695
1732
  textAlign: enumOrOmit(...textAlignments)
1696
1733
  }).default({ textAlign: TextAlignment.start }),
1697
- content: import_v49.z.union([import_v49.z.array(TiptapText), import_v49.z.strictObject({}).transform(() => [])]).default(() => []),
1698
- type: import_v49.z.literal("paragraph").default("paragraph")
1734
+ content: import_v410.z.union([import_v410.z.array(TiptapText), import_v410.z.strictObject({}).transform(() => [])]).default(() => []),
1735
+ type: import_v410.z.literal("paragraph").default("paragraph")
1699
1736
  });
1700
- var TiptapDocument = import_v49.z.object({
1701
- attrs: import_v49.z.object({
1737
+ var TiptapDocument = import_v410.z.object({
1738
+ attrs: import_v410.z.object({
1702
1739
  blockSpacing: enumOrOmit(...spacings)
1703
1740
  }).default({ blockSpacing: Spacing.base }),
1704
- content: import_v49.z.union([import_v49.z.array(TiptapParagraph), import_v49.z.strictObject({}).transform(() => [])]).default(() => [TiptapParagraph.parse({})]),
1705
- type: import_v49.z.literal("doc").default("doc")
1741
+ content: import_v410.z.union([import_v410.z.array(TiptapParagraph), import_v410.z.strictObject({}).transform(() => [])]).default(() => [TiptapParagraph.parse({})]),
1742
+ type: import_v410.z.literal("doc").default("doc")
1706
1743
  });
1707
- var CABProgressTier = import_v49.z.object({
1708
- threshold: import_v49.z.number().int().nonnegative(),
1709
- thresholds: import_v49.z.record(import_v49.z.string(), import_v49.z.number().int().nonnegative()).default(() => ({})),
1710
- tierType: import_v49.z.enum(progressTierTypes).default(ProgressTierType.shipping)
1744
+ var CABProgressTier = import_v410.z.object({
1745
+ threshold: import_v410.z.number().int().nonnegative(),
1746
+ thresholds: import_v410.z.record(import_v410.z.string(), import_v410.z.number().int().nonnegative()).default(() => ({})),
1747
+ tierType: import_v410.z.enum(progressTierTypes).default(ProgressTierType.shipping)
1711
1748
  });
1712
- var CABTextSection = import_v49.z.object({
1713
- buttonField: import_v49.z.enum(buttonFields).optional(),
1714
- content: import_v49.z.record(import_v49.z.string(), import_v49.z.union([import_v49.z.string(), TiptapDocument]).refine(checkForHTML, NO_HTML).optional()).default({ en: TiptapDocument.parse({}) }).optional(),
1715
- name: import_v49.z.string().optional(),
1716
- optionId: import_v49.z.number().optional(),
1749
+ var CABTextSection = import_v410.z.object({
1750
+ buttonField: import_v410.z.enum(buttonFields).optional(),
1751
+ content: import_v410.z.record(import_v410.z.string(), import_v410.z.union([import_v410.z.string(), TiptapDocument]).refine(checkForHTML, NO_HTML).optional()).default({ en: TiptapDocument.parse({}) }).optional(),
1752
+ name: import_v410.z.string().optional(),
1753
+ optionId: import_v410.z.number().optional(),
1717
1754
  rule: CABRule.optional(),
1718
- sectionId: import_v49.z.uuid().default(() => (0, import_uuid2.v7)()),
1719
- sectionType: import_v49.z.literal(SectionType.text).default(SectionType.text),
1755
+ sectionId: import_v410.z.uuid().default(() => (0, import_uuid2.v7)()),
1756
+ sectionType: import_v410.z.literal(SectionType.text).default(SectionType.text),
1720
1757
  tier: CABProgressTier.optional()
1721
1758
  }).superRefine(({ buttonField, content }, ctx) => {
1722
1759
  if (buttonField === ButtonField.destinationUrl && content) {
@@ -1738,148 +1775,180 @@ var CABTextSection = import_v49.z.object({
1738
1775
  });
1739
1776
 
1740
1777
  // src/schema/widgets/checkout-and-beyond/button.ts
1741
- var CABButtonContent = import_v410.z.lazy(
1742
- () => import_v410.z.discriminatedUnion("sectionType", [CABImageSection, CABLayoutSection, CABTextSection])
1778
+ var CABButtonContent = import_v411.z.lazy(
1779
+ () => import_v411.z.discriminatedUnion("sectionType", [CABImageSection, CABLayoutSection, CABTextSection])
1743
1780
  );
1744
- var CABButtonSection = import_v410.z.object({
1745
- action: import_v410.z.union([import_v410.z.literal(""), import_v410.z.enum(buttonActions)]).default(""),
1746
- buttonStyle: import_v410.z.enum(buttonStyles).default(ButtonStyle.primary),
1747
- custom: import_v410.z.object({
1748
- color: import_v410.z.string().regex(HEX_COLOR_REGEX).default("#005bd3"),
1749
- height: import_v410.z.number().default(52),
1750
- width: import_v410.z.number().default(300)
1781
+ var CABButtonSection = import_v411.z.object({
1782
+ action: import_v411.z.union([import_v411.z.literal(""), import_v411.z.enum(buttonActions)]).default(""),
1783
+ buttonStyle: import_v411.z.enum(buttonStyles).default(ButtonStyle.primary),
1784
+ custom: import_v411.z.object({
1785
+ color: import_v411.z.string().regex(HEX_COLOR_REGEX).default("#005bd3"),
1786
+ height: import_v411.z.number().default(52),
1787
+ width: import_v411.z.number().default(300)
1751
1788
  }).default({
1752
1789
  color: "#005bd3",
1753
1790
  height: 52,
1754
1791
  width: 300
1755
1792
  }),
1756
- disableDowngrade: import_v410.z.boolean().default(false),
1757
- name: import_v410.z.string().optional(),
1758
- optionId: import_v410.z.number().optional(),
1759
- popover: import_v410.z.object({
1760
- alignment: import_v410.z.enum(textAlignments).default(TextAlignment.center),
1761
- position: import_v410.z.enum(popoverPositions).default(PopoverPosition.blockStart)
1793
+ disableDowngrade: import_v411.z.boolean().default(false),
1794
+ name: import_v411.z.string().optional(),
1795
+ optionId: import_v411.z.number().optional(),
1796
+ popover: import_v411.z.object({
1797
+ alignment: import_v411.z.enum(textAlignments).default(TextAlignment.center),
1798
+ position: import_v411.z.enum(popoverPositions).default(PopoverPosition.blockStart)
1762
1799
  }).optional().default(() => ({
1763
1800
  alignment: TextAlignment.center,
1764
1801
  position: PopoverPosition.blockStart
1765
1802
  })),
1766
1803
  rule: CABRule.optional(),
1767
- sectionId: import_v410.z.uuid().default(() => (0, import_uuid3.v7)()),
1768
- sections: import_v410.z.union([import_v410.z.array(CABButtonContent), import_v410.z.strictObject({}).transform(() => [])]).default(() => []),
1769
- sectionType: import_v410.z.literal(SectionType.button).default(SectionType.button)
1804
+ sectionId: import_v411.z.uuid().default(() => (0, import_uuid3.v7)()),
1805
+ sections: import_v411.z.union([import_v411.z.array(CABButtonContent), import_v411.z.strictObject({}).transform(() => [])]).default(() => []),
1806
+ sectionType: import_v411.z.literal(SectionType.button).default(SectionType.button),
1807
+ /** Fire-and-forget pixel POSTed when the button is clicked (e.g. a Monetize decline). */
1808
+ trackingUrl: import_v411.z.string().optional()
1770
1809
  });
1771
1810
 
1772
1811
  // src/schema/widgets/checkout-and-beyond/carousel.ts
1773
- var import_v415 = require("zod/v4");
1812
+ var import_v416 = require("zod/v4");
1774
1813
 
1775
1814
  // src/schema/widgets/checkout-and-beyond/offers.ts
1776
- var import_v414 = require("zod/v4");
1815
+ var import_v415 = require("zod/v4");
1777
1816
 
1778
1817
  // src/schema/widgets/checkout-and-beyond/dataSource.ts
1779
1818
  var import_uuid4 = require("uuid");
1780
- var import_v411 = require("zod/v4");
1781
- var CABIntegrations = import_v411.z.object({
1782
- judgeme: import_v411.z.boolean().default(false),
1783
- junip: import_v411.z.boolean().default(false),
1784
- klaviyo: import_v411.z.boolean().default(false),
1785
- loox: import_v411.z.boolean().default(false),
1786
- okendo: import_v411.z.boolean().default(false),
1787
- opinew: import_v411.z.boolean().default(false),
1788
- reviewsio: import_v411.z.boolean().default(false),
1789
- stamped: import_v411.z.boolean().default(false),
1790
- yotpo: import_v411.z.boolean().default(false)
1819
+ var import_v412 = require("zod/v4");
1820
+ var CABDiscount = import_v412.z.object({
1821
+ amount: import_v412.z.union([import_v412.z.number(), import_v412.z.string()]).catch(0),
1822
+ discountedBy: import_v412.z.string().optional(),
1823
+ discountedFrom: import_v412.z.enum(discountSources).optional().catch(void 0),
1824
+ type: import_v412.z.enum(discountTypes).catch("none")
1825
+ });
1826
+ var CABIntegrations = import_v412.z.object({
1827
+ judgeme: import_v412.z.boolean().default(false),
1828
+ junip: import_v412.z.boolean().default(false),
1829
+ klaviyo: import_v412.z.boolean().default(false),
1830
+ loox: import_v412.z.boolean().default(false),
1831
+ okendo: import_v412.z.boolean().default(false),
1832
+ opinew: import_v412.z.boolean().default(false),
1833
+ reviewsio: import_v412.z.boolean().default(false),
1834
+ stamped: import_v412.z.boolean().default(false),
1835
+ yotpo: import_v412.z.boolean().default(false)
1791
1836
  });
1792
- var CABDataSourceSection = import_v411.z.object({
1793
- dataSourceId: import_v411.z.number().nullable().default(null),
1794
- dataSourcePath: import_v411.z.string().default(DEFAULT_ENDPOINTS[0].value),
1837
+ var CABDataSourceSection = import_v412.z.object({
1838
+ dataSourceId: import_v412.z.number().nullable().default(null),
1839
+ dataSourcePath: import_v412.z.string().default(DEFAULT_ENDPOINTS[0].value),
1840
+ discount: CABDiscount.optional(),
1795
1841
  integrations: CABIntegrations.optional(),
1796
- limit: import_v411.z.number().default(1),
1797
- matchVariant: import_v411.z.boolean().default(false),
1798
- matchVariantOutOfStock: import_v411.z.boolean().default(false),
1799
- name: import_v411.z.string().default(DEFAULT_ENDPOINTS[0].label),
1800
- productType: import_v411.z.enum(productTypes).optional(),
1801
- sectionId: import_v411.z.uuid().default(() => (0, import_uuid4.v7)()),
1802
- sectionType: import_v411.z.literal(SectionType.dataSource).default(SectionType.dataSource)
1842
+ limit: import_v412.z.number().default(1),
1843
+ matchVariant: import_v412.z.boolean().default(false),
1844
+ matchVariantOutOfStock: import_v412.z.boolean().default(false),
1845
+ name: import_v412.z.string().default(DEFAULT_ENDPOINTS[0].label),
1846
+ productType: import_v412.z.enum(productTypes).optional(),
1847
+ sectionId: import_v412.z.uuid().default(() => (0, import_uuid4.v7)()),
1848
+ sectionType: import_v412.z.literal(SectionType.dataSource).default(SectionType.dataSource),
1849
+ treatAsGwp: import_v412.z.boolean().default(false)
1803
1850
  });
1804
1851
 
1805
1852
  // src/schema/widgets/checkout-and-beyond/products.ts
1806
1853
  var import_uuid6 = require("uuid");
1807
- var import_v413 = require("zod/v4");
1854
+ var import_v414 = require("zod/v4");
1808
1855
 
1809
1856
  // src/schema/widgets/checkout-and-beyond/product.ts
1810
1857
  var import_uuid5 = require("uuid");
1811
- var import_v412 = require("zod/v4");
1812
- var CABVariantContent = import_v412.z.lazy(
1813
- () => import_v412.z.discriminatedUnion("sectionType", [CABButtonSection, CABTextSection])
1858
+ var import_v413 = require("zod/v4");
1859
+ var CABVariantContent = import_v413.z.lazy(
1860
+ () => import_v413.z.discriminatedUnion("sectionType", [CABButtonSection, CABTextSection])
1814
1861
  );
1815
- var CABProductSection = import_v412.z.object({
1816
- name: import_v412.z.string().optional(),
1817
- productId: import_v412.z.number().nullable().default(null),
1818
- sectionId: import_v412.z.uuid().default(() => (0, import_uuid5.v7)()),
1819
- sections: import_v412.z.union([import_v412.z.array(CABVariantContent), import_v412.z.strictObject({}).transform(() => [])]).default(() => []),
1820
- sectionType: import_v412.z.literal(SectionType.product).default(SectionType.product),
1821
- selectors: import_v412.z.record(import_v412.z.string(), import_v412.z.enum(variantSelectors).default(VariantSelector.menu)).default(() => ({})),
1822
- variantMode: import_v412.z.enum(variantModes).default(VariantMode.multiple)
1862
+ var CABProductSection = import_v413.z.object({
1863
+ name: import_v413.z.string().optional(),
1864
+ productId: import_v413.z.number().nullable().default(null),
1865
+ sectionId: import_v413.z.uuid().default(() => (0, import_uuid5.v7)()),
1866
+ sections: import_v413.z.union([import_v413.z.array(CABVariantContent), import_v413.z.strictObject({}).transform(() => [])]).default(() => []),
1867
+ sectionType: import_v413.z.literal(SectionType.product).default(SectionType.product),
1868
+ selectors: import_v413.z.record(import_v413.z.string(), import_v413.z.enum(variantSelectors).default(VariantSelector.menu)).default(() => ({})),
1869
+ variantMode: import_v413.z.enum(variantModes).default(VariantMode.multiple)
1823
1870
  });
1824
1871
 
1825
1872
  // src/schema/widgets/checkout-and-beyond/products.ts
1826
- var CABProductsSection = import_v413.z.object({
1827
- name: import_v413.z.string().optional(),
1828
- sectionId: import_v413.z.uuid().default(() => (0, import_uuid6.v7)()),
1829
- sections: import_v413.z.union([import_v413.z.array(import_v413.z.lazy(() => CABProductSection)), import_v413.z.strictObject({}).transform(() => [])]).default(() => []),
1830
- sectionType: import_v413.z.literal(SectionType.products).default(SectionType.products)
1873
+ var CABProductsSection = import_v414.z.object({
1874
+ name: import_v414.z.string().optional(),
1875
+ sectionId: import_v414.z.uuid().default(() => (0, import_uuid6.v7)()),
1876
+ sections: import_v414.z.union([import_v414.z.array(import_v414.z.lazy(() => CABProductSection)), import_v414.z.strictObject({}).transform(() => [])]).default(() => []),
1877
+ sectionType: import_v414.z.literal(SectionType.products).default(SectionType.products)
1831
1878
  });
1832
1879
 
1833
1880
  // src/schema/widgets/checkout-and-beyond/offers.ts
1834
- var CABOffersSection = import_v414.z.lazy(
1881
+ var CABOffersSection = import_v415.z.lazy(
1835
1882
  () => CABLayoutSection.omit({ sections: true, sectionType: true }).extend({
1836
- sections: import_v414.z.union([import_v414.z.array(import_v414.z.lazy(() => CABSection)), import_v414.z.strictObject({}).transform(() => [])]).default(() => [CABDataSourceSection.parse({}), CABProductsSection.parse({})]),
1837
- sectionType: import_v414.z.literal(SectionType.offers).default(SectionType.offers)
1883
+ sections: import_v415.z.union([import_v415.z.array(import_v415.z.lazy(() => CABSection)), import_v415.z.strictObject({}).transform(() => [])]).default(() => [
1884
+ CABBannerSection.parse({
1885
+ buttonField: "undoAddToOrder",
1886
+ color: "success",
1887
+ dismissible: true,
1888
+ sections: [
1889
+ CABTextSection.parse({ content: { en: "{{quantity}} {{productTitle}} added to cart." } }),
1890
+ CABButtonSection.parse({ action: "undoAddToOrder", buttonStyle: ButtonStyle.plain })
1891
+ ]
1892
+ }),
1893
+ CABDataSourceSection.parse({}),
1894
+ CABProductsSection.parse({})
1895
+ ]),
1896
+ sectionType: import_v415.z.literal(SectionType.offers).default(SectionType.offers)
1838
1897
  })
1839
1898
  );
1840
1899
 
1841
1900
  // src/schema/widgets/checkout-and-beyond/carousel.ts
1842
- var CABCarouselSection = import_v415.z.lazy(
1901
+ var CABCarouselSection = import_v416.z.lazy(
1843
1902
  () => CABLayoutSection.omit({ sections: true, sectionType: true }).extend({
1844
- autoAdvanceInterval: import_v415.z.number().default(0),
1845
- itemsAtOnce: import_v415.z.number().min(1).default(1),
1846
- sections: import_v415.z.union([import_v415.z.array(import_v415.z.lazy(() => CABSection)), import_v415.z.strictObject({}).transform(() => [])]).default(() => [CABOffersSection.parse({})]),
1847
- sectionType: import_v415.z.literal(SectionType.carousel).default(SectionType.carousel)
1903
+ autoAdvanceInterval: import_v416.z.number().default(0),
1904
+ itemsAtOnce: import_v416.z.number().min(1).default(1),
1905
+ sections: import_v416.z.union([import_v416.z.array(import_v416.z.lazy(() => CABSection)), import_v416.z.strictObject({}).transform(() => [])]).default(() => [CABOffersSection.parse({})]),
1906
+ sectionType: import_v416.z.literal(SectionType.carousel).default(SectionType.carousel)
1848
1907
  })
1849
1908
  );
1850
1909
 
1851
1910
  // src/schema/widgets/checkout-and-beyond/cartLine.ts
1852
- var import_v416 = require("zod/v4");
1853
- var CABCartLineSection = import_v416.z.lazy(
1911
+ var import_v417 = require("zod/v4");
1912
+ var CABCartLineSection = import_v417.z.lazy(
1854
1913
  () => CABLayoutSection.omit({ sections: true, sectionType: true }).extend({
1855
- sections: import_v416.z.union([import_v416.z.array(import_v416.z.lazy(() => CABSection)), import_v416.z.strictObject({}).transform(() => [])]).default(() => [CABButtonSection.parse({ action: ButtonAction.switchToSubscription })]),
1856
- sectionType: import_v416.z.literal(SectionType.cartLine).default(SectionType.cartLine)
1914
+ sections: import_v417.z.union([import_v417.z.array(import_v417.z.lazy(() => CABSection)), import_v417.z.strictObject({}).transform(() => [])]).default(() => [CABButtonSection.parse({ action: ButtonAction.switchToSubscription })]),
1915
+ sectionType: import_v417.z.literal(SectionType.cartLine).default(SectionType.cartLine)
1857
1916
  })
1858
1917
  );
1859
1918
 
1860
- // src/schema/widgets/checkout-and-beyond/progressBar.ts
1919
+ // src/schema/widgets/checkout-and-beyond/monetize.ts
1861
1920
  var import_uuid7 = require("uuid");
1862
- var import_v417 = require("zod/v4");
1863
- var CABProgressBarSection = import_v417.z.object({
1921
+ var import_v418 = require("zod/v4");
1922
+ var CABMonetizeSection = import_v418.z.object({
1923
+ name: import_v418.z.string().optional(),
1924
+ rule: CABRule.optional(),
1925
+ sectionId: import_v418.z.uuid().default(() => (0, import_uuid7.v7)()),
1926
+ sectionType: import_v418.z.literal(SectionType.monetize).default(SectionType.monetize)
1927
+ });
1928
+
1929
+ // src/schema/widgets/checkout-and-beyond/progressBar.ts
1930
+ var import_uuid8 = require("uuid");
1931
+ var import_v419 = require("zod/v4");
1932
+ var CABProgressBarSection = import_v419.z.object({
1864
1933
  /** Empty = shown everywhere; otherwise uppercase ISO country codes. */
1865
- countryCodes: import_v417.z.array(import_v417.z.string()).default(() => []),
1866
- name: import_v417.z.string().optional(),
1934
+ countryCodes: import_v419.z.array(import_v419.z.string()).default(() => []),
1935
+ name: import_v419.z.string().optional(),
1867
1936
  rule: CABRule.optional(),
1868
- sectionId: import_v417.z.uuid().default(() => (0, import_uuid7.v7)()),
1869
- sections: import_v417.z.union([import_v417.z.array(CABTextSection), import_v417.z.strictObject({}).transform(() => [])]).default(() => []),
1870
- sectionType: import_v417.z.literal(SectionType.progressBar).default(SectionType.progressBar)
1937
+ sectionId: import_v419.z.uuid().default(() => (0, import_uuid8.v7)()),
1938
+ sections: import_v419.z.union([import_v419.z.array(CABTextSection), import_v419.z.strictObject({}).transform(() => [])]).default(() => []),
1939
+ sectionType: import_v419.z.literal(SectionType.progressBar).default(SectionType.progressBar)
1871
1940
  });
1872
1941
 
1873
1942
  // src/schema/widgets/checkout-and-beyond/quantity.ts
1874
- var import_uuid8 = require("uuid");
1875
- var import_v418 = require("zod/v4");
1876
- var CABQuantitySection = import_v418.z.object({
1877
- errorMessages: import_v418.z.record(
1878
- import_v418.z.string(),
1879
- import_v418.z.object({
1880
- max: import_v418.z.string().optional(),
1881
- min: import_v418.z.string().optional(),
1882
- neg: import_v418.z.string().optional()
1943
+ var import_uuid9 = require("uuid");
1944
+ var import_v420 = require("zod/v4");
1945
+ var CABQuantitySection = import_v420.z.object({
1946
+ errorMessages: import_v420.z.record(
1947
+ import_v420.z.string(),
1948
+ import_v420.z.object({
1949
+ max: import_v420.z.string().optional(),
1950
+ min: import_v420.z.string().optional(),
1951
+ neg: import_v420.z.string().optional()
1883
1952
  })
1884
1953
  ).default({
1885
1954
  en: {
@@ -1888,59 +1957,61 @@ var CABQuantitySection = import_v418.z.object({
1888
1957
  neg: "Quantity cannot be negative"
1889
1958
  }
1890
1959
  }),
1891
- inputType: import_v418.z.enum(quantityInputs).default(QuantityInput.select),
1892
- max: import_v418.z.number().min(1).max(100).default(10),
1893
- min: import_v418.z.number().min(1).default(1),
1894
- name: import_v418.z.string().optional(),
1960
+ inputType: import_v420.z.enum(quantityInputs).default(QuantityInput.select),
1961
+ max: import_v420.z.number().min(1).max(100).default(10),
1962
+ min: import_v420.z.number().min(1).default(1),
1963
+ name: import_v420.z.string().optional(),
1895
1964
  rule: CABRule.optional(),
1896
- sectionId: import_v418.z.uuid().default(() => (0, import_uuid8.v7)()),
1897
- sectionType: import_v418.z.literal(SectionType.quantity).default(SectionType.quantity)
1965
+ sectionId: import_v420.z.uuid().default(() => (0, import_uuid9.v7)()),
1966
+ sectionType: import_v420.z.literal(SectionType.quantity).default(SectionType.quantity)
1898
1967
  });
1899
1968
 
1900
1969
  // src/schema/widgets/checkout-and-beyond/reviews.ts
1901
- var import_uuid9 = require("uuid");
1902
- var import_v419 = require("zod/v4");
1903
- var CABReviewsSection = import_v419.z.object({
1904
- color: import_v419.z.string().default("#fadb14"),
1905
- name: import_v419.z.string().optional(),
1970
+ var import_uuid10 = require("uuid");
1971
+ var import_v421 = require("zod/v4");
1972
+ var CABReviewsSection = import_v421.z.object({
1973
+ color: import_v421.z.string().default("#fadb14"),
1974
+ name: import_v421.z.string().optional(),
1906
1975
  rule: CABRule.optional(),
1907
- sectionId: import_v419.z.uuid().default(() => (0, import_uuid9.v7)()),
1908
- sectionType: import_v419.z.literal(SectionType.reviews).default(SectionType.reviews),
1909
- size: import_v419.z.enum(reviewsSizes).default(ReviewsSize.default)
1976
+ sectionId: import_v421.z.uuid().default(() => (0, import_uuid10.v7)()),
1977
+ sectionType: import_v421.z.literal(SectionType.reviews).default(SectionType.reviews),
1978
+ size: import_v421.z.enum(reviewsSizes).default(ReviewsSize.default)
1910
1979
  });
1911
1980
 
1912
1981
  // src/schema/widgets/checkout-and-beyond/variants.ts
1913
1982
  var import_compat3 = require("es-toolkit/compat");
1914
- var import_uuid10 = require("uuid");
1915
- var import_v420 = require("zod/v4");
1916
- var CABVariantsSection = import_v420.z.object({
1917
- hideOutOfStockVariants: import_v420.z.boolean().default(false),
1918
- name: import_v420.z.string().optional(),
1983
+ var import_uuid11 = require("uuid");
1984
+ var import_v422 = require("zod/v4");
1985
+ var CABVariantsSection = import_v422.z.object({
1986
+ hideOutOfStockVariants: import_v422.z.boolean().default(false),
1987
+ name: import_v422.z.string().optional(),
1919
1988
  rule: CABRule.optional(),
1920
- sectionId: import_v420.z.uuid().default(() => (0, import_uuid10.v7)()),
1921
- sectionType: import_v420.z.literal(SectionType.variants).default(SectionType.variants),
1922
- selector: import_v420.z.enum((0, import_compat3.slice)(variantSelectors, 0, 3)).default(VariantSelector.menu),
1923
- variantMode: import_v420.z.enum(variantModes).default(VariantMode.multiple)
1989
+ sectionId: import_v422.z.uuid().default(() => (0, import_uuid11.v7)()),
1990
+ sectionType: import_v422.z.literal(SectionType.variants).default(SectionType.variants),
1991
+ selector: import_v422.z.enum((0, import_compat3.slice)(variantSelectors, 0, 3)).default(VariantSelector.menu),
1992
+ variantMode: import_v422.z.enum(variantModes).default(VariantMode.multiple)
1924
1993
  });
1925
1994
 
1926
1995
  // src/schema/widgets/checkout-and-beyond/shared.ts
1927
- var CABBorder = import_v421.z.object({
1928
- radius: import_v421.z.enum(borderRadii).default(BorderRadius.base),
1929
- style: import_v421.z.enum(borderStyles).default(BorderStyle.none),
1930
- width: import_v421.z.enum(borderWidths).default(BorderWidth.base)
1996
+ var CABBorder = import_v423.z.object({
1997
+ radius: import_v423.z.enum(borderRadii).default(BorderRadius.base),
1998
+ style: import_v423.z.enum(borderStyles).default(BorderStyle.none),
1999
+ width: import_v423.z.enum(borderWidths).default(BorderWidth.base)
1931
2000
  }).default({
1932
2001
  radius: BorderRadius.base,
1933
2002
  style: BorderStyle.none,
1934
2003
  width: BorderWidth.base
1935
2004
  });
1936
- var CABSection = import_v421.z.lazy(
1937
- () => import_v421.z.discriminatedUnion("sectionType", [
2005
+ var CABSection = import_v423.z.lazy(
2006
+ () => import_v423.z.discriminatedUnion("sectionType", [
2007
+ CABBannerSection,
1938
2008
  CABButtonSection,
1939
2009
  CABCarouselSection,
1940
2010
  CABCartLineSection,
1941
2011
  CABDataSourceSection,
1942
2012
  CABImageSection,
1943
2013
  CABLayoutSection,
2014
+ CABMonetizeSection,
1944
2015
  CABOffersSection,
1945
2016
  CABProductSection,
1946
2017
  CABProductsSection,
@@ -1953,126 +2024,128 @@ var CABSection = import_v421.z.lazy(
1953
2024
  );
1954
2025
 
1955
2026
  // src/schema/widgets/checkout-and-beyond/layout.ts
1956
- var GridItem = import_v422.z.union([import_v422.z.literal("auto"), import_v422.z.literal("fill"), import_v422.z.string().regex(/^\d+%$/), import_v422.z.number()]);
1957
- var CABLayoutSection = import_v422.z.object({
1958
- alignment: import_v422.z.object({
1959
- horizontal: import_v422.z.enum(horizontalAlignments).default(HorizontalAlignment.start),
1960
- vertical: import_v422.z.enum(verticalAlignments).default(VerticalAlignment.top)
2027
+ var GridItem = import_v424.z.union([import_v424.z.literal("auto"), import_v424.z.literal("fill"), import_v424.z.string().regex(/^\d+%$/), import_v424.z.number()]);
2028
+ var CABLayoutSection = import_v424.z.object({
2029
+ alignment: import_v424.z.object({
2030
+ horizontal: import_v424.z.enum(horizontalAlignments).default(HorizontalAlignment.start),
2031
+ vertical: import_v424.z.enum(verticalAlignments).default(VerticalAlignment.top)
1961
2032
  }).default({
1962
2033
  horizontal: HorizontalAlignment.start,
1963
2034
  vertical: VerticalAlignment.top
1964
2035
  }),
1965
- border: import_v422.z.lazy(() => CABBorder),
1966
- buttonField: import_v422.z.enum(buttonFields).optional(),
1967
- direction: import_v422.z.enum(directions).default(Direction.rows),
1968
- grid: import_v422.z.object({
1969
- columns: import_v422.z.union([import_v422.z.array(GridItem), import_v422.z.undefined()]).default(() => ["auto"]),
1970
- rows: import_v422.z.union([import_v422.z.array(GridItem), import_v422.z.undefined()]).default(() => ["auto"])
2036
+ border: import_v424.z.lazy(() => CABBorder),
2037
+ buttonField: import_v424.z.enum(buttonFields).optional(),
2038
+ direction: import_v424.z.enum(directions).default(Direction.rows),
2039
+ grid: import_v424.z.object({
2040
+ columns: import_v424.z.union([import_v424.z.array(GridItem), import_v424.z.undefined()]).default(() => ["auto"]),
2041
+ rows: import_v424.z.union([import_v424.z.array(GridItem), import_v424.z.undefined()]).default(() => ["auto"])
1971
2042
  }).default({ columns: ["auto"], rows: ["auto"] }).optional(),
1972
- name: import_v422.z.string().optional(),
1973
- padding: import_v422.z.enum(spacings).default(Spacing.none),
2043
+ name: import_v424.z.string().optional(),
2044
+ padding: import_v424.z.enum(spacings).default(Spacing.none),
1974
2045
  rule: CABRule.optional(),
1975
- sectionId: import_v422.z.uuid().default(() => (0, import_uuid11.v7)()),
1976
- sections: import_v422.z.union([import_v422.z.array(import_v422.z.lazy(() => CABSection)), import_v422.z.strictObject({}).transform(() => [])]).default(() => []),
1977
- sectionType: import_v422.z.literal(SectionType.layout).default(SectionType.layout),
1978
- spacing: import_v422.z.enum(spacings).default(Spacing.base),
1979
- width: import_v422.z.number().default(100)
2046
+ sectionId: import_v424.z.uuid().default(() => (0, import_uuid12.v7)()),
2047
+ sections: import_v424.z.union([import_v424.z.array(import_v424.z.lazy(() => CABSection)), import_v424.z.strictObject({}).transform(() => [])]).default(() => []),
2048
+ sectionType: import_v424.z.literal(SectionType.layout).default(SectionType.layout),
2049
+ spacing: import_v424.z.enum(spacings).default(Spacing.base),
2050
+ /** Fire-and-forget impression pixel POSTed once when the section is shown (e.g. a Monetize offer view). */
2051
+ viewUrl: import_v424.z.string().optional(),
2052
+ width: import_v424.z.number().default(100)
1980
2053
  });
1981
2054
 
1982
2055
  // src/schema/widgets/checkout-and-beyond/root.ts
1983
- var TargetArea = import_v423.z.object({
1984
- fill: import_v423.z.boolean().optional(),
1985
- flip: import_v423.z.enum(["both", "horizontal", "vertical"]).optional(),
1986
- icon: import_v423.z.string(),
1987
- label: import_v423.z.string(),
1988
- width: import_v423.z.string()
2056
+ var TargetArea = import_v425.z.object({
2057
+ fill: import_v425.z.boolean().optional(),
2058
+ flip: import_v425.z.enum(["both", "horizontal", "vertical"]).optional(),
2059
+ icon: import_v425.z.string(),
2060
+ label: import_v425.z.string(),
2061
+ width: import_v425.z.string()
1989
2062
  }).default(targetAreas[EditorMode.checkoutExtension][1]);
1990
- var CABTracking = import_v423.z.object({
1991
- enableAttribution: import_v423.z.boolean().default(true),
1992
- enableSource: import_v423.z.boolean().default(true),
1993
- enableWidget: import_v423.z.boolean().default(true)
2063
+ var CABTracking = import_v425.z.object({
2064
+ enableAttribution: import_v425.z.boolean().default(true),
2065
+ enableSource: import_v425.z.boolean().default(true),
2066
+ enableWidget: import_v425.z.boolean().default(true)
1994
2067
  }).default({ enableAttribution: true, enableSource: true, enableWidget: true });
1995
2068
  var CABRootSection = CABLayoutSection.extend({
1996
- editorMode: import_v423.z.enum(editorModes).default(EditorMode.checkoutExtension),
1997
- previewMode: import_v423.z.boolean().default(false),
1998
- storeId: import_v423.z.number().nullable().default(null),
2069
+ editorMode: import_v425.z.enum(editorModes).default(EditorMode.checkoutExtension),
2070
+ previewMode: import_v425.z.boolean().default(false),
2071
+ storeId: import_v425.z.number().nullable().default(null),
1999
2072
  targetArea: TargetArea.nullable(),
2000
2073
  tracking: CABTracking,
2001
- type: import_v423.z.enum(widgetTypes).default(WidgetType.ui_extension_content_block),
2002
- version: import_v423.z.literal(2).default(2),
2003
- widgetId: import_v423.z.number().nullable().default(null)
2074
+ type: import_v425.z.enum(widgetTypes).default(WidgetType.ui_extension_content_block),
2075
+ version: import_v425.z.literal(2).default(2),
2076
+ widgetId: import_v425.z.number().nullable().default(null)
2004
2077
  });
2005
2078
 
2006
2079
  // src/schema/widgets/contentBlock.ts
2007
- var ContentBlockV1 = import_v424.z.object({
2008
- blockSpacing: import_v424.z.enum(spacings).optional(),
2009
- imageBlocks: import_v424.z.union([
2010
- import_v424.z.array(
2011
- import_v424.z.object({
2012
- altText: import_v424.z.string().nullable(),
2013
- description: import_v424.z.string().nullable(),
2014
- id: import_v424.z.uuid(),
2015
- imagePlacement: import_v424.z.enum(["top", "right", "bottom", "left"]),
2016
- imageSize: import_v424.z.number(),
2017
- imageUrl: import_v424.z.url(),
2018
- textAlignment: import_v424.z.enum(["left", "center", "right"]),
2019
- textSize: import_v424.z.enum(textSizeNames)
2080
+ var ContentBlockV1 = import_v426.z.object({
2081
+ blockSpacing: import_v426.z.enum(spacings).optional(),
2082
+ imageBlocks: import_v426.z.union([
2083
+ import_v426.z.array(
2084
+ import_v426.z.object({
2085
+ altText: import_v426.z.string().nullable(),
2086
+ description: import_v426.z.string().nullable(),
2087
+ id: import_v426.z.uuid(),
2088
+ imagePlacement: import_v426.z.enum(["top", "right", "bottom", "left"]),
2089
+ imageSize: import_v426.z.number(),
2090
+ imageUrl: import_v426.z.url(),
2091
+ textAlignment: import_v426.z.enum(["left", "center", "right"]),
2092
+ textSize: import_v426.z.enum(textSizeNames)
2020
2093
  })
2021
2094
  ),
2022
- import_v424.z.strictObject({}).transform(() => [])
2095
+ import_v426.z.strictObject({}).transform(() => [])
2023
2096
  ]).optional(),
2024
- imageLayout: import_v424.z.enum(["row", "column"]).optional(),
2025
- language: import_v424.z.object({
2026
- description: import_v424.z.string(),
2027
- superTitle: import_v424.z.string(),
2028
- title: import_v424.z.string()
2097
+ imageLayout: import_v426.z.enum(["row", "column"]).optional(),
2098
+ language: import_v426.z.object({
2099
+ description: import_v426.z.string(),
2100
+ superTitle: import_v426.z.string(),
2101
+ title: import_v426.z.string()
2029
2102
  }),
2030
- previewMode: import_v424.z.boolean(),
2031
- type: import_v424.z.literal(WidgetType.ui_extension_content_block).default(WidgetType.ui_extension_content_block),
2032
- version: import_v424.z.literal(1)
2103
+ previewMode: import_v426.z.boolean(),
2104
+ type: import_v426.z.literal(WidgetType.ui_extension_content_block).default(WidgetType.ui_extension_content_block),
2105
+ version: import_v426.z.literal(1)
2033
2106
  });
2034
- var ContentBlock = import_v424.z.discriminatedUnion("version", [
2107
+ var ContentBlock = import_v426.z.discriminatedUnion("version", [
2035
2108
  ContentBlockV1,
2036
2109
  CABRootSection.extend({
2037
- type: import_v424.z.literal(WidgetType.ui_extension_content_block).default(WidgetType.ui_extension_content_block)
2110
+ type: import_v426.z.literal(WidgetType.ui_extension_content_block).default(WidgetType.ui_extension_content_block)
2038
2111
  })
2039
2112
  ]);
2040
2113
 
2041
2114
  // src/schema/widgets/giftWithPurchase.ts
2042
- var import_v425 = require("zod/v4");
2043
- var GiftWithPurchase = import_v425.z.looseObject({
2044
- type: import_v425.z.literal(WidgetType.gift_with_purchase).default(WidgetType.gift_with_purchase)
2115
+ var import_v427 = require("zod/v4");
2116
+ var GiftWithPurchase = import_v427.z.looseObject({
2117
+ type: import_v427.z.literal(WidgetType.gift_with_purchase).default(WidgetType.gift_with_purchase)
2045
2118
  });
2046
2119
 
2047
2120
  // src/schema/widgets/lineItemEditor.ts
2048
- var import_v426 = require("zod/v4");
2049
- var LineItemEditor = import_v426.z.looseObject({
2050
- type: import_v426.z.literal(WidgetType.ui_extension_line_item_editor).default(WidgetType.ui_extension_line_item_editor)
2121
+ var import_v428 = require("zod/v4");
2122
+ var LineItemEditor = import_v428.z.looseObject({
2123
+ type: import_v428.z.literal(WidgetType.ui_extension_line_item_editor).default(WidgetType.ui_extension_line_item_editor)
2051
2124
  });
2052
2125
 
2053
2126
  // src/schema/widgets/progressBar.ts
2054
- var import_v427 = require("zod/v4");
2055
- var ProgressBar = import_v427.z.looseObject({
2056
- type: import_v427.z.literal(WidgetType.ui_extension_progress_bar).default(WidgetType.ui_extension_progress_bar)
2127
+ var import_v429 = require("zod/v4");
2128
+ var ProgressBar = import_v429.z.looseObject({
2129
+ type: import_v429.z.literal(WidgetType.ui_extension_progress_bar).default(WidgetType.ui_extension_progress_bar)
2057
2130
  });
2058
2131
 
2059
2132
  // src/schema/widgets/rebuyButton.ts
2060
- var import_v428 = require("zod/v4");
2061
- var RebuyButtonV1 = import_v428.z.looseObject({
2062
- type: import_v428.z.literal(WidgetType.ui_extension_button).default(WidgetType.ui_extension_button),
2063
- version: import_v428.z.literal(1)
2133
+ var import_v430 = require("zod/v4");
2134
+ var RebuyButtonV1 = import_v430.z.looseObject({
2135
+ type: import_v430.z.literal(WidgetType.ui_extension_button).default(WidgetType.ui_extension_button),
2136
+ version: import_v430.z.literal(1)
2064
2137
  });
2065
- var RebuyButton = import_v428.z.discriminatedUnion("version", [
2138
+ var RebuyButton = import_v430.z.discriminatedUnion("version", [
2066
2139
  RebuyButtonV1,
2067
2140
  CABRootSection.extend({
2068
- type: import_v428.z.literal(WidgetType.ui_extension_button).default(WidgetType.ui_extension_button)
2141
+ type: import_v430.z.literal(WidgetType.ui_extension_button).default(WidgetType.ui_extension_button)
2069
2142
  })
2070
2143
  ]);
2071
2144
 
2072
2145
  // src/schema/widgets/rebuyMonetize.ts
2073
- var import_v429 = require("zod/v4");
2074
- var RebuyMonetize = import_v429.z.looseObject({
2075
- type: import_v429.z.literal(WidgetType.ui_extension_ad).default(WidgetType.ui_extension_ad)
2146
+ var import_v431 = require("zod/v4");
2147
+ var RebuyMonetize = import_v431.z.looseObject({
2148
+ type: import_v431.z.literal(WidgetType.ui_extension_ad).default(WidgetType.ui_extension_ad)
2076
2149
  });
2077
2150
 
2078
2151
  // src/schema/widgetData.ts
@@ -2086,7 +2159,7 @@ var extensionWidgetTypes = [
2086
2159
  WidgetType.ui_extension_line_item_editor,
2087
2160
  WidgetType.ui_extension_progress_bar
2088
2161
  ];
2089
- var WidgetData = import_v430.z.discriminatedUnion("type", [
2162
+ var WidgetData = import_v432.z.discriminatedUnion("type", [
2090
2163
  ABTestingPlaceholder,
2091
2164
  CheckoutExtension,
2092
2165
  ContentBlock,
@@ -2099,15 +2172,15 @@ var WidgetData = import_v430.z.discriminatedUnion("type", [
2099
2172
 
2100
2173
  // src/schema/widgets/post-purchase-offer/common.ts
2101
2174
  var import_compat4 = require("es-toolkit/compat");
2102
- var import_v431 = require("zod/v4");
2103
- var strictNumber = import_v431.z.union([
2104
- import_v431.z.number(),
2105
- import_v431.z.string().transform((value) => (0, import_compat4.toNumber)((0, import_compat4.replace)((0, import_compat4.toString)(value), /[^0-9.]/g, "")) || 0),
2106
- import_v431.z.unknown().transform(() => 0)
2175
+ var import_v433 = require("zod/v4");
2176
+ var strictNumber = import_v433.z.union([
2177
+ import_v433.z.number(),
2178
+ import_v433.z.string().transform((value) => (0, import_compat4.toNumber)((0, import_compat4.replace)((0, import_compat4.toString)(value), /[^0-9.]/g, "")) || 0),
2179
+ import_v433.z.unknown().transform(() => 0)
2107
2180
  ]);
2108
2181
 
2109
2182
  // src/schema/widgets/post-purchase-offer/constants.ts
2110
- var import_v432 = require("zod/v4");
2183
+ var import_v434 = require("zod/v4");
2111
2184
  var blockTypes = [
2112
2185
  "callout_banner",
2113
2186
  "image",
@@ -2118,144 +2191,144 @@ var blockTypes = [
2118
2191
  "text",
2119
2192
  "timer"
2120
2193
  ];
2121
- var blockType = import_v432.z.enum(blockTypes);
2194
+ var blockType = import_v434.z.enum(blockTypes);
2122
2195
  var BlockType = blockType.enum;
2123
2196
 
2124
2197
  // src/schema/widgets/post-purchase-offer/postPurchaseBlocks.ts
2125
2198
  var import_compat5 = require("es-toolkit/compat");
2126
- var import_uuid12 = require("uuid");
2127
- var import_v433 = require("zod/v4");
2128
- var TextAlignment2 = import_v433.z.union([import_v433.z.enum(["leading", "center", "trailing"]), import_v433.z.unknown().transform(() => "leading")]);
2129
- var TextSize = import_v433.z.union([
2130
- import_v433.z.enum(["xsmall", "small", "base", "default", "medium", "large", "xlarge"]),
2131
- import_v433.z.unknown().transform(() => "medium")
2199
+ var import_uuid13 = require("uuid");
2200
+ var import_v435 = require("zod/v4");
2201
+ var TextAlignment2 = import_v435.z.union([import_v435.z.enum(["leading", "center", "trailing"]), import_v435.z.unknown().transform(() => "leading")]);
2202
+ var TextSize = import_v435.z.union([
2203
+ import_v435.z.enum(["xsmall", "small", "base", "default", "medium", "large", "xlarge"]),
2204
+ import_v435.z.unknown().transform(() => "medium")
2132
2205
  ]);
2133
- var CalloutBannerBlock = import_v433.z.object({
2134
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2135
- name: import_v433.z.string().optional(),
2136
- settings: import_v433.z.object({
2137
- superTitle: import_v433.z.union([import_v433.z.string(), TiptapDocument]).default(() => "Limited-time Offer"),
2138
- title: import_v433.z.union([import_v433.z.string(), TiptapDocument]).default(() => "Add this customer favorite to your order")
2206
+ var CalloutBannerBlock = import_v435.z.object({
2207
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2208
+ name: import_v435.z.string().optional(),
2209
+ settings: import_v435.z.object({
2210
+ superTitle: import_v435.z.union([import_v435.z.string(), TiptapDocument]).default(() => "Limited-time Offer"),
2211
+ title: import_v435.z.union([import_v435.z.string(), TiptapDocument]).default(() => "Add this customer favorite to your order")
2139
2212
  }),
2140
- styles: import_v433.z.object({
2141
- superTitleEmphasized: import_v433.z.boolean().default(false),
2213
+ styles: import_v435.z.object({
2214
+ superTitleEmphasized: import_v435.z.boolean().default(false),
2142
2215
  superTitleSize: TextSize.default("large"),
2143
2216
  textAlignment: TextAlignment2.default("center"),
2144
- titleEmphasized: import_v433.z.boolean().default(true),
2217
+ titleEmphasized: import_v435.z.boolean().default(true),
2145
2218
  titleSize: TextSize.default("large")
2146
2219
  }),
2147
- type: import_v433.z.literal(BlockType.callout_banner).default(BlockType.callout_banner)
2220
+ type: import_v435.z.literal(BlockType.callout_banner).default(BlockType.callout_banner)
2148
2221
  });
2149
- var ImageBlock = import_v433.z.object({
2150
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2151
- name: import_v433.z.string().optional(),
2152
- settings: import_v433.z.union([
2153
- import_v433.z.object({
2222
+ var ImageBlock = import_v435.z.object({
2223
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2224
+ name: import_v435.z.string().optional(),
2225
+ settings: import_v435.z.union([
2226
+ import_v435.z.object({
2154
2227
  /** This isn't used in the post-purchase offer widget */
2155
- alt: import_v433.z.string().optional().default(""),
2156
- image: import_v433.z.union([import_v433.z.literal(""), import_v433.z.url()]).default(""),
2157
- imageSize: import_v433.z.number().default(20),
2158
- imageType: import_v433.z.enum(["URL", "UPLOAD"]).default("URL")
2228
+ alt: import_v435.z.string().optional().default(""),
2229
+ image: import_v435.z.union([import_v435.z.literal(""), import_v435.z.url()]).default(""),
2230
+ imageSize: import_v435.z.number().default(20),
2231
+ imageType: import_v435.z.enum(["URL", "UPLOAD"]).default("URL")
2159
2232
  }),
2160
- import_v433.z.array(import_v433.z.never()).transform(() => ({}))
2233
+ import_v435.z.array(import_v435.z.never()).transform(() => ({}))
2161
2234
  ]),
2162
- type: import_v433.z.literal(BlockType.image).default(BlockType.image)
2235
+ type: import_v435.z.literal(BlockType.image).default(BlockType.image)
2163
2236
  });
2164
- var ImageContentBlock = import_v433.z.object({
2165
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2166
- name: import_v433.z.string().optional(),
2167
- settings: import_v433.z.object({
2168
- alt: import_v433.z.string().optional().default(""),
2169
- description: import_v433.z.union([import_v433.z.string(), TiptapDocument, import_v433.z.null()]).default(
2237
+ var ImageContentBlock = import_v435.z.object({
2238
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2239
+ name: import_v435.z.string().optional(),
2240
+ settings: import_v435.z.object({
2241
+ alt: import_v435.z.string().optional().default(""),
2242
+ description: import_v435.z.union([import_v435.z.string(), TiptapDocument, import_v435.z.null()]).default(
2170
2243
  "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
2171
2244
  ),
2172
2245
  descriptionSize: TextSize.default("medium"),
2173
2246
  horizontalAlignment: TextAlignment2.default("leading"),
2174
- image: import_v433.z.union([import_v433.z.literal(""), import_v433.z.url()]).default(""),
2175
- imagePlacement: import_v433.z.enum(["bottom", "left", "right", "top"]).optional().default("left"),
2176
- imageSize: import_v433.z.number().default(20),
2177
- superTitle: import_v433.z.union([import_v433.z.string(), TiptapDocument]).default("Lorem Ipsum!"),
2247
+ image: import_v435.z.union([import_v435.z.literal(""), import_v435.z.url()]).default(""),
2248
+ imagePlacement: import_v435.z.enum(["bottom", "left", "right", "top"]).optional().default("left"),
2249
+ imageSize: import_v435.z.number().default(20),
2250
+ superTitle: import_v435.z.union([import_v435.z.string(), TiptapDocument]).default("Lorem Ipsum!"),
2178
2251
  superTitleSize: TextSize.default("medium"),
2179
2252
  /** This isn't configurable in the admin-nextjs editor */
2180
- swapContent: import_v433.z.boolean().optional().default(false),
2181
- title: import_v433.z.union([import_v433.z.string(), TiptapDocument]).nullable().default("Lorem ipsum dolor sit amet"),
2253
+ swapContent: import_v435.z.boolean().optional().default(false),
2254
+ title: import_v435.z.union([import_v435.z.string(), TiptapDocument]).nullable().default("Lorem ipsum dolor sit amet"),
2182
2255
  titleSize: TextSize.default("medium")
2183
2256
  }),
2184
- type: import_v433.z.literal(BlockType.image_content).default(BlockType.image_content)
2257
+ type: import_v435.z.literal(BlockType.image_content).default(BlockType.image_content)
2185
2258
  });
2186
- var PayButtonBlock = import_v433.z.object({
2187
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2188
- name: import_v433.z.string().optional(),
2189
- settings: import_v433.z.union([
2190
- import_v433.z.object({
2191
- label: import_v433.z.string().default("Pay Now")
2259
+ var PayButtonBlock = import_v435.z.object({
2260
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2261
+ name: import_v435.z.string().optional(),
2262
+ settings: import_v435.z.union([
2263
+ import_v435.z.object({
2264
+ label: import_v435.z.string().default("Pay Now")
2192
2265
  }),
2193
- import_v433.z.array(import_v433.z.never()).transform(() => ({
2266
+ import_v435.z.array(import_v435.z.never()).transform(() => ({
2194
2267
  label: "Pay Now"
2195
2268
  }))
2196
2269
  ]),
2197
- styles: import_v433.z.union([
2198
- import_v433.z.object({
2199
- buttonWidth: import_v433.z.number().min(10).max(100).default(50)
2270
+ styles: import_v435.z.union([
2271
+ import_v435.z.object({
2272
+ buttonWidth: import_v435.z.number().min(10).max(100).default(50)
2200
2273
  }),
2201
- import_v433.z.array(import_v433.z.never()).transform(() => ({
2274
+ import_v435.z.array(import_v435.z.never()).transform(() => ({
2202
2275
  buttonWidth: 50
2203
2276
  }))
2204
2277
  ]),
2205
- type: import_v433.z.literal(BlockType.pay_button).default(BlockType.pay_button)
2278
+ type: import_v435.z.literal(BlockType.pay_button).default(BlockType.pay_button)
2206
2279
  });
2207
- var ProductInformationBlock = import_v433.z.object({
2280
+ var ProductInformationBlock = import_v435.z.object({
2208
2281
  /** This isn't configurable in the admin-nextjs editor */
2209
- hideProductImage: import_v433.z.boolean().optional().default(false),
2210
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2211
- name: import_v433.z.string().optional(),
2212
- type: import_v433.z.literal(BlockType.product_information).default(BlockType.product_information)
2282
+ hideProductImage: import_v435.z.boolean().optional().default(false),
2283
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2284
+ name: import_v435.z.string().optional(),
2285
+ type: import_v435.z.literal(BlockType.product_information).default(BlockType.product_information)
2213
2286
  });
2214
- var SeparatorBlock = import_v433.z.object({
2215
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2216
- name: import_v433.z.string().optional(),
2217
- type: import_v433.z.literal(BlockType.separator).default(BlockType.separator)
2287
+ var SeparatorBlock = import_v435.z.object({
2288
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2289
+ name: import_v435.z.string().optional(),
2290
+ type: import_v435.z.literal(BlockType.separator).default(BlockType.separator)
2218
2291
  });
2219
- var TextBlock = import_v433.z.object({
2220
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2221
- name: import_v433.z.string().optional(),
2222
- settings: import_v433.z.object({
2223
- description: import_v433.z.union([import_v433.z.string(), TiptapDocument]).optional().default(
2292
+ var TextBlock = import_v435.z.object({
2293
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2294
+ name: import_v435.z.string().optional(),
2295
+ settings: import_v435.z.object({
2296
+ description: import_v435.z.union([import_v435.z.string(), TiptapDocument]).optional().default(
2224
2297
  "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
2225
2298
  ),
2226
2299
  /** This isn't used in the post-purchase offer widget */
2227
2300
  descriptionSize: TextSize.default("medium"),
2228
2301
  horizontalAlignment: TextAlignment2.default("leading"),
2229
- superTitle: import_v433.z.union([import_v433.z.string(), TiptapDocument]).default("Super Title"),
2302
+ superTitle: import_v435.z.union([import_v435.z.string(), TiptapDocument]).default("Super Title"),
2230
2303
  /** This isn't used in the post-purchase offer widget */
2231
2304
  superTitleSize: TextSize.default("medium"),
2232
- title: import_v433.z.union([import_v433.z.string(), TiptapDocument]).nullable().default("Lorem ipsum dolor sit amet."),
2305
+ title: import_v435.z.union([import_v435.z.string(), TiptapDocument]).nullable().default("Lorem ipsum dolor sit amet."),
2233
2306
  /** This isn't used in the post-purchase offer widget */
2234
2307
  titleSize: TextSize.default("medium")
2235
2308
  }),
2236
- type: import_v433.z.literal(BlockType.text).default(BlockType.text)
2309
+ type: import_v435.z.literal(BlockType.text).default(BlockType.text)
2237
2310
  });
2238
- var TimerBlock = import_v433.z.object({
2239
- id: import_v433.z.string().optional().default(() => (0, import_uuid12.v4)()),
2240
- name: import_v433.z.string().optional(),
2241
- settings: import_v433.z.object({
2242
- durationMinutes: import_v433.z.number().min(0).default(10),
2243
- durationSeconds: import_v433.z.union([import_v433.z.number().min(0), import_v433.z.unknown().transform(() => 0)]).default(0),
2244
- endOffer: import_v433.z.boolean().default(true),
2245
- title: import_v433.z.union([import_v433.z.string(), TiptapDocument]).default("Hurry \u2014 your special offer ends in:")
2311
+ var TimerBlock = import_v435.z.object({
2312
+ id: import_v435.z.string().optional().default(() => (0, import_uuid13.v4)()),
2313
+ name: import_v435.z.string().optional(),
2314
+ settings: import_v435.z.object({
2315
+ durationMinutes: import_v435.z.number().min(0).default(10),
2316
+ durationSeconds: import_v435.z.union([import_v435.z.number().min(0), import_v435.z.unknown().transform(() => 0)]).default(0),
2317
+ endOffer: import_v435.z.boolean().default(true),
2318
+ title: import_v435.z.union([import_v435.z.string(), TiptapDocument]).default("Hurry \u2014 your special offer ends in:")
2246
2319
  }),
2247
- styles: import_v433.z.object({
2320
+ styles: import_v435.z.object({
2248
2321
  textAlignment: TextAlignment2.default("center"),
2249
- timerBackgroundColor: import_v433.z.enum(["info", "warning", "success", "critical"]).default("warning"),
2250
- timerEmphasized: import_v433.z.union([import_v433.z.boolean(), import_v433.z.unknown().transform(() => true)]).default(true),
2322
+ timerBackgroundColor: import_v435.z.enum(["info", "warning", "success", "critical"]).default("warning"),
2323
+ timerEmphasized: import_v435.z.union([import_v435.z.boolean(), import_v435.z.unknown().transform(() => true)]).default(true),
2251
2324
  timerSize: TextSize.default("medium"),
2252
- timerWidth: import_v433.z.number().min(10).max(100).optional().default(100),
2253
- titleEmphasized: import_v433.z.union([import_v433.z.boolean(), import_v433.z.unknown().transform(() => true)]).default(false),
2325
+ timerWidth: import_v435.z.number().min(10).max(100).optional().default(100),
2326
+ titleEmphasized: import_v435.z.union([import_v435.z.boolean(), import_v435.z.unknown().transform(() => true)]).default(false),
2254
2327
  titleSize: TextSize.default("medium")
2255
2328
  }),
2256
- type: import_v433.z.literal(BlockType.timer).default(BlockType.timer)
2329
+ type: import_v435.z.literal(BlockType.timer).default(BlockType.timer)
2257
2330
  });
2258
- var PostPurchaseBlock = import_v433.z.discriminatedUnion("type", [
2331
+ var PostPurchaseBlock = import_v435.z.discriminatedUnion("type", [
2259
2332
  CalloutBannerBlock,
2260
2333
  ImageBlock,
2261
2334
  ImageContentBlock,
@@ -2275,67 +2348,67 @@ var isTextBlock = (block) => (0, import_compat5.isEqual)((0, import_compat5.get)
2275
2348
  var isTimerBlock = (block) => (0, import_compat5.isEqual)((0, import_compat5.get)(block, "type"), BlockType.timer);
2276
2349
 
2277
2350
  // src/schema/widgets/post-purchase-offer/postPurchaseOffer.ts
2278
- var import_v436 = require("zod/v4");
2351
+ var import_v438 = require("zod/v4");
2279
2352
 
2280
2353
  // src/schema/widgets/post-purchase-offer/postPurchaseWidget.ts
2281
- var import_v435 = require("zod/v4");
2354
+ var import_v437 = require("zod/v4");
2282
2355
 
2283
2356
  // src/schema/widgets/post-purchase-offer/postPurchaseSettings.ts
2284
- var import_v434 = require("zod/v4");
2285
- var PostPurchaseSettings = import_v434.z.object({
2286
- advance: import_v434.z.object({ removePartialOrder: import_v434.z.boolean().default(true) }).optional().default(() => ({ removePartialOrder: true })),
2287
- blocks: import_v434.z.union([import_v434.z.array(PostPurchaseBlock), import_v434.z.unknown().transform(() => [])]).default(() => [
2357
+ var import_v436 = require("zod/v4");
2358
+ var PostPurchaseSettings = import_v436.z.object({
2359
+ advance: import_v436.z.object({ removePartialOrder: import_v436.z.boolean().default(true) }).optional().default(() => ({ removePartialOrder: true })),
2360
+ blocks: import_v436.z.union([import_v436.z.array(PostPurchaseBlock), import_v436.z.unknown().transform(() => [])]).default(() => [
2288
2361
  PostPurchaseBlock.parse({ settings: {}, styles: {}, type: BlockType.timer }),
2289
2362
  PostPurchaseBlock.parse({ settings: {}, styles: {}, type: BlockType.callout_banner }),
2290
2363
  PostPurchaseBlock.parse({ type: BlockType.product_information })
2291
2364
  ]),
2292
- columnLayout: import_v434.z.boolean().optional(),
2293
- discount: import_v434.z.object({
2365
+ columnLayout: import_v436.z.boolean().optional(),
2366
+ discount: import_v436.z.object({
2294
2367
  amount: strictNumber.default(30),
2295
- shouldShowSavingText: import_v434.z.boolean().optional().default(true),
2296
- type: import_v434.z.enum(["none", "fixed_amount", "percentage"]).default("none")
2368
+ shouldShowSavingText: import_v436.z.boolean().optional().default(true),
2369
+ type: import_v436.z.enum(["none", "fixed_amount", "percentage"]).default("none")
2297
2370
  }),
2298
- discountedFrom: import_v434.z.enum(["price", "compare_at_price"]).optional().default("price"),
2299
- endpoint: import_v434.z.string().optional(),
2300
- integrations: import_v434.z.object({
2301
- judgeme: import_v434.z.boolean().default(false),
2302
- junip: import_v434.z.boolean().optional().default(false),
2303
- klaviyo: import_v434.z.boolean().default(false),
2304
- loox: import_v434.z.boolean().default(false),
2305
- okendo: import_v434.z.boolean().default(false),
2306
- opinew: import_v434.z.boolean().optional().default(false),
2307
- reviewsio: import_v434.z.boolean().optional().default(false),
2308
- stamped: import_v434.z.boolean().default(false),
2309
- yotpo: import_v434.z.boolean().default(false)
2371
+ discountedFrom: import_v436.z.enum(["price", "compare_at_price"]).optional().default("price"),
2372
+ endpoint: import_v436.z.string().optional(),
2373
+ integrations: import_v436.z.object({
2374
+ judgeme: import_v436.z.boolean().default(false),
2375
+ junip: import_v436.z.boolean().optional().default(false),
2376
+ klaviyo: import_v436.z.boolean().default(false),
2377
+ loox: import_v436.z.boolean().default(false),
2378
+ okendo: import_v436.z.boolean().default(false),
2379
+ opinew: import_v436.z.boolean().optional().default(false),
2380
+ reviewsio: import_v436.z.boolean().optional().default(false),
2381
+ stamped: import_v436.z.boolean().default(false),
2382
+ yotpo: import_v436.z.boolean().default(false)
2310
2383
  }),
2311
- key: import_v434.z.string().optional(),
2312
- language: import_v434.z.object({
2313
- description: import_v434.z.union([import_v434.z.string(), import_v434.z.unknown().transform(() => "")]).default(""),
2314
- descriptionEnabled: import_v434.z.boolean().optional().default(false),
2315
- descriptionRte: import_v434.z.object({
2316
- content: import_v434.z.array(import_v434.z.unknown()),
2317
- type: import_v434.z.string()
2384
+ key: import_v436.z.string().optional(),
2385
+ language: import_v436.z.object({
2386
+ description: import_v436.z.union([import_v436.z.string(), import_v436.z.unknown().transform(() => "")]).default(""),
2387
+ descriptionEnabled: import_v436.z.boolean().optional().default(false),
2388
+ descriptionRte: import_v436.z.object({
2389
+ content: import_v436.z.array(import_v436.z.unknown()),
2390
+ type: import_v436.z.string()
2318
2391
  }).optional(),
2319
- descriptionSpacing: import_v434.z.enum(["none", "xtight", "tight", "default", "loose", "xloose"]).optional(),
2320
- displayCtaPrice: import_v434.z.boolean().default(true),
2321
- global: import_v434.z.object({
2322
- declineAll: import_v434.z.string().optional().default("Decline All"),
2323
- declineThisOffer: import_v434.z.string().default("Decline this offer"),
2324
- free: import_v434.z.string().optional().default("Free"),
2325
- notAvailable: import_v434.z.string().optional().default("Not available"),
2326
- payNow: import_v434.z.string().default("Pay Now"),
2327
- payNowUpgradeToSubscription: import_v434.z.string().optional().default("Upgrade to Subscription"),
2328
- quantity: import_v434.z.string().default("Quantity"),
2392
+ descriptionSpacing: import_v436.z.enum(["none", "xtight", "tight", "default", "loose", "xloose"]).optional(),
2393
+ displayCtaPrice: import_v436.z.boolean().default(true),
2394
+ global: import_v436.z.object({
2395
+ declineAll: import_v436.z.string().optional().default("Decline All"),
2396
+ declineThisOffer: import_v436.z.string().default("Decline this offer"),
2397
+ free: import_v436.z.string().optional().default("Free"),
2398
+ notAvailable: import_v436.z.string().optional().default("Not available"),
2399
+ payNow: import_v436.z.string().default("Pay Now"),
2400
+ payNowUpgradeToSubscription: import_v436.z.string().optional().default("Upgrade to Subscription"),
2401
+ quantity: import_v436.z.string().default("Quantity"),
2329
2402
  /** This isn't configurable in the admin-nextjs editor */
2330
- recurringShipping: import_v434.z.string().optional().default("Recurring shipping"),
2331
- recurringSubtotal: import_v434.z.string().default("Recurring subtotal"),
2332
- reviewsPlural: import_v434.z.string().optional().default("Reviews"),
2333
- reviewsSingular: import_v434.z.string().optional().default("Review"),
2334
- save: import_v434.z.union([import_v434.z.string(), import_v434.z.unknown().transform(() => "Save")]).optional().default("Save"),
2335
- shipping: import_v434.z.string().default("Shipping"),
2336
- subtotal: import_v434.z.string().default("Subtotal"),
2337
- taxes: import_v434.z.string().default("Taxes"),
2338
- total: import_v434.z.string().default("Total")
2403
+ recurringShipping: import_v436.z.string().optional().default("Recurring shipping"),
2404
+ recurringSubtotal: import_v436.z.string().default("Recurring subtotal"),
2405
+ reviewsPlural: import_v436.z.string().optional().default("Reviews"),
2406
+ reviewsSingular: import_v436.z.string().optional().default("Review"),
2407
+ save: import_v436.z.union([import_v436.z.string(), import_v436.z.unknown().transform(() => "Save")]).optional().default("Save"),
2408
+ shipping: import_v436.z.string().default("Shipping"),
2409
+ subtotal: import_v436.z.string().default("Subtotal"),
2410
+ taxes: import_v436.z.string().default("Taxes"),
2411
+ total: import_v436.z.string().default("Total")
2339
2412
  }).optional().default(() => ({
2340
2413
  declineAll: "Decline All",
2341
2414
  declineThisOffer: "Decline this offer",
@@ -2355,70 +2428,70 @@ var PostPurchaseSettings = import_v434.z.object({
2355
2428
  taxes: "Taxes",
2356
2429
  total: "Total"
2357
2430
  })),
2358
- globalTranslation: import_v434.z.string().optional().default("english")
2431
+ globalTranslation: import_v436.z.string().optional().default("english")
2359
2432
  }),
2360
- metafields: import_v434.z.boolean().default(false),
2433
+ metafields: import_v436.z.boolean().default(false),
2361
2434
  /** This isn't configurable in the admin-nextjs editor */
2362
- offer: import_v434.z.object({
2363
- count: import_v434.z.number().default(1)
2435
+ offer: import_v436.z.object({
2436
+ count: import_v436.z.number().default(1)
2364
2437
  }),
2365
- offersLayout: import_v434.z.object({
2366
- itemsPerPage: import_v434.z.number().optional(),
2367
- type: import_v434.z.enum(["list", "grid", "carousel"]).default("list")
2438
+ offersLayout: import_v436.z.object({
2439
+ itemsPerPage: import_v436.z.number().optional(),
2440
+ type: import_v436.z.enum(["list", "grid", "carousel"]).default("list")
2368
2441
  }).optional().default({
2369
2442
  type: "list"
2370
2443
  }),
2371
2444
  /** This isn't configurable in the admin-nextjs editor */
2372
- previewMode: import_v434.z.boolean().default(false),
2373
- productLimit: import_v434.z.number().optional().default(1),
2374
- productOptions: import_v434.z.object({
2445
+ previewMode: import_v436.z.boolean().default(false),
2446
+ productLimit: import_v436.z.number().optional().default(1),
2447
+ productOptions: import_v436.z.object({
2375
2448
  /** This isn't configurable in the admin-nextjs editor */
2376
- hideOutOfStockVariants: import_v434.z.boolean().optional().default(false),
2377
- matchVariant: import_v434.z.boolean().optional().default(true),
2378
- showDeclineAll: import_v434.z.enum(["above", "below", "both", "none"]).optional(),
2379
- showShipping: import_v434.z.boolean().optional().default(true),
2380
- showSubtotal: import_v434.z.boolean().optional().default(true),
2381
- showTaxes: import_v434.z.boolean().optional().default(true),
2382
- showTotal: import_v434.z.boolean().optional().default(true),
2383
- showVariantSelectors: import_v434.z.boolean().optional().default(true),
2384
- variantSelectorDisplayMode: import_v434.z.enum(["separate", "single"]).optional().default("separate")
2449
+ hideOutOfStockVariants: import_v436.z.boolean().optional().default(false),
2450
+ matchVariant: import_v436.z.boolean().optional().default(true),
2451
+ showDeclineAll: import_v436.z.enum(["above", "below", "both", "none"]).optional(),
2452
+ showShipping: import_v436.z.boolean().optional().default(true),
2453
+ showSubtotal: import_v436.z.boolean().optional().default(true),
2454
+ showTaxes: import_v436.z.boolean().optional().default(true),
2455
+ showTotal: import_v436.z.boolean().optional().default(true),
2456
+ showVariantSelectors: import_v436.z.boolean().optional().default(true),
2457
+ variantSelectorDisplayMode: import_v436.z.enum(["separate", "single"]).optional().default("separate")
2385
2458
  }),
2386
- productType: import_v434.z.union([import_v434.z.enum(["one-time", "subscription", "both"]), import_v434.z.literal("").transform(() => "one-time")]).default("one-time"),
2387
- productTypeSelector: import_v434.z.enum(["dropdown", "radio"]).optional().default("radio"),
2388
- quantityInputs: import_v434.z.object({
2389
- defaultQuantity: import_v434.z.union([import_v434.z.number(), import_v434.z.null().transform(() => 1)]).default(1),
2390
- enabled: import_v434.z.boolean().default(true),
2391
- maxValue: import_v434.z.union([import_v434.z.number(), import_v434.z.null().transform(() => 15)]).default(15),
2392
- minValue: import_v434.z.union([import_v434.z.number().min(0), import_v434.z.unknown().transform(() => 0)]).default(1)
2459
+ productType: import_v436.z.union([import_v436.z.enum(["one-time", "subscription", "both"]), import_v436.z.literal("").transform(() => "one-time")]).default("one-time"),
2460
+ productTypeSelector: import_v436.z.enum(["dropdown", "radio"]).optional().default("radio"),
2461
+ quantityInputs: import_v436.z.object({
2462
+ defaultQuantity: import_v436.z.union([import_v436.z.number(), import_v436.z.null().transform(() => 1)]).default(1),
2463
+ enabled: import_v436.z.boolean().default(true),
2464
+ maxValue: import_v436.z.union([import_v436.z.number(), import_v436.z.null().transform(() => 15)]).default(15),
2465
+ minValue: import_v436.z.union([import_v436.z.number().min(0), import_v436.z.unknown().transform(() => 0)]).default(1)
2393
2466
  }),
2394
- shipping: import_v434.z.object({
2467
+ shipping: import_v436.z.object({
2395
2468
  amount: strictNumber.default(10),
2396
2469
  /** This isn't configurable in the admin-nextjs editor */
2397
- enabled: import_v434.z.boolean().default(true),
2398
- title: import_v434.z.string().optional().default("Shipping Fees"),
2399
- type: import_v434.z.enum(["free", "fixed_amount"]).default("free")
2470
+ enabled: import_v436.z.boolean().default(true),
2471
+ title: import_v436.z.string().optional().default("Shipping Fees"),
2472
+ type: import_v436.z.enum(["free", "fixed_amount"]).default("free")
2400
2473
  }),
2401
- styles: import_v434.z.object({
2402
- starColor: import_v434.z.string().optional().default("#fadb14"),
2403
- starSize: import_v434.z.union([import_v434.z.enum(["small", "medium", "large"]), import_v434.z.unknown().transform(() => "large")]).optional().default("large"),
2404
- starStrokeColor: import_v434.z.string().optional().default("#fadb14"),
2405
- strokeWidth: import_v434.z.string().optional().default("1")
2474
+ styles: import_v436.z.object({
2475
+ starColor: import_v436.z.string().optional().default("#fadb14"),
2476
+ starSize: import_v436.z.union([import_v436.z.enum(["small", "medium", "large"]), import_v436.z.unknown().transform(() => "large")]).optional().default("large"),
2477
+ starStrokeColor: import_v436.z.string().optional().default("#fadb14"),
2478
+ strokeWidth: import_v436.z.string().optional().default("1")
2406
2479
  }).optional(),
2407
- subImages: import_v434.z.number().nullish().default(8),
2408
- subscription: import_v434.z.object({
2409
- discount: import_v434.z.object({
2480
+ subImages: import_v436.z.number().nullish().default(8),
2481
+ subscription: import_v436.z.object({
2482
+ discount: import_v436.z.object({
2410
2483
  amount: strictNumber.default(30),
2411
- shouldShowSavingText: import_v434.z.boolean().optional().default(true),
2412
- type: import_v434.z.enum(["none", "fixed_amount", "percentage"]).default("none")
2484
+ shouldShowSavingText: import_v436.z.boolean().optional().default(true),
2485
+ type: import_v436.z.enum(["none", "fixed_amount", "percentage"]).default("none")
2413
2486
  }),
2414
- shipping: import_v434.z.object({
2487
+ shipping: import_v436.z.object({
2415
2488
  amount: strictNumber.default(1),
2416
2489
  /** This isn't configurable in the admin-nextjs editor */
2417
- enabled: import_v434.z.boolean().default(true),
2490
+ enabled: import_v436.z.boolean().default(true),
2418
2491
  /** This isn't configurable in the admin-nextjs editor */
2419
2492
  recurringAmount: strictNumber.default(2),
2420
- shippingTitle: import_v434.z.string().default("Shipping Fees"),
2421
- type: import_v434.z.enum(["free", "fixed_amount"]).default("free")
2493
+ shippingTitle: import_v436.z.string().default("Shipping Fees"),
2494
+ type: import_v436.z.enum(["free", "fixed_amount"]).default("free")
2422
2495
  })
2423
2496
  }).optional().default({
2424
2497
  discount: {
@@ -2436,15 +2509,15 @@ var PostPurchaseSettings = import_v434.z.object({
2436
2509
  type: "free"
2437
2510
  }
2438
2511
  }),
2439
- subscriptionIsDefault: import_v434.z.boolean().optional(),
2512
+ subscriptionIsDefault: import_v436.z.boolean().optional(),
2440
2513
  /** This isn't configurable in the admin-nextjs editor */
2441
- template: import_v434.z.string().optional().default(""),
2442
- type: import_v434.z.literal("shopify_post_purchase_extension").default("shopify_post_purchase_extension"),
2443
- upgradeToSubscription: import_v434.z.object({
2444
- acceptButtonText: import_v434.z.string().optional().default("Upgrade"),
2445
- allow: import_v434.z.boolean().optional().default(false),
2446
- emailRefundNotice: import_v434.z.boolean().optional().default(false),
2447
- errorBannerText: import_v434.z.string().optional().default("This subscription cannot be added - limit one per order")
2514
+ template: import_v436.z.string().optional().default(""),
2515
+ type: import_v436.z.literal("shopify_post_purchase_extension").default("shopify_post_purchase_extension"),
2516
+ upgradeToSubscription: import_v436.z.object({
2517
+ acceptButtonText: import_v436.z.string().optional().default("Upgrade"),
2518
+ allow: import_v436.z.boolean().optional().default(false),
2519
+ emailRefundNotice: import_v436.z.boolean().optional().default(false),
2520
+ errorBannerText: import_v436.z.string().optional().default("This subscription cannot be added - limit one per order")
2448
2521
  }).optional().default(() => ({
2449
2522
  acceptButtonText: "Upgrade",
2450
2523
  allow: false,
@@ -2454,32 +2527,32 @@ var PostPurchaseSettings = import_v434.z.object({
2454
2527
  });
2455
2528
 
2456
2529
  // src/schema/widgets/post-purchase-offer/postPurchaseWidget.ts
2457
- var PostPurchaseWidgetLinkedFlow = import_v435.z.object({
2458
- id: import_v435.z.number(),
2459
- name: import_v435.z.string()
2530
+ var PostPurchaseWidgetLinkedFlow = import_v437.z.object({
2531
+ id: import_v437.z.number(),
2532
+ name: import_v437.z.string()
2460
2533
  });
2461
- var PostPurchaseWidget = import_v435.z.object({
2462
- classification: import_v435.z.literal("post_purchase_offer_page").default("post_purchase_offer_page"),
2463
- createdAtTime: import_v435.z.iso.datetime({ offset: true }).optional(),
2464
- customEndpointName: import_v435.z.string().nullish(),
2465
- id: import_v435.z.number().default(0),
2466
- lastViewed: import_v435.z.iso.datetime({ offset: true }).nullish(),
2467
- linkedCustomEndpointId: import_v435.z.number().nullish(),
2468
- linkedFlows: import_v435.z.array(PostPurchaseWidgetLinkedFlow).optional(),
2469
- name: import_v435.z.string().default(""),
2470
- owner: import_v435.z.number().nullish(),
2534
+ var PostPurchaseWidget = import_v437.z.object({
2535
+ classification: import_v437.z.literal("post_purchase_offer_page").default("post_purchase_offer_page"),
2536
+ createdAtTime: import_v437.z.iso.datetime({ offset: true }).optional(),
2537
+ customEndpointName: import_v437.z.string().nullish(),
2538
+ id: import_v437.z.number().default(0),
2539
+ lastViewed: import_v437.z.iso.datetime({ offset: true }).nullish(),
2540
+ linkedCustomEndpointId: import_v437.z.number().nullish(),
2541
+ linkedFlows: import_v437.z.array(PostPurchaseWidgetLinkedFlow).optional(),
2542
+ name: import_v437.z.string().default(""),
2543
+ owner: import_v437.z.number().nullish(),
2471
2544
  settings: PostPurchaseSettings
2472
2545
  });
2473
2546
 
2474
2547
  // src/schema/widgets/post-purchase-offer/postPurchaseOffer.ts
2475
- var PostPurchaseOffer = import_v436.z.discriminatedUnion("successful", [
2476
- import_v436.z.strictObject({
2477
- errors: import_v436.z.array(import_v436.z.object({ message: import_v436.z.string() })),
2478
- message: import_v436.z.string(),
2479
- successful: import_v436.z.literal(false)
2548
+ var PostPurchaseOffer = import_v438.z.discriminatedUnion("successful", [
2549
+ import_v438.z.strictObject({
2550
+ errors: import_v438.z.array(import_v438.z.object({ message: import_v438.z.string() })),
2551
+ message: import_v438.z.string(),
2552
+ successful: import_v438.z.literal(false)
2480
2553
  }),
2481
- import_v436.z.strictObject({
2482
- successful: import_v436.z.literal(true),
2554
+ import_v438.z.strictObject({
2555
+ successful: import_v438.z.literal(true),
2483
2556
  widget: PostPurchaseWidget
2484
2557
  })
2485
2558
  ]);