@useinsider/guido 3.22.0-beta.ce512a7 → 3.22.0-beta.d4e1d48

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 (65) hide show
  1. package/README.md +0 -1
  2. package/dist/@types/config/schemas.js +10 -11
  3. package/dist/components/Guido.vue.js +2 -2
  4. package/dist/components/Guido.vue2.js +106 -117
  5. package/dist/components/organisms/AutoSaveController.vue2.js +10 -20
  6. package/dist/components/organisms/header/AutoSaveToggle.vue.js +22 -0
  7. package/dist/components/organisms/header/AutoSaveToggle.vue2.js +19 -0
  8. package/dist/components/organisms/header/EditorActions.vue.js +13 -13
  9. package/dist/components/organisms/header/EditorActions.vue2.js +73 -58
  10. package/dist/components/organisms/header/HeaderWrapper.vue.js +6 -6
  11. package/dist/components/organisms/header/HeaderWrapper.vue2.js +17 -9
  12. package/dist/components/organisms/header/LeftSlot.vue.js +1 -1
  13. package/dist/components/organisms/header/LeftSlot.vue2.js +23 -28
  14. package/dist/components/organisms/header/MiddleSlot.vue.js +4 -4
  15. package/dist/components/organisms/header/MiddleSlot.vue2.js +7 -8
  16. package/dist/components/organisms/header/RightSlot.vue.js +10 -11
  17. package/dist/components/organisms/header/RightSlot.vue2.js +18 -13
  18. package/dist/components/organisms/onboarding/OnboardingWrapper.vue.js +12 -12
  19. package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +35 -60
  20. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.js +11 -11
  21. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue2.js +9 -9
  22. package/dist/composables/useCustomInterfaceAppearance.js +41 -42
  23. package/dist/config/i18n/en/labels.json.js +4 -36
  24. package/dist/config/i18n/en/tooltips.json.js +1 -2
  25. package/dist/guido.css +1 -1
  26. package/dist/sprite.svg +0 -10
  27. package/dist/src/@types/config/schemas.d.ts +0 -2
  28. package/dist/src/components/organisms/AutoSaveController.vue.d.ts +1 -19
  29. package/dist/src/components/organisms/header/HeaderWrapper.vue.d.ts +19 -1
  30. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +19 -1
  31. package/dist/src/composables/useActionsApi.d.ts +2 -2
  32. package/dist/src/composables/useConfig.d.ts +0 -2
  33. package/dist/src/stores/autosave.d.ts +1 -73
  34. package/dist/src/stores/config.d.ts +0 -20
  35. package/dist/src/stores/editor.d.ts +0 -109
  36. package/dist/src/stores/onboarding.d.ts +33 -964
  37. package/dist/src/stores/unsubscribe.d.ts +10 -0
  38. package/dist/src/stores/version-history.d.ts +1 -1
  39. package/dist/src/utils/templatePreparation.d.ts +1 -1
  40. package/dist/src/utils/timeUtil.d.ts +8 -5
  41. package/dist/static/styles/variables.css.js +0 -2
  42. package/dist/stores/autosave.js +7 -12
  43. package/dist/stores/editor.js +3 -8
  44. package/dist/stores/onboarding.js +22 -48
  45. package/dist/stores/unsubscribe.js +33 -29
  46. package/dist/utils/timeUtil.js +17 -6
  47. package/package.json +1 -1
  48. package/dist/components/organisms/header/AutoSaveStatus.vue.js +0 -17
  49. package/dist/components/organisms/header/AutoSaveStatus.vue2.js +0 -25
  50. package/dist/components/organisms/header/EditorActionsMenu.vue.js +0 -20
  51. package/dist/components/organisms/header/EditorActionsMenu.vue2.js +0 -99
  52. package/dist/components/organisms/header/accessibility/AccessibilityToolbar.vue.js +0 -18
  53. package/dist/components/organisms/header/accessibility/AccessibilityToolbar.vue2.js +0 -37
  54. package/dist/components/organisms/header/accessibility/ColorVisionSelect.vue.js +0 -22
  55. package/dist/components/organisms/header/accessibility/ColorVisionSelect.vue2.js +0 -48
  56. package/dist/components/organisms/onboarding/EditorTabBarOnboarding.vue.js +0 -19
  57. package/dist/components/organisms/onboarding/EditorTabBarOnboarding.vue2.js +0 -90
  58. package/dist/composables/useAccessibilityApi.js +0 -51
  59. package/dist/src/components/organisms/header/EditorActionsMenu.vue.d.ts +0 -2
  60. package/dist/src/components/organisms/header/accessibility/AccessibilityToolbar.vue.d.ts +0 -2
  61. package/dist/src/components/organisms/header/accessibility/ColorVisionSelect.vue.d.ts +0 -2
  62. package/dist/src/components/organisms/onboarding/EditorTabBarOnboarding.vue.d.ts +0 -2
  63. package/dist/src/composables/useAccessibilityApi.d.ts +0 -13
  64. package/dist/static/styles/components/accessibility.css.js +0 -234
  65. /package/dist/src/components/organisms/header/{AutoSaveStatus.vue.d.ts → AutoSaveToggle.vue.d.ts} +0 -0
