@useinsider/guido 1.0.3-beta.391f32c → 1.0.3-beta.3cb36f8

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 (95) hide show
  1. package/dist/@types/generic.d.ts +0 -8
  2. package/dist/components/Guido.vue.d.ts +2 -2
  3. package/dist/components/Guido.vue.js +8 -8
  4. package/dist/components/Guido.vue2.js +64 -68
  5. package/dist/components/wrappers/WpDrawer.vue.d.ts +4 -6
  6. package/dist/components/wrappers/WpDrawer.vue.js +4 -6
  7. package/dist/composables/useStripo.js +25 -31
  8. package/dist/config/compiler/unsubscribeCompilerRules.js +19 -19
  9. package/dist/config/migrator/index.d.ts +1 -1
  10. package/dist/config/migrator/index.js +5 -6
  11. package/dist/enums/defaults.js +3 -6
  12. package/dist/enums/unsubscribe.d.ts +0 -19
  13. package/dist/enums/unsubscribe.js +6 -39
  14. package/dist/extensions/Blocks/Checkbox/block.d.ts +0 -1
  15. package/dist/extensions/Blocks/Checkbox/block.js +24 -15
  16. package/dist/extensions/Blocks/Checkbox/control.js +38 -24
  17. package/dist/extensions/Blocks/Checkbox/extension.js +16 -5
  18. package/dist/extensions/Blocks/Checkbox/settingsPanel.js +25 -12
  19. package/dist/extensions/Blocks/Checkbox/template.js +16 -5
  20. package/dist/extensions/Blocks/RadioButton/block.d.ts +0 -1
  21. package/dist/extensions/Blocks/RadioButton/block.js +22 -13
  22. package/dist/extensions/Blocks/RadioButton/control.js +46 -32
  23. package/dist/extensions/Blocks/RadioButton/extension.js +15 -4
  24. package/dist/extensions/Blocks/RadioButton/settingsPanel.js +26 -13
  25. package/dist/extensions/Blocks/RadioButton/template.js +18 -7
  26. package/dist/extensions/Blocks/_Boilerplate/block.d.ts +0 -1
  27. package/dist/extensions/DynamicContent/dynamic-content.js +45 -31
  28. package/dist/extensions/DynamicContent/extension.js +18 -6
  29. package/dist/guido.css +1 -1
  30. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/Extension.js +75 -0
  31. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ExtensionBuilder.js +77 -0
  32. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/blocks/Block.js +123 -0
  33. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/AiAssistantValueType.js +7 -0
  34. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockCompositionType.js +7 -0
  35. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockName.js +12 -0
  36. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BlockType.js +7 -0
  37. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/BuiltInControlTypes.js +119 -0
  38. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/ContextActionType.js +7 -0
  39. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/EditorStatePropertyType.js +7 -0
  40. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/PanelPosition.js +7 -0
  41. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/Popover.js +12 -0
  42. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/PreviewDeviceMode.js +7 -0
  43. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/SettingsTab.js +7 -0
  44. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementType.js +7 -0
  45. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/constants/UIElementsAttributes.js +24 -0
  46. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/Control.js +24 -0
  47. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelRegistry.js +11 -0
  48. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/controls/SettingsPanelTab.js +33 -0
  49. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/modifications/ModificationDescription.js +22 -0
  50. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElement.js +40 -0
  51. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/ui-elements/UIElementTagRegistry.js +5 -0
  52. package/dist/stores/unsubscribe.d.ts +5 -183
  53. package/dist/stores/unsubscribe.js +6 -125
  54. package/package.json +2 -2
  55. package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.d.ts +0 -2
  56. package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.js +0 -18
  57. package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue2.js +0 -16
  58. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.d.ts +0 -2
  59. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.js +0 -24
  60. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue2.js +0 -64
  61. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.d.ts +0 -2
  62. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +0 -18
  63. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +0 -108
  64. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.d.ts +0 -2
  65. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.js +0 -18
  66. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue2.js +0 -12
  67. package/dist/config/migrator/unsubscribeMigrator.d.ts +0 -1
  68. package/dist/config/migrator/unsubscribeMigrator.js +0 -112
  69. package/dist/extensions/Blocks/Checkbox/iconsRegistry.d.ts +0 -4
  70. package/dist/extensions/Blocks/Checkbox/iconsRegistry.js +0 -18
  71. package/dist/extensions/Blocks/RadioButton/iconsRegistry.d.ts +0 -4
  72. package/dist/extensions/Blocks/RadioButton/iconsRegistry.js +0 -14
  73. package/dist/extensions/Blocks/Unsubscribe/block.d.ts +0 -31
  74. package/dist/extensions/Blocks/Unsubscribe/block.js +0 -131
  75. package/dist/extensions/Blocks/Unsubscribe/control.d.ts +0 -29
  76. package/dist/extensions/Blocks/Unsubscribe/control.js +0 -167
  77. package/dist/extensions/Blocks/Unsubscribe/elements/preview.d.ts +0 -11
  78. package/dist/extensions/Blocks/Unsubscribe/elements/preview.js +0 -42
  79. package/dist/extensions/Blocks/Unsubscribe/extension.d.ts +0 -2
  80. package/dist/extensions/Blocks/Unsubscribe/extension.js +0 -20
  81. package/dist/extensions/Blocks/Unsubscribe/settingsPanel.d.ts +0 -4
  82. package/dist/extensions/Blocks/Unsubscribe/settingsPanel.js +0 -19
  83. package/dist/extensions/Blocks/Unsubscribe/styles.css.js +0 -42
  84. package/dist/extensions/Blocks/Unsubscribe/tagRegistry.d.ts +0 -4
  85. package/dist/extensions/Blocks/Unsubscribe/tagRegistry.js +0 -10
  86. package/dist/extensions/Blocks/Unsubscribe/template.d.ts +0 -12
  87. package/dist/extensions/Blocks/Unsubscribe/template.js +0 -22
  88. package/dist/extensions/Blocks/Unsubscribe/utils/constants.d.ts +0 -9
  89. package/dist/extensions/Blocks/Unsubscribe/utils/constants.js +0 -11
  90. package/dist/extensions/Blocks/Unsubscribe/utils/utils.d.ts +0 -7
  91. package/dist/extensions/Blocks/Unsubscribe/utils/utils.js +0 -6
  92. package/dist/extensions/Blocks/_Boilerplate/iconsRegistry.d.ts +0 -4
  93. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +0 -648
  94. package/dist/services/unsubscribeApi.d.ts +0 -4
  95. package/dist/services/unsubscribeApi.js +0 -16
