@useinsider/guido 1.0.3-beta.e9bec65 → 1.0.3-beta.ef63ed1

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 (183) hide show
  1. package/README.md +3 -147
  2. package/dist/components/Guido.vue.js +9 -11
  3. package/dist/components/Guido.vue2.js +74 -81
  4. package/dist/components/organisms/header/LeftSlot.vue.js +1 -1
  5. package/dist/components/organisms/header/LeftSlot.vue2.js +15 -16
  6. package/dist/components/organisms/header/RightSlot.vue.js +11 -11
  7. package/dist/components/organisms/header/RightSlot.vue2.js +22 -23
  8. package/dist/components/organisms/onboarding/NewVersionPopup.vue.js +9 -9
  9. package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +17 -30
  10. package/dist/components/organisms/onboarding/OnboardingWrapper.vue.js +10 -12
  11. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +18 -19
  12. package/dist/composables/useGuidoActions.js +9 -19
  13. package/dist/composables/useStripo.js +55 -48
  14. package/dist/config/compiler/unsubscribeCompilerRules.js +28 -33
  15. package/dist/config/migrator/index.js +6 -7
  16. package/dist/enums/defaults.js +8 -16
  17. package/dist/enums/onboarding.js +1 -2
  18. package/dist/enums/unsubscribe.js +25 -27
  19. package/dist/extensions/Blocks/Checkbox/extension.js +2 -2
  20. package/dist/extensions/Blocks/CouponBlock/extension.js +2 -2
  21. package/dist/extensions/Blocks/RadioButton/template.js +6 -6
  22. package/dist/extensions/DynamicContent/dynamic-content-modal.js +19 -25
  23. package/dist/extensions/DynamicContent/dynamic-content.js +33 -128
  24. package/dist/guido.css +1 -1
  25. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +93 -311
  26. package/dist/package.json.js +1 -1
  27. package/dist/services/stripoApi.js +1 -1
  28. package/dist/src/@types/generic.d.ts +4 -44
  29. package/dist/src/components/Guido.vue.d.ts +2 -4
  30. package/dist/src/components/organisms/onboarding/NewVersionPopup.vue.d.ts +1 -3
  31. package/dist/src/components/organisms/onboarding/OnboardingWrapper.vue.d.ts +1 -3
  32. package/dist/src/components/wrappers/WpModal.vue.d.ts +1 -1
  33. package/dist/src/composables/useGuidoActions.d.ts +0 -9
  34. package/dist/src/enums/onboarding.d.ts +0 -1
  35. package/dist/src/extensions/DynamicContent/dynamic-content-modal.d.ts +2 -9
  36. package/dist/src/extensions/DynamicContent/dynamic-content.d.ts +2 -52
  37. package/dist/src/stores/config.d.ts +2 -10
  38. package/dist/src/stores/dynamic-content.d.ts +3 -3
  39. package/dist/src/stores/editor.d.ts +1 -22
  40. package/dist/src/stores/onboarding.d.ts +1 -1
  41. package/dist/src/stores/preview.d.ts +1 -1
  42. package/dist/src/stores/recommendation.d.ts +1 -1
  43. package/dist/src/stores/save-as-template.d.ts +1 -1
  44. package/dist/src/stores/toaster.d.ts +1 -1
  45. package/dist/src/stores/unsubscribe.d.ts +1 -1
  46. package/dist/src/stores/version-history.d.ts +1 -1
  47. package/dist/src/utils/dateUtil.d.ts +0 -21
  48. package/dist/src/utils/genericUtil.d.ts +0 -2
  49. package/dist/static/styles/components/narrow-panel.css.js +0 -10
  50. package/dist/static/styles/customEditorStyle.css.js +0 -5
  51. package/dist/stores/config.js +5 -5
  52. package/dist/stores/dynamic-content.js +2 -2
  53. package/dist/stores/editor.js +2 -3
  54. package/dist/stores/onboarding.js +27 -27
  55. package/dist/stores/preview.js +1 -1
  56. package/dist/stores/recommendation.js +3 -3
  57. package/dist/stores/save-as-template.js +2 -2
  58. package/dist/stores/toaster.js +1 -1
  59. package/dist/stores/unsubscribe.js +1 -1
  60. package/dist/stores/version-history.js +4 -4
  61. package/dist/utils/dateUtil.js +3 -24
  62. package/dist/utils/genericUtil.js +11 -23
  63. package/package.json +5 -5
  64. package/dist/components/organisms/extensions/recommendation/FilterItem.vue.js +0 -28
  65. package/dist/components/organisms/extensions/recommendation/FilterItem.vue2.js +0 -38
  66. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue.js +0 -17
  67. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue2.js +0 -37
  68. package/dist/components/organisms/extensions/recommendation/Filters.vue.js +0 -20
  69. package/dist/components/organisms/extensions/recommendation/Filters.vue2.js +0 -44
  70. package/dist/components/organisms/extensions/recommendation/LogicAdapter.vue.js +0 -17
  71. package/dist/components/organisms/extensions/recommendation/LogicAdapter.vue2.js +0 -27
  72. package/dist/composables/useBlocksConfig.js +0 -49
  73. package/dist/config/migrator/recommendationMigrator.js +0 -293
  74. package/dist/enums/date.js +0 -6
  75. package/dist/enums/extensions/recommendationBlock.js +0 -80
  76. package/dist/extensions/Blocks/Recommendation/block.js +0 -30
  77. package/dist/extensions/Blocks/Recommendation/cardCompositionControl.js +0 -103
  78. package/dist/extensions/Blocks/Recommendation/constants.js +0 -5
  79. package/dist/extensions/Blocks/Recommendation/control.js +0 -306
  80. package/dist/extensions/Blocks/Recommendation/controls/button/align.js +0 -13
  81. package/dist/extensions/Blocks/Recommendation/controls/button/border.js +0 -13
  82. package/dist/extensions/Blocks/Recommendation/controls/button/borderRadius.js +0 -13
  83. package/dist/extensions/Blocks/Recommendation/controls/button/color.js +0 -13
  84. package/dist/extensions/Blocks/Recommendation/controls/button/fitToContent.js +0 -13
  85. package/dist/extensions/Blocks/Recommendation/controls/button/fontFamily.js +0 -13
  86. package/dist/extensions/Blocks/Recommendation/controls/button/margins.js +0 -13
  87. package/dist/extensions/Blocks/Recommendation/controls/button/paddings.js +0 -13
  88. package/dist/extensions/Blocks/Recommendation/controls/button/text.js +0 -13
  89. package/dist/extensions/Blocks/Recommendation/controls/button/textSize.js +0 -13
  90. package/dist/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.js +0 -13
  91. package/dist/extensions/Blocks/Recommendation/controls/image/margins.js +0 -13
  92. package/dist/extensions/Blocks/Recommendation/controls/image/size.js +0 -13
  93. package/dist/extensions/Blocks/Recommendation/controls/name/align.js +0 -13
  94. package/dist/extensions/Blocks/Recommendation/controls/name/background.js +0 -13
  95. package/dist/extensions/Blocks/Recommendation/controls/name/color.js +0 -13
  96. package/dist/extensions/Blocks/Recommendation/controls/name/fontFamily.js +0 -13
  97. package/dist/extensions/Blocks/Recommendation/controls/name/paddings.js +0 -13
  98. package/dist/extensions/Blocks/Recommendation/controls/name/size.js +0 -13
  99. package/dist/extensions/Blocks/Recommendation/controls/name/style.js +0 -13
  100. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/align.js +0 -13
  101. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/background.js +0 -13
  102. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/color.js +0 -13
  103. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.js +0 -13
  104. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/paddings.js +0 -13
  105. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/size.js +0 -13
  106. package/dist/extensions/Blocks/Recommendation/controls/oldPrice/style.js +0 -13
  107. package/dist/extensions/Blocks/Recommendation/controls/price/align.js +0 -13
  108. package/dist/extensions/Blocks/Recommendation/controls/price/background.js +0 -13
  109. package/dist/extensions/Blocks/Recommendation/controls/price/color.js +0 -13
  110. package/dist/extensions/Blocks/Recommendation/controls/price/fontFamily.js +0 -13
  111. package/dist/extensions/Blocks/Recommendation/controls/price/paddings.js +0 -13
  112. package/dist/extensions/Blocks/Recommendation/controls/price/size.js +0 -13
  113. package/dist/extensions/Blocks/Recommendation/controls/price/style.js +0 -13
  114. package/dist/extensions/Blocks/Recommendation/extension.js +0 -45
  115. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +0 -51
  116. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +0 -19
  117. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +0 -117
  118. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +0 -266
  119. package/dist/extensions/Blocks/Recommendation/templates/blockTemplate.js +0 -160
  120. package/dist/extensions/Blocks/Recommendation/templates/migrationTemplate.js +0 -152
  121. package/dist/extensions/Blocks/Recommendation/templates/templateUtils.js +0 -180
  122. package/dist/extensions/Blocks/Recommendation/utils/filterUtil.js +0 -28
  123. package/dist/extensions/Blocks/common-control.js +0 -184
  124. package/dist/services/recommendationApi.js +0 -43
  125. package/dist/src/components/organisms/extensions/recommendation/FilterItem.vue.d.ts +0 -19
  126. package/dist/src/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue.d.ts +0 -2
  127. package/dist/src/components/organisms/extensions/recommendation/Filters.vue.d.ts +0 -2
  128. package/dist/src/components/organisms/extensions/recommendation/LogicAdapter.vue.d.ts +0 -16
  129. package/dist/src/composables/useBlocksConfig.d.ts +0 -11
  130. package/dist/src/config/migrator/recommendationMigrator.d.ts +0 -1
  131. package/dist/src/enums/date.d.ts +0 -4
  132. package/dist/src/enums/extensions/recommendationBlock.d.ts +0 -16
  133. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +0 -11
  134. package/dist/src/extensions/Blocks/Recommendation/cardCompositionControl.d.ts +0 -28
  135. package/dist/src/extensions/Blocks/Recommendation/constants.d.ts +0 -51
  136. package/dist/src/extensions/Blocks/Recommendation/control.d.ts +0 -35
  137. package/dist/src/extensions/Blocks/Recommendation/controls/button/align.d.ts +0 -5
  138. package/dist/src/extensions/Blocks/Recommendation/controls/button/border.d.ts +0 -5
  139. package/dist/src/extensions/Blocks/Recommendation/controls/button/borderRadius.d.ts +0 -5
  140. package/dist/src/extensions/Blocks/Recommendation/controls/button/color.d.ts +0 -5
  141. package/dist/src/extensions/Blocks/Recommendation/controls/button/fitToContent.d.ts +0 -5
  142. package/dist/src/extensions/Blocks/Recommendation/controls/button/fontFamily.d.ts +0 -5
  143. package/dist/src/extensions/Blocks/Recommendation/controls/button/margins.d.ts +0 -5
  144. package/dist/src/extensions/Blocks/Recommendation/controls/button/paddings.d.ts +0 -5
  145. package/dist/src/extensions/Blocks/Recommendation/controls/button/text.d.ts +0 -5
  146. package/dist/src/extensions/Blocks/Recommendation/controls/button/textSize.d.ts +0 -5
  147. package/dist/src/extensions/Blocks/Recommendation/controls/button/textStyleAndFontColor.d.ts +0 -5
  148. package/dist/src/extensions/Blocks/Recommendation/controls/image/margins.d.ts +0 -5
  149. package/dist/src/extensions/Blocks/Recommendation/controls/image/size.d.ts +0 -5
  150. package/dist/src/extensions/Blocks/Recommendation/controls/name/align.d.ts +0 -5
  151. package/dist/src/extensions/Blocks/Recommendation/controls/name/background.d.ts +0 -5
  152. package/dist/src/extensions/Blocks/Recommendation/controls/name/color.d.ts +0 -5
  153. package/dist/src/extensions/Blocks/Recommendation/controls/name/fontFamily.d.ts +0 -5
  154. package/dist/src/extensions/Blocks/Recommendation/controls/name/paddings.d.ts +0 -5
  155. package/dist/src/extensions/Blocks/Recommendation/controls/name/size.d.ts +0 -5
  156. package/dist/src/extensions/Blocks/Recommendation/controls/name/style.d.ts +0 -5
  157. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/align.d.ts +0 -5
  158. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/background.d.ts +0 -5
  159. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/color.d.ts +0 -5
  160. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/fontFamily.d.ts +0 -5
  161. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/paddings.d.ts +0 -5
  162. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/size.d.ts +0 -5
  163. package/dist/src/extensions/Blocks/Recommendation/controls/oldPrice/style.d.ts +0 -5
  164. package/dist/src/extensions/Blocks/Recommendation/controls/price/align.d.ts +0 -5
  165. package/dist/src/extensions/Blocks/Recommendation/controls/price/background.d.ts +0 -5
  166. package/dist/src/extensions/Blocks/Recommendation/controls/price/color.d.ts +0 -5
  167. package/dist/src/extensions/Blocks/Recommendation/controls/price/fontFamily.d.ts +0 -5
  168. package/dist/src/extensions/Blocks/Recommendation/controls/price/paddings.d.ts +0 -5
  169. package/dist/src/extensions/Blocks/Recommendation/controls/price/size.d.ts +0 -5
  170. package/dist/src/extensions/Blocks/Recommendation/controls/price/style.d.ts +0 -5
  171. package/dist/src/extensions/Blocks/Recommendation/extension.d.ts +0 -2
  172. package/dist/src/extensions/Blocks/Recommendation/iconsRegistry.d.ts +0 -4
  173. package/dist/src/extensions/Blocks/Recommendation/settingsPanel.d.ts +0 -4
  174. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +0 -555
  175. package/dist/src/extensions/Blocks/Recommendation/templates/blockTemplate.d.ts +0 -16
  176. package/dist/src/extensions/Blocks/Recommendation/templates/migrationTemplate.d.ts +0 -16
  177. package/dist/src/extensions/Blocks/Recommendation/templates/templateUtils.d.ts +0 -44
  178. package/dist/src/extensions/Blocks/Recommendation/utils/filterUtil.d.ts +0 -7
  179. package/dist/src/extensions/Blocks/common-control.d.ts +0 -87
  180. package/dist/src/mock/api/recommendation.d.ts +0 -2
  181. package/dist/src/services/recommendationApi.d.ts +0 -6
  182. package/dist/src/utils/environmentUtil.d.ts +0 -5
  183. package/dist/utils/environmentUtil.js +0 -4
