@useinsider/guido 2.1.0-beta.038f431 → 2.1.0-beta.04bd1f4

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 (136) hide show
  1. package/README.md +36 -0
  2. package/dist/@types/config/schemas.js +70 -65
  3. package/dist/components/Guido.vue.js +1 -1
  4. package/dist/components/Guido.vue2.js +69 -58
  5. package/dist/components/organisms/header/EditorActions.vue.js +10 -8
  6. package/dist/components/organisms/header/EditorActions.vue2.js +40 -31
  7. package/dist/components/organisms/header/HeaderWrapper.vue.js +9 -9
  8. package/dist/components/organisms/header/MigrationConfirmModal.vue.js +17 -0
  9. package/dist/components/organisms/header/MigrationConfirmModal.vue2.js +41 -0
  10. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.js +1 -1
  11. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue2.js +19 -19
  12. package/dist/composables/useActionsApi.js +15 -13
  13. package/dist/composables/useBlocksConfig.js +26 -16
  14. package/dist/composables/useHtmlValidator.js +114 -104
  15. package/dist/composables/useRecommendation.js +54 -21
  16. package/dist/composables/useStripo.js +25 -23
  17. package/dist/composables/useVersionHistoryApi.js +1 -1
  18. package/dist/config/compiler/recommendationCompilerRules.js +45 -39
  19. package/dist/config/compiler/utils/recommendationCompilerUtils.js +121 -0
  20. package/dist/config/i18n/en/index.js +11 -0
  21. package/dist/config/i18n/en/labels.json.js +12 -0
  22. package/dist/config/i18n/en/toasters.json.js +56 -0
  23. package/dist/config/i18n/en/tooltips.json.js +82 -0
  24. package/dist/config/i18n/index.js +7 -0
  25. package/dist/config/migrator/itemsBlockMigrator.js +141 -117
  26. package/dist/config/migrator/recommendationMigrator.js +42 -40
  27. package/dist/enums/defaults.js +8 -4
  28. package/dist/enums/extensions/recommendationBlock.js +1 -1
  29. package/dist/enums/recommendation.js +16 -15
  30. package/dist/extensions/Blocks/Items/block.js +46 -35
  31. package/dist/extensions/Blocks/Items/controls/button/link.js +19 -31
  32. package/dist/extensions/Blocks/Items/controls/cardComposition.js +124 -85
  33. package/dist/extensions/Blocks/Items/controls/image/link.js +19 -31
  34. package/dist/extensions/Blocks/Items/controls/name/trimming.js +28 -40
  35. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +35 -47
  36. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +49 -54
  37. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +42 -51
  38. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +23 -36
  39. package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +45 -57
  40. package/dist/extensions/Blocks/Items/controls/price/singlePrice.js +42 -60
  41. package/dist/extensions/Blocks/Items/controls/settingsControl.js +189 -196
  42. package/dist/extensions/Blocks/Items/enums/settingsEnums.js +0 -2
  43. package/dist/extensions/Blocks/Items/extension.js +8 -9
  44. package/dist/extensions/Blocks/Items/iconsRegistry.js +6 -5
  45. package/dist/extensions/Blocks/Items/items.css.js +48 -0
  46. package/dist/extensions/Blocks/Items/settingsPanel.js +10 -15
  47. package/dist/extensions/Blocks/Items/template.js +181 -175
  48. package/dist/extensions/Blocks/Items/utils/nodeConfigUtils.js +65 -65
  49. package/dist/extensions/Blocks/Recommendation/block.js +50 -27
  50. package/dist/extensions/Blocks/Recommendation/constants/defaultConfig.js +27 -26
  51. package/dist/extensions/Blocks/Recommendation/constants/layout.js +6 -4
  52. package/dist/extensions/Blocks/Recommendation/constants/selectors.js +12 -10
  53. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +103 -70
  54. package/dist/extensions/Blocks/Recommendation/controls/main/productLayout.js +87 -37
  55. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +138 -117
  56. package/dist/extensions/Blocks/Recommendation/controls/mobileLayout/cssRules.js +21 -0
  57. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +4 -3
  58. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +48 -0
  59. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +117 -107
  60. package/dist/extensions/Blocks/Recommendation/templates/grid/elementRenderer.js +25 -30
  61. package/dist/extensions/Blocks/Recommendation/templates/grid/template.js +27 -30
  62. package/dist/extensions/Blocks/Recommendation/templates/list/elementRenderer.js +20 -25
  63. package/dist/extensions/Blocks/Recommendation/templates/utils.js +43 -31
  64. package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +10 -10
  65. package/dist/extensions/Blocks/Unsubscribe/block.js +29 -29
  66. package/dist/extensions/Blocks/Unsubscribe/control.js +12 -9
  67. package/dist/extensions/Blocks/Unsubscribe/elements/preview.js +13 -11
  68. package/dist/extensions/Blocks/Unsubscribe/styles.css.js +31 -1
  69. package/dist/extensions/Blocks/common-control.js +101 -94
  70. package/dist/extensions/Blocks/common-icons.js +39 -0
  71. package/dist/extensions/ModulesTabIcons/extension.js +17 -0
  72. package/dist/guido.css +1 -1
  73. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +257 -187
  74. package/dist/services/recommendationApi.js +11 -9
  75. package/dist/services/stripoApi.js +20 -17
  76. package/dist/services/templateLibraryApi.js +16 -13
  77. package/dist/src/@types/config/schemas.d.ts +8 -0
  78. package/dist/src/components/Guido.vue.d.ts +1 -1
  79. package/dist/src/components/organisms/header/EditorActions.vue.d.ts +1 -1
  80. package/dist/src/components/organisms/header/HeaderWrapper.vue.d.ts +1 -1
  81. package/dist/src/components/organisms/header/MigrationConfirmModal.vue.d.ts +6 -0
  82. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -1
  83. package/dist/src/components/wrappers/WpModal.vue.d.ts +2 -2
  84. package/dist/src/composables/useConfig.d.ts +4 -0
  85. package/dist/src/composables/useRecommendation.d.ts +1 -0
  86. package/dist/src/config/compiler/utils/recommendationCompilerUtils.d.ts +17 -0
  87. package/dist/src/config/i18n/en/index.d.ts +1 -0
  88. package/dist/src/config/i18n/index.d.ts +16 -0
  89. package/dist/src/enums/defaults.d.ts +4 -0
  90. package/dist/src/extensions/Blocks/Items/block.d.ts +1 -1
  91. package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +0 -1
  92. package/dist/src/extensions/Blocks/Items/controls/cardComposition.d.ts +5 -5
  93. package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +0 -1
  94. package/dist/src/extensions/Blocks/Items/controls/name/trimming.d.ts +0 -1
  95. package/dist/src/extensions/Blocks/Items/controls/price/currencyLocation.d.ts +0 -1
  96. package/dist/src/extensions/Blocks/Items/controls/price/currencySymbol.d.ts +0 -1
  97. package/dist/src/extensions/Blocks/Items/controls/price/formattedPrice.d.ts +0 -1
  98. package/dist/src/extensions/Blocks/Items/controls/price/hideDiscount.d.ts +0 -1
  99. package/dist/src/extensions/Blocks/Items/controls/price/priceOrientation.d.ts +0 -1
  100. package/dist/src/extensions/Blocks/Items/controls/price/singlePrice.d.ts +0 -5
  101. package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +10 -12
  102. package/dist/src/extensions/Blocks/Items/utils/nodeConfigUtils.d.ts +2 -1
  103. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +1 -0
  104. package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +2 -2
  105. package/dist/src/extensions/Blocks/Recommendation/constants/layout.d.ts +6 -0
  106. package/dist/src/extensions/Blocks/Recommendation/constants/selectors.d.ts +4 -0
  107. package/dist/src/extensions/Blocks/Recommendation/controls/main/index.d.ts +12 -1
  108. package/dist/src/extensions/Blocks/Recommendation/controls/main/productLayout.d.ts +22 -4
  109. package/dist/src/extensions/Blocks/Recommendation/controls/main/utils.d.ts +9 -2
  110. package/dist/src/extensions/Blocks/Recommendation/controls/mobileLayout/cssRules.d.ts +29 -0
  111. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +7 -0
  112. package/dist/src/extensions/Blocks/Recommendation/templates/grid/template.d.ts +1 -1
  113. package/dist/src/extensions/Blocks/Recommendation/templates/index.d.ts +2 -0
  114. package/dist/src/extensions/Blocks/Recommendation/templates/utils.d.ts +12 -3
  115. package/dist/src/extensions/Blocks/Recommendation/types/nodeConfig.d.ts +6 -0
  116. package/dist/src/extensions/Blocks/Unsubscribe/control.d.ts +1 -0
  117. package/dist/src/extensions/Blocks/common-control.d.ts +9 -5
  118. package/dist/src/extensions/Blocks/common-icons.d.ts +1 -0
  119. package/dist/src/extensions/ModulesTabIcons/extension.d.ts +2 -0
  120. package/dist/src/stores/config.d.ts +36 -0
  121. package/dist/src/stores/template.d.ts +3 -0
  122. package/dist/static/styles/components/notification.css.js +19 -0
  123. package/dist/static/styles/components/tools.css.js +6 -2
  124. package/dist/static/styles/components/version-history.css.js +10 -2
  125. package/dist/static/styles/components/wide-panel.css.js +18 -2
  126. package/dist/static/styles/customEditorStyle.css.js +10 -9
  127. package/dist/static/styles/variables.css.js +2 -0
  128. package/dist/static/templates/empty/index.html.js +74 -0
  129. package/dist/static/templates/empty/style.css.js +779 -0
  130. package/dist/stores/template.js +9 -0
  131. package/dist/stores/unsubscribe.js +37 -34
  132. package/dist/utils/pairProductVariables.js +57 -56
  133. package/dist/utils/templatePreparation.js +15 -14
  134. package/package.json +1 -1
  135. package/dist/extensions/Blocks/Items/store/items-block.js +0 -79
  136. package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +0 -45
