@useinsider/guido 3.19.0-beta.3abc7c5 → 3.19.0-beta.3daecd0

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 (102) hide show
  1. package/README.md +0 -1
  2. package/dist/@types/config/schemas.js +118 -107
  3. package/dist/components/Guido.vue.js +9 -9
  4. package/dist/components/Guido.vue2.js +84 -75
  5. package/dist/components/organisms/AutoSaveController.vue2.js +8 -9
  6. package/dist/components/organisms/base/AuthErrorModal.vue.js +18 -0
  7. package/dist/components/organisms/base/AuthErrorModal.vue2.js +42 -0
  8. package/dist/components/organisms/header/EditorActions.vue.js +5 -5
  9. package/dist/components/organisms/header/EditorActions.vue2.js +55 -85
  10. package/dist/components/organisms/header/LeftSlot.vue.js +5 -5
  11. package/dist/components/organisms/header/LeftSlot.vue2.js +12 -16
  12. package/dist/components/wrappers/WpDrawer.vue.js +7 -9
  13. package/dist/components/wrappers/WpDrawer.vue2.js +1 -1
  14. package/dist/components/wrappers/WpModal.vue.js +1 -1
  15. package/dist/components/wrappers/WpModal.vue2.js +4 -3
  16. package/dist/composables/useAuthError.js +52 -0
  17. package/dist/composables/useAutoSave.js +11 -11
  18. package/dist/composables/useCortexBlueprintBridge.js +122 -54
  19. package/dist/composables/useEmailTemplateApplier.js +111 -50
  20. package/dist/composables/useHtmlCompiler.js +26 -37
  21. package/dist/composables/useHtmlValidator.js +0 -2
  22. package/dist/composables/useHttp.js +64 -54
  23. package/dist/composables/useLegacyStrategyConversion.js +23 -19
  24. package/dist/composables/useSave.js +45 -90
  25. package/dist/composables/useStripo.js +24 -20
  26. package/dist/composables/useToaster.js +17 -15
  27. package/dist/composables/validators/useCouponBlockValidator.js +21 -24
  28. package/dist/composables/validators/useLiquidValidator.js +15 -15
  29. package/dist/composables/validators/useUnsubscribeBlockValidator.js +27 -34
  30. package/dist/config/migrator/index.js +14 -13
  31. package/dist/config/migrator/itemsBlockMigrator.js +236 -248
  32. package/dist/config/migrator/recommendationMigrator.js +28 -21
  33. package/dist/config/migrator/recommendationPartnerMigrator.js +56 -0
  34. package/dist/enums/extensions/recommendationBlock.js +30 -29
  35. package/dist/extensions/Blocks/Items/block.js +48 -45
  36. package/dist/extensions/Blocks/Items/constants/cardLayout.js +20 -0
  37. package/dist/extensions/Blocks/Items/controls/name/trimming.js +18 -17
  38. package/dist/extensions/Blocks/Items/controls/settingsControl.js +114 -105
  39. package/dist/extensions/Blocks/Items/enums/productEnums.js +14 -9
  40. package/dist/extensions/Blocks/Items/layouts/horizontal.html.js +11 -9
  41. package/dist/extensions/Blocks/Items/template.js +219 -204
  42. package/dist/extensions/Blocks/Recommendation/block.js +15 -14
  43. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +45 -38
  44. package/dist/extensions/Blocks/Recommendation/controls/main/strategy.js +72 -49
  45. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +32 -38
  46. package/dist/extensions/Blocks/Recommendation/utils/partnerCustomizations.js +3 -1
  47. package/dist/extensions/Blocks/Recommendation/utils/partnerScope.js +25 -0
  48. package/dist/guido.css +1 -1
  49. package/dist/src/@types/config/schemas.d.ts +16 -4
  50. package/dist/src/components/Guido.vue.d.ts +1 -17
  51. package/dist/src/components/organisms/header/EditorActions.vue.d.ts +1 -17
  52. package/dist/src/components/organisms/header/HeaderWrapper.vue.d.ts +1 -17
  53. package/dist/src/components/organisms/header/RightSlot.vue.d.ts +1 -17
  54. package/dist/src/components/wrappers/WpDrawer.vue.d.ts +3 -4
  55. package/dist/src/components/wrappers/WpModal.vue.d.ts +5 -1
  56. package/dist/src/composables/useAuthError.d.ts +12 -0
  57. package/dist/src/composables/useConfig.d.ts +2 -2
  58. package/dist/src/composables/useCortexBlueprintBridge.d.ts +2 -3
  59. package/dist/src/composables/useEmailTemplateApplier.d.ts +18 -5
  60. package/dist/src/composables/useGuidoActions.d.ts +2 -0
  61. package/dist/src/composables/useHtmlValidator.d.ts +0 -21
  62. package/dist/src/composables/useHttp.d.ts +2 -0
  63. package/dist/src/composables/useSave.d.ts +1 -6
  64. package/dist/src/composables/validators/useCouponBlockValidator.d.ts +0 -3
  65. package/dist/src/composables/validators/useUnsubscribeBlockValidator.d.ts +0 -10
  66. package/dist/src/config/migrator/index.d.ts +2 -1
  67. package/dist/src/config/migrator/recommendationPartnerMigrator.d.ts +19 -0
  68. package/dist/src/enums/extensions/recommendationBlock.d.ts +1 -1
  69. package/dist/src/extensions/Blocks/Items/constants/cardLayout.d.ts +44 -0
  70. package/dist/src/extensions/Blocks/Items/enums/productEnums.d.ts +3 -0
  71. package/dist/src/extensions/Blocks/Items/template.d.ts +19 -0
  72. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +0 -5
  73. package/dist/src/extensions/Blocks/Recommendation/types/nodeConfig.d.ts +6 -0
  74. package/dist/src/extensions/Blocks/Recommendation/utils/partnerScope.d.ts +33 -0
  75. package/dist/src/mock/cortexChatStore.d.ts +12 -0
  76. package/dist/src/stores/config.d.ts +20 -32
  77. package/dist/src/stores/guido-email-editor.d.ts +20 -10
  78. package/dist/src/stores/onboarding.d.ts +4 -0
  79. package/dist/src/stores/recommendation.d.ts +5 -0
  80. package/dist/src/utils/dateUtil.d.ts +10 -0
  81. package/dist/src/utils/genericUtil.d.ts +3 -0
  82. package/dist/src/utils/templatePreparation.d.ts +0 -30
  83. package/dist/static/styles/components/recommendation-strategy.css.js +9 -0
  84. package/dist/static/styles/components/version-history.css.js +2 -6
  85. package/dist/stores/config.js +67 -84
  86. package/dist/stores/guido-email-editor.js +3 -1
  87. package/dist/stores/onboarding.js +4 -0
  88. package/dist/utils/pairProductVariables.js +71 -71
  89. package/dist/utils/templatePreparation.js +36 -39
  90. package/package.json +1 -1
  91. package/dist/components/organisms/validation/ValidationErrorDrawer.vue.js +0 -20
  92. package/dist/components/organisms/validation/ValidationErrorDrawer.vue2.js +0 -48
  93. package/dist/composables/useSaveValidation.js +0 -279
  94. package/dist/composables/useSaveValidationRollout.js +0 -9
  95. package/dist/enums/save-validation.js +0 -4
  96. package/dist/src/@types/save-validation.d.ts +0 -19
  97. package/dist/src/composables/useSaveValidation.d.ts +0 -6
  98. package/dist/src/composables/useSaveValidationRollout.d.ts +0 -3
  99. package/dist/src/enums/save-validation.d.ts +0 -27
  100. package/dist/src/stores/save-validation.d.ts +0 -22
  101. package/dist/stores/save-validation.js +0 -30
  102. /package/dist/src/components/organisms/{validation/ValidationErrorDrawer.vue.d.ts → base/AuthErrorModal.vue.d.ts} +0 -0
