@useinsider/guido 2.1.0-beta.04bd1f4 → 2.1.0-beta.071f320

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 (33) hide show
  1. package/dist/components/organisms/header/EditorActions.vue.js +8 -10
  2. package/dist/components/organisms/header/EditorActions.vue2.js +31 -40
  3. package/dist/components/organisms/onboarding/GenericOnboarding.vue.js +1 -1
  4. package/dist/components/organisms/onboarding/GenericOnboarding.vue2.js +1 -1
  5. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue.js +1 -1
  6. package/dist/components/organisms/onboarding/TextBlockOnboarding.vue2.js +2 -2
  7. package/dist/config/i18n/en/labels.json.js +3 -8
  8. package/dist/config/migrator/itemsBlockMigrator.js +134 -136
  9. package/dist/config/migrator/recommendationMigrator.js +40 -42
  10. package/dist/extensions/Blocks/Items/block.js +25 -45
  11. package/dist/extensions/Blocks/Items/iconsRegistry.js +5 -6
  12. package/dist/extensions/Blocks/Items/items.css.js +0 -48
  13. package/dist/extensions/Blocks/Recommendation/block.js +29 -49
  14. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +3 -4
  15. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +0 -48
  16. package/dist/extensions/Blocks/common-control.js +4 -12
  17. package/dist/guido.css +1 -1
  18. package/dist/src/components/Guido.vue.d.ts +1 -1
  19. package/dist/src/components/organisms/header/EditorActions.vue.d.ts +1 -1
  20. package/dist/src/components/organisms/header/HeaderWrapper.vue.d.ts +1 -1
  21. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -1
  22. package/dist/src/components/wrappers/WpModal.vue.d.ts +2 -2
  23. package/dist/src/extensions/Blocks/Items/block.d.ts +0 -1
  24. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +0 -1
  25. package/dist/src/extensions/Blocks/common-control.d.ts +0 -5
  26. package/package.json +1 -1
  27. package/dist/components/organisms/header/MigrationConfirmModal.vue.js +0 -17
  28. package/dist/components/organisms/header/MigrationConfirmModal.vue2.js +0 -41
  29. package/dist/extensions/Blocks/common-icons.js +0 -39
  30. package/dist/src/components/organisms/header/MigrationConfirmModal.vue.d.ts +0 -6
  31. package/dist/src/extensions/Blocks/common-icons.d.ts +0 -1
  32. package/dist/src/stores/template.d.ts +0 -3
  33. package/dist/stores/template.js +0 -9
@@ -1,23 +1,21 @@
1
1
  import l from "./EditorActions.vue2.js";
2
2
  /* empty css */