@@ -1,17 +1,17 @@
1
- import t from "./NewVersionPopup.vue2.js";
1
+ import s from "./NewVersionPopup.vue2.js";
2
2
  import n from "../../../_virtual/_plugin-vue2_normalizer.js";
3
- var i = function() {
4
- var e = this, s = e._self._c, o = e._self._setupProxy;
5
- return o.isVisible ? s(o.WpModal, { attrs: { id: "guido__new-version-popup", size: "medium", "close-on-outside-click": !1, "footer-button-options": o.footerButtonOptions, title: o.popupTitle }, on: { close: o.handleClose, "primary-action": o.handleDiscoverNow, "secondary-action": o.handleRemindLater } }, [s("div", { staticClass: "d-f f-d-c" }, [s("img", { staticClass: "w-1 h-1 d-b p-e-n mb-5", attrs: { src: o.onboardingImageSvg } }), s("p", { staticClass: "f-s-2 f-w-400", domProps: { innerHTML: e._s(o.popupDescription) } })])]) : e._e();
6
- }, r = [], a = /* @__PURE__ */ n(
7
- t,
8
- i,
3
+ var r = function() {
4
+ var e = this, t = e._self._c, o = e._self._setupProxy;
5
+ return o.isVisible ? t(o.WpModal, { attrs: { id: "guido__new-version-popup", "close-on-outside-click": !1, "footer-button-options": o.footerButtonOptions, title: o.trans("email-editor.onboarding-title") }, on: { close: o.handleClose, "primary-action": o.handleDiscoverNow, "secondary-action": o.handleRemindLater } }, [t("div", { staticClass: "d-f f-d-c" }, [t("img", { staticClass: "w-1 h-1 d-b p-e-n mb-5", attrs: { src: o.onboardingImageSvg } }), t("p", { staticClass: "f-s-2 f-w-400", domProps: { innerHTML: e._s(o.trans("email-editor.onboarding-description")) } })])]) : e._e();
6
+ }, i = [], a = /* @__PURE__ */ n(
7
+ s,
9
8
  r,
9
+ i,
10
10
  !1,
11
11
  null,
12
12
  null
13
13
  );
14
- const _ = a.exports;
14
+ const p = a.exports;
15
15
  export {
16
- _ as default
16
+ p as default
17
17
  };
@@ -1,43 +1,30 @@
1
- import { defineComponent as g, ref as b, computed as o } from "vue";
2
- import v from "../../wrappers/WpModal.vue.js";
3
- import { useConfig as D } from "../../../composables/useConfig.js";
4
- import { useTranslations as h } from "../../../composables/useTranslations.js";
5
- import { ACADEMY_LINK as l } from "../../../enums/onboarding.js";
6
- import y from "../../../static/assets/onboarding-img.svg.js";
7
- import { useOnboardingStore as _ } from "../../../stores/onboarding.js";
8
- import { isAfterDate as C, formatShortDate as L } from "../../../utils/dateUtil.js";
9
- const I = /* @__PURE__ */ g({
1
+ import { defineComponent as s, ref as r } from "vue";
2
+ import a from "../../wrappers/WpModal.vue.js";
3
+ import { useTranslations as i } from "../../../composables/useTranslations.js";
4
+ import l from "../../../static/assets/onboarding-img.svg.js";
5
+ import { useOnboardingStore as m } from "../../../stores/onboarding.js";
6
+ const w = /* @__PURE__ */ s({
10
7
  __name: "NewVersionPopup",
11
- emits: ["onboarding-finished"],
12
- setup(w, { emit: a }) {
13
- const e = h(), t = _(), s = b(!0), { config: p } = D(), i = o(() => p.migrationDate), n = o(() => C(i.value || 0)), d = o(() => L(
14
- i.value
15
- )), m = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-title") : e("email-editor.onboarding-title")), c = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-description", {
16
- sunsetDate: d.value,
17
- academyLink: l
18
- }) : e("email-editor.onboarding-description", {
19
- academyLink: l
20
- })), u = o(() => n.value ? e("products.cancel") : e("products.remind-me-later")), f = o(() => ({
8
+ setup(p) {
9
+ const n = i(), e = m(), o = r(!0), t = r({
21
10
  primaryButton: {
22
11
  type: "primary",
23
- labelText: e("left-menu.discover-now")
12
+ labelText: n("left-menu.discover-now")
24
13
  },
25
14
  secondaryButton: {
26
15
  type: "subtle-primary",
27
- labelText: u.value
16
+ labelText: n("products.remind-me-later")
28
17
  }
29
- })), r = () => {
30
- s.value = !1, a("onboarding-finished");
31
- };
32
- return { __sfc: !0, emit: a, trans: e, onboardingStore: t, isVisible: s, config: p, migrationDate: i, isAfterMigrationDate: n, formattedSunsetDate: d, popupTitle: m, popupDescription: c, secondaryButtonLabel: u, footerButtonOptions: f, closePopup: r, handleDiscoverNow: () => {
33
- t.onDiscoverNowClicked(), r();
18
+ });
19
+ return { __sfc: !0, trans: n, onboardingStore: e, isVisible: o, footerButtonOptions: t, handleDiscoverNow: () => {
20
+ e.onDiscoverNowClicked(), o.value = !1;
34
21
  }, handleRemindLater: () => {
35
- t.onRemindMeLater(), r();
22
+ e.onRemindMeLater(), o.value = !1;
36
23
  }, handleClose: () => {
37
- t.onNewVersionPopupClose(), r();
38
- }, WpModal: v, onboardingImageSvg: y };
24
+ e.onNewVersionPopupClose(), o.value = !1;
25
+ }, WpModal: a, onboardingImageSvg: l };
39
26
  }
40
27
  });
41
28
  export {
42
- I as default
29
+ w as default
43
30
  };
@@ -1,21 +1,19 @@
1
- import t from "./OnboardingWrapper.vue2.js";
2
- import i from "../../../_virtual/_plugin-vue2_normalizer.js";
1
+ import o from "./OnboardingWrapper.vue2.js";
2
+ import _ from "../../../_virtual/_plugin-vue2_normalizer.js";
3
3
  var s = function() {
4
- var n = this, e = n._self._c, r = n._self._setupProxy;
5
- return e("div", n._l(r.visibleOnboardings, function(o) {
6
- return e(o.component, { key: o.type, tag: "component", on: { "onboarding-finished": function(p) {
7
- return r.emit("onboarding-finished");
8
- } } });
4
+ var n = this, e = n._self._c, t = n._self._setupProxy;
5
+ return e("div", n._l(t.visibleOnboardings, function(r) {
6
+ return e(r.component, { key: r.type, tag: "component" });
9
7
  }), 1);
10
- }, _ = [], a = /* @__PURE__ */ i(
11
- t,
8
+ }, a = [], p = /* @__PURE__ */ _(
9
+ o,
12
10
  s,
13
- _,
11
+ a,
14
12
  !1,
15
13
  null,
16
14
  null
17
15
  );
18
- const d = a.exports;
16
+ const m = p.exports;
19
17
  export {
20
- d as default
18
+ m as default
21
19
  };
@@ -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,6 +1,6 @@
1
1
  import { provideValue as o, useInjectedValue as t } from "./useProvideInject.js";
2
- const r = Symbol.for("guido.back"), n = Symbol.for("guido.save.start"), c = Symbol.for("guido.save.complete"), a = Symbol.for("guido.test.email.click"), i = (e) => {
3
- o(r, e.onBack), o(n, e.onSaveStart), o(c, e.onSaveComplete), o(a, e.onTestEmailClick);
2
+ const r = Symbol.for("guido.back"), n = Symbol.for("guido.save.start"), a = Symbol.for("guido.save.complete"), s = (e) => {
3
+ o(r, e.onBack), o(n, e.onSaveStart), o(a, e.onSaveComplete);
4
4
  }, u = () => {
5
5
  try {
6
6
  return t(r);
@@ -9,7 +9,7 @@ const r = Symbol.for("guido.back"), n = Symbol.for("guido.save.start"), c = Symb
9
9
  "useBack: No back handler provided. Make sure Guido component is in the component tree."
10
10
  );
11
11
  }
12
- }, l = () => {
12
+ }, d = () => {
13
13
  try {
14
14
  return t(n);
15
15
  } catch {
@@ -17,31 +17,21 @@ const r = Symbol.for("guido.back"), n = Symbol.for("guido.save.start"), c = Symb
17
17
  "useSaveStart: No save start handler provided. Make sure Guido component is in the component tree."
18
18
  );
19
19
  }
20
- }, d = () => {
21
- try {
22
- return t(c);
23
- } catch {
24
- throw new Error(
25
- "useSaveComplete: No save complete handler provided. Make sure Guido component is in the component tree."
26
- );
27
- }
28
- }, m = () => {
20
+ }, i = () => {
29
21
  try {
30
22
  return t(a);
31
23
  } catch {
32
24
  throw new Error(
33
- "useTestEmailClick: No test email click handler provided. Make sure Guido component is in the component tree."
25
+ "useSaveComplete: No save complete handler provided. Make sure Guido component is in the component tree."
34
26
  );
35
27
  }
36
28
  };
37
29
  export {
38
30
  r as BACK_KEY,
39
- c as SAVE_COMPLETE_KEY,
31
+ a as SAVE_COMPLETE_KEY,
40
32
  n as SAVE_START_KEY,
41
- a as TEST_EMAIL_CLICK_KEY,
42
- i as provideGuidoActions,
33
+ s as provideGuidoActions,
43
34
  u as useBack,
44
- d as useSaveComplete,
45
- l as useSaveStart,
46
- m as useTestEmailClick
35
+ i as useSaveComplete,
36
+ d as useSaveStart
47
37
  };
@@ -1,26 +1,28 @@
1
- import { useActionsApi as h } from "./useActionsApi.js";
2
- import { useBlocksConfig as b } from "./useBlocksConfig.js";
3
- import { useConfig as k } from "./useConfig.js";
4
- import { useCustomInterfaceAppearance as B } from "./useCustomInterfaceAppearance.js";
5
- import { useStripoEventHandler as V } from "./useStripoEventHandler.js";
6
- import { useToaster as _ } from "./useToaster.js";
7
- import { displayConditions as F } from "../enums/displayConditions.js";
8
- import { useStripoApi as A } from "../services/stripoApi.js";
9
- import T from "../static/styles/customEditorStyle.css.js";
10
- import { useEditorStore as v } from "../stores/editor.js";
11
- import { dynamicContentToMergeTags as I } from "../utils/genericUtil.js";
12
- import M from "../package.json.js";
13
- const N = (d) => {
14
- const { config: u } = k(), { handleError: l } = _(), { getToken: f, getCustomFonts: S } = A(), { handleEvent: C } = V(), { getStripoBlocksConfig: y } = b(), E = async (i, r = []) => {
15
- var m, g;
16
- const t = v(), { html: n, css: p, forceRecreate: a } = i, { baseBlocks: e, extensions: c } = await y();
1
+ import { useActionsApi as f } from "./useActionsApi.js";
2
+ import { useCustomInterfaceAppearance as S } from "./useCustomInterfaceAppearance.js";
3
+ import { useStripoEventHandler as E } from "./useStripoEventHandler.js";
4
+ import { useToaster as C } from "./useToaster.js";
5
+ import { displayConditions as y } from "../enums/displayConditions.js";
6
+ import h from "../extensions/Blocks/Checkbox/extension.js";
7
+ import w from "../extensions/Blocks/CouponBlock/extension.js";
8
+ import b from "../extensions/Blocks/RadioButton/extension.js";
9
+ import V from "../extensions/Blocks/Unsubscribe/extension.js";
10
+ import _ from "../extensions/DynamicContent/extension.js";
11
+ import { useStripoApi as k } from "../services/stripoApi.js";
12
+ import B from "../static/styles/customEditorStyle.css.js";
13
+ import { useEditorStore as F } from "../stores/editor.js";
14
+ import { dynamicContentToMergeTags as x } from "../utils/genericUtil.js";
15
+ import A from "../package.json.js";
16
+ const N = (a) => {
17
+ const { handleError: d } = C(), { getToken: u, getCustomFonts: m } = k(), { handleEvent: p } = E(), l = (r, i = []) => {
18
+ const t = F(), { html: n, css: c, forceRecreate: s } = r;
17
19
  window.UIEditor.initEditor(
18
20
  document.querySelector("#guido-editor"),
19
21
  {
20
- metadata: d,
22
+ metadata: a,
21
23
  html: n,
22
- css: p,
23
- forceRecreate: a,
24
+ css: c,
25
+ forceRecreate: s,
24
26
  locale: "en",
25
27
  undoButtonSelector: "#guido__undo-button",
26
28
  redoButtonSelector: "#guido__redo-button",
@@ -30,40 +32,39 @@ const N = (d) => {
30
32
  customAppearanceMergetags: !0,
31
33
  customAppearanceMergetagsBorderColor: "#f1f3fe",
32
34
  customAppearanceMergetagsBackgroundColor: "#f1f3fe",
33
- customViewStyles: T,
34
- conditionsEnabled: ((m = u.features) == null ? void 0 : m.displayConditions) ?? !0,
35
- customConditionsEnabled: ((g = u.features) == null ? void 0 : g.displayConditions) ?? !0,
36
- conditionCategories: F,
35
+ customViewStyles: B,
36
+ conditionsEnabled: !0,
37
+ customConditionsEnabled: !0,
38
+ conditionCategories: y,
37
39
  enableXSSSecurity: !0,
38
40
  messageSettingsEnabled: !1,
39
41
  selectBlockAfterDropFromSettingsPanel: !0,
40
- ...e ? { baseBlocks: e } : {},
41
42
  editorFonts: {
42
43
  showDefaultStandardFonts: !0,
43
44
  showDefaultNotStandardFonts: !0,
44
- customFonts: r
45
+ customFonts: i
45
46
  },
46
47
  mergeTags: [
47
48
  {
48
- entries: I(d.preselectedDynamicContentList)
49
+ entries: x(a.preselectedDynamicContentList)
49
50
  }
50
51
  ],
51
52
  async onTokenRefreshRequest(o) {
52
53
  try {
53
- const s = await f();
54
- o(s);
55
- } catch (s) {
56
- l(s, "Failed to refresh token");
54
+ const e = await u();
55
+ o(e);
56
+ } catch (e) {
57
+ d(e, "Failed to refresh token");
57
58
  }
58
59
  },
59
60
  onTemplateLoaded() {
60
61
  try {
61
- const { importCss: o } = B(), { activateCustomViewStyles: s } = h();
62
- o(), s(), d.onReady(), t.isStripoInitialized = !0, t.loadingStatus = !1, setTimeout(() => {
62
+ const { importCss: o } = S(), { activateCustomViewStyles: e } = f();
63
+ o(), e(), a.onReady(), t.isStripoInitialized = !0, t.loadingStatus = !1, setTimeout(() => {
63
64
  t.hasChanges = !1;
64
65
  }, 1e3);
65
66
  } catch (o) {
66
- l(o, "Failed to load custom interface appearance");
67
+ d(o, "Failed to load custom interface appearance");
67
68
  }
68
69
  },
69
70
  onCodeEditorVisibilityChanged(o) {
@@ -78,32 +79,38 @@ const N = (d) => {
78
79
  onDataChanged() {
79
80
  t.hasChanges = !0;
80
81
  },
81
- onEvent: C,
82
+ onEvent: p,
82
83
  ignoreClickOutsideSelectors: [
83
84
  "#guido-dynamic-content-modal",
84
85
  ".in-on-board-wrapper",
85
86
  ".in-drawer__container"
86
87
  ],
87
- extensions: c
88
+ extensions: [
89
+ _,
90
+ h,
91
+ b,
92
+ V,
93
+ w
94
+ ]
88
95
  }
89
96
  );
90
- }, w = (i) => new Promise((r, t) => {
91
- var c;
97
+ }, g = (r) => new Promise((i, t) => {
98
+ var e;
92
99
  if (document.getElementById("UiEditorScript")) {
93
- i(), r();
100
+ r(), i();
94
101
  return;
95
102
  }
96
- const n = M.guido, a = `https://email-static.useinsider.com/guido/${(c = n == null ? void 0 : n.stripo) == null ? void 0 : c.version}/UIEditor.js`, e = document.createElement("script");
97
- e.id = "UiEditorScript", e.type = "module", e.src = a, e.onload = () => {
98
- i(), r();
99
- }, e.onerror = () => {
100
- t(new Error(`Failed to load Stripo UIEditor script from S3: ${a}`));
101
- }, document.body.appendChild(e);
103
+ const n = A.guido, s = `https://email-static.useinsider.com/guido/${(e = n == null ? void 0 : n.stripo) == null ? void 0 : e.version}/UIEditor.js`, o = document.createElement("script");
104
+ o.id = "UiEditorScript", o.type = "module", o.src = s, o.onload = () => {
105
+ r(), i();
106
+ }, o.onerror = () => {
107
+ t(new Error(`Failed to load Stripo UIEditor script from S3: ${s}`));
108
+ }, document.body.appendChild(o);
102
109
  });
103
- return { initPlugin: async (i) => {
104
- await w(async () => {
105
- const r = await S();
106
- await E(i, r);
110
+ return { initPlugin: async (r) => {
111
+ await g(async () => {
112
+ const i = await m();
113
+ l(r, i);
107
114
  });
108
115
  } };
109
116
  };
@@ -1,41 +1,36 @@
1
- import { usePartner as N } from "../../composables/usePartner.js";
2
- import { LINK_REGEXES as l, LINK_TYPES as g, INSIDER_ID as f, URLS as S } from "../../enums/unsubscribe.js";
3
- import { parsePageList as U } from "../../extensions/Blocks/Unsubscribe/utils/utils.js";
4
- import { useConfigStore as B } from "../../stores/config.js";
5
- import { useDynamicContentStore as y } from "../../stores/dynamic-content.js";
6
- import { useUnsubscribeStore as L } from "../../stores/unsubscribe.js";
7
- const D = [
1
+ import { usePartner as U } from "../../composables/usePartner.js";
2
+ import { LINK_REGEXES as l, LINK_TYPES as b, URLS as f } from "../../enums/unsubscribe.js";
3
+ import { parsePageList as B } from "../../extensions/Blocks/Unsubscribe/utils/utils.js";
4
+ import { useConfigStore as N } from "../../stores/config.js";
5
+ import { useUnsubscribeStore as I } from "../../stores/unsubscribe.js";
6
+ const T = [
8
7
  {
9
8
  id: "add-unsubscribe-link-values",
10
9
  description: "Adding unsubscribe link values",
11
10
  type: "custom",
12
11
  processor: (t) => {
13
- const { getPartnerName: i } = N(), c = B(), n = y(), u = L(), a = c.getVariationId;
14
- if (!a)
12
+ const { getPartnerName: i } = U(), a = N(), n = I(), u = a.getVariationId;
13
+ if (!u)
15
14
  return t;
16
- let e = t;
17
- const r = `/${i()}/email/${a}?user={{iid}}`;
18
- return new DOMParser().parseFromString(e, "text/html").querySelectorAll(".unsubscribe-block-v2[data-unsubscribe-page-list]").forEach((p) => {
19
- var b;
20
- const m = p.getAttribute("data-unsubscribe-page-list");
21
- if (!m)
15
+ let o = t;
16
+ const e = `/${i()}/email/${u}?user={{iid}}`;
17
+ return new DOMParser().parseFromString(o, "text/html").querySelectorAll(".unsubscribe-block-v2[data-unsubscribe-page-list]").forEach((p) => {
18
+ var g;
19
+ const d = p.getAttribute("data-unsubscribe-page-list");
20
+ if (!d)
22
21
  return;
23
- const R = U(m), d = ((b = u.templates) == null ? void 0 : b.filter(
24
- (o) => R.includes(o.id)
25
- )) ?? [], _ = d.some((o) => o.type === g.UNSUBSCRIBE_LINK_TYPE), I = d.some((o) => o.type === g.PREFERENCES_LINK_TYPE), E = p.outerHTML;
22
+ const S = B(d), m = ((g = n.templates) == null ? void 0 : g.filter(
23
+ (c) => S.includes(c.id)
24
+ )) ?? [], R = m.some((c) => c.type === b.UNSUBSCRIBE_LINK_TYPE), _ = m.some((c) => c.type === b.PREFERENCES_LINK_TYPE), E = p.outerHTML;
26
25
  let s = E;
27
- _ && (n.selectedDynamicContentList.push({
28
- text: f,
29
- value: f,
30
- fallback: ""
31
- }), s = s.replace(
26
+ R && (s = s.replace(
32
27
  l.GLOBAL_UNSUBSCRIBE_LINK_REGEX,
33
- S.UNSUBSCRIBE_URL + r
34
- )), I && (s = s.replace(
28
+ f.UNSUBSCRIBE_URL + e
29
+ )), _ && (s = s.replace(
35
30
  l.PREFERENCES_UNSUBSCRIBE_LINK_REGEX,
36
- S.PREFERENCES_URL + r
37
- )), s = s.replace(l.UNSUBSCRIBE_LINK_REGEX, ""), e = e.replace(E, s);
38
- }), e;
31
+ f.PREFERENCES_URL + e
32
+ )), s = s.replace(l.UNSUBSCRIBE_LINK_REGEX, ""), o = o.replace(E, s);
33
+ }), o;
39
34
  },
40
35
  priority: 60
41
36
  },
@@ -61,16 +56,16 @@ const D = [
61
56
  type: "custom",
62
57
  processor: (t) => {
63
58
  let i = t;
64
- const c = i.match(/<a[^>]+>(.*?)<\/a>/gm);
65
- return c && c.forEach((n) => {
59
+ const a = i.match(/<a[^>]+>(.*?)<\/a>/gm);
60
+ return a && a.forEach((n) => {
66
61
  if (n.includes("insEmail=1"))
67
62
  return;
68
63
  if (n.match(/<a\s+(?:[^>]*?\s+)?href=(["'`”])(.*?)\1\s+(?:[^>]*?\s+)?universal=(["'`”])true\3/gm)) {
69
- const a = n.replace(/href=(["'`”])(.*?)\1/gm, (e) => {
64
+ const o = n.replace(/href=(["'`”])(.*?)\1/gm, (e) => {
70
65
  const r = e.slice(6, e.length - 1).trim();
71
66
  return e.includes("?") || e.includes("#") ? r.slice(-1) === "&" ? e.replace(r, `${r}insEmail=1`) : e.replace(r, `${r}&insEmail=1`) : e.replace(r, `${r}?insEmail=1`);
72
67
  });
73
- i = i.replace(n, a);
68
+ i = i.replace(n, o);
74
69
  }
75
70
  }), i;
76
71
  },
@@ -78,5 +73,5 @@ const D = [
78
73
  }
79
74
  ];
80
75
  export {
81
- D as unsubscribeCompilerRules
76
+ T as unsubscribeCompilerRules
82
77
  };
@@ -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
- const e = {
1
+ const a = {
2
2
  translationsPath: "window.trans.en",
3
- migrationDate: 1759696858,
4
3
  emailHeader: {
5
4
  senderName: "",
6
5
  subject: ""
@@ -8,25 +7,18 @@ const e = {
8
7
  extensions: {
9
8
  unsubscribe: !0
10
9
  },
11
- blocks: {
12
- excludeDefaults: [],
13
- includeCustoms: []
14
- },
15
10
  features: {
16
11
  dynamicContent: !0,
17
12
  saveAsTemplate: !0,
18
- versionHistory: !0,
19
- testMessage: !0,
20
- displayConditions: !0
13
+ versionHistory: !0
21
14
  },
22
15
  useHeader: !0
23
16
  }, t = {
24
17
  promotional: 1,
25
18
  transactional: 2
26
- }, a = "email", o = "Guido User", s = t.promotional, n = 2, i = {
19
+ }, e = "email", o = "Guido User", n = t.promotional, s = 2, i = {
27
20
  email: 60,
28
- architect: 49,
29
- unsubscribePages: 97
21
+ architect: 49
30
22
  }, u = [
31
23
  "alfredtesting",
32
24
  "electio",
@@ -60,11 +52,11 @@ const e = {
60
52
  "stripoeditorlivetest"
61
53
  ];
62
54
  export {
63
- e as DefaultGuidoConfig,
64
- s as DefaultMessageType,
65
- a as DefaultProductType,
55
+ a as DefaultGuidoConfig,
56
+ n as DefaultMessageType,
57
+ e as DefaultProductType,
66
58
  o as DefaultUsername,
67
- n as EditorType,
59
+ s as EditorType,
68
60
  i as ProductIds,
69
61
  u as TEST_PARTNER_LIST,
70
62
  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
  };