@templatical/editor 0.26.0 → 0.26.2

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 (83) hide show
  1. package/dist/{AiChatSidebar-c-3yyjN1.js → AiChatSidebar-CMBz6Wix.js} +1 -1
  2. package/dist/{AiFeatureMenu-B-COyG7k.js → AiFeatureMenu-BY6mubnR.js} +1 -1
  3. package/dist/{BlockPreviewCanvas-CJPHGI93.js → BlockPreviewCanvas-DbNOqSI1.js} +1 -1
  4. package/dist/{CloudEditor-BdSQ8hfv.js → CloudEditor-DEnMNMbm.js} +8 -8
  5. package/dist/{CollaboratorBar-mGoi6yye.js → CollaboratorBar-zvfvE7f-.js} +1 -1
  6. package/dist/{DesignReferenceSidebar-CgYkySre.js → DesignReferenceSidebar-Bx96XFmK.js} +1 -1
  7. package/dist/{MergeTagModeToggle-hAJgIKhw.js → MergeTagModeToggle-P-UguQHc.js} +1 -1
  8. package/dist/{ParagraphEditor-DBG63S70.js → ParagraphEditor-CLvv5Ija.js} +2 -2
  9. package/dist/{SaveBlockDialog-Dq9UVihi.js → SaveBlockDialog-fVp_PwZi.js} +3 -3
  10. package/dist/{SavedBlocksBrowserModal-CtFG4zeV.js → SavedBlocksBrowserModal-KWlaiLlr.js} +4 -4
  11. package/dist/{SavedBlocksPanels-DNVdso_W.js → SavedBlocksPanels-CQsZvWO_.js} +1 -1
  12. package/dist/{SavedBlocksPickBar-Cv4dIpP-.js → SavedBlocksPickBar-C3h8oL3r.js} +1 -1
  13. package/dist/{SnapshotHistory-DsOtMHOV.js → SnapshotHistory-DjA3Ej_i.js} +1 -1
  14. package/dist/{TestEmailModal-CIwqtGfr.js → TestEmailModal-EM0RP_9L.js} +5 -5
  15. package/dist/{TestEmailPanel-l6LDmBGM.js → TestEmailPanel-B6goIAxT.js} +1 -1
  16. package/dist/{TitleEditor-imoBUynh.js → TitleEditor-JEaP9jVF.js} +2 -2
  17. package/dist/{TplModal-DDDHcoir.js → TplModal-DoneXIj_.js} +1 -1
  18. package/dist/{blockTypeIcons-CfLN4A6t.js → blockTypeIcons-2_85L_CL.js} +1 -1
  19. package/dist/bundle-stats.json +6 -6
  20. package/dist/cdn/chunks/{AiChatSidebar-BHqNxNcX.js → AiChatSidebar-CQ8KUmNB.js} +2 -2
  21. package/dist/cdn/chunks/{AiChatSidebar-BHqNxNcX.js.map → AiChatSidebar-CQ8KUmNB.js.map} +1 -1
  22. package/dist/cdn/chunks/{AiFeatureMenu-D2AIDwEG.js → AiFeatureMenu-Cwj8afsi.js} +2 -2
  23. package/dist/cdn/chunks/{AiFeatureMenu-D2AIDwEG.js.map → AiFeatureMenu-Cwj8afsi.js.map} +1 -1
  24. package/dist/cdn/chunks/{BlockPreviewCanvas-DH5ULGkw.js → BlockPreviewCanvas-DPtiMsVz.js} +2 -2
  25. package/dist/cdn/chunks/{BlockPreviewCanvas-DH5ULGkw.js.map → BlockPreviewCanvas-DPtiMsVz.js.map} +1 -1
  26. package/dist/cdn/chunks/{CloudEditor-C0nB1JfD.js → CloudEditor-CQ830jJt.js} +11 -11
  27. package/dist/cdn/chunks/{CloudEditor-C0nB1JfD.js.map → CloudEditor-CQ830jJt.js.map} +1 -1
  28. package/dist/cdn/chunks/{CollaboratorBar-f6Ni7KNH.js → CollaboratorBar-BF469_AN.js} +2 -2
  29. package/dist/cdn/chunks/{CollaboratorBar-f6Ni7KNH.js.map → CollaboratorBar-BF469_AN.js.map} +1 -1
  30. package/dist/cdn/chunks/{DesignReferenceSidebar-DBoEBKxQ.js → DesignReferenceSidebar-B-HFXV0W.js} +2 -2
  31. package/dist/cdn/chunks/{DesignReferenceSidebar-DBoEBKxQ.js.map → DesignReferenceSidebar-B-HFXV0W.js.map} +1 -1
  32. package/dist/cdn/chunks/{MergeTagModeToggle-D8iKvz7v.js → MergeTagModeToggle-DQ79SqQc.js} +2 -2
  33. package/dist/cdn/chunks/{MergeTagModeToggle-D8iKvz7v.js.map → MergeTagModeToggle-DQ79SqQc.js.map} +1 -1
  34. package/dist/cdn/chunks/{ParagraphEditor-Cuc83Blj.js → ParagraphEditor-Bzcma_Lm.js} +3 -3
  35. package/dist/cdn/chunks/{ParagraphEditor-Cuc83Blj.js.map → ParagraphEditor-Bzcma_Lm.js.map} +1 -1
  36. package/dist/cdn/chunks/{SaveBlockDialog-B8KHhVkI.js → SaveBlockDialog-BfNVeXXV.js} +4 -4
  37. package/dist/cdn/chunks/{SaveBlockDialog-B8KHhVkI.js.map → SaveBlockDialog-BfNVeXXV.js.map} +1 -1
  38. package/dist/cdn/chunks/{SavedBlocksBrowserModal-B-sjsIJv.js → SavedBlocksBrowserModal-C59D4G5C.js} +4 -4
  39. package/dist/cdn/chunks/{SavedBlocksBrowserModal-B-sjsIJv.js.map → SavedBlocksBrowserModal-C59D4G5C.js.map} +1 -1
  40. package/dist/cdn/chunks/{SavedBlocksPanels-Bb-eDMAh.js → SavedBlocksPanels-e4HyTZ8v.js} +2 -2
  41. package/dist/cdn/chunks/{SavedBlocksPanels-Bb-eDMAh.js.map → SavedBlocksPanels-e4HyTZ8v.js.map} +1 -1
  42. package/dist/cdn/chunks/{SavedBlocksPickBar-GudFfXa4.js → SavedBlocksPickBar-DMHxPCM4.js} +2 -2
  43. package/dist/cdn/chunks/{SavedBlocksPickBar-GudFfXa4.js.map → SavedBlocksPickBar-DMHxPCM4.js.map} +1 -1
  44. package/dist/cdn/chunks/{SnapshotHistory-Srpzt2na.js → SnapshotHistory-80tAU_VX.js} +2 -2
  45. package/dist/cdn/chunks/{SnapshotHistory-Srpzt2na.js.map → SnapshotHistory-80tAU_VX.js.map} +1 -1
  46. package/dist/cdn/chunks/{TestEmailModal-DLeoJqaJ.js → TestEmailModal-DdWfAGNe.js} +6 -6
  47. package/dist/cdn/chunks/{TestEmailModal-DLeoJqaJ.js.map → TestEmailModal-DdWfAGNe.js.map} +1 -1
  48. package/dist/cdn/chunks/{TestEmailPanel-Dr7Dkq2P.js → TestEmailPanel-CZAG1gQE.js} +2 -2
  49. package/dist/cdn/chunks/{TestEmailPanel-Dr7Dkq2P.js.map → TestEmailPanel-CZAG1gQE.js.map} +1 -1
  50. package/dist/cdn/chunks/{TitleEditor-DzYRr18C.js → TitleEditor-D0_LY2Ex.js} +3 -3
  51. package/dist/cdn/chunks/{TitleEditor-DzYRr18C.js.map → TitleEditor-D0_LY2Ex.js.map} +1 -1
  52. package/dist/cdn/chunks/{TplModal-byw7-3wg.js → TplModal-iCmoKB2k.js} +2 -2
  53. package/dist/cdn/chunks/{TplModal-byw7-3wg.js.map → TplModal-iCmoKB2k.js.map} +1 -1
  54. package/dist/cdn/chunks/{cloud-CuItCnN_.js → cloud-DcC8bPwn.js} +2 -2
  55. package/dist/cdn/chunks/{cloud-CuItCnN_.js.map → cloud-DcC8bPwn.js.map} +1 -1
  56. package/dist/cdn/chunks/{extensions-B7laxHjs.js → extensions-C7h52yuk.js} +7 -3
  57. package/dist/cdn/chunks/extensions-C7h52yuk.js.map +1 -0
  58. package/dist/cdn/chunks/{src-EKTTBQ0y.js → src-B_QJduQD.js} +237 -166
  59. package/dist/cdn/chunks/src-B_QJduQD.js.map +1 -0
  60. package/dist/cdn/chunks/{src-BYKYmEOD.js → src-CUKUsRzX.js} +120 -121
  61. package/dist/cdn/chunks/src-CUKUsRzX.js.map +1 -0
  62. package/dist/cdn/chunks/{src-Bi-Qhtfs.js → src-Cx70q30o.js} +79 -79
  63. package/dist/cdn/chunks/{src-Bi-Qhtfs.js.map → src-Cx70q30o.js.map} +1 -1
  64. package/dist/cdn/chunks/{src-C0N74uvF.js → src-xkGep9eN.js} +2 -2
  65. package/dist/cdn/chunks/{src-C0N74uvF.js.map → src-xkGep9eN.js.map} +1 -1
  66. package/dist/cdn/chunks/{styles-C7s-VtJi.js → styles-CND3ey2g.js} +452 -452
  67. package/dist/cdn/chunks/{styles-C7s-VtJi.js.map → styles-CND3ey2g.js.map} +1 -1
  68. package/dist/cdn/chunks/{useEditorCore-C_nUXiph.js → useEditorCore-CKQ9gmoo.js} +36 -36
  69. package/dist/cdn/chunks/{useEditorCore-C_nUXiph.js.map → useEditorCore-CKQ9gmoo.js.map} +1 -1
  70. package/dist/cdn/chunks/{useMergeTag-CPa_9VOq.js → useMergeTag-JmXOtpln.js} +2 -2
  71. package/dist/cdn/chunks/{useMergeTag-CPa_9VOq.js.map → useMergeTag-JmXOtpln.js.map} +1 -1
  72. package/dist/cdn/editor.js +7 -7
  73. package/dist/{cloud-C7-FhzMc.js → cloud-qINCmQbn.js} +1 -1
  74. package/dist/{dist-D5zCZFdU.js → dist-B1kLn1rs.js} +120 -51
  75. package/dist/{extensions-CxwhoG8v.js → extensions-DzKNPITR.js} +6 -2
  76. package/dist/{styles-C_slTGwp.js → styles-BK36D1sy.js} +6 -6
  77. package/dist/templatical-editor.js +7 -7
  78. package/dist/{useEditorCore-r4gWzCBA.js → useEditorCore-idmPLUeb.js} +4 -4
  79. package/dist/{useMergeTag-C-_WxrgL.js → useMergeTag-CYZk7dZD.js} +1 -1
  80. package/package.json +8 -8
  81. package/dist/cdn/chunks/extensions-B7laxHjs.js.map +0 -1
  82. package/dist/cdn/chunks/src-BYKYmEOD.js.map +0 -1
  83. package/dist/cdn/chunks/src-EKTTBQ0y.js.map +0 -1