3
- import d from "../../../_virtual/_plugin-vue2_normalizer.js";
4
- var u = function() {
3
+ import r from "../../../_virtual/_plugin-vue2_normalizer.js";
4
+ var d = function() {
5
5
  var s, i, n, a;
6
- var o = this, e = o._self._c, t = o._self._setupProxy;
7
- return e("div", { staticClass: "d-f editor-actions" }, [t.isVersionHistoryButtonVisible ? e(t.InButtonV2, { attrs: { id: "guido__history-button", "left-icon": "line-architect-version-history", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isVersionHistoryButtonDisabled, "label-text-status": !1, "selected-status": t.editorStore.isVersionHistoryOpen, "tooltip-options": t.getTooltipOptions("guido__history-button"), "tooltip-text": t.versionHistoryTooltipText }, on: { click: t.handleVersionHistory } }) : o._e(), e(t.InButtonV2, { attrs: { id: "guido__export-button", "left-icon": "line-export", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isExportButtonDisabled, "label-text-status": !1, "loading-status": t.isExporting, "tooltip-options": t.getTooltipOptions("guido__export-button"), "tooltip-text": t.trans("newsletter.export") }, on: { click: t.handleExport } }), (i = (s = t.config) == null ? void 0 : s.features) != null && i.saveAsTemplate ? e(t.InButtonV2, { attrs: { id: "guido__save-as-button", "left-icon": "line-newsletter-save-as-template", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isSaveAsButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__save-as-button"), "tooltip-text": t.trans("newsletter.save-templates") }, on: { click: t.handleSaveAs } }) : o._e(), (a = (n = t.config) == null ? void 0 : n.features) != null && a.testMessage ? e(t.InButtonV2, { attrs: { id: "guido__test-button", "left-icon": "line-architect-test-journey", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isTestButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__test-button", { staticPosition: "bottom right" }), "tooltip-text": t.trans("newsletter.test-email") }, on: { click: t.testEmailClick } }) : o._e(), t.editorStore.isPreviewModeOpen ? o._e() : e(t.InButtonV2, { staticClass: "ml-3", attrs: { id: "guido__save-button", "label-text": "Save", "disabled-status": !t.isSaving && t.editorStore.isSaveButtonDisabled, "loading-status": t.isSaving }, on: { click: function(r) {
6
+ var e = this, o = e._self._c, t = e._self._setupProxy;
7
+ return o("div", { staticClass: "d-f editor-actions" }, [t.isVersionHistoryButtonVisible ? o(t.InButtonV2, { attrs: { id: "guido__history-button", "left-icon": "line-architect-version-history", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isVersionHistoryButtonDisabled, "label-text-status": !1, "selected-status": t.editorStore.isVersionHistoryOpen, "tooltip-options": t.getTooltipOptions("guido__history-button"), "tooltip-text": t.versionHistoryTooltipText }, on: { click: t.handleVersionHistory } }) : e._e(), o(t.InButtonV2, { attrs: { id: "guido__export-button", "left-icon": "line-export", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isExportButtonDisabled, "label-text-status": !1, "loading-status": t.isExporting, "tooltip-options": t.getTooltipOptions("guido__export-button"), "tooltip-text": t.trans("newsletter.export") }, on: { click: t.handleExport } }), (i = (s = t.config) == null ? void 0 : s.features) != null && i.saveAsTemplate ? o(t.InButtonV2, { attrs: { id: "guido__save-as-button", "left-icon": "line-newsletter-save-as-template", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isSaveAsButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__save-as-button"), "tooltip-text": t.trans("newsletter.save-templates") }, on: { click: t.handleSaveAs } }) : e._e(), (a = (n = t.config) == null ? void 0 : n.features) != null && a.testMessage ? o(t.InButtonV2, { attrs: { id: "guido__test-button", "left-icon": "line-architect-test-journey", styling: "ghost", type: "secondary", "disabled-status": t.editorStore.isTestButtonDisabled, "label-text-status": !1, "tooltip-options": t.getTooltipOptions("guido__test-button", { staticPosition: "bottom right" }), "tooltip-text": t.trans("newsletter.test-email") }, on: { click: t.testEmailClick } }) : e._e(), t.editorStore.isPreviewModeOpen ? e._e() : o(t.InButtonV2, { staticClass: "ml-3", attrs: { id: "guido__save-button", "label-text": "Save", "disabled-status": !t.isSaving && t.editorStore.isSaveButtonDisabled, "loading-status": t.isSaving }, on: { click: function(_) {
8
8
  return t.handleSave(!1);
9
- } } }), e(t.MigrationConfirmModal, { ref: "migrationModalRef", on: { confirm: function(r) {
10
- return t.executeSave(!1);
11
9
  } } })], 1);
12
- }, p = [], c = /* @__PURE__ */ d(
10
+ }, u = [], p = /* @__PURE__ */ r(
13
11
  l,
12
+ d,
14
13
  u,
15
- p,
16
14
  !1,
17
15
  null,
18
- "c2f87f0a"
16
+ "17dd4d8b"
19
17
  );
20
- const v = c.exports;
18
+ const v = p.exports;
21
19
  export {
22
20
  v as default
23
21
  };
@@ -1,50 +1,41 @@
1
- import { defineComponent as T, ref as n, computed as a } from "vue";
2
- import { useConfig as w } from "../../../composables/useConfig.js";
3
- import { useExport as O } from "../../../composables/useExport.js";
4
- import { useTestEmailClick as C } from "../../../composables/useGuidoActions.js";
5
- import { useSave as M } from "../../../composables/useSave.js";
6
- import { useTranslations as A } from "../../../composables/useTranslations.js";
7
- import { useVersionHistoryApi as b } from "../../../composables/useVersionHistoryApi.js";
8
- import { useEditorStore as k } from "../../../stores/editor.js";
9
- import { useTemplateStore as B } from "../../../stores/template.js";
10
- import { getTooltipOptions as j } from "../../../utils/tooltipUtils.js";
11
- import { InButtonV2 as D } from "@useinsider/design-system-vue";
12
- import I from "./MigrationConfirmModal.vue.js";
13
- const X = /* @__PURE__ */ T({
1
+ import { defineComponent as g, ref as u, computed as f } from "vue";
2
+ import { useConfig as E } from "../../../composables/useConfig.js";
3
+ import { useExport as h } from "../../../composables/useExport.js";
4
+ import { useTestEmailClick as w } from "../../../composables/useGuidoActions.js";
5
+ import { useSave as x } from "../../../composables/useSave.js";
6
+ import { useTranslations as T } from "../../../composables/useTranslations.js";
7
+ import { useVersionHistoryApi as O } from "../../../composables/useVersionHistoryApi.js";
8
+ import { useEditorStore as A } from "../../../stores/editor.js";
9
+ import { getTooltipOptions as C } from "../../../utils/tooltipUtils.js";
10
+ import { InButtonV2 as k } from "@useinsider/design-system-vue";
11
+ const J = /* @__PURE__ */ g({
14
12
  __name: "EditorActions",
15
- setup(P, { expose: H }) {
16
- const { config: m } = w(), { exportHtml: l } = O(), { save: p } = M(), { openVersionHistory: c, closeVersionHistory: u } = b(), e = k(), f = B(), s = A(), r = n(!1), i = n(!1), v = n(), S = C(), d = a(() => Object.values(f.migrations).some((o) => o > 0)), V = () => {
17
- if (e.isVersionHistoryOpen) {
18
- u();
13
+ setup(B, { expose: v }) {
14
+ const { config: n } = E(), { exportHtml: a } = h(), { save: l } = x(), { openVersionHistory: p, closeVersionHistory: c } = O(), o = A(), s = T(), r = u(!1), i = u(!1), d = w(), y = () => {
15
+ if (o.isVersionHistoryOpen) {
16
+ c();
19
17
  return;
20
18
  }
21
- c();
22
- }, _ = async () => {
23
- r.value = !0, await l(), r.value = !1;
24
- }, h = () => {
25
- e.isSaveAsTemplateDrawerOpen = !0;
26
- }, x = a(() => e.isVersionHistoryOpen ? s("newsletter.close-version-history") : s("newsletter.version-history")), E = a(
19
+ p();
20
+ }, H = async () => {
21
+ r.value = !0, await a(), r.value = !1;
22
+ }, V = () => {
23
+ o.isSaveAsTemplateDrawerOpen = !0;
24
+ }, S = f(() => o.isVersionHistoryOpen ? s("newsletter.close-version-history") : s("newsletter.version-history")), _ = f(
27
25
  () => {
28
- var o, t;
29
- return ((t = (o = m.value) == null ? void 0 : o.features) == null ? void 0 : t.versionHistory) && !e.isPreviewModeOpen;
26
+ var t, e;
27
+ return ((e = (t = n.value) == null ? void 0 : t.features) == null ? void 0 : e.versionHistory) && !o.isPreviewModeOpen;
30
28
  }
31
- ), y = async (o) => {
32
- i.value = !0, e.loadingStatus = !0;
33
- const t = await p(o);
34
- return i.value = !1, (o || !t) && (e.loadingStatus = !1), t;
35
- }, g = (o) => {
36
- var t;
37
- if (!o && d.value) {
38
- (t = v.value) == null || t.open();
39
- return;
40
- }
41
- y(o);
29
+ ), m = async (t) => {
30
+ i.value = !0, o.loadingStatus = !0;
31
+ const e = await l(t);
32
+ return i.value = !1, (t || !e) && (o.loadingStatus = !1), e;
42
33
  };
43
- return H({
44
- handleSave: g
45
- }), { __sfc: !0, config: m, exportHtml: l, save: p, openVersionHistory: c, closeVersionHistory: u, editorStore: e, templateStore: f, trans: s, isExporting: r, isSaving: i, migrationModalRef: v, testEmailClick: S, hasMigrations: d, handleVersionHistory: V, handleExport: _, handleSaveAs: h, versionHistoryTooltipText: x, isVersionHistoryButtonVisible: E, executeSave: y, handleSave: g, getTooltipOptions: j, InButtonV2: D, MigrationConfirmModal: I };
34
+ return v({
35
+ handleSave: m
36
+ }), { __sfc: !0, config: n, exportHtml: a, save: l, openVersionHistory: p, closeVersionHistory: c, editorStore: o, trans: s, isExporting: r, isSaving: i, testEmailClick: d, handleVersionHistory: y, handleExport: H, handleSaveAs: V, versionHistoryTooltipText: S, isVersionHistoryButtonVisible: _, handleSave: m, getTooltipOptions: C, InButtonV2: k };
46
37
  }
47
38
  });
48
39
  export {
49
- X as default
40
+ J as default
50
41
  };
@@ -13,7 +13,7 @@ var l = function() {
13
13
  p,
14
14
  !1,
15
15
  null,
16
- "d3c52b44"
16
+ "29b9af29"
17
17
  );
18
18
  const S = _.exports;
19
19
  export {
@@ -32,7 +32,7 @@ const S = /* @__PURE__ */ l({
32
32
  },
33
33
  {
34
34
  classes: "guido-onboarding-stripes",
35
- right: "450px",
35
+ right: "426px",
36
36
  bottom: "38px",
37
37
  position: "Right Bottom",
38
38
  title: e("email-editor.onboarding-stripes-title"),
@@ -13,7 +13,7 @@ var g = function() {
13
13
  b,
14
14
  !1,
15
15
  null,
16
- "a408dcea"
16
+ "d073b1dc"
17
17
  );
18
18
  const f = p.exports;
19
19
  export {
@@ -20,7 +20,7 @@ const y = /* @__PURE__ */ u({
20
20
  }), c = a(() => [
21
21
  {
22
22
  classes: "guido-text-block-onboarding-settings",
23
- right: "450px",
23
+ right: "426px",
24
24
  top: e.value.settings.top,
25
25
  position: e.value.settings.position,
26
26
  title: i("email-editor.onboarding-text-block-title"),
@@ -36,7 +36,7 @@ const y = /* @__PURE__ */ u({
36
36
  },
37
37
  {
38
38
  classes: "guido-text-block-onboarding-dynamic",
39
- right: "450px",
39
+ right: "426px",
40
40
  top: e.value.dynamic.top,
41
41
  position: e.value.dynamic.position,
42
42
  title: i("email-editor.onboarding-dynamic-content-title"),
@@ -1,12 +1,7 @@
1
- const e = "Items", o = {
1
+ const l = {
2
2
  "Global Styles & Layout": "Global Styles and Layout",
3
- "Structures & Modules": "Structures and Modules",
4
- "Recommendation Block": "Recommendation",
5
- Items: e,
6
- "This block is switched from the Old Version to the New Version. We recommend you check the Recommendation block and test your message to ensure it works properly.": "This block is switched from the Old Version to the New Version. We recommend you check the Recommendation block and test your message to ensure it works properly.",
7
- "This block is switched from the Old Version to the New Version. We recommend you check the Items block and test your message to ensure it works properly.": "This block is switched from the Old Version to the New Version. We recommend you check the Items block and test your message to ensure it works properly."
3
+ "Structures & Modules": "Structures and Modules"
8
4
  };
9
5
  export {
10
- e as Items,
11
- o as default
6
+ l as default
12
7
  };
@@ -1,12 +1,10 @@
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 = {
1
+ var v = Object.defineProperty;
2
+ var B = (e, t, r) => t in e ? v(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
+ var M = (e, t, r) => B(e, typeof t != "symbol" ? t + "" : t, r);
4
+ import { productPairs as U } from "../../extensions/Blocks/Items/enums/productEnums.js";
5
+ import { ItemInCartOptions as T, DefaultConfigValues as g, SETTINGS_ENUMS as u } from "../../extensions/Blocks/Items/enums/settingsEnums.js";
6
+ import { getDefaultTemplate as K } from "../../extensions/Blocks/Items/template.js";
7
+ const w = {
10
8
  img: {
11
9
  pairsKey: "imageSrc",
12
10
  defaultKey: "DEFAULT",
@@ -73,122 +71,122 @@ const q = {
73
71
  isArray: !1
74
72
  }
75
73
  };
76
- function O() {
74
+ function F() {
77
75
  return String(Date.now() + Math.floor(Math.random() * 1e3));
78
76
  }
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;
77
+ function q(e) {
78
+ return e ? {
79
+ CartItems: u.ITEMS_TYPE.CART_ITEMS,
80
+ BrowsedItems: u.ITEMS_TYPE.BROWSED_ITEMS,
81
+ PurchasedItems: u.ITEMS_TYPE.PURCHASED_ITEMS,
82
+ CART_ITEMS: u.ITEMS_TYPE.CART_ITEMS,
83
+ BROWSED_ITEMS: u.ITEMS_TYPE.BROWSED_ITEMS,
84
+ PURCHASED_ITEMS: u.ITEMS_TYPE.PURCHASED_ITEMS
85
+ }[e] || u.ITEMS_TYPE.CART_ITEMS : u.ITEMS_TYPE.CART_ITEMS;
88
86
  }
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);
87
+ function R(e) {
88
+ var a;
89
+ const t = (_, c) => _ == null ? c : _ === "1" || _ === "true", r = (_, c) => _ || c, l = e["data-type"] || e["data-source"], i = q(l), n = T[i];
90
+ let o = e["data-cart_items_select_control_value"] || ((a = n == null ? void 0 : n[0]) == null ? void 0 : a.value) || g.cartItemsSelectControlValue;
91
+ if (o && !o.includes("{{") && /^\d+$/.test(o)) {
92
+ const _ = parseInt(o) - 1, c = T[i];
93
+ c && c[_] && (o = c[_].value);
96
94
  }
97
95
  return {
98
96
  initialized: !0,
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"],
97
+ blockInstanceId: r(e["data-block-instance-id"], F()),
98
+ source: i,
99
+ type: i,
100
+ itemsSelectValue: o,
101
+ orientation: e["data-card_orientation_control_value"] || u.ORIENTATION.VERTICAL,
102
+ nameTrimming: t(e["data-product_name_control_trim"], !0),
103
+ priceHideDiscount: t(e["data-product_price_control_nodup"], !0),
104
+ priceFormatted: t(e["data-product_price_control_formated"], !0),
105
+ priceSinglePrice: t(e["data-product_price_control_single_price"], !1),
106
+ priceCurrencySymbol: r(
107
+ e["data-product_price_control_currency_symbol"],
110
108
  g.productPriceCurrencySymbolControlValue
111
109
  ),
112
- priceCurrencyLocation: o(
113
- r["data-product_price_currency_location"],
110
+ priceCurrencyLocation: r(
111
+ e["data-product_price_currency_location"],
114
112
  g.productPriceCurrencyLocationControlValue
115
113
  ),
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)
114
+ priceOrientation: e["data-product_original_price_control_orientation"] || "horizontal",
115
+ quantityControlEnabled: t(e["data-product_quantity_control_enabled"], !0),
116
+ buttonLink: r(e["data-product_button_link"], g.productButtonLinkControlValue),
117
+ imageLink: r(e["data-product_image_link"], g.productImageLinkControlValue),
118
+ buttonLabel: r(e["data-product_button_control_label"], "Buy"),
119
+ buttonFullWidth: t(e["data-product_button_control_atw"], !0),
120
+ imageVisible: t(e["data-product_image_control_enabled"], !0),
121
+ nameVisible: t(e["data-product_name_control_enabled"], !0),
122
+ quantityVisible: t(e["data-product_quantity_control_enabled"], !0),
123
+ priceVisible: t(e["data-product_price_control_enabled"], !0),
124
+ originalPriceVisible: t(e["data-product_original_price_control_enabled"], !0),
125
+ buttonVisible: t(e["data-product_button_control_enabled"], !0)
128
126
  };
129
127
  }
130
- const x = {
128
+ const O = {
131
129
  ins_apr: "CART_ITEMS",
132
130
  browsed_item: "BROWSED_ITEMS",
133
131
  purchased_item: "PURCHASED_ITEMS"
134
132
  };
135
- function V(r, t) {
136
- const o = {
133
+ function $(e, t) {
134
+ const r = {
137
135
  CART_ITEMS: `{{Abandoned Cart Item (${t}) Image}}`,
138
136
  BROWSED_ITEMS: `{{Browsed Item (${t}) Image}}`,
139
137
  PURCHASED_ITEMS: `{{Purchased Item (${t}) Image}}`
140
138
  };
141
- return o[r] || o.CART_ITEMS;
139
+ return r[e] || r.CART_ITEMS;
142
140
  }
143
- function N(r, t) {
144
- const o = {
141
+ function x(e, t) {
142
+ const r = {
145
143
  CART_ITEMS: `{{Abandoned Cart Item (${t}) Url}}`,
146
144
  BROWSED_ITEMS: `{{Browsed Item (${t}) Url}}`,
147
145
  PURCHASED_ITEMS: `{{Purchased Item (${t}) Url}}`
148
146
  };
149
- return o[r] || o.CART_ITEMS;
147
+ return r[e] || r.CART_ITEMS;
150
148
  }
151
- class z {
149
+ class V {
152
150
  constructor() {
153
151
  M(this, "parser");
154
152
  this.parser = new DOMParser();
155
153
  }
156
154
  migrate(t) {
157
155
  try {
158
- let o = this.removeJinjaConditionals(t);
159
- o = this.replaceTemplateVariables(o);
160
- const c = this.parser.parseFromString(o, "text/html"), a = c.querySelectorAll(
156
+ let r = this.removeJinjaConditionals(t);
157
+ r = this.replaceTemplateVariables(r);
158
+ const l = this.parser.parseFromString(r, "text/html"), i = l.querySelectorAll(
161
159
  "td.esd-cart-items-block, td.esd-browsed-items-block, td.esd-purchased-items-block"
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({
165
- orientation: e.orientation,
166
- itemsType: e.itemsType,
167
- itemId: e.itemId,
168
- currencySymbol: e.currencySymbol,
169
- currencyLocation: e.currencyLocation,
170
- formattedPrice: e.formattedPrice,
171
- configBlockAttributes: e.configBlockAttributes,
160
+ );
161
+ return i.length === 0 ? (console.warn("ItemsBlockMigrator: No blocks found with items block selectors"), r) : (i.forEach((n) => {
162
+ const o = this.extractConfiguration(n), a = K({
163
+ orientation: o.orientation,
164
+ itemsType: o.itemsType,
165
+ itemId: o.itemId,
166
+ currencySymbol: o.currencySymbol,
167
+ currencyLocation: o.currencyLocation,
168
+ formattedPrice: o.formattedPrice,
169
+ configBlockAttributes: o.configBlockAttributes,
172
170
  migrate: !0,
173
- nameStyles: e.nameStyles,
174
- buttonStyles: e.buttonStyles,
175
- priceStyles: e.priceStyles,
176
- originalPriceStyles: e.originalPriceStyles,
177
- quantityStyles: e.quantityStyles,
178
- nodeConfig: R(e.configBlockAttributes)
179
- }), d = this.parser.parseFromString(
180
- `<table><tbody><tr>${i}</tr></tbody></table>`,
171
+ nameStyles: o.nameStyles,
172
+ buttonStyles: o.buttonStyles,
173
+ priceStyles: o.priceStyles,
174
+ originalPriceStyles: o.originalPriceStyles,
175
+ quantityStyles: o.quantityStyles,
176
+ nodeConfig: R(o.configBlockAttributes)
177
+ }), c = this.parser.parseFromString(
178
+ `<table><tbody><tr>${a}</tr></tbody></table>`,
181
179
  "text/html"
182
180
  ).querySelector("td");
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);
181
+ if (c && n.parentNode) {
182
+ const f = R(o.configBlockAttributes);
183
+ c.setAttribute("esd-ext-config", JSON.stringify(f));
184
+ const d = c.querySelector("esd-config-block");
185
+ d && d.remove(), n.parentNode.replaceChild(c, n);
188
186
  }
189
- }), c.documentElement.outerHTML);
190
- } catch (o) {
191
- return console.error("ItemsBlockMigrator failed:", o), t;
187
+ }), l.documentElement.outerHTML);
188
+ } catch (r) {
189
+ return console.error("ItemsBlockMigrator failed:", r), t;
192
190
  }
193
191
  }
194
192
  /**
@@ -199,18 +197,18 @@ class z {
199
197
  */
200
198
  extractConfiguration(t) {
201
199
  var C, D, P;
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"];
200
+ const r = ((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", i = parseInt(l) - 1, n = T[r], o = ((P = n == null ? void 0 : n[i]) == null ? void 0 : P.value) || n[0].value, a = t.querySelector('[product-attr="price"]'), _ = (a == null ? void 0 : a.getAttribute("data-currency_symbol")) || "USD", f = ((a == null ? void 0 : a.getAttribute("data-curency")) || "before") === "after" ? "1" : "0", d = (a == null ? void 0 : a.getAttribute("data-formated")) !== "false", s = this.extractConfigBlockAttributes(t, r, l), S = s["data-card_orientation_control_value"];
203
201
  let b;
204
202
  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;
203
+ const p = t.querySelector('a[product-attr="name"]'), I = (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, E = t.querySelector('[product-attr="quantity"]'), L = (E == null ? void 0 : E.getAttribute("style")) || void 0;
206
204
  return {
207
205
  orientation: b,
208
- itemsType: o,
209
- itemId: l,
210
- currencySymbol: i,
211
- currencyLocation: d,
212
- formattedPrice: p,
213
- configBlockAttributes: u,
206
+ itemsType: r,
207
+ itemId: o,
208
+ currencySymbol: _,
209
+ currencyLocation: f,
210
+ formattedPrice: d,
211
+ configBlockAttributes: s,
214
212
  nameStyles: I,
215
213
  buttonStyles: m,
216
214
  priceStyles: h,
@@ -225,27 +223,27 @@ class z {
225
223
  * @param itemsType - The type of items (CART_ITEMS, BROWSED_ITEMS, PURCHASED_ITEMS)
226
224
  * @param itemNumber - The item number (1-based index)
227
225
  */
228
- extractConfigBlockAttributes(t, o, c) {
229
- const a = t.querySelector("esd-config-block"), n = {};
230
- if (!a)
226
+ extractConfigBlockAttributes(t, r, l) {
227
+ const i = t.querySelector("esd-config-block"), n = {};
228
+ if (!i)
231
229
  return this.getDefaultConfigBlockAttributes();
232
- if (Array.from(a.attributes).forEach((e) => {
233
- e.name.startsWith("data-") && (n[e.name] = e.value);
230
+ if (Array.from(i.attributes).forEach((a) => {
231
+ a.name.startsWith("data-") && (n[a.name] = a.value);
234
232
  }), n["data-cart_items_select_control_value"]) {
235
- const e = n["data-cart_items_select_control_value"];
236
- if (/^\d+$/.test(e)) {
237
- const i = parseInt(e) - 1, _ = T[o];
238
- _ && _[i] && (n["data-cart_items_select_control_value"] = _[i].value);
233
+ const a = n["data-cart_items_select_control_value"];
234
+ if (/^\d+$/.test(a)) {
235
+ const _ = parseInt(a) - 1, c = T[r];
236
+ c && c[_] && (n["data-cart_items_select_control_value"] = c[_].value);
239
237
  }
240
238
  }
241
239
  if (n["data-product_price_control_curency"]) {
242
- const e = n["data-product_price_control_curency"];
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;
240
+ const a = n["data-product_price_control_curency"];
241
+ let _ = a;
242
+ a === "before" ? _ = "0" : a === "after" && (_ = "1"), n["data-product_price_control_curency"] = _, n["data-product_price_currency_location"] = _;
245
243
  }
246
244
  (!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;
245
+ const o = { ...this.getDefaultConfigBlockAttributes(), ...n };
246
+ return o["data-type"] = r, o["data-source"] = r, o["data-product_image_link"] = $(r, l), o["data-product_button_link"] = x(r, l), o;
249
247
  }
250
248
  /**
251
249
  * Returns default esd-config-block attributes based on the old template structure
@@ -305,17 +303,17 @@ class z {
305
303
  * contains display condition Jinja scripts that should NOT be removed.
306
304
  */
307
305
  removeJinjaConditionals(t) {
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(
306
+ const r = "__ESD_DISPLAY_CONDITIONS_PLACEHOLDER__", l = t.match(/esd-custom-display-conditions="[^"]*"/);
307
+ let i = l ? t.replace(l[0], r) : t;
308
+ return i = i.replace(
311
309
  /\{%\s*if\s+(ins_apr|browsed_item|purchased_item)_total_product_kind\s*(&gt;|>)\s*\d+\s*%\}/g,
312
310
  ""
313
- ), a = a.replace(
311
+ ), i = i.replace(
314
312
  /\{%\s*if\s+(ins_apr|browsed_item|purchased_item)_price_\d+\s*(!&#61;|!=)\s*\1_originalprice_\d+\s*%\}/g,
315
313
  ""
316
- ), a = a.replace(/\{%\s*endif\s*%\}/g, ""), c && (a = a.replace(o, c[0])), a = a.replace(/\n\s*\n\s*\n/g, `
314
+ ), i = i.replace(/\{%\s*endif\s*%\}/g, ""), l && (i = i.replace(r, l[0])), i = i.replace(/\n\s*\n\s*\n/g, `
317
315
 
318
- `), a;
316
+ `), i;
319
317
  }
320
318
  /**
321
319
  * Replaces template variables with default values from productPairs
@@ -327,32 +325,32 @@ class z {
327
325
  * - {{purchased_item_formattedprice_5}} → '1,490.49' (PURCHASED_ITEMS)
328
326
  */
329
327
  replaceTemplateVariables(t) {
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+)$/);
328
+ const { PAIRS_FOR_EXTENSION: r } = U;
329
+ return t.replace(/{{([^}]+)}}/g, (l, i) => {
330
+ const n = i.match(/^(ins_apr|browsed_item|purchased_item)_([a-z_]+)_(\d+)$/);
333
331
  if (!n)
334
- return 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;
332
+ return l;
333
+ const [, o, a, _] = n, c = O[o];
334
+ if (!c)
335
+ return console.warn(`Unknown variable prefix: ${o}`), l;
336
+ const f = w[a];
337
+ if (!f)
338
+ return console.warn(`Unknown variable suffix mapping for: ${a}`), l;
339
+ const { pairsKey: d, defaultKey: s, isArray: S } = f, p = r[d][c];
340
+ if (!p)
341
+ return console.warn(`No data found for: ${d}.${c}`), l;
344
342
  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);
343
+ const y = parseInt(_) - 1, m = p[s];
344
+ return Array.isArray(m) && m[y] ? m[y] : (console.warn(`Array value not found: ${d}.${c}.${s}[${y}]`), l);
347
345
  }
348
- const I = y[u];
349
- return I !== void 0 ? String(I) : (console.warn(`Default value not found: ${p}.${_}.${u}`), c);
346
+ const I = p[s];
347
+ return I !== void 0 ? String(I) : (console.warn(`Default value not found: ${d}.${c}.${s}`), l);
350
348
  });
351
349
  }
352
350
  }
353
- function Q(r) {
354
- return new z().migrate(r);
351
+ function G(e) {
352
+ return new V().migrate(e);
355
353
  }
356
354
  export {
357
- Q as migrateItemsBlock
355
+ G as migrateItemsBlock
358
356
  };