@useinsider/guido 3.1.1-beta.a7d73f2 → 3.1.1-beta.a80cc5e

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 (42) hide show
  1. package/dist/@types/config/schemas.js +66 -56
  2. package/dist/components/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue.js +7 -7
  3. package/dist/components/organisms/email-preview/desktop-preview/EmailSizeIndicator.vue2.js +12 -20
  4. package/dist/composables/useHtmlCompiler.js +20 -20
  5. package/dist/composables/useHtmlValidator.js +40 -38
  6. package/dist/composables/usePreviewMode.js +20 -16
  7. package/dist/composables/useSave.js +15 -13
  8. package/dist/config/compiler/unsubscribeCompilerRules.js +37 -37
  9. package/dist/config/i18n/en/tooltips.json.js +2 -1
  10. package/dist/config/migrator/checkboxMigrator.js +5 -3
  11. package/dist/config/migrator/radioButtonMigrator.js +14 -12
  12. package/dist/extensions/Blocks/Recommendation/block.js +1 -1
  13. package/dist/extensions/Blocks/Recommendation/constants/selectors.js +27 -11
  14. package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +185 -172
  15. package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +95 -93
  16. package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +75 -73
  17. package/dist/extensions/Blocks/Recommendation/templates/grid/elementRenderer.js +7 -5
  18. package/dist/extensions/Blocks/Recommendation/templates/grid/template.js +30 -29
  19. package/dist/extensions/Blocks/Recommendation/templates/index.js +7 -7
  20. package/dist/extensions/Blocks/Recommendation/templates/list/elementRenderer.js +3 -1
  21. package/dist/extensions/Blocks/Recommendation/templates/list/template.js +20 -20
  22. package/dist/extensions/Blocks/Recommendation/templates/utils.js +57 -50
  23. package/dist/extensions/Blocks/Recommendation/utils/tagName.js +6 -6
  24. package/dist/extensions/Blocks/Unsubscribe/settingsPanel.js +16 -17
  25. package/dist/guido.css +1 -1
  26. package/dist/src/@types/config/index.d.ts +1 -1
  27. package/dist/src/@types/config/schemas.d.ts +24 -0
  28. package/dist/src/@types/config/types.d.ts +3 -1
  29. package/dist/src/composables/useConfig.d.ts +10 -0
  30. package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +1 -1
  31. package/dist/src/extensions/Blocks/Recommendation/constants/selectors.d.ts +5 -0
  32. package/dist/src/extensions/Blocks/Recommendation/controls/cardComposition/index.d.ts +5 -0
  33. package/dist/src/extensions/Blocks/Recommendation/templates/grid/template.d.ts +4 -4
  34. package/dist/src/extensions/Blocks/Recommendation/templates/list/template.d.ts +3 -3
  35. package/dist/src/extensions/Blocks/Recommendation/templates/utils.d.ts +20 -3
  36. package/dist/src/stores/config.d.ts +90 -0
  37. package/dist/src/stores/preview.d.ts +3 -0
  38. package/dist/src/utils/htmlCompiler.d.ts +2 -1
  39. package/dist/stores/preview.js +4 -3
  40. package/dist/utils/htmlCompiler.js +48 -41
  41. package/dist/utils/templatePreparation.js +20 -20
  42. package/package.json +1 -1
@@ -22,6 +22,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
22
22
  productType: 60 | 49 | 97;
23
23
  messageType: 1 | 2;
24
24
  username: string;
25
+ fallbackFont?: {
26
+ name: string;
27
+ family: string;
28
+ } | undefined;
25
29
  };
26
30
  template: {
27
31
  html: string;
@@ -35,6 +39,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
35
39
  value: string;
36
40
  } | undefined;
37
41
  }[];
42
+ customFieldAttributes: string[];
38
43
  selectedUnsubscribePages: number[];
39
44
  forceRecreate: boolean;
40
45
  };
@@ -119,6 +124,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
119
124
  productType: 60 | 49 | 97;
120
125
  messageType: 1 | 2;
121
126
  username: string;
127
+ fallbackFont?: {
128
+ name: string;
129
+ family: string;
130
+ } | undefined;
122
131
  };
123
132
  template: {
124
133
  html: string;
@@ -132,6 +141,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
132
141
  value: string;
133
142
  } | undefined;
134
143
  }[];
144
+ customFieldAttributes: string[];
135
145
  selectedUnsubscribePages: number[];
