@useinsider/guido 3.8.1-beta.fc167ba → 3.8.2-beta.189e91c

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 (61) hide show
  1. package/dist/@types/config/schemas.js +70 -66
  2. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue.js +8 -8
  3. package/dist/components/organisms/email-preview/desktop-preview/DesktopPreview.vue2.js +15 -12
  4. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue.js +5 -5
  5. package/dist/components/organisms/email-preview/mobile-preview/ContentView.vue2.js +16 -15
  6. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.js +5 -5
  7. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue2.js +42 -37
  8. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +3 -3
  9. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +40 -37
  10. package/dist/composables/usePreviewInteractionGuard.js +17 -0
  11. package/dist/composables/usePreviewMode.js +15 -14
  12. package/dist/composables/useRecommendationPreview.js +111 -0
  13. package/dist/composables/useSave.js +14 -14
  14. package/dist/composables/validators/useUnsubscribeBlockValidator.js +26 -17
  15. package/dist/config/compiler/recommendationCompilerRules.js +1 -1
  16. package/dist/config/compiler/utils/recommendationCompilerUtils.js +88 -80
  17. package/dist/config/migrator/recommendation/htmlBuilder.js +53 -52
  18. package/dist/config/migrator/recommendation/settingsMapper.js +38 -33
  19. package/dist/extensions/Blocks/Recommendation/block.js +60 -41
  20. package/dist/extensions/Blocks/Recommendation/canvasPreview.css.js +16 -0
  21. package/dist/extensions/Blocks/Recommendation/constants/defaultConfig.js +41 -32
  22. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +345 -264
  23. package/dist/extensions/Blocks/Recommendation/controls/main/index.js +99 -87
  24. package/dist/extensions/Blocks/Recommendation/controls/main/pricePlacement.js +133 -0
  25. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +162 -160
  26. package/dist/extensions/Blocks/Recommendation/extension.js +30 -29
  27. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +21 -7
  28. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +64 -4
  29. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +3 -1
  30. package/dist/extensions/Blocks/Recommendation/templates/grid/elementRenderer.js +130 -96
  31. package/dist/extensions/Blocks/Recommendation/templates/grid/template.js +43 -54
  32. package/dist/extensions/Blocks/Recommendation/templates/index.js +17 -14
  33. package/dist/extensions/Blocks/Recommendation/templates/list/elementRenderer.js +86 -80
  34. package/dist/extensions/Blocks/Recommendation/templates/list/template.js +31 -40
  35. package/dist/extensions/Blocks/Recommendation/templates/utils.js +155 -102
  36. package/dist/extensions/Blocks/Unsubscribe/block.js +40 -37
  37. package/dist/extensions/Blocks/Unsubscribe/control.js +19 -16
  38. package/dist/guido.css +1 -1
  39. package/dist/src/@types/config/schemas.d.ts +16 -0
  40. package/dist/src/composables/useConfig.d.ts +4 -0
  41. package/dist/src/composables/usePreviewInteractionGuard.d.ts +3 -0
  42. package/dist/src/composables/useRecommendationPreview.d.ts +10 -0
  43. package/dist/src/composables/validators/useUnsubscribeBlockValidator.d.ts +1 -0
  44. package/dist/src/config/migrator/recommendation/settingsMapper.d.ts +1 -1
  45. package/dist/src/extensions/Blocks/Recommendation/block.d.ts +10 -0
  46. package/dist/src/extensions/Blocks/Recommendation/controls/cardComposition/index.d.ts +29 -3
  47. package/dist/src/extensions/Blocks/Recommendation/controls/index.d.ts +1 -1
  48. package/dist/src/extensions/Blocks/Recommendation/controls/main/index.d.ts +3 -1
  49. package/dist/src/extensions/Blocks/Recommendation/controls/main/pricePlacement.d.ts +59 -0
  50. package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +2 -0
  51. package/dist/src/extensions/Blocks/Recommendation/templates/grid/elementRenderer.d.ts +13 -1
  52. package/dist/src/extensions/Blocks/Recommendation/templates/grid/template.d.ts +4 -4
  53. package/dist/src/extensions/Blocks/Recommendation/templates/index.d.ts +1 -1
  54. package/dist/src/extensions/Blocks/Recommendation/templates/list/elementRenderer.d.ts +10 -1
  55. package/dist/src/extensions/Blocks/Recommendation/templates/list/template.d.ts +3 -3
  56. package/dist/src/extensions/Blocks/Recommendation/templates/utils.d.ts +51 -1
  57. package/dist/src/extensions/Blocks/Recommendation/types/nodeConfig.d.ts +15 -0
  58. package/dist/src/stores/config.d.ts +36 -0
  59. package/dist/src/stores/unsubscribe.d.ts +11 -1
  60. package/dist/stores/unsubscribe.js +8 -7
  61. package/package.json +1 -1
