@useinsider/guido 3.2.0-beta.570fb6d → 3.2.0-beta.5cea610

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 (265) hide show
  1. package/dist/@types/config/schemas.js +1 -1
  2. package/dist/@types/config/validator.js +34 -27
  3. package/dist/components/Guido.vue.js +1 -1
  4. package/dist/components/Guido.vue2.js +81 -76
  5. package/dist/components/organisms/base/Toaster.vue2.js +11 -10
  6. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue2.js +12 -12
  7. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue2.js +6 -6
  8. package/dist/components/organisms/email-preview/mobile-preview/InboxView.vue2.js +15 -9
  9. package/dist/components/organisms/extensions/recommendation/FilterItem.vue2.js +40 -31
  10. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue2.js +20 -19
  11. package/dist/components/organisms/extensions/recommendation/Filters.vue2.js +14 -11
  12. package/dist/components/organisms/header/EditorActions.vue.js +12 -11
  13. package/dist/components/organisms/header/EditorActions.vue2.js +22 -18
  14. package/dist/components/organisms/header/HeaderWrapper.vue2.js +15 -12
  15. package/dist/components/organisms/header/LeftSlot.vue2.js +19 -16
  16. package/dist/components/organisms/header/MiddleSlot.vue2.js +11 -14
  17. package/dist/components/organisms/header/RightSlot.vue2.js +17 -14
  18. package/dist/components/organisms/onboarding/AMPOnboarding.vue.js +12 -11
  19. package/dist/components/organisms/onboarding/AMPOnboarding.vue2.js +51 -29
  20. package/dist/components/organisms/onboarding/GenericOnboarding.vue.js +13 -12
  21. package/dist/components/organisms/onboarding/GenericOnboarding.vue2.js +44 -40
  22. package/dist/components/organisms/onboarding/ItemsOnboarding.vue.js +13 -12
  23. package/dist/components/organisms/onboarding/ItemsOnboarding.vue2.js +50 -47
  24. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +21 -18
  25. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +31 -27
  26. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue.js +13 -12
  27. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue2.js +35 -44
  28. package/dist/components/organisms/onboarding/VersionHistoryOnboarding.vue.js +12 -11
  29. package/dist/components/organisms/onboarding/VersionHistoryOnboarding.vue2.js +23 -20
  30. package/dist/components/organisms/save-as-template/SaveAsTemplateDrawer.vue2.js +9 -8
  31. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.js +10 -9
  32. package/dist/composables/useActionsApi.js +38 -37
  33. package/dist/composables/useBlocksConfig.js +26 -26
  34. package/dist/composables/useFullStoryBridge.js +9 -8
  35. package/dist/composables/useHtmlCompiler.js +26 -34
  36. package/dist/composables/useHtmlValidator.js +109 -101
  37. package/dist/composables/useHttp.js +30 -30
  38. package/dist/composables/usePartner.js +1 -1
  39. package/dist/composables/useRecommendation.js +15 -14
  40. package/dist/composables/useRibbonOffset.js +21 -0
  41. package/dist/composables/useSave.js +22 -21
  42. package/dist/composables/useStripo.js +50 -53
  43. package/dist/composables/useSyncModuleExtractor.js +29 -31
  44. package/dist/composables/useTimerClone.js +25 -24
  45. package/dist/composables/useTranslations.js +16 -23
  46. package/dist/composables/useValidation.js +8 -7
  47. package/dist/composables/validators/useLiquidValidator.js +13 -13
  48. package/dist/config/compiler/unsubscribeCompilerRules.js +19 -17
  49. package/dist/config/compiler/utils/recommendationCompilerUtils.js +11 -10
  50. package/dist/config/migrator/checkboxMigrator.js +21 -20
  51. package/dist/config/migrator/couponBlockMigrator.js +19 -18
  52. package/dist/config/migrator/itemsBlockMigrator.js +105 -93
  53. package/dist/config/migrator/radioButtonMigrator.js +13 -12
  54. package/dist/config/migrator/recommendationMigrator.js +109 -106
  55. package/dist/config/migrator/unsubscribeMigrator.js +11 -10
  56. package/dist/enums/onboarding.js +7 -2
  57. package/dist/enums/unsubscribe.js +19 -18
  58. package/dist/extensions/Blocks/Items/block.js +9 -9
  59. package/dist/extensions/Blocks/Items/controls/button/link.js +14 -14
  60. package/dist/extensions/Blocks/Items/controls/cardComposition.js +97 -89
  61. package/dist/extensions/Blocks/Items/controls/image/link.js +14 -14
  62. package/dist/extensions/Blocks/Items/controls/name/trimming.js +24 -23
  63. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +14 -13
  64. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +47 -44
  65. package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +38 -38
  66. package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +11 -11
  67. package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +40 -38
  68. package/dist/extensions/Blocks/Items/controls/price/singlePrice.js +35 -35
  69. package/dist/extensions/Blocks/Items/controls/settingsControl.js +162 -155
  70. package/dist/extensions/Blocks/Items/enums/productEnums.js +14 -9
  71. package/dist/extensions/Blocks/Items/template.js +210 -210
  72. package/dist/extensions/Blocks/Recommendation/controls/button/index.js +36 -36
  73. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +133 -128
  74. package/dist/extensions/Blocks/Recommendation/controls/customAttribute/index.js +9 -9
  75. package/dist/extensions/Blocks/Recommendation/controls/customAttribute/textTrim.js +10 -10
  76. package/dist/extensions/Blocks/Recommendation/controls/image/index.js +9 -9
  77. package/dist/extensions/Blocks/Recommendation/controls/main/algorithm.js +18 -17
  78. package/dist/extensions/Blocks/Recommendation/controls/main/filters.js +6 -4
  79. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +90 -82
  80. package/dist/extensions/Blocks/Recommendation/controls/main/layoutOrientation.js +18 -18
  81. package/dist/extensions/Blocks/Recommendation/controls/main/productCount.js +4 -4
  82. package/dist/extensions/Blocks/Recommendation/controls/main/productLayout.js +36 -35
  83. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +135 -134
  84. package/dist/extensions/Blocks/Recommendation/controls/name/index.js +24 -24
  85. package/dist/extensions/Blocks/Recommendation/controls/name/textTrim.js +10 -10
  86. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/index.js +24 -24
  87. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/index.js +24 -24
  88. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.js +4 -4
  89. package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.js +4 -4
  90. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/index.js +24 -24
  91. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textAfter.js +4 -4
  92. package/dist/extensions/Blocks/Recommendation/controls/omnibusPrice/textBefore.js +4 -4
  93. package/dist/extensions/Blocks/Recommendation/controls/price/index.js +24 -24
  94. package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +32 -32
  95. package/dist/extensions/Blocks/Recommendation/controls/syncInfoMessage.js +20 -18
  96. package/dist/extensions/Blocks/Recommendation/extension.js +32 -31
  97. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +16 -8
  98. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +56 -55
  99. package/dist/extensions/Blocks/Recommendation/templates/grid/elementRenderer.js +23 -22
  100. package/dist/extensions/Blocks/Recommendation/templates/grid/migration.js +10 -10
  101. package/dist/extensions/Blocks/Recommendation/templates/grid/template.js +10 -10
  102. package/dist/extensions/Blocks/Recommendation/templates/index.js +6 -6
  103. package/dist/extensions/Blocks/Recommendation/templates/list/elementRenderer.js +25 -24
  104. package/dist/extensions/Blocks/Recommendation/templates/list/template.js +1 -1
  105. package/dist/extensions/Blocks/Recommendation/templates/utils.js +47 -45
  106. package/dist/extensions/Blocks/Recommendation/validation/filterSchema.js +16 -13
  107. package/dist/extensions/Blocks/Unsubscribe/control.js +13 -11
  108. package/dist/extensions/Blocks/Unsubscribe/elements/preview.js +18 -16
  109. package/dist/extensions/Blocks/common-control.js +26 -25
  110. package/dist/extensions/DynamicContent/dynamic-content.js +58 -53
  111. package/dist/guido.css +1 -1
  112. package/dist/library.js +12 -11
  113. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +286 -262
  114. package/dist/node_modules/lodash-es/_DataView.js +6 -0
  115. package/dist/node_modules/lodash-es/_Hash.js +20 -0
  116. package/dist/node_modules/lodash-es/_ListCache.js +20 -0
  117. package/dist/node_modules/lodash-es/_Map.js +6 -0
  118. package/dist/node_modules/lodash-es/_MapCache.js +20 -0
  119. package/dist/node_modules/lodash-es/_Promise.js +6 -0
  120. package/dist/node_modules/lodash-es/_Set.js +6 -0
  121. package/dist/node_modules/lodash-es/_SetCache.js +13 -0
  122. package/dist/node_modules/lodash-es/_Stack.js +18 -0
  123. package/dist/node_modules/lodash-es/_Symbol.js +5 -0
  124. package/dist/node_modules/lodash-es/_Uint8Array.js +5 -0
  125. package/dist/node_modules/lodash-es/_WeakMap.js +6 -0
  126. package/dist/node_modules/lodash-es/_arrayFilter.js +10 -0
  127. package/dist/node_modules/lodash-es/_arrayLikeKeys.js +20 -0
  128. package/dist/node_modules/lodash-es/_arrayMap.js +8 -0
  129. package/dist/node_modules/lodash-es/_arrayPush.js +8 -0
  130. package/dist/node_modules/lodash-es/_arraySome.js +9 -0
  131. package/dist/node_modules/lodash-es/_assocIndexOf.js +10 -0
  132. package/dist/node_modules/lodash-es/_baseEach.js +6 -0
  133. package/dist/node_modules/lodash-es/_baseFlatten.js +13 -0
  134. package/dist/node_modules/lodash-es/_baseFor.js +5 -0
  135. package/dist/node_modules/lodash-es/_baseForOwn.js +8 -0
  136. package/dist/node_modules/lodash-es/_baseGet.js +11 -0
  137. package/dist/node_modules/lodash-es/_baseGetAllKeys.js +9 -0
  138. package/dist/node_modules/lodash-es/_baseGetTag.js +10 -0
  139. package/dist/node_modules/lodash-es/_baseHasIn.js +6 -0
  140. package/dist/node_modules/lodash-es/_baseIsArguments.js +9 -0
  141. package/dist/node_modules/lodash-es/_baseIsEqual.js +8 -0
  142. package/dist/node_modules/lodash-es/_baseIsEqualDeep.js +32 -0
  143. package/dist/node_modules/lodash-es/_baseIsMatch.js +29 -0
  144. package/dist/node_modules/lodash-es/_baseIsNative.js +16 -0
  145. package/dist/node_modules/lodash-es/_baseIsTypedArray.js +12 -0
  146. package/dist/node_modules/lodash-es/_baseIteratee.js +11 -0
  147. package/dist/node_modules/lodash-es/_baseKeys.js +14 -0
  148. package/dist/node_modules/lodash-es/_baseMap.js +11 -0
  149. package/dist/node_modules/lodash-es/_baseMatches.js +12 -0
  150. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +17 -0
  151. package/dist/node_modules/lodash-es/_baseProperty.js +8 -0
  152. package/dist/node_modules/lodash-es/_basePropertyDeep.js +9 -0
  153. package/dist/node_modules/lodash-es/_baseRange.js +9 -0
  154. package/dist/node_modules/lodash-es/_baseTimes.js +8 -0
  155. package/dist/node_modules/lodash-es/_baseToString.js +18 -0
  156. package/dist/node_modules/lodash-es/_baseTrim.js +8 -0
  157. package/dist/node_modules/lodash-es/_baseUnary.js +8 -0
  158. package/dist/node_modules/lodash-es/_cacheHas.js +6 -0
  159. package/dist/node_modules/lodash-es/_castPath.js +10 -0
  160. package/dist/node_modules/lodash-es/_coreJsData.js +5 -0
  161. package/dist/node_modules/lodash-es/_createBaseEach.js +15 -0
  162. package/dist/node_modules/lodash-es/_createBaseFor.js +13 -0
  163. package/dist/node_modules/lodash-es/_createRange.js +11 -0
  164. package/dist/node_modules/lodash-es/_equalArrays.js +40 -0
  165. package/dist/node_modules/lodash-es/_equalByTag.js +45 -0
  166. package/dist/node_modules/lodash-es/_equalObjects.js +36 -0
  167. package/dist/node_modules/lodash-es/_freeGlobal.js +4 -0
  168. package/dist/node_modules/lodash-es/_getAllKeys.js +9 -0
  169. package/dist/node_modules/lodash-es/_getMapData.js +8 -0
  170. package/dist/node_modules/lodash-es/_getMatchData.js +12 -0
  171. package/dist/node_modules/lodash-es/_getNative.js +9 -0
  172. package/dist/node_modules/lodash-es/_getRawTag.js +15 -0
  173. package/dist/node_modules/lodash-es/_getSymbols.js +10 -0
  174. package/dist/node_modules/lodash-es/_getTag.js +28 -0
  175. package/dist/node_modules/lodash-es/_getValue.js +6 -0
  176. package/dist/node_modules/lodash-es/_hasPath.js +19 -0
  177. package/dist/node_modules/lodash-es/_hashClear.js +7 -0
  178. package/dist/node_modules/lodash-es/_hashDelete.js +7 -0
  179. package/dist/node_modules/lodash-es/_hashGet.js +13 -0
  180. package/dist/node_modules/lodash-es/_hashHas.js +9 -0
  181. package/dist/node_modules/lodash-es/_hashSet.js +9 -0
  182. package/dist/node_modules/lodash-es/_isFlattenable.js +10 -0
  183. package/dist/node_modules/lodash-es/_isIndex.js +8 -0
  184. package/dist/node_modules/lodash-es/_isIterateeCall.js +13 -0
  185. package/dist/node_modules/lodash-es/_isKey.js +12 -0
  186. package/dist/node_modules/lodash-es/_isKeyable.js +7 -0
  187. package/dist/node_modules/lodash-es/_isMasked.js +11 -0
  188. package/dist/node_modules/lodash-es/_isPrototype.js +8 -0
  189. package/dist/node_modules/lodash-es/_isStrictComparable.js +7 -0
  190. package/dist/node_modules/lodash-es/_listCacheClear.js +6 -0
  191. package/dist/node_modules/lodash-es/_listCacheDelete.js +12 -0
  192. package/dist/node_modules/lodash-es/_listCacheGet.js +8 -0
  193. package/dist/node_modules/lodash-es/_listCacheHas.js +7 -0
  194. package/dist/node_modules/lodash-es/_listCacheSet.js +8 -0
  195. package/dist/node_modules/lodash-es/_mapCacheClear.js +13 -0
  196. package/dist/node_modules/lodash-es/_mapCacheDelete.js +8 -0
  197. package/dist/node_modules/lodash-es/_mapCacheGet.js +7 -0
  198. package/dist/node_modules/lodash-es/_mapCacheHas.js +7 -0
  199. package/dist/node_modules/lodash-es/_mapCacheSet.js +8 -0
  200. package/dist/node_modules/lodash-es/_mapToArray.js +9 -0
  201. package/dist/node_modules/lodash-es/_matchesStrictComparable.js +8 -0
  202. package/dist/node_modules/lodash-es/_memoizeCapped.js +11 -0
  203. package/dist/node_modules/lodash-es/_nativeCreate.js +5 -0
  204. package/dist/node_modules/lodash-es/_nativeKeys.js +5 -0
  205. package/dist/node_modules/lodash-es/_nodeUtil.js +11 -0
  206. package/dist/node_modules/lodash-es/_objectToString.js +7 -0
  207. package/dist/node_modules/lodash-es/_overArg.js +8 -0
  208. package/dist/node_modules/lodash-es/_root.js +5 -0
  209. package/dist/node_modules/lodash-es/_setCacheAdd.js +7 -0
  210. package/dist/node_modules/lodash-es/_setCacheHas.js +6 -0
  211. package/dist/node_modules/lodash-es/_setToArray.js +9 -0
  212. package/dist/node_modules/lodash-es/_stackClear.js +7 -0
  213. package/dist/node_modules/lodash-es/_stackDelete.js +7 -0
  214. package/dist/node_modules/lodash-es/_stackGet.js +6 -0
  215. package/dist/node_modules/lodash-es/_stackHas.js +6 -0
  216. package/dist/node_modules/lodash-es/_stackSet.js +17 -0
  217. package/dist/node_modules/lodash-es/_stringToPath.js +10 -0
  218. package/dist/node_modules/lodash-es/_toKey.js +10 -0
  219. package/dist/node_modules/lodash-es/_toSource.js +17 -0
  220. package/dist/node_modules/lodash-es/_trimmedEndIndex.js +9 -0
  221. package/dist/node_modules/lodash-es/eq.js +6 -0
  222. package/dist/node_modules/lodash-es/flatMap.js +8 -0
  223. package/dist/node_modules/lodash-es/get.js +8 -0
  224. package/dist/node_modules/lodash-es/hasIn.js +8 -0
  225. package/dist/node_modules/lodash-es/identity.js +6 -0
  226. package/dist/node_modules/lodash-es/isArguments.js +10 -0
  227. package/dist/node_modules/lodash-es/isArray.js +4 -0
  228. package/dist/node_modules/lodash-es/isArrayLike.js +8 -0
  229. package/dist/node_modules/lodash-es/isBuffer.js +6 -0
  230. package/dist/node_modules/lodash-es/isFunction.js +12 -0
  231. package/dist/node_modules/lodash-es/isLength.js +7 -0
  232. package/dist/node_modules/lodash-es/isObject.js +7 -0
  233. package/dist/node_modules/lodash-es/isObjectLike.js +6 -0
  234. package/dist/node_modules/lodash-es/isSymbol.js +9 -0
  235. package/dist/node_modules/lodash-es/isTypedArray.js +7 -0
  236. package/dist/node_modules/lodash-es/keys.js +9 -0
  237. package/dist/node_modules/lodash-es/map.js +11 -0
  238. package/dist/node_modules/lodash-es/memoize.js +18 -0
  239. package/dist/node_modules/lodash-es/property.js +10 -0
  240. package/dist/node_modules/lodash-es/range.js +5 -0
  241. package/dist/node_modules/lodash-es/stubArray.js +6 -0
  242. package/dist/node_modules/lodash-es/stubFalse.js +6 -0
  243. package/dist/node_modules/lodash-es/toFinite.js +14 -0
  244. package/dist/node_modules/lodash-es/toNumber.js +22 -0
  245. package/dist/node_modules/lodash-es/toString.js +7 -0
  246. package/dist/node_modules/valibot/dist/index.js +126 -122
  247. package/dist/package.json.js +1 -1
  248. package/dist/services/recommendationApi.js +17 -14
  249. package/dist/services/templateLibraryApi.js +40 -38
  250. package/dist/src/components/wrappers/WpModal.vue.d.ts +1 -1
  251. package/dist/src/composables/useHtmlCompiler.d.ts +2 -1
  252. package/dist/src/composables/useRibbonOffset.d.ts +4 -0
  253. package/dist/src/composables/useTranslations.d.ts +1 -1
  254. package/dist/src/enums/onboarding.d.ts +6 -0
  255. package/dist/src/stores/dynamic-content.d.ts +3 -3
  256. package/dist/src/stores/onboarding.d.ts +4 -0
  257. package/dist/stores/config.js +81 -25
  258. package/dist/stores/dynamic-content.js +11 -6
  259. package/dist/stores/onboarding.js +9 -5
  260. package/dist/stores/preview.js +9 -6
  261. package/dist/stores/unsubscribe.js +4 -1
  262. package/dist/utils/dateUtil.js +10 -7
  263. package/dist/utils/genericUtil.js +13 -10
  264. package/dist/utils/pairProductVariables.js +89 -87
  265. package/package.json +5 -8