136
146
  forceRecreate: boolean;
137
147
  };
@@ -216,6 +226,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
216
226
  productType: 60 | 49 | 97;
217
227
  messageType: 1 | 2;
218
228
  username: string;
229
+ fallbackFont?: {
230
+ name: string;
231
+ family: string;
232
+ } | undefined;
219
233
  };
220
234
  template: {
221
235
  html: string;
@@ -229,6 +243,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
229
243
  value: string;
230
244
  } | undefined;
231
245
  }[];
246
+ customFieldAttributes: string[];
232
247
  selectedUnsubscribePages: number[];
233
248
  forceRecreate: boolean;
234
249
  };
@@ -313,6 +328,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
313
328
  productType: 60 | 49 | 97;
314
329
  messageType: 1 | 2;
315
330
  username: string;
331
+ fallbackFont?: {
332
+ name: string;
333
+ family: string;
334
+ } | undefined;
316
335
  };
317
336
  template: {
318
337
  html: string;
@@ -326,6 +345,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
326
345
  value: string;
327
346
  } | undefined;
328
347
  }[];
348
+ customFieldAttributes: string[];
329
349
  selectedUnsubscribePages: number[];
330
350
  forceRecreate: boolean;
331
351
  };
@@ -410,6 +430,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
410
430
  productType: 60 | 49 | 97;
411
431
  messageType: 1 | 2;
412
432
  username: string;
433
+ fallbackFont?: {
434
+ name: string;
435
+ family: string;
436
+ } | undefined;
413
437
  };
414
438
  template: {
415
439
  html: string;
@@ -423,6 +447,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
423
447
  value: string;
424
448
  } | undefined;
425
449
  }[];
450
+ customFieldAttributes: string[];
426
451
  selectedUnsubscribePages: number[];
427
452
  forceRecreate: boolean;
428
453
  };
@@ -507,6 +532,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
507
532
  productType: 60 | 49 | 97;
508
533
  messageType: 1 | 2;
509
534
  username: string;
535
+ fallbackFont?: {
536
+ name: string;
537
+ family: string;
538
+ } | undefined;
510
539
  };
511
540
  template: {
512
541
  html: string;
@@ -520,6 +549,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
520
549
  value: string;
521
550
  } | undefined;
522
551
  }[];
552
+ customFieldAttributes: string[];
523
553
  selectedUnsubscribePages: number[];
524
554
  forceRecreate: boolean;
525
555
  };
@@ -604,6 +634,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
604
634
  productType: 60 | 49 | 97;
605
635
  messageType: 1 | 2;
606
636
  username: string;
637
+ fallbackFont?: {
638
+ name: string;
639
+ family: string;
640
+ } | undefined;
607
641
  };
608
642
  template: {
609
643
  html: string;
@@ -617,6 +651,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
617
651
  value: string;
618
652
  } | undefined;
619
653
  }[];
654
+ customFieldAttributes: string[];
620
655
  selectedUnsubscribePages: number[];
621
656
  forceRecreate: boolean;
622
657
  };
@@ -701,6 +736,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
701
736
  productType: 60 | 49 | 97;
702
737
  messageType: 1 | 2;
703
738
  username: string;
739
+ fallbackFont?: {
740
+ name: string;
741
+ family: string;
742
+ } | undefined;
704
743
  };
705
744
  template: {
706
745
  html: string;
@@ -714,6 +753,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
714
753
  value: string;
715
754
  } | undefined;
716
755
  }[];
756
+ customFieldAttributes: string[];
717
757
  selectedUnsubscribePages: number[];
718
758
  forceRecreate: boolean;
719
759
  };
@@ -798,6 +838,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
798
838
  productType: 60 | 49 | 97;
799
839
  messageType: 1 | 2;
800
840
  username: string;
841
+ fallbackFont?: {
842
+ name: string;
843
+ family: string;
844
+ } | undefined;
801
845
  };
802
846
  template: {
803
847
  html: string;
@@ -811,6 +855,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
811
855
  value: string;
812
856
  } | undefined;
813
857
  }[];
858
+ customFieldAttributes: string[];
814
859
  selectedUnsubscribePages: number[];
815
860
  forceRecreate: boolean;
816
861
  };
@@ -895,6 +940,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
895
940
  productType: 60 | 49 | 97;
896
941
  messageType: 1 | 2;
897
942
  username: string;