@@ -65,6 +65,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
65
65
  blockType?: string | undefined;
66
66
  size?: string | number | undefined;
67
67
  verticalResponsiveness?: boolean | undefined;
68
+ isPriceMovedToNextLine?: boolean | undefined;
69
+ isPriceDeletedForZeroSale?: boolean | undefined;
68
70
  } & {
69
71
  [key: string]: unknown;
70
72
  };
@@ -197,6 +199,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
197
199
  blockType?: string | undefined;
198
200
  size?: string | number | undefined;
199
201
  verticalResponsiveness?: boolean | undefined;
202
+ isPriceMovedToNextLine?: boolean | undefined;
203
+ isPriceDeletedForZeroSale?: boolean | undefined;
200
204
  } & {
201
205
  [key: string]: unknown;
202
206
  };
@@ -329,6 +333,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
329
333
  blockType?: string | undefined;
330
334
  size?: string | number | undefined;
331
335
  verticalResponsiveness?: boolean | undefined;
336
+ isPriceMovedToNextLine?: boolean | undefined;
337
+ isPriceDeletedForZeroSale?: boolean | undefined;
332
338
  } & {
333
339
  [key: string]: unknown;
334
340
  };
@@ -461,6 +467,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
461
467
  blockType?: string | undefined;
462
468
  size?: string | number | undefined;
463
469
  verticalResponsiveness?: boolean | undefined;
470
+ isPriceMovedToNextLine?: boolean | undefined;
471
+ isPriceDeletedForZeroSale?: boolean | undefined;
464
472
  } & {
465
473
  [key: string]: unknown;
466
474
  };
@@ -593,6 +601,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
593
601
  blockType?: string | undefined;
594
602
  size?: string | number | undefined;
595
603
  verticalResponsiveness?: boolean | undefined;
604
+ isPriceMovedToNextLine?: boolean | undefined;
605
+ isPriceDeletedForZeroSale?: boolean | undefined;
596
606
  } & {
597
607
  [key: string]: unknown;
598
608
  };
@@ -725,6 +735,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
725
735
  blockType?: string | undefined;
726
736
  size?: string | number | undefined;
727
737
  verticalResponsiveness?: boolean | undefined;
738
+ isPriceMovedToNextLine?: boolean | undefined;
739
+ isPriceDeletedForZeroSale?: boolean | undefined;
728
740
  } & {
729
741
  [key: string]: unknown;
730
742
  };
@@ -857,6 +869,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
857
869
  blockType?: string | undefined;
858
870
  size?: string | number | undefined;
859
871
  verticalResponsiveness?: boolean | undefined;
872
+ isPriceMovedToNextLine?: boolean | undefined;
873
+ isPriceDeletedForZeroSale?: boolean | undefined;
860
874
  } & {
861
875
  [key: string]: unknown;
862
876
  };
@@ -989,6 +1003,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
989
1003
  blockType?: string | undefined;
990
1004
  size?: string | number | undefined;
991
1005
  verticalResponsiveness?: boolean | undefined;
1006
+ isPriceMovedToNextLine?: boolean | undefined;
1007
+ isPriceDeletedForZeroSale?: boolean | undefined;
992
1008
  } & {
993
1009
  [key: string]: unknown;
994
1010
  };
@@ -1121,6 +1137,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1121
1137
  blockType?: string | undefined;
1122
1138
  size?: string | number | undefined;
1123
1139
  verticalResponsiveness?: boolean | undefined;
1140
+ isPriceMovedToNextLine?: boolean | undefined;
1141
+ isPriceDeletedForZeroSale?: boolean | undefined;
1124
1142
  } & {
1125
1143
  [key: string]: unknown;
1126
1144
  };
@@ -1253,6 +1271,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1253
1271
  blockType?: string | undefined;
1254
1272
  size?: string | number | undefined;
1255
1273
  verticalResponsiveness?: boolean | undefined;
1274
+ isPriceMovedToNextLine?: boolean | undefined;
1275
+ isPriceDeletedForZeroSale?: boolean | undefined;
1256
1276
  } & {
1257
1277
  [key: string]: unknown;
1258
1278
  };
@@ -1385,6 +1405,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1385
1405
  blockType?: string | undefined;
1386
1406
  size?: string | number | undefined;
1387
1407
  verticalResponsiveness?: boolean | undefined;
1408
+ isPriceMovedToNextLine?: boolean | undefined;
1409
+ isPriceDeletedForZeroSale?: boolean | undefined;
1388
1410
  } & {
1389
1411
  [key: string]: unknown;
1390
1412
  };