@@ -1,7 +1,4 @@
1
1
  import type { CompilerRule } from './html-compiler';
2
- type Extensions = {
3
- unsubscribe?: boolean;
4
- };
5
2
  type Features = {
6
3
  dynamicContent?: boolean;
7
4
  saveAsTemplate?: boolean;
@@ -19,13 +16,8 @@ export type GuidoConfig = {
19
16
  useHeader?: boolean;
20
17
  emailHeader: EmailHeader;
21
18
  partner?: Partner;
22
- extensions?: Extensions;
23
19
  features?: Features;
24
20
  };
25
- export type TemplateConfig = {
26
- preselectedDynamicContentList: DynamicContent[];
27
- selectedUnsubscribePages?: number[];
28
- };
29
21
  export type DynamicContent = {
30
22
  value: string;
31
23
  text: string;
@@ -1,4 +1,4 @@
1
- import type { DynamicContent, GuidoConfig, TemplateConfig } from '@@/Types/generic';
1
+ import type { DynamicContent, GuidoConfig } from '@@/Types/generic';
2
2
  import type { SavedTemplateDetails } from '@@/Types/stripo';
3
3
  type __VLS_Props = {
4
4
  templateId: string;
@@ -9,8 +9,8 @@ type __VLS_Props = {
9
9
  username?: string;
10
10
  html?: string;
11
11
  css?: string;
12
+ preselectedDynamicContentList: DynamicContent[];
12
13
  guidoConfig: GuidoConfig;
13
- templateConfig?: TemplateConfig;
14
14
  };
15
15
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToOption<__VLS_Props>, {
16
16
  dynamicContent: {
@@ -1,16 +1,16 @@
1
- import a from "./Guido.vue2.js";
1
+ import o from "./Guido.vue2.js";
2
2
  /* empty css */
3
3
  import i from "../_virtual/_plugin-vue2_normalizer.js";
4
- var s = function() {
5
- var o = this, r = o._self._c, e = o._self._setupProxy;
6
- return r("div", { staticClass: "guido-editor__wrapper", class: { "guido-editor__no-header": e.noHeader } }, [r(e.HeaderWrapper, { ref: "headerWrapperRef" }), e.editorStore.isPreviewModeOpen ? r(e.PreviewContainer) : o._e(), r("div", { directives: [{ name: "show", rawName: "v-show", value: !e.previewStore.isLoaded, expression: "!previewStore.isLoaded" }], staticClass: "guido-editor__container", class: { "guido-editor__no-header": e.noHeader }, attrs: { id: "guido-editor" } }), r(e.Toaster), r(e.SaveAsTemplateDrawer), e.isTestPartner() ? o._e() : r(e.OnboardingWrapper), r(e.UnsubscribeWrapper), r(e.LoadingWrapper)], 1);
7
- }, t = [], d = /* @__PURE__ */ i(
8
- a,
9
- s,
4
+ var t = function() {
5
+ var a = this, r = a._self._c, e = a._self._setupProxy;
6
+ return r("div", { staticClass: "guido-editor__wrapper", class: { "guido-editor__no-header": e.noHeader } }, [r(e.HeaderWrapper, { ref: "headerWrapperRef" }), e.editorStore.isPreviewModeOpen ? r(e.PreviewContainer) : a._e(), r("div", { directives: [{ name: "show", rawName: "v-show", value: !e.previewStore.isLoaded, expression: "!previewStore.isLoaded" }], staticClass: "guido-editor__container", class: { "guido-editor__no-header": e.noHeader }, attrs: { id: "guido-editor" } }), r(e.Toaster), r(e.SaveAsTemplateDrawer), e.isTestPartner() ? a._e() : r(e.OnboardingWrapper), r(e.LoadingWrapper)], 1);
7
+ }, s = [], d = /* @__PURE__ */ i(
8
+ o,
10
9
  t,
10
+ s,
11
11
  !1,
12
12
  null,
13
- "85d64228"
13
+ "aca05338"
14
14
  );
15
15
  const v = d.exports;
16
16
  export {
@@ -1,21 +1,19 @@
1
- import { defineComponent as R, defineAsyncComponent as G, ref as x, computed as U, watch as F, onMounted as M, onUnmounted as z } from "vue";
2
- import { provideGuidoActions as B } from "../composables/useGuidoActions.js";
3
- import { usePartner as K } from "../composables/usePartner.js";
4
- import { useStripo as O } from "../composables/useStripo.js";
5
- import { migrate as I } from "../config/migrator/index.js";
6
- import { DefaultUsername as j, DefaultMessageType as q, DefaultGuidoConfig as J } from "../enums/defaults.js";
7
- import Q from "./organisms/base/Toaster.vue.js";
8
- import V from "./organisms/header/HeaderWrapper.vue.js";
9
- import X from "./organisms/LoadingWrapper.vue.js";
10
- import Y from "./organisms/save-as-template/SaveAsTemplateDrawer.vue.js";
11
- import Z from "./organisms/unsubscribe/UnsubscribeWrapper.vue.js";
12
- import { useStripoApi as $ } from "../services/stripoApi.js";
13
- import { useDynamicContentStore as ee } from "../stores/dynamic-content.js";
14
- import { useEditorStore as oe } from "../stores/editor.js";
15
- import { usePreviewStore as te } from "../stores/preview.js";
16
- import { useUnsubscribeStore as ne } from "../stores/unsubscribe.js";
17
- import re from "../node_modules/lodash-es/merge.js";
18
- const Se = /* @__PURE__ */ R({
1
+ import { defineComponent as H, defineAsyncComponent as E, ref as R, computed as G, watch as U, onMounted as x, onUnmounted as F } from "vue";
2
+ import { provideGuidoActions as M } from "../composables/useGuidoActions.js";
3
+ import { usePartner as z } from "../composables/usePartner.js";
4
+ import { useStripo as B } from "../composables/useStripo.js";
5
+ import { migrate as P } from "../config/migrator/index.js";
6
+ import { DefaultUsername as K, DefaultMessageType as O, DefaultGuidoConfig as j } from "../enums/defaults.js";
7
+ import q from "./organisms/base/Toaster.vue.js";
8
+ import J from "./organisms/header/HeaderWrapper.vue.js";
9
+ import Q from "./organisms/LoadingWrapper.vue.js";
10
+ import V from "./organisms/save-as-template/SaveAsTemplateDrawer.vue.js";
11
+ import { useStripoApi as X } from "../services/stripoApi.js";
12
+ import { useDynamicContentStore as Y } from "../stores/dynamic-content.js";
13
+ import { useEditorStore as Z } from "../stores/editor.js";
14
+ import { usePreviewStore as $ } from "../stores/preview.js";
15
+ import ee from "../node_modules/lodash-es/merge.js";
16
+ const ye = /* @__PURE__ */ H({
19
17
  __name: "Guido",
20
18
  props: {
21
19
  templateId: null,
@@ -26,50 +24,49 @@ const Se = /* @__PURE__ */ R({
26
24
  username: null,
27
25
  html: null,
28
26
  css: null,
29
- guidoConfig: null,
30
- templateConfig: null
27
+ preselectedDynamicContentList: null,
28
+ guidoConfig: null
31
29
  },
32
30
  emits: ["dynamic-content:open", "back", "save:start", "save:complete", "on-change", "ready"],
33
- setup(W, { expose: _, emit: o }) {
34
- const d = W, L = G(
31
+ setup(I, { expose: L, emit: o }) {
32
+ const r = I, _ = E(
35
33
  () => import("./organisms/email-preview/PreviewContainer.vue.js")
36
- ), k = G(
34
+ ), W = E(
37
35
  () => import("./organisms/onboarding/OnboardingWrapper.vue.js")
38
- ), m = x(), s = ee(), u = ne(), l = oe(), A = te(), n = U(() => l.hasChanges), { getPartnerName: p, getProductType: g, isTestPartner: N } = K(), f = () => {
36
+ ), d = R(), a = Y(), m = Z(), k = $(), t = G(() => m.hasChanges), i = r.preselectedDynamicContentList || [], { getPartnerName: l, getProductType: u, isTestPartner: A } = z(), p = () => {
39
37
  var e;
40
- return (e = m.value) == null ? void 0 : e.handleSave(!0);
38
+ return (e = d.value) == null ? void 0 : e.handleSave(!0);
41
39
  }, {
42
- templateId: y,
43
- userId: v,
44
- guidoConfig: b,
45
- templateConfig: t,
46
- html: r = "",
47
- css: h = "",
48
- partnerName: a = p(),
49
- productType: i = g(),
50
- messageType: C = q,
51
- username: w = j
52
- } = d, c = (t == null ? void 0 : t.preselectedDynamicContentList) || [];
53
- window.GuidoConfig = re(J, b), window.GuidoConfig.partner = {
54
- partnerName: a,
55
- productType: i,
40
+ templateId: g,
41
+ userId: f,
42
+ guidoConfig: y,
43
+ html: n = "",
44
+ css: v = "",
45
+ partnerName: s = l(),
46
+ productType: c = u(),
47
+ messageType: C = O,
48
+ username: h = K
49
+ } = r;
50
+ window.GuidoConfig = ee(j, y), window.GuidoConfig.partner = {
51
+ partnerName: s,
52
+ productType: c,
56
53
  messageType: C
57
54
  };
58
- const { initPlugin: S } = O({
59
- emailId: y,
60
- userId: v,
61
- username: w,
62
- partnerName: a,
63
- productType: i,
64
- preselectedDynamicContentList: c,
55
+ const { initPlugin: w } = B({
56
+ emailId: g,
57
+ userId: f,
58
+ username: h,
59
+ partnerName: s,
60
+ productType: c,
61
+ preselectedDynamicContentList: i,
65
62
  onReady: () => {
66
63
  console.debug("guido:ready"), o("ready");
67
64
  }
68
- }), { getDefaultTemplate: D } = $(), H = U(() => {
65
+ }), { getDefaultTemplate: S } = X(), N = G(() => {
69
66
  var e;
70
67
  return !((e = window.GuidoConfig) != null && e.useHeader);
71
68
  });
72
- B({
69
+ M({
73
70
  onBack: () => {
74
71
  console.debug("guido:back"), o("back");
75
72
  },
@@ -80,47 +77,46 @@ const Se = /* @__PURE__ */ R({
80
77
  console.debug("guido:save:complete", e), o("save:complete", e);
81
78
  }
82
79
  });
83
- const T = (e) => {
84
- console.debug("dynamic-content:close", e), s.setSelectedDynamicContent(e), document.dispatchEvent(new CustomEvent("dynamic-content:close", { detail: e }));
85
- }, E = () => {
80
+ const b = (e) => {
81
+ console.debug("dynamic-content:close", e), a.setSelectedDynamicContent(e), document.dispatchEvent(new CustomEvent("dynamic-content:close", { detail: e }));
82
+ }, D = () => {
86
83
  console.debug("dynamic-content:close", "Without Data"), document.dispatchEvent(new CustomEvent("dynamic-content:close", { detail: { text: "", value: "" } }));
87
84
  };
88
- return F(() => n.value, () => {
89
- o("on-change", n.value);
90
- }), M(async () => {
85
+ return U(() => t.value, () => {
86
+ o("on-change", t.value);
87
+ }), x(async () => {
91
88
  console.debug("Guido says happy coding 🎉"), console.debug("🚗 Ka-Chow");
92
89
  try {
93
- u.selectedUnsubscribePages = (t == null ? void 0 : t.selectedUnsubscribePages) || [];
94
90
  let e = {
95
- html: r && await I(r),
96
- css: h,
91
+ html: n && P(n),
92
+ css: v,
97
93
  forceRecreate: !0
98
94
  // TODO: It should be false for old templates. We will communicate with Stripo
99
95
  };
100
- e.html || (e = await D(), e.html = await I(e.html)), await S(e), s.selectedDynamicContentList = c;
96
+ e.html || (e = await S(), e.html = P(e.html)), await w(e), a.selectedDynamicContentList = i;
101
97
  } catch (e) {
102
98
  console.error("Failed to initialize Stripo editor:", e);
103
99
  }
104
100
  document.addEventListener("dynamic-content:open", (e) => {
105
- const P = e;
106
- console.debug("dynamic-content:open", P.detail), o("dynamic-content:open", P.detail);
101
+ const T = e;
102
+ console.debug("dynamic-content:open", T.detail), o("dynamic-content:open", T.detail);
107
103
  });
108
- }), z(() => {
104
+ }), F(() => {
109
105
  try {
110
106
  window.UIEditor.removeEditor();
111
107
  } catch {
112
108
  console.debug("Failed to remove Stripo editor: No editor found");
113
109
  }
114
- }), _({
110
+ }), L({
115
111
  dynamicContent: {
116
- insert: T,
117
- close: E
112
+ insert: b,
113
+ close: D
118
114
  },
119
- hasChanges: n,
120
- saveSilent: f
121
- }), { __sfc: !0, PreviewContainer: L, OnboardingWrapper: k, headerWrapperRef: m, dynamicContentStore: s, unsubscribeStore: u, props: d, editorStore: l, previewStore: A, hasChanges: n, getPartnerName: p, getProductType: g, isTestPartner: N, saveSilent: f, templateId: y, userId: v, guidoConfig: b, templateConfig: t, html: r, css: h, partnerName: a, productType: i, messageType: C, username: w, preselectedDynamicContentList: c, emit: o, initPlugin: S, getDefaultTemplate: D, noHeader: H, insertDynamicContent: T, closeDynamicContent: E, Toaster: Q, HeaderWrapper: V, LoadingWrapper: X, SaveAsTemplateDrawer: Y, UnsubscribeWrapper: Z };
115
+ hasChanges: t,
116
+ saveSilent: p
117
+ }), { __sfc: !0, PreviewContainer: _, OnboardingWrapper: W, headerWrapperRef: d, dynamicContentStore: a, props: r, editorStore: m, previewStore: k, hasChanges: t, preselectedDynamicContentList: i, getPartnerName: l, getProductType: u, isTestPartner: A, saveSilent: p, templateId: g, userId: f, guidoConfig: y, html: n, css: v, partnerName: s, productType: c, messageType: C, username: h, emit: o, initPlugin: w, getDefaultTemplate: S, noHeader: N, insertDynamicContent: b, closeDynamicContent: D, Toaster: q, HeaderWrapper: J, LoadingWrapper: Q, SaveAsTemplateDrawer: V };
122
118
  }
123
119
  });
124
120
  export {
125
- Se as default
121
+ ye as default
126
122
  };
@@ -2,7 +2,7 @@ import type { FooterButtonGroupOptions } from '@@/Types/wrappers/wp-drawer';
2
2
  interface Props {
3
3
  id: string;
4
4
  className?: string;
5
- size?: 'small' | 'medium' | 'large';
5
+ size?: string;
6
6
  closeOnOutsideClick?: boolean;
7
7
  descriptionStatus?: boolean;
8
8
  descriptionText?: string;
@@ -10,11 +10,9 @@ interface Props {
10
10
  status: boolean;
11
11
  titleText: string;
12
12
  }
13
- declare var __VLS_12: {}, __VLS_14: {};
13
+ declare var __VLS_12: {};
14
14
  type __VLS_Slots = {} & {
15
- headerBottomSlot?: (props: typeof __VLS_12) => any;
16
- } & {
17
- default?: (props: typeof __VLS_14) => any;
15
+ default?: (props: typeof __VLS_12) => any;
18
16
  };
19
17
  declare const __VLS_component: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToOption<Props>, {
20
18
  className: string;
@@ -34,7 +32,7 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_WithDefaults<
34
32
  descriptionText: string;
35
33
  }>>>, {
36
34
  className: string;
37
- size: "small" | "medium" | "large";
35
+ size: string;
38
36
  closeOnOutsideClick: boolean;
39
37
  descriptionStatus: boolean;
40
38
  descriptionText: string;
@@ -1,6 +1,6 @@
1
1
  import r from "./WpDrawer.vue2.js";
2
2
  import s from "../../_virtual/_plugin-vue2_normalizer.js";
3
- var u = function() {
3
+ var i = function() {
4
4
  var t = this, n = t._self._c, e = t._self._setupProxy;
5
5
  return n(e.InDrawer, { class: t.className, attrs: { id: t.id, "footer-status": "", "close-on-outside-click": t.closeOnOutsideClick, "description-status": t.descriptionStatus, "description-text": t.descriptionText, "footer-button-group-options": t.footerButtonGroupOptions, size: t.size, status: t.status, "title-text": t.titleText }, on: { cancelOrBackButtonEvent: function(o) {
6
6
  return e.emit("cancelOrBackButtonEvent");
@@ -8,15 +8,13 @@ var u = function() {
8
8
  return e.emit("onCloseEvent");
9
9
  }, primaryButtonEvent: function(o) {
10
10
  return e.emit("primaryButtonEvent");
11
- } }, scopedSlots: t._u([t.$slots.headerBottomSlot ? { key: "headerBottomSlot", fn: function() {
12
- return [t._t("headerBottomSlot")];
13
- }, proxy: !0 } : null, { key: "contentSlot", fn: function() {
11
+ } }, scopedSlots: t._u([{ key: "contentSlot", fn: function() {
14
12
  return [n("div", [t._t("default")], 2)];
15
13
  }, proxy: !0 }], null, !0) });
16
- }, i = [], c = /* @__PURE__ */ s(
14
+ }, u = [], c = /* @__PURE__ */ s(
17
15
  r,
18
- u,
19
16
  i,
17
+ u,
20
18
  !1,
21
19
  null,
22
20
  null
@@ -5,15 +5,14 @@ import { useToaster as C } from "./useToaster.js";
5
5
  import { displayConditions as y } from "../enums/displayConditions.js";
6
6
  import h from "../extensions/Blocks/Checkbox/extension.js";
7
7
  import w from "../extensions/Blocks/RadioButton/extension.js";
8
- import b from "../extensions/Blocks/Unsubscribe/extension.js";
9
- import _ from "../extensions/DynamicContent/extension.js";
8
+ import b from "../extensions/DynamicContent/extension.js";
10
9
  import { useStripoApi as k } from "../services/stripoApi.js";
11
10
  import B from "../static/styles/customEditorStyle.css.js";
12
11
  import { useEditorStore as V } from "../stores/editor.js";
13
- import { dynamicContentToMergeTags as F } from "../utils/genericUtil.js";
14
- const j = (s) => {
12
+ import { dynamicContentToMergeTags as _ } from "../utils/genericUtil.js";
13
+ const q = (s) => {
15
14
  const { handleError: d } = C(), { getToken: c, getCustomFonts: u } = k(), { handleEvent: l } = E(), m = (r, i = []) => {
16
- const t = V(), { html: e, css: a, forceRecreate: g } = r;
15
+ const o = V(), { html: e, css: a, forceRecreate: g } = r;
17
16
  window.UIEditor.initEditor(
18
17
  document.querySelector("#guido-editor"),
19
18
  {
@@ -44,54 +43,49 @@ const j = (s) => {
44
43
  },
45
44
  mergeTags: [
46
45
  {
47
- entries: F(s.preselectedDynamicContentList)
46
+ entries: _(s.preselectedDynamicContentList)
48
47
  }
49
48
  ],
50
- async onTokenRefreshRequest(o) {
49
+ async onTokenRefreshRequest(t) {
51
50
  try {
52
51
  const n = await c();
53
- o(n);
52
+ t(n);
54
53
  } catch (n) {
55
54
  d(n, "Failed to refresh token");
56
55
  }
57
56
  },
58
57
  onTemplateLoaded() {
59
58
  try {
60
- const { importCss: o } = S(), { activateCustomViewStyles: n } = f();
61
- o(), n(), s.onReady(), t.isStripoInitialized = !0, t.loadingStatus = !1, setTimeout(() => {
62
- t.hasChanges = !1;
59
+ const { importCss: t } = S(), { activateCustomViewStyles: n } = f();
60
+ t(), n(), s.onReady(), o.isStripoInitialized = !0, o.loadingStatus = !1, setTimeout(() => {
61
+ o.hasChanges = !1;
63
62
  }, 1e3);
64
- } catch (o) {
65
- d(o, "Failed to load custom interface appearance");
63
+ } catch (t) {
64
+ d(t, "Failed to load custom interface appearance");
66
65
  }
67
66
  },
68
- onCodeEditorVisibilityChanged(o) {
69
- t.isCodeEditorOpen = o;
67
+ onCodeEditorVisibilityChanged(t) {
68
+ o.isCodeEditorOpen = t;
70
69
  },
71
- onEditorVisualModeChanged(o) {
72
- t.editorVisualMode = o.toLowerCase();
70
+ onEditorVisualModeChanged(t) {
71
+ o.editorVisualMode = t.toLowerCase();
73
72
  },
74
- onVersionHistoryVisibilityChanged(o) {
75
- t.isVersionHistoryOpen = o;
73
+ onVersionHistoryVisibilityChanged(t) {
74
+ o.isVersionHistoryOpen = t;
76
75
  },
77
76
  onDataChanged() {
78
- t.hasChanges = !0;
77
+ o.hasChanges = !0;
79
78
  },
80
79
  onEvent: l,
81
- ignoreClickOutsideSelectors: [
82
- "#guido-dynamic-content-modal",
83
- ".in-on-board-wrapper",
84
- ".in-drawer__container"
85
- ],
80
+ ignoreClickOutsideSelectors: ["#guido-dynamic-content-modal", ".in-on-board-wrapper"],
86
81
  extensions: [
87
- _,
82
+ b,
88
83
  h,
89
- w,
90
- b
84
+ w
91
85
  ]
92
86
  }
93
87
  );
94
- }, p = (r) => new Promise((i, t) => {
88
+ }, p = (r) => new Promise((i, o) => {
95
89
  if (document.getElementById("UiEditorScript")) {
96
90
  r(), i();
97
91
  return;
@@ -101,7 +95,7 @@ const j = (s) => {
101
95
  r(), i();
102
96
  }, e.onerror = () => {
103
97
  const a = new Error("Failed to load Stripo UIEditor script");
104
- t(a);
98
+ o(a);
105
99
  }, document.body.appendChild(e);
106
100
  });
107
101
  return { initPlugin: async (r) => {
@@ -112,5 +106,5 @@ const j = (s) => {
112
106
  } };
113
107
  };
114
108
  export {
115
- j as useStripo
109
+ q as useStripo
116
110
  };
@@ -1,23 +1,23 @@
1
1
  import { usePartner as m } from "../../composables/usePartner.js";
2
- import { LINK_REGEXES as l, LINK_TYPES as p, URLS as d } from "../../enums/unsubscribe.js";
2
+ import { LINK_REGEXES as c, LINK_TYPES as p, URLS as E } from "../../enums/unsubscribe.js";
3
3
  import { useUnsubscribeStore as b } from "../../stores/unsubscribe.js";
4
4
  const S = [
5
5
  {
6
6
  id: "add-unsubscribe-link-values",
7
7
  description: "Adding unsubscribe link values",
8
8
  type: "custom",
9
- processor: (t) => {
9
+ processor: (n) => {
10
10
  var a, u;
11
- const { getPartnerName: n } = m(), i = b();
12
- let e = t;
13
- const c = `/${n()}/email/0?user={{iid}}`, r = (a = i.templates) == null ? void 0 : a.find((o) => i.selectedUnsubscribePages.includes(o.id) && o.type === p.UNSUBSCRIBE_LINK_TYPE), s = (u = i.templates) == null ? void 0 : u.find((o) => i.selectedUnsubscribePages.includes(o.id) && o.type === p.PREFERENCES_LINK_TYPE);
11
+ const { getPartnerName: i } = m(), t = b();
12
+ let e = n;
13
+ const o = `/${i()}/email/0?user={{iid}}`, r = (a = t.selectedUnsubscribePages) == null ? void 0 : a.find((l) => l.type === p.UNSUBSCRIBE_LINK_TYPE), s = (u = t.selectedUnsubscribePages) == null ? void 0 : u.find((l) => l.type === p.PREFERENCES_LINK_TYPE);
14
14
  return r && (e = e.replace(
15
- l.GLOBAL_UNSUBSCRIBE_LINK_REGEX,
16
- d.UNSUBSCRIBE_URL + c
15
+ c.GLOBAL_UNSUBSCRIBE_LINK_REGEX,
16
+ E.UNSUBSCRIBE_URL + o
17
17
  )), s && (e = e.replace(
18
- l.PREFERENCES_UNSUBSCRIBE_LINK_REGEX,
19
- d.PREFERENCES_URL + c
20
- )), e.replace(l.UNSUBSCRIBE_LINK_REGEX, "");
18
+ c.PREFERENCES_UNSUBSCRIBE_LINK_REGEX,
19
+ E.PREFERENCES_URL + o
20
+ )), e.replace(c.UNSUBSCRIBE_LINK_REGEX, "");
21
21
  },
22
22
  priority: 60
23
23
  },
@@ -25,7 +25,7 @@ const S = [
25
25
  id: "remove-data-ogsb-button-styles",
26
26
  description: "Removing styles like [data-ogsb] .es-button.es-button-123 { background: red; }",
27
27
  type: "regex",
28
- pattern: l.DATA_OGSB_BUTTON_CSS_REGEX,
28
+ pattern: c.DATA_OGSB_BUTTON_CSS_REGEX,
29
29
  replacement: "",
30
30
  flags: "g",
31
31
  priority: 61
@@ -34,27 +34,27 @@ const S = [
34
34
  id: "format-comment-braces",
35
35
  description: "Adding spaces around comment braces for proper formatting",
36
36
  type: "custom",
37
- processor: (t) => t.replace(/{#/g, "{ #").replace(/#}/g, "# }"),
37
+ processor: (n) => n.replace(/{#/g, "{ #").replace(/#}/g, "# }"),
38
38
  priority: 62
39
39
  },
40
40
  {
41
41
  id: "add-universal-link-flags",
42
42
  description: "Adding universal link flags",
43
43
  type: "custom",
44
- processor: (t) => {
45
- let n = t;
46
- const i = n.match(/<a[^>]+>(.*?)<\/a>/gm);
47
- return i && i.forEach((e) => {
44
+ processor: (n) => {
45
+ let i = n;
46
+ const t = i.match(/<a[^>]+>(.*?)<\/a>/gm);
47
+ return t && t.forEach((e) => {
48
48
  if (e.includes("insEmail=1"))
49
49
  return;
50
50
  if (e.match(/<a\s+(?:[^>]*?\s+)?href=(["'`”])(.*?)\1\s+(?:[^>]*?\s+)?universal=(["'`”])true\3/gm)) {
51
- const c = e.replace(/href=(["'`”])(.*?)\1/gm, (r) => {
51
+ const o = e.replace(/href=(["'`”])(.*?)\1/gm, (r) => {
52
52
  const s = r.slice(6, r.length - 1).trim();
53
53
  return r.includes("?") || r.includes("#") ? s.slice(-1) === "&" ? r.replace(s, `${s}insEmail=1`) : r.replace(s, `${s}&insEmail=1`) : r.replace(s, `${s}?insEmail=1`);
54
54
  });
55
- n = n.replace(e, c);
55
+ i = i.replace(e, o);
56
56
  }
57
- }), n;
57
+ }), i;
58
58
  },
59
59
  priority: 63
60
60
  }
@@ -1 +1 @@
1
- export declare const migrate: (html: string) => Promise<string>;
1
+ export declare const migrate: (html: string) => string;
@@ -1,10 +1,9 @@
1
- import { migrateCheckbox as m } from "./checkboxMigrator.js";
2
- import { migrateRadioButton as i } from "./radioButtonMigrator.js";
3
- import { migrateUnsubscribe as o } from "./unsubscribeMigrator.js";
4
- const n = async (r) => {
1
+ import { migrateCheckbox as o } from "./checkboxMigrator.js";
2
+ import { migrateRadioButton as e } from "./radioButtonMigrator.js";
3
+ const a = (r) => {
5
4
  let t = r;
6
- return t = m(t), t = i(t), t = await o(t), t;
5
+ return t = o(r), t = e(r), t;
7
6
  };
8
7
  export {
9
- n as migrate
8
+ a as migrate
10
9
  };
@@ -4,9 +4,6 @@ const a = {
4
4
  senderName: "",
5
5
  subject: ""
6
6
  },
7
- extensions: {
8
- unsubscribe: !0
9
- },
10
7
  features: {
11
8
  dynamicContent: !0,
12
9
  saveAsTemplate: !0,
@@ -16,7 +13,7 @@ const a = {
16
13
  }, t = {
17
14
  promotional: 1,
18
15
  transactional: 2
19
- }, e = "email", o = "Guido User", n = t.promotional, s = 2, i = {
16
+ }, e = "email", o = "Guido User", n = t.promotional, i = 2, s = {
20
17
  email: 60,
21
18
  architect: 49
22
19
  }, u = [
@@ -56,8 +53,8 @@ export {
56
53
  n as DefaultMessageType,
57
54
  e as DefaultProductType,
58
55
  o as DefaultUsername,
59
- s as EditorType,
60
- i as ProductIds,
56
+ i as EditorType,
57
+ s as ProductIds,
61
58
  u as TEST_PARTNER_LIST,
62
59
  t as TemplateTypes
63
60
  };
@@ -13,22 +13,3 @@ export declare const URLS: {
13
13
  PREFERENCES_URL: string;
14
14
  };
15
15
  export declare const INSIDER_ID = "iid";
16
- export declare const ACADEMY_LINK = "https://academy.useinsider.com/docs/global-unsubscribe-preference-center";
17
- export declare const UNSUBSCRIBE_PAGES_LINK = "/email/unsubscribe-pages";
18
- export declare const PAGE_TYPES: {
19
- GLOBAL_UNSUBSCRIBE: number;
20
- GLOBAL_UNSUBSCRIBE_CONFIRMATION_PAGE: number;
21
- SUBSCRIPTION_PREFERENCE_CENTER: number;
22
- SUBSCRIPTION_PREFERENCE_CONFIRMATION: number;
23
- RESUBSCRIBE: number;
24
- };
25
- export declare const TYPE_COLLECTIONS: {
26
- [x: number]: number[];
27
- };
28
- export declare const TYPE_TRANSLATIONS: {
29
- [x: number]: string;
30
- };
31
- export declare const MERGE_TAGS: {
32
- [x: number]: string;
33
- default: string;
34
- };
@@ -1,50 +1,17 @@
1
- import { useTranslations as e } from "../composables/useTranslations.js";
2
- const s = e(), n = {
1
+ const E = {
3
2
  UNSUBSCRIBE_LINK_TYPE: 1,
4
3
  PREFERENCES_LINK_TYPE: 3
5
- }, S = {
4
+ }, s = {
6
5
  UNSUBSCRIBE_LINK_REGEX: /{{ins-unsubscribe-link}}/g,
7
6
  DATA_OGSB_BUTTON_CSS_REGEX: "\\[data-ogsb\\]\\s*\\.es-button\\.es-button-[0-9]+\\s*\\{(?:[^\\}]*)\\}",
8
7
  GLOBAL_UNSUBSCRIBE_LINK_REGEX: /{{ins-global-unsubscribe-link}}/g,
9
8
  PREFERENCES_UNSUBSCRIBE_LINK_REGEX: /{{ins-preferences-unsubscribe-link}}/g
10
- }, N = {
9
+ }, _ = {
11
10
  UNSUBSCRIBE_URL: "https://mail.useinsider.com/user/v1/unsub",
12
11
  PREFERENCES_URL: "https://mail.useinsider.com/user/v1/prefs"
13
- }, _ = "https://academy.useinsider.com/docs/global-unsubscribe-preference-center", I = "/email/unsubscribe-pages", E = {
14
- GLOBAL_UNSUBSCRIBE: 1,
15
- GLOBAL_UNSUBSCRIBE_CONFIRMATION_PAGE: 2,
16
- SUBSCRIPTION_PREFERENCE_CENTER: 3,
17
- SUBSCRIPTION_PREFERENCE_CONFIRMATION: 4,
18
- RESUBSCRIBE: 5
19
- }, r = {
20
- [E.GLOBAL_UNSUBSCRIBE]: [
21
- E.GLOBAL_UNSUBSCRIBE,
22
- E.GLOBAL_UNSUBSCRIBE_CONFIRMATION_PAGE,
23
- E.RESUBSCRIBE
24
- ],
25
- [E.SUBSCRIPTION_PREFERENCE_CENTER]: [
26
- E.SUBSCRIPTION_PREFERENCE_CENTER,
27
- E.SUBSCRIPTION_PREFERENCE_CONFIRMATION
28
- ]
29
- }, i = {
30
- [E.GLOBAL_UNSUBSCRIBE]: s("unsubscription-preference.type-global-unsubscribe"),
31
- [E.GLOBAL_UNSUBSCRIBE_CONFIRMATION_PAGE]: s("unsubscription-preference.type-global-unsubscription-confirmation"),
32
- [E.RESUBSCRIBE]: s("unsubscription-preference.type-resubscribe"),
33
- [E.SUBSCRIPTION_PREFERENCE_CENTER]: s("unsubscription-preference.type-subscription-preferences-center"),
34
- [E.SUBSCRIPTION_PREFERENCE_CONFIRMATION]: s("unsubscription-preference.type-subscription-preferences-confirmation")
35
- }, B = {
36
- default: "{{ins-unsubscribe-link}}",
37
- [E.GLOBAL_UNSUBSCRIBE]: "{{ins-global-unsubscribe-link}}",
38
- [E.SUBSCRIPTION_PREFERENCE_CENTER]: "{{ins-preferences-unsubscribe-link}}"
39
12
  };
40
13
  export {
41
- _ as ACADEMY_LINK,
42
- S as LINK_REGEXES,
43
- n as LINK_TYPES,
44
- B as MERGE_TAGS,
45
- E as PAGE_TYPES,
46
- r as TYPE_COLLECTIONS,
47
- i as TYPE_TRANSLATIONS,
48
- I as UNSUBSCRIBE_PAGES_LINK,
49
- N as URLS
14
+ s as LINK_REGEXES,
15
+ E as LINK_TYPES,
16
+ _ as URLS
50
17
  };
@@ -1,7 +1,6 @@
1
1
  import { Block, BlockCompositionType } from '@stripoinc/ui-editor-extensions';
2
2
  export declare const CHECKBOX_BLOCK_ID = "checkbox-block";
3
3
  export declare class CheckboxBlock extends Block {
4
- constructor();
5
4
  getId(): string;
6
5
  getIcon(): string;
7
6
  getBlockCompositionType(): BlockCompositionType;