@@ -1,13 +1,13 @@
1
- import { ToasterTypeOptions as a } from "../../enums/toaster.js";
1
+ import { ToasterTypeOptions as r } from "../../enums/toaster.js";
2
2
  import { base64EncodeWithSpecialChars as u } from "../../utils/base64.js";
3
3
  import { useHttp as d } from "../useHttp.js";
4
- import { useToaster as c } from "../useToaster.js";
5
- import { useTranslations as p } from "../useTranslations.js";
4
+ import { useToaster as p } from "../useToaster.js";
5
+ import { useTranslations as c } from "../useTranslations.js";
6
6
  const v = () => {
7
- const { post: i } = d(), { showToaster: e } = c(), s = p();
7
+ const { post: i } = d(), { showToaster: t } = p(), s = c();
8
8
  return { validateLiquidSyntax: async (o) => {
9
9
  try {
10
- const t = await i("/newsletter/contents/validate-syntax", [{
10
+ const e = await i("/newsletter/contents/validate-syntax", [{
11
11
  identifier: "default",
12
12
  syntax: "liquid",
13
13
  contents: {
@@ -17,21 +17,21 @@ const v = () => {
17
17
  ampHtml: null
18
18
  }
19
19
  }]);
20
- if (!Array.isArray(t.data)) {
21
- const l = t.data;
22
- return e({
23
- type: a.Warning,
20
+ if (!Array.isArray(e.data)) {
21
+ const l = e.data;
22
+ return t({
23
+ type: r.Warning,
24
24
  message: l.message ?? s("journey-builder.liquid-validation-failed")
25
25
  }), !1;
26
26
  }
27
- const [r] = t.data, n = Object.values((r == null ? void 0 : r.errors) ?? {});
28
- return n.length ? (e({
29
- type: a.Warning,
27
+ const [a] = e.data, n = Object.values((a == null ? void 0 : a.errors) ?? {});
28
+ return n.length ? (t({
29
+ type: r.Warning,
30
30
  message: n[0].replace(/^line \d+:\s*/, "")
31
31
  }), !1) : !0;
32
- } catch {
33
- return e({
34
- type: a.Error,
32
+ } catch (e) {
33
+ return e != null && e.authReported || t({
34
+ type: r.Error,
35
35
  message: s("journey-builder.liquid-validation-failed")
36
36
  }), !1;
37
37
  }
@@ -1,8 +1,8 @@
1
- import { ToasterTypeOptions as c } from "../../enums/toaster.js";
1
+ import { ToasterTypeOptions as i } from "../../enums/toaster.js";
2
2
  import { PAGE_TYPES as u } from "../../enums/unsubscribe.js";
3
- import { UNSUBSCRIBE_BLOCK_SELECTOR as i, DATA_ATTRIBUTES as a } from "../../extensions/Blocks/Unsubscribe/utils/constants.js";
4
- import { useToaster as p } from "../useToaster.js";
5
- import { useTranslations as l } from "../useTranslations.js";
3
+ import { UNSUBSCRIBE_BLOCK_SELECTOR as l, DATA_ATTRIBUTES as a } from "../../extensions/Blocks/Unsubscribe/utils/constants.js";
4
+ import { useToaster as E } from "../useToaster.js";
5
+ import { useTranslations as m } from "../useTranslations.js";
6
6
  const T = [
7
7
  {
8
8
  pageType: u.GLOBAL_UNSUBSCRIBE,
@@ -12,37 +12,30 @@ const T = [
12
12
  pageType: u.SUBSCRIPTION_PREFERENCE_CENTER,
13
13
  messageKey: "unsubscription-preference.duplicate-pref-center"
14
14
  }
15
- ], g = "unsubscription-preference.duplicate-both", E = "unsubscription-preference.select-page-to-continue";
16
- function m(r) {
17
- const s = new DOMParser().parseFromString(r, "text/html"), t = /* @__PURE__ */ new Map();
18
- return s.querySelectorAll(i).forEach((n) => {
19
- const e = Number(n.getAttribute(a.PAGE_TYPE));
20
- t.set(e, (t.get(e) ?? 0) + 1);
21
- }), T.filter((n) => (t.get(n.pageType) ?? 0) > 1);
22
- }
23
- function b(r) {
24
- const s = new DOMParser().parseFromString(r, "text/html");
25
- return Array.from(s.querySelectorAll(i)).filter((t) => {
26
- const n = t.getAttribute(a.PAGE_TYPE), e = t.getAttribute(a.PAGE_LIST);
27
- return !n || !e;
28
- }).length;
29
- }
30
- const y = () => {
31
- const { showToaster: r } = p(), s = l();
32
- return { validateUnsubscribeBlockUniqueness: (e) => {
33
- const o = m(e);
34
- return o.length ? (r({
35
- type: c.Error,
36
- message: s(o.length > 1 ? g : o[0].messageKey)
15
+ ], g = "unsubscription-preference.duplicate-both", b = "unsubscription-preference.select-page-to-continue", P = () => {
16
+ const { showToaster: c } = E(), p = m();
17
+ return { validateUnsubscribeBlockUniqueness: (n) => {
18
+ const o = new DOMParser().parseFromString(n, "text/html"), r = /* @__PURE__ */ new Map();
19
+ o.querySelectorAll(l).forEach((e) => {
20
+ const s = Number(e.getAttribute(a.PAGE_TYPE));
21
+ r.set(s, (r.get(s) ?? 0) + 1);
22
+ });
23
+ const t = T.filter((e) => (r.get(e.pageType) ?? 0) > 1).map((e) => e.messageKey);
24
+ return t.length ? (c({
25
+ type: i.Error,
26
+ message: p(t.length > 1 ? g : t[0])
37
27
  }), !1) : !0;
38
- }, validateUnsubscribeBlockHasTemplate: (e) => b(e) === 0 ? !0 : (r({
39
- type: c.Warning,
40
- message: s(E)
41
- }), !1) };
28
+ }, validateUnsubscribeBlockHasTemplate: (n) => {
29
+ const o = new DOMParser().parseFromString(n, "text/html");
30
+ return Array.from(o.querySelectorAll(l)).some((t) => {
31
+ const e = t.getAttribute(a.PAGE_TYPE), s = t.getAttribute(a.PAGE_LIST);
32
+ return !e || !s;
33
+ }) ? (c({
34
+ type: i.Warning,
35
+ message: p(b)
36
+ }), !1) : !0;
37
+ } };
42
38
  };
43
39
  export {
44
- E as EMPTY_BLOCK_KEY,
45
- b as countUnsubBlocksWithoutPage,
46
- m as findDuplicateUnsubPageTypes,
47
- y as useUnsubscribeBlockValidator
40
+ P as useUnsubscribeBlockValidator
48
41
  };
@@ -1,16 +1,17 @@
1
- import { migrateCheckbox as t } from "./checkboxMigrator.js";
2
- import { migrateCouponBlock as i } from "./couponBlockMigrator.js";
3
- import { migrateItemsBlock as e } from "./itemsBlockMigrator.js";
4
- import { migrateProductNameLink as a } from "./productNameLinkMigrator.js";
5
- import { migrateRadioButton as n } from "./radioButtonMigrator.js";
6
- import { migrateRecommendation as c } from "./recommendationMigrator.js";
7
- import { migrateRecommendationTitle as g } from "./recommendationTitleMigrator.js";
8
- import { migrateSocialIcons as p } from "./socialIconMigrator.js";
9
- import { migrateUnsubscribe as f } from "./unsubscribeMigrator.js";
10
- const C = async (o, r = {}) => {
11
- let m = o;
12
- return m = t(m), m = n(m), m = await f(m), m = i(m), m = c(m, r), m = g(m), m = e(m), m = a(m), m = p(m), m;
1
+ import { migrateCheckbox as i } from "./checkboxMigrator.js";
2
+ import { migrateCouponBlock as e } from "./couponBlockMigrator.js";
3
+ import { migrateItemsBlock as a } from "./itemsBlockMigrator.js";
4
+ import { migrateProductNameLink as n } from "./productNameLinkMigrator.js";
5
+ import { migrateRadioButton as c } from "./radioButtonMigrator.js";
6
+ import { migrateRecommendation as g } from "./recommendationMigrator.js";
7
+ import { migrateRecommendationPartnerScope as f } from "./recommendationPartnerMigrator.js";
8
+ import { migrateRecommendationTitle as p } from "./recommendationTitleMigrator.js";
9
+ import { migrateSocialIcons as d } from "./socialIconMigrator.js";
10
+ import { migrateUnsubscribe as l } from "./unsubscribeMigrator.js";
11
+ const h = async (r, t = {}, o) => {
12
+ let m = r;
13
+ return m = i(m), m = c(m), m = await l(m), m = e(m), m = g(m, t), o && (m = f(m, o)), m = p(m), m = a(m), m = n(m), m = d(m), m;
13
14
  };
14
15
  export {
15
- C as migrate
16
+ h as migrate
16
17
  };