@@ -1,12 +1,12 @@
1
- var M = Object.defineProperty;
2
- var R = (r, t, o) => t in r ? M(r, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : r[t] = o;
3
- var T = (r, t, o) => R(r, typeof t != "symbol" ? t + "" : t, o);
4
- import { BLOCK_ID as h } from "../../extensions/Blocks/Items/block.js";
5
- import { productPairs as k } from "../../extensions/Blocks/Items/enums/productEnums.js";
6
- import { ItemInCartOptions as I, DefaultConfigValues as y, SETTINGS_ENUMS as s } from "../../extensions/Blocks/Items/enums/settingsEnums.js";
7
- import { getDefaultTemplate as L } from "../../extensions/Blocks/Items/template.js";
8
- import { useTemplateStore as B } from "../../stores/template.js";
9
- const v = {
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 = {
10
10
  img: {
11
11
  pairsKey: "imageSrc",
12
12
  defaultKey: "DEFAULT",
@@ -73,10 +73,10 @@ const v = {
73
73
  isArray: !1
74
74
  }
75
75
  };
76
- function U() {
76
+ function O() {
77
77
  return String(Date.now() + Math.floor(Math.random() * 1e3));
78
78
  }
79
- function K(r) {
79
+ function $(r) {
80
80
  return r ? {
81
81
  CartItems: s.ITEMS_TYPE.CART_ITEMS,
82
82
  BrowsedItems: s.ITEMS_TYPE.BROWSED_ITEMS,
@@ -86,19 +86,20 @@ function K(r) {
86
86
  PURCHASED_ITEMS: s.ITEMS_TYPE.PURCHASED_ITEMS
87
87
  }[r] || s.ITEMS_TYPE.CART_ITEMS : s.ITEMS_TYPE.CART_ITEMS;
88
88
  }
89
- function A(r) {
90
- const t = (e, l) => e == null ? l : e === "1" || e === "true", o = (e, l) => e || l, i = r["data-type"] || r["data-source"], a = K(i), c = I[a];
91
- let n = r["data-cart_items_select_control_value"] || c?.[0]?.value || y.cartItemsSelectControlValue;
92
- if (n && !n.includes("{{") && /^\d+$/.test(n)) {
93
- const e = parseInt(n) - 1, l = I[a];
94
- l && l[e] && (n = l[e].value);
89
+ function R(r) {
90
+ var e;
91
+ const t = (c, _) => c == null ? _ : c === "1" || c === "true", o = (c, _) => c || _, l = r["data-type"] || r["data-source"], a = $(l), n = T[a];
92
+ let i = r["data-cart_items_select_control_value"] || ((e = n == null ? void 0 : n[0]) == null ? void 0 : e.value) || g.cartItemsSelectControlValue;
93
+ if (i && !i.includes("{{") && /^\d+$/.test(i)) {
94
+ const c = parseInt(i) - 1, _ = T[a];
95
+ _ && _[c] && (i = _[c].value);
95
96
  }
96
97
  return {
97
98
  initialized: !0,
98
- blockInstanceId: o(r["data-block-instance-id"], U()),
99
+ blockInstanceId: o(r["data-block-instance-id"], O()),
99
100
  source: a,
100
101
  type: a,
101
- itemsSelectValue: n,
102
+ itemsSelectValue: i,
102
103
  orientation: r["data-card_orientation_control_value"] || s.ORIENTATION.VERTICAL,
103
104
  nameTrimming: t(r["data-product_name_control_trim"], !0),
104
105
  priceHideDiscount: t(r["data-product_price_control_nodup"], !0),
@@ -106,16 +107,16 @@ function A(r) {
106
107
  priceSinglePrice: t(r["data-product_price_control_single_price"], !1),
107
108
  priceCurrencySymbol: o(
108
109
  r["data-product_price_control_currency_symbol"],
109
- y.productPriceCurrencySymbolControlValue
110
+ g.productPriceCurrencySymbolControlValue
110
111
  ),
111
112
  priceCurrencyLocation: o(
112
113
  r["data-product_price_currency_location"],
113
- y.productPriceCurrencyLocationControlValue
114
+ g.productPriceCurrencyLocationControlValue
114
115
  ),
115
116
  priceOrientation: r["data-product_original_price_control_orientation"] || "horizontal",
116
117
  quantityControlEnabled: t(r["data-product_quantity_control_enabled"], !0),
117
- buttonLink: o(r["data-product_button_link"], y.productButtonLinkControlValue),
118
- imageLink: o(r["data-product_image_link"], y.productImageLinkControlValue),
118
+ buttonLink: o(r["data-product_button_link"], g.productButtonLinkControlValue),
119
+ imageLink: o(r["data-product_image_link"], g.productImageLinkControlValue),
119
120
  buttonLabel: o(r["data-product_button_control_label"], "Buy"),
120
121
  buttonFullWidth: t(r["data-product_button_control_atw"], !0),
121
122
  imageVisible: t(r["data-product_image_control_enabled"], !0),
@@ -126,12 +127,12 @@ function A(r) {
126
127
  buttonVisible: t(r["data-product_button_control_enabled"], !0)
127
128
  };
128
129
  }
129
- const q = {
130
+ const x = {
130
131
  ins_apr: "CART_ITEMS",
131
132
  browsed_item: "BROWSED_ITEMS",
132
133
  purchased_item: "PURCHASED_ITEMS"
133
134
  };
134
- function w(r, t) {
135
+ function V(r, t) {
135
136
  const o = {
136
137
  CART_ITEMS: `{{Abandoned Cart Item (${t}) Image}}`,
137
138
  BROWSED_ITEMS: `{{Browsed Item (${t}) Image}}`,
@@ -139,7 +140,7 @@ function w(r, t) {
139
140
  };
140
141
  return o[r] || o.CART_ITEMS;
141
142
  }
142
- function O(r, t) {
143
+ function N(r, t) {
143
144
  const o = {
144
145
  CART_ITEMS: `{{Abandoned Cart Item (${t}) Url}}`,
145
146
  BROWSED_ITEMS: `{{Browsed Item (${t}) Url}}`,
@@ -147,22 +148,24 @@ function O(r, t) {
147
148
  };
148
149
  return o[r] || o.CART_ITEMS;
149
150
  }
150
- class F {
151
+ class z {
151
152
  constructor() {
152
- T(this, "parser");
153
+ M(this, "parser");
153
154
  this.parser = new DOMParser();
154
155
  }
155
156
  migrate(t) {
156
157
  try {
158
+ if (!this.containsItemsBlock(t))
159
+ return t;
157
160
  let o = this.removeJinjaConditionals(t);
158
161
  o = this.replaceTemplateVariables(o);
159
- const i = this.parser.parseFromString(o, "text/html"), a = i.querySelectorAll(
162
+ const l = this.parser.parseFromString(o, "text/html"), a = l.querySelectorAll(
160
163
  "td.esd-cart-items-block, td.esd-browsed-items-block, td.esd-purchased-items-block"
161
164
  );
162
- return B().$patch((n) => {
163
- n.migrations = { ...n.migrations, [h]: a.length };
164
- }), a.length === 0 ? (console.warn("ItemsBlockMigrator: No blocks found with items block selectors"), o) : (a.forEach((n) => {
165
- const e = this.extractConfiguration(n), l = L({
165
+ return F().$patch((i) => {
166
+ i.migrations = { ...i.migrations, [U]: a.length };
167
+ }), a.length === 0 ? (console.warn("ItemsBlockMigrator: No blocks found with items block selectors"), o) : (a.forEach((i) => {
168
+ const e = this.extractConfiguration(i), c = w({
166
169
  orientation: e.orientation,
167
170
  itemsType: e.itemsType,
168
171
  itemId: e.itemId,
@@ -176,18 +179,18 @@ class F {
176
179
  priceStyles: e.priceStyles,
177
180
  originalPriceStyles: e.originalPriceStyles,
178
181
  quantityStyles: e.quantityStyles,
179
- nodeConfig: A(e.configBlockAttributes)
180
- }), d = this.parser.parseFromString(
181
- `<table><tbody><tr>${l}</tr></tbody></table>`,
182
+ nodeConfig: R(e.configBlockAttributes)
183
+ }), u = this.parser.parseFromString(
184
+ `<table><tbody><tr>${c}</tr></tbody></table>`,
182
185
  "text/html"
183
186
  ).querySelector("td");
184
- if (d && n.parentNode) {
185
- const p = A(e.configBlockAttributes);
186
- d.setAttribute("esd-ext-config", JSON.stringify(p));
187
- const u = d.querySelector("esd-config-block");
188
- u && u.remove(), n.parentNode.replaceChild(d, n);
187
+ if (u && i.parentNode) {
188
+ const p = R(e.configBlockAttributes);
189
+ u.setAttribute("esd-ext-config", JSON.stringify(p));
190
+ const d = u.querySelector("esd-config-block");
191
+ d && d.remove(), i.parentNode.replaceChild(u, i);
189
192
  }
190
- }), i.documentElement.outerHTML);
193
+ }), l.documentElement.outerHTML);
191
194
  } catch (o) {
192
195
  return console.error("ItemsBlockMigrator failed:", o), t;
193
196
  }
@@ -199,23 +202,24 @@ class F {
199
202
  * - UI styles from product elements (name, price, button, quantity, etc.)
200
203
  */
201
204
  extractConfiguration(t) {
202
- const o = t.querySelector("[data-type]")?.getAttribute("data-type") || "CART_ITEMS", i = t.querySelector("[data-number]")?.getAttribute("data-number") || "1", a = parseInt(i) - 1, c = I[o], n = c?.[a]?.value || c[0].value, e = t.querySelector('[product-attr="price"]'), l = e?.getAttribute("data-currency_symbol") || "USD", d = (e?.getAttribute("data-curency") || "before") === "after" ? "1" : "0", p = e?.getAttribute("data-formated") !== "false", u = this.extractConfigBlockAttributes(t, o, i), f = u["data-card_orientation_control_value"];
203
- let g;
204
- f ? g = f === "horizontal" ? "horizontal" : "vertical" : g = t.querySelector('[colspan="2"]') !== null ? "vertical" : "horizontal";
205
- const E = t.querySelector('a[product-attr="name"]')?.getAttribute("style") || void 0, m = t.querySelector('a[product-attr="button"]')?.getAttribute("style") || void 0, C = e?.getAttribute("style") || void 0, D = t.querySelector("p.original-price")?.getAttribute("style") || void 0, P = t.querySelector('[product-attr="quantity"]')?.getAttribute("style") || void 0;
205
+ var C, D, P;
206
+ const o = ((C = t.querySelector("[data-type]")) == null ? void 0 : C.getAttribute("data-type")) || "CART_ITEMS", l = ((D = t.querySelector("[data-number]")) == null ? void 0 : D.getAttribute("data-number")) || "1", a = parseInt(l) - 1, n = T[o], i = ((P = n == null ? void 0 : n[a]) == null ? void 0 : P.value) || n[0].value, e = t.querySelector('[product-attr="price"]'), c = (e == null ? void 0 : e.getAttribute("data-currency_symbol")) || "USD", u = ((e == null ? void 0 : e.getAttribute("data-curency")) || "before") === "after" ? "1" : "0", p = (e == null ? void 0 : e.getAttribute("data-formated")) !== "false", d = this.extractConfigBlockAttributes(t, o, l), S = d["data-card_orientation_control_value"];
207
+ let b;
208
+ S ? b = S === "horizontal" ? "horizontal" : "vertical" : b = t.querySelector('[colspan="2"]') !== null ? "vertical" : "horizontal";
209
+ 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, k = (e == null ? void 0 : e.getAttribute("style")) || void 0, A = t.querySelector("p.original-price"), h = (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;
206
210
  return {
207
- orientation: g,
211
+ orientation: b,
208
212
  itemsType: o,
209
- itemId: n,
210
- currencySymbol: l,
211
- currencyLocation: d,
213
+ itemId: i,
214
+ currencySymbol: c,
215
+ currencyLocation: u,
212
216
  formattedPrice: p,
213
- configBlockAttributes: u,
214
- nameStyles: E,
217
+ configBlockAttributes: d,
218
+ nameStyles: I,
215
219
  buttonStyles: m,
216
- priceStyles: C,
217
- originalPriceStyles: D,
218
- quantityStyles: P
220
+ priceStyles: k,
221
+ originalPriceStyles: h,
222
+ quantityStyles: L
219
223
  };
220
224
  }
221
225
  /**
@@ -225,27 +229,27 @@ class F {
225
229
  * @param itemsType - The type of items (CART_ITEMS, BROWSED_ITEMS, PURCHASED_ITEMS)
226
230
  * @param itemNumber - The item number (1-based index)
227
231
  */
228
- extractConfigBlockAttributes(t, o, i) {
229
- const a = t.querySelector("esd-config-block"), c = {};
232
+ extractConfigBlockAttributes(t, o, l) {
233
+ const a = t.querySelector("esd-config-block"), n = {};
230
234
  if (!a)
231
235
  return this.getDefaultConfigBlockAttributes();
232
236
  if (Array.from(a.attributes).forEach((e) => {
233
- e.name.startsWith("data-") && (c[e.name] = e.value);
234
- }), c["data-cart_items_select_control_value"]) {
235
- const e = c["data-cart_items_select_control_value"];
237
+ e.name.startsWith("data-") && (n[e.name] = e.value);
238
+ }), n["data-cart_items_select_control_value"]) {
239
+ const e = n["data-cart_items_select_control_value"];
236
240
  if (/^\d+$/.test(e)) {
237
- const l = parseInt(e) - 1, _ = I[o];
238
- _ && _[l] && (c["data-cart_items_select_control_value"] = _[l].value);
241
+ const c = parseInt(e) - 1, _ = T[o];
242
+ _ && _[c] && (n["data-cart_items_select_control_value"] = _[c].value);
239
243
  }
240
244
  }
241
- if (c["data-product_price_control_curency"]) {
242
- const e = c["data-product_price_control_curency"];
243
- let l = e;
244
- e === "before" ? l = "0" : e === "after" && (l = "1"), c["data-product_price_control_curency"] = l, c["data-product_price_currency_location"] = l;
245
+ if (n["data-product_price_control_curency"]) {
246
+ const e = n["data-product_price_control_curency"];
247
+ let c = e;
248
+ e === "before" ? c = "0" : e === "after" && (c = "1"), n["data-product_price_control_curency"] = c, n["data-product_price_currency_location"] = c;
245
249
  }
246
- (!c["data-product_price_control_currency_symbol"] || c["data-product_price_control_currency_symbol"].trim() === "") && (c["data-product_price_control_currency_symbol"] = "USD");
247
- const n = { ...this.getDefaultConfigBlockAttributes(), ...c };
248
- return n["data-type"] = o, n["data-source"] = o, n["data-product_image_link"] = w(o, i), n["data-product_button_link"] = O(o, i), n;
250
+ (!n["data-product_price_control_currency_symbol"] || n["data-product_price_control_currency_symbol"].trim() === "") && (n["data-product_price_control_currency_symbol"] = "USD");
251
+ const i = { ...this.getDefaultConfigBlockAttributes(), ...n };
252
+ return i["data-type"] = o, i["data-source"] = o, i["data-product_image_link"] = V(o, l), i["data-product_button_link"] = N(o, l), i;
249
253
  }
250
254
  /**
251
255
  * Returns default esd-config-block attributes based on the old template structure
@@ -294,6 +298,14 @@ class F {
294
298
  "data-product_button_link": "{{Abandoned Cart Item (1) Url}}"
295
299
  };
296
300
  }
301
+ /**
302
+ * Fast check for the presence of any items block (cart / browsed / purchased)
303
+ * in the raw HTML. Used to gate the migration pipeline so non-items templates
304
+ * are returned untouched.
305
+ */
306
+ containsItemsBlock(t) {
307
+ return t.includes("esd-cart-items-block") || t.includes("esd-browsed-items-block") || t.includes("esd-purchased-items-block");
308
+ }
297
309
  /**
298
310
  * Removes Jinja2 conditional statements from HTML
299
311
  * Handles all items block types:
@@ -305,15 +317,15 @@ class F {
305
317
  * contains display condition Jinja scripts that should NOT be removed.
306
318
  */
307
319
  removeJinjaConditionals(t) {
308
- const o = "__ESD_DISPLAY_CONDITIONS_PLACEHOLDER__", i = t.match(/esd-custom-display-conditions="[^"]*"/);
309
- let a = i ? t.replace(i[0], o) : t;
320
+ const o = "__ESD_DISPLAY_CONDITIONS_PLACEHOLDER__", l = t.match(/esd-custom-display-conditions="[^"]*"/);
321
+ let a = l ? t.replace(l[0], o) : t;
310
322
  return a = a.replace(
311
323
  /\{%\s*if\s+(ins_apr|browsed_item|purchased_item)_total_product_kind\s*(&gt;|>)\s*\d+\s*%\}/g,
312
324
  ""
313
325
  ), a = a.replace(
314
326
  /\{%\s*if\s+(ins_apr|browsed_item|purchased_item)_price_\d+\s*(!&#61;|!=)\s*\1_originalprice_\d+\s*%\}/g,
315
327
  ""
316
- ), a = a.replace(/\{%\s*endif\s*%\}/g, ""), i && (a = a.replace(o, i[0])), a = a.replace(/\n\s*\n\s*\n/g, `
328
+ ), a = a.replace(/\{%\s*endif\s*%\}/g, ""), l && (a = a.replace(o, l[0])), a = a.replace(/\n\s*\n\s*\n/g, `
317
329
 
318
330
  `), a;
319
331
  }
@@ -327,32 +339,32 @@ class F {
327
339
  * - {{purchased_item_formattedprice_5}} → '1,490.49' (PURCHASED_ITEMS)
328
340
  */
329
341
  replaceTemplateVariables(t) {
330
- const { PAIRS_FOR_EXTENSION: o } = k;
331
- return t.replace(/{{([^}]+)}}/g, (i, a) => {
332
- const c = a.match(/^(ins_apr|browsed_item|purchased_item)_([a-z_]+)_(\d+)$/);
333
- if (!c)
334
- return i;
335
- const [, n, e, l] = c, _ = q[n];
342
+ const { PAIRS_FOR_EXTENSION: o } = K;
343
+ return t.replace(/{{([^}]+)}}/g, (l, a) => {
344
+ const n = a.match(/^(ins_apr|browsed_item|purchased_item)_([a-z_]+)_(\d+)$/);
345
+ if (!n)
346
+ return l;
347
+ const [, i, e, c] = n, _ = x[i];
336
348
  if (!_)
337
- return console.warn(`Unknown variable prefix: ${n}`), i;
338
- const d = v[e];
339
- if (!d)
340
- return console.warn(`Unknown variable suffix mapping for: ${e}`), i;
341
- const { pairsKey: p, defaultKey: u, isArray: f } = d, S = o[p][_];
342
- if (!S)
343
- return console.warn(`No data found for: ${p}.${_}`), i;
344
- if (f) {
345
- const b = parseInt(l) - 1, m = S[u];
346
- return Array.isArray(m) && m[b] ? m[b] : (console.warn(`Array value not found: ${p}.${_}.${u}[${b}]`), i);
349
+ return console.warn(`Unknown variable prefix: ${i}`), l;
350
+ const u = q[e];
351
+ if (!u)
352
+ return console.warn(`Unknown variable suffix mapping for: ${e}`), l;
353
+ const { pairsKey: p, defaultKey: d, isArray: S } = u, y = o[p][_];
354
+ if (!y)
355
+ return console.warn(`No data found for: ${p}.${_}`), l;
356
+ if (S) {
357
+ const f = parseInt(c) - 1, m = y[d];
358
+ return Array.isArray(m) && m[f] ? m[f] : (console.warn(`Array value not found: ${p}.${_}.${d}[${f}]`), l);
347
359
  }
348
- const E = S[u];
349
- return E !== void 0 ? String(E) : (console.warn(`Default value not found: ${p}.${_}.${u}`), i);
360
+ const I = y[d];
361
+ return I !== void 0 ? String(I) : (console.warn(`Default value not found: ${p}.${_}.${d}`), l);
350
362
  });
351
363
  }
352
364
  }
353
- function J(r) {
354
- return new F().migrate(r);
365
+ function Q(r) {
366
+ return new z().migrate(r);
355
367
  }
356
368
  export {
357
- J as migrateItemsBlock
369
+ Q as migrateItemsBlock
358
370
  };
@@ -1,10 +1,10 @@
1
1
  var x = Object.defineProperty;
2
2
  var f = (r, t, e) => t in r ? x(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e;
3
- var m = (r, t, e) => f(r, typeof t != "symbol" ? t + "" : t, e);
3
+ var b = (r, t, e) => f(r, typeof t != "symbol" ? t + "" : t, e);
4
4
  import h from "../../extensions/Blocks/RadioButton/template.js";
5
5
  class T {
6
6
  constructor() {
7
- m(this, "parser");
7
+ b(this, "parser");
8
8
  this.parser = new DOMParser();
9
9
  }
10
10
  migrate(t) {
@@ -13,17 +13,18 @@ class T {
13
13
  return i.length === 0 ? t : (i.forEach((s) => {
14
14
  if (s.classList.contains("radio-button-v2"))
15
15
  return;
16
- const n = s.getAttribute("id"), l = this.extractTextFromElement(s, "ins-title"), o = this.extractTextFromElement(s, "ins-description"), c = this.extractTextFromElement(s, "ins-subscribe"), a = this.extractTextFromElement(s, "ins-unsubscribe"), p = this.buildTextBlock(l), u = this.buildTextBlock(o), d = this.buildTextBlock({ ...c, classList: "" }), y = this.buildTextBlock({ ...a, classList: "" }), b = h.replace("{-{-TITLE-}-}", p).replace("{-{-DESCRIPTION-}-}", u).replace("{-{-YES-}-}", d).replace("{-{-NO-}-}", y), g = this.parser.parseFromString(
17
- `<table id="tempDoc"><tbody><tr>${b}</tr></tbody></table>`,
16
+ const n = s.getAttribute("id"), l = this.extractTextFromElement(s, "ins-title"), a = this.extractTextFromElement(s, "ins-description"), p = this.extractTextFromElement(s, "ins-subscribe"), u = this.extractTextFromElement(s, "ins-unsubscribe"), d = this.buildTextBlock(l), g = this.buildTextBlock(a), m = this.buildTextBlock({ ...p, classList: "" }), o = this.buildTextBlock({ ...u, classList: "" }), c = h.replace("{-{-TITLE-}-}", d).replace("{-{-DESCRIPTION-}-}", g).replace("{-{-YES-}-}", m).replace("{-{-NO-}-}", o), y = this.parser.parseFromString(
17
+ `<table id="tempDoc"><tbody><tr>${c}</tr></tbody></table>`,
18
18
  "text/html"
19
19
  ).querySelector(".radio-button-v2");
20
- g && s.parentNode && (g.setAttribute("id", n || ""), s.parentNode.replaceChild(g, s));
20
+ y && s.parentNode && (y.setAttribute("id", n || ""), s.parentNode.replaceChild(y, s));
21
21
  }), e.documentElement.outerHTML);
22
22
  } catch (e) {
23
23
  return console.error("RadioButtonMigrator failed:", e), t;
24
24
  }
25
25
  }
26
26
  extractTextFromElement(t, e) {
27
+ var o, c;
27
28
  const i = t.querySelector(`.${e}`);
28
29
  if (!i)
29
30
  return {
@@ -37,21 +38,21 @@ class T {
37
38
  const s = i.querySelector("p");
38
39
  if (!s)
39
40
  return {
40
- text: i.textContent?.trim() || (e === "ins-title" ? "Title" : "Description"),
41
+ text: ((o = i.textContent) == null ? void 0 : o.trim()) || (e === "ins-title" ? "Title" : "Description"),
41
42
  isBold: !1,
42
43
  isItalic: !1,
43
44
  align: i.getAttribute("align") || "left",
44
45
  styles: "",
45
46
  classList: ""
46
47
  };
47
- const n = s.textContent?.trim() || (e === "ins-title" ? "Title" : "Description"), l = s.getAttribute("style") || "", o = i.getAttribute("align") || s.getAttribute("align") || "left", c = /font-weight\s*:\s*bold/i.test(l) || !!s.querySelector("b, strong"), a = /font-style\s*:\s*italic/i.test(l) || !!s.querySelector("i, em"), p = this.removeStyleProperties(l, ["font-weight", "font-style"]), u = this.convertInlineToBlock(p), d = i.getAttribute("class") || "";
48
+ const n = ((c = s.textContent) == null ? void 0 : c.trim()) || (e === "ins-title" ? "Title" : "Description"), l = s.getAttribute("style") || "", a = i.getAttribute("align") || s.getAttribute("align") || "left", p = /font-weight\s*:\s*bold/i.test(l) || !!s.querySelector("b, strong"), u = /font-style\s*:\s*italic/i.test(l) || !!s.querySelector("i, em"), d = this.removeStyleProperties(l, ["font-weight", "font-style"]), g = this.convertInlineToBlock(d), m = i.getAttribute("class") || "";
48
49
  return {
49
50
  text: n,
50
- isBold: c,
51
- isItalic: a,
52
- align: o,
53
- styles: u,
54
- classList: d
51
+ isBold: p,
52
+ isItalic: u,
53
+ align: a,
54
+ styles: g,
55
+ classList: m
55
56
  };
56
57
  }
57
58
  buildTextBlock(t) {