@@ -1517,6 +1539,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1517
1539
  blockType?: string | undefined;
1518
1540
  size?: string | number | undefined;
1519
1541
  verticalResponsiveness?: boolean | undefined;
1542
+ isPriceMovedToNextLine?: boolean | undefined;
1543
+ isPriceDeletedForZeroSale?: boolean | undefined;
1520
1544
  } & {
1521
1545
  [key: string]: unknown;
1522
1546
  };
@@ -1649,6 +1673,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1649
1673
  blockType?: string | undefined;
1650
1674
  size?: string | number | undefined;
1651
1675
  verticalResponsiveness?: boolean | undefined;
1676
+ isPriceMovedToNextLine?: boolean | undefined;
1677
+ isPriceDeletedForZeroSale?: boolean | undefined;
1652
1678
  } & {
1653
1679
  [key: string]: unknown;
1654
1680
  };
@@ -1781,6 +1807,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1781
1807
  blockType?: string | undefined;
1782
1808
  size?: string | number | undefined;
1783
1809
  verticalResponsiveness?: boolean | undefined;
1810
+ isPriceMovedToNextLine?: boolean | undefined;
1811
+ isPriceDeletedForZeroSale?: boolean | undefined;
1784
1812
  } & {
1785
1813
  [key: string]: unknown;
1786
1814
  };
@@ -1913,6 +1941,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1913
1941
  blockType?: string | undefined;
1914
1942
  size?: string | number | undefined;
1915
1943
  verticalResponsiveness?: boolean | undefined;
1944
+ isPriceMovedToNextLine?: boolean | undefined;
1945
+ isPriceDeletedForZeroSale?: boolean | undefined;
1916
1946
  } & {
1917
1947
  [key: string]: unknown;
1918
1948
  };
@@ -2045,6 +2075,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
2045
2075
  blockType?: string | undefined;
2046
2076
  size?: string | number | undefined;
2047
2077
  verticalResponsiveness?: boolean | undefined;
2078
+ isPriceMovedToNextLine?: boolean | undefined;
2079
+ isPriceDeletedForZeroSale?: boolean | undefined;
2048
2080
  } & {
2049
2081
  [key: string]: unknown;
2050
2082
  };
@@ -2177,6 +2209,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
2177
2209
  blockType?: string | undefined;
2178
2210
  size?: string | number | undefined;
2179
2211
  verticalResponsiveness?: boolean | undefined;
2212
+ isPriceMovedToNextLine?: boolean | undefined;
2213
+ isPriceDeletedForZeroSale?: boolean | undefined;
2180
2214
  } & {
2181
2215
  [key: string]: unknown;
2182
2216
  };
@@ -2309,6 +2343,8 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
2309
2343
  blockType?: string | undefined;
2310
2344
  size?: string | number | undefined;
2311
2345
  verticalResponsiveness?: boolean | undefined;
2346
+ isPriceMovedToNextLine?: boolean | undefined;
2347
+ isPriceDeletedForZeroSale?: boolean | undefined;
2312
2348
  } & {
2313
2349
  [key: string]: unknown;
2314
2350
  };
@@ -10,6 +10,7 @@ interface StoreState {
10
10
  typeSelectionDrawerStatus: boolean;
11
11
  isGlobalUnsubscribeDisabled: boolean;
12
12
  isSubscriptionPreferencesCenterDisabled: boolean;
13
+ pendingBlockId: string | null;
13
14
  }
14
15
  export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guidoUnsubscribe", StoreState, {