@@ -1,70 +1,85 @@
1
- import { defineComponent as q, computed as x, ref as A } from "vue";
2
- import { useActionsApi as H } from "../../../composables/useActionsApi.js";
3
- import { useConfig as O } from "../../../composables/useConfig.js";
4
- import { useTestEmailClick as R } from "../../../composables/useGuidoActions.js";
5
- import { useHtmlCompiler as B } from "../../../composables/useHtmlCompiler.js";
6
- import { useSave as z } from "../../../composables/useSave.js";
7
- import { useSaveValidation as D } from "../../../composables/useSaveValidation.js";
8
- import { useSaveValidationRollout as I } from "../../../composables/useSaveValidationRollout.js";
9
- import { useToaster as j } from "../../../composables/useToaster.js";
10
- import { useTranslations as G } from "../../../composables/useTranslations.js";
11
- import { useLiquidValidator as J } from "../../../composables/validators/useLiquidValidator.js";
12
- import { ToasterTypeOptions as K } from "../../../enums/toaster.js";
13
- import { useAutosaveStore as N } from "../../../stores/autosave.js";
14
- import { useEditorStore as P } from "../../../stores/editor.js";
15
- import { useSaveValidationStore as Q } from "../../../stores/save-validation.js";
16
- import { useTemplateStore as U } from "../../../stores/template.js";
17
- import { getTooltipOptions as W } from "../../../utils/tooltipUtils.js";
18
- import { InButtonV2 as X } from "@useinsider/design-system-vue";
19
- import { storeToRefs as Y } from "pinia";
20
- import Z from "./EditorActionsMenu.vue.js";
21
- import $ from "./MigrationConfirmModal.vue.js";
22
- const Ct = /* @__PURE__ */ q({
1
+ import { defineComponent as I, computed as u, ref as c } from "vue";
2
+ import { useActionsApi as P } from "../../../composables/useActionsApi.js";
3
+ import { useConfig as j } from "../../../composables/useConfig.js";
4
+ import { useExport as G } from "../../../composables/useExport.js";
5
+ import { useTestEmailClick as J } from "../../../composables/useGuidoActions.js";
6
+ import { useHtmlCompiler as K } from "../../../composables/useHtmlCompiler.js";
7
+ import { useSave as N } from "../../../composables/useSave.js";
8
+ import { useSaveValidation as Q } from "../../../composables/useSaveValidation.js";
9
+ import { useSaveValidationRollout as U } from "../../../composables/useSaveValidationRollout.js";
10
+ import { useToaster as W } from "../../../composables/useToaster.js";
11
+ import { useTranslations as X } from "../../../composables/useTranslations.js";
12
+ import { useVersionHistoryApi as Y } from "../../../composables/useVersionHistoryApi.js";
13
+ import { useLiquidValidator as Z } from "../../../composables/validators/useLiquidValidator.js";
14
+ import { ToasterTypeOptions as $ } from "../../../enums/toaster.js";
15
+ import { useEditorStore as tt } from "../../../stores/editor.js";
16
+ import { useSaveValidationStore as et } from "../../../stores/save-validation.js";
17
+ import { useTemplateStore as ot } from "../../../stores/template.js";
18
+ import { getTooltipOptions as rt } from "../../../utils/tooltipUtils.js";
19
+ import { InButtonV2 as it } from "@useinsider/design-system-vue";
20
+ import { storeToRefs as st } from "pinia";
21
+ import at from "./MigrationConfirmModal.vue.js";
22
+ const Ot = /* @__PURE__ */ I({
23
23
  __name: "EditorActions",
24
- setup(tt, { expose: F }) {
25
- const { config: L, isFeatureEnabled: a } = O(), { save: u } = z(), { validateCurrentTemplate: c } = D(), { isEnabled: s } = I(), { showToaster: f, hideToaster: d, handleError: r } = j(), { getCompiledEmail: p } = H(), { compileHtml: v } = B(), { validateLiquidSyntax: S } = J(), o = P(), g = Q(), h = U(), y = N(), { hasMigrations: T } = Y(h), M = x(() => a("liquidSyntax") || a("autosave") && y.hasStatusLabel), i = G(), b = x(() => s.value ? i("email-editor.save-and-continue") : "Save"), n = A(!1), E = A(), l = R(), C = async (t) => {
26
- n.value = !0, t || (o.loadingStatus = !0);
27
- let e;
24
+ setup(nt, { expose: b }) {
25
+ const { config: p, isFeatureEnabled: f } = j(), { exportHtml: d } = G(), { save: v } = N(), { validateCurrentTemplate: y } = Q(), { isEnabled: s } = U(), { showToaster: S, hideToaster: g, handleError: i } = W(), { openVersionHistory: h, closeVersionHistory: T } = Y(), { getCompiledEmail: V } = P(), { compileHtml: E } = K(), { validateLiquidSyntax: H } = Z(), e = tt(), w = et(), x = ot(), { hasMigrations: C } = st(x), r = X(), k = u(() => s.value ? r("email-editor.save-and-continue") : "Save"), a = c(!1), n = c(!1), _ = c(), l = J(), q = () => {
26
+ if (e.isVersionHistoryOpen) {
27
+ T();
28
+ return;
29
+ }
30
+ h();
31
+ }, B = async () => {
32
+ a.value = !0, await d(), a.value = !1;
33
+ }, L = () => {
34
+ e.isSaveAsTemplateDrawerOpen = !0;
35
+ }, R = u(() => e.isVersionHistoryOpen ? r("newsletter.close-version-history") : r("newsletter.version-history")), D = u(
36
+ () => {
37
+ var t, o;
38
+ return ((o = (t = p.value) == null ? void 0 : t.features) == null ? void 0 : o.versionHistory) && !e.isPreviewModeOpen;
39
+ }
40
+ ), A = async (t) => {
41
+ n.value = !0, t || (e.loadingStatus = !0);
42
+ let o;
28
43
  try {
29
- e = await u(t);
30
- } catch (w) {
31
- r(w, "Failed to save template");
44
+ o = await v(t);
45
+ } catch (M) {
46
+ i(M, "Failed to save template");
32
47
  } finally {
33
- n.value = !1, !t && !e && (o.loadingStatus = !1);
48
+ n.value = !1, !t && !o && (e.loadingStatus = !1);
34
49
  }
35
- return e;
36
- }, V = (t) => {
37
- var e;
38
- if (!t && T.value) {
39
- (e = E.value) == null || e.open();
50
+ return o;
51
+ }, O = (t) => {
52
+ var o;
53
+ if (!t && C.value) {
54
+ (o = _.value) == null || o.open();
40
55
  return;
41
56
  }
42
- return C(t);
57
+ return A(t);
43
58
  }, m = async () => {
44
- o.loadingStatus = !0;
59
+ e.loadingStatus = !0;
45
60
  try {
46
- return await c();
61
+ return await y();
47
62
  } catch (t) {
48
- return r(t, "Failed to prepare test email"), null;
63
+ return i(t, "Failed to prepare test email"), null;
49
64
  } finally {
50
- o.loadingStatus = !1;
65
+ e.loadingStatus = !1;
51
66
  }
52
- }, _ = async () => {
67
+ }, F = async () => {
53
68
  const t = await m();
54
- t != null && t.length ? g.open(t, "test") : t && d();
55
- }, k = async () => {
69
+ t != null && t.length ? w.open(t, "test") : t && g();
70
+ }, z = async () => {
56
71
  if (s.value) {
57
72
  const t = await m();
58
73
  if (!t)
59
74
  return;
60
75
  if (t.length) {
61
- f({
62
- type: K.Error,
63
- message: i("email-editor.validation-errors-found"),
76
+ S({
77
+ type: $.Error,
78
+ message: r("email-editor.validation-errors-found"),
64
79
  actionButton: {
65
- text: i("email-editor.check-errors"),
80
+ text: r("email-editor.check-errors"),
66
81
  onClick: () => {
67
- _();
82
+ F();
68
83
  }
69
84
  },
70
85
  autoHide: !1
@@ -74,26 +89,26 @@ const Ct = /* @__PURE__ */ q({
74
89
  l();
75
90
  return;
76
91
  }
77
- if (a("liquidSyntax")) {
78
- o.loadingStatus = !0;
92
+ if (f("liquidSyntax")) {
93
+ e.loadingStatus = !0;
79
94
  try {
80
- const { html: t } = await p({ minimize: !0, resetDataSavedFlag: !1 }), { compiledHtml: e } = v(t);
81
- if (!await S(e))
95
+ const { html: t } = await V({ minimize: !0, resetDataSavedFlag: !1 }), { compiledHtml: o } = E(t);
96
+ if (!await H(o))
82
97
  return;
83
98
  } catch (t) {
84
- r(t, "Failed to prepare test email");
99
+ i(t, "Failed to prepare test email");
85
100
  return;
86
101
  } finally {
87
- o.loadingStatus = !1;
102
+ e.loadingStatus = !1;
88
103
  }
89
104
  }
90
105
  l();
91
106
  };
92
- return F({
93
- handleSave: V
94
- }), { __sfc: !0, config: L, isFeatureEnabled: a, save: u, validateCurrentTemplate: c, isEnabled: s, showToaster: f, hideToaster: d, handleError: r, getCompiledEmail: p, compileHtml: v, validateLiquidSyntax: S, editorStore: o, saveValidationStore: g, templateStore: h, autosaveStore: y, hasMigrations: T, hasContentOnTheLeft: M, trans: i, saveLabel: b, isSaving: n, migrationModalRef: E, testEmailClick: l, executeSave: C, handleSave: V, collectTestErrors: m, openTestErrors: _, handleTestEmail: k, getTooltipOptions: W, InButtonV2: X, EditorActionsMenu: Z, MigrationConfirmModal: $ };
107
+ return b({
108
+ handleSave: O
109
+ }), { __sfc: !0, config: p, isFeatureEnabled: f, exportHtml: d, save: v, validateCurrentTemplate: y, isEnabled: s, showToaster: S, hideToaster: g, handleError: i, openVersionHistory: h, closeVersionHistory: T, getCompiledEmail: V, compileHtml: E, validateLiquidSyntax: H, editorStore: e, saveValidationStore: w, templateStore: x, hasMigrations: C, trans: r, saveLabel: k, isExporting: a, isSaving: n, migrationModalRef: _, testEmailClick: l, handleVersionHistory: q, handleExport: B, handleSaveAs: L, versionHistoryTooltipText: R, isVersionHistoryButtonVisible: D, executeSave: A, handleSave: O, collectTestErrors: m, openTestErrors: F, handleTestEmail: z, getTooltipOptions: rt, InButtonV2: it, MigrationConfirmModal: at };
95
110
  }
96
111
  });
97
112
  export {
98
- Ct as default
113
+ Ot as default
99
114
  };
@@ -3,16 +3,16 @@ import o from "./HeaderWrapper.vue2.js";
3
3
  import a from "../../../_virtual/_plugin-vue2_normalizer.js";
4
4
  var s = function() {
5
5
  var t = this, r = t._self._c, e = t._self._setupProxy;
6
- return r(e.InContainer, { attrs: { border: "bor-w-0 bor-b-w-1 bor-s-s bor-c-6", "border-radius": "bor-r-0", "data-testid": "guido-header" } }, [r("div", { staticClass: "header-wrapper w-1 d-f a-i-c j-c-s-b p-3" }, [r(e.LeftSlot), r(e.MiddleSlot), r(e.RightSlot)], 1)]);
7
- }, n = [], d = /* @__PURE__ */ a(
6
+ return r(e.InContainer, { attrs: { border: "bor-w-0 bor-b-w-1 bor-s-s bor-c-6", "border-radius": "bor-r-0", "data-testid": "guido-header" } }, [r("div", { staticClass: "header-wrapper w-1 d-f a-i-c j-c-s-b p-3" }, [r(e.LeftSlot), r(e.MiddleSlot), r(e.RightSlot, { ref: "rightSlotRef" })], 1)]);
7
+ }, d = [], i = /* @__PURE__ */ a(
8
8
  o,
9
9
  s,
10
- n,
10
+ d,
11
11
  !1,
12
12
  null,
13
- "3c713746"
13
+ "d11dd577"
14
14
  );
15
- const f = d.exports;
15
+ const c = i.exports;
16
16
  export {
17
- f as default
17
+ c as default
18
18
  };
@@ -1,14 +1,22 @@
1
- import { defineComponent as o } from "vue";
2
- import { InContainer as r } from "@useinsider/design-system-vue";
3
- import t from "./LeftSlot.vue.js";
4
- import e from "./MiddleSlot.vue.js";
5
- import m from "./RightSlot.vue.js";
6
- const s = /* @__PURE__ */ o({
1
+ import { defineComponent as n, ref as m } from "vue";
2
+ import { InContainer as a } from "@useinsider/design-system-vue";
3
+ import f from "./LeftSlot.vue.js";
4
+ import p from "./MiddleSlot.vue.js";
5
+ import i from "./RightSlot.vue.js";
6
+ const c = /* @__PURE__ */ n({
7
7
  __name: "HeaderWrapper",
8
- setup(p) {
9
- return { __sfc: !0, InContainer: r, LeftSlot: t, MiddleSlot: e, RightSlot: m };
8
+ setup(l, { expose: r }) {
9
+ const e = m(null);
10
+ return r({
11
+ // Stryker disable next-line OptionalChaining: RightSlot is always rendered (no
12
+ // v-if), so rightSlotRef.value is never null and `?.` cannot short-circuit.
13
+ handleSave: (t) => {
14
+ var o;
15
+ return (o = e.value) == null ? void 0 : o.handleSave(t);
16
+ }
17
+ }), { __sfc: !0, rightSlotRef: e, InContainer: a, LeftSlot: f, MiddleSlot: p, RightSlot: i };
10
18
  }
11
19
  });
12
20
  export {
13
- s as default
21
+ c as default
14
22
  };
@@ -10,7 +10,7 @@ var a = function() {
10
10
  i,
11
11
  !1,
12
12
  null,
13
- "9d988e4b"
13
+ "b8f24f34"
14
14
  );
15
15
  const f = r.exports;
16
16
  export {
@@ -1,45 +1,40 @@
1
- import { defineComponent as p, computed as d, ref as b } from "vue";
2
- import { useAccessibilityApi as k } from "../../../composables/useAccessibilityApi.js";
3
- import { useConfig as B } from "../../../composables/useConfig.js";
4
- import { useBack as y } from "../../../composables/useGuidoActions.js";
5
- import { usePreviewMode as v } from "../../../composables/usePreviewMode.js";
6
- import { useTranslations as A } from "../../../composables/useTranslations.js";
1
+ import { defineComponent as m, computed as p, ref as d } from "vue";
2
+ import { useConfig as k } from "../../../composables/useConfig.js";
3
+ import { useBack as B } from "../../../composables/useGuidoActions.js";
4
+ import { usePreviewMode as b } from "../../../composables/usePreviewMode.js";
5
+ import { useTranslations as v } from "../../../composables/useTranslations.js";
7
6
  import { useVersionHistoryApi as _ } from "../../../composables/useVersionHistoryApi.js";
8
- import { useEditorStore as g } from "../../../stores/editor.js";
9
- import { InButtonV2 as O } from "@useinsider/design-system-vue";
10
- import { useDebounceFn as w } from "../../../node_modules/@vueuse/shared/index.js";
11
- const F = /* @__PURE__ */ p({
7
+ import { useEditorStore as y } from "../../../stores/editor.js";
8
+ import { InButtonV2 as w } from "@useinsider/design-system-vue";
9
+ import { useDebounceFn as V } from "../../../node_modules/@vueuse/shared/index.js";
10
+ const D = /* @__PURE__ */ m({
12
11
  __name: "LeftSlot",
13
- setup(M) {
14
- const e = g(), s = y(), { closeVersionHistory: r } = _(), { closePreviewMode: n } = v(), { closeAccessibilityTestingMode: c } = k(), o = A(), { config: t } = B(), m = d(() => {
15
- var l, f;
16
- return e.isVersionHistoryOpen || e.isPreviewModeOpen || e.isAccessibilityTestingOpen ? o("email-editor.back-to-editor") : (f = (l = t.value) == null ? void 0 : l.ui) != null && f.backButtonLabel ? t.value.ui.backButtonLabel : o("email-editor.back-to-design");
17
- }), i = b(!1), a = () => {
12
+ setup(C) {
13
+ const e = y(), i = B(), { closeVersionHistory: n } = _(), { closePreviewMode: s } = b(), o = v(), { config: t } = k(), l = p(() => {
14
+ var u, f;
15
+ return e.isVersionHistoryOpen || e.isPreviewModeOpen ? o("email-editor.back-to-editor") : (f = (u = t.value) == null ? void 0 : u.ui) != null && f.backButtonLabel ? t.value.ui.backButtonLabel : o("email-editor.back-to-design");
16
+ }), r = d(!1), a = () => {
18
17
  if (e.isVersionHistoryOpen) {
19
- r();
20
- return;
21
- }
22
- if (e.isPreviewModeOpen) {
23
18
  n();
24
19
  return;
25
20
  }
26
- if (e.isAccessibilityTestingOpen) {
27
- c();
21
+ if (e.isPreviewModeOpen) {
22
+ s();
28
23
  return;
29
24
  }
30
- s();
31
- }, u = w(async () => {
25
+ i();
26
+ }, c = V(async () => {
32
27
  try {
33
28
  await a();
34
29
  } finally {
35
- i.value = !1;
30
+ r.value = !1;
36
31
  }
37
32
  }, 500);
38
- return { __sfc: !0, editorStore: e, handleBack: s, closeVersionHistory: r, closePreviewMode: n, closeAccessibilityTestingMode: c, trans: o, config: t, backButtonLabel: m, isBackButtonDisabled: i, executeBackAction: a, debouncedBackAction: u, handleBackClick: () => {
39
- i.value = !0, u();
40
- }, InButtonV2: O };
33
+ return { __sfc: !0, editorStore: e, handleBack: i, closeVersionHistory: n, closePreviewMode: s, trans: o, config: t, backButtonLabel: l, isBackButtonDisabled: r, executeBackAction: a, debouncedBackAction: c, handleBackClick: () => {
34
+ r.value = !0, c();
35
+ }, InButtonV2: w };
41
36
  }
42
37
  });
43
38
  export {
44
- F as default
39
+ D as default
45
40
  };
@@ -1,8 +1,8 @@
1
1
  import r from "./MiddleSlot.vue2.js";
2
2
  import s from "../../../_virtual/_plugin-vue2_normalizer.js";
3
3
  var t = function() {
4
- var o = this, i = o._self._c, e = o._self._setupProxy;
5
- return i("div", { staticClass: "d-f a-i-c" }, [e.editorStore.isVersionHistoryOpen ? i("div", { staticClass: "d-f" }, [i(e.VersionHistory), i(e.VersionHistoryViewOptions)], 1) : e.editorStore.isPreviewModeOpen ? i("div", { staticClass: "d-f" }, [i(e.EmailSizeIndicator), i(e.AmpToggle)], 1) : e.editorStore.isAccessibilityTestingOpen ? i(e.AccessibilityToolbar) : o._e(), i(e.EditorToolbar, { directives: [{ name: "show", rawName: "v-show", value: e.editorStore.isEditorToolbarVisible, expression: "editorStore.isEditorToolbarVisible" }] })], 1);
4
+ var o = this, e = o._self._c, i = o._self._setupProxy;
5
+ return e("div", { staticClass: "d-f a-i-c" }, [i.editorStore.isVersionHistoryOpen ? e("div", { staticClass: "d-f" }, [e(i.VersionHistory), e(i.VersionHistoryViewOptions)], 1) : i.editorStore.isPreviewModeOpen ? e("div", { staticClass: "d-f" }, [e(i.EmailSizeIndicator), e(i.AmpToggle)], 1) : o._e(), e(i.EditorToolbar, { directives: [{ name: "show", rawName: "v-show", value: i.editorStore.isEditorToolbarVisible, expression: "editorStore.isEditorToolbarVisible" }] })], 1);
6
6
  }, a = [], n = /* @__PURE__ */ s(
7
7
  r,
8
8
  t,
@@ -11,7 +11,7 @@ var t = function() {
11
11
  null,
12
12
  null
13
13
  );
14
- const _ = n.exports;
14
+ const c = n.exports;
15
15
  export {
16
- _ as default
16
+ c as default
17
17
  };
@@ -2,16 +2,15 @@ import { defineComponent as o } from "vue";
2
2
  import r from "../email-preview/amp/AmpToggle.vue.js";
3
3
  import t from "../email-preview/desktop-preview/EmailSizeIndicator.vue.js";
4
4
  import { useEditorStore as i } from "../../../stores/editor.js";
5
- import e from "./accessibility/AccessibilityToolbar.vue.js";
6
- import m from "./EditorToolbar.vue.js";
7
- import p from "./version-history/VersionHistory.vue.js";
8
- import s from "./version-history/ViewOptions.vue.js";
9
- const y = /* @__PURE__ */ o({
5
+ import e from "./EditorToolbar.vue.js";
6
+ import m from "./version-history/VersionHistory.vue.js";
7
+ import p from "./version-history/ViewOptions.vue.js";
8
+ const S = /* @__PURE__ */ o({
10
9
  __name: "MiddleSlot",
11
- setup(f) {
12
- return { __sfc: !0, editorStore: i(), AmpToggle: r, EmailSizeIndicator: t, AccessibilityToolbar: e, EditorToolbar: m, VersionHistory: p, VersionHistoryViewOptions: s };
10
+ setup(s) {
11
+ return { __sfc: !0, editorStore: i(), AmpToggle: r, EmailSizeIndicator: t, EditorToolbar: e, VersionHistory: m, VersionHistoryViewOptions: p };
13
12
  }
14
13
  });
15
14
  export {
16
- y as default
15
+ S as default
17
16
  };
@@ -1,18 +1,17 @@
1
- import i from "./RightSlot.vue2.js";
2
- /* empty css */
3
- import r from "../../../_virtual/_plugin-vue2_normalizer.js";
4
- var s = function() {
5
- var e = this, o = e._self._c, t = e._self._setupProxy;
6
- return o("div", { staticClass: "d-f a-i-c right-slot" }, [t.editorStore.isNormalMode ? o(t.AutoSaveStatus) : e._e(), t.isLiquidEnabled && t.editorStore.isNormalMode ? o(t.InChips, { attrs: { id: "guido__liquid-tag-chip", styles: "stroke", type: "default", value: "liquid-tags", "close-button": !1, "disabled-status": t.editorStore.loadingStatus, interactive: !1, text: t.trans("email-editor.liquid-tags-enabled") } }) : e._e(), t.editorStore.isNormalMode ? o(t.EditorActions) : t.editorStore.isVersionHistoryOpen ? o(t.RestoreButton) : e._e()], 1);
7
- }, a = [], d = /* @__PURE__ */ r(
8
- i,
1
+ import s from "./RightSlot.vue2.js";
2
+ import o from "../../../_virtual/_plugin-vue2_normalizer.js";
3
+ var r = function() {
4
+ var i = this, e = i._self._c, t = i._self._setupProxy;
5
+ return e("div", { staticClass: "d-f a-i-c" }, [t.editorStore.isVersionHistoryOpen ? i._e() : e(t.AutoSaveToggle), t.isLiquidEnabled && !t.editorStore.isVersionHistoryOpen ? e(t.InChips, { staticClass: "mr-1", attrs: { id: "guido__liquid-tag-chip", styles: "stroke", type: "default", value: "liquid-tags", "close-button": !1, "disabled-status": t.editorStore.loadingStatus, interactive: !1, text: t.trans("email-editor.liquid-tags-enabled") } }) : i._e(), t.editorStore.isVersionHistoryOpen ? e(t.RestoreButton) : e(t.EditorActions, { ref: "editorActionsRef" })], 1);
6
+ }, a = [], n = /* @__PURE__ */ o(
9
7
  s,
8
+ r,
10
9
  a,
11
10
  !1,
12
11
  null,
13
- "77451c9a"
12
+ null
14
13
  );
15
- const c = d.exports;
14
+ const u = n.exports;
16
15
  export {
17
- c as default
16
+ u as default
18
17
  };
@@ -1,18 +1,23 @@
1
- import { defineComponent as e, computed as s } from "vue";
2
- import { useConfig as n } from "../../../composables/useConfig.js";
3
- import { useTranslations as m } from "../../../composables/useTranslations.js";
4
- import { useEditorStore as p } from "../../../stores/editor.js";
5
- import { InChips as u } from "@useinsider/design-system-vue";
6
- import a from "./AutoSaveStatus.vue.js";
7
- import f from "./EditorActions.vue.js";
8
- import d from "./version-history/RestoreButton.vue.js";
9
- const q = /* @__PURE__ */ e({
1
+ import { defineComponent as a, ref as f, computed as p } from "vue";
2
+ import { useConfig as u } from "../../../composables/useConfig.js";
3
+ import { useTranslations as d } from "../../../composables/useTranslations.js";
4
+ import { useEditorStore as l } from "../../../stores/editor.js";
5
+ import { InChips as c } from "@useinsider/design-system-vue";
6
+ import _ from "./AutoSaveToggle.vue.js";
7
+ import S from "./EditorActions.vue.js";
8
+ import g from "./version-history/RestoreButton.vue.js";
9
+ const T = /* @__PURE__ */ a({
10
10
  __name: "RightSlot",
11
- setup(c) {
12
- const { isFeatureEnabled: o } = n(), t = m(), r = p(), i = s(() => o("liquidSyntax"));
13
- return { __sfc: !0, isFeatureEnabled: o, trans: t, editorStore: r, isLiquidEnabled: i, InChips: u, AutoSaveStatus: a, EditorActions: f, RestoreButton: d };
11
+ setup(h, { expose: r }) {
12
+ const { isFeatureEnabled: o } = u(), i = d(), n = l(), t = f(null), s = p(() => o("liquidSyntax"));
13
+ return r({
14
+ handleSave: (m) => {
15
+ var e;
16
+ return (e = t.value) == null ? void 0 : e.handleSave(m);
17
+ }
18
+ }), { __sfc: !0, isFeatureEnabled: o, trans: i, editorStore: n, editorActionsRef: t, isLiquidEnabled: s, InChips: c, AutoSaveToggle: _, EditorActions: S, RestoreButton: g };
14
19
  }
15
20
  });
16
21
  export {
17
- q as default
22
+ T as default
18
23
  };
@@ -1,21 +1,21 @@
1
- import o from "./OnboardingWrapper.vue2.js";
2
- import s from "../../../_virtual/_plugin-vue2_normalizer.js";
3
- var _ = function() {
4
- var n = this, r = n._self._c, t = n._self._setupProxy;
5
- return r("div", n._l(t.visibleOnboardings, function(e) {
6
- return r(e.component, { key: e.type, tag: "component", on: { "onboarding-finished": function(l) {
7
- return t.handleFinished(e.type);
1
+ import t from "./OnboardingWrapper.vue2.js";
2
+ import i from "../../../_virtual/_plugin-vue2_normalizer.js";
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
8
  } } });
9
9
  }), 1);
10
- }, i = [], a = /* @__PURE__ */ s(
11
- o,
10
+ }, _ = [], a = /* @__PURE__ */ i(
11
+ t,
12
+ s,
12
13
  _,
13
- i,
14
14
  !1,
15
15
  null,
16
16
  null
17
17
  );
18
- const f = a.exports;
18
+ const d = a.exports;
19
19
  export {
20
- f as default
20
+ d as default
21
21
  };
@@ -1,75 +1,50 @@
1
- import { defineComponent as S, computed as e, onMounted as h, watch as t, ref as T } from "vue";
2
- import w from "./AMPOnboarding.vue.js";
3
- import P from "./EditorTabBarOnboarding.vue.js";
4
- import B from "./GenericOnboarding.vue.js";
5
- import A from "./ItemsOnboarding.vue.js";
6
- import M from "./NewVersionPopup.vue.js";
7
- import _ from "./RecommendationLegacyStrategyOnboarding.vue.js";
8
- import H from "./RecommendationStrategyOnboarding.vue.js";
9
- import F from "./TextBlockOnboarding.vue.js";
10
- import V from "./VersionHistoryOnboarding.vue.js";
11
- import { useConfig as x } from "../../../composables/useConfig.js";
12
- import { usePartner as C } from "../../../composables/usePartner.js";
13
- import { useEditorStore as E } from "../../../stores/editor.js";
14
- import { useOnboardingStore as I } from "../../../stores/onboarding.js";
15
- import { usePreviewStore as N } from "../../../stores/preview.js";
16
- const $ = /* @__PURE__ */ S({
1
+ import { defineComponent as f, computed as e, onMounted as O, watch as t } from "vue";
2
+ import y from "./AMPOnboarding.vue.js";
3
+ import u from "./GenericOnboarding.vue.js";
4
+ import v from "./ItemsOnboarding.vue.js";
5
+ import S from "./NewVersionPopup.vue.js";
6
+ import l from "./RecommendationLegacyStrategyOnboarding.vue.js";
7
+ import h from "./RecommendationStrategyOnboarding.vue.js";
8
+ import w from "./TextBlockOnboarding.vue.js";
9
+ import P from "./VersionHistoryOnboarding.vue.js";
10
+ import { usePartner as _ } from "../../../composables/usePartner.js";
11
+ import { useEditorStore as A } from "../../../stores/editor.js";
12
+ import { useOnboardingStore as H } from "../../../stores/onboarding.js";
13
+ import { usePreviewStore as M } from "../../../stores/preview.js";
14
+ const U = /* @__PURE__ */ f({
17
15
  __name: "OnboardingWrapper",
18
16
  emits: ["onboarding-finished"],
19
- setup(R, { emit: p }) {
20
- const o = I(), i = E(), b = N(), { isTestPartner: m } = C(), { isFeatureEnabled: g } = x(), a = e(() => i.isStripoInitialized), s = e(() => m()), O = [
21
- { type: "newVersionPopup", component: M },
22
- { type: "genericOnboarding", component: B },
23
- { type: "textBlockOnboarding", component: F },
24
- { type: "versionHistoryOnboarding", component: V },
25
- { type: "ampOnboarding", component: w },
26
- { type: "itemsOnboarding", component: A },
27
- { type: "editorTabBarOnboarding", component: P },
28
- { type: "recommendationStrategyOnboarding", component: H },
29
- { type: "recommendationLegacyStrategyOnboarding", component: _ }
30
- ], f = (n) => s.value || !a.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n), l = e(() => O.filter((n) => f(n.type)));
31
- h(async () => {
17
+ setup(x, { emit: g }) {
18
+ const o = H(), r = A(), a = M(), { isTestPartner: s } = _(), m = e(() => r.isStripoInitialized), p = e(() => s()), d = [
19
+ { type: "newVersionPopup", component: S },
20
+ { type: "genericOnboarding", component: u },
21
+ { type: "textBlockOnboarding", component: w },
22
+ { type: "versionHistoryOnboarding", component: P },
23
+ { type: "ampOnboarding", component: y },
24
+ { type: "itemsOnboarding", component: v },
25
+ { type: "recommendationStrategyOnboarding", component: h },
26
+ { type: "recommendationLegacyStrategyOnboarding", component: l }
27
+ ], c = (n) => p.value || !m.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n), b = e(() => d.filter((n) => c(n.type)));
28
+ return O(async () => {
32
29
  await o.fetchUserModalState();
33
30
  }), t(
34
- () => i.isVersionHistoryOpen,
35
- (n, r) => {
36
- n && !r && (o.isActive("editorTabBarOnboarding") && o.closeForSession("editorTabBarOnboarding"), o.shouldShowOnboarding("versionHistoryOnboarding") && o.start("versionHistoryOnboarding")), !n && r && o.isActive("versionHistoryOnboarding") && o.close("versionHistoryOnboarding");
31
+ () => r.isVersionHistoryOpen,
32
+ (n, i) => {
33
+ n && !i && o.shouldShowOnboarding("versionHistoryOnboarding") && o.start("versionHistoryOnboarding"), !n && i && o.isActive("versionHistoryOnboarding") && o.close("versionHistoryOnboarding");
37
34
  }
38
35
  ), t(
39
- () => b.emailFormat,
40
- (n, r) => {
41
- r !== "AMP" && n === "AMP" && o.shouldShowOnboarding("ampOnboarding") && o.start("ampOnboarding");
36
+ () => a.emailFormat,
37
+ (n, i) => {
38
+ i !== "AMP" && n === "AMP" && o.shouldShowOnboarding("ampOnboarding") && o.start("ampOnboarding");
42
39
  }
43
40
  ), t(
44
- () => i.isPreviewModeOpen,
41
+ () => r.isPreviewModeOpen,
45
42
  (n) => {
46
43
  !n && o.isActive("ampOnboarding") && o.close("ampOnboarding");
47
44
  }
48
- );
49
- const d = T(!1), v = (n) => {
50
- n === "newVersionPopup" && (d.value = !0), p("onboarding-finished");
51
- }, c = e(() => i.isNormalMode && !i.isPreviewModeOpen), u = e(() => a.value && o.isFetched && g("accessibilityTesting") && !s.value && c.value && !(o.shouldShowOnboarding("newVersionPopup") && !d.value) && !o.isOnboardingActive() && !o.closedThisSession.includes("editorTabBarOnboarding") && o.shouldShowOnboarding("editorTabBarOnboarding"));
52
- return t(
53
- u,
54
- (n) => {
55
- n && o.start("editorTabBarOnboarding");
56
- },
57
- { immediate: !0 }
58
- ), t(
59
- c,
60
- (n) => {
61
- if (!n && o.isActive("editorTabBarOnboarding")) {
62
- const { cardIndex: r, config: y } = o.onboardings.editorTabBarOnboarding;
63
- if (i.isAccessibilityTestingOpen && r === y.length - 1) {
64
- o.close("editorTabBarOnboarding");
65
- return;
66
- }
67
- o.closeForSession("editorTabBarOnboarding");
68
- }
69
- }
70
- ), { __sfc: !0, emit: p, onboardingStore: o, editorStore: i, previewStore: b, isTestPartner: m, isFeatureEnabled: g, isStripoReady: a, isTestPartnerActive: s, onboardingConfigs: O, shouldShow: f, visibleOnboardings: l, isNewVersionPopupClosed: d, handleFinished: v, isTourAnchored: c, canStartTabBarTour: u };
45
+ ), { __sfc: !0, emit: g, onboardingStore: o, editorStore: r, previewStore: a, isTestPartner: s, isStripoReady: m, isTestPartnerActive: p, onboardingConfigs: d, shouldShow: c, visibleOnboardings: b };
71
46
  }
72
47
  });
73
48
  export {
74
- $ as default
49
+ U as default
75
50
  };
@@ -1,22 +1,22 @@
1
1
  import a from "./UnsubscribePageSelection.vue2.js";
2
2
  /* empty css */
3
3
  import n from "../../../_virtual/_plugin-vue2_normalizer.js";
4
- var o = function() {
5
- var r = this, e = r._self._c, t = r._self._setupProxy;
6
- return e(t.WpDrawer, { attrs: { id: "unsubscribe-modal", "description-status": "", size: "large", "footer-button-group-options": t.footerButtonGroupOptions, status: t.unsubscribeStore.pageSelectionDrawerStatus, "title-text": t.trans("newsletter.select-a-template") }, on: { cancelOrBackButtonEvent: t.handleBack, onCloseEvent: t.handleClose, primaryButtonEvent: t.handleSave }, scopedSlots: r._u([{ key: "headerBottomSlot", fn: function() {
7
- return [e(t.UnsubscribeBreadcrumb, { staticClass: "px-5 py-3" })];
8
- }, proxy: !0 }]) }, [e("div", { staticClass: "d-g templates-wrapper" }, r._l(t.unsubscribeStore.getTemplatesByActiveType, function(s) {
9
- return e("div", { key: s.id, staticClass: "template-wrapper", on: { click: function(u) {
10
- return t.selectTemplate(s.id);
11
- } } }, [e(t.InContainer, { staticClass: "template-container o-h", class: { selected: t.unsubscribeStore.getSelectedTemplateByActiveType === s.id }, attrs: { border: t.getBorderClass(s.id) } }, [e("div", { staticClass: "w-1 h-1 d-f j-c-c a-i-c" }, [e("img", { staticClass: "w-1 h-1 thumbnail o-h", attrs: { alt: s.name, src: s.thumbnail } })])]), e("div", { staticClass: "mt-1 f-s-1" }, [r._v(" " + r._s(s.name) + " ")])], 1);
4
+ var i = function() {
5
+ var r = this, t = r._self._c, e = r._self._setupProxy;
6
+ return t(e.WpDrawer, { attrs: { id: "unsubscribe-modal", "description-status": "", size: "large", "footer-button-group-options": e.footerButtonGroupOptions, status: e.unsubscribeStore.pageSelectionDrawerStatus, "title-text": e.trans("newsletter.select-a-template") }, on: { cancelOrBackButtonEvent: e.handleBack, onCloseEvent: e.handleClose, primaryButtonEvent: e.handleSave }, scopedSlots: r._u([{ key: "headerBottomSlot", fn: function() {
7
+ return [t(e.UnsubscribeBreadcrumb, { staticClass: "px-5 py-3" })];
8
+ }, proxy: !0 }]) }, [t("div", { staticClass: "d-g templates-wrapper" }, r._l(e.unsubscribeStore.getTemplatesByActiveType, function(s) {
9
+ return t("div", { key: s.id, staticClass: "template-wrapper", on: { click: function(u) {
10
+ return e.selectTemplate(s.id);
11
+ } } }, [t(e.InContainer, { staticClass: "template-container o-h p-r", class: { selected: e.unsubscribeStore.getSelectedTemplateByActiveType === s.id }, attrs: { border: e.getBorderClass(s.id) } }, [t("div", { staticClass: "w-1 h-1 d-f j-c-c a-i-c" }, [t("img", { staticClass: "w-1 h-1 thumbnail o-h", attrs: { alt: s.name, src: s.thumbnail } })]), s.isDefault ? t(e.InChips, { staticClass: "p-a t-3 r-3", attrs: { id: "guido__unsubscribe-default-chip", type: "neutral", value: "default", "close-button": !1, interactive: !1, text: e.trans("unsubscription-preference.default") } }) : r._e()], 1), t("div", { staticClass: "mt-1 f-s-1" }, [r._v(" " + r._s(s.name) + " ")])], 1);
12
12
  }), 0)]);
13
- }, i = [], c = /* @__PURE__ */ n(
13
+ }, o = [], c = /* @__PURE__ */ n(
14
14
  a,
15
- o,
16
15
  i,
16
+ o,
17
17
  !1,
18
18
  null,
19
- "91a26acd"
19
+ "eaf8e461"
20
20
  );
21
21
  const _ = c.exports;
22
22
  export {