@useinsider/guido 1.0.3-beta.18f9e49 → 1.0.3-beta.193d365

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 (126) hide show
  1. package/README.md +7 -20
  2. package/dist/components/Guido.vue.js +10 -14
  3. package/dist/components/Guido.vue2.js +20 -20
  4. package/dist/components/organisms/header/HeaderWrapper.vue.js +8 -10
  5. package/dist/components/organisms/header/HeaderWrapper.vue2.js +13 -14
  6. package/dist/components/organisms/header/LeftSlot.vue.js +1 -1
  7. package/dist/components/organisms/header/LeftSlot.vue2.js +15 -15
  8. package/dist/components/organisms/header/RightSlot.vue.js +10 -12
  9. package/dist/components/organisms/header/RightSlot.vue2.js +17 -17
  10. package/dist/components/organisms/onboarding/NewVersionPopup.vue.js +9 -9
  11. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +17 -30
  12. package/dist/components/organisms/onboarding/OnboardingWrapper.vue.js +10 -12
  13. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +18 -19
  14. package/dist/composables/usePartner.js +9 -5
  15. package/dist/config/migrator/index.js +6 -7
  16. package/dist/enums/defaults.js +4 -6
  17. package/dist/enums/onboarding.js +1 -2
  18. package/dist/extensions/Blocks/Recommendation/block.js +3 -6
  19. package/dist/extensions/Blocks/Recommendation/control.js +40 -69
  20. package/dist/extensions/Blocks/Recommendation/extension.js +7 -42
  21. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +22 -107
  22. package/dist/extensions/Blocks/Recommendation/template.js +200 -0
  23. package/dist/extensions/Blocks/common-control.js +43 -125
  24. package/dist/guido.css +1 -1
  25. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +100 -307
  26. package/dist/services/stripoApi.js +1 -1
  27. package/dist/src/@types/generic.d.ts +0 -8
  28. package/dist/src/components/Guido.vue.d.ts +0 -2
  29. package/dist/src/components/organisms/header/HeaderWrapper.vue.d.ts +1 -3
  30. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -3
  31. package/dist/src/components/organisms/onboarding/NewVersionPopup.vue.d.ts +1 -3
  32. package/dist/src/components/organisms/onboarding/OnboardingWrapper.vue.d.ts +1 -3
  33. package/dist/src/composables/usePartner.d.ts +1 -0
  34. package/dist/src/enums/onboarding.d.ts +0 -1
  35. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +0 -1
  36. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +0 -6
  37. package/dist/src/extensions/Blocks/Recommendation/template.d.ts +6 -0
  38. package/dist/src/extensions/Blocks/common-control.d.ts +0 -21
  39. package/dist/src/stores/config.d.ts +0 -3
  40. package/dist/src/utils/dateUtil.d.ts +0 -21
  41. package/dist/static/styles/components/narrow-panel.css.js +0 -10
  42. package/dist/static/styles/customEditorStyle.css.js +0 -5
  43. package/dist/utils/dateUtil.js +3 -24
  44. package/package.json +2 -2
  45. package/dist/config/migrator/recommendationMigrator.js +0 -293
  46. package/dist/enums/date.js +0 -6
  47. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
  48. package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
  49. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  50. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  51. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  52. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  53. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  54. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  55. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  56. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  57. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  58. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  59. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  60. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  61. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  62. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  63. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  64. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  65. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  66. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  67. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  68. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  69. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  70. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  71. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  72. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  73. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  74. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  75. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  76. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  77. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  78. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  79. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  80. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  81. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  82. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  83. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
  84. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
  85. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
  86. package/dist/src/config/migrator/recommendationMigrator.d.ts +0 -1
  87. package/dist/src/enums/date.d.ts +0 -4
  88. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
  89. package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +0 -51
  90. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  91. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  92. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  93. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  94. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  95. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  96. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  97. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  98. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  99. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  100. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  101. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  102. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  103. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  104. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  105. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  106. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  107. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  108. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  109. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  110. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  111. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  112. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  113. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  114. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  115. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  116. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  117. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  118. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  119. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  120. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  121. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  122. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  123. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
  124. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
  125. package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +0 -16
  126. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
