@useinsider/guido 3.10.0-beta.0cc9bdd → 3.10.0-beta.10e6bef
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/Guido.vue.js +3 -3
- package/dist/components/Guido.vue2.js +41 -41
- package/dist/components/organisms/onboarding/NewVersionPopup.vue2.js +20 -23
- package/dist/components/organisms/onboarding/OnboardingWrapper.vue2.js +12 -11
- package/dist/enums/academy.js +1 -1
- package/dist/enums/date.js +3 -4
- package/dist/enums/onboarding.js +13 -11
- package/dist/extensions/Blocks/Recommendation/utils/legacyStrategyMap.js +2 -0
- package/dist/guido.css +1 -1
- package/dist/package.json.js +1 -1
- package/dist/src/enums/academy.d.ts +3 -3
- package/dist/src/enums/onboarding.d.ts +3 -0
- package/dist/src/extensions/Blocks/Recommendation/utils/legacyStrategyMap.d.ts +1 -0
- package/dist/static/styles/components/wide-panel.css.js +0 -7
- package/dist/stores/onboarding.js +14 -11
- package/dist/utils/dateUtil.js +10 -23
- package/dist/utils/templatePreparation.js +20 -16
- package/package.json +2 -2
|
@@ -3,16 +3,16 @@ import i from "./Guido.vue2.js";
|
|
|
3
3
|
import a from "../_virtual/_plugin-vue2_normalizer.js";
|
|
4
4
|
var t = function() {
|
|
5
5
|
var o = this, r = o._self._c, e = o._self._setupProxy;
|
|
6
|
-
return r("div", { ref: "wrapperRef", staticClass: "guido-editor__wrapper", class: { "guido-editor__no-header": e.noHeader } }, [r(e.HeaderWrapper, { ref: "headerWrapperRef" }), r(e.AutoSaveController), 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.FilterSelectionDrawer), r(e.SaveAsTemplateDrawer), e.
|
|
6
|
+
return r("div", { ref: "wrapperRef", staticClass: "guido-editor__wrapper", class: { "guido-editor__no-header": e.noHeader } }, [r(e.HeaderWrapper, { ref: "headerWrapperRef" }), r(e.AutoSaveController), 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.FilterSelectionDrawer), r(e.SaveAsTemplateDrawer), e.FORCE_ONBOARDING_FOR_TESTING || !e.isTestPartner() ? r(e.OnboardingWrapper, { on: { "onboarding-finished": function(_) {
|
|
7
7
|
return e.emit("onboarding:finished");
|
|
8
|
-
} } }), r(e.UnsubscribeWrapper), r(e.LoadingWrapper)], 1);
|
|
8
|
+
} } }) : o._e(), r(e.UnsubscribeWrapper), r(e.LoadingWrapper)], 1);
|
|
9
9
|
}, n = [], s = /* @__PURE__ */ a(
|
|
10
10
|
i,
|
|
11
11
|
t,
|
|
12
12
|
n,
|
|
13
13
|
!1,
|
|
14
14
|
null,
|
|
15
|
-
"
|
|
15
|
+
"57d338df"
|
|
16
16
|
);
|
|
17
17
|
const l = s.exports;
|
|
18
18
|
export {
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
import { defineComponent as X, defineAsyncComponent as
|
|
1
|
+
import { defineComponent as X, defineAsyncComponent as P, ref as G, computed as W, watch as Y, onMounted as Z, onUnmounted as ee } from "vue";
|
|
2
2
|
import { useCortexBlueprintBridge as oe } from "../composables/useCortexBlueprintBridge.js";
|
|
3
3
|
import { provideGuidoActions as te } from "../composables/useGuidoActions.js";
|
|
4
4
|
import { useGuidoStateBridge as ne } from "../composables/useGuidoStateBridge.js";
|
|
5
5
|
import { usePartner as re } from "../composables/usePartner.js";
|
|
6
6
|
import { useStripo as se } from "../composables/useStripo.js";
|
|
7
7
|
import { useTimerClone as ae } from "../composables/useTimerClone.js";
|
|
8
|
-
import { migrate as
|
|
8
|
+
import { migrate as x } from "../config/migrator/index.js";
|
|
9
9
|
import { ModuleFolderDefaults as H } from "../enums/defaults.js";
|
|
10
|
-
import {
|
|
11
|
-
import { useRecommendationExtensionStore as
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import { useStripoApi as
|
|
20
|
-
import { useConfigStore as
|
|
21
|
-
import { useDynamicContentStore as
|
|
10
|
+
import { FORCE_ONBOARDING_FOR_TESTING as ce, RIBBON_SELECTOR as ie } from "../enums/onboarding.js";
|
|
11
|
+
import { useRecommendationExtensionStore as me } from "../extensions/Blocks/Recommendation/store/recommendation.js";
|
|
12
|
+
import de from "./organisms/AutoSaveController.vue.js";
|
|
13
|
+
import le from "./organisms/base/Toaster.vue.js";
|
|
14
|
+
import ue from "./organisms/extensions/recommendation/FilterSelectionDrawer.vue.js";
|
|
15
|
+
import pe from "./organisms/header/HeaderWrapper.vue.js";
|
|
16
|
+
import fe from "./organisms/LoadingWrapper.vue.js";
|
|
17
|
+
import ve from "./organisms/save-as-template/SaveAsTemplateDrawer.vue.js";
|
|
18
|
+
import Se from "./organisms/unsubscribe/UnsubscribeWrapper.vue.js";
|
|
19
|
+
import { useStripoApi as ye } from "../services/stripoApi.js";
|
|
20
|
+
import { useConfigStore as he } from "../stores/config.js";
|
|
21
|
+
import { useDynamicContentStore as ge } from "../stores/dynamic-content.js";
|
|
22
22
|
import { useEditorStore as $ } from "../stores/editor.js";
|
|
23
|
-
import { usePreviewStore as
|
|
24
|
-
import { useTemplateStore as
|
|
25
|
-
import { useUnsubscribeStore as
|
|
26
|
-
const
|
|
23
|
+
import { usePreviewStore as be } from "../stores/preview.js";
|
|
24
|
+
import { useTemplateStore as Ee } from "../stores/template.js";
|
|
25
|
+
import { useUnsubscribeStore as we } from "../stores/unsubscribe.js";
|
|
26
|
+
const je = /* @__PURE__ */ X({
|
|
27
27
|
__name: "Guido",
|
|
28
28
|
props: {
|
|
29
29
|
config: null
|
|
30
30
|
},
|
|
31
31
|
emits: ["dynamic-content:open", "back", "save:start", "save:complete", "on-change", "ready", "onboarding:finished", "test-email:click"],
|
|
32
32
|
setup(z, { expose: q, emit: n }) {
|
|
33
|
-
const b = z, K =
|
|
33
|
+
const b = z, K = P(
|
|
34
34
|
() => import("./organisms/email-preview/PreviewContainer.vue.js")
|
|
35
|
-
), V =
|
|
35
|
+
), V = P(
|
|
36
36
|
() => import("./organisms/onboarding/OnboardingWrapper.vue.js")
|
|
37
|
-
), E =
|
|
37
|
+
), E = G(), p = G(), f = ge(), w = we(), i = he();
|
|
38
38
|
i.init(b.config);
|
|
39
|
-
const m = $(), j =
|
|
39
|
+
const m = $(), j = be(), d = W(() => m.hasChanges), { isTestPartner: J } = re(), D = () => {
|
|
40
40
|
var e;
|
|
41
41
|
return (e = E.value) == null ? void 0 : e.handleSave(!0);
|
|
42
42
|
}, C = (e) => {
|
|
@@ -44,25 +44,25 @@ const Ve = /* @__PURE__ */ X({
|
|
|
44
44
|
}, {
|
|
45
45
|
templateId: v,
|
|
46
46
|
userId: T,
|
|
47
|
-
partnerName:
|
|
48
|
-
username:
|
|
47
|
+
partnerName: O,
|
|
48
|
+
username: _,
|
|
49
49
|
template: o,
|
|
50
50
|
editor: s
|
|
51
|
-
} = i, l = (o == null ? void 0 : o.html) || "", F = (o == null ? void 0 : o.css) || "", S = (o == null ? void 0 : o.preselectedDynamicContent) || [],
|
|
51
|
+
} = i, l = (o == null ? void 0 : o.html) || "", F = (o == null ? void 0 : o.css) || "", S = (o == null ? void 0 : o.preselectedDynamicContent) || [], R = (s == null ? void 0 : s.savedModulesFolderName) || H.SAVED_MODULES, L = (s == null ? void 0 : s.defaultModulesFolderName) || H.DEFAULT_MODULES;
|
|
52
52
|
oe(), ne();
|
|
53
53
|
const y = {
|
|
54
54
|
emailId: v,
|
|
55
55
|
userId: T,
|
|
56
|
-
username:
|
|
57
|
-
partnerName:
|
|
58
|
-
savedModulesFolderName:
|
|
59
|
-
defaultModulesFolderName:
|
|
60
|
-
},
|
|
56
|
+
username: _,
|
|
57
|
+
partnerName: O,
|
|
58
|
+
savedModulesFolderName: R,
|
|
59
|
+
defaultModulesFolderName: L
|
|
60
|
+
}, N = {
|
|
61
61
|
preselectedDynamicContentList: S,
|
|
62
62
|
onReady: () => {
|
|
63
63
|
console.debug("guido:ready"), n("ready");
|
|
64
64
|
}
|
|
65
|
-
}, { initPlugin:
|
|
65
|
+
}, { initPlugin: k } = se(y, N), { getDefaultTemplate: U } = ye(), { cloneTimersOnSave: A, hasTimerBlocks: B } = ae(), Q = W(() => {
|
|
66
66
|
var e;
|
|
67
67
|
return !((e = i.ui) != null && e.showHeader);
|
|
68
68
|
});
|
|
@@ -81,9 +81,9 @@ const Ve = /* @__PURE__ */ X({
|
|
|
81
81
|
console.debug("guido:test-email:click"), n("test-email:click");
|
|
82
82
|
}
|
|
83
83
|
});
|
|
84
|
-
const
|
|
84
|
+
const I = (e) => {
|
|
85
85
|
console.debug("dynamic-content:close", e), f.setSelectedDynamicContent(e), document.dispatchEvent(new CustomEvent("dynamic-content:close", { detail: e }));
|
|
86
|
-
},
|
|
86
|
+
}, M = () => {
|
|
87
87
|
console.debug("dynamic-content:close", "Without Data"), document.dispatchEvent(new CustomEvent("dynamic-content:close", { detail: { text: "", value: "" } }));
|
|
88
88
|
};
|
|
89
89
|
Y(() => d.value, () => {
|
|
@@ -96,22 +96,22 @@ const Ve = /* @__PURE__ */ X({
|
|
|
96
96
|
let a = null;
|
|
97
97
|
const g = () => {
|
|
98
98
|
var t;
|
|
99
|
-
const e = document.querySelector(
|
|
99
|
+
const e = document.querySelector(ie);
|
|
100
100
|
(t = p.value) == null || t.style.setProperty("--ribbon-offset", `${(e == null ? void 0 : e.offsetHeight) ?? 0}px`);
|
|
101
101
|
};
|
|
102
102
|
return Z(async () => {
|
|
103
103
|
var t, u;
|
|
104
|
-
console.debug("Guido says happy coding 🎉"), console.debug("🚗 Ka-Chow"),
|
|
104
|
+
console.debug("Guido says happy coding 🎉"), console.debug("🚗 Ka-Chow"), me().$reset(), $().$reset(), m.templateId = v, Ee().$reset(), g();
|
|
105
105
|
const e = (t = p.value) == null ? void 0 : t.parentElement;
|
|
106
106
|
e && (a = new ResizeObserver(g), a.observe(e));
|
|
107
107
|
try {
|
|
108
108
|
w.selectedUnsubscribePages = (o == null ? void 0 : o.selectedUnsubscribePages) || [];
|
|
109
109
|
const c = ((u = o == null ? void 0 : o.migration) == null ? void 0 : u.recommendationConfigs) ?? {};
|
|
110
110
|
let r = {
|
|
111
|
-
html: l && await
|
|
111
|
+
html: l && await x(l, c),
|
|
112
112
|
css: F
|
|
113
113
|
};
|
|
114
|
-
r.html || (r = await
|
|
114
|
+
r.html || (r = await U(), r.html = await x(r.html, c)), B(r.html) && (r.html = await A(r.html)), await k(r), f.selectedDynamicContentList = S;
|
|
115
115
|
} catch (c) {
|
|
116
116
|
console.error("Failed to initialize Stripo editor:", c);
|
|
117
117
|
}
|
|
@@ -126,15 +126,15 @@ const Ve = /* @__PURE__ */ X({
|
|
|
126
126
|
i.reset();
|
|
127
127
|
}), q({
|
|
128
128
|
dynamicContent: {
|
|
129
|
-
insert:
|
|
130
|
-
close:
|
|
129
|
+
insert: I,
|
|
130
|
+
close: M
|
|
131
131
|
},
|
|
132
132
|
hasChanges: d,
|
|
133
133
|
saveSilent: D,
|
|
134
134
|
setLoading: C
|
|
135
|
-
}), { __sfc: !0, PreviewContainer: K, OnboardingWrapper: V, headerWrapperRef: E, wrapperRef: p, dynamicContentStore: f, unsubscribeStore: w, props: b, configStore: i, editorStore: m, previewStore: j, hasChanges: d, isTestPartner: J, saveSilent: D, setLoading: C, templateId: v, userId: T, partnerName:
|
|
135
|
+
}), { __sfc: !0, PreviewContainer: K, OnboardingWrapper: V, headerWrapperRef: E, wrapperRef: p, dynamicContentStore: f, unsubscribeStore: w, props: b, configStore: i, editorStore: m, previewStore: j, hasChanges: d, isTestPartner: J, saveSilent: D, setLoading: C, templateId: v, userId: T, partnerName: O, username: _, templateConfig: o, editorConfig: s, html: l, css: F, preselectedDynamicContentList: S, savedModulesFolderName: R, defaultModulesFolderName: L, emit: n, metadata: y, options: N, initPlugin: k, getDefaultTemplate: U, cloneTimersOnSave: A, hasTimerBlocks: B, noHeader: Q, insertDynamicContent: I, closeDynamicContent: M, handleDynamicContentOpen: h, ribbonObserver: a, updateRibbonOffset: g, FORCE_ONBOARDING_FOR_TESTING: ce, AutoSaveController: de, Toaster: le, FilterSelectionDrawer: ue, HeaderWrapper: pe, LoadingWrapper: fe, SaveAsTemplateDrawer: ve, UnsubscribeWrapper: Se };
|
|
136
136
|
}
|
|
137
137
|
});
|
|
138
138
|
export {
|
|
139
|
-
|
|
139
|
+
je as default
|
|
140
140
|
};
|
|
@@ -1,46 +1,43 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import { useConfig as
|
|
1
|
+
import { defineComponent as b, ref as v, computed as o } from "vue";
|
|
2
|
+
import D from "../../wrappers/WpModal.vue.js";
|
|
3
|
+
import { useConfig as _ } from "../../../composables/useConfig.js";
|
|
4
4
|
import { useTranslations as y } from "../../../composables/useTranslations.js";
|
|
5
|
-
import { ACADEMY_LINKS as
|
|
5
|
+
import { ACADEMY_LINKS as m } from "../../../enums/academy.js";
|
|
6
6
|
import L from "../../../static/assets/onboarding-img.svg.js";
|
|
7
|
-
import { useOnboardingStore as
|
|
8
|
-
import { isAfterDate as
|
|
9
|
-
const
|
|
7
|
+
import { useOnboardingStore as h } from "../../../stores/onboarding.js";
|
|
8
|
+
import { isAfterDate as C } from "../../../utils/dateUtil.js";
|
|
9
|
+
const x = /* @__PURE__ */ b({
|
|
10
10
|
__name: "NewVersionPopup",
|
|
11
11
|
emits: ["onboarding-finished"],
|
|
12
|
-
setup(
|
|
13
|
-
const e = y(), t =
|
|
14
|
-
var l,
|
|
15
|
-
return (
|
|
16
|
-
}), n = o(() =>
|
|
17
|
-
|
|
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
|
-
sunsetDate: d.value,
|
|
20
|
-
academyLink: c.EMAIL_EDITOR
|
|
12
|
+
setup(w, { emit: i }) {
|
|
13
|
+
const e = y(), t = h(), a = v(!0), { config: s } = _(), p = o(() => {
|
|
14
|
+
var l, u;
|
|
15
|
+
return (u = (l = s.value) == null ? void 0 : l.editor) == null ? void 0 : u.migrationDate;
|
|
16
|
+
}), n = o(() => C(p.value || 0)), c = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-title") : e("email-editor.onboarding-title")), f = o(() => n.value ? e("email-editor.onboarding-popup-sunsetted-description", {
|
|
17
|
+
academyLink: m.EMAIL_EDITOR
|
|
21
18
|
}) : e("email-editor.onboarding-description", {
|
|
22
|
-
academyLink:
|
|
23
|
-
})),
|
|
19
|
+
academyLink: m.EMAIL_EDITOR
|
|
20
|
+
})), d = o(() => n.value ? e("products.cancel") : e("products.remind-me-later")), g = o(() => ({
|
|
24
21
|
primaryButton: {
|
|
25
22
|
type: "primary",
|
|
26
23
|
labelText: e("left-menu.discover-now")
|
|
27
24
|
},
|
|
28
25
|
secondaryButton: {
|
|
29
26
|
type: "subtle-primary",
|
|
30
|
-
labelText:
|
|
27
|
+
labelText: d.value
|
|
31
28
|
}
|
|
32
29
|
})), r = () => {
|
|
33
|
-
|
|
30
|
+
a.value = !1, i("onboarding-finished");
|
|
34
31
|
};
|
|
35
|
-
return { __sfc: !0, emit:
|
|
32
|
+
return { __sfc: !0, emit: i, trans: e, onboardingStore: t, isVisible: a, config: s, migrationDate: p, isAfterMigrationDate: n, popupTitle: c, popupDescription: f, secondaryButtonLabel: d, footerButtonOptions: g, closePopup: r, handleDiscoverNow: () => {
|
|
36
33
|
t.onDiscoverNowClicked(), r();
|
|
37
34
|
}, handleRemindLater: () => {
|
|
38
35
|
t.onRemindMeLater(), r();
|
|
39
36
|
}, handleClose: () => {
|
|
40
37
|
t.onNewVersionPopupClose(), r();
|
|
41
|
-
}, WpModal:
|
|
38
|
+
}, WpModal: D, onboardingImageSvg: L };
|
|
42
39
|
}
|
|
43
40
|
});
|
|
44
41
|
export {
|
|
45
|
-
|
|
42
|
+
x as default
|
|
46
43
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as
|
|
1
|
+
import { defineComponent as g, computed as e, onMounted as b, watch as t } from "vue";
|
|
2
2
|
import u from "./AMPOnboarding.vue.js";
|
|
3
3
|
import v from "./GenericOnboarding.vue.js";
|
|
4
4
|
import l from "./ItemsOnboarding.vue.js";
|
|
@@ -6,22 +6,23 @@ import y from "./NewVersionPopup.vue.js";
|
|
|
6
6
|
import S from "./TextBlockOnboarding.vue.js";
|
|
7
7
|
import h from "./VersionHistoryOnboarding.vue.js";
|
|
8
8
|
import { usePartner as w } from "../../../composables/usePartner.js";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
|
|
9
|
+
import { FORCE_ONBOARDING_FOR_TESTING as P } from "../../../enums/onboarding.js";
|
|
10
|
+
import { useEditorStore as _ } from "../../../stores/editor.js";
|
|
11
|
+
import { useOnboardingStore as A } from "../../../stores/onboarding.js";
|
|
12
|
+
import { usePreviewStore as H } from "../../../stores/preview.js";
|
|
13
|
+
const z = /* @__PURE__ */ g({
|
|
13
14
|
__name: "OnboardingWrapper",
|
|
14
15
|
emits: ["onboarding-finished"],
|
|
15
|
-
setup(
|
|
16
|
-
const o =
|
|
16
|
+
setup(M, { emit: f }) {
|
|
17
|
+
const o = A(), r = _(), s = H(), { isTestPartner: a } = w(), p = e(() => r.isStripoInitialized), m = e(() => !P && a()), d = [
|
|
17
18
|
{ type: "newVersionPopup", component: y },
|
|
18
19
|
{ type: "genericOnboarding", component: v },
|
|
19
20
|
{ type: "textBlockOnboarding", component: S },
|
|
20
21
|
{ type: "versionHistoryOnboarding", component: h },
|
|
21
22
|
{ type: "ampOnboarding", component: u },
|
|
22
23
|
{ type: "itemsOnboarding", component: l }
|
|
23
|
-
], c = (n) =>
|
|
24
|
-
return
|
|
24
|
+
], c = (n) => m.value || !p.value ? !1 : n === "newVersionPopup" ? o.shouldShowOnboarding(n) : o.isActive(n), O = e(() => d.filter((n) => c(n.type)));
|
|
25
|
+
return b(async () => {
|
|
25
26
|
await o.fetchUserModalState();
|
|
26
27
|
}), t(
|
|
27
28
|
() => r.isVersionHistoryOpen,
|
|
@@ -38,9 +39,9 @@ const G = /* @__PURE__ */ b({
|
|
|
38
39
|
(n) => {
|
|
39
40
|
!n && o.isActive("ampOnboarding") && o.close("ampOnboarding");
|
|
40
41
|
}
|
|
41
|
-
), { __sfc: !0, emit: f, onboardingStore: o, editorStore: r, previewStore: s, isTestPartner: a, isStripoReady: p, isTestPartnerActive:
|
|
42
|
+
), { __sfc: !0, emit: f, onboardingStore: o, editorStore: r, previewStore: s, isTestPartner: a, isStripoReady: p, isTestPartnerActive: m, onboardingConfigs: d, shouldShow: c, visibleOnboardings: O };
|
|
42
43
|
}
|
|
43
44
|
});
|
|
44
45
|
export {
|
|
45
|
-
|
|
46
|
+
z as default
|
|
46
47
|
};
|
package/dist/enums/academy.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e = "https://academy.insiderone.com
|
|
1
|
+
const e = "https://academy.insiderone.com", o = {
|
|
2
2
|
EMAIL_EDITOR: `${e}/docs/email-drag-and-drop-editor`,
|
|
3
3
|
GLOBAL_UNSUBSCRIBE: `${e}/docs/global-unsubscribe-preference-center`,
|
|
4
4
|
AMP_FOR_EMAILS: `${e}/docs/amp-for-emails`
|
package/dist/enums/date.js
CHANGED
package/dist/enums/onboarding.js
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
const e = [
|
|
1
|
+
const e = "insidethekube.com", t = typeof window < "u" && window.location.hostname.endsWith(e), n = ["newVersionPopup", "itemsOnboarding"], o = [
|
|
2
2
|
".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-0.ng-star-inserted",
|
|
3
3
|
".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-1.ng-star-inserted",
|
|
4
4
|
".service-element.stacked-panel-item.ng-tns-c1014751574-3.level-bottom-2.ng-star-inserted"
|
|
5
|
-
],
|
|
5
|
+
], s = "ui-editor", E = 'button[role="tab"][aria-label="Card Composition"]', i = 'button[role="tab"][aria-label="Settings"]', O = ".in-ribbons-wrapper", _ = ".guido__amp-toggle-html", a = ".in-segments-wrapper", T = '[data-testid="guido-header"]', c = 158, r = 10;
|
|
6
6
|
export {
|
|
7
|
-
|
|
7
|
+
_ as AMP_TOGGLE_BUTTON_SELECTOR,
|
|
8
8
|
a as AMP_TOGGLE_WRAPPER_SELECTOR,
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
9
|
+
E as CARD_COMPOSITION_TAB_SELECTOR,
|
|
10
|
+
n as FORCED_ONBOARDING_TYPES,
|
|
11
|
+
t as FORCE_ONBOARDING_FOR_TESTING,
|
|
12
|
+
T as HEADER_SELECTOR,
|
|
13
|
+
c as POPOVER_LEFT_OFFSET,
|
|
14
|
+
r as POPOVER_TOP_GAP,
|
|
15
|
+
O as RIBBON_SELECTOR,
|
|
16
|
+
o as SERVICE_HOVER_SELECTORS,
|
|
17
|
+
i as SETTINGS_TAB_SELECTOR,
|
|
18
|
+
s as UI_EDITOR_SELECTOR
|
|
17
19
|
};
|
package/dist/guido.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.gap-16[data-v-5553d071],.gap-16[data-v-0e1b0c54]{gap:16px}[data-v-73199fa4] .in-button-v2__wrapper{line-height:0}[data-v-22226124] .in-segments-wrapper__button_selected,[data-v-22226124] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb;color:#0010ac;border-color:#0010ac}[data-v-2cb418af] .in-progress-wrapper__progress p span:last-child{display:none!important}[data-v-2cb418af] .in-progress-description-status{display:none!important}.view-options-wrapper[data-v-195ab6d4]{position:relative;display:inline-block}.new-tag[data-v-195ab6d4]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-195ab6d4] .guido__view-option-selection-desktop svg,[data-v-195ab6d4] .guido__view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-195ab6d4] .in-segments-wrapper__button_selected,[data-v-195ab6d4] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-195ab6d4] .in-tooltip-wrapper__icon{cursor:pointer}.editor-toolbar[data-v-173c3a40]{gap:4px}.version-history-item[data-v-ee4b9c3f]{flex-basis:200px}.version-history[data-v-64c52560]{gap:8px}.version-history__toolbar[data-v-64c52560]{gap:4px}.view-options-wrapper[data-v-d405ca59]{position:relative;display:inline-block}.new-tag[data-v-d405ca59]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-d405ca59] .guido__verion-history-view-option-selection-desktop svg,[data-v-d405ca59] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-d405ca59] .in-segments-wrapper__button_selected,[data-v-d405ca59] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-d405ca59] .in-tooltip-wrapper__icon{cursor:pointer}.auto-save-toggle[data-v-2c964af4]{position:relative}.auto-save-toggle__info-box[data-v-2c964af4]{position:absolute;top:100%;left:0;z-index:10;width:280px}.editor-actions[data-v-82128f7d]{gap:4px}.header-wrapper[data-v-5c02dcc7]{min-width:1000px}.guido-loading__wrapper[data-v-07c4b2d8]{height:100%;top:75px!important;bottom:0!important}.guido-editor__wrapper[data-v-
|
|
1
|
+
.gap-16[data-v-5553d071],.gap-16[data-v-0e1b0c54]{gap:16px}[data-v-73199fa4] .in-button-v2__wrapper{line-height:0}[data-v-22226124] .in-segments-wrapper__button_selected,[data-v-22226124] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb;color:#0010ac;border-color:#0010ac}[data-v-2cb418af] .in-progress-wrapper__progress p span:last-child{display:none!important}[data-v-2cb418af] .in-progress-description-status{display:none!important}.view-options-wrapper[data-v-195ab6d4]{position:relative;display:inline-block}.new-tag[data-v-195ab6d4]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-195ab6d4] .guido__view-option-selection-desktop svg,[data-v-195ab6d4] .guido__view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-195ab6d4] .in-segments-wrapper__button_selected,[data-v-195ab6d4] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-195ab6d4] .in-tooltip-wrapper__icon{cursor:pointer}.editor-toolbar[data-v-173c3a40]{gap:4px}.version-history-item[data-v-ee4b9c3f]{flex-basis:200px}.version-history[data-v-64c52560]{gap:8px}.version-history__toolbar[data-v-64c52560]{gap:4px}.view-options-wrapper[data-v-d405ca59]{position:relative;display:inline-block}.new-tag[data-v-d405ca59]{position:absolute;top:-8px;right:-16px;z-index:10}[data-v-d405ca59] .guido__verion-history-view-option-selection-desktop svg,[data-v-d405ca59] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-d405ca59] .in-segments-wrapper__button_selected,[data-v-d405ca59] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}[data-v-d405ca59] .in-tooltip-wrapper__icon{cursor:pointer}.auto-save-toggle[data-v-2c964af4]{position:relative}.auto-save-toggle__info-box[data-v-2c964af4]{position:absolute;top:100%;left:0;z-index:10;width:280px}.editor-actions[data-v-82128f7d]{gap:4px}.header-wrapper[data-v-5c02dcc7]{min-width:1000px}.guido-loading__wrapper[data-v-07c4b2d8]{height:100%;top:75px!important;bottom:0!important}.guido-editor__wrapper[data-v-57d338df]{--ribbon-offset: 0px;position:relative;width:100%;height:calc(100vh - 128px - var(--ribbon-offset))}.guido-editor__container[data-v-57d338df]{width:100%;height:calc(100vh - 128px - var(--ribbon-offset))}.guido-editor__no-header[data-v-57d338df]{height:calc(100vh - 75px - var(--ribbon-offset))}[data-v-293f1c47] .in-breadcrumb-wrapper__links{cursor:pointer}.templates-wrapper[data-v-669fe7cf]{gap:16px;grid-template-columns:repeat(3,1fr)}.templates-wrapper .template-wrapper[data-v-669fe7cf]{cursor:pointer}.templates-wrapper .template-wrapper .template-container[data-v-669fe7cf]{height:274px;padding:2px;transition:none}.templates-wrapper .template-wrapper .template-container.selected[data-v-669fe7cf]{padding:1px}.templates-wrapper .template-wrapper .template-container .thumbnail[data-v-669fe7cf]{object-fit:cover;transform:scale(1)}[data-v-7a305bb2] .guido__verion-history-view-option-selection-desktop svg,[data-v-7a305bb2] .guido__verion-history-view-option-selection-mobile svg{margin:0 0 0 2px}[data-v-7a305bb2] .in-segments-wrapper__button_selected,[data-v-7a305bb2] .in-segments-wrapper__button_selected:hover{background-color:#dae1fb}.error-list[data-v-c3fd5d4b]{gap:16px}.desktop-browser-header[data-v-d86c5af5]{height:79px;min-height:79px}.desktop-browser-header__left[data-v-d86c5af5]{-webkit-user-drag:none;height:79px;width:378px}.desktop-browser-header__center[data-v-d86c5af5]{height:79px;background-repeat:repeat-x;background-size:auto 100%;background-position:left top}.desktop-browser-header__right[data-v-d86c5af5]{-webkit-user-drag:none;height:79px;width:112px}.desktop-preview[data-v-06afaecb]{min-width:602px;height:70vh;min-height:583px;border-radius:10px}.desktop-preview iframe[data-v-06afaecb]{min-height:504px}.iframe-wrapper[data-v-cbafc185]{width:258px}.iframe-scaled[data-v-cbafc185]{width:320px;height:124.0310077519%;transform:scale(.80625);transform-origin:top left}.cropped-text[data-v-eb3d05d7]{width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-preview-wrapper__phone[data-v-3f472f96]{width:282px}.mobile-preview-wrapper__phone img[data-v-3f472f96]{object-fit:cover;border-radius:44px}.mobile-preview-wrapper__content[data-v-3f472f96]{width:258px;height:450px;left:12px}[data-v-7419ae06] .vueperslides__bullets,[data-v-796d193b] .vueperslides__bullets{pointer-events:none!important}[data-v-796d193b] .vueperslides__parallax-wrapper{height:110px!important}[data-v-cadfc82d] .vueperslides__bullets{pointer-events:none!important}[data-v-cadfc82d] .vueperslides__parallax-wrapper{height:110px!important}
|
package/dist/package.json.js
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
* for easy maintenance and domain migration.
|
|
6
6
|
*/
|
|
7
7
|
export declare const ACADEMY_LINKS: {
|
|
8
|
-
readonly EMAIL_EDITOR: "https://academy.insiderone.com
|
|
9
|
-
readonly GLOBAL_UNSUBSCRIBE: "https://academy.insiderone.com
|
|
10
|
-
readonly AMP_FOR_EMAILS: "https://academy.insiderone.com
|
|
8
|
+
readonly EMAIL_EDITOR: "https://academy.insiderone.com/docs/email-drag-and-drop-editor";
|
|
9
|
+
readonly GLOBAL_UNSUBSCRIBE: "https://academy.insiderone.com/docs/global-unsubscribe-preference-center";
|
|
10
|
+
readonly AMP_FOR_EMAILS: "https://academy.insiderone.com/docs/amp-for-emails";
|
|
11
11
|
};
|
|
12
12
|
export type AcademyLinkKey = keyof typeof ACADEMY_LINKS;
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import type { OnboardingType } from '@@/Types/onboarding';
|
|
2
|
+
export declare const FORCE_ONBOARDING_FOR_TESTING: boolean;
|
|
3
|
+
export declare const FORCED_ONBOARDING_TYPES: OnboardingType[];
|
|
1
4
|
export declare const SERVICE_HOVER_SELECTORS: string[];
|
|
2
5
|
export declare const UI_EDITOR_SELECTOR = "ui-editor";
|
|
3
6
|
export declare const CARD_COMPOSITION_TAB_SELECTOR = "button[role=\"tab\"][aria-label=\"Card Composition\"]";
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* - `trending` → `trendingProducts` (id 40, path `trending`)
|
|
9
9
|
* - `mostValuable` → `mostValuableOfPartner` (id 46, path `most-valuable`)
|
|
10
10
|
* - `topSellers` → `mostPurchased` (id 62, path `top-sellers`)
|
|
11
|
+
* - `mostViewed` → `mostPopular` (id 61, path `most-popular`)
|
|
11
12
|
*
|
|
12
13
|
* Used at two boundaries:
|
|
13
14
|
* 1. The migrator (`settingsMapper`), so freshly migrated node configs carry
|
|
@@ -96,13 +96,6 @@ ue-control-panel,
|
|
|
96
96
|
min-height: auto;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
/* Hide the "Press ESC to deselect" keyboard hint Stripo 2.69 adds to every block's settings
|
|
100
|
-
header (SD-145833) — no plugin option toggles it. The sibling close (X) is a <ue-button>,
|
|
101
|
-
so scoping to a bare <button> in .panel-close-hint leaves the close button intact. */
|
|
102
|
-
.control-panel-header .panel-close-hint > button {
|
|
103
|
-
display: none !important;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
99
|
.container.droppable-header-container ue-button:last-child {
|
|
107
100
|
margin-right: 0;
|
|
108
101
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { FORCE_ONBOARDING_FOR_TESTING as e, FORCED_ONBOARDING_TYPES as a } from "../enums/onboarding.js";
|
|
2
|
+
import { useOnboardingApi as s } from "../services/onboardingApi.js";
|
|
3
|
+
import { defineStore as d } from "pinia";
|
|
3
4
|
const t = () => ({
|
|
4
5
|
cardIndex: 0,
|
|
5
6
|
isActive: !1,
|
|
6
7
|
config: []
|
|
7
|
-
}),
|
|
8
|
+
}), g = () => ({
|
|
8
9
|
onboardings: {
|
|
9
10
|
newVersionPopup: t(),
|
|
10
11
|
genericOnboarding: t(),
|
|
@@ -15,8 +16,8 @@ const t = () => ({
|
|
|
15
16
|
},
|
|
16
17
|
userModalState: {},
|
|
17
18
|
isFetched: !1
|
|
18
|
-
}),
|
|
19
|
-
state: () =>
|
|
19
|
+
}), u = d("guidoOnboarding", {
|
|
20
|
+
state: () => g(),
|
|
20
21
|
getters: {
|
|
21
22
|
getOnboarding: (n) => (i) => n.onboardings[i],
|
|
22
23
|
isActive: (n) => (i) => n.onboardings[i].isActive,
|
|
@@ -45,6 +46,8 @@ const t = () => ({
|
|
|
45
46
|
return i.config[i.cardIndex];
|
|
46
47
|
},
|
|
47
48
|
shouldShowOnboarding: (n) => (i) => {
|
|
49
|
+
if (e && a.includes(i))
|
|
50
|
+
return !0;
|
|
48
51
|
const o = n.userModalState.Guido;
|
|
49
52
|
return i === "newVersionPopup" && (o != null && o.genericOnboarding) ? !1 : o ? !o[i] : !0;
|
|
50
53
|
}
|
|
@@ -72,8 +75,8 @@ const t = () => ({
|
|
|
72
75
|
this.onboardings[n].cardIndex > 0 && this.onboardings[n].cardIndex--;
|
|
73
76
|
},
|
|
74
77
|
updateCardPosition(n, i, o) {
|
|
75
|
-
const
|
|
76
|
-
|
|
78
|
+
const r = this.onboardings[n].config[i];
|
|
79
|
+
r && (r.top = o.top, r.position = o.position);
|
|
77
80
|
},
|
|
78
81
|
setConfig(n, i) {
|
|
79
82
|
this.onboardings[n].config = i ?? [], this.onboardings[n].cardIndex >= this.onboardings[n].config.length && (this.onboardings[n].cardIndex = 0);
|
|
@@ -93,15 +96,15 @@ const t = () => ({
|
|
|
93
96
|
async fetchUserModalState() {
|
|
94
97
|
if (this.isFetched)
|
|
95
98
|
return;
|
|
96
|
-
const { fetchUserModalState: n } =
|
|
99
|
+
const { fetchUserModalState: n } = s(), i = await n();
|
|
97
100
|
this.userModalState = i, this.isFetched = !0;
|
|
98
101
|
},
|
|
99
102
|
async setUserModalState(n, i, o) {
|
|
100
|
-
const { setUserModalState:
|
|
101
|
-
await
|
|
103
|
+
const { setUserModalState: r } = s();
|
|
104
|
+
await r(n, i, o), this.isFetched = !1, await this.fetchUserModalState();
|
|
102
105
|
}
|
|
103
106
|
}
|
|
104
107
|
});
|
|
105
108
|
export {
|
|
106
|
-
|
|
109
|
+
u as useOnboardingStore
|
|
107
110
|
};
|
package/dist/utils/dateUtil.js
CHANGED
|
@@ -1,19 +1,10 @@
|
|
|
1
|
-
import { DEFAULT_LOCALE as r, DEFAULT as
|
|
2
|
-
const
|
|
1
|
+
import { DEFAULT_LOCALE as r, DEFAULT as o } from "../enums/date.js";
|
|
2
|
+
const c = () => {
|
|
3
3
|
const t = window.l10n;
|
|
4
|
-
return (t == null ? void 0 : t.locale) ===
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}, D = (t, e = s(), n = f()) => {
|
|
9
|
-
const o = {
|
|
10
|
-
year: "numeric",
|
|
11
|
-
month: "2-digit",
|
|
12
|
-
day: "2-digit",
|
|
13
|
-
timeZone: n
|
|
14
|
-
}, i = m(t);
|
|
15
|
-
return new Intl.DateTimeFormat(e, o).format(i);
|
|
16
|
-
}, T = (t) => {
|
|
4
|
+
return (t == null ? void 0 : t.locale) === o ? r : (t == null ? void 0 : t.locale) || r;
|
|
5
|
+
};
|
|
6
|
+
new Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
7
|
+
const i = (t) => {
|
|
17
8
|
if (!t)
|
|
18
9
|
return "";
|
|
19
10
|
const e = new Date(t);
|
|
@@ -25,13 +16,9 @@ const m = (t) => t ? t instanceof Date ? t : typeof t == "string" ? t.length ===
|
|
|
25
16
|
second: "2-digit",
|
|
26
17
|
hour12: !1
|
|
27
18
|
}).format(e);
|
|
28
|
-
},
|
|
19
|
+
}, m = (t) => t ? Math.floor(Date.now() / 1e3) >= t : !1;
|
|
29
20
|
export {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
h as isAfterDate,
|
|
34
|
-
u as localTz,
|
|
35
|
-
s as locale,
|
|
36
|
-
f as timezone
|
|
21
|
+
i as formatPatchDate,
|
|
22
|
+
m as isAfterDate,
|
|
23
|
+
c as locale
|
|
37
24
|
};
|
|
@@ -2,15 +2,16 @@ import { useActionsApi as P } from "../composables/useActionsApi.js";
|
|
|
2
2
|
import { useHtmlCompiler as w } from "../composables/useHtmlCompiler.js";
|
|
3
3
|
import { DEFAULT_CURRENCY as l, DEFAULT_NODE_CONFIG as i } from "../extensions/Blocks/Recommendation/constants/defaultConfig.js";
|
|
4
4
|
import { useRecommendationExtensionStore as b } from "../extensions/Blocks/Recommendation/store/recommendation.js";
|
|
5
|
+
import { mapLegacyStrategy as E } from "../extensions/Blocks/Recommendation/utils/legacyStrategyMap.js";
|
|
5
6
|
import { DATA_ATTRIBUTES as h } from "../extensions/Blocks/Unsubscribe/utils/constants.js";
|
|
6
|
-
import { parsePageList as
|
|
7
|
-
import { useDynamicContentStore as
|
|
8
|
-
import { useUnsubscribeStore as
|
|
9
|
-
function
|
|
7
|
+
import { parsePageList as H } from "../extensions/Blocks/Unsubscribe/utils/utils.js";
|
|
8
|
+
import { useDynamicContentStore as U } from "../stores/dynamic-content.js";
|
|
9
|
+
import { useUnsubscribeStore as F } from "../stores/unsubscribe.js";
|
|
10
|
+
function L(s) {
|
|
10
11
|
const o = new DOMParser().parseFromString(s, "text/html").querySelectorAll(`[${h.PAGE_LIST}]`), t = [];
|
|
11
|
-
return o.forEach((
|
|
12
|
-
const
|
|
13
|
-
|
|
12
|
+
return o.forEach((a) => {
|
|
13
|
+
const n = a.getAttribute(h.PAGE_LIST);
|
|
14
|
+
n && t.push(...H(n));
|
|
14
15
|
}), [...new Set(t)];
|
|
15
16
|
}
|
|
16
17
|
async function R(s) {
|
|
@@ -20,8 +21,8 @@ async function R(s) {
|
|
|
20
21
|
const o = b();
|
|
21
22
|
m.forEach((t) => {
|
|
22
23
|
var c, p, g, f, r;
|
|
23
|
-
const
|
|
24
|
-
if (!Number.isFinite(
|
|
24
|
+
const a = t.getAttribute("recommendation-id"), n = a ? Number(a) : NaN;
|
|
25
|
+
if (!Number.isFinite(n))
|
|
25
26
|
return;
|
|
26
27
|
const d = t.getAttribute("esd-ext-config");
|
|
27
28
|
if (!d)
|
|
@@ -35,7 +36,10 @@ async function R(s) {
|
|
|
35
36
|
if (!e || typeof e != "object" || Array.isArray(e))
|
|
36
37
|
return;
|
|
37
38
|
const y = {
|
|
38
|
-
strategy
|
|
39
|
+
// Normalize legacy strategy keys (e.g. `mostViewed` → `mostPopular`) so
|
|
40
|
+
// already-saved blocks that never re-run the migrator don't emit a
|
|
41
|
+
// strategy-less campaign URL. `||` also catches '' / undefined (SD-144882).
|
|
42
|
+
strategy: E(e.strategy) || i.strategy,
|
|
39
43
|
language: e.language ?? i.language,
|
|
40
44
|
size: e.size ?? i.size,
|
|
41
45
|
// Spread the default arrays so each block gets a fresh reference
|
|
@@ -49,7 +53,7 @@ async function R(s) {
|
|
|
49
53
|
currencyDecimalSeparator: ((f = e.currency) == null ? void 0 : f.decimalSeparator) ?? l.decimalSeparator,
|
|
50
54
|
currencyThousandSeparator: ((r = e.currency) == null ? void 0 : r.thousandSeparator) ?? l.thousandSeparator
|
|
51
55
|
};
|
|
52
|
-
o.seedBlockUrlConfig(
|
|
56
|
+
o.seedBlockUrlConfig(n, y);
|
|
53
57
|
});
|
|
54
58
|
try {
|
|
55
59
|
await o.fetchRecommendationCreateData();
|
|
@@ -60,8 +64,8 @@ async function R(s) {
|
|
|
60
64
|
);
|
|
61
65
|
}
|
|
62
66
|
}
|
|
63
|
-
const
|
|
64
|
-
const s =
|
|
67
|
+
const G = () => {
|
|
68
|
+
const s = U(), u = F(), { getCompiledEmail: m, getTemplateData: o } = P(), { compileHtml: t, compileAmpHtml: a } = w();
|
|
65
69
|
return {
|
|
66
70
|
prepareTemplateDetails: async () => {
|
|
67
71
|
const { html: d, ampHtml: e = "", ampErrors: y = [] } = await m({
|
|
@@ -69,7 +73,7 @@ const v = () => {
|
|
|
69
73
|
resetDataSavedFlag: !1
|
|
70
74
|
}), { html: c, css: p, syncModulesIds: g = [] } = await o();
|
|
71
75
|
u.selectedUnsubscribePages.length && await u.fetchTemplates(), await R(c);
|
|
72
|
-
const { compiledHtml: f, stats: r, appliedRules: A } = t(d), C = e &&
|
|
76
|
+
const { compiledHtml: f, stats: r, appliedRules: A } = t(d), C = e && a(e).compiledHtml, T = s.getSelectedDynamicContentList, D = b(), S = L(c);
|
|
73
77
|
return console.debug("HTML Compilation Stats:", {
|
|
74
78
|
originalSize: r.originalSize,
|
|
75
79
|
compiledSize: r.compiledSize,
|
|
@@ -97,6 +101,6 @@ const v = () => {
|
|
|
97
101
|
};
|
|
98
102
|
};
|
|
99
103
|
export {
|
|
100
|
-
|
|
101
|
-
|
|
104
|
+
L as getHtmlReferencedUnsubscribePages,
|
|
105
|
+
G as useTemplatePreparation
|
|
102
106
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@useinsider/guido",
|
|
3
|
-
"version": "3.10.0-beta.
|
|
3
|
+
"version": "3.10.0-beta.10e6bef",
|
|
4
4
|
"description": "Guido is a Vue + TypeScript wrapper for Email Plugin. Easily embed the email editor in your Vue applications.",
|
|
5
5
|
"main": "./dist/guido.umd.cjs",
|
|
6
6
|
"module": "./dist/library.js",
|
|
@@ -104,7 +104,7 @@
|
|
|
104
104
|
},
|
|
105
105
|
"guido": {
|
|
106
106
|
"stripo": {
|
|
107
|
-
"version": "2.
|
|
107
|
+
"version": "2.68.0"
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
}
|