@useinsider/guido 3.2.0-beta.78d83bd → 3.2.0-beta.7e0c6bd

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 +27 -34
  3. package/dist/components/Guido.vue.js +1 -1
  4. package/dist/components/Guido.vue2.js +76 -81
  5. package/dist/components/organisms/base/Toaster.vue2.js +10 -11
  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 +9 -15
  9. package/dist/components/organisms/extensions/recommendation/FilterItem.vue2.js +31 -40
  10. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue2.js +19 -20
  11. package/dist/components/organisms/extensions/recommendation/Filters.vue2.js +11 -14
  12. package/dist/components/organisms/header/EditorActions.vue.js +11 -12
  13. package/dist/components/organisms/header/EditorActions.vue2.js +18 -22
  14. package/dist/components/organisms/header/HeaderWrapper.vue2.js +12 -15
  15. package/dist/components/organisms/header/LeftSlot.vue2.js +16 -19
  16. package/dist/components/organisms/header/MiddleSlot.vue2.js +14 -11
  17. package/dist/components/organisms/header/RightSlot.vue2.js +14 -17
  18. package/dist/components/organisms/onboarding/AMPOnboarding.vue.js +11 -12
  19. package/dist/components/organisms/onboarding/AMPOnboarding.vue2.js +49 -31
  20. package/dist/components/organisms/onboarding/GenericOnboarding.vue.js +12 -13
  21. package/dist/components/organisms/onboarding/GenericOnboarding.vue2.js +36 -38
  22. package/dist/components/organisms/onboarding/ItemsOnboarding.vue.js +12 -13
  23. package/dist/components/organisms/onboarding/ItemsOnboarding.vue2.js +47 -51
  24. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +18 -21
  25. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +27 -31
  26. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue.js +12 -13
  27. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue2.js +33 -46
  28. package/dist/components/organisms/onboarding/VersionHistoryOnboarding.vue.js +11 -12
  29. package/dist/components/organisms/onboarding/VersionHistoryOnboarding.vue2.js +20 -21
  30. package/dist/components/organisms/save-as-template/SaveAsTemplateDrawer.vue2.js +8 -9
  31. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.js +9 -10
  32. package/dist/composables/useActionsApi.js +37 -38
  33. package/dist/composables/useBlocksConfig.js +26 -26
  34. package/dist/composables/useFullStoryBridge.js +8 -9
  35. package/dist/composables/useHtmlCompiler.js +34 -26
  36. package/dist/composables/useHtmlValidator.js +101 -109
  37. package/dist/composables/useHttp.js +30 -30
  38. package/dist/composables/usePartner.js +1 -1
  39. package/dist/composables/useRecommendation.js +14 -15
  40. package/dist/composables/useRibbonOffset.js +21 -0
  41. package/dist/composables/useSave.js +21 -22
  42. package/dist/composables/useStripo.js +53 -50
  43. package/dist/composables/useSyncModuleExtractor.js +31 -29
  44. package/dist/composables/useTimerClone.js +24 -25
  45. package/dist/composables/useTranslations.js +23 -16
  46. package/dist/composables/useValidation.js +7 -8
  47. package/dist/composables/validators/useLiquidValidator.js +13 -13
  48. package/dist/config/compiler/unsubscribeCompilerRules.js +17 -19
  49. package/dist/config/compiler/utils/recommendationCompilerUtils.js +10 -11
  50. package/dist/config/migrator/checkboxMigrator.js +20 -21
  51. package/dist/config/migrator/couponBlockMigrator.js +18 -19
  52. package/dist/config/migrator/itemsBlockMigrator.js +87 -89
  53. package/dist/config/migrator/radioButtonMigrator.js +12 -13
  54. package/dist/config/migrator/recommendationMigrator.js +106 -109
  55. package/dist/config/migrator/unsubscribeMigrator.js +10 -11
  56. package/dist/enums/onboarding.js +7 -2
  57. package/dist/enums/unsubscribe.js +18 -19
  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 +89 -97
  61. package/dist/extensions/Blocks/Items/controls/image/link.js +14 -14
  62. package/dist/extensions/Blocks/Items/controls/name/trimming.js +23 -24
  63. package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +13 -14
  64. package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +44 -47
  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 +38 -40
  68. package/dist/extensions/Blocks/Items/controls/price/singlePrice.js +35 -35
  69. package/dist/extensions/Blocks/Items/controls/settingsControl.js +155 -162
  70. package/dist/extensions/Blocks/Items/enums/productEnums.js +9 -14
  71. package/dist/extensions/Blocks/Items/template.js +218 -216
  72. package/dist/extensions/Blocks/Recommendation/controls/button/index.js +36 -36
  73. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +128 -133
  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 +17 -18
  78. package/dist/extensions/Blocks/Recommendation/controls/main/filters.js +4 -6
  79. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +82 -90
  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 +35 -36
  83. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +134 -135
  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 +18 -20
  96. package/dist/extensions/Blocks/Recommendation/extension.js +31 -32
  97. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +8 -16
  98. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +55 -56
  99. package/dist/extensions/Blocks/Recommendation/templates/grid/elementRenderer.js +22 -23
  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 +24 -25
  104. package/dist/extensions/Blocks/Recommendation/templates/list/template.js +1 -1
  105. package/dist/extensions/Blocks/Recommendation/templates/utils.js +45 -47
  106. package/dist/extensions/Blocks/Recommendation/validation/filterSchema.js +13 -16
  107. package/dist/extensions/Blocks/Unsubscribe/control.js +11 -13
  108. package/dist/extensions/Blocks/Unsubscribe/elements/preview.js +16 -18
  109. package/dist/extensions/Blocks/common-control.js +25 -26
  110. package/dist/extensions/DynamicContent/dynamic-content.js +53 -58
  111. package/dist/guido.css +1 -1
  112. package/dist/library.js +11 -12
  113. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +233 -210
  114. package/dist/node_modules/valibot/dist/index.js +122 -126
  115. package/dist/package.json.js +1 -1
  116. package/dist/services/recommendationApi.js +14 -17
  117. package/dist/services/templateLibraryApi.js +37 -38
  118. package/dist/src/components/wrappers/WpModal.vue.d.ts +1 -1
  119. package/dist/src/composables/useHtmlCompiler.d.ts +1 -2
  120. package/dist/src/composables/useRibbonOffset.d.ts +4 -0
  121. package/dist/src/composables/useTranslations.d.ts +1 -1
  122. package/dist/src/enums/onboarding.d.ts +6 -0
  123. package/dist/src/stores/dynamic-content.d.ts +3 -3
  124. package/dist/src/stores/onboarding.d.ts +4 -0
  125. package/dist/stores/config.js +25 -81
  126. package/dist/stores/dynamic-content.js +6 -11
  127. package/dist/stores/onboarding.js +5 -1
  128. package/dist/stores/preview.js +6 -9
  129. package/dist/stores/unsubscribe.js +1 -4
  130. package/dist/utils/dateUtil.js +7 -10
  131. package/dist/utils/genericUtil.js +10 -13
  132. package/dist/utils/pairProductVariables.js +13 -14
  133. package/package.json +8 -5
  134. package/dist/node_modules/lodash-es/_DataView.js +0 -6
  135. package/dist/node_modules/lodash-es/_Hash.js +0 -20
  136. package/dist/node_modules/lodash-es/_ListCache.js +0 -20
  137. package/dist/node_modules/lodash-es/_Map.js +0 -6
  138. package/dist/node_modules/lodash-es/_MapCache.js +0 -20
  139. package/dist/node_modules/lodash-es/_Promise.js +0 -6
  140. package/dist/node_modules/lodash-es/_Set.js +0 -6
  141. package/dist/node_modules/lodash-es/_SetCache.js +0 -13
  142. package/dist/node_modules/lodash-es/_Stack.js +0 -18
  143. package/dist/node_modules/lodash-es/_Symbol.js +0 -5
  144. package/dist/node_modules/lodash-es/_Uint8Array.js +0 -5
  145. package/dist/node_modules/lodash-es/_WeakMap.js +0 -6
  146. package/dist/node_modules/lodash-es/_arrayFilter.js +0 -10
  147. package/dist/node_modules/lodash-es/_arrayLikeKeys.js +0 -20
  148. package/dist/node_modules/lodash-es/_arrayMap.js +0 -8
  149. package/dist/node_modules/lodash-es/_arrayPush.js +0 -8
  150. package/dist/node_modules/lodash-es/_arraySome.js +0 -9
  151. package/dist/node_modules/lodash-es/_assocIndexOf.js +0 -10
  152. package/dist/node_modules/lodash-es/_baseEach.js +0 -6
  153. package/dist/node_modules/lodash-es/_baseFlatten.js +0 -13
  154. package/dist/node_modules/lodash-es/_baseFor.js +0 -5
  155. package/dist/node_modules/lodash-es/_baseForOwn.js +0 -8
  156. package/dist/node_modules/lodash-es/_baseGet.js +0 -11
  157. package/dist/node_modules/lodash-es/_baseGetAllKeys.js +0 -9
  158. package/dist/node_modules/lodash-es/_baseGetTag.js +0 -10
  159. package/dist/node_modules/lodash-es/_baseHasIn.js +0 -6
  160. package/dist/node_modules/lodash-es/_baseIsArguments.js +0 -9
  161. package/dist/node_modules/lodash-es/_baseIsEqual.js +0 -8
  162. package/dist/node_modules/lodash-es/_baseIsEqualDeep.js +0 -32
  163. package/dist/node_modules/lodash-es/_baseIsMatch.js +0 -29
  164. package/dist/node_modules/lodash-es/_baseIsNative.js +0 -16
  165. package/dist/node_modules/lodash-es/_baseIsTypedArray.js +0 -12
  166. package/dist/node_modules/lodash-es/_baseIteratee.js +0 -11
  167. package/dist/node_modules/lodash-es/_baseKeys.js +0 -14
  168. package/dist/node_modules/lodash-es/_baseMap.js +0 -11
  169. package/dist/node_modules/lodash-es/_baseMatches.js +0 -12
  170. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +0 -17
  171. package/dist/node_modules/lodash-es/_baseProperty.js +0 -8
  172. package/dist/node_modules/lodash-es/_basePropertyDeep.js +0 -9
  173. package/dist/node_modules/lodash-es/_baseRange.js +0 -9
  174. package/dist/node_modules/lodash-es/_baseTimes.js +0 -8
  175. package/dist/node_modules/lodash-es/_baseToString.js +0 -18
  176. package/dist/node_modules/lodash-es/_baseTrim.js +0 -8
  177. package/dist/node_modules/lodash-es/_baseUnary.js +0 -8
  178. package/dist/node_modules/lodash-es/_cacheHas.js +0 -6
  179. package/dist/node_modules/lodash-es/_castPath.js +0 -10
  180. package/dist/node_modules/lodash-es/_coreJsData.js +0 -5
  181. package/dist/node_modules/lodash-es/_createBaseEach.js +0 -15
  182. package/dist/node_modules/lodash-es/_createBaseFor.js +0 -13
  183. package/dist/node_modules/lodash-es/_createRange.js +0 -11
  184. package/dist/node_modules/lodash-es/_equalArrays.js +0 -40
  185. package/dist/node_modules/lodash-es/_equalByTag.js +0 -45
  186. package/dist/node_modules/lodash-es/_equalObjects.js +0 -36
  187. package/dist/node_modules/lodash-es/_freeGlobal.js +0 -4
  188. package/dist/node_modules/lodash-es/_getAllKeys.js +0 -9
  189. package/dist/node_modules/lodash-es/_getMapData.js +0 -8
  190. package/dist/node_modules/lodash-es/_getMatchData.js +0 -12
  191. package/dist/node_modules/lodash-es/_getNative.js +0 -9
  192. package/dist/node_modules/lodash-es/_getRawTag.js +0 -15
  193. package/dist/node_modules/lodash-es/_getSymbols.js +0 -10
  194. package/dist/node_modules/lodash-es/_getTag.js +0 -28
  195. package/dist/node_modules/lodash-es/_getValue.js +0 -6
  196. package/dist/node_modules/lodash-es/_hasPath.js +0 -19
  197. package/dist/node_modules/lodash-es/_hashClear.js +0 -7
  198. package/dist/node_modules/lodash-es/_hashDelete.js +0 -7
  199. package/dist/node_modules/lodash-es/_hashGet.js +0 -13
  200. package/dist/node_modules/lodash-es/_hashHas.js +0 -9
  201. package/dist/node_modules/lodash-es/_hashSet.js +0 -9
  202. package/dist/node_modules/lodash-es/_isFlattenable.js +0 -10
  203. package/dist/node_modules/lodash-es/_isIndex.js +0 -8
  204. package/dist/node_modules/lodash-es/_isIterateeCall.js +0 -13
  205. package/dist/node_modules/lodash-es/_isKey.js +0 -12
  206. package/dist/node_modules/lodash-es/_isKeyable.js +0 -7
  207. package/dist/node_modules/lodash-es/_isMasked.js +0 -11
  208. package/dist/node_modules/lodash-es/_isPrototype.js +0 -8
  209. package/dist/node_modules/lodash-es/_isStrictComparable.js +0 -7
  210. package/dist/node_modules/lodash-es/_listCacheClear.js +0 -6
  211. package/dist/node_modules/lodash-es/_listCacheDelete.js +0 -12
  212. package/dist/node_modules/lodash-es/_listCacheGet.js +0 -8
  213. package/dist/node_modules/lodash-es/_listCacheHas.js +0 -7
  214. package/dist/node_modules/lodash-es/_listCacheSet.js +0 -8
  215. package/dist/node_modules/lodash-es/_mapCacheClear.js +0 -13
  216. package/dist/node_modules/lodash-es/_mapCacheDelete.js +0 -8
  217. package/dist/node_modules/lodash-es/_mapCacheGet.js +0 -7
  218. package/dist/node_modules/lodash-es/_mapCacheHas.js +0 -7
  219. package/dist/node_modules/lodash-es/_mapCacheSet.js +0 -8
  220. package/dist/node_modules/lodash-es/_mapToArray.js +0 -9
  221. package/dist/node_modules/lodash-es/_matchesStrictComparable.js +0 -8
  222. package/dist/node_modules/lodash-es/_memoizeCapped.js +0 -11
  223. package/dist/node_modules/lodash-es/_nativeCreate.js +0 -5
  224. package/dist/node_modules/lodash-es/_nativeKeys.js +0 -5
  225. package/dist/node_modules/lodash-es/_nodeUtil.js +0 -11
  226. package/dist/node_modules/lodash-es/_objectToString.js +0 -7
  227. package/dist/node_modules/lodash-es/_overArg.js +0 -8
  228. package/dist/node_modules/lodash-es/_root.js +0 -5
  229. package/dist/node_modules/lodash-es/_setCacheAdd.js +0 -7
  230. package/dist/node_modules/lodash-es/_setCacheHas.js +0 -6
  231. package/dist/node_modules/lodash-es/_setToArray.js +0 -9
  232. package/dist/node_modules/lodash-es/_stackClear.js +0 -7
  233. package/dist/node_modules/lodash-es/_stackDelete.js +0 -7
  234. package/dist/node_modules/lodash-es/_stackGet.js +0 -6
  235. package/dist/node_modules/lodash-es/_stackHas.js +0 -6
  236. package/dist/node_modules/lodash-es/_stackSet.js +0 -17
  237. package/dist/node_modules/lodash-es/_stringToPath.js +0 -10
  238. package/dist/node_modules/lodash-es/_toKey.js +0 -10
  239. package/dist/node_modules/lodash-es/_toSource.js +0 -17
  240. package/dist/node_modules/lodash-es/_trimmedEndIndex.js +0 -9
  241. package/dist/node_modules/lodash-es/eq.js +0 -6
  242. package/dist/node_modules/lodash-es/flatMap.js +0 -8
  243. package/dist/node_modules/lodash-es/get.js +0 -8
  244. package/dist/node_modules/lodash-es/hasIn.js +0 -8
  245. package/dist/node_modules/lodash-es/identity.js +0 -6
  246. package/dist/node_modules/lodash-es/isArguments.js +0 -10
  247. package/dist/node_modules/lodash-es/isArray.js +0 -4
  248. package/dist/node_modules/lodash-es/isArrayLike.js +0 -8
  249. package/dist/node_modules/lodash-es/isBuffer.js +0 -6
  250. package/dist/node_modules/lodash-es/isFunction.js +0 -12
  251. package/dist/node_modules/lodash-es/isLength.js +0 -7
  252. package/dist/node_modules/lodash-es/isObject.js +0 -7
  253. package/dist/node_modules/lodash-es/isObjectLike.js +0 -6
  254. package/dist/node_modules/lodash-es/isSymbol.js +0 -9
  255. package/dist/node_modules/lodash-es/isTypedArray.js +0 -7
  256. package/dist/node_modules/lodash-es/keys.js +0 -9
  257. package/dist/node_modules/lodash-es/map.js +0 -11
  258. package/dist/node_modules/lodash-es/memoize.js +0 -18
  259. package/dist/node_modules/lodash-es/property.js +0 -10
  260. package/dist/node_modules/lodash-es/range.js +0 -5
  261. package/dist/node_modules/lodash-es/stubArray.js +0 -6
  262. package/dist/node_modules/lodash-es/stubFalse.js +0 -6
  263. package/dist/node_modules/lodash-es/toFinite.js +0 -14
  264. package/dist/node_modules/lodash-es/toNumber.js +0 -22
  265. package/dist/node_modules/lodash-es/toString.js +0 -7
