@useinsider/guido 2.0.0-beta.7a88d79 → 2.0.0-beta.7f42818
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.
- package/dist/components/organisms/email-preview/PreviewContainer.vue.js +3 -3
- package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue.js +6 -6
- package/dist/components/organisms/email-preview/amp/AmpErrorModal.vue2.js +17 -13
- package/dist/components/organisms/email-preview/amp/AmpToggle.vue.js +6 -6
- package/dist/components/organisms/email-preview/amp/AmpToggle.vue2.js +14 -12
- package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.js +18 -0
- package/dist/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue2.js +15 -0
- package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue.js +16 -15
- package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue2.js +14 -22
- package/dist/components/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.js +3 -3
- package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue.js +12 -11
- package/dist/components/organisms/email-preview/mobile-preview/InboxView.vue.js +12 -10
- package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue.js +11 -10
- package/dist/components/organisms/email-preview/mobile-preview/MobilePreview.vue2.js +15 -14
- package/dist/components/organisms/header/EditorActions.vue.js +21 -0
- package/dist/components/organisms/header/EditorActions.vue2.js +41 -0
- package/dist/components/organisms/header/EditorToolbar.vue.js +18 -0
- package/dist/components/organisms/header/EditorToolbar.vue2.js +17 -0
- package/dist/components/organisms/header/HeaderWrapper.vue.js +6 -5
- package/dist/components/organisms/header/LeftSlot.vue.js +10 -10
- package/dist/components/organisms/header/LeftSlot.vue2.js +27 -23
- package/dist/components/organisms/header/MiddleSlot.vue.js +7 -7
- package/dist/components/organisms/header/MiddleSlot.vue2.js +11 -15
- package/dist/components/organisms/header/RightSlot.vue.js +11 -14
- package/dist/components/organisms/header/RightSlot.vue2.js +13 -30
- package/dist/components/organisms/header/version-history/VersionHistory.vue.js +5 -5
- package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +15 -15
- package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +1 -1
- package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +20 -19
- package/dist/composables/useActionsApi.js +33 -30
- package/dist/config/migrator/index.js +9 -8
- package/dist/config/migrator/itemsBlockMigrator.js +342 -0
- package/dist/enums/academy.js +8 -0
- package/dist/enums/onboarding.js +1 -2
- package/dist/enums/unsubscribe.js +20 -21
- package/dist/extensions/Blocks/Items/block.js +39 -40
- package/dist/extensions/Blocks/Items/controls/button/link.js +22 -29
- package/dist/extensions/Blocks/Items/controls/cardComposition.js +66 -46
- package/dist/extensions/Blocks/Items/controls/image/link.js +23 -30
- package/dist/extensions/Blocks/Items/controls/name/trimming.js +25 -25
- package/dist/extensions/Blocks/Items/controls/price/currencyLocation.js +19 -17
- package/dist/extensions/Blocks/Items/controls/price/currencySymbol.js +31 -29
- package/dist/extensions/Blocks/Items/controls/price/formattedPrice.js +36 -36
- package/dist/extensions/Blocks/Items/controls/price/hideDiscount.js +21 -19
- package/dist/extensions/Blocks/Items/controls/price/priceOrientation.js +29 -27
- package/dist/extensions/Blocks/Items/controls/price/singlePrice.js +93 -0
- package/dist/extensions/Blocks/Items/controls/settingsControl.js +159 -144
- package/dist/extensions/Blocks/Items/enums/controlEnums.js +2 -2
- package/dist/extensions/Blocks/Items/enums/productEnums.js +43 -45
- package/dist/extensions/Blocks/Items/enums/settingsEnums.js +4 -3
- package/dist/extensions/Blocks/Items/extension.js +7 -6
- package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +58 -49
- package/dist/extensions/Blocks/Items/layouts/vertical.html.js +48 -59
- package/dist/extensions/Blocks/Items/settingsPanel.js +27 -26
- package/dist/extensions/Blocks/Items/store/items-block.js +11 -7
- package/dist/extensions/Blocks/Items/template.js +366 -129
- package/dist/extensions/Blocks/Items/utils/nodeConfigUtils.js +184 -0
- package/dist/extensions/Blocks/Recommendation/control.js +1 -1
- package/dist/extensions/Blocks/common-control.js +26 -27
- package/dist/extensions/Blocks/controlFactories.js +55 -45
- package/dist/guido.css +1 -1
- package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +364 -285
- package/dist/package.json.js +1 -1
- package/dist/src/components/organisms/email-preview/desktop-preview/DesktopBrowserHeader.vue.d.ts +2 -0
- package/dist/src/components/organisms/header/EditorActions.vue.d.ts +4 -0
- package/dist/src/components/organisms/header/EditorToolbar.vue.d.ts +2 -0
- package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -1
- package/dist/src/composables/useActionsApi.d.ts +1 -0
- package/dist/src/config/migrator/itemsBlockMigrator.d.ts +6 -0
- package/dist/src/enums/academy.d.ts +12 -0
- package/dist/src/enums/onboarding.d.ts +0 -1
- package/dist/src/enums/unsubscribe.d.ts +0 -1
- package/dist/src/extensions/Blocks/Items/controls/button/link.d.ts +0 -2
- package/dist/src/extensions/Blocks/Items/controls/cardComposition.d.ts +9 -0
- package/dist/src/extensions/Blocks/Items/controls/image/link.d.ts +0 -2
- package/dist/src/extensions/Blocks/Items/controls/price/priceOrientation.d.ts +1 -1
- package/dist/src/extensions/Blocks/Items/controls/price/singlePrice.d.ts +18 -0
- package/dist/src/extensions/Blocks/Items/controls/settingsControl.d.ts +0 -4
- package/dist/src/extensions/Blocks/Items/enums/controlEnums.d.ts +1 -0
- package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +24 -26
- package/dist/src/extensions/Blocks/Items/enums/settingsEnums.d.ts +1 -0
- package/dist/src/extensions/Blocks/Items/store/items-block.d.ts +2 -0
- package/dist/src/extensions/Blocks/Items/template.d.ts +22 -1
- package/dist/src/extensions/Blocks/Items/utils/nodeConfigUtils.d.ts +73 -0
- package/dist/src/extensions/Blocks/common-control.d.ts +9 -10
- package/dist/src/stores/editor.d.ts +21 -0
- package/dist/static/assets/desktop/desktop-mockup-center.svg.js +4 -0
- package/dist/static/assets/desktop/desktop-mockup-left.svg.js +4 -0
- package/dist/static/assets/desktop/desktop-mockup-right.svg.js +4 -0
- package/dist/static/assets/mobile/email-mockup.svg.js +4 -0
- package/dist/static/assets/mobile/inbox-mockup.svg.js +4 -0
- package/dist/static/styles/components/wide-panel.css.js +1 -1
- package/dist/stores/editor.js +1 -0
- package/dist/utils/pairProductVariables.js +61 -58
- package/dist/utils/templatePreparation.js +17 -17
- package/package.json +3 -3
- package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue.js +0 -17
- package/dist/components/organisms/email-preview/desktop-preview/EmailHeaderInfo.vue2.js +0 -20
- package/dist/extensions/Blocks/Items/utils/configBlockUtils.js +0 -17
- package/dist/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.js +0 -28
- package/dist/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.js +0 -76
- package/dist/extensions/Blocks/Items/utils/updateAttributes.js +0 -46
- package/dist/src/extensions/Blocks/Items/utils/configBlockUtils.d.ts +0 -23
- package/dist/src/extensions/Blocks/Items/utils/syncAttributeFromConfigBlock.d.ts +0 -32
- package/dist/src/extensions/Blocks/Items/utils/syncAttributesFromConfigBlock.d.ts +0 -50
- package/dist/src/extensions/Blocks/Items/utils/updateAttributes.d.ts +0 -8
- package/dist/static/assets/inbox-mockup.svg.js +0 -4
- package/dist/static/assets/phone-mockup.svg.js +0 -4
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import
|
|
1
|
+
import o from "./LeftSlot.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import
|
|
3
|
+
import a from "../../../_virtual/_plugin-vue2_normalizer.js";
|
|
4
4
|
var n = function() {
|
|
5
|
-
var e = this,
|
|
6
|
-
return
|
|
7
|
-
},
|
|
8
|
-
|
|
5
|
+
var e = this, s = e._self._c, t = e._self._setupProxy;
|
|
6
|
+
return s("div", { staticClass: "d-f a-i-c" }, [s(t.InButtonV2, { attrs: { id: "guido__back-button", "left-icon": "line-arrow-left", styling: "ghost", type: "secondary", "disabled-status": t.isBackButtonDisabled, "label-text": t.backButtonLabel, "skeleton-sizing": { width: 150, height: 26 }, "skeleton-status": t.editorStore.loadingStatus }, on: { click: t.handleBackClick } })], 1);
|
|
7
|
+
}, i = [], r = /* @__PURE__ */ a(
|
|
8
|
+
o,
|
|
9
9
|
n,
|
|
10
|
-
|
|
10
|
+
i,
|
|
11
11
|
!1,
|
|
12
12
|
null,
|
|
13
|
-
"
|
|
13
|
+
"73199fa4"
|
|
14
14
|
);
|
|
15
|
-
const
|
|
15
|
+
const f = r.exports;
|
|
16
16
|
export {
|
|
17
|
-
|
|
17
|
+
f as default
|
|
18
18
|
};
|
|
@@ -1,32 +1,36 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { useConfig as
|
|
3
|
-
import { useBack as
|
|
4
|
-
import { usePreviewMode as
|
|
5
|
-
import { useTranslations as
|
|
6
|
-
import { useVersionHistoryApi as
|
|
7
|
-
import { useEditorStore as
|
|
8
|
-
import { InButtonV2 as
|
|
9
|
-
import
|
|
10
|
-
const
|
|
1
|
+
import { defineComponent as l, 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";
|
|
6
|
+
import { useVersionHistoryApi as _ } from "../../../composables/useVersionHistoryApi.js";
|
|
7
|
+
import { useEditorStore as V } from "../../../stores/editor.js";
|
|
8
|
+
import { InButtonV2 as w } from "@useinsider/design-system-vue";
|
|
9
|
+
import { useDebounceFn as y } from "../../../node_modules/@vueuse/shared/index.js";
|
|
10
|
+
const D = /* @__PURE__ */ l({
|
|
11
11
|
__name: "LeftSlot",
|
|
12
|
-
setup(
|
|
13
|
-
const
|
|
14
|
-
var
|
|
15
|
-
return
|
|
16
|
-
})
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
i();
|
|
12
|
+
setup(C) {
|
|
13
|
+
const e = V(), i = B(), { closeVersionHistory: n } = _(), { closePreviewMode: s } = b(), o = v(), { config: t } = k(), f = p(() => {
|
|
14
|
+
var u, m;
|
|
15
|
+
return e.isVersionHistoryOpen || e.isPreviewModeOpen ? o("email-editor.back-to-editor") : (m = (u = t.value) == null ? void 0 : u.ui) != null && m.backButtonLabel ? t.value.ui.backButtonLabel : o("email-editor.back-to-design");
|
|
16
|
+
}), r = d(!1), c = () => {
|
|
17
|
+
if (e.isVersionHistoryOpen) {
|
|
18
|
+
n();
|
|
20
19
|
return;
|
|
21
20
|
}
|
|
22
|
-
if (
|
|
23
|
-
|
|
21
|
+
if (e.isPreviewModeOpen) {
|
|
22
|
+
s();
|
|
24
23
|
return;
|
|
25
24
|
}
|
|
26
|
-
|
|
27
|
-
},
|
|
25
|
+
i();
|
|
26
|
+
}, a = y(() => {
|
|
27
|
+
c(), r.value = !1;
|
|
28
|
+
}, 500);
|
|
29
|
+
return { __sfc: !0, editorStore: e, handleBack: i, closeVersionHistory: n, closePreviewMode: s, trans: o, config: t, backButtonLabel: f, isBackButtonDisabled: r, executeBackAction: c, debouncedBackAction: a, handleBackClick: () => {
|
|
30
|
+
r.value = !0, a();
|
|
31
|
+
}, InButtonV2: w };
|
|
28
32
|
}
|
|
29
33
|
});
|
|
30
34
|
export {
|
|
31
|
-
|
|
35
|
+
D as default
|
|
32
36
|
};
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import i from "./MiddleSlot.vue2.js";
|
|
2
2
|
import s from "../../../_virtual/_plugin-vue2_normalizer.js";
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
return
|
|
6
|
-
},
|
|
3
|
+
var t = function() {
|
|
4
|
+
var r = this, e = r._self._c, o = r._self._setupProxy;
|
|
5
|
+
return e("div", [o.editorStore.isVersionHistoryOpen ? e("div", { staticClass: "d-f" }, [e(o.VersionHistory), e(o.VersionHistoryViewOptions)], 1) : o.editorStore.isPreviewModeOpen ? e("div", { staticClass: "d-f" }, [e(o.EmailSizeIndicator), e(o.AmpToggle)], 1) : r._e(), e(o.EditorToolbar, { directives: [{ name: "show", rawName: "v-show", value: o.editorStore.isEditorToolbarVisible, expression: "editorStore.isEditorToolbarVisible" }] })], 1);
|
|
6
|
+
}, n = [], a = /* @__PURE__ */ s(
|
|
7
7
|
i,
|
|
8
|
+
t,
|
|
8
9
|
n,
|
|
9
|
-
d,
|
|
10
10
|
!1,
|
|
11
11
|
null,
|
|
12
12
|
null
|
|
13
13
|
);
|
|
14
|
-
const
|
|
14
|
+
const c = a.exports;
|
|
15
15
|
export {
|
|
16
|
-
|
|
16
|
+
c as default
|
|
17
17
|
};
|
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
import v from "./version-history/ViewOptions.vue.js";
|
|
10
|
-
import u from "./ViewOptions.vue.js";
|
|
11
|
-
const C = /* @__PURE__ */ p({
|
|
1
|
+
import { defineComponent as o } from "vue";
|
|
2
|
+
import r from "../email-preview/amp/AmpToggle.vue.js";
|
|
3
|
+
import t from "../email-preview/desktop-preview/EmailSizeIndicator.vue.js";
|
|
4
|
+
import { useEditorStore as i } from "../../../stores/editor.js";
|
|
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({
|
|
12
9
|
__name: "MiddleSlot",
|
|
13
|
-
setup(
|
|
14
|
-
|
|
15
|
-
return { __sfc: !0, editorStore: o, trans: e, openPreviewMode: t, closePreviewMode: r, previewTooltipText: s, codeEditorTooltipText: n, handlePreviewToggle: () => o.isPreviewModeOpen ? r() : t(), AmpToggle: d, getTooltipOptions: c, InButtonV2: f, VersionHistory: a, VersionHistoryViewOptions: v, ViewOptions: u };
|
|
10
|
+
setup(s) {
|
|
11
|
+
return { __sfc: !0, editorStore: i(), AmpToggle: r, EmailSizeIndicator: t, EditorToolbar: e, VersionHistory: m, VersionHistoryViewOptions: p };
|
|
16
12
|
}
|
|
17
13
|
});
|
|
18
14
|
export {
|
|
19
|
-
|
|
15
|
+
S as default
|
|
20
16
|
};
|
|
@@ -1,20 +1,17 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
u,
|
|
11
|
-
p,
|
|
12
|
-
c,
|
|
1
|
+
import o from "./RightSlot.vue2.js";
|
|
2
|
+
import s from "../../../_virtual/_plugin-vue2_normalizer.js";
|
|
3
|
+
var n = function() {
|
|
4
|
+
var r = this, t = r._self._c, e = r._self._setupProxy;
|
|
5
|
+
return t("div", { staticClass: "d-f" }, [e.editorStore.isVersionHistoryOpen ? t(e.RestoreButton) : t(e.EditorActions, { ref: "editorActionsRef" })], 1);
|
|
6
|
+
}, i = [], _ = /* @__PURE__ */ s(
|
|
7
|
+
o,
|
|
8
|
+
n,
|
|
9
|
+
i,
|
|
13
10
|
!1,
|
|
14
11
|
null,
|
|
15
12
|
null
|
|
16
13
|
);
|
|
17
|
-
const
|
|
14
|
+
const l = _.exports;
|
|
18
15
|
export {
|
|
19
|
-
|
|
16
|
+
l as default
|
|
20
17
|
};
|
|
@@ -1,36 +1,19 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
import { useTranslations as T } from "../../../composables/useTranslations.js";
|
|
7
|
-
import { useVersionHistoryApi as w } from "../../../composables/useVersionHistoryApi.js";
|
|
8
|
-
import { useEditorStore as C } from "../../../stores/editor.js";
|
|
9
|
-
import { getTooltipOptions as O } from "../../../utils/tooltipUtils.js";
|
|
10
|
-
import { InButtonV2 as A } from "@useinsider/design-system-vue";
|
|
11
|
-
const J = /* @__PURE__ */ H({
|
|
1
|
+
import { defineComponent as i, ref as s } from "vue";
|
|
2
|
+
import { useEditorStore as m } from "../../../stores/editor.js";
|
|
3
|
+
import f from "./EditorActions.vue.js";
|
|
4
|
+
import a from "./version-history/RestoreButton.vue.js";
|
|
5
|
+
const l = /* @__PURE__ */ i({
|
|
12
6
|
__name: "RightSlot",
|
|
13
|
-
setup(
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
7
|
+
setup(p, { expose: e }) {
|
|
8
|
+
const r = m(), o = s(null);
|
|
9
|
+
return e({
|
|
10
|
+
handleSave: (n) => {
|
|
11
|
+
var t;
|
|
12
|
+
return (t = o.value) == null ? void 0 : t.handleSave(n);
|
|
18
13
|
}
|
|
19
|
-
|
|
20
|
-
}, y = async () => {
|
|
21
|
-
e.value = !0, await r(), e.value = !1;
|
|
22
|
-
}, S = () => {
|
|
23
|
-
o.isSaveAsTemplateDrawerOpen = !0;
|
|
24
|
-
}, g = _(() => o.isVersionHistoryOpen ? t("newsletter.close-version-history") : t("newsletter.version-history")), l = async (p) => {
|
|
25
|
-
s.value = !0, o.loadingStatus = !0;
|
|
26
|
-
const m = await n(p);
|
|
27
|
-
return s.value = !1, (p || !m) && (o.loadingStatus = !1), m;
|
|
28
|
-
};
|
|
29
|
-
return u({
|
|
30
|
-
handleSave: l
|
|
31
|
-
}), { __sfc: !0, config: f, exportHtml: r, save: n, openVersionHistory: i, closeVersionHistory: a, editorStore: o, trans: t, isExporting: e, isSaving: s, testEmailClick: v, handleVersionHistory: d, handleExport: y, handleSaveAs: S, versionHistoryTooltipText: g, handleSave: l, getTooltipOptions: O, InButtonV2: A };
|
|
14
|
+
}), { __sfc: !0, editorStore: r, editorActionsRef: o, EditorActions: f, RestoreButton: a };
|
|
32
15
|
}
|
|
33
16
|
});
|
|
34
17
|
export {
|
|
35
|
-
|
|
18
|
+
l as default
|
|
36
19
|
};
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import
|
|
1
|
+
import r from "./VersionHistory.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import i from "../../../../_virtual/_plugin-vue2_normalizer.js";
|
|
4
4
|
var n = function() {
|
|
5
5
|
var s = this, e = s._self._c, t = s._self._setupProxy;
|
|
6
|
-
return e("div", { staticClass: "version-history
|
|
6
|
+
return e("div", { staticClass: "version-history d-f a-i-c f-g-1 mx-3" }, [t.itemStatus ? e(t.VersionHistoryItem, { attrs: { "text-align": "right", date: t.versionHistoryStore.previousPatch.date, description: t.versionHistoryStore.previousPatch.description } }) : s._e(), e("div", { staticClass: "d-f version-history__toolbar" }, [e(t.InButtonV2, { attrs: { id: "guido__undo-button", "left-icon": "line-undo", styling: "ghost", type: "secondary", "disabled-status": !t.versionHistoryStore.hasPreviousPatch, "label-text-status": !1 }, on: { click: function(o) {
|
|
7
7
|
return t.previewVersion(t.versionHistoryStore.previousPatch.id);
|
|
8
|
-
} } }), e(t.InButtonV2, { attrs: { id: "guido__redo-button", "left-icon": "line-redo", styling: "ghost", type: "secondary", "disabled-status": !t.versionHistoryStore.hasNextPatch, "label-text-status": !1 }, on: { click: function(
|
|
8
|
+
} } }), e(t.InButtonV2, { attrs: { id: "guido__redo-button", "left-icon": "line-redo", styling: "ghost", type: "secondary", "disabled-status": !t.versionHistoryStore.hasNextPatch, "label-text-status": !1 }, on: { click: function(o) {
|
|
9
9
|
return t.previewVersion(t.versionHistoryStore.nextPatch.id);
|
|
10
10
|
} } })], 1), t.itemStatus ? e(t.VersionHistoryItem, { attrs: { "text-align": "left", date: t.versionHistoryStore.nextPatch.date, description: t.versionHistoryStore.nextPatch.description } }) : s._e()], 1);
|
|
11
11
|
}, a = [], c = /* @__PURE__ */ i(
|
|
12
|
-
|
|
12
|
+
r,
|
|
13
13
|
n,
|
|
14
14
|
a,
|
|
15
15
|
!1,
|
|
16
16
|
null,
|
|
17
|
-
"
|
|
17
|
+
"64c52560"
|
|
18
18
|
);
|
|
19
19
|
const _ = c.exports;
|
|
20
20
|
export {
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import { defineComponent as v, ref as D, computed as o } from "vue";
|
|
2
|
-
import
|
|
3
|
-
import { useConfig as
|
|
4
|
-
import { useTranslations as
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import { useOnboardingStore as
|
|
8
|
-
import { isAfterDate as w, formatShortDate as
|
|
9
|
-
const
|
|
2
|
+
import _ from "../../wrappers/WpModal.vue.js";
|
|
3
|
+
import { useConfig as h } from "../../../composables/useConfig.js";
|
|
4
|
+
import { useTranslations as y } from "../../../composables/useTranslations.js";
|
|
5
|
+
import { ACADEMY_LINKS as c } from "../../../enums/academy.js";
|
|
6
|
+
import L from "../../../static/assets/onboarding-img.svg.js";
|
|
7
|
+
import { useOnboardingStore as C } from "../../../stores/onboarding.js";
|
|
8
|
+
import { isAfterDate as w, formatShortDate as A } from "../../../utils/dateUtil.js";
|
|
9
|
+
const V = /* @__PURE__ */ v({
|
|
10
10
|
__name: "NewVersionPopup",
|
|
11
11
|
emits: ["onboarding-finished"],
|
|
12
|
-
setup(
|
|
13
|
-
const e =
|
|
12
|
+
setup(I, { emit: a }) {
|
|
13
|
+
const e = y(), t = C(), s = D(!0), { config: p } = h(), i = o(() => {
|
|
14
14
|
var l, m;
|
|
15
15
|
return (m = (l = p.value) == null ? void 0 : l.editor) == null ? void 0 : m.migrationDate;
|
|
16
|
-
}), n = o(() => w(i.value || 0)), d = o(() =>
|
|
16
|
+
}), n = o(() => w(i.value || 0)), d = o(() => A(
|
|
17
17
|
i.value || 0
|
|
18
18
|
)), f = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-title") : e("email-editor.onboarding-title")), g = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-description", {
|
|
19
19
|
sunsetDate: d.value,
|
|
20
|
-
academyLink: c
|
|
20
|
+
academyLink: c.EMAIL_EDITOR
|
|
21
21
|
}) : e("email-editor.onboarding-description", {
|
|
22
|
-
academyLink: c
|
|
22
|
+
academyLink: c.EMAIL_EDITOR
|
|
23
23
|
})), u = o(() => n.value ? e("products.cancel") : e("products.remind-me-later")), b = o(() => ({
|
|
24
24
|
primaryButton: {
|
|
25
25
|
type: "primary",
|
|
@@ -38,9 +38,9 @@ const E = /* @__PURE__ */ v({
|
|
|
38
38
|
t.onRemindMeLater(), r();
|
|
39
39
|
}, handleClose: () => {
|
|
40
40
|
t.onNewVersionPopupClose(), r();
|
|
41
|
-
}, WpModal:
|
|
41
|
+
}, WpModal: _, onboardingImageSvg: L };
|
|
42
42
|
}
|
|
43
43
|
});
|
|
44
44
|
export {
|
|
45
|
-
|
|
45
|
+
V as default
|
|
46
46
|
};
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
1
|
+
import { defineComponent as h, ref as b, computed as g, watch as _ } from "vue";
|
|
2
|
+
import v from "../../wrappers/WpDrawer.vue.js";
|
|
3
3
|
import { useToaster as U } from "../../../composables/useToaster.js";
|
|
4
|
-
import { useTranslations as
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
4
|
+
import { useTranslations as N } from "../../../composables/useTranslations.js";
|
|
5
|
+
import { ACADEMY_LINKS as w } from "../../../enums/academy.js";
|
|
6
|
+
import { ToasterTypeOptions as R } from "../../../enums/toaster.js";
|
|
7
|
+
import { PAGE_TYPES as l, getTypeTranslations as D, UNSUBSCRIBE_PAGES_LINK as I } from "../../../enums/unsubscribe.js";
|
|
8
|
+
import { useUnsubscribeStore as P } from "../../../stores/unsubscribe.js";
|
|
8
9
|
import { InSegments as G } from "@useinsider/design-system-vue";
|
|
9
|
-
const
|
|
10
|
+
const V = /* @__PURE__ */ h({
|
|
10
11
|
__name: "UnsubscribeTypeSelection",
|
|
11
|
-
setup(
|
|
12
|
-
const e =
|
|
12
|
+
setup(L) {
|
|
13
|
+
const e = N(), { showToaster: f } = U(), t = P(), n = b(!1), i = b(!0), o = b(l.GLOBAL_UNSUBSCRIBE), S = e(
|
|
13
14
|
"unsubscription-preference.select-unsubscribe-page-description",
|
|
14
|
-
{ action: `<a href="${
|
|
15
|
-
), T =
|
|
15
|
+
{ action: `<a href="${w.GLOBAL_UNSUBSCRIBE}" target="_blank">${e("ds-rules.visit-academy")}</a>` }
|
|
16
|
+
), T = g(() => [
|
|
16
17
|
{
|
|
17
18
|
description: e("unsubscription-preference.type-global-unsubscribe-description"),
|
|
18
19
|
icon: "line-contact-global-unsub-page",
|
|
@@ -30,7 +31,7 @@ const K = /* @__PURE__ */ v({
|
|
|
30
31
|
disable: t.isSubscriptionPreferencesCenterDisabled,
|
|
31
32
|
tooltipText: t.isSubscriptionPreferencesCenterDisabled ? e("unsubscription-preference.pref-center-added") : ""
|
|
32
33
|
}
|
|
33
|
-
]), y =
|
|
34
|
+
]), y = g(() => ({
|
|
34
35
|
primaryButton: {
|
|
35
36
|
styling: "solid",
|
|
36
37
|
type: "primary",
|
|
@@ -56,13 +57,13 @@ const K = /* @__PURE__ */ v({
|
|
|
56
57
|
}, 500);
|
|
57
58
|
}, E = (s) => {
|
|
58
59
|
o.value = s;
|
|
59
|
-
},
|
|
60
|
+
}, m = () => {
|
|
60
61
|
const s = t.hasTemplatesByCollectionType, r = [];
|
|
61
62
|
if (Object.entries(s).forEach(([c, p]) => {
|
|
62
63
|
p || r.push(Number(c));
|
|
63
64
|
}), r.length === 0)
|
|
64
65
|
return !0;
|
|
65
|
-
const
|
|
66
|
+
const B = D(), a = r.map((c) => B[c]);
|
|
66
67
|
let u = "";
|
|
67
68
|
if (r.length === 1)
|
|
68
69
|
u = e("unsubscription-preference.create-page-to-continue", {
|
|
@@ -81,17 +82,17 @@ const K = /* @__PURE__ */ v({
|
|
|
81
82
|
});
|
|
82
83
|
}
|
|
83
84
|
return f({
|
|
84
|
-
type:
|
|
85
|
+
type: R.Warning,
|
|
85
86
|
message: u,
|
|
86
87
|
actionButton: {
|
|
87
88
|
text: "Go to Unsubscribe Pages",
|
|
88
89
|
onClick: () => {
|
|
89
|
-
window.location.href =
|
|
90
|
+
window.location.href = I;
|
|
90
91
|
}
|
|
91
92
|
}
|
|
92
93
|
}), !1;
|
|
93
94
|
}, C = async () => {
|
|
94
|
-
if (n.value = !0, await t.fetchTemplates(), t.setCollection(o.value), !
|
|
95
|
+
if (n.value = !0, await t.fetchTemplates(), t.setCollection(o.value), !m()) {
|
|
95
96
|
n.value = !1, d();
|
|
96
97
|
return;
|
|
97
98
|
}
|
|
@@ -99,9 +100,9 @@ const K = /* @__PURE__ */ v({
|
|
|
99
100
|
};
|
|
100
101
|
return _(() => t.typeSelectionDrawerStatus, (s) => {
|
|
101
102
|
s && (i.value = !0, o.value = l.GLOBAL_UNSUBSCRIBE, t.isGlobalUnsubscribeDisabled && (o.value = t.isSubscriptionPreferencesCenterDisabled ? 0 : l.SUBSCRIPTION_PREFERENCE_CENTER), i.value = !1);
|
|
102
|
-
}), { __sfc: !0, trans: e, showToaster: f, unsubscribeStore: t, isSelecting: n, skeletonStatus: i, selectedCollection: o, descriptionText: S, segmentList: T, footerButtonGroupOptions: y, closeModal: d, changeCollection: E, validateTemplates:
|
|
103
|
+
}), { __sfc: !0, trans: e, showToaster: f, unsubscribeStore: t, isSelecting: n, skeletonStatus: i, selectedCollection: o, descriptionText: S, segmentList: T, footerButtonGroupOptions: y, closeModal: d, changeCollection: E, validateTemplates: m, selectCollection: C, WpDrawer: v, InSegments: G };
|
|
103
104
|
}
|
|
104
105
|
});
|
|
105
106
|
export {
|
|
106
|
-
|
|
107
|
+
V as default
|
|
107
108
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useToaster as w } from "./useToaster.js";
|
|
2
|
-
const
|
|
3
|
-
const { handleError: l } = w(),
|
|
4
|
-
const
|
|
2
|
+
const v = () => {
|
|
3
|
+
const { handleError: l } = w(), r = (t = {}) => new Promise((e, a) => {
|
|
4
|
+
const o = { ...{
|
|
5
5
|
minimize: !0,
|
|
6
6
|
utmEntity: {
|
|
7
7
|
utmSource: "",
|
|
@@ -20,29 +20,29 @@ const S = () => {
|
|
|
20
20
|
forceAmp: !1,
|
|
21
21
|
resetDataSavedFlag: !1,
|
|
22
22
|
disableLineHeightsReplace: !0
|
|
23
|
-
}, ...t },
|
|
24
|
-
callback: (
|
|
25
|
-
|
|
23
|
+
}, ...t }, s = {
|
|
24
|
+
callback: (n, p, d, c, u) => {
|
|
25
|
+
n ? a(n) : e({
|
|
26
26
|
html: p,
|
|
27
27
|
ampHtml: d,
|
|
28
28
|
ampErrors: c,
|
|
29
29
|
displayConditions: u
|
|
30
30
|
});
|
|
31
31
|
},
|
|
32
|
-
...
|
|
32
|
+
...o
|
|
33
33
|
};
|
|
34
|
-
window.StripoEditorApi.actionsApi.compileEmail(
|
|
34
|
+
window.StripoEditorApi.actionsApi.compileEmail(s);
|
|
35
35
|
});
|
|
36
36
|
return {
|
|
37
|
-
getCompiledEmail:
|
|
37
|
+
getCompiledEmail: r,
|
|
38
38
|
getTemplateData: () => new Promise((t) => {
|
|
39
|
-
const e = ({ html:
|
|
40
|
-
html:
|
|
41
|
-
css:
|
|
42
|
-
width:
|
|
43
|
-
height:
|
|
44
|
-
utmParams:
|
|
45
|
-
syncModulesIds:
|
|
39
|
+
const e = ({ html: a, css: i, width: o, height: m, utmParams: s, syncModulesIds: n }) => t({
|
|
40
|
+
html: a,
|
|
41
|
+
css: i,
|
|
42
|
+
width: o,
|
|
43
|
+
height: m,
|
|
44
|
+
utmParams: s,
|
|
45
|
+
syncModulesIds: n
|
|
46
46
|
});
|
|
47
47
|
window.StripoEditorApi.actionsApi.getTemplateData(e);
|
|
48
48
|
}),
|
|
@@ -53,15 +53,15 @@ const S = () => {
|
|
|
53
53
|
try {
|
|
54
54
|
const {
|
|
55
55
|
html: e,
|
|
56
|
-
displayConditions:
|
|
57
|
-
ampHtml:
|
|
58
|
-
ampErrors:
|
|
59
|
-
} = await
|
|
56
|
+
displayConditions: a,
|
|
57
|
+
ampHtml: i = "",
|
|
58
|
+
ampErrors: o = []
|
|
59
|
+
} = await r({ minimize: !1, resetDataSavedFlag: !1, ...t });
|
|
60
60
|
return {
|
|
61
61
|
html: e,
|
|
62
|
-
ampHtml:
|
|
63
|
-
ampErrors:
|
|
64
|
-
displayConditions:
|
|
62
|
+
ampHtml: i,
|
|
63
|
+
ampErrors: o,
|
|
64
|
+
displayConditions: a
|
|
65
65
|
};
|
|
66
66
|
} catch (e) {
|
|
67
67
|
return l(e, "Error loading preview"), {
|
|
@@ -73,24 +73,27 @@ const S = () => {
|
|
|
73
73
|
}
|
|
74
74
|
},
|
|
75
75
|
updateTimerInClonedTemplate: () => new Promise((t) => {
|
|
76
|
-
var e,
|
|
77
|
-
if (typeof ((
|
|
76
|
+
var e, a;
|
|
77
|
+
if (typeof ((a = (e = window.StripoEditorApi) == null ? void 0 : e.actionsApi) == null ? void 0 : a.updateTimerInClonedTemplate) != "function") {
|
|
78
78
|
t(null);
|
|
79
79
|
return;
|
|
80
80
|
}
|
|
81
81
|
try {
|
|
82
|
-
window.StripoEditorApi.actionsApi.updateTimerInClonedTemplate((
|
|
83
|
-
|
|
82
|
+
window.StripoEditorApi.actionsApi.updateTimerInClonedTemplate((i, o) => {
|
|
83
|
+
i ? (l(i, "Failed to update timer in cloned template"), t(null)) : t(o || null);
|
|
84
84
|
});
|
|
85
|
-
} catch (
|
|
86
|
-
l(
|
|
85
|
+
} catch (i) {
|
|
86
|
+
l(i, "Failed to call updateTimerInClonedTemplate"), t(null);
|
|
87
87
|
}
|
|
88
88
|
}),
|
|
89
89
|
updateHtmlAndCss: (t, e) => {
|
|
90
90
|
window.StripoEditorApi.actionsApi.updateHtmlAndCss(t, e);
|
|
91
|
+
},
|
|
92
|
+
editorSave: () => {
|
|
93
|
+
window.StripoEditorApi.actionsApi.save();
|
|
91
94
|
}
|
|
92
95
|
};
|
|
93
96
|
};
|
|
94
97
|
export {
|
|
95
|
-
|
|
98
|
+
v as useActionsApi
|
|
96
99
|
};
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { migrateCheckbox as
|
|
1
|
+
import { migrateCheckbox as t } from "./checkboxMigrator.js";
|
|
2
2
|
import { migrateCouponBlock as o } from "./couponBlockMigrator.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
import { migrateItemsBlock as i } from "./itemsBlockMigrator.js";
|
|
4
|
+
import { migrateRadioButton as e } from "./radioButtonMigrator.js";
|
|
5
|
+
import { migrateRecommendation as a } from "./recommendationMigrator.js";
|
|
6
|
+
import { migrateUnsubscribe as g } from "./unsubscribeMigrator.js";
|
|
7
|
+
const u = async (r) => {
|
|
8
|
+
let m = r;
|
|
9
|
+
return m = t(m), m = e(m), m = await g(m), m = o(m), m = a(m), m = i(m), m;
|
|
9
10
|
};
|
|
10
11
|
export {
|
|
11
|
-
|
|
12
|
+
u as migrate
|
|
12
13
|
};
|