15
16
  getSelectedCollection: (state: {
@@ -35,6 +36,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
35
36
  typeSelectionDrawerStatus: boolean;
36
37
  isGlobalUnsubscribeDisabled: boolean;
37
38
  isSubscriptionPreferencesCenterDisabled: boolean;
39
+ pendingBlockId: string | null;
38
40
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => number[];
39
41
  getSelectedTemplateByActiveType: (state: {
40
42
  templates: {
@@ -59,6 +61,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
59
61
  typeSelectionDrawerStatus: boolean;
60
62
  isGlobalUnsubscribeDisabled: boolean;
61
63
  isSubscriptionPreferencesCenterDisabled: boolean;
64
+ pendingBlockId: string | null;
62
65
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => number;
63
66
  getTemplatesByActiveType: (state: {
64
67
  templates: {
@@ -83,6 +86,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
83
86
  typeSelectionDrawerStatus: boolean;
84
87
  isGlobalUnsubscribeDisabled: boolean;
85
88
  isSubscriptionPreferencesCenterDisabled: boolean;
89
+ pendingBlockId: string | null;
86
90
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => {
87
91
  id: number;
88
92
  name: string;
@@ -119,6 +123,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
119
123
  typeSelectionDrawerStatus: boolean;
120
124
  isGlobalUnsubscribeDisabled: boolean;
121
125
  isSubscriptionPreferencesCenterDisabled: boolean;
126
+ pendingBlockId: string | null;
122
127
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => (id: number) => string;
123
128
  getSelectedUnsubscribePagesByCollection: (state: {
124
129
  templates: {
@@ -143,6 +148,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
143
148
  typeSelectionDrawerStatus: boolean;
144
149
  isGlobalUnsubscribeDisabled: boolean;
145
150
  isSubscriptionPreferencesCenterDisabled: boolean;
151
+ pendingBlockId: string | null;
146
152
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => (collectionType: number) => number[];
147
153
  isActiveTypeFirstInCollection: (state: {
148
154
  templates: {
@@ -167,6 +173,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
167
173
  typeSelectionDrawerStatus: boolean;
168
174
  isGlobalUnsubscribeDisabled: boolean;
169
175
  isSubscriptionPreferencesCenterDisabled: boolean;
176
+ pendingBlockId: string | null;
170
177
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => boolean;
171
178
  isActiveTypeLastInCollection: (state: {
172
179
  templates: {
@@ -191,6 +198,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
191
198
  typeSelectionDrawerStatus: boolean;
192
199
  isGlobalUnsubscribeDisabled: boolean;
193
200
  isSubscriptionPreferencesCenterDisabled: boolean;
201
+ pendingBlockId: string | null;
194
202
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => boolean;
195
203
  hasTemplatesByCollectionType: (state: {
196
204
  templates: {
@@ -215,6 +223,7 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
215
223
  typeSelectionDrawerStatus: boolean;
216
224
  isGlobalUnsubscribeDisabled: boolean;
217
225
  isSubscriptionPreferencesCenterDisabled: boolean;
226
+ pendingBlockId: string | null;
218
227
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => Record<number, boolean>;
219
228
  unsubscribePagesStatus: (state: {
220
229
  templates: {
@@ -239,10 +248,11 @@ export declare const useUnsubscribeStore: import("pinia").StoreDefinition<"guido
239
248
  typeSelectionDrawerStatus: boolean;
240
249
  isGlobalUnsubscribeDisabled: boolean;
241
250
  isSubscriptionPreferencesCenterDisabled: boolean;
251
+ pendingBlockId: string | null;
242
252
  } & import("pinia").PiniaCustomStateProperties<StoreState>) => boolean;
243
253
  }, {
244
254
  $reset(): void;
245
- fetchTemplates(): Promise<void>;
255
+ fetchTemplates(force?: boolean): Promise<void>;
246
256
  setCollection(collectionType: number): void;
247
257
  setCollectionWithoutAutoSelection(collectionType: number): void;
248
258
  setSelectedTemplate(template: number): void;
@@ -1,6 +1,6 @@
1
1
  import { TYPE_COLLECTIONS as i, PAGE_TYPES as p } from "../enums/unsubscribe.js";
2
2
  import { useUnsubscribeApi as d } from "../services/unsubscribeApi.js";
3
- import { defineStore as h } from "pinia";
3
+ import { defineStore as u } from "pinia";
4
4
  let o = null;
5
5
  const r = () => ({
6
6
  templates: [],
@@ -12,8 +12,9 @@ const r = () => ({
12
12
  pageSelectionDrawerStatus: !1,
13
13
  typeSelectionDrawerStatus: !1,
14
14
  isGlobalUnsubscribeDisabled: !1,
15
- isSubscriptionPreferencesCenterDisabled: !1
16
- }), b = h("guidoUnsubscribe", {
15
+ isSubscriptionPreferencesCenterDisabled: !1,
16
+ pendingBlockId: null
17
+ }), b = u("guidoUnsubscribe", {
17
18
  state: () => r(),
18
19
  getters: {
19
20
  getSelectedCollection: (e) => i[e.selectedCollectionType],
@@ -62,10 +63,10 @@ const r = () => ({
62
63
  selectedUnsubscribePages: t
63
64
  });
64
65
  },
65
- async fetchTemplates() {
66
- this.templates.length || (o || (o = (async () => {
67
- const { getUnsubscribePages: e } = d();
68
- this.templates = await e();
66
+ async fetchTemplates(e = !1) {
67
+ !e && this.templates.length || ((e || !o) && (o = (async () => {
68
+ const { getUnsubscribePages: t } = d();
69
+ this.templates = await t();
69
70
  })().finally(() => {
70
71
  o = null;
71
72
  })), await o);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@useinsider/guido",
3
- "version": "3.8.1-beta.fc167ba",
3
+ "version": "3.8.2-beta.189e91c",
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",