@@ -1,36 +1,34 @@
1
1
  var c = Object.defineProperty;
2
- var g = (o, s, t) => s in o ? c(o, s, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[s] = t;
3
- var r = (o, s, t) => g(o, typeof s != "symbol" ? s + "" : s, t);
4
- import { useConfig as d } from "../../composables/useConfig.js";
5
- import { mergeTagToDynamicContent as m, dynamicContentToMergeTags as u } from "../../utils/genericUtil.js";
2
+ var m = (o, i, e) => i in o ? c(o, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[i] = e;
3
+ var s = (o, i, e) => m(o, typeof i != "symbol" ? i + "" : i, e);
4
+ import { useConfig as g } from "../../composables/useConfig.js";
5
+ import { mergeTagToDynamicContent as d, dynamicContentToMergeTags as u } from "../../utils/genericUtil.js";
6
6
  import { UIElement as h, UIElementType as a, UEAttr as T, UIElementTagRegistry as y } from "../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
7
7
  import { ExternalMergeTagsLibrary as C } from "./dynamic-content-modal.js";
8
- const l = "external-dynamic-content-ui-element", L = "button-add-dynamic-content";
9
- class w extends y {
10
- registerUiElements(s) {
11
- s[a.MERGETAGS] = l;
8
+ const l = "external-dynamic-content-ui-element", E = "button-add-dynamic-content";
9
+ class b extends y {
10
+ registerUiElements(i) {
11
+ i[a.MERGETAGS] = l;
12
12
  }
13
13
  }
14
- class f extends h {
14
+ class w extends h {
15
15
  constructor() {
16
16
  super(...arguments);
17
- r(this, "mergeTagsButton", null);
18
- r(this, "mergeTagsLibrary", null);
19
- r(this, "clickListener", null);
20
- r(this, "lastClickedElement", null);
21
- r(this, "lastClickedFrame", null);
22
- r(this, "mousedownListener", null);
17
+ s(this, "mergeTagsButton", null);
18
+ s(this, "mergeTagsLibrary", null);
19
+ s(this, "clickListener", null);
20
+ s(this, "lastClickedElement", null);
21
+ s(this, "lastClickedFrame", null);
22
+ s(this, "mousedownListener", null);
23
23
  }
24
24
  getId() {
25
25
  return l;
26
26
  }
27
- onRender(t) {
28
- var e;
29
- this.mergeTagsButton = t.querySelector("#guido__btn-add-dynamic-content"), this.clickListener = this._onClick.bind(this), (e = this.mergeTagsButton) == null || e.addEventListener("click", this.clickListener), this._setupCoordinateTracking();
27
+ onRender(e) {
28
+ this.mergeTagsButton = e.querySelector("#guido__btn-add-dynamic-content"), this.clickListener = this._onClick.bind(this), this.mergeTagsButton?.addEventListener("click", this.clickListener), this._setupCoordinateTracking();
30
29
  }
31
30
  onDestroy() {
32
- var t;
33
- this.clickListener && ((t = this.mergeTagsButton) == null || t.removeEventListener("click", this.clickListener)), this._cleanupCoordinateTracking(), this.mergeTagsButton = null, this.clickListener = null, this.lastClickedElement = null, this.lastClickedFrame = null;
31
+ this.clickListener && this.mergeTagsButton?.removeEventListener("click", this.clickListener), this._cleanupCoordinateTracking(), this.mergeTagsButton = null, this.clickListener = null, this.lastClickedElement = null, this.lastClickedFrame = null;
34
32
  }
35
33
  _onClick() {
36
34
  this.openMergeTagLibrary();
@@ -41,31 +39,31 @@ class f extends h {
41
39
  * @param name - Attribute name (e.g., 'mergeTag')
42
40
  * @param value - MergeTag object with label, value, selStart, selEnd, etc.
43
41
  */
44
- onAttributeUpdated(t, e) {
45
- if (t !== "mergeTag" || !(e != null && e.value))
42
+ onAttributeUpdated(e, t) {
43
+ if (e !== "mergeTag" || !t?.value)
46
44
  return;
47
- const n = m(e), i = this._getLastClickedPosition();
48
- this.lastClickedElement = null, this.lastClickedFrame = null, this._openDynamicContentLibrary(n, i);
45
+ const n = d(t), r = this._getLastClickedPosition();
46
+ this.lastClickedElement = null, this.lastClickedFrame = null, this._openDynamicContentLibrary(n, r);
49
47
  }
50
48
  openMergeTagLibrary() {
51
- const t = this._getButtonPosition(), e = { value: "", text: "" };
52
- this._openDynamicContentLibrary(e, t);
49
+ const e = this._getButtonPosition(), t = { value: "", text: "" };
50
+ this._openDynamicContentLibrary(t, e);
53
51
  }
54
52
  /**
55
53
  * Opens the dynamic content library for external apps
56
54
  * Dispatches event with dynamic content data and position
57
55
  */
58
- _openDynamicContentLibrary(t, e) {
56
+ _openDynamicContentLibrary(e, t) {
59
57
  this.mergeTagsLibrary || (this.mergeTagsLibrary = new C()), this.mergeTagsLibrary.openMergeTagsLibrary(
60
- t,
58
+ e,
61
59
  (n) => {
62
60
  if (n.text && n.value) {
63
- const { isFeatureEnabled: i } = d();
64
- this.api.triggerValueChange(u([n], i("liquidSyntax"))[0]);
61
+ const { isFeatureEnabled: r } = g();
62
+ this.api.triggerValueChange(u([n], r("liquidSyntax"))[0]);
65
63
  } else
66
64
  this.api.triggerValueChange(null);
67
65
  },
68
- e
66
+ t
69
67
  );
70
68
  }
71
69
  /**
@@ -75,37 +73,35 @@ class f extends h {
75
73
  _getButtonPosition() {
76
74
  if (!this.mergeTagsButton)
77
75
  return { x: 0, y: 0, width: 0, height: 0 };
78
- const { x: t, y: e, width: n, height: i } = this.mergeTagsButton.getBoundingClientRect();
79
- return { x: t, y: e, width: n, height: i };
76
+ const { x: e, y: t, width: n, height: r } = this.mergeTagsButton.getBoundingClientRect();
77
+ return { x: e, y: t, width: n, height: r };
80
78
  }
81
79
  /**
82
80
  * Sets up coordinate tracking for merge tag clicks in the iframe
83
81
  * Workaround from Stripo intercepting click events - tracks mousedown events instead
84
82
  */
85
83
  _setupCoordinateTracking() {
86
- var e;
87
- const t = this._getEditorFrame();
88
- (e = t == null ? void 0 : t.contentWindow) != null && e.document && (this.mousedownListener = (n) => {
89
- const i = this._findMergeTagElement(n.target);
90
- i && (this.lastClickedElement = i, this.lastClickedFrame = t);
91
- }, t.contentWindow.document.addEventListener("mousedown", this.mousedownListener));
84
+ const e = this._getEditorFrame();
85
+ e?.contentWindow?.document && (this.mousedownListener = (t) => {
86
+ const n = this._findMergeTagElement(t.target);
87
+ n && (this.lastClickedElement = n, this.lastClickedFrame = e);
88
+ }, e.contentWindow.document.addEventListener("mousedown", this.mousedownListener));
92
89
  }
93
90
  /**
94
91
  * Gets the editor iframe element
95
92
  */
96
93
  _getEditorFrame() {
97
- var n;
98
- const t = document.querySelector("ui-editor");
99
- if (!(t != null && t.shadowRoot))
94
+ const e = document.querySelector("ui-editor");
95
+ if (!e?.shadowRoot)
100
96
  return null;
101
- const e = t.shadowRoot.querySelector("iframe");
102
- return (n = e == null ? void 0 : e.contentWindow) != null && n.document ? e : null;
97
+ const t = e.shadowRoot.querySelector("iframe");
98
+ return t?.contentWindow?.document ? t : null;
103
99
  }
104
100
  /**
105
101
  * Finds merge tag element in the element tree
106
102
  */
107
- _findMergeTagElement(t) {
108
- return t.closest(".target, .esd-merge-tag");
103
+ _findMergeTagElement(e) {
104
+ return e.closest(".target, .esd-merge-tag");
109
105
  }
110
106
  /**
111
107
  * Gets the position of the last clicked element, calculated on-demand
@@ -118,24 +114,23 @@ class f extends h {
118
114
  /**
119
115
  * Calculates absolute position of element relative to page
120
116
  */
121
- _calculateAbsolutePosition(t, e) {
122
- const n = t.getBoundingClientRect(), i = e.getBoundingClientRect();
117
+ _calculateAbsolutePosition(e, t) {
118
+ const n = e.getBoundingClientRect(), r = t.getBoundingClientRect();
123
119
  return {
124
- x: n.x + i.x,
125
- y: n.y + i.y,
126
- width: i.width,
127
- height: i.height
120
+ x: n.x + r.x,
121
+ y: n.y + r.y,
122
+ width: r.width,
123
+ height: r.height
128
124
  };
129
125
  }
130
126
  /**
131
127
  * Cleans up the coordinate tracking event listener
132
128
  */
133
129
  _cleanupCoordinateTracking() {
134
- var e;
135
130
  if (!this.mousedownListener)
136
131
  return;
137
- const t = this._getEditorFrame();
138
- (e = t == null ? void 0 : t.contentWindow) != null && e.document && t.contentWindow.document.removeEventListener("mousedown", this.mousedownListener), this.mousedownListener = null;
132
+ const e = this._getEditorFrame();
133
+ e?.contentWindow?.document && e.contentWindow.document.removeEventListener("mousedown", this.mousedownListener), this.mousedownListener = null;
139
134
  }
140
135
  /**
141
136
  * Returns the HTML template for the "Add Dynamic Content" button
@@ -147,7 +142,7 @@ class f extends h {
147
142
  <${a.BUTTON}
148
143
  id="guido__btn-add-dynamic-content"
149
144
  class="btn btn-primary"
150
- ${T.BUTTON.name}="${L}">
145
+ ${T.BUTTON.name}="${E}">
151
146
  <${a.ICON} src="plus" class="icon icon-button color-primary">
152
147
  </${a.ICON}>
153
148
  ${this.api.translate("Add Dynamic Content")}
@@ -156,6 +151,6 @@ class f extends h {
156
151
  }
157
152
  }
158
153
  export {
159
- w as DynamicContentTagRegistry,
160
- f as DynamicContentUiElementExtension
154
+ b as DynamicContentTagRegistry,
155
+ w as DynamicContentUiElementExtension
161
156
  };
package/dist/guido.css CHANGED
@@ -1 +1 @@
1
- .gap-16[data-v-3b53a736],.gap-16[data-v-0e1b0c54]{gap:16px}[data-v-cd76c125] .in-button-v2__wrapper{line-height:0}[data-v-22226124] .in-segments-wrapper__button_selected,[data-v-22226124] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb;color:#0010ac;border-color:#0010ac}[data-v-2cb418af] .in-progress-wrapper__progress p span:last-child{display:none!important}[data-v-2cb418af] .in-progress-description-status{display:none!important}.view-options-wrapper[data-v-195ab6d4]{position:relative;display:inline-block}.new-tag[data-v-195ab6d4]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-195ab6d4] .guido__view-option-selection-desktop svg,[data-v-195ab6d4] .guido__view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-195ab6d4] .in-segments-wrapper__button_selected,[data-v-195ab6d4] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-195ab6d4] .in-tooltip-wrapper__icon{cursor:pointer}.editor-toolbar[data-v-173c3a40]{gap:4px}.version-history-item[data-v-ee4b9c3f]{flex-basis:200px}.version-history[data-v-64c52560]{gap:8px}.version-history__toolbar[data-v-64c52560]{gap:4px}.view-options-wrapper[data-v-d405ca59]{position:relative;display:inline-block}.new-tag[data-v-d405ca59]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-d405ca59] .guido__verion-history-view-option-selection-desktop svg,[data-v-d405ca59] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-d405ca59] .in-segments-wrapper__button_selected,[data-v-d405ca59] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-d405ca59] .in-tooltip-wrapper__icon{cursor:pointer}.editor-actions[data-v-4e2a4adb]{gap:4px}.header-wrapper[data-v-5c02dcc7]{min-width:1000px}.guido-loading__wrapper[data-v-07c4b2d8]{height:100%;top:75px!important;bottom:0!important}.guido-editor__wrapper[data-v-25780af6]{--ribbon-offset: 0px;position:relative;width:100%;height:calc(100vh - 128px - var(--ribbon-offset))}.guido-editor__container[data-v-25780af6]{width:100%;height:calc(100vh - 128px - var(--ribbon-offset))}.guido-editor__no-header[data-v-25780af6]{height:calc(100vh - 75px - var(--ribbon-offset))}[data-v-293f1c47] .in-breadcrumb-wrapper__links{cursor:pointer}.templates-wrapper[data-v-df672485]{gap:16px;grid-template-columns:repeat(3,1fr)}.templates-wrapper .template-wrapper[data-v-df672485]{cursor:pointer}.templates-wrapper .template-wrapper .template-container[data-v-df672485]{height:274px;padding:2px;transition:none}.templates-wrapper .template-wrapper .template-container.selected[data-v-df672485]{padding:1px}.templates-wrapper .template-wrapper .template-container .thumbnail[data-v-df672485]{object-fit:cover;transform:scale(1)}[data-v-43c617a7] .guido__verion-history-view-option-selection-desktop svg,[data-v-43c617a7] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-43c617a7] .in-segments-wrapper__button_selected,[data-v-43c617a7] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}.error-list[data-v-c3fd5d4b]{gap:16px}.desktop-browser-header[data-v-d86c5af5]{height:79px;min-height:79px}.desktop-browser-header__left[data-v-d86c5af5]{-webkit-user-drag:none;height:79px;width:378px}.desktop-browser-header__center[data-v-d86c5af5]{height:79px;background-repeat:repeat-x;background-size:auto 100%;background-position:left top}.desktop-browser-header__right[data-v-d86c5af5]{-webkit-user-drag:none;height:79px;width:112px}.desktop-preview[data-v-988f8da6]{min-width:602px;height:70vh;min-height:583px;border-radius:10px}.desktop-preview iframe[data-v-988f8da6]{min-height:504px}.iframe-wrapper[data-v-e0424e99]{width:258px}.iframe-scaled[data-v-e0424e99]{width:320px;height:124.0310077519%;transform:scale(.80625);transform-origin:top left}.cropped-text[data-v-eb3d05d7]{width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-preview-wrapper__phone[data-v-3f472f96]{width:282px}.mobile-preview-wrapper__phone img[data-v-3f472f96]{object-fit:cover;border-radius:44px}.mobile-preview-wrapper__content[data-v-3f472f96]{width:258px;height:450px;left:12px}[data-v-29b9af29] .vueperslides__bullets,[data-v-dd1a237a] .vueperslides__bullets{pointer-events:none!important}[data-v-dd1a237a] .vueperslides__parallax-wrapper{height:110px!important}[data-v-d073b1dc] .vueperslides__bullets{pointer-events:none!important}[data-v-d073b1dc] .vueperslides__parallax-wrapper{height:110px!important}
1
+ [data-v-cd76c125] .in-button-v2__wrapper{line-height:0}[data-v-22226124] .in-segments-wrapper__button_selected,[data-v-22226124] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb;color:#0010ac;border-color:#0010ac}[data-v-2cb418af] .in-progress-wrapper__progress p span:last-child{display:none!important}[data-v-2cb418af] .in-progress-description-status{display:none!important}.view-options-wrapper[data-v-195ab6d4]{position:relative;display:inline-block}.new-tag[data-v-195ab6d4]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-195ab6d4] .guido__view-option-selection-desktop svg,[data-v-195ab6d4] .guido__view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-195ab6d4] .in-segments-wrapper__button_selected,[data-v-195ab6d4] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-195ab6d4] .in-tooltip-wrapper__icon{cursor:pointer}.editor-toolbar[data-v-173c3a40],.editor-actions[data-v-4e2a4adb]{gap:4px}.header-wrapper[data-v-5c02dcc7]{min-width:1000px}.guido-loading__wrapper[data-v-07c4b2d8]{height:100%;top:75px!important;bottom:0!important}.guido-editor__wrapper[data-v-c3fe2732]{--ribbon-offset: 0px;position:relative;width:100%;height:calc(100vh - 128px - var(--ribbon-offset))}.guido-editor__container[data-v-c3fe2732]{width:100%;height:calc(100vh - 128px - var(--ribbon-offset))}.guido-editor__no-header[data-v-c3fe2732]{height:calc(100vh - 75px - var(--ribbon-offset))}.version-history-item[data-v-ee4b9c3f]{flex-basis:200px}.version-history[data-v-64c52560]{gap:8px}.version-history__toolbar[data-v-64c52560]{gap:4px}.view-options-wrapper[data-v-d405ca59]{position:relative;display:inline-block}.new-tag[data-v-d405ca59]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-d405ca59] .guido__verion-history-view-option-selection-desktop svg,[data-v-d405ca59] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-d405ca59] .in-segments-wrapper__button_selected,[data-v-d405ca59] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-d405ca59] .in-tooltip-wrapper__icon{cursor:pointer}.gap-16[data-v-3b53a736],.gap-16[data-v-0e1b0c54],.error-list[data-v-c3fd5d4b]{gap:16px}.desktop-browser-header[data-v-d86c5af5]{height:79px;min-height:79px}.desktop-browser-header__left[data-v-d86c5af5]{-webkit-user-drag:none;height:79px;width:378px}.desktop-browser-header__center[data-v-d86c5af5]{height:79px;background-repeat:repeat-x;background-size:auto 100%;background-position:left top}.desktop-browser-header__right[data-v-d86c5af5]{-webkit-user-drag:none;height:79px;width:112px}.desktop-preview[data-v-988f8da6]{min-width:602px;height:70vh;min-height:583px;border-radius:10px}.desktop-preview iframe[data-v-988f8da6]{min-height:504px}.iframe-wrapper[data-v-e0424e99]{width:258px}.iframe-scaled[data-v-e0424e99]{width:320px;height:124.0310077519%;transform:scale(.80625);transform-origin:top left}.cropped-text[data-v-eb3d05d7]{width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-preview-wrapper__phone[data-v-3f472f96]{width:282px}.mobile-preview-wrapper__phone img[data-v-3f472f96]{object-fit:cover;border-radius:44px}.mobile-preview-wrapper__content[data-v-3f472f96]{width:258px;height:450px;left:12px}[data-v-293f1c47] .in-breadcrumb-wrapper__links{cursor:pointer}.templates-wrapper[data-v-df672485]{gap:16px;grid-template-columns:repeat(3,1fr)}.templates-wrapper .template-wrapper[data-v-df672485]{cursor:pointer}.templates-wrapper .template-wrapper .template-container[data-v-df672485]{height:274px;padding:2px;transition:none}.templates-wrapper .template-wrapper .template-container.selected[data-v-df672485]{padding:1px}.templates-wrapper .template-wrapper .template-container .thumbnail[data-v-df672485]{object-fit:cover;transform:scale(1)}[data-v-43c617a7] .guido__verion-history-view-option-selection-desktop svg,[data-v-43c617a7] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-43c617a7] .in-segments-wrapper__button_selected,[data-v-43c617a7] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-7419ae06] .vueperslides__bullets,[data-v-796d193b] .vueperslides__bullets{pointer-events:none!important}[data-v-796d193b] .vueperslides__parallax-wrapper{height:110px!important}[data-v-cadfc82d] .vueperslides__bullets{pointer-events:none!important}[data-v-cadfc82d] .vueperslides__parallax-wrapper{height:110px!important}
package/dist/library.js CHANGED
@@ -1,14 +1,13 @@
1
- import { default as a } from "./components/Guido.vue.js";
2
- import { MessageType as f, ProductType as t } from "./@types/config/schemas.js";
3
- import "./@types/config/defaults.js";
4
- import { getValidationErrors as s, isValidConfig as d, parseConfig as g, parseConfigSafe as n, validateConfig as l } from "./@types/config/validator.js";
1
+ import { default as r } from "./components/Guido.vue.js";
2
+ import { getValidationErrors as i, isValidConfig as f, parseConfig as t, parseConfigSafe as p, validateConfig as s } from "./@types/config/validator.js";
3
+ import { MessageType as g, ProductType as n } from "./@types/config/schemas.js";
5
4
  export {
6
- a as Guido,
7
- f as MessageType,
8
- t as ProductType,
9
- s as getValidationErrors,
10
- d as isValidConfig,
11
- g as parseConfig,
12
- n as parseConfigSafe,
13
- l as validateConfig
5
+ r as Guido,
6
+ g as MessageType,
7
+ n as ProductType,
8
+ i as getValidationErrors,
9
+ f as isValidConfig,
10
+ t as parseConfig,
11
+ p as parseConfigSafe,
12
+ s as validateConfig
14
13
  };