943
+ fallbackFont?: {
944
+ name: string;
945
+ family: string;
946
+ } | undefined;
898
947
  };
899
948
  template: {
900
949
  html: string;
@@ -908,6 +957,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
908
957
  value: string;
909
958
  } | undefined;
910
959
  }[];
960
+ customFieldAttributes: string[];
911
961
  selectedUnsubscribePages: number[];
912
962
  forceRecreate: boolean;
913
963
  };
@@ -992,6 +1042,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
992
1042
  productType: 60 | 49 | 97;
993
1043
  messageType: 1 | 2;
994
1044
  username: string;
1045
+ fallbackFont?: {
1046
+ name: string;
1047
+ family: string;
1048
+ } | undefined;
995
1049
  };
996
1050
  template: {
997
1051
  html: string;
@@ -1005,6 +1059,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1005
1059
  value: string;
1006
1060
  } | undefined;
1007
1061
  }[];
1062
+ customFieldAttributes: string[];
1008
1063
  selectedUnsubscribePages: number[];
1009
1064
  forceRecreate: boolean;
1010
1065
  };
@@ -1089,6 +1144,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1089
1144
  productType: 60 | 49 | 97;
1090
1145
  messageType: 1 | 2;
1091
1146
  username: string;
1147
+ fallbackFont?: {
1148
+ name: string;
1149
+ family: string;
1150
+ } | undefined;
1092
1151
  };
1093
1152
  template: {
1094
1153
  html: string;
@@ -1102,6 +1161,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1102
1161
  value: string;
1103
1162
  } | undefined;
1104
1163
  }[];
1164
+ customFieldAttributes: string[];
1105
1165
  selectedUnsubscribePages: number[];
1106
1166
  forceRecreate: boolean;
1107
1167
  };
@@ -1186,6 +1246,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1186
1246
  productType: 60 | 49 | 97;
1187
1247
  messageType: 1 | 2;
1188
1248
  username: string;
1249
+ fallbackFont?: {
1250
+ name: string;
1251
+ family: string;
1252
+ } | undefined;
1189
1253
  };
1190
1254
  template: {
1191
1255
  html: string;
@@ -1199,6 +1263,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1199
1263
  value: string;
1200
1264
  } | undefined;
1201
1265
  }[];
1266
+ customFieldAttributes: string[];
1202
1267
  selectedUnsubscribePages: number[];
1203
1268
  forceRecreate: boolean;
1204
1269
  };
@@ -1283,6 +1348,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1283
1348
  productType: 60 | 49 | 97;
1284
1349
  messageType: 1 | 2;
1285
1350
  username: string;
1351
+ fallbackFont?: {
1352
+ name: string;
1353
+ family: string;
1354
+ } | undefined;
1286
1355
  };
1287
1356
  template: {
1288
1357
  html: string;
@@ -1296,6 +1365,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1296
1365
  value: string;
1297
1366
  } | undefined;
1298
1367
  }[];
1368
+ customFieldAttributes: string[];
1299
1369
  selectedUnsubscribePages: number[];
1300
1370
  forceRecreate: boolean;
1301
1371
  };
@@ -1380,6 +1450,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1380
1450
  productType: 60 | 49 | 97;
1381
1451
  messageType: 1 | 2;
1382
1452
  username: string;
1453
+ fallbackFont?: {
1454
+ name: string;
1455
+ family: string;
1456
+ } | undefined;
1383
1457
  };
1384
1458
  template: {
1385
1459
  html: string;
@@ -1393,6 +1467,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1393
1467
  value: string;
1394
1468
  } | undefined;
1395
1469
  }[];
1470
+ customFieldAttributes: string[];
1396
1471
  selectedUnsubscribePages: number[];
1397
1472
  forceRecreate: boolean;
1398
1473
  };
@@ -1477,6 +1552,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1477
1552
  productType: 60 | 49 | 97;
1478
1553
  messageType: 1 | 2;
1479
1554
  username: string;
1555
+ fallbackFont?: {
1556
+ name: string;
1557
+ family: string;
1558
+ } | undefined;
1480
1559
  };
1481
1560
  template: {
1482
1561
  html: string;
@@ -1490,6 +1569,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1490
1569
  value: string;
1491
1570
  } | undefined;
1492
1571
  }[];
1572
+ customFieldAttributes: string[];
1493
1573
  selectedUnsubscribePages: number[];
1494
1574
  forceRecreate: boolean;
1495
1575
  };