@@ -1,10 +1,12 @@
1
- var L = Object.defineProperty;
2
- var K = (o, t, r) => t in o ? L(o, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : o[t] = r;
3
- var R = (o, t, r) => K(o, typeof t != "symbol" ? t + "" : t, r);
4
- import { productPairs as B } from "../../extensions/Blocks/Items/enums/productEnums.js";
5
- import { ItemInCartOptions as E, DefaultConfigValues as g, SETTINGS_ENUMS as _ } from "../../extensions/Blocks/Items/enums/settingsEnums.js";
6
- import { getDefaultTemplate as U } from "../../extensions/Blocks/Items/template.js";
7
- const w = {
1
+ var B = Object.defineProperty;
2
+ var v = (r, t, o) => t in r ? B(r, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : r[t] = o;
3
+ var M = (r, t, o) => v(r, typeof t != "symbol" ? t + "" : t, o);
4
+ import { BLOCK_ID as U } from "../../extensions/Blocks/Items/block.js";
5
+ import { productPairs as K } from "../../extensions/Blocks/Items/enums/productEnums.js";
6
+ import { ItemInCartOptions as T, DefaultConfigValues as g, SETTINGS_ENUMS as s } from "../../extensions/Blocks/Items/enums/settingsEnums.js";
7
+ import { getDefaultTemplate as w } from "../../extensions/Blocks/Items/template.js";
8
+ import { useTemplateStore as F } from "../../stores/template.js";
9
+ const q = {
8
10
  img: {
9
11
  pairsKey: "imageSrc",
10
12
  defaultKey: "DEFAULT",
@@ -71,57 +73,58 @@ const w = {
71
73
  isArray: !1
72
74
  }
73
75
  };
74
- function F() {
76
+ function O() {
75
77
  return String(Date.now() + Math.floor(Math.random() * 1e3));
76
78
  }
77
- function q(o) {
78
- return o ? {
79
- CartItems: _.ITEMS_TYPE.CART_ITEMS,
80
- BrowsedItems: _.ITEMS_TYPE.BROWSED_ITEMS,
81
- PurchasedItems: _.ITEMS_TYPE.PURCHASED_ITEMS,
82
- CART_ITEMS: _.ITEMS_TYPE.CART_ITEMS,
83
- BROWSED_ITEMS: _.ITEMS_TYPE.BROWSED_ITEMS,
84
- PURCHASED_ITEMS: _.ITEMS_TYPE.PURCHASED_ITEMS
85
- }[o] || _.ITEMS_TYPE.CART_ITEMS : _.ITEMS_TYPE.CART_ITEMS;
79
+ function $(r) {
80
+ return r ? {
81
+ CartItems: s.ITEMS_TYPE.CART_ITEMS,
82
+ BrowsedItems: s.ITEMS_TYPE.BROWSED_ITEMS,
83
+ PurchasedItems: s.ITEMS_TYPE.PURCHASED_ITEMS,
84
+ CART_ITEMS: s.ITEMS_TYPE.CART_ITEMS,
85
+ BROWSED_ITEMS: s.ITEMS_TYPE.BROWSED_ITEMS,
86
+ PURCHASED_ITEMS: s.ITEMS_TYPE.PURCHASED_ITEMS
87
+ }[r] || s.ITEMS_TYPE.CART_ITEMS : s.ITEMS_TYPE.CART_ITEMS;
86
88
  }
87
- function M(o) {
88
- const t = (e, a) => e == null ? a : e === "1" || e === "true", r = (e, a) => e || a, c = o["data-type"] || o["data-source"], n = q(c);
89
- let i = o["data-cart_items_select_control_value"] || g.cartItemsSelectControlValue;
90
- if (i && !i.includes("{{") && /^\d+$/.test(i)) {
91
- const e = parseInt(i) - 1, a = E[n];
92
- a && a[e] && (i = a[e].value);
89
+ function R(r) {
90
+ var e;
91
+ const t = (i, _) => i == null ? _ : i === "1" || i === "true", o = (i, _) => i || _, c = r["data-type"] || r["data-source"], a = $(c), n = T[a];
92
+ let l = r["data-cart_items_select_control_value"] || ((e = n == null ? void 0 : n[0]) == null ? void 0 : e.value) || g.cartItemsSelectControlValue;
93
+ if (l && !l.includes("{{") && /^\d+$/.test(l)) {
94
+ const i = parseInt(l) - 1, _ = T[a];
95
+ _ && _[i] && (l = _[i].value);
93
96
  }
94
97
  return {
95
98
  initialized: !0,
96
- blockInstanceId: r(o["data-block-instance-id"], F()),
97
- source: n,
98
- type: n,
99
- itemsSelectValue: i,
100
- orientation: o["data-card_orientation_control_value"] || _.ORIENTATION.VERTICAL,
101
- nameTrimming: t(o["data-product_name_control_trim"], !0),
102
- priceHideDiscount: t(o["data-product_price_control_nodup"], !0),
103
- priceFormatted: t(o["data-product_price_control_formated"], !0),
104
- priceSinglePrice: t(o["data-product_price_control_single_price"], !1),
105
- priceCurrencySymbol: r(
106
- o["data-product_price_currency_symbol"],
99
+ blockInstanceId: o(r["data-block-instance-id"], O()),
100
+ source: a,
101
+ type: a,
102
+ itemsSelectValue: l,
103
+ orientation: r["data-card_orientation_control_value"] || s.ORIENTATION.VERTICAL,
104
+ nameTrimming: t(r["data-product_name_control_trim"], !0),
105
+ priceHideDiscount: t(r["data-product_price_control_nodup"], !0),
106
+ priceFormatted: t(r["data-product_price_control_formated"], !0),
107
+ priceSinglePrice: t(r["data-product_price_control_single_price"], !1),
108
+ priceCurrencySymbol: o(
109
+ r["data-product_price_control_currency_symbol"],
107
110
  g.productPriceCurrencySymbolControlValue
108
111
  ),
109
- priceCurrencyLocation: r(
110
- o["data-product_price_currency_location"],
112
+ priceCurrencyLocation: o(
113
+ r["data-product_price_currency_location"],
111
114
  g.productPriceCurrencyLocationControlValue
112
115
  ),
113
- priceOrientation: o["data-product_original_price_control_orientation"] || "horizontal",
114
- quantityControlEnabled: t(o["data-product_quantity_control_enabled"], !0),
115
- buttonLink: r(o["data-product_button_link"], g.productButtonLinkControlValue),
116
- imageLink: r(o["data-product_image_link"], g.productImageLinkControlValue),
117
- buttonLabel: r(o["data-product_button_control_label"], "Buy"),
118
- buttonFullWidth: t(o["data-product_button_control_atw"], !0),
119
- imageVisible: t(o["data-product_image_control_enabled"], !0),
120
- nameVisible: t(o["data-product_name_control_enabled"], !0),
121
- quantityVisible: t(o["data-product_quantity_control_enabled"], !0),
122
- priceVisible: t(o["data-product_price_control_enabled"], !0),
123
- originalPriceVisible: t(o["data-product_original_price_control_enabled"], !0),
124
- buttonVisible: t(o["data-product_button_control_enabled"], !0)
116
+ priceOrientation: r["data-product_original_price_control_orientation"] || "horizontal",
117
+ quantityControlEnabled: t(r["data-product_quantity_control_enabled"], !0),
118
+ buttonLink: o(r["data-product_button_link"], g.productButtonLinkControlValue),
119
+ imageLink: o(r["data-product_image_link"], g.productImageLinkControlValue),
120
+ buttonLabel: o(r["data-product_button_control_label"], "Buy"),
121
+ buttonFullWidth: t(r["data-product_button_control_atw"], !0),
122
+ imageVisible: t(r["data-product_image_control_enabled"], !0),
123
+ nameVisible: t(r["data-product_name_control_enabled"], !0),
124
+ quantityVisible: t(r["data-product_quantity_control_enabled"], !0),
125
+ priceVisible: t(r["data-product_price_control_enabled"], !0),
126
+ originalPriceVisible: t(r["data-product_original_price_control_enabled"], !0),
127
+ buttonVisible: t(r["data-product_button_control_enabled"], !0)
125
128
  };
126
129
  }
127
130
  const x = {
@@ -129,20 +132,36 @@ const x = {
129
132
  browsed_item: "BROWSED_ITEMS",
130
133
  purchased_item: "PURCHASED_ITEMS"
131
134
  };
132
- class N {
135
+ function V(r, t) {
136
+ const o = {
137
+ CART_ITEMS: `{{Abandoned Cart Item (${t}) Image}}`,
138
+ BROWSED_ITEMS: `{{Browsed Item (${t}) Image}}`,
139
+ PURCHASED_ITEMS: `{{Purchased Item (${t}) Image}}`
140
+ };
141
+ return o[r] || o.CART_ITEMS;
142
+ }
143
+ function N(r, t) {
144
+ const o = {
145
+ CART_ITEMS: `{{Abandoned Cart Item (${t}) Url}}`,
146
+ BROWSED_ITEMS: `{{Browsed Item (${t}) Url}}`,
147
+ PURCHASED_ITEMS: `{{Purchased Item (${t}) Url}}`
148
+ };
149
+ return o[r] || o.CART_ITEMS;
150
+ }
151
+ class z {
133
152
  constructor() {
134
- R(this, "parser");
153
+ M(this, "parser");
135
154
  this.parser = new DOMParser();
136
155
  }
137
156
  migrate(t) {
138
157
  try {
139
- let r = this.removeJinjaConditionals(t);
140
- r = this.replaceTemplateVariables(r);
141
- const c = this.parser.parseFromString(r, "text/html"), n = c.querySelectorAll(
158
+ let o = this.removeJinjaConditionals(t);
159
+ o = this.replaceTemplateVariables(o);
160
+ const c = this.parser.parseFromString(o, "text/html"), a = c.querySelectorAll(
142
161
  "td.esd-cart-items-block, td.esd-browsed-items-block, td.esd-purchased-items-block"
143
- );
144
- return n.length === 0 ? (console.warn("ItemsBlockMigrator: No blocks found with items block selectors"), r) : (n.forEach((i) => {
145
- const e = this.extractConfiguration(i), a = U({
162
+ ), n = F();
163
+ return n.migrations[U] = a.length, a.length === 0 ? (console.warn("ItemsBlockMigrator: No blocks found with items block selectors"), o) : (a.forEach((l) => {
164
+ const e = this.extractConfiguration(l), i = w({
146
165
  orientation: e.orientation,
147
166
  itemsType: e.itemsType,
148
167
  itemId: e.itemId,
@@ -156,20 +175,20 @@ class N {
156
175
  priceStyles: e.priceStyles,
157
176
  originalPriceStyles: e.originalPriceStyles,
158
177
  quantityStyles: e.quantityStyles,
159
- nodeConfig: M(e.configBlockAttributes)
160
- }), l = this.parser.parseFromString(
161
- `<table><tbody><tr>${a}</tr></tbody></table>`,
178
+ nodeConfig: R(e.configBlockAttributes)
179
+ }), d = this.parser.parseFromString(
180
+ `<table><tbody><tr>${i}</tr></tbody></table>`,
162
181
  "text/html"
163
182
  ).querySelector("td");
164
- if (l && i.parentNode) {
165
- const f = M(e.configBlockAttributes);
166
- l.setAttribute("esd-ext-config", JSON.stringify(f));
167
- const u = l.querySelector("esd-config-block");
168
- u && u.remove(), i.parentNode.replaceChild(l, i);
183
+ if (d && l.parentNode) {
184
+ const p = R(e.configBlockAttributes);
185
+ d.setAttribute("esd-ext-config", JSON.stringify(p));
186
+ const u = d.querySelector("esd-config-block");
187
+ u && u.remove(), l.parentNode.replaceChild(d, l);
169
188
  }
170
189
  }), c.documentElement.outerHTML);
171
- } catch (r) {
172
- return console.error("ItemsBlockMigrator failed:", r), t;
190
+ } catch (o) {
191
+ return console.error("ItemsBlockMigrator failed:", o), t;
173
192
  }
174
193
  }
175
194
  /**
@@ -180,23 +199,23 @@ class N {
180
199
  */
181
200
  extractConfiguration(t) {
182
201
  var C, D, P;
183
- const r = ((C = t.querySelector("[data-type]")) == null ? void 0 : C.getAttribute("data-type")) || "CART_ITEMS", c = ((D = t.querySelector("[data-number]")) == null ? void 0 : D.getAttribute("data-number")) || "1", n = parseInt(c) - 1, i = E[r], e = ((P = i == null ? void 0 : i[n]) == null ? void 0 : P.value) || i[0].value, a = t.querySelector('[product-attr="price"]'), d = (a == null ? void 0 : a.getAttribute("data-currency_symbol")) || "USD", f = ((a == null ? void 0 : a.getAttribute("data-curency")) || "before") === "after" ? "1" : "0", u = (a == null ? void 0 : a.getAttribute("data-formated")) !== "false", s = this.extractConfigBlockAttributes(t, r), b = s["data-card_orientation_control_value"];
184
- let S;
185
- b ? S = b === "horizontal" ? "horizontal" : "vertical" : S = t.querySelector('[colspan="2"]') !== null ? "vertical" : "horizontal";
186
- const p = t.querySelector('a[product-attr="name"]'), T = (p == null ? void 0 : p.getAttribute("style")) || void 0, y = t.querySelector('a[product-attr="button"]'), m = (y == null ? void 0 : y.getAttribute("style")) || void 0, h = (a == null ? void 0 : a.getAttribute("style")) || void 0, A = t.querySelector("p.original-price"), k = (A == null ? void 0 : A.getAttribute("style")) || void 0, I = t.querySelector('[product-attr="quantity"]'), v = (I == null ? void 0 : I.getAttribute("style")) || void 0;
202
+ const o = ((C = t.querySelector("[data-type]")) == null ? void 0 : C.getAttribute("data-type")) || "CART_ITEMS", c = ((D = t.querySelector("[data-number]")) == null ? void 0 : D.getAttribute("data-number")) || "1", a = parseInt(c) - 1, n = T[o], l = ((P = n == null ? void 0 : n[a]) == null ? void 0 : P.value) || n[0].value, e = t.querySelector('[product-attr="price"]'), i = (e == null ? void 0 : e.getAttribute("data-currency_symbol")) || "USD", d = ((e == null ? void 0 : e.getAttribute("data-curency")) || "before") === "after" ? "1" : "0", p = (e == null ? void 0 : e.getAttribute("data-formated")) !== "false", u = this.extractConfigBlockAttributes(t, o, c), S = u["data-card_orientation_control_value"];
203
+ let b;
204
+ S ? b = S === "horizontal" ? "horizontal" : "vertical" : b = t.querySelector('[colspan="2"]') !== null ? "vertical" : "horizontal";
205
+ const y = t.querySelector('a[product-attr="name"]'), I = (y == null ? void 0 : y.getAttribute("style")) || void 0, f = t.querySelector('a[product-attr="button"]'), m = (f == null ? void 0 : f.getAttribute("style")) || void 0, h = (e == null ? void 0 : e.getAttribute("style")) || void 0, A = t.querySelector("p.original-price"), k = (A == null ? void 0 : A.getAttribute("style")) || void 0, E = t.querySelector('[product-attr="quantity"]'), L = (E == null ? void 0 : E.getAttribute("style")) || void 0;
187
206
  return {
188
- orientation: S,
189
- itemsType: r,
190
- itemId: e,
191
- currencySymbol: d,
192
- currencyLocation: f,
193
- formattedPrice: u,
194
- configBlockAttributes: s,
195
- nameStyles: T,
207
+ orientation: b,
208
+ itemsType: o,
209
+ itemId: l,
210
+ currencySymbol: i,
211
+ currencyLocation: d,
212
+ formattedPrice: p,
213
+ configBlockAttributes: u,
214
+ nameStyles: I,
196
215
  buttonStyles: m,
197
216
  priceStyles: h,
198
217
  originalPriceStyles: k,
199
- quantityStyles: v
218
+ quantityStyles: L
200
219
  };
201
220
  }
202
221
  /**
@@ -204,28 +223,29 @@ class N {
204
223
  * Returns a key-value mapping of all configuration attributes
205
224
  * @param block - The block element containing the esd-config-block
206
225
  * @param itemsType - The type of items (CART_ITEMS, BROWSED_ITEMS, PURCHASED_ITEMS)
226
+ * @param itemNumber - The item number (1-based index)
207
227
  */
208
- extractConfigBlockAttributes(t, r) {
209
- const c = t.querySelector("esd-config-block"), n = {};
210
- if (!c)
228
+ extractConfigBlockAttributes(t, o, c) {
229
+ const a = t.querySelector("esd-config-block"), n = {};
230
+ if (!a)
211
231
  return this.getDefaultConfigBlockAttributes();
212
- if (Array.from(c.attributes).forEach((e) => {
232
+ if (Array.from(a.attributes).forEach((e) => {
213
233
  e.name.startsWith("data-") && (n[e.name] = e.value);
214
234
  }), n["data-cart_items_select_control_value"]) {
215
235
  const e = n["data-cart_items_select_control_value"];
216
236
  if (/^\d+$/.test(e)) {
217
- const a = parseInt(e) - 1, d = E[r];
218
- d && d[a] && (n["data-cart_items_select_control_value"] = d[a].value);
237
+ const i = parseInt(e) - 1, _ = T[o];
238
+ _ && _[i] && (n["data-cart_items_select_control_value"] = _[i].value);
219
239
  }
220
240
  }
221
241
  if (n["data-product_price_control_curency"]) {
222
242
  const e = n["data-product_price_control_curency"];
223
- let a = e;
224
- e === "before" ? a = "0" : e === "after" && (a = "1"), n["data-product_price_control_curency"] = a, n["data-product_price_currency_location"] = a;
243
+ let i = e;
244
+ e === "before" ? i = "0" : e === "after" && (i = "1"), n["data-product_price_control_curency"] = i, n["data-product_price_currency_location"] = i;
225
245
  }
226
- (!n["data-product_price_currency_symbol"] || n["data-product_price_currency_symbol"].trim() === "") && (n["data-product_price_currency_symbol"] = "USD");
227
- const i = { ...this.getDefaultConfigBlockAttributes(), ...n };
228
- return i["data-type"] = r, i["data-source"] = r, i;
246
+ (!n["data-product_price_control_currency_symbol"] || n["data-product_price_control_currency_symbol"].trim() === "") && (n["data-product_price_control_currency_symbol"] = "USD");
247
+ const l = { ...this.getDefaultConfigBlockAttributes(), ...n };
248
+ return l["data-type"] = o, l["data-source"] = o, l["data-product_image_link"] = V(o, c), l["data-product_button_link"] = N(o, c), l;
229
249
  }
230
250
  /**
231
251
  * Returns default esd-config-block attributes based on the old template structure
@@ -254,7 +274,7 @@ class N {
254
274
  "data-product_price_control_color": "#060606",
255
275
  "data-product_price_control_curency": "0",
256
276
  "data-product_price_currency_location": "0",
257
- "data-product_price_currency_symbol": "USD",
277
+ "data-product_price_control_currency_symbol": "USD",
258
278
  "data-product_price_control_formated": "1",
259
279
  "data-product_price_control_nodup": "1",
260
280
  "data-product_price_control_single_price": "false",
@@ -280,18 +300,22 @@ class N {
280
300
  * - Cart Items: ins_apr_total_product_kind, ins_apr_price_N, ins_apr_originalprice_N
281
301
  * - Browsed Items: browsed_item_total_product_kind, browsed_item_price_N, browsed_item_originalprice_N
282
302
  * - Purchased Items: purchased_item_total_product_kind, purchased_item_price_N, purchased_item_originalprice_N
303
+ *
304
+ * IMPORTANT: Preserves the esd-custom-display-conditions attribute on <body> which
305
+ * contains display condition Jinja scripts that should NOT be removed.
283
306
  */
284
307
  removeJinjaConditionals(t) {
285
- let r = t.replace(
308
+ const o = "__ESD_DISPLAY_CONDITIONS_PLACEHOLDER__", c = t.match(/esd-custom-display-conditions="[^"]*"/);
309
+ let a = c ? t.replace(c[0], o) : t;
310
+ return a = a.replace(
286
311
  /\{%\s*if\s+(ins_apr|browsed_item|purchased_item)_total_product_kind\s*(&gt;|>)\s*\d+\s*%\}/g,
287
312
  ""
288
- );
289
- return r = r.replace(
313
+ ), a = a.replace(
290
314
  /\{%\s*if\s+(ins_apr|browsed_item|purchased_item)_price_\d+\s*(!&#61;|!=)\s*\1_originalprice_\d+\s*%\}/g,
291
315
  ""
292
- ), r = r.replace(/\{%\s*endif\s*%\}/g, ""), r = r.replace(/\n\s*\n\s*\n/g, `
316
+ ), a = a.replace(/\{%\s*endif\s*%\}/g, ""), c && (a = a.replace(o, c[0])), a = a.replace(/\n\s*\n\s*\n/g, `
293
317
 
294
- `), r;
318
+ `), a;
295
319
  }
296
320
  /**
297
321
  * Replaces template variables with default values from productPairs
@@ -303,32 +327,32 @@ class N {
303
327
  * - {{purchased_item_formattedprice_5}} → '1,490.49' (PURCHASED_ITEMS)
304
328
  */
305
329
  replaceTemplateVariables(t) {
306
- const { PAIRS_FOR_EXTENSION: r } = B;
307
- return t.replace(/{{([^}]+)}}/g, (c, n) => {
308
- const i = n.match(/^(ins_apr|browsed_item|purchased_item)_([a-z_]+)_(\d+)$/);
309
- if (!i)
330
+ const { PAIRS_FOR_EXTENSION: o } = K;
331
+ return t.replace(/{{([^}]+)}}/g, (c, a) => {
332
+ const n = a.match(/^(ins_apr|browsed_item|purchased_item)_([a-z_]+)_(\d+)$/);
333
+ if (!n)
310
334
  return c;
311
- const [, e, a, d] = i, l = x[e];
312
- if (!l)
313
- return console.warn(`Unknown variable prefix: ${e}`), c;
314
- const f = w[a];
315
- if (!f)
316
- return console.warn(`Unknown variable suffix mapping for: ${a}`), c;
317
- const { pairsKey: u, defaultKey: s, isArray: b } = f, p = r[u][l];
318
- if (!p)
319
- return console.warn(`No data found for: ${u}.${l}`), c;
320
- if (b) {
321
- const y = parseInt(d) - 1, m = p[s];
322
- return Array.isArray(m) && m[y] ? m[y] : (console.warn(`Array value not found: ${u}.${l}.${s}[${y}]`), c);
335
+ const [, l, e, i] = n, _ = x[l];
336
+ if (!_)
337
+ return console.warn(`Unknown variable prefix: ${l}`), c;
338
+ const d = q[e];
339
+ if (!d)
340
+ return console.warn(`Unknown variable suffix mapping for: ${e}`), c;
341
+ const { pairsKey: p, defaultKey: u, isArray: S } = d, y = o[p][_];
342
+ if (!y)
343
+ return console.warn(`No data found for: ${p}.${_}`), c;
344
+ if (S) {
345
+ const f = parseInt(i) - 1, m = y[u];
346
+ return Array.isArray(m) && m[f] ? m[f] : (console.warn(`Array value not found: ${p}.${_}.${u}[${f}]`), c);
323
347
  }
324
- const T = p[s];
325
- return T !== void 0 ? String(T) : (console.warn(`Default value not found: ${u}.${l}.${s}`), c);
348
+ const I = y[u];
349
+ return I !== void 0 ? String(I) : (console.warn(`Default value not found: ${p}.${_}.${u}`), c);
326
350
  });
327
351
  }
328
352
  }
329
- function Y(o) {
330
- return new N().migrate(o);
353
+ function Q(r) {
354
+ return new z().migrate(r);
331
355
  }
332
356
  export {
333
- Y as migrateItemsBlock
357
+ Q as migrateItemsBlock
334
358
  };
@@ -1,24 +1,26 @@
1
1
  var h = Object.defineProperty;
2
- var T = (A, e, t) => e in A ? h(A, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : A[e] = t;
3
- var m = (A, e, t) => T(A, typeof e != "symbol" ? e + "" : e, t);
4
- import P, { prepareProductRows as S } from "../../extensions/Blocks/Recommendation/templates/grid/migration.js";
5
- import { getDefaultProducts as q } from "../../extensions/Blocks/Recommendation/templates/utils.js";
6
- class w {
2
+ var T = (d, e, t) => e in d ? h(d, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : d[e] = t;
3
+ var A = (d, e, t) => T(d, typeof e != "symbol" ? e + "" : e, t);
4
+ import { BLOCK_ID as S } from "../../extensions/Blocks/Recommendation/block.js";
5
+ import P, { prepareProductRows as q } from "../../extensions/Blocks/Recommendation/templates/grid/migration.js";
6
+ import { useTemplateStore as w } from "../../stores/template.js";
7
+ import { getDefaultProducts as B } from "../../extensions/Blocks/Recommendation/templates/utils.js";
8
+ class $ {
7
9
  constructor() {
8
- m(this, "parser");
10
+ A(this, "parser");
9
11
  this.parser = new DOMParser();
10
12
  }
11
13
  migrate(e) {
12
14
  try {
13
15
  const t = this.parser.parseFromString(e, "text/html"), s = t.querySelectorAll(
14
16
  'td.ins-recommendation-v3-block-1, td.product-block[esd-handler-name*="EmailRecommendationV3"]'
15
- );
16
- return s.length === 0 ? e : (s.forEach((o) => {
17
- const l = o.getAttribute("id"), r = this.extractBgColor(o), i = this.extractTitle(o), u = this.extractProductRows(o), c = P.replace("{-{-TITLE-}-}", i).replace("{-{-PRODUCT_ROWS-}-}", u), a = this.parser.parseFromString(
18
- `<table id="tempDoc"><tbody><tr>${c}</tr></tbody></table>`,
17
+ ), o = w();
18
+ return o.migrations[S] = s.length, s.length === 0 ? e : (s.forEach((n) => {
19
+ const r = n.getAttribute("id"), i = this.extractBgColor(n), u = this.extractTitle(n), c = this.extractProductRows(n), l = P.replace("{-{-TITLE-}-}", u).replace("{-{-PRODUCT_ROWS-}-}", c), a = this.parser.parseFromString(
20
+ `<table id="tempDoc"><tbody><tr>${l}</tr></tbody></table>`,
19
21
  "text/html"
20
22
  ).querySelector(".ins-recommendation-v3-block-v2");
21
- a && o.parentNode && (l && a.setAttribute("id", l), r && a.setAttribute("bgcolor", r), o.parentNode.replaceChild(a, o));
23
+ a && n.parentNode && (r && a.setAttribute("id", r), i && a.setAttribute("bgcolor", i), n.parentNode.replaceChild(a, n));
22
24
  }), t.documentElement.outerHTML);
23
25
  } catch (t) {
24
26
  return console.error("RecommendationMigrator failed:", t), e;
@@ -64,7 +66,7 @@ class w {
64
66
  * @returns HTML string for the title block
65
67
  */
66
68
  extractTitle(e) {
67
- var a, g;
69
+ var g, a;
68
70
  const t = e.querySelector(".ext-recommendation-title");
69
71
  if (!t)
70
72
  return this.buildTitleBlock({
@@ -76,7 +78,7 @@ class w {
76
78
  });
77
79
  const s = t.querySelector("p");
78
80
  if (!s) {
79
- const p = ((a = t.textContent) == null ? void 0 : a.trim()) || "You May Also Like!", b = t.getAttribute("align") || "center";
81
+ const p = ((g = t.textContent) == null ? void 0 : g.trim()) || "You May Also Like!", b = t.getAttribute("align") || "center";
80
82
  return this.buildTitleBlock({
81
83
  text: p,
82
84
  isBold: !0,
@@ -85,13 +87,13 @@ class w {
85
87
  styles: "font-size: 28px; color: #333333;"
86
88
  });
87
89
  }
88
- const o = ((g = s.textContent) == null ? void 0 : g.trim()) || "You May Also Like!", l = t.getAttribute("align") || s.getAttribute("align") || "center", r = s.getAttribute("style") || "", i = /font-weight\s*:\s*bold/i.test(r) || !!s.querySelector("b, strong"), u = /font-style\s*:\s*italic/i.test(r) || !!s.querySelector("i, em"), c = this.removeStyleProperties(r, ["font-weight", "font-style"]), n = this.convertInlineToBlock(c);
90
+ const o = ((a = s.textContent) == null ? void 0 : a.trim()) || "You May Also Like!", n = t.getAttribute("align") || s.getAttribute("align") || "center", r = s.getAttribute("style") || "", i = /font-weight\s*:\s*bold/i.test(r) || !!s.querySelector("b, strong"), u = /font-style\s*:\s*italic/i.test(r) || !!s.querySelector("i, em"), c = this.removeStyleProperties(r, ["font-weight", "font-style"]), l = this.convertInlineToBlock(c);
89
91
  return this.buildTitleBlock({
90
92
  text: o,
91
93
  isBold: i,
92
94
  isItalic: u,
93
- align: l,
94
- styles: n
95
+ align: n,
96
+ styles: l
95
97
  });
96
98
  }
97
99
  /**
@@ -103,8 +105,8 @@ class w {
103
105
  const t = this.extractProductConfig(e);
104
106
  if (!t)
105
107
  return console.warn("[RecommendationMigrator] No product config found, using defaults"), this.generateProductRows(6, 3, {});
106
- const { totalCount: s, productsPerRow: o } = t, l = this.extractProductStyles(e);
107
- return this.generateProductRows(s, o, l);
108
+ const { totalCount: s, productsPerRow: o } = t, n = this.extractProductStyles(e);
109
+ return this.generateProductRows(s, o, n);
108
110
  }
109
111
  /**
110
112
  * Extracts Stripo padding/margin utility classes from a class string
@@ -152,12 +154,12 @@ class w {
152
154
  * @returns HTML string for product rows with applied styles
153
155
  */
154
156
  generateProductRows(e, t, s) {
155
- const o = q(), l = [];
157
+ const o = B(), n = [];
156
158
  for (let i = 0; i < e; i++) {
157
159
  const u = o[i % o.length];
158
- l.push({ ...u });
160
+ n.push({ ...u });
159
161
  }
160
- let r = S(l, t);
162
+ let r = q(n, t);
161
163
  return r = this.applyExtractedStyles(r, s), r;
162
164
  }
163
165
  /**
@@ -171,30 +173,30 @@ class w {
171
173
  return console.warn("[RecommendationMigrator] No product card found, using default styles"), t;
172
174
  const o = this.extractCardBgColor(s);
173
175
  o && (t.cardBgColor = o);
174
- const l = s.querySelector(".ext-product-image");
175
- if (l) {
176
- const n = l.querySelector("img"), a = n == null ? void 0 : n.getAttribute("width"), g = l.getAttribute("style") || "", p = l.getAttribute("align") || "center", b = l.getAttribute("class") || "", d = this.extractStripoClasses(b);
177
- t.imageWidth = a || "120", t.imageAlign = p, t.imageTdStyle = g, t.imageClasses = d;
176
+ const n = s.querySelector(".ext-product-image");
177
+ if (n) {
178
+ const l = n.querySelector("img"), g = l == null ? void 0 : l.getAttribute("width"), a = n.getAttribute("style") || "", p = n.getAttribute("align") || "center", b = n.getAttribute("class") || "", m = this.extractStripoClasses(b);
179
+ t.imageWidth = g || "120", t.imageAlign = p, t.imageTdStyle = a, t.imageClasses = m;
178
180
  }
179
181
  const r = s.querySelector(".ext-product-name");
180
182
  if (r) {
181
- const n = r.querySelector("p"), a = (n == null ? void 0 : n.getAttribute("style")) || "", g = r.getAttribute("align") || "center", p = r.getAttribute("style") || "", b = r.getAttribute("class") || "", d = this.extractStripoClasses(b);
182
- t.nameStyle = a, t.nameAlign = g, t.nameTdStyle = p, t.nameClasses = d;
183
+ const l = r.querySelector("p"), g = (l == null ? void 0 : l.getAttribute("style")) || "", a = r.getAttribute("align") || "center", p = r.getAttribute("style") || "", b = r.getAttribute("class") || "", m = this.extractStripoClasses(b);
184
+ t.nameStyle = g, t.nameAlign = a, t.nameTdStyle = p, t.nameClasses = m;
183
185
  }
184
186
  const i = s.querySelector(".ext-product-price");
185
187
  if (i) {
186
- const n = i.querySelector("p"), a = (n == null ? void 0 : n.getAttribute("style")) || "", g = i.getAttribute("align") || "center", p = i.getAttribute("style") || "", b = i.getAttribute("class") || "", d = this.extractStripoClasses(b);
187
- t.priceStyle = a, t.priceAlign = g, t.priceTdStyle = p, t.priceClasses = d;
188
+ const l = i.querySelector("p"), g = (l == null ? void 0 : l.getAttribute("style")) || "", a = i.getAttribute("align") || "center", p = i.getAttribute("style") || "", b = i.getAttribute("class") || "", m = this.extractStripoClasses(b);
189
+ t.priceStyle = g, t.priceAlign = a, t.priceTdStyle = p, t.priceClasses = m;
188
190
  }
189
191
  const u = s.querySelector(".ext-product-original-price");
190
192
  if (u) {
191
- const n = u.querySelector("p"), a = (n == null ? void 0 : n.getAttribute("style")) || "", g = u.getAttribute("align") || "center", p = u.getAttribute("style") || "", b = u.getAttribute("class") || "", d = this.extractStripoClasses(b);
192
- t.oldPriceStyle = a, t.oldPriceAlign = g, t.oldPriceTdStyle = p, t.oldPriceClasses = d;
193
+ const l = u.querySelector("p"), g = (l == null ? void 0 : l.getAttribute("style")) || "", a = u.getAttribute("align") || "center", p = u.getAttribute("style") || "", b = u.getAttribute("class") || "", m = this.extractStripoClasses(b);
194
+ t.oldPriceStyle = g, t.oldPriceAlign = a, t.oldPriceTdStyle = p, t.oldPriceClasses = m;
193
195
  }
194
196
  const c = s.querySelector(".ext-product-button");
195
197
  if (c) {
196
- const n = c.querySelector(".es-button-border"), a = c.querySelector("a.es-button"), g = (n == null ? void 0 : n.getAttribute("style")) || "", p = (a == null ? void 0 : a.getAttribute("style")) || "", b = c.getAttribute("align") || "center", d = c.getAttribute("style") || "", f = c.getAttribute("class") || "", C = this.extractStripoClasses(f), y = ((c == null ? void 0 : c.textContent) || "").trim();
197
- t.buttonBorderStyle = g, t.buttonLinkStyle = p, t.buttonAlign = b, t.buttonTdStyle = d, t.buttonClasses = C, t.buttonText = y;
198
+ const l = c.querySelector(".es-button-border"), g = c.querySelector("a.es-button"), a = (l == null ? void 0 : l.getAttribute("style")) || "", p = (g == null ? void 0 : g.getAttribute("style")) || "", b = c.getAttribute("align") || "center", m = c.getAttribute("style") || "", f = c.getAttribute("class") || "", C = this.extractStripoClasses(f), y = ((c == null ? void 0 : c.textContent) || "").trim();
199
+ t.buttonBorderStyle = a, t.buttonLinkStyle = p, t.buttonAlign = b, t.buttonTdStyle = m, t.buttonClasses = C, t.buttonText = y;
198
200
  }
199
201
  return t;
200
202
  }
@@ -240,8 +242,8 @@ class w {
240
242
  i && t.oldPriceStyle && i.setAttribute("style", t.oldPriceStyle);
241
243
  }), (t.buttonBorderStyle || t.buttonLinkStyle || t.buttonAlign || t.buttonTdStyle || t.buttonClasses) && s.querySelectorAll(".product-button").forEach((r) => {
242
244
  if (t.buttonAlign && r.setAttribute("align", t.buttonAlign), t.buttonTdStyle && r.setAttribute("style", t.buttonTdStyle), t.buttonClasses) {
243
- const n = `${r.getAttribute("class") || ""} ${t.buttonClasses}`.trim();
244
- r.setAttribute("class", n);
245
+ const l = `${r.getAttribute("class") || ""} ${t.buttonClasses}`.trim();
246
+ r.setAttribute("class", l);
245
247
  }
246
248
  const i = r.querySelector(".es-button-border");
247
249
  i && t.buttonBorderStyle && i.setAttribute("style", t.buttonBorderStyle);
@@ -270,8 +272,8 @@ class w {
270
272
  * Removes specified style properties from a style string
271
273
  */
272
274
  removeStyleProperties(e, t) {
273
- return e ? t.reduce((o, l) => {
274
- const r = new RegExp(`${l}\\s*:\\s*[^;]*;?`, "gi");
275
+ return e ? t.reduce((o, n) => {
276
+ const r = new RegExp(`${n}\\s*:\\s*[^;]*;?`, "gi");
275
277
  return o.replace(r, "");
276
278
  }, e).replace(/;\s*;/g, ";").replace(/^;|;$/g, "").trim() : "";
277
279
  }
@@ -285,9 +287,9 @@ class w {
285
287
  return /display\s*:/i.test(t) || (t = t ? `${t}; display: block` : "display: block"), t.replace(/;\s*;/g, ";").replace(/^;|;$/g, "").replace(/"/g, "'").trim();
286
288
  }
287
289
  }
288
- function k(A) {
289
- return new w().migrate(A);
290
+ function v(d) {
291
+ return new $().migrate(d);
290
292
  }
291
293
  export {
292
- k as migrateRecommendation
294
+ v as migrateRecommendation
293
295
  };
@@ -1,8 +1,12 @@
1
- const t = {
1
+ const e = {
2
2
  transactional: 2
3
- }, o = 2, T = 13;
3
+ }, o = 2, t = 13, s = {
4
+ SAVED_MODULES: "savedModules",
5
+ DEFAULT_MODULES: "defaultModules"
6
+ };
4
7
  export {
5
8
  o as EditorType,
6
- T as MAX_DEFAULT_TEMPLATE_ID,
7
- t as TemplateTypes
9
+ t as MAX_DEFAULT_TEMPLATE_ID,
10
+ s as ModuleFolderDefaults,
11
+ e as TemplateTypes
8
12
  };
@@ -1,5 +1,5 @@
1
1
  const s = {
2
- RECOMMENDATION_API_URL: "http://recommendationv2.api.useinsider.com"
2
+ RECOMMENDATION_API_URL: "https://recommendationv2.api.useinsider.com"
3
3
  }, i = [
4
4
  { id: 11, key: "similarViewed", name: "Viewed Together", path: "viewed-together" },
5
5
  { id: 12, key: "similarBought", name: "Purchased Together", path: "purchased-together" },