@@ -1,25 +1,24 @@
1
- import { defineComponent as b, computed as e, onMounted as O, watch as t } from "vue";
2
- import { usePartner as u } from "../../../composables/usePartner.js";
3
- import { useEditorStore as v } from "../../../stores/editor.js";
4
- import { useOnboardingStore as l } from "../../../stores/onboarding.js";
5
- import { usePreviewStore as y } from "../../../stores/preview.js";
6
- import S from "./AMPOnboarding.vue.js";
7
- import h from "./GenericOnboarding.vue.js";
1
+ import { defineComponent as g, computed as e, onMounted as b, watch as t } from "vue";
2
+ import { usePartner as O } from "../../../composables/usePartner.js";
3
+ import { useEditorStore as u } from "../../../stores/editor.js";
4
+ import { useOnboardingStore as v } from "../../../stores/onboarding.js";
5
+ import { usePreviewStore as l } from "../../../stores/preview.js";
6
+ import y from "./AMPOnboarding.vue.js";
7
+ import S from "./GenericOnboarding.vue.js";
8
8
  import w from "./NewVersionPopup.vue.js";
9
9
  import P from "./TextBlockOnboarding.vue.js";
10
- import _ from "./VersionHistoryOnboarding.vue.js";
11
- const F = /* @__PURE__ */ b({
10
+ import h from "./VersionHistoryOnboarding.vue.js";
11
+ const E = /* @__PURE__ */ g({
12
12
  __name: "OnboardingWrapper",
13
- emits: ["onboarding-finished"],
14
- setup(A, { emit: f }) {
15
- const o = l(), r = v(), s = y(), { isTestPartner: a } = u(), p = e(() => r.isStripoInitialized), d = e(() => a()), m = [
13
+ setup(_) {
14
+ const o = v(), r = u(), s = l(), { isTestPartner: a } = O(), p = e(() => r.isStripoInitialized), d = e(() => a()), m = [
16
15
  { type: "newVersionPopup", component: w },
17
- { type: "genericOnboarding", component: h },
16
+ { type: "genericOnboarding", component: S },
18
17
  { type: "textBlockOnboarding", component: P },
19
- { type: "versionHistoryOnboarding", component: _ },
20
- { type: "ampOnboarding", component: S }
21
- ], c = (n) => d.value || !p.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n), g = e(() => m.filter((n) => c(n.type)));
22
- return O(async () => {
18
+ { type: "versionHistoryOnboarding", component: h },
19
+ { type: "ampOnboarding", component: y }
20
+ ], c = (n) => d.value || !p.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n), f = e(() => m.filter((n) => c(n.type)));
21
+ return b(async () => {
23
22
  await o.fetchUserModalState();
24
23
  }), t(
25
24
  () => r.isVersionHistoryOpen,
@@ -36,9 +35,9 @@ const F = /* @__PURE__ */ b({
36
35
  (n) => {
37
36
  !n && o.isActive("ampOnboarding") && o.close("ampOnboarding");
38
37
  }
39
- ), { __sfc: !0, emit: f, onboardingStore: o, editorStore: r, previewStore: s, isTestPartner: a, isStripoReady: p, isTestPartnerActive: d, onboardingConfigs: m, shouldShow: c, visibleOnboardings: g };
38
+ ), { __sfc: !0, onboardingStore: o, editorStore: r, previewStore: s, isTestPartner: a, isStripoReady: p, isTestPartnerActive: d, onboardingConfigs: m, shouldShow: c, visibleOnboardings: f };
40
39
  }
41
40
  });
42
41
  export {
43
- F as default
42
+ E as default
44
43
  };
@@ -1,18 +1,22 @@
1
- import { TEST_PARTNER_LIST as r, DefaultProductType as o, ProductIds as n } from "../enums/defaults.js";
2
- const i = () => {
1
+ import { ProductIds as n, TEST_PARTNER_LIST as o, DefaultProductType as s } from "../enums/defaults.js";
2
+ const p = () => {
3
3
  const e = () => window.location.hostname.split(".")[0] || "";
4
4
  return {
5
5
  getPartnerName: e,
6
6
  getProductType: () => {
7
- const t = window.location.pathname.split("/").filter(Boolean)[0] || o;
7
+ const t = window.location.pathname.split("/").filter(Boolean)[0] || s;
8
8
  return n[t] || 0;
9
9
  },
10
10
  isTestPartner: () => {
11
11
  const t = e();
12
- return r.includes(t);
12
+ return o.includes(t);
13
+ },
14
+ isUnsubscribePage: () => {
15
+ var t, r;
16
+ return ((r = (t = window.GuidoConfig) == null ? void 0 : t.partner) == null ? void 0 : r.productType) === n.unsubscribePages;
13
17
  }
14
18
  };
15
19
  };
16
20
  export {
17
- i as usePartner
21
+ p as usePartner
18
22
  };
@@ -1,12 +1,11 @@
1
- import { migrateCheckbox as m } from "./checkboxMigrator.js";
2
- import { migrateCouponBlock as o } from "./couponBlockMigrator.js";
1
+ import { migrateCheckbox as o } from "./checkboxMigrator.js";
2
+ import { migrateCouponBlock as m } from "./couponBlockMigrator.js";
3
3
  import { migrateRadioButton as i } from "./radioButtonMigrator.js";
4
- import { migrateRecommendation as e } from "./recommendationMigrator.js";
5
- import { migrateUnsubscribe as a } from "./unsubscribeMigrator.js";
6
- const s = async (t) => {
4
+ import { migrateUnsubscribe as e } from "./unsubscribeMigrator.js";
5
+ const c = async (t) => {
7
6
  let r = t;
8
- return r = m(r), r = i(r), r = await a(r), r = o(r), r = e(r), r;
7
+ return r = o(r), r = i(r), r = await e(r), r = m(r), r;
9
8
  };
10
9
  export {
11
- s as migrate
10
+ c as migrate
12
11
  };
@@ -1,6 +1,5 @@
1
1
  const e = {
2
2
  translationsPath: "window.trans.en",
3
- migrationDate: 1759696858,
4
3
  emailHeader: {
5
4
  senderName: "",
6
5
  subject: ""
@@ -15,14 +14,13 @@ const e = {
15
14
  features: {
16
15
  dynamicContent: !0,
17
16
  saveAsTemplate: !0,
18
- versionHistory: !0,
19
- testMessage: !0
17
+ versionHistory: !0
20
18
  },
21
19
  useHeader: !0
22
20
  }, t = {
23
21
  promotional: 1,
24
22
  transactional: 2
25
- }, a = "email", o = "Guido User", s = t.promotional, n = 2, i = {
23
+ }, a = "email", o = "Guido User", n = t.promotional, s = 2, i = {
26
24
  email: 60,
27
25
  architect: 49,
28
26
  unsubscribePages: 97
@@ -60,10 +58,10 @@ const e = {
60
58
  ];
61
59
  export {
62
60
  e as DefaultGuidoConfig,
63
- s as DefaultMessageType,
61
+ n as DefaultMessageType,
64
62
  a as DefaultProductType,
65
63
  o as DefaultUsername,
66
- n as EditorType,
64
+ s as EditorType,
67
65
  i as ProductIds,
68
66
  u as TEST_PARTNER_LIST,
69
67
  t as TemplateTypes
@@ -2,8 +2,7 @@ const e = [
2
2
  ".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-0.ng-star-inserted",
3
3
  ".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-1.ng-star-inserted",
4
4
  ".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-2.ng-star-inserted"
5
- ], t = "https://academy.useinsider.com/docs/email-drag-drop-editor";
5
+ ];
6
6
  export {
7
- t as ACADEMY_LINK,
8
7
  e as SERVICE_HOVER_SELECTORS
9
8
  };
@@ -1,10 +1,7 @@
1
1
  import { Block as e, BlockCompositionType as t } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { getDefaultTemplate as o } from "./templates/blockTemplate.js";
2
+ import { getDefaultTemplate as o } from "./template.js";
3
3
  const n = "recommendation-block";
4
- class m extends e {
5
- constructor() {
6
- super();
7
- }
4
+ class c extends e {
8
5
  getId() {
9
6
  return n;
10
7
  }
@@ -26,5 +23,5 @@ class m extends e {
26
23
  }
27
24
  export {
28
25
  n as BLOCK_ID,
29
- m as RecommendationBlock
26
+ c as RecommendationBlock
30
27
  };
@@ -1,14 +1,11 @@
1
1
  var _ = Object.defineProperty;
2
- var R = (s, n, e) => n in s ? _(s, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[n] = e;
3
- var r = (s, n, e) => R(s, typeof n != "symbol" ? n + "" : n, e);
4
- import { currencyDecimalCounts as l, currencyOperators as c, currencyLocationMaps as h } from "../../../enums/extensions/recommendationBlock.js";
5
- import { UEAttr as m, ModificationDescription as S } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
6
- import { CommonControl as g } from "../common-control.js";
7
- import { useRecommendationExtensionStore as O } from "./store/recommendation.js";
8
- import { prepareProductRows as p } from "./templates/blockTemplate.js";
9
- import { DEFAULT_CARD_COMPOSITION as C, getDefaultProducts as E } from "./templates/templateUtils.js";
10
- import { useDebounceFn as U } from "../../../node_modules/@vueuse/shared/index.js";
11
- const L = "ui-elements-recommendation-block", t = {
2
+ var R = (o, n, e) => n in o ? _(o, n, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[n] = e;
3
+ var r = (o, n, e) => R(o, typeof n != "symbol" ? n + "" : n, e);
4
+ import { currencyDecimalCounts as c, currencyOperators as a, currencyLocationMaps as l } from "../../../enums/extensions/recommendationBlock.js";
5
+ import { UEAttr as d } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
6
+ import { CommonControl as m } from "../common-control.js";
7
+ import { useRecommendationExtensionStore as S } from "./store/recommendation.js";
8
+ const g = "ui-elements-recommendation-block", t = {
12
9
  ALGORITHM: "strategy",
13
10
  PRODUCT_IDS: "productIds",
14
11
  LOCALE: "language",
@@ -24,21 +21,18 @@ const L = "ui-elements-recommendation-block", t = {
24
21
  SHUFFLE_PRODUCTS: "shuffleProducts",
25
22
  RESPONSIVE: "unresponsive"
26
23
  };
27
- class b extends g {
24
+ class p extends m {
28
25
  constructor() {
29
26
  super(...arguments);
30
- r(this, "store", O());
27
+ r(this, "store", S());
31
28
  r(this, "storeUnsubscription", () => {
32
29
  });
33
30
  r(this, "addFilterListener", () => {
34
31
  });
35
32
  r(this, "addFilterButton", null);
36
- r(this, "_debouncedRegenerateProductRows", U(() => {
37
- this._regenerateProductRows();
38
- }, 500));
39
33
  }
40
34
  getId() {
41
- return L;
35
+ return g;
42
36
  }
43
37
  getTemplate() {
44
38
  return `
@@ -84,22 +78,22 @@ class b extends g {
84
78
  });
85
79
  }
86
80
  _initializeSelectItems() {
87
- const { store: e } = this, o = e.getActivePredictiveAlgorithms, i = e.getLanguages, a = {
88
- [t.ALGORITHM]: o,
81
+ const { store: e } = this, s = e.getActivePredictiveAlgorithms, i = e.getLanguages, C = {
82
+ [t.ALGORITHM]: s,
89
83
  [t.LOCALE]: i,
90
84
  [t.CURRENCY]: e.currencyList,
91
- [t.CURRENCY_LOCATION]: h,
85
+ [t.CURRENCY_LOCATION]: l,
92
86
  [t.CURRENCY_SYMBOL]: e.getCurrencySymbolList,
93
- [t.CURRENCY_THOUSAND_SEPARATOR]: c,
94
- [t.CURRENCY_DECIMAL_SEPARATOR]: c,
95
- [t.CURRENCY_DECIMAL_COUNT]: l,
87
+ [t.CURRENCY_THOUSAND_SEPARATOR]: a,
88
+ [t.CURRENCY_DECIMAL_SEPARATOR]: a,
89
+ [t.CURRENCY_DECIMAL_COUNT]: c,
96
90
  [t.PRODUCT_COUNT]: Number(e.recommendationConfigs.size),
97
91
  [t.PRODUCT_IN_ROW]: e.recommendationConfigs.cardsInRow,
98
92
  [t.SHUFFLE_PRODUCTS]: e.recommendationConfigs.shuffleProducts,
99
93
  [t.RESPONSIVE]: !e.recommendationConfigs.unresponsive
100
94
  };
101
- Object.entries(a).forEach(([u, d]) => {
102
- this.api.setUIEAttribute(u, m.SELECTPICKER.items, d);
95
+ Object.entries(C).forEach(([u, h]) => {
96
+ this.api.setUIEAttribute(u, d.SELECTPICKER.items, h);
103
97
  });
104
98
  }
105
99
  _getAlgorithms() {
@@ -145,7 +139,7 @@ class b extends g {
145
139
  this._GuSelect({
146
140
  name: t.CURRENCY_LOCATION,
147
141
  placeholder: "Select Currency Location",
148
- options: h
142
+ options: l
149
143
  }),
150
144
  this._GuLabel({ text: "Currency Symbol" }),
151
145
  this._GuSelect({
@@ -157,19 +151,19 @@ class b extends g {
157
151
  this._GuSelect({
158
152
  name: t.CURRENCY_THOUSAND_SEPARATOR,
159
153
  placeholder: "Select Thousand Separator",
160
- options: c
154
+ options: a
161
155
  }),
162
156
  this._GuLabel({ text: "Decimal Separator" }),
163
157
  this._GuSelect({
164
158
  name: t.CURRENCY_DECIMAL_SEPARATOR,
165
159
  placeholder: "Select Decimal Separator",
166
- options: c
160
+ options: a
167
161
  }),
168
162
  this._GuLabel({ text: "Decimal Count" }),
169
163
  this._GuSelect({
170
164
  name: t.CURRENCY_DECIMAL_COUNT,
171
165
  placeholder: "Select Decimal Count",
172
- options: l
166
+ options: c
173
167
  })
174
168
  ])}
175
169
  `;
@@ -223,62 +217,39 @@ class b extends g {
223
217
  filterSelectionDrawerStatus: !0
224
218
  });
225
219
  }
226
- _onDataChange(e, o) {
227
- this.currentNode && (this.store.$patch({
220
+ _onDataChange(e, s) {
221
+ this.currentNode && this.store.$patch({
228
222
  recommendationConfigs: {
229
- [e]: o
223
+ [e]: s
230
224
  }
231
- }), this._debouncedRegenerateProductRows());
232
- }
233
- /**
234
- * Get the current card composition from block data attribute or use default
235
- */
236
- _getCardComposition() {
237
- if (!this.currentNode)
238
- return C;
239
- const e = this.currentNode.querySelector(".ins-recommendation-v3-block-v2");
240
- if (!e || !("getAttribute" in e))
241
- return C;
242
- const o = e.getAttribute("data-card-composition");
243
- return o ? o.split(",").filter(Boolean) : C;
244
- }
245
- _regenerateProductRows() {
246
- if (!this.currentNode || !("querySelector" in this.currentNode))
247
- return;
248
- const e = this.currentNode.querySelector(".ins-recommendation-product-container");
249
- if (!e) {
250
- console.error("Could not find container table for product rows");
251
- return;
252
- }
253
- const o = this.store.recommendationProducts.length > 0 ? this.store.recommendationProducts : E(), { cardsInRow: i } = this.store.recommendationConfigs, a = this._getCardComposition(), u = p(o, i, a);
254
- this.api.getDocumentModifier().modifyHtml(e).setInnerHtml(u).apply(new S("Updated product"));
225
+ });
255
226
  }
256
- _onCurrencyConfigChange(e, o) {
227
+ _onCurrencyConfigChange(e, s) {
257
228
  this.currentNode && this.store.$patch({
258
229
  recommendationConfigs: {
259
230
  currencySettings: {
260
- [e]: o
231
+ [e]: s
261
232
  }
262
233
  }
263
234
  });
264
235
  }
265
236
  _onCurrencyChange(e) {
266
- const [, o] = e.split(".");
237
+ const [, s] = e.split(".");
267
238
  this.store.$patch({
268
239
  recommendationConfigs: {
269
240
  currencySettings: {
270
- name: o,
271
- value: o
241
+ name: s,
242
+ value: s
272
243
  }
273
244
  }
274
245
  });
275
246
  }
276
247
  _setProductIdsVisibility() {
277
- const { recommendationConfigs: e } = this.store, o = e.strategy === "manualMerchandising";
278
- this.api.setVisibility(t.PRODUCT_IDS, o), this.api.setVisibility(`${t.PRODUCT_IDS}_label`, o);
248
+ const { recommendationConfigs: e } = this.store, s = e.strategy === "manualMerchandising";
249
+ this.api.setVisibility(t.PRODUCT_IDS, s), this.api.setVisibility(`${t.PRODUCT_IDS}_label`, s);
279
250
  }
280
251
  _listenToFormUpdates() {
281
- var o;
252
+ var s;
282
253
  this.api.onValueChanged(t.ALGORITHM, (i) => {
283
254
  this._onDataChange(t.ALGORITHM, i), this._setProductIdsVisibility();
284
255
  }), this.api.onValueChanged(t.PRODUCT_IDS, (i) => this._onDataChange(t.PRODUCT_IDS, i.split(",") || [])), this.api.onValueChanged(t.LOCALE, (i) => this._onDataChange(t.LOCALE, i)), this.api.onValueChanged(t.CURRENCY, (i) => this._onCurrencyChange(i)), [
@@ -288,19 +259,19 @@ class b extends g {
288
259
  t.CURRENCY_DECIMAL_SEPARATOR,
289
260
  t.CURRENCY_DECIMAL_COUNT
290
261
  ].forEach((i) => {
291
- this.api.onValueChanged(i, (a) => this._onCurrencyConfigChange(i, a));
292
- }), this.api.onValueChanged(t.PRODUCT_COUNT, (i) => this._onDataChange(t.PRODUCT_COUNT, i.toString())), this.api.onValueChanged(t.PRODUCT_IN_ROW, (i) => this._onDataChange(t.PRODUCT_IN_ROW, i)), this.api.onValueChanged(t.SHUFFLE_PRODUCTS, (i) => this._onDataChange(t.SHUFFLE_PRODUCTS, i)), this.api.onValueChanged(t.RESPONSIVE, (i) => this._onDataChange(t.RESPONSIVE, i)), this.addFilterListener = this._onFilterSelectClick.bind(this), this.addFilterButton = this.getContainer().querySelector("#guido__btn-add-filter"), (o = this.addFilterButton) == null || o.addEventListener("click", this.addFilterListener);
262
+ this.api.onValueChanged(i, (C) => this._onCurrencyConfigChange(i, C));
263
+ }), this.api.onValueChanged(t.PRODUCT_COUNT, (i) => this._onDataChange(t.PRODUCT_COUNT, i.toString())), this.api.onValueChanged(t.PRODUCT_IN_ROW, (i) => this._onDataChange(t.PRODUCT_IN_ROW, i)), this.api.onValueChanged(t.SHUFFLE_PRODUCTS, (i) => this._onDataChange(t.SHUFFLE_PRODUCTS, i)), this.api.onValueChanged(t.RESPONSIVE, (i) => this._onDataChange(t.RESPONSIVE, i)), this.addFilterListener = this._onFilterSelectClick.bind(this), this.addFilterButton = this.getContainer().querySelector("#guido__btn-add-filter"), (s = this.addFilterButton) == null || s.addEventListener("click", this.addFilterListener);
293
264
  }
294
265
  _listenStateUpdates() {
295
266
  this.storeUnsubscription = this.store.$subscribe((e) => {
296
267
  if ("payload" in e) {
297
- const o = e.payload.recommendationConfigs;
298
- o && (this.api.updateValues(o), this.store.fetchRecommendationProducts());
268
+ const s = e.payload.recommendationConfigs;
269
+ s && (this.api.updateValues(s), this.store.fetchRecommendationProducts());
299
270
  }
300
271
  });
301
272
  }
302
273
  }
303
274
  export {
304
- L as CONTROL_BLOCK_ID,
305
- b as RecommendationBlockControl
275
+ g as CONTROL_BLOCK_ID,
276
+ p as RecommendationBlockControl
306
277
  };
@@ -1,45 +1,10 @@
1
1
  import { ExtensionBuilder as o } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { RecommendationBlock as r } from "./block.js";
3
- import { RecommendationCardCompositionControl as t } from "./cardCompositionControl.js";
4
- import { RecommendationBlockControl as n } from "./control.js";
5
- import { ButtonAlignControl as d } from "./controls/button/align.js";
6
- import { ButtonBorderControl as l } from "./controls/button/border.js";
7
- import { ButtonBorderRadiusControl as m } from "./controls/button/borderRadius.js";
8
- import { ButtonColorControl as i } from "./controls/button/color.js";
9
- import { ButtonFitToContentControl as C } from "./controls/button/fitToContent.js";
10
- import { ButtonFontFamilyControl as a } from "./controls/button/fontFamily.js";
11
- import { ButtonMarginsControl as e } from "./controls/button/margins.js";
12
- import { ButtonPaddingsControl as p } from "./controls/button/paddings.js";
13
- import { ButtonTextControl as f } from "./controls/button/text.js";
14
- import { ButtonTextSizeControl as c } from "./controls/button/textSize.js";
15
- import { ButtonTextStyleAndFontColorControl as s } from "./controls/button/textStyleAndFontColor.js";
16
- import { ImageMarginsControl as g } from "./controls/image/margins.js";
17
- import { ImageSizeControl as B } from "./controls/image/size.js";
18
- import { NameAlignControl as P } from "./controls/name/align.js";
19
- import { NameBackgroundControl as u } from "./controls/name/background.js";
20
- import { NameColorControl as y } from "./controls/name/color.js";
21
- import { NameFontFamilyControl as S } from "./controls/name/fontFamily.js";
22
- import { NamePaddingsControl as F } from "./controls/name/paddings.js";
23
- import { NameSizeControl as R } from "./controls/name/size.js";
24
- import { NameStyleControl as N } from "./controls/name/style.js";
25
- import { OldPriceAlignControl as O } from "./controls/oldPrice/align.js";
26
- import { OldPriceBackgroundControl as k } from "./controls/oldPrice/background.js";
27
- import { OldPriceColorControl as x } from "./controls/oldPrice/color.js";
28
- import { OldPriceFontFamilyControl as z } from "./controls/oldPrice/fontFamily.js";
29
- import { OldPricePaddingsControl as A } from "./controls/oldPrice/paddings.js";
30
- import { OldPriceSizeControl as I } from "./controls/oldPrice/size.js";
31
- import { OldPriceStyleControl as T } from "./controls/oldPrice/style.js";
32
- import { PriceAlignControl as w } from "./controls/price/align.js";
33
- import { PriceBackgroundControl as h } from "./controls/price/background.js";
34
- import { PriceColorControl as M } from "./controls/price/color.js";
35
- import { PriceFontFamilyControl as b } from "./controls/price/fontFamily.js";
36
- import { PricePaddingsControl as E } from "./controls/price/paddings.js";
37
- import { PriceSizeControl as j } from "./controls/price/size.js";
38
- import { PriceStyleControl as q } from "./controls/price/style.js";
39
- import { RecommendationIconsRegistry as v } from "./iconsRegistry.js";
40
- import D from "./recommendation.css.js";
41
- import { SettingsPanel as G } from "./settingsPanel.js";
42
- const Io = new o().addBlock(r).withSettingsPanelRegistry(G).addControl(n).addControl(d).addControl(l).addControl(m).addControl(i).addControl(C).addControl(a).addControl(e).addControl(p).addControl(f).addControl(c).addControl(s).addControl(g).addControl(B).addControl(P).addControl(u).addControl(y).addControl(S).addControl(F).addControl(R).addControl(N).addControl(O).addControl(k).addControl(x).addControl(z).addControl(A).addControl(I).addControl(T).addControl(w).addControl(h).addControl(M).addControl(b).addControl(E).addControl(j).addControl(q).addControl(t).addStyles(D).withIconsRegistry(v).build();
2
+ import { RecommendationBlock as t } from "./block.js";
3
+ import { RecommendationBlockControl as e } from "./control.js";
4
+ import { RecommendationIconsRegistry as i } from "./iconsRegistry.js";
5
+ import n from "./recommendation.css.js";
6
+ import { SettingsPanel as r } from "./settingsPanel.js";
7
+ const f = new o().addBlock(t).withSettingsPanelRegistry(r).addControl(e).addStyles(n).withIconsRegistry(i).build();
43
8
  export {
44
- Io as default
9
+ f as default
45
10
  };
@@ -1,117 +1,32 @@
1
- import { SettingsPanelRegistry as N, SettingsPanelTab as _, SettingsTab as E, ContainerControls as S, TextControls as L } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
- import { BLOCK_ID as R } from "./block.js";
3
- import { COMPOSITION_CONTROL_BLOCK_ID as C } from "./cardCompositionControl.js";
4
- import { RecommendationBlockId as I, RecommendationControlId as T } from "./constants.js";
5
- import { CONTROL_BLOCK_ID as e } from "./control.js";
6
- class G extends N {
7
- registerBlockControls(O) {
8
- O[R] = [
9
- new _(
10
- E.SETTINGS,
11
- [
12
- e,
13
- S.EXTERNAL_INDENTS
14
- ]
15
- ),
16
- new _(
17
- E.STYLES,
18
- [
19
- L.TEXT_BLOCK_BACKGROUND_COLOR
20
- ]
21
- ),
22
- new _(
23
- "Card Composition",
24
- [
25
- C
26
- ]
27
- ).withLabel("Card Composition")
28
- ], O[I.NAME] = [
29
- new _(
30
- E.SETTINGS,
31
- [
32
- T.NAME_BACKGROUND,
33
- T.NAME_COLOR,
34
- T.NAME_SIZE,
35
- T.NAME_STYLE,
36
- T.NAME_FONT_FAMILY
37
- ]
38
- ),
39
- new _(
40
- E.STYLES,
41
- [
42
- T.NAME_ALIGN,
43
- T.NAME_PADDINGS
44
- ]
45
- )
46
- ], O[I.PRICE] = [
47
- new _(
48
- E.SETTINGS,
49
- [
50
- T.PRICE_BACKGROUND,
51
- T.PRICE_COLOR,
52
- T.PRICE_SIZE,
53
- T.PRICE_STYLE,
54
- T.PRICE_FONT_FAMILY
1
+ import { SettingsPanelRegistry as o, SettingsPanelTab as t, SettingsTab as e, ContainerControls as r, TextControls as s } from "../../../node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js";
2
+ import { BLOCK_ID as T } from "./block.js";
3
+ import { CONTROL_BLOCK_ID as i } from "./control.js";
4
+ class a extends o {
5
+ registerBlockControls(n) {
6
+ n[T] = [
7
+ new t(
8
+ e.SETTINGS,
9
+ [
10
+ i,
11
+ r.EXTERNAL_INDENTS
55
12
  ]
56
13
  ),
57
- new _(
58
- E.STYLES,
59
- [
60
- T.PRICE_ALIGN,
61
- T.PRICE_PADDINGS
62
- ]
63
- )
64
- ], O[I.OLD_PRICE] = [
65
- new _(
66
- E.SETTINGS,
67
- [
68
- T.OLD_PRICE_BACKGROUND,
69
- T.OLD_PRICE_COLOR,
70
- T.OLD_PRICE_SIZE,
71
- T.OLD_PRICE_STYLE,
72
- T.OLD_PRICE_FONT_FAMILY
73
- ]
74
- ),
75
- new _(
76
- E.STYLES,
77
- [
78
- T.OLD_PRICE_ALIGN,
79
- T.OLD_PRICE_PADDINGS
80
- ]
81
- )
82
- ], O[I.BUTTON] = [
83
- new _(
84
- E.SETTINGS,
85
- [
86
- T.BUTTON_TEXT,
87
- T.BUTTON_ALIGN,
88
- T.BUTTON_MARGINS,
89
- T.BUTTON_PADDINGS
90
- ]
91
- ),
92
- new _(
93
- E.STYLES,
94
- [
95
- T.BUTTON_COLOR,
96
- T.BUTTON_FONT_FAMILY,
97
- T.BUTTON_TEXT_SIZE,
98
- T.BUTTON_TEXT_STYLE_AND_FONT_COLOR,
99
- T.BUTTON_FIT_TO_CONTENT,
100
- T.BUTTON_BORDER_RADIUS,
101
- T.BUTTON_BORDER
102
- ]
103
- )
104
- ], O[I.IMAGE] = [
105
- new _(
106
- E.SETTINGS,
14
+ new t(
15
+ e.STYLES,
107
16
  [
108
- T.IMAGE_SIZE,
109
- T.IMAGE_MARGINS
17
+ s.TEXT_BLOCK_BACKGROUND_COLOR
110
18
  ]
111
19
  )
20
+ // TODO: It'll be opened after the card composition is implemented by Stripo team.
21
+ // new SettingsPanelTab(
22
+ // 'Card Composition',
23
+ // [
24
+ // COMPOSITION_CONTROL_BLOCK_ID,
25
+ // ]
26
+ // ).withLabel('Card Composition'),
112
27
  ];
113
28
  }
114
29
  }
115
30
  export {
116
- G as SettingsPanel
31
+ a as SettingsPanel
117
32
  };