@@ -1574,6 +1654,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1574
1654
  productType: 60 | 49 | 97;
1575
1655
  messageType: 1 | 2;
1576
1656
  username: string;
1657
+ fallbackFont?: {
1658
+ name: string;
1659
+ family: string;
1660
+ } | undefined;
1577
1661
  };
1578
1662
  template: {
1579
1663
  html: string;
@@ -1587,6 +1671,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1587
1671
  value: string;
1588
1672
  } | undefined;
1589
1673
  }[];
1674
+ customFieldAttributes: string[];
1590
1675
  selectedUnsubscribePages: number[];
1591
1676
  forceRecreate: boolean;
1592
1677
  };
@@ -1671,6 +1756,10 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1671
1756
  productType: 60 | 49 | 97;
1672
1757
  messageType: 1 | 2;
1673
1758
  username: string;
1759
+ fallbackFont?: {
1760
+ name: string;
1761
+ family: string;
1762
+ } | undefined;
1674
1763
  };
1675
1764
  template: {
1676
1765
  html: string;
@@ -1684,6 +1773,7 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
1684
1773
  value: string;
1685
1774
  } | undefined;
1686
1775
  }[];
1776
+ customFieldAttributes: string[];
1687
1777
  selectedUnsubscribePages: number[];
1688
1778
  forceRecreate: boolean;
1689
1779
  };
@@ -7,6 +7,7 @@ export declare const usePreviewStore: import("pinia").StoreDefinition<"guidoPrev
7
7
  templateHtml: string;
8
8
  isLoaded: boolean;
9
9
  isAMPErrorModalVisible: boolean;
10
+ emailSizeKB: number;
10
11
  } & import("pinia").PiniaCustomStateProperties<PreviewState>) => boolean;
11
12
  previewHtml(): string;
12
13
  hasAMP: (state: {
@@ -16,6 +17,7 @@ export declare const usePreviewStore: import("pinia").StoreDefinition<"guidoPrev
16
17
  templateHtml: string;
17
18
  isLoaded: boolean;
18
19
  isAMPErrorModalVisible: boolean;
20
+ emailSizeKB: number;
19
21
  } & import("pinia").PiniaCustomStateProperties<PreviewState>) => boolean;
20
22
  hasAMPErrors: (state: {
21
23
  emailFormat: EmailFormat;
@@ -24,6 +26,7 @@ export declare const usePreviewStore: import("pinia").StoreDefinition<"guidoPrev
24
26
  templateHtml: string;
25
27
  isLoaded: boolean;
26
28
  isAMPErrorModalVisible: boolean;
29
+ emailSizeKB: number;
27
30
  } & import("pinia").PiniaCustomStateProperties<PreviewState>) => boolean;
28
31
  showAMPErrorButton(): boolean;
29
32
  isAMPResponsive(): boolean;
@@ -1,8 +1,9 @@
1
+ import type { FallbackFont } from '@@/Types/config';
1
2
  import type { CompilerRule, CompilationResult, HtmlCompiler } from '@@/Types/html-compiler';