@@ -1,10 +1,10 @@
1
- import { $ as e, B as t, G as n, H as r, J as i, K as a, U as o, V as s, W as c, X as l, Y as u, Z as d, q as f, z as p } from "./src-EKTTBQ0y.js";
1
+ import { $ as e, G as t, H as n, J as r, K as i, Q as a, U as o, V as s, W as c, X as l, Y as u, Z as d, q as f, tt as p, v as m, y as h } from "./src-B_QJduQD.js";
2
2
  //#endregion
3
3
  //#region ../renderer/src/render-context.ts
4
- var m = `https://cdn.jsdelivr.net/npm/@templatical/renderer@${{
4
+ var g = `https://cdn.jsdelivr.net/npm/@templatical/renderer@${{
5
5
  name: "@templatical/renderer",
6
6
  description: "Render Templatical email templates to MJML",
7
- version: "0.26.0",
7
+ version: "0.26.2",
8
8
  bugs: "https://github.com/templatical/sdk/issues",
9
9
  dependencies: { "@templatical/types": "workspace:*" },
10
10
  devDependencies: {
@@ -42,7 +42,7 @@ var m = `https://cdn.jsdelivr.net/npm/@templatical/renderer@${{
42
42
  },
43
43
  type: "module",
44
44
  types: "./dist/index.d.ts"
45
- }.version}/assets/social`, h = {
45
+ }.version}/assets/social`, _ = {
46
46
  arial: "Arial, sans-serif",
47
47
  helvetica: "Helvetica, sans-serif",
48
48
  georgia: "Georgia, serif",
@@ -51,14 +51,14 @@ var m = `https://cdn.jsdelivr.net/npm/@templatical/renderer@${{
51
51
  "trebuchet ms": "'Trebuchet MS', sans-serif",
