monto-email-builder 1.4.0 → 1.4.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.
@@ -1,4 +1,5 @@
1
- const d = {
1
+ import { createTheme as b, alpha as y, lighten as s, darken as h } from "@mui/material/styles";
2
+ const f = {
2
3
  newDocument: "New Blank Document",
3
4
  useBuiltInTemplates: "Use Built-in Templates",
4
5
  emailBuilder: "Monto Email Builder",
@@ -21,7 +22,7 @@ const d = {
21
22
  undoTooltip: "Undo (Ctrl/Cmd + Z)",
22
23
  redo: "Redo",
23
24
  redoTooltip: "Redo (Ctrl/Cmd + Shift + Z)"
24
- }, c = {
25
+ }, v = {
25
26
  welcomeEmail: "Marketing Template",
26
27
  oneTimePasscode: "One-time passcode (OTP)",
27
28
  resetPassword: "Reset password",
@@ -31,17 +32,17 @@ const d = {
31
32
  postMetrics: "Post metrics",
32
33
  respondToMessage: "Respond to inquiry",
33
34
  quickStart: "Quick Start"
34
- }, u = {
35
+ }, k = {
35
36
  styles: "Styles",
36
37
  inspect: "Inspect",
37
38
  clickBlockToInspect: "Click on a block to inspect.",
38
39
  blockNotFound: "Block with id {{id}} was not found. Click on a block to reset."
39
- }, m = {
40
+ }, x = {
40
41
  edit: "Edit",
41
42
  preview: "Preview",
42
43
  htmlOutput: "HTML output",
43
44
  jsonOutput: "JSON output"
44
- }, p = {
45
+ }, S = {
45
46
  title: "Image block",
46
47
  name: "Image",
47
48
  sourceUrl: "Source URL",
@@ -57,7 +58,7 @@ const d = {
57
58
  uploading: "Uploading...",
58
59
  uploadHandlerNotConfigured: "Please configure imageUploadHandler to enable local upload",
59
60
  placeholder: "Add an image"
60
- }, b = {
61
+ }, C = {
61
62
  title: "Video block",
62
63
  name: "Video",
63
64
  sourceUrl: "Video URL",
@@ -78,7 +79,7 @@ const d = {
78
79
  loop: "Loop",
79
80
  muted: "Muted",
80
81
  controls: "Show controls"
81
- }, g = {
82
+ }, M = {
82
83
  title: "Columns block",
83
84
  name: "Columns",
84
85
  layout: "Layout",
@@ -96,7 +97,7 @@ const d = {
96
97
  confirmChangeMessage: "Changing the column layout will delete data in some columns. This action cannot be undone. Are you sure you want to continue?",
97
98
  cancel: "Cancel",
98
99
  confirm: "Confirm"
99
- }, h = {
100
+ }, T = {
100
101
  global: "Global",
101
102
  backdropColor: "Backdrop color",
102
103
  canvasColor: "Canvas color",
@@ -105,7 +106,7 @@ const d = {
105
106
  pageWidth: "Page width",
106
107
  fontFamily: "Font family",
107
108
  textColor: "Text color"
108
- }, y = {
109
+ }, w = {
109
110
  title: "Text block",
110
111
  name: "Text",
111
112
  content: "Content",
@@ -172,7 +173,7 @@ const d = {
172
173
  customVariableNameInvalid: "Only letters, numbers, and underscores allowed, starting with a letter or underscore",
173
174
  customVariableNameDuplicate: "Variable name already exists"
174
175
  }
175
- }, k = {
176
+ }, R = {
176
177
  title: "Button block",
177
178
  name: "Button",
178
179
  text: "Text",
@@ -191,12 +192,12 @@ const d = {
191
192
  stylePill: "Pill",
192
193
  textColor: "Text color",
193
194
  buttonColor: "Button color"
194
- }, v = {
195
+ }, L = {
195
196
  title: "Heading block",
196
197
  name: "Heading",
197
198
  content: "Content",
198
199
  level: "Level"
199
- }, f = {
200
+ }, A = {
200
201
  title: "Avatar block",
201
202
  size: "Size",
202
203
  shape: "Shape",
@@ -205,23 +206,23 @@ const d = {
205
206
  shapeRounded: "Rounded",
206
207
  imageUrl: "Image URL",
207
208
  altText: "Alt text"
208
- }, C = {
209
+ }, B = {
209
210
  title: "Divider block",
210
211
  name: "Divider",
211
212
  color: "Color",
212
213
  height: "Height"
213
- }, S = {
214
+ }, O = {
214
215
  title: "Container block",
215
216
  name: "Container"
216
- }, w = {
217
+ }, F = {
217
218
  title: "Spacer block",
218
219
  name: "Spacer",
219
220
  height: "Height"
220
- }, T = {
221
+ }, E = {
221
222
  title: "HTML block",
222
223
  name: "HTML",
223
224
  content: "Content"
224
- }, L = {
225
+ }, U = {
225
226
  title: "Social Media block",
226
227
  name: "Socials",
227
228
  selectPlatforms: "Social Media Selection",
@@ -234,7 +235,7 @@ const d = {
234
235
  iconUrl: "Link URL",
235
236
  placeholder: "Click the right panel to add social media icons",
236
237
  addAnother: "Add another social link"
237
- }, x = {
238
+ }, N = {
238
239
  backgroundColor: "Background color",
239
240
  borderColor: "Border color",
240
241
  borderRadius: "Border radius",
@@ -258,7 +259,7 @@ const d = {
258
259
  both: "Both",
259
260
  default: "Default",
260
261
  formatGroup: "Style"
261
- }, R = {
262
+ }, P = {
262
263
  mode: {
263
264
  split: "Split view",
264
265
  code: "Code only",
@@ -292,27 +293,27 @@ const d = {
292
293
  empty: "No variables yet. Click Save in the code panel to scan, or insert one from the catalog above.",
293
294
  systemDefault: "System variables do not need defaults"
294
295
  }
295
- }, A = {
296
- common: d,
297
- samples: c,
298
- inspector: u,
299
- tabs: m,
300
- image: p,
301
- video: b,
302
- columns: g,
303
- emailLayout: h,
304
- text: y,
305
- button: k,
306
- heading: v,
307
- avatar: f,
308
- divider: C,
309
- container: S,
310
- spacer: w,
311
- html: T,
312
- socials: L,
313
- style: x,
314
- htmlEditor: R
315
296
  }, V = {
297
+ common: f,
298
+ samples: v,
299
+ inspector: k,
300
+ tabs: x,
301
+ image: S,
302
+ video: C,
303
+ columns: M,
304
+ emailLayout: T,
305
+ text: w,
306
+ button: R,
307
+ heading: L,
308
+ avatar: A,
309
+ divider: B,
310
+ container: O,
311
+ spacer: F,
312
+ html: E,
313
+ socials: U,
314
+ style: N,
315
+ htmlEditor: P
316
+ }, W = {
316
317
  newDocument: "新建空白文档",
317
318
  useBuiltInTemplates: "使用内置模板",
318
319
  emailBuilder: "Monto 邮件编辑器",
@@ -335,7 +336,7 @@ const d = {
335
336
  undoTooltip: "撤销 (Ctrl/Cmd + Z)",
336
337
  redo: "重做",
337
338
  redoTooltip: "重做 (Ctrl/Cmd + Shift + Z)"
338
- }, U = {
339
+ }, z = {
339
340
  welcomeEmail: "营销模板",
340
341
  oneTimePasscode: "一次性密码 (OTP)",
341
342
  resetPassword: "重置密码",
@@ -345,17 +346,17 @@ const d = {
345
346
  postMetrics: "指标报告",
346
347
  respondToMessage: "回复询问",
347
348
  quickStart: "快速开始"
348
- }, B = {
349
+ }, I = {
349
350
  styles: "样式",
350
351
  inspect: "检查",
351
352
  clickBlockToInspect: "点击一个块进行检查。",
352
353
  blockNotFound: "未找到 id 为 {{id}} 的块。点击一个块以重置。"
353
- }, N = {
354
+ }, D = {
354
355
  edit: "编辑",
355
356
  preview: "预览",
356
357
  htmlOutput: "HTML 输出",
357
358
  jsonOutput: "JSON 输出"
358
- }, M = {
359
+ }, _ = {
359
360
  title: "图片块",
360
361
  name: "图片",
361
362
  sourceUrl: "图片地址",
@@ -371,7 +372,7 @@ const d = {
371
372
  uploading: "上传中...",
372
373
  uploadHandlerNotConfigured: "请配置 imageUploadHandler 以启用本地上传功能",
373
374
  placeholder: "添加图片"
374
- }, I = {
375
+ }, H = {
375
376
  title: "视频块",
376
377
  name: "视频",
377
378
  sourceUrl: "视频地址",
@@ -392,7 +393,7 @@ const d = {
392
393
  loop: "循环播放",
393
394
  muted: "静音",
394
395
  controls: "显示控制条"
395
- }, P = {
396
+ }, $ = {
396
397
  title: "列块",
397
398
  name: "列容器",
398
399
  layout: "分栏",
@@ -410,7 +411,7 @@ const d = {
410
411
  confirmChangeMessage: "切换分栏布局将删除部分列中的数据,此操作不可撤销。确定要继续吗?",
411
412
  cancel: "取消",
412
413
  confirm: "确定"
413
- }, E = {
414
+ }, K = {
414
415
  global: "全局",
415
416
  backdropColor: "背景颜色",
416
417
  canvasColor: "画布颜色",
@@ -419,7 +420,7 @@ const d = {
419
420
  pageWidth: "页面宽度",
420
421
  fontFamily: "字体",
421
422
  textColor: "文字颜色"
422
- }, _ = {
423
+ }, q = {
423
424
  title: "文本块",
424
425
  name: "文本",
425
426
  content: "内容",
@@ -486,7 +487,7 @@ const d = {
486
487
  customVariableNameInvalid: "变量名只能包含英文字母、数字和下划线,且以字母或下划线开头",
487
488
  customVariableNameDuplicate: "变量名已存在"
488
489
  }
489
- }, H = {
490
+ }, J = {
490
491
  title: "按钮块",
491
492
  name: "按钮",
492
493
  text: "文本",
@@ -505,12 +506,12 @@ const d = {
505
506
  stylePill: "胶囊",
506
507
  textColor: "文字颜色",
507
508
  buttonColor: "按钮颜色"
508
- }, z = {
509
+ }, Y = {
509
510
  title: "标题块",
510
511
  name: "标题",
511
512
  content: "内容",
512
513
  level: "级别"
513
- }, D = {
514
+ }, j = {
514
515
  title: "头像块",
515
516
  size: "尺寸",
516
517
  shape: "形状",
@@ -519,23 +520,23 @@ const d = {
519
520
  shapeRounded: "圆角",
520
521
  imageUrl: "图片地址",
521
522
  altText: "替代文本"
522
- }, K = {
523
+ }, G = {
523
524
  title: "分割线块",
524
525
  name: "分割线",
525
526
  color: "颜色",
526
527
  height: "高度"
527
- }, O = {
528
+ }, Z = {
528
529
  title: "容器块",
529
530
  name: "容器"
530
- }, $ = {
531
+ }, X = {
531
532
  title: "间距块",
532
533
  name: "间距",
533
534
  height: "高度"
534
- }, W = {
535
+ }, Q = {
535
536
  title: "HTML块",
536
537
  name: "HTML",
537
538
  content: "内容"
538
- }, F = {
539
+ }, ee = {
539
540
  title: "社媒块",
540
541
  name: "社媒",
541
542
  selectPlatforms: "社媒选择",
@@ -548,7 +549,7 @@ const d = {
548
549
  iconUrl: "跳转链接",
549
550
  placeholder: "点击右侧面板添加社媒图标",
550
551
  addAnother: "新增社媒"
551
- }, q = {
552
+ }, te = {
552
553
  backgroundColor: "背景颜色",
553
554
  borderColor: "边框颜色",
554
555
  borderRadius: "圆角",
@@ -572,7 +573,7 @@ const d = {
572
573
  both: "两者",
573
574
  default: "默认",
574
575
  formatGroup: "样式"
575
- }, J = {
576
+ }, oe = {
576
577
  mode: {
577
578
  split: "左右栏",
578
579
  code: "仅代码",
@@ -606,62 +607,575 @@ const d = {
606
607
  empty: "暂无变量。点击左侧代码区的保存按钮扫描,或从上方变量目录插入。",
607
608
  systemDefault: "系统变量无需默认值"
608
609
  }
609
- }, Y = {
610
- common: V,
611
- samples: U,
612
- inspector: B,
613
- tabs: N,
614
- image: M,
615
- video: I,
616
- columns: P,
617
- emailLayout: E,
618
- text: _,
619
- button: H,
620
- heading: z,
621
- avatar: D,
622
- divider: K,
623
- container: O,
624
- spacer: $,
625
- html: W,
626
- socials: F,
627
- style: q,
628
- htmlEditor: J
629
- }, Z = {
630
- zh: Y,
631
- en: A
610
+ }, ie = {
611
+ common: W,
612
+ samples: z,
613
+ inspector: I,
614
+ tabs: D,
615
+ image: _,
616
+ video: H,
617
+ columns: $,
618
+ emailLayout: K,
619
+ text: q,
620
+ button: J,
621
+ heading: Y,
622
+ avatar: j,
623
+ divider: G,
624
+ container: Z,
625
+ spacer: X,
626
+ html: Q,
627
+ socials: ee,
628
+ style: te,
629
+ htmlEditor: oe
630
+ }, ae = {
631
+ zh: ie,
632
+ en: V
632
633
  };
633
- function Q(a, e, o) {
634
- const l = o ?? j(), s = a.split(".");
635
- let n = Z[l];
636
- for (const t of s)
637
- if (n && typeof n == "object" && t in n)
638
- n = n[t];
634
+ function ge(i, t, r) {
635
+ const l = r ?? ne(), g = i.split(".");
636
+ let n = ae[l];
637
+ for (const o of g)
638
+ if (n && typeof n == "object" && o in n)
639
+ n = n[o];
639
640
  else
640
- return a;
641
- return typeof n != "string" ? a : e ? n.replace(/\{\{(\w+)\}\}/g, (t, i) => {
642
- var r;
643
- return ((r = e[i]) == null ? void 0 : r.toString()) ?? t;
641
+ return i;
642
+ return typeof n != "string" ? i : t ? n.replace(/\{\{(\w+)\}\}/g, (o, a) => {
643
+ var c;
644
+ return ((c = t[a]) == null ? void 0 : c.toString()) ?? o;
644
645
  }) : n;
645
646
  }
646
- function j() {
647
+ function ne() {
647
648
  if (typeof window > "u")
648
649
  return "en";
649
- const a = localStorage.getItem("app-language");
650
- return a && (a === "zh" || a === "en") ? a : navigator.language.toLowerCase().startsWith("zh") ? "zh" : "en";
650
+ const i = localStorage.getItem("app-language");
651
+ return i && (i === "zh" || i === "en") ? i : navigator.language.toLowerCase().startsWith("zh") ? "zh" : "en";
651
652
  }
652
- function ee(a) {
653
- typeof window < "u" && localStorage.setItem("app-language", a);
653
+ function ye(i) {
654
+ typeof window < "u" && localStorage.setItem("app-language", i);
654
655
  }
655
- function te(a) {
656
- let e = a, o = 0;
657
- for (; e && typeof e == "object" && "default" in e && o < 5; ) {
658
- const l = e.default;
659
- if (!l || l === e) break;
660
- e = l, o += 1;
656
+ const re = "#212443", u = "#1E40AF", p = "#1F8466", m = "#E81212", d = "#F6DC9F", le = "#6C0E7C", se = "#CC996C", de = '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"', ce = 'ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace', e = b({
657
+ palette: {
658
+ background: {
659
+ default: "#f2f5f7"
660
+ },
661
+ text: {
662
+ primary: "#1F1F21",
663
+ secondary: "#4F4F4F"
664
+ }
665
+ },
666
+ typography: {
667
+ fontFamily: de
668
+ }
669
+ }), he = b(e, {
670
+ palette: {
671
+ brand: {
672
+ navy: re,
673
+ blue: u,
674
+ red: m,
675
+ green: p,
676
+ yellow: d,
677
+ purple: le,
678
+ brown: se
679
+ },
680
+ success: {
681
+ main: p,
682
+ light: s(p, 0.15),
683
+ dark: h(p, 0.15)
684
+ },
685
+ error: {
686
+ main: m,
687
+ light: s(m, 0.15),
688
+ dark: h(m, 0.15)
689
+ },
690
+ cadet: {
691
+ 100: "#F9FAFB",
692
+ 200: "#F2F5F7",
693
+ 300: "#DCE4EA",
694
+ 400: "#A8BBCA",
695
+ 500: "#6A8BA4"
696
+ },
697
+ highlight: {
698
+ 100: s(d, 0.8),
699
+ 200: s(d, 0.6),
700
+ 300: s(d, 0.4),
701
+ 400: s(d, 0.2),
702
+ 500: d
703
+ },
704
+ info: {
705
+ main: u
706
+ },
707
+ primary: {
708
+ main: u
709
+ }
710
+ },
711
+ components: {
712
+ MuiCssBaseline: {
713
+ styleOverrides: `
714
+ address {
715
+ font-style: normal;
716
+ }
717
+ fieldset {
718
+ border: none;
719
+ padding: 0;
720
+ }
721
+ pre {
722
+ font-family: ${ce}
723
+ white-space: pre-wrap;
724
+ font-size: 12px;
725
+ }
726
+ `
727
+ },
728
+ MuiAlert: {
729
+ styleOverrides: {
730
+ root: {
731
+ fontSize: e.typography.pxToRem(14)
732
+ },
733
+ action: {
734
+ paddingTop: 0,
735
+ marginRight: 0
736
+ },
737
+ filledSuccess: {
738
+ backgroundColor: p
739
+ }
740
+ }
741
+ },
742
+ MuiStepLabel: {
743
+ styleOverrides: {
744
+ label: {
745
+ fontWeight: e.typography.fontWeightMedium
746
+ }
747
+ }
748
+ },
749
+ MuiDialog: {
750
+ defaultProps: {
751
+ fullWidth: !0
752
+ },
753
+ styleOverrides: {
754
+ paper: {
755
+ borderRadius: e.spacing(1)
756
+ }
757
+ }
758
+ },
759
+ MuiDialogContent: {
760
+ styleOverrides: {
761
+ root: {
762
+ paddingTop: e.spacing(1),
763
+ paddingBottom: e.spacing(2)
764
+ }
765
+ }
766
+ },
767
+ MuiDialogTitle: {
768
+ defaultProps: {
769
+ variant: "h4"
770
+ },
771
+ styleOverrides: {
772
+ root: {
773
+ paddingTop: e.spacing(3),
774
+ paddingBottom: e.spacing(1)
775
+ }
776
+ }
777
+ },
778
+ MuiDialogActions: {
779
+ styleOverrides: {
780
+ root: {
781
+ borderTop: "1px solid",
782
+ borderTopColor: e.palette.divider,
783
+ marginTop: e.spacing(2.5),
784
+ padding: `${e.spacing(1.5)} ${e.spacing(3)}`
785
+ }
786
+ }
787
+ },
788
+ MuiTableCell: {
789
+ styleOverrides: {
790
+ root: {
791
+ ...e.typography.body2,
792
+ borderColor: e.palette.grey[200]
793
+ },
794
+ head: {
795
+ ...e.typography.overline,
796
+ fontWeight: e.typography.fontWeightMedium,
797
+ letterSpacing: "0.075em",
798
+ color: e.palette.text.secondary
799
+ }
800
+ }
801
+ },
802
+ MuiTableRow: {
803
+ styleOverrides: {
804
+ root: {
805
+ "&:last-child td": {
806
+ borderBottom: 0
807
+ }
808
+ }
809
+ }
810
+ },
811
+ MuiAvatar: {
812
+ styleOverrides: {
813
+ root: {
814
+ textTransform: "uppercase",
815
+ fontSize: e.typography.pxToRem(14)
816
+ }
817
+ }
818
+ },
819
+ MuiChip: {
820
+ styleOverrides: {
821
+ root: {
822
+ "&.MuiChip-filledError, &.MuiChip-filledSuccess": {
823
+ fill: e.palette.primary.contrastText
824
+ }
825
+ },
826
+ sizeSmall: {
827
+ borderRadius: e.spacing(0.5),
828
+ fontSize: 12
829
+ },
830
+ iconSmall: {
831
+ fontSize: 14,
832
+ marginLeft: e.spacing(1)
833
+ },
834
+ colorSecondary: {
835
+ borderColor: e.palette.grey[400],
836
+ color: e.palette.text.secondary
837
+ },
838
+ label: {
839
+ fontWeight: e.typography.fontWeightMedium
840
+ }
841
+ }
842
+ },
843
+ MuiDrawer: {
844
+ defaultProps: {
845
+ PaperProps: {
846
+ elevation: 2
847
+ }
848
+ }
849
+ },
850
+ MuiTooltip: {
851
+ styleOverrides: {
852
+ tooltip: {
853
+ // fontSize: BASE_THEME.typography.pxToRem(12),
854
+ backgroundColor: y(e.palette.text.primary, 0.9)
855
+ },
856
+ arrow: {
857
+ color: y(e.palette.text.primary, 0.9)
858
+ }
859
+ }
860
+ },
861
+ MuiSlider: {
862
+ styleOverrides: {
863
+ root: {
864
+ height: 1
865
+ },
866
+ track: {
867
+ height: 1,
868
+ border: "none"
869
+ },
870
+ rail: {
871
+ height: 1,
872
+ backgroundColor: e.palette.grey[500]
873
+ },
874
+ mark: {
875
+ backgroundColor: e.palette.grey[500]
876
+ },
877
+ markActive: {
878
+ height: 0
879
+ },
880
+ thumb: {
881
+ height: 16,
882
+ width: 16,
883
+ cursor: "col-resize",
884
+ "&:hover, &.Mui-active, &.Mui-focusVisible": {
885
+ boxShadow: `0 0 0 4px ${y(u, 0.2)}`
886
+ },
887
+ "&:before": {
888
+ display: "none"
889
+ }
890
+ }
891
+ }
892
+ },
893
+ MuiPaper: {
894
+ defaultProps: {
895
+ elevation: 2,
896
+ square: !0
897
+ }
898
+ },
899
+ MuiButtonBase: {
900
+ defaultProps: {
901
+ // disableTouchRipple: true,
902
+ focusRipple: !0
903
+ },
904
+ styleOverrides: {
905
+ root: {
906
+ "&.MuiButton-containedSecondary.Mui-disabled": {
907
+ backgroundColor: e.palette.grey[100]
908
+ }
909
+ }
910
+ }
911
+ },
912
+ MuiButtonGroup: {
913
+ defaultProps: {
914
+ disableElevation: !0
915
+ }
916
+ },
917
+ MuiIconButton: {
918
+ styleOverrides: {
919
+ edgeStart: {
920
+ marginLeft: e.spacing(-1)
921
+ },
922
+ colorSecondary: {
923
+ color: e.palette.grey[500]
924
+ }
925
+ }
926
+ },
927
+ MuiButton: {
928
+ defaultProps: {
929
+ disableElevation: !0
930
+ },
931
+ styleOverrides: {
932
+ root: {
933
+ borderRadius: 8
934
+ },
935
+ textPrimary: {
936
+ color: e.palette.text.primary
937
+ },
938
+ textSecondary: {
939
+ color: e.palette.text.secondary
940
+ },
941
+ outlinedPrimary: {
942
+ // borderColor: BASE_THEME.palette.grey[300],
943
+ // color: BASE_THEME.palette.text.primary,
944
+ // '&:hover, &:active, &:focus': {
945
+ // borderColor: BASE_THEME.palette.grey[500],
946
+ // color: BASE_THEME.palette.text.primary,
947
+ // },
948
+ },
949
+ containedSecondary: {
950
+ backgroundColor: e.palette.common.white,
951
+ border: `1px solid ${e.palette.grey[300]}`,
952
+ color: e.palette.text.primary,
953
+ "&:hover, &:active, &:focus": {
954
+ backgroundColor: e.palette.common.white,
955
+ borderColor: e.palette.grey[500],
956
+ color: e.palette.text.primary
957
+ }
958
+ }
959
+ }
960
+ },
961
+ MuiToggleButton: {
962
+ styleOverrides: {
963
+ root: {
964
+ paddingLeft: e.spacing(1.5),
965
+ paddingRight: e.spacing(1.5)
966
+ }
967
+ }
968
+ },
969
+ MuiInputBase: {
970
+ styleOverrides: {
971
+ root: {
972
+ "&:not(.Mui-disabled, .Mui-error):before": {
973
+ borderBottom: `1px solid ${e.palette.grey[400]}`
974
+ },
975
+ "&:hover:not(.Mui-disabled, .Mui-error):before": {
976
+ borderBottom: `1px solid ${e.palette.grey[500]} !important`
977
+ },
978
+ "&:after": {
979
+ borderBottom: `1px solid ${e.palette.text.primary} !important`
980
+ },
981
+ "&.MuiOutlinedInput-root:not(.Mui-error)": {
982
+ "& fieldset": {
983
+ borderColor: e.palette.grey[300],
984
+ transition: "border-color 0.2s"
985
+ }
986
+ },
987
+ "&.MuiOutlinedInput-root:not(.Mui-disabled, .Mui-error)": {
988
+ "&:hover fieldset": {
989
+ borderColor: e.palette.grey[400]
990
+ },
991
+ "&.Mui-focused fieldset": {
992
+ borderColor: e.palette.text.secondary,
993
+ borderWidth: 1
994
+ }
995
+ }
996
+ },
997
+ input: {
998
+ fontSize: e.typography.pxToRem(14),
999
+ "&.Mui-disabled": {
1000
+ WebkitTextFillColor: "inherit",
1001
+ color: e.palette.text.secondary
1002
+ }
1003
+ },
1004
+ inputSizeSmall: {}
1005
+ }
1006
+ },
1007
+ MuiOutlinedInput: {
1008
+ styleOverrides: {
1009
+ notchedOutline: {
1010
+ "& legend": {
1011
+ fontSize: "0.85em",
1012
+ maxWidth: "100%"
1013
+ }
1014
+ }
1015
+ }
1016
+ },
1017
+ MuiInputAdornment: {
1018
+ styleOverrides: {
1019
+ root: {
1020
+ "& .MuiTypography-root": {
1021
+ fontSize: e.typography.pxToRem(14),
1022
+ color: e.palette.text.secondary
1023
+ }
1024
+ }
1025
+ }
1026
+ },
1027
+ MuiInputLabel: {
1028
+ defaultProps: {
1029
+ shrink: !0
1030
+ },
1031
+ styleOverrides: {
1032
+ shrink: {
1033
+ transform: "scale(0.85)",
1034
+ fontWeight: e.typography.fontWeightMedium,
1035
+ "&.Mui-focused": {
1036
+ color: e.palette.text.primary
1037
+ },
1038
+ "&.MuiInputLabel-standard": {
1039
+ transform: "translate(0, -4px) scale(0.85)",
1040
+ color: "#4F4F4F"
1041
+ },
1042
+ "&.MuiInputLabel-outlined": {
1043
+ transform: "translate(15px, -8px) scale(0.85)"
1044
+ }
1045
+ }
1046
+ }
1047
+ },
1048
+ MuiTabs: {
1049
+ defaultProps: {
1050
+ variant: "scrollable"
1051
+ },
1052
+ styleOverrides: {
1053
+ indicator: {
1054
+ height: 1,
1055
+ backgroundColor: e.palette.text.primary
1056
+ }
1057
+ }
1058
+ },
1059
+ MuiTab: {
1060
+ styleOverrides: {
1061
+ root: {
1062
+ textTransform: "none",
1063
+ minWidth: e.spacing(2),
1064
+ paddingLeft: e.spacing(1.5),
1065
+ paddingRight: e.spacing(1.5),
1066
+ fontSize: e.typography.pxToRem(14),
1067
+ fontFamily: e.typography.fontFamily,
1068
+ lineHeight: 1.5,
1069
+ fontWeight: e.typography.fontWeightMedium,
1070
+ transition: "color 0.2s",
1071
+ "&.Mui-selected": {
1072
+ color: e.palette.text.primary
1073
+ },
1074
+ "&:hover": {
1075
+ color: e.palette.text.primary
1076
+ }
1077
+ }
1078
+ }
1079
+ },
1080
+ MuiCard: {
1081
+ styleOverrides: {
1082
+ root: {
1083
+ borderRadius: 8
1084
+ }
1085
+ }
1086
+ },
1087
+ MuiCardHeader: {
1088
+ styleOverrides: {
1089
+ title: {
1090
+ fontSize: e.typography.pxToRem(18),
1091
+ fontWeight: e.typography.fontWeightMedium
1092
+ }
1093
+ }
1094
+ }
1095
+ },
1096
+ typography: {
1097
+ fontFamily: e.typography.fontFamily,
1098
+ h1: {
1099
+ fontFamily: e.typography.fontFamily,
1100
+ fontSize: e.typography.pxToRem(40),
1101
+ lineHeight: 1.2,
1102
+ letterSpacing: "-0.02em",
1103
+ fontWeight: e.typography.fontWeightMedium
1104
+ },
1105
+ h2: {
1106
+ fontFamily: e.typography.fontFamily,
1107
+ fontSize: e.typography.pxToRem(32),
1108
+ lineHeight: 1.2,
1109
+ letterSpacing: "-0.02em",
1110
+ fontWeight: e.typography.fontWeightMedium
1111
+ },
1112
+ h3: {
1113
+ fontFamily: e.typography.fontFamily,
1114
+ fontSize: e.typography.pxToRem(24),
1115
+ lineHeight: 1.5,
1116
+ letterSpacing: "-0.01em",
1117
+ fontWeight: e.typography.fontWeightMedium
1118
+ },
1119
+ h4: {
1120
+ fontFamily: e.typography.fontFamily,
1121
+ fontSize: e.typography.pxToRem(20),
1122
+ lineHeight: 1.5,
1123
+ letterSpacing: "-0.01em",
1124
+ fontWeight: e.typography.fontWeightMedium
1125
+ },
1126
+ h5: {
1127
+ fontFamily: e.typography.fontFamily,
1128
+ fontSize: e.typography.pxToRem(18),
1129
+ lineHeight: 1.5,
1130
+ letterSpacing: "-0.01em",
1131
+ fontWeight: e.typography.fontWeightMedium
1132
+ },
1133
+ h6: {
1134
+ fontFamily: e.typography.fontFamily,
1135
+ fontSize: e.typography.pxToRem(16),
1136
+ lineHeight: 1.5,
1137
+ letterSpacing: "-0.005em",
1138
+ fontWeight: e.typography.fontWeightMedium
1139
+ },
1140
+ body1: {
1141
+ fontSize: e.typography.pxToRem(14)
1142
+ },
1143
+ body2: {
1144
+ fontSize: e.typography.pxToRem(12)
1145
+ },
1146
+ overline: {
1147
+ fontWeight: e.typography.fontWeightMedium,
1148
+ letterSpacing: "0.05em"
1149
+ },
1150
+ button: {
1151
+ textTransform: "none",
1152
+ fontWeight: e.typography.fontWeightMedium,
1153
+ lineHeight: 1.5
1154
+ },
1155
+ caption: {
1156
+ letterSpacing: 0,
1157
+ lineHeight: 1.5
1158
+ }
1159
+ },
1160
+ shadows: [
1161
+ "none",
1162
+ "0px 4px 15px rgba(33, 36, 67, 0.04), 0px 0px 2px rgba(33, 36, 67, 0.04), 0px 0px 1px rgba(33, 36, 67, 0.04)",
1163
+ "0px 10px 20px rgba(33, 36, 67, 0.04), 0px 2px 6px rgba(33, 36, 67, 0.04), 0px 0px 1px rgba(33, 36, 67, 0.04)",
1164
+ "0px 16px 24px rgba(33, 36, 67, 0.05), 0px 2px 6px rgba(33, 36, 67, 0.05), 0px 0px 1px rgba(33, 36, 67, 0.05)",
1165
+ "0px 24px 32px rgba(33, 36, 67, 0.06), 0px 16px 24px rgba(33, 36, 67, 0.06), 0px 4px 8px rgba(33, 36, 67, 0.06)",
1166
+ ...Array(20).fill("none")
1167
+ ]
1168
+ });
1169
+ function be(i) {
1170
+ let t = i, r = 0;
1171
+ for (; t && typeof t == "object" && "default" in t && r < 5; ) {
1172
+ const l = t.default;
1173
+ if (!l || l === t) break;
1174
+ t = l, r += 1;
661
1175
  }
662
- return typeof e == "function" || typeof e == "string" || e && typeof e == "object" && "$$typeof" in e ? e : "span";
1176
+ return typeof t == "function" || typeof t == "string" || t && typeof t == "object" && "$$typeof" in t ? t : "span";
663
1177
  }
664
- const G = /^[A-Za-z_][A-Za-z0-9_]*$/, X = [
1178
+ const pe = /^[A-Za-z_][A-Za-z0-9_]*$/, ue = [
665
1179
  {
666
1180
  id: "contacts",
667
1181
  items: [
@@ -711,31 +1225,32 @@ const G = /^[A-Za-z_][A-Za-z0-9_]*$/, X = [
711
1225
  items: [{ name: "unsubscribe_link", labelKey: "text.variables.unsubscribeLink", kind: "user" }]
712
1226
  }
713
1227
  ];
714
- function ae(a) {
715
- const e = a.baseGroups ?? X, o = /* @__PURE__ */ new Set(), l = /* @__PURE__ */ new Set();
716
- for (const t of e)
717
- for (const i of t.items)
718
- i.kind === "user" ? o.add(i.name) : l.add(i.name);
719
- const s = Array.isArray(a.contactAttributes) ? a.contactAttributes : [];
720
- for (const t of s) {
721
- const i = t == null ? void 0 : t.Enable;
722
- if (i === 0 || i === !1) continue;
723
- const r = typeof (t == null ? void 0 : t.AttrField) == "string" ? t.AttrField.trim() : "";
724
- r && o.add(r);
1228
+ function fe(i) {
1229
+ const t = i.baseGroups ?? ue, r = /* @__PURE__ */ new Set(), l = /* @__PURE__ */ new Set();
1230
+ for (const o of t)
1231
+ for (const a of o.items)
1232
+ a.kind === "user" ? r.add(a.name) : l.add(a.name);
1233
+ const g = Array.isArray(i.contactAttributes) ? i.contactAttributes : [];
1234
+ for (const o of g) {
1235
+ const a = o == null ? void 0 : o.Enable;
1236
+ if (a === 0 || a === !1) continue;
1237
+ const c = typeof (o == null ? void 0 : o.AttrField) == "string" ? o.AttrField.trim() : "";
1238
+ c && r.add(c);
725
1239
  }
726
- const n = Array.isArray(a.customVariables) ? a.customVariables : [];
727
- for (const t of n) {
728
- const i = typeof (t == null ? void 0 : t.name) == "string" ? t.name.trim() : "";
729
- i && G.test(i) && o.add(i);
1240
+ const n = Array.isArray(i.customVariables) ? i.customVariables : [];
1241
+ for (const o of n) {
1242
+ const a = typeof (o == null ? void 0 : o.name) == "string" ? o.name.trim() : "";
1243
+ a && pe.test(a) && r.add(a);
730
1244
  }
731
- return { allowedUser: o, allowedBuiltin: l };
1245
+ return { allowedUser: r, allowedBuiltin: l };
732
1246
  }
733
1247
  export {
734
- X as B,
735
- G as V,
736
- ae as b,
737
- j as g,
738
- te as r,
739
- ee as s,
740
- Q as t
1248
+ ue as B,
1249
+ he as T,
1250
+ pe as V,
1251
+ fe as b,
1252
+ ne as g,
1253
+ be as r,
1254
+ ye as s,
1255
+ ge as t
741
1256
  };