2
3
  export declare class HtmlCompilerEngine implements HtmlCompiler {
3
4
  private rules;
4
5
  constructor(rules?: CompilerRule[]);
5
- compile(html: string, rules?: CompilerRule[]): CompilationResult;
6
+ compile(html: string, rules?: CompilerRule[], fallbackFont?: FallbackFont): CompilationResult;
6
7
  private applyRule;
7
8
  private applyReplaceRule;
8
9
  private applyRegexRule;
@@ -1,13 +1,14 @@
1
1
  import { defineStore as e } from "pinia";
2
- const s = () => ({
2
+ const i = () => ({
3
3
  emailFormat: "html",
4
4
  ampHtml: "",
5
5
  ampErrors: [],
6
6
  templateHtml: "",
7
7
  isLoaded: !1,
8
- isAMPErrorModalVisible: !1
8
+ isAMPErrorModalVisible: !1,
9
+ emailSizeKB: 0
9
10
  }), a = e("guidoPreview", {
10
- state: () => s(),
11
+ state: () => i(),
11
12
  getters: {
12
13
  isAMPModeEnabled: (t) => t.emailFormat === "AMP",
13
14
  previewHtml() {
@@ -1,70 +1,77 @@
1
- var y = Object.defineProperty;
2
- var g = (p, e, r) => e in p ? y(p, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : p[e] = r;
3
- var u = (p, e, r) => g(p, typeof e != "symbol" ? e + "" : e, r);
4
- import { useToaster as m } from "../composables/useToaster.js";
5
- class d {
1
+ var h = Object.defineProperty;
2
+ var f = (o, e, t) => e in o ? h(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
3
+ var m = (o, e, t) => f(o, typeof e != "symbol" ? e + "" : e, t);
4
+ import { useToaster as x } from "../composables/useToaster.js";
5
+ const E = /font-family\s*:[^;}"']+/gi;
6
+ class T {
6
7
  constructor(e = []) {
7
- u(this, "rules");
8
+ m(this, "rules");
8
9
  this.rules = e;
9
10
  }
10
- compile(e, r) {
11
- const l = performance.now(), t = e, o = e.length;
11
+ compile(e, t, r) {
12
+ const n = performance.now(), l = e, c = e.length;
12
13
  let s = e;
13
- const a = [];
14
- (r || this.rules).sort((n, c) => n.priority - c.priority).forEach((n) => {
15
- const c = s.length;
16
- s = this.applyRule(s, n), s.length !== c && a.push(n.id);
14
+ const i = [];
15
+ (t || this.rules).sort((p, a) => p.priority - a.priority).forEach((p) => {
16
+ const a = s.length;
17
+ s = this.applyRule(s, p), s.length !== a && i.push(p.id);
17
18
  });
18
- const i = s.length, R = o > 0 ? (o - i) / o * 100 : 0;
19
+ const u = s.length, R = c > 0 ? (c - u) / c * 100 : 0, d = new TextEncoder().encode(s).byteLength;
20
+ let y = 0;
21
+ if (r && r.name && r.family) {
22
+ const p = (s.match(E) || []).length, a = `, ${r.name}, ${r.family}`;
23
+ y = p * new TextEncoder().encode(a).byteLength;
24
+ }
25
+ const g = Math.round((d + y) / 1024);
19
26
  return {
20
- originalHtml: t,
27
+ originalHtml: l,
21
28
  compiledHtml: s,
22
- appliedRules: a,
23
- // TODO: We can use stats for monitoring in the future
29
+ appliedRules: i,
30
+ estimatedSizeKB: g,
24
31
  stats: {
25
- originalSize: o,
26
- compiledSize: i,
32
+ originalSize: c,
33
+ compiledSize: u,
27
34
  reductionPercentage: R,
28
- executionTime: performance.now() - l
35
+ executionTime: performance.now() - n
29
36
  }
30
37
  };
31
38
  }
32
- applyRule(e, r) {
39
+ applyRule(e, t) {
33
40
  try {
34
- switch (r.type) {
41
+ switch (t.type) {
35
42
  case "replace":
36
- return this.applyReplaceRule(e, r);
43
+ return this.applyReplaceRule(e, t);
37
44
  case "regex":
38
- return this.applyRegexRule(e, r);
45
+ return this.applyRegexRule(e, t);
39
46
  case "remove":
40
- return this.applyRemoveRule(e, r);
47
+ return this.applyRemoveRule(e, t);
41
48
  case "custom":
42
- return this.applyCustomRule(e, r);
49
+ return this.applyCustomRule(e, t);
43
50
  default:
44
51
  return e;
45
52
  }
46
- } catch (l) {
47
- const { handleError: t } = m();
48
- return t(l, `Failed to apply rule ${r.id}:`), e;
53
+ } catch (r) {
54
+ const { handleError: n } = x();
55
+ return n(r, `Failed to apply rule ${t.id}:`), e;
49
56
  }
50
57
  }
51
- applyReplaceRule(e, r) {
52
- const { search: l, replacement: t, replaceAll: o = !0 } = r;
53
- return o ? e.replaceAll(l, t) : e.replace(l, t);
58
+ applyReplaceRule(e, t) {
59
+ const { search: r, replacement: n, replaceAll: l = !0 } = t;
60
+ return l ? e.replaceAll(r, n) : e.replace(r, n);
54
61
  }
55
- applyRegexRule(e, r) {
56
- const { pattern: l, replacement: t, flags: o = "g" } = r, s = new RegExp(l, o);
57
- return e.replace(s, t);
62
+ applyRegexRule(e, t) {
63
+ const { pattern: r, replacement: n, flags: l = "g" } = t, c = new RegExp(r, l);
64
+ return e.replace(c, n);
58
65
  }
59
- applyRemoveRule(e, r) {
60
- return r.targets.reduce((l, t) => t instanceof RegExp ? l.replace(t, "") : l.replaceAll(t, ""), e);
66
+ applyRemoveRule(e, t) {
67
+ return t.targets.reduce((r, n) => n instanceof RegExp ? r.replace(n, "") : r.replaceAll(n, ""), e);
61
68
  }
62
- applyCustomRule(e, r) {
63
- return r.processor(e);
69
+ applyCustomRule(e, t) {
70
+ return t.processor(e);
64
71
  }
65
72
  }
66
- const A = (p = []) => new d(p);
73
+ const H = (o = []) => new T(o);
67
74
  export {
68
- d as HtmlCompilerEngine,
69
- A as createHtmlCompiler
75
+ T as HtmlCompilerEngine,
76
+ H as createHtmlCompiler
70
77
  };
@@ -1,32 +1,32 @@
1
- import { useActionsApi as f } from "../composables/useActionsApi.js";
2
- import { useHtmlCompiler as C } from "../composables/useHtmlCompiler.js";
3
- import { useRecommendationExtensionStore as T } from "../extensions/Blocks/Recommendation/store/recommendation.js";
4
- import { useDynamicContentStore as x } from "../stores/dynamic-content.js";
5
- import { useUnsubscribeStore as y } from "../stores/unsubscribe.js";
6
- const w = () => {
7
- const o = x(), e = y(), { getCompiledEmail: i, getTemplateData: s, editorSave: n } = f(), { compileHtml: a } = C();
1
+ import { useActionsApi as S } from "../composables/useActionsApi.js";
2
+ import { useHtmlCompiler as f } from "../composables/useHtmlCompiler.js";
3
+ import { useRecommendationExtensionStore as C } from "../extensions/Blocks/Recommendation/store/recommendation.js";
4
+ import { useDynamicContentStore as T } from "../stores/dynamic-content.js";
5
+ import { useUnsubscribeStore as x } from "../stores/unsubscribe.js";
6
+ const h = () => {
7
+ const o = T(), e = x(), { getCompiledEmail: i, getTemplateData: s } = S(), { compileHtml: n } = f();
8
8
  return {
9
9
  prepareTemplateDetails: async () => {
10
- const { html: m, ampHtml: r = "", ampErrors: c = [] } = await i({
10
+ const { html: a, ampHtml: m = "", ampErrors: r = [] } = await i({
11
11
  minimize: !0,
12
12
  resetDataSavedFlag: !1
13
- }), { html: l, css: p, syncModulesIds: u = [] } = await s();
13
+ }), { html: c, css: l, syncModulesIds: p = [] } = await s();
14
14
  e.selectedUnsubscribePages.length && await e.fetchTemplates();
15
- const { compiledHtml: d, stats: t, appliedRules: g } = a(m), S = o.getSelectedDynamicContentList, b = T();
16
- return n(), console.debug("HTML Compilation Stats:", {
15
+ const { compiledHtml: u, stats: t, appliedRules: d } = n(a), g = o.getSelectedDynamicContentList, b = C();
16
+ return console.debug("HTML Compilation Stats:", {
17
17
  originalSize: t.originalSize,
18
18
  compiledSize: t.compiledSize,
19
19
  reduction: `${t.reductionPercentage.toFixed(2)}%`,
20
- appliedRules: g,
20
+ appliedRules: d,
21
21
  executionTime: `${t.executionTime.toFixed(2)}ms`
22
22
  }), {
23
- dynamicContentList: S,
24
- compiledHtml: d,
25
- rawHtml: l,
26
- css: p,
27
- ampHtml: r,
28
- ampErrors: c,
29
- modules: u.map(Number),
23
+ dynamicContentList: g,
24
+ compiledHtml: u,
25
+ rawHtml: c,
26
+ css: l,
27
+ ampHtml: m,
28
+ ampErrors: r,
29
+ modules: p.map(Number),
30
30
  recommendation: {
31
31
  campaignUrls: b.recommendationCampaignUrls,
32
32
  configs: {}
@@ -40,5 +40,5 @@ const w = () => {
40
40
  };
41
41
  };
42
42
  export {
43
- w as useTemplatePreparation
43
+ h as useTemplatePreparation
44
44
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@useinsider/guido",
3
- "version": "3.1.1-beta.a7d73f2",
3
+ "version": "3.1.1-beta.a80cc5e",
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",