52
52
  "courier new": "'Courier New', monospace",
53
53
  tahoma: "Tahoma, sans-serif"
54
- }, g = class e {
54
+ }, v = class e {
55
55
  containerWidth;
56
56
  customFonts;
57
57
  defaultFallbackFont;
58
58
  allowHtmlBlocks;
59
59
  customBlockHtml;
60
60
  socialIconsBaseUrl;
61
- constructor(e, t, n, r, i = /* @__PURE__ */ new Map(), a = m) {
61
+ constructor(e, t, n, r, i = /* @__PURE__ */ new Map(), a = g) {
62
62
  this.containerWidth = e, this.customFonts = t, this.defaultFallbackFont = n, this.allowHtmlBlocks = r, this.customBlockHtml = i, this.socialIconsBaseUrl = a;
63
63
  }
64
64
  withContainerWidth(t) {
@@ -69,28 +69,28 @@ var m = `https://cdn.jsdelivr.net/npm/@templatical/renderer@${{
69
69
  let e = t.fallback ?? this.defaultFallbackFont;
70
70
  return `'${t.name}', ${e}`;
71
71
  }
72
- return h[e.toLowerCase()] || e;
72
+ return _[e.toLowerCase()] || e;
73
73
  }
74
- }, _ = {
74
+ }, y = {
75
75
  "&": "&",
76
76
  "<": "&lt;",
77
77
  ">": "&gt;",
78
78
  "\"": "&quot;",
79
79
  "'": "&#039;"
80
- }, v = /[&<>"']/g;
81
- function y(e) {
82
- return e === "" ? "" : e.replace(v, (e) => _[e] ?? e);
83
- }
84
- function b(e) {
85
- return e === "" ? "" : e.replace(v, (e) => _[e] ?? e);
86
- }
80
+ }, b = /[&<>"']/g;
87
81
  function x(e) {
88
- return e === "" ? "" : b(e).replace(/[;{}\r\n]/g, "");
82
+ return e === "" ? "" : e.replace(b, (e) => y[e] ?? e);
89
83
  }
90
84
  function S(e) {
91
- return e === "" ? "" : C(e, (e) => w(e, "data-merge-tag") ?? w(e, "data-logic-merge-tag"));
85
+ return e === "" ? "" : e.replace(b, (e) => y[e] ?? e);
86
+ }
87
+ function C(e) {
88
+ return e === "" ? "" : S(e).replace(/[;{}\r\n]/g, "");
89
+ }
90
+ function w(e) {
91
+ return e === "" ? "" : T(e, (e) => E(e, "data-merge-tag") ?? E(e, "data-logic-merge-tag"));
92
92
  }
93
- function C(e, t) {
93
+ function T(e, t) {
94
94
  let n = "", r = 0;
95
95
  for (; r < e.length;) {
96
96
  let i = e.indexOf("<span", r);
@@ -103,7 +103,7 @@ function C(e, t) {
103
103
  n += e.substring(r, i + 5), r = i + 5;
104
104
  continue;
105
105
  }
106
- let o = e.indexOf(">", i + 5);
106
+ let o = m(e, i + 5);
107
107
  if (o === -1) {
108
108
  n += e.substring(r);
109
109
  break;
@@ -122,31 +122,30 @@ function C(e, t) {
122
122
  }
123
123
  return n;
124
124
  }
125
- function w(e, t) {
126
- let n = RegExp(`(?:^|\\s)${t}="([^"<>]*)"`).exec(e);
127
- return n ? n[1] : null;
125
+ function E(e, t) {
126
+ return h(e, t);
128
127
  }
129
128
  //#endregion
130
129
  //#region ../renderer/src/padding.ts
131
- function T(e) {
130
+ function D(e) {
132
131
  return `${e.top}px ${e.right}px ${e.bottom}px ${e.left}px`;
133
132
  }
134
133
  //#endregion
135
134
  //#region ../renderer/src/utils.ts
136
- function E(e, t) {
135
+ function O(e, t) {
137
136
  return e ? ` ${t === "native" ? "background-color" : "container-background-color"}="${e}"` : "";
138
137
  }
139
138
  //#endregion
140
139
  //#region ../renderer/src/visibility.ts
141
- function D(e) {
140
+ function k(e) {
142
141
  let t = e.visibility;
143
142
  return t ? !t.desktop && !t.mobile : !1;
144
143
  }
145
- function O(e) {
146
- let t = k(e);
144
+ function A(e) {
145
+ let t = j(e);
147
146
  return t === "" ? "" : ` css-class="${t}"`;
148
147
  }
149
- function k(e) {
148
+ function j(e) {
150
149
  let t = e.visibility;
151
150
  if (!t) return "";
152
151
  let n = [];
@@ -154,43 +153,43 @@ function k(e) {
154
153
  }
155
154
  //#endregion
156
155
  //#region ../renderer/src/renderers/title.ts
157
- function A(t, n) {
158
- if (D(t)) return "";
159
- let r = T(t.styles.padding), i = E(t.styles.backgroundColor, "container"), a = j(S(t.content)), o = e[t.level] ?? e[2], s = t.color ? `\n color="${b(t.color)}"` : "", c = t.textAlign, l = ee(t.fontFamily, n), u = O(t), d = `h${e[t.level] ? t.level : 2}`;
156
+ function ee(e, t) {
157
+ if (k(e)) return "";
158
+ let n = D(e.styles.padding), r = O(e.styles.backgroundColor, "container"), i = te(w(e.content)), a = p[e.level] ?? p[2], o = e.color ? `\n color="${S(e.color)}"` : "", s = e.textAlign, c = ne(e.fontFamily, t), l = A(e), u = `h${p[e.level] ? e.level : 2}`;
160
159
  return `<mj-text
161
- font-size="${o}px"${s}
162
- align="${c}"
160
+ font-size="${a}px"${o}
161
+ align="${s}"
163
162
  line-height="1.3"
164
- padding="${r}"${i}${l}${u}
165
- ><${d} style="margin:0;font-size:inherit;color:inherit;line-height:inherit">${a}</${d}></mj-text>`;
163
+ padding="${n}"${r}${c}${l}
164
+ ><${u} style="margin:0;font-size:inherit;color:inherit;line-height:inherit">${i}</${u}></mj-text>`;
166
165
  }
167
- function j(e) {
166
+ function te(e) {
168
167
  let t = e.match(/^\s*<p\b[^>]*>([\s\S]*)<\/p>\s*$/);
169
168
  return !t || /<\/p>\s*<p\b/i.test(t[1]) ? e : t[1];
170
169
  }
171
- function ee(e, t) {
170
+ function ne(e, t) {
172
171
  return e ? ` font-family="${t.resolveFontFamily(e)}"` : "";
173
172
  }
174
173
  //#endregion
175
174
  //#region ../renderer/src/renderers/paragraph.ts
176
- function te(e, t) {
177
- if (D(e) || e.content.replace(/<\/?p\b[^<>]*>/gi, "").trim() === "") return "";
178
- let n = T(e.styles.padding), r = E(e.styles.backgroundColor, "container"), i = S(e.content);
175
+ function re(e, t) {
176
+ if (k(e) || e.content.replace(/<\/?p\b[^<>]*>/gi, "").trim() === "") return "";
177
+ let n = D(e.styles.padding), r = O(e.styles.backgroundColor, "container"), i = w(e.content);
179
178
  return `<mj-text
180
179
  line-height="1.5"
181
- padding="${n}"${r}${O(e)}
180
+ padding="${n}"${r}${A(e)}
182
181
  >${i}</mj-text>`;
183
182
  }
184
183
  //#endregion
185
184
  //#region ../renderer/src/renderers/image.ts
186
- function ne(e, t) {
187
- if (D(e) || e.src === "") return "";
188
- let n = T(e.styles.padding), r = E(e.styles.backgroundColor, "container"), i = e.width === "full" ? t.containerWidth + "px" : e.width + "px", a = O(e), o = "";
189
- e.linkUrl && (o = ` href="${b(e.linkUrl)}"`, e.linkOpenInNewTab && (o += " target=\"_blank\" rel=\"noopener\""));
190
- let s = b(e.src), c = e.decorative === !0;
185
+ function ie(e, t) {
186
+ if (k(e) || e.src === "") return "";
187
+ let n = D(e.styles.padding), r = O(e.styles.backgroundColor, "container"), i = e.width === "full" ? t.containerWidth + "px" : e.width + "px", a = A(e), o = "";
188
+ e.linkUrl && (o = ` href="${S(e.linkUrl)}"`, e.linkOpenInNewTab && (o += " target=\"_blank\" rel=\"noopener\""));
189
+ let s = S(e.src), c = e.decorative === !0;
191
190
  return `<mj-image
192
191
  src="${s}"
193
- alt="${c ? "" : b(e.alt)}"
192
+ alt="${c ? "" : S(e.alt)}"
194
193
  width="${i}"
195
194
  align="${e.align}"
196
195
  padding="${n}"${r}${o}${a}${c ? " role=\"presentation\"" : ""}
@@ -199,8 +198,8 @@ function ne(e, t) {
199
198
  //#endregion
200
199
  //#region ../renderer/src/renderers/button.ts
201
200
  function M(e, t) {
202
- if (D(e)) return "";
203
- let n = T(e.styles.padding), r = E(e.styles.backgroundColor, "container"), i = T(e.buttonPadding), a = e.url === "" ? "" : b(e.url), o = a === "" ? "" : ` href="${a}"`, s = b(e.backgroundColor), c = b(e.textColor), l = e.fontSize, u = e.borderRadius, d = y(e.text), f = e.openInNewTab ? " target=\"_blank\" rel=\"noopener\"" : "", p = N(e.fontFamily, t), m = P(e.width), h = O(e);
201
+ if (k(e)) return "";
202
+ let n = D(e.styles.padding), r = O(e.styles.backgroundColor, "container"), i = D(e.buttonPadding), a = e.url === "" ? "" : S(e.url), o = a === "" ? "" : ` href="${a}"`, s = S(e.backgroundColor), c = S(e.textColor), l = e.fontSize, u = e.borderRadius, d = x(e.text), f = e.openInNewTab ? " target=\"_blank\" rel=\"noopener\"" : "", p = N(e.fontFamily, t), m = P(e.width), h = A(e);
204
203
  return `<mj-button${o}${f}
205
204
  background-color="${s}"
206
205
  color="${c}"
@@ -221,39 +220,39 @@ function P(e) {
221
220
  //#endregion
222
221
  //#region ../renderer/src/renderers/divider.ts
223
222
  function F(e, t) {
224
- if (D(e)) return "";
225
- let n = T(e.styles.padding), r = e.styles.backgroundColor ? ` container-background-color="${b(e.styles.backgroundColor)}"` : "", i = e.width === "full" ? "100%" : e.width + "px";
223
+ if (k(e)) return "";
224
+ let n = D(e.styles.padding), r = e.styles.backgroundColor ? ` container-background-color="${S(e.styles.backgroundColor)}"` : "", i = e.width === "full" ? "100%" : e.width + "px";
226
225
  return `<mj-divider
227
226
  border-width="${e.thickness}px"
228
227
  border-style="${e.lineStyle}"
229
- border-color="${b(e.color)}"
228
+ border-color="${S(e.color)}"
230
229
  width="${i}"
231
- padding="${n}"${r}${O(e)}
230
+ padding="${n}"${r}${A(e)}
232
231
  />`;
233
232
  }
234
233
  //#endregion
235
234
  //#region ../renderer/src/renderers/spacer.ts
236
235
  function I(e, t) {
237
- return D(e) ? "" : `<mj-spacer height="${e.height}px" padding="0"${e.styles.backgroundColor ? ` container-background-color="${b(e.styles.backgroundColor)}"` : ""}${O(e)} />`;
236
+ return k(e) ? "" : `<mj-spacer height="${e.height}px" padding="0"${e.styles.backgroundColor ? ` container-background-color="${S(e.styles.backgroundColor)}"` : ""}${A(e)} />`;
238
237
  }
239
238
  //#endregion
240
239
  //#region ../renderer/src/renderers/html.ts
241
240
  function L(e, t) {
242
- if (D(e) || !t.allowHtmlBlocks) return "";
241
+ if (k(e) || !t.allowHtmlBlocks) return "";
243
242
  let n = e.content;
244
243
  if (n === "") return "";
245
- let r = O(e);
246
- return `<mj-text padding="${T(e.styles.padding)}"${E(e.styles.backgroundColor, "container")}${r}>
244
+ let r = A(e);
245
+ return `<mj-text padding="${D(e.styles.padding)}"${O(e.styles.backgroundColor, "container")}${r}>
247
246
  ${n}
248
247
  </mj-text>`;
249
248
  }
250
249
  //#endregion
251
250
  //#region ../renderer/src/renderers/social.ts
252
251
  function R(e, t) {
253
- if (D(e)) return "";
252
+ if (k(e)) return "";
254
253
  let n = e.icons;
255
254
  if (n.length === 0) return "";
256
- let r = T(e.styles.padding), i = e.styles.backgroundColor ? ` container-background-color="${b(e.styles.backgroundColor)}"` : "", a = O(e), o = e.align, s = e.iconSize, c = e.iconStyle, l = e.spacing, u;
255
+ let r = D(e.styles.padding), i = e.styles.backgroundColor ? ` container-background-color="${S(e.styles.backgroundColor)}"` : "", a = A(e), o = e.align, s = e.iconSize, c = e.iconStyle, l = e.spacing, u;
257
256
  switch (s) {
258
257
  case "small":
259
258
  u = 24;
@@ -284,7 +283,7 @@ function R(e, t) {
284
283
  padding="${r}"${i}${a}
285
284
  >
286
285
  ${n.map((e, n) => {
287
- let r = e.platform, i = b(e.url), a = `${t.socialIconsBaseUrl}/${c}/${r}.png`, o = n === f - 1 ? 0 : l;
286
+ let r = e.platform, i = S(e.url), a = `${t.socialIconsBaseUrl}/${c}/${r}.png`, o = n === f - 1 ? 0 : l;
288
287
  return `<mj-social-element src="${a}" href="${i}" icon-size="${u}px" padding="0 ${o}px 0 0" border-radius="${d}" background-color="transparent"></mj-social-element>`;
289
288
  }).join("\n")}
290
289
  </mj-social>`;
@@ -292,23 +291,23 @@ ${n.map((e, n) => {
292
291
  //#endregion
293
292
  //#region ../renderer/src/renderers/menu.ts
294
293
  function z(e, t) {
295
- if (D(e) || e.items.length === 0) return "";
296
- let n = T(e.styles.padding), r = E(e.styles.backgroundColor, "container"), i = O(e), a = H(e.fontFamily, t), o = e.textAlign;
294
+ if (k(e) || e.items.length === 0) return "";
295
+ let n = D(e.styles.padding), r = O(e.styles.backgroundColor, "container"), i = A(e), a = H(e.fontFamily, t), o = e.textAlign;
297
296
  return `<mj-text
298
- font-size="${e.fontSize}px"${e.color ? `\n color="${b(e.color)}"` : ""}
297
+ font-size="${e.fontSize}px"${e.color ? `\n color="${S(e.color)}"` : ""}
299
298
  align="${o}"
300
299
  line-height="1.5"
301
300
  padding="${n}"${r}${a}${i}
302
301
  >${B(e)}</mj-text>`;
303
302
  }
304
303
  function B(e) {
305
- let t = e.items, n = y(e.separator), r = x(e.separatorColor), i = e.spacing, a = e.linkColor ?? e.color, o = [], s = t.length;
304
+ let t = e.items, n = x(e.separator), r = C(e.separatorColor), i = e.spacing, a = e.linkColor ?? e.color, o = [], s = t.length;
306
305
  for (let e = 0; e < s; e++) o.push(V(t[e], a)), e < s - 1 && o.push(`<span style="color: ${r}; padding: 0 ${i}px;">${n}</span>`);
307
306
  return o.join("");
308
307
  }
309
308
  function V(e, t) {
310
- let n = y(e.text), r = b(e.url), i = e.color ?? t, a = e.openInNewTab ? " target=\"_blank\" rel=\"noopener\"" : "", o = ["text-decoration: none"];
311
- return i && o.unshift(`color: ${x(i)}`), e.bold && o.push("font-weight: bold"), e.underline && o.push("text-decoration: underline"), `<a href="${r}" style="${o.join("; ")}"${a}>${n}</a>`;
309
+ let n = x(e.text), r = S(e.url), i = e.color ?? t, a = e.openInNewTab ? " target=\"_blank\" rel=\"noopener\"" : "", o = ["text-decoration: none"];
310
+ return i && o.unshift(`color: ${C(i)}`), e.bold && o.push("font-weight: bold"), e.underline && o.push("text-decoration: underline"), `<a href="${r}" style="${o.join("; ")}"${a}>${n}</a>`;
312
311
  }
313
312
  function H(e, t) {
314
313
  return e ? ` font-family="${t.resolveFontFamily(e)}"` : "";
@@ -316,17 +315,17 @@ function H(e, t) {
316
315
  //#endregion
317
316
  //#region ../renderer/src/renderers/table.ts
318
317
  function U(e, t) {
319
- if (D(e) || e.rows.length === 0) return "";
320
- let n = T(e.styles.padding), r = E(e.styles.backgroundColor, "container"), i = O(e), a = q(e.fontFamily, t);
318
+ if (k(e) || e.rows.length === 0) return "";
319
+ let n = D(e.styles.padding), r = O(e.styles.backgroundColor, "container"), i = A(e), a = q(e.fontFamily, t);
321
320
  return `<mj-text
322
- font-size="${e.fontSize}px"${e.color ? `\n color="${b(e.color)}"` : ""}
321
+ font-size="${e.fontSize}px"${e.color ? `\n color="${S(e.color)}"` : ""}
323
322
  align="${e.textAlign}"
324
323
  line-height="1.5"
325
324
  padding="${n}"${r}${a}${i}
326
325
  >${W(e)}</mj-text>`;
327
326
  }
328
327
  function W(e) {
329
- let t = x(e.borderColor), n = e.borderWidth, r = "";
328
+ let t = C(e.borderColor), n = e.borderWidth, r = "";
330
329
  for (let i = 0; i < e.rows.length; i++) {
331
330
  let a = e.rows[i];
332
331
  r += G(a, e, e.hasHeaderRow && i === 0, t, n);
@@ -340,8 +339,8 @@ function G(e, t, n, r, i) {
340
339
  }
341
340
  function K(e, t, n, r, i) {
342
341
  let a = t.cellPadding, o = [`border: ${i}px solid ${r}`, `padding: ${a}px`];
343
- n && (o.push("font-weight: bold"), t.headerBackgroundColor && o.push(`background-color: ${x(t.headerBackgroundColor)}`));
344
- let s = o.join("; "), c = y(S(e.content)), l = n ? "th" : "td";
342
+ n && (o.push("font-weight: bold"), t.headerBackgroundColor && o.push(`background-color: ${C(t.headerBackgroundColor)}`));
343
+ let s = o.join("; "), c = x(w(e.content)), l = n ? "th" : "td";
345
344
  return `<${l} style="${s}">${c}</${l}>`;
346
345
  }
347
346
  function q(e, t) {
@@ -349,12 +348,12 @@ function q(e, t) {
349
348
  }
350
349
  //#endregion
351
350
  //#region ../renderer/src/renderers/custom.ts
352
- function re(e, t) {
353
- if (D(e)) return "";
351
+ function ae(e, t) {
352
+ if (k(e)) return "";
354
353
  let n = t.customBlockHtml.get(e.id) ?? e.renderedHtml;
355
354
  if (!n || n === "") return "";
356
- let r = O(e);
357
- return `<mj-text padding="${T(e.styles.padding)}"${E(e.styles.backgroundColor, "container")}${r}>
355
+ let r = A(e);
356
+ return `<mj-text padding="${D(e.styles.padding)}"${O(e.styles.backgroundColor, "container")}${r}>
358
357
  ${n}
359
358
  </mj-text>`;
360
359
  }
@@ -397,11 +396,11 @@ function X(e, t) {
397
396
  }
398
397
  //#endregion
399
398
  //#region ../renderer/src/renderers/section.ts
400
- function ie(e, t, n) {
401
- if (D(e)) return "";
402
- let r = e.columns, i = J(r), o = Y(r, t.containerWidth), s = T(e.styles.padding), c = E(e.styles.backgroundColor, "native"), l = O(e), u = e.borderRadius && e.borderRadius > 0 ? ` border-radius="${e.borderRadius}px"` : "", d = e.children, f = [];
399
+ function oe(e, t, n) {
400
+ if (k(e)) return "";
401
+ let i = e.columns, a = J(i), o = Y(i, t.containerWidth), s = D(e.styles.padding), c = O(e.styles.backgroundColor, "native"), l = A(e), u = e.borderRadius && e.borderRadius > 0 ? ` border-radius="${e.borderRadius}px"` : "", d = e.children, f = [];
403
402
  for (let e = 0; e < d.length; e++) {
404
- let r = d[e], s = i[e] ?? "100%", c = Math.floor(o[e] ?? t.containerWidth), l = ae(r, t.allowHtmlBlocks).filter((e) => !a(e)), u = t.withContainerWidth(c), p = l.map((e) => X(e, n(e, u))).filter((e) => e !== "").join("\n");
403
+ let i = d[e], s = a[e] ?? "100%", c = Math.floor(o[e] ?? t.containerWidth), l = se(i, t.allowHtmlBlocks).filter((e) => !r(e)), u = t.withContainerWidth(c), p = l.map((e) => X(e, n(e, u))).filter((e) => e !== "").join("\n");
405
404
  f.push(`<mj-column width="${s}">
406
405
  ${p === "" ? "<mj-text>&nbsp;</mj-text>" : p}
407
406
  </mj-column>`);
@@ -413,12 +412,12 @@ ${p}
413
412
  </mj-group>` : p}
414
413
  </mj-section>`;
415
414
  }
416
- function ae(e, t) {
415
+ function se(e, t) {
417
416
  return t ? e : e.filter((e) => e.type !== "html");
418
417
  }
419
418
  //#endregion
420
419
  //#region ../renderer/src/renderers/video.ts
421
- function oe(e, t) {
420
+ function ce(e, t) {
422
421
  if (t) return t;
423
422
  if (!e) return null;
424
423
  for (let t of [/(?:youtube\.com\/watch\?v=|youtu\.be\/|youtube\.com\/embed\/)([a-zA-Z0-9_-]{11})/, /youtube\.com\/shorts\/([a-zA-Z0-9_-]{11})/]) {
@@ -428,32 +427,32 @@ function oe(e, t) {
428
427
  let n = e.match(/vimeo\.com\/(?:video\/)?(\d+)/);
429
428
  return n ? `https://vumbnail.com/${n[1]}.jpg` : null;
430
429
  }
431
- function se(e, t) {
432
- if (D(e)) return "";
433
- let n = oe(e.url, e.thumbnailUrl);
430
+ function le(e, t) {
431
+ if (k(e)) return "";
432
+ let n = ce(e.url, e.thumbnailUrl);
434
433
  if (!n) return "";
435
- let r = T(e.styles.padding), i = E(e.styles.backgroundColor, "container"), a = e.width === "full" ? t.containerWidth + "px" : e.width + "px", o = O(e);
434
+ let r = D(e.styles.padding), i = O(e.styles.backgroundColor, "container"), a = e.width === "full" ? t.containerWidth + "px" : e.width + "px", o = A(e);
436
435
  return `<mj-image
437
- src="${b(n)}"
438
- alt="${b(e.alt)}"
436
+ src="${S(n)}"
437
+ alt="${S(e.alt)}"
439
438
  width="${a}"
440
439
  align="${e.align}"
441
440
  padding="${r}"
442
- href="${b(e.url)}"
441
+ href="${S(e.url)}"
443
442
  target="_blank"
444
443
  rel="noopener"${i}${o}
445
444
  />`;
446
445
  }
447
446
  //#endregion
448
447
  //#region ../renderer/src/renderers/index.ts
449
- function Z(e, m) {
450
- return a(e) ? ie(e, m, Z) : l(e) ? A(e, m) : n(e) ? te(e, m) : o(e) ? ne(e, m) : p(e) ? M(e, m) : s(e) ? F(e, m) : i(e) ? I(e, m) : r(e) ? L(e, m) : f(e) ? R(e, m) : c(e) ? z(e, m) : u(e) ? U(e, m) : d(e) ? se(e, m) : t(e) ? re(e, m) : "";
448
+ function Z(p, m) {
449
+ return r(p) ? oe(p, m, Z) : a(p) ? ee(p, m) : f(p) ? re(p, m) : t(p) ? ie(p, m) : s(p) ? M(p, m) : o(p) ? F(p, m) : l(p) ? I(p, m) : c(p) ? L(p, m) : u(p) ? R(p, m) : i(p) ? z(p, m) : d(p) ? U(p, m) : e(p) ? le(p, m) : n(p) ? ae(p, m) : "";
451
450
  }
452
451
  //#endregion
453
452
  //#region ../renderer/src/index.ts
454
- async function ce(e, t) {
455
- let n = t?.customFonts ?? [], r = t?.defaultFallbackFont ?? "Arial, sans-serif", i = t?.allowHtmlBlocks ?? !0, a = fe(t?.socialIconsBaseUrl ?? m), o = await he(e, t?.renderCustomBlock), s = ge(e, t?.getCustomBlockStylesheet), c = new g(e.settings.width, n, r, i, o, a), l = Q(e.blocks, i), u = c.resolveFontFamily(e.settings.fontFamily), d = e.settings.backgroundColor, f = e.settings.textColor ? ` color="${b(e.settings.textColor)}"` : "", p = e.settings.linkColor ? x(e.settings.linkColor) : "inherit", h = e.settings.linkUnderline ? "underline" : "none", _ = l.map((e) => le(e, c)).filter((e) => e !== "").join("\n"), v = me(n), y = pe(e.settings.preheaderText);
456
- return `<mjml lang="${b(e.settings.locale)}">
453
+ async function ue(e, t) {
454
+ let n = t?.customFonts ?? [], r = t?.defaultFallbackFont ?? "Arial, sans-serif", i = t?.allowHtmlBlocks ?? !0, a = me(t?.socialIconsBaseUrl ?? g), o = await _e(e, t?.renderCustomBlock), s = ve(e, t?.getCustomBlockStylesheet), c = new v(e.settings.width, n, r, i, o, a), l = ge(e.blocks, i), u = c.resolveFontFamily(e.settings.fontFamily), d = e.settings.backgroundColor, f = e.settings.textColor ? ` color="${S(e.settings.textColor)}"` : "", p = e.settings.linkColor ? C(e.settings.linkColor) : "inherit", m = e.settings.linkUnderline ? "underline" : "none", h = l.map((e) => de(e, c)).filter((e) => e !== "").join("\n"), _ = he(n), y = Q(e.settings.preheaderText);
455
+ return `<mjml lang="${S(e.settings.locale)}">
457
456
  <mj-head>${y}
458
457
  <mj-attributes>
459
458
  <mj-all font-family="${u}" />
@@ -461,56 +460,56 @@ async function ce(e, t) {
461
460
  <mj-section padding="0" />
462
461
  <mj-column padding="0" />
463
462
  <mj-image fluid-on-mobile="true" />
464
- </mj-attributes>${v}
463
+ </mj-attributes>${_}
465
464
  <mj-style>
466
- a { color: ${p}; text-decoration: ${h}; }
465
+ a { color: ${p}; text-decoration: ${m}; }
467
466
  @media only screen and (max-width: 480px) {
468
467
  .tpl-hide-mobile { display: none !important; mso-hide: all !important; }
469
468
  }
470
469
  @media only screen and (min-width: 481px) {
471
470
  .tpl-hide-desktop { display: none !important; mso-hide: all !important; }
472
471
  }
473
- </mj-style>${_e(s)}
472
+ </mj-style>${ye(s)}
474
473
  </mj-head>
475
474
  <mj-body width="${c.containerWidth}px" background-color="${d}">
476
- ${_}
475
+ ${h}
477
476
  </mj-body>
478
477
  </mjml>`;
479
478
  }
480
- function le(e, t) {
481
- if (a(e)) {
479
+ function de(e, t) {
480
+ if (r(e)) {
482
481
  let n = Z(e, t);
483
- return X(e, e.wrapper && n !== "" ? ue(n, e.wrapper) : n);
482
+ return X(e, e.wrapper && n !== "" ? fe(n, e.wrapper) : n);
484
483
  }
485
- return X(e, de(Z(e, t)));
484
+ return X(e, pe(Z(e, t)));
486
485
  }
487
- function ue(e, t) {
488
- return `<mj-wrapper${E(t.backgroundColor, "native")}${` padding="${t.padding ? T(t.padding) : "0"}"`}${t.borderRadius && t.borderRadius > 0 ? ` border-radius="${t.borderRadius}px"` : ""}>
486
+ function fe(e, t) {
487
+ return `<mj-wrapper${O(t.backgroundColor, "native")}${` padding="${t.padding ? D(t.padding) : "0"}"`}${t.borderRadius && t.borderRadius > 0 ? ` border-radius="${t.borderRadius}px"` : ""}>
489
488
  ${e}
490
489
  </mj-wrapper>`;
491
490
  }
492
- function de(e) {
491
+ function pe(e) {
493
492
  return e === "" ? "" : `<mj-section>
494
493
  <mj-column>
495
494
  ${e}
496
495
  </mj-column>
497
496
  </mj-section>`;
498
497
  }
499
- function fe(e) {
498
+ function me(e) {
500
499
  return e.endsWith("/") ? e.slice(0, -1) : e;
501
500
  }
502
- function pe(e) {
501
+ function Q(e) {
503
502
  if (!e) return "";
504
503
  let t = e.trim();
505
- return t === "" ? "" : `\n <mj-preview>${y(t)}</mj-preview>`;
504
+ return t === "" ? "" : `\n <mj-preview>${x(t)}</mj-preview>`;
506
505
  }
507
- function me(e) {
508
- return e.length === 0 ? "" : e.map((e) => `\n <mj-font name="${b(e.name)}" href="${b(e.url)}" />`).join("");
506
+ function he(e) {
507
+ return e.length === 0 ? "" : e.map((e) => `\n <mj-font name="${S(e.name)}" href="${S(e.url)}" />`).join("");
509
508
  }
510
- function Q(e, t) {
509
+ function ge(e, t) {
511
510
  return t ? e : e.filter((e) => e.type !== "html");
512
511
  }
513
- async function he(e, t) {
512
+ async function _e(e, t) {
514
513
  let n = /* @__PURE__ */ new Map();
515
514
  if (!t) return n;
516
515
  let r = [];
@@ -519,16 +518,16 @@ async function he(e, t) {
519
518
  for (let e = 0; e < r.length; e++) n.set(r[e].id, i[e]);
520
519
  return n;
521
520
  }
522
- function $(e, n) {
523
- for (let r of e) {
524
- if (t(r)) {
525
- n.push(r);
521
+ function $(e, t) {
522
+ for (let i of e) {
523
+ if (n(i)) {
524
+ t.push(i);
526
525
  continue;
527
526
  }
528
- if (a(r)) for (let e of r.children) $(e, n);
527
+ if (r(i)) for (let e of i.children) $(e, t);
529
528
  }
530
529
  }
531
- function ge(e, t) {
530
+ function ve(e, t) {
532
531
  if (!t) return [];
533
532
  let n = [];
534
533
  if ($(e.blocks, n), n.length === 0) return [];
@@ -543,10 +542,10 @@ function ge(e, t) {
543
542
  }
544
543
  return a;
545
544
  }
546
- function _e(e) {
545
+ function ye(e) {
547
546
  return e.length === 0 ? "" : e.map((e) => `\n <mj-style>\n${e}\n </mj-style>`).join("");
548
547
  }
549
548
  //#endregion
550
- export { m as DEFAULT_SOCIAL_ICONS_BASE_URL, g as RenderContext, S as convertMergeTagsToValues, b as escapeAttr, y as escapeHtml, O as getCssClassAttr, k as getCssClasses, J as getWidthPercentages, Y as getWidthPixels, D as isHiddenOnAll, Z as renderBlock, ce as renderToMjml, T as toPaddingString };
549
+ export { g as DEFAULT_SOCIAL_ICONS_BASE_URL, v as RenderContext, w as convertMergeTagsToValues, S as escapeAttr, x as escapeHtml, A as getCssClassAttr, j as getCssClasses, J as getWidthPercentages, Y as getWidthPixels, k as isHiddenOnAll, Z as renderBlock, ue as renderToMjml, D as toPaddingString };
551
550
 
552
- //# sourceMappingURL=src-BYKYmEOD.js.map
551
+ //# sourceMappingURL=src-CUKUsRzX.js.map