tzmail 1.0.0

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 (56) hide show
  1. package/README.md +5091 -0
  2. package/dist/core/enums/template-part.enum.d.ts +7 -0
  3. package/dist/core/enums/template-part.enum.d.ts.map +1 -0
  4. package/dist/core/enums/template-part.enum.js +10 -0
  5. package/dist/core/enums/theme.enum.d.ts +8 -0
  6. package/dist/core/enums/theme.enum.d.ts.map +1 -0
  7. package/dist/core/enums/theme.enum.js +11 -0
  8. package/dist/core/interfaces/email.interface.d.ts +32 -0
  9. package/dist/core/interfaces/email.interface.d.ts.map +1 -0
  10. package/dist/core/interfaces/email.interface.js +2 -0
  11. package/dist/core/interfaces/template.interface.d.ts +56 -0
  12. package/dist/core/interfaces/template.interface.d.ts.map +1 -0
  13. package/dist/core/interfaces/template.interface.js +2 -0
  14. package/dist/factories/email-factory.d.ts +34 -0
  15. package/dist/factories/email-factory.d.ts.map +1 -0
  16. package/dist/factories/email-factory.js +52 -0
  17. package/dist/factories/template-factory.d.ts +15 -0
  18. package/dist/factories/template-factory.d.ts.map +1 -0
  19. package/dist/factories/template-factory.js +96 -0
  20. package/dist/index.d.ts +15 -0
  21. package/dist/index.d.ts.map +1 -0
  22. package/dist/index.js +265 -0
  23. package/dist/services/attachment.service.d.ts +48 -0
  24. package/dist/services/attachment.service.d.ts.map +1 -0
  25. package/dist/services/attachment.service.js +93 -0
  26. package/dist/services/email.service.d.ts +31 -0
  27. package/dist/services/email.service.d.ts.map +1 -0
  28. package/dist/services/email.service.js +58 -0
  29. package/dist/services/template.service.d.ts +180 -0
  30. package/dist/services/template.service.d.ts.map +1 -0
  31. package/dist/services/template.service.js +507 -0
  32. package/dist/templates/base/template-builder.d.ts +23 -0
  33. package/dist/templates/base/template-builder.d.ts.map +1 -0
  34. package/dist/templates/base/template-builder.js +676 -0
  35. package/dist/templates/themes/corporate.theme.d.ts +65 -0
  36. package/dist/templates/themes/corporate.theme.d.ts.map +1 -0
  37. package/dist/templates/themes/corporate.theme.js +109 -0
  38. package/dist/templates/themes/minimal.theme.d.ts +70 -0
  39. package/dist/templates/themes/minimal.theme.d.ts.map +1 -0
  40. package/dist/templates/themes/minimal.theme.js +114 -0
  41. package/dist/templates/themes/modern.theme.d.ts +38 -0
  42. package/dist/templates/themes/modern.theme.d.ts.map +1 -0
  43. package/dist/templates/themes/modern.theme.js +81 -0
  44. package/dist/templates/themes/monokai.theme.d.ts +29 -0
  45. package/dist/templates/themes/monokai.theme.d.ts.map +1 -0
  46. package/dist/templates/themes/monokai.theme.js +73 -0
  47. package/dist/templates/themes/system.theme.d.ts +50 -0
  48. package/dist/templates/themes/system.theme.d.ts.map +1 -0
  49. package/dist/templates/themes/system.theme.js +54 -0
  50. package/dist/templates/themes/theme.interface.d.ts +42 -0
  51. package/dist/templates/themes/theme.interface.d.ts.map +1 -0
  52. package/dist/templates/themes/theme.interface.js +2 -0
  53. package/dist/tests/template.service.test.d.ts +1 -0
  54. package/dist/tests/template.service.test.d.ts.map +1 -0
  55. package/dist/tests/template.service.test.js +1 -0
  56. package/package.json +46 -0
@@ -0,0 +1,65 @@
1
+ import { ThemeType } from '../../core/enums/theme.enum';
2
+ import { ITheme, IThemeColors, ITypography, ISpacing } from './theme.interface';
3
+ export declare class CorporateTheme implements ITheme {
4
+ id: ThemeType;
5
+ name: string;
6
+ light: IThemeColors;
7
+ dark: IThemeColors;
8
+ typography: ITypography;
9
+ spacing: ISpacing;
10
+ corporateColors: {
11
+ gold: string;
12
+ silver: string;
13
+ bronze: string;
14
+ navy: string;
15
+ charcoal: string;
16
+ ivory: string;
17
+ };
18
+ borderStyle: {
19
+ radius: {
20
+ small: string;
21
+ medium: string;
22
+ large: string;
23
+ pill: string;
24
+ };
25
+ width: {
26
+ thin: string;
27
+ medium: string;
28
+ thick: string;
29
+ };
30
+ style: string;
31
+ };
32
+ elevation: {
33
+ shadow: string;
34
+ card: string;
35
+ modal: string;
36
+ hover: string;
37
+ };
38
+ branding: {
39
+ logoSize: {
40
+ small: string;
41
+ medium: string;
42
+ large: string;
43
+ };
44
+ letterSpacing: {
45
+ tight: string;
46
+ normal: string;
47
+ wide: string;
48
+ wider: string;
49
+ };
50
+ textTransform: {
51
+ uppercase: string;
52
+ lowercase: string;
53
+ capitalize: string;
54
+ normal: string;
55
+ };
56
+ };
57
+ layout: {
58
+ maxWidth: string;
59
+ contentWidth: string;
60
+ sidebarWidth: string;
61
+ headerHeight: string;
62
+ footerHeight: string;
63
+ };
64
+ }
65
+ //# sourceMappingURL=corporate.theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"corporate.theme.d.ts","sourceRoot":"","sources":["../../../src/templates/themes/corporate.theme.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEhF,qBAAa,cAAe,YAAW,MAAM;IAC3C,EAAE,YAAuB;IACzB,IAAI,SAAe;IAEnB,KAAK,EAAE,YAAY,CAUjB;IAEF,IAAI,EAAE,YAAY,CAUhB;IAEF,UAAU,EAAE,WAAW,CAarB;IAEF,OAAO,EAAE,QAAQ,CAMf;IAGF,eAAe;;;;;;;MAOb;IAGF,WAAW;;;;;;;;;;;;;MAaT;IAEF,SAAS;;;;;MAKP;IAEF,QAAQ;;;;;;;;;;;;;;;;;;MAkBN;IAEF,MAAM;;;;;;MAMJ;CACH"}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CorporateTheme = void 0;
4
+ const theme_enum_1 = require("../../core/enums/theme.enum");
5
+ class CorporateTheme {
6
+ constructor() {
7
+ this.id = theme_enum_1.ThemeType.CORPORATE;
8
+ this.name = 'Corporate';
9
+ this.light = {
10
+ primary: '#1e40af',
11
+ secondary: '#334155',
12
+ background: '#ffffff',
13
+ text: '#0f172a',
14
+ textMuted: '#475569',
15
+ border: '#e2e8f0',
16
+ success: '#059669',
17
+ error: '#dc2626',
18
+ warning: '#d97706'
19
+ };
20
+ this.dark = {
21
+ primary: '#3b82f6',
22
+ secondary: '#64748b',
23
+ background: '#0f172a',
24
+ text: '#f1f5f9',
25
+ textMuted: '#94a3b8',
26
+ border: '#1e293b',
27
+ success: '#10b981',
28
+ error: '#ef4444',
29
+ warning: '#f59e0b'
30
+ };
31
+ this.typography = {
32
+ fontFamily: '"Playfair Display", "Georgia", "Times New Roman", serif',
33
+ fontSizes: {
34
+ small: '12px',
35
+ medium: '14px',
36
+ large: '16px',
37
+ xlarge: '24px'
38
+ },
39
+ fontWeights: {
40
+ normal: 400,
41
+ medium: 500,
42
+ bold: 700
43
+ }
44
+ };
45
+ this.spacing = {
46
+ xs: '4px',
47
+ sm: '8px',
48
+ md: '16px',
49
+ lg: '24px',
50
+ xl: '32px'
51
+ };
52
+ // cores adicionais
53
+ this.corporateColors = {
54
+ gold: '#d4af37',
55
+ silver: '#c0c0c0',
56
+ bronze: '#cd7f32',
57
+ navy: '#0a2540',
58
+ charcoal: '#36454f',
59
+ ivory: '#fffff0'
60
+ };
61
+ this.borderStyle = {
62
+ radius: {
63
+ small: '2px',
64
+ medium: '4px',
65
+ large: '8px',
66
+ pill: '20px'
67
+ },
68
+ width: {
69
+ thin: '1px',
70
+ medium: '2px',
71
+ thick: '3px'
72
+ },
73
+ style: 'solid'
74
+ };
75
+ this.elevation = {
76
+ shadow: '0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.04)',
77
+ card: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',
78
+ modal: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.02)',
79
+ hover: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)'
80
+ };
81
+ this.branding = {
82
+ logoSize: {
83
+ small: '32px',
84
+ medium: '48px',
85
+ large: '64px'
86
+ },
87
+ letterSpacing: {
88
+ tight: '-0.5px',
89
+ normal: '0px',
90
+ wide: '0.5px',
91
+ wider: '1px'
92
+ },
93
+ textTransform: {
94
+ uppercase: 'uppercase',
95
+ lowercase: 'lowercase',
96
+ capitalize: 'capitalize',
97
+ normal: 'none'
98
+ }
99
+ };
100
+ this.layout = {
101
+ maxWidth: '600px',
102
+ contentWidth: '560px',
103
+ sidebarWidth: '200px',
104
+ headerHeight: '80px',
105
+ footerHeight: '120px'
106
+ };
107
+ }
108
+ }
109
+ exports.CorporateTheme = CorporateTheme;
@@ -0,0 +1,70 @@
1
+ import { ThemeType } from '../../core/enums/theme.enum';
2
+ import { ITheme, IThemeColors, ITypography, ISpacing } from './theme.interface';
3
+ export declare class MinimalTheme implements ITheme {
4
+ id: ThemeType;
5
+ name: string;
6
+ light: IThemeColors;
7
+ dark: IThemeColors;
8
+ typography: ITypography;
9
+ spacing: ISpacing;
10
+ minimalColors: {
11
+ white: string;
12
+ black: string;
13
+ gray100: string;
14
+ gray200: string;
15
+ gray300: string;
16
+ gray400: string;
17
+ gray500: string;
18
+ gray600: string;
19
+ gray700: string;
20
+ gray800: string;
21
+ gray900: string;
22
+ };
23
+ borderStyle: {
24
+ radius: {
25
+ none: string;
26
+ small: string;
27
+ medium: string;
28
+ large: string;
29
+ full: string;
30
+ };
31
+ width: {
32
+ thin: string;
33
+ medium: string;
34
+ };
35
+ style: string;
36
+ };
37
+ effects: {
38
+ shadow: string;
39
+ transition: string;
40
+ opacity: {
41
+ hover: string;
42
+ disabled: string;
43
+ };
44
+ };
45
+ layout: {
46
+ maxWidth: string;
47
+ contentWidth: string;
48
+ spacingMultiplier: number;
49
+ lineHeight: number;
50
+ paragraphSpacing: string;
51
+ };
52
+ designSystem: {
53
+ grid: {
54
+ columns: number;
55
+ gutter: string;
56
+ margin: string;
57
+ };
58
+ breakpoints: {
59
+ mobile: string;
60
+ tablet: string;
61
+ desktop: string;
62
+ };
63
+ zIndex: {
64
+ base: number;
65
+ overlay: number;
66
+ modal: number;
67
+ };
68
+ };
69
+ }
70
+ //# sourceMappingURL=minimal.theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimal.theme.d.ts","sourceRoot":"","sources":["../../../src/templates/themes/minimal.theme.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEhF,qBAAa,YAAa,YAAW,MAAM;IACzC,EAAE,YAAqB;IACvB,IAAI,SAAa;IAEjB,KAAK,EAAE,YAAY,CAUjB;IAEF,IAAI,EAAE,YAAY,CAUhB;IAEF,UAAU,EAAE,WAAW,CAarB;IAEF,OAAO,EAAE,QAAQ,CAMf;IAGF,aAAa;;;;;;;;;;;;MAYX;IAEF,WAAW;;;;;;;;;;;;;MAaT;IAEF,OAAO;;;;;;;MAOL;IAEF,MAAM;;;;;;MAMJ;IAEF,YAAY;;;;;;;;;;;;;;;;MAgBV;CACH"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MinimalTheme = void 0;
4
+ const theme_enum_1 = require("../../core/enums/theme.enum");
5
+ class MinimalTheme {
6
+ constructor() {
7
+ this.id = theme_enum_1.ThemeType.MINIMAL;
8
+ this.name = 'Minimal';
9
+ this.light = {
10
+ primary: '#000000',
11
+ secondary: '#404040',
12
+ background: '#ffffff',
13
+ text: '#111111',
14
+ textMuted: '#666666',
15
+ border: '#e5e5e5',
16
+ success: '#22c55e',
17
+ error: '#ef4444',
18
+ warning: '#f97316'
19
+ };
20
+ this.dark = {
21
+ primary: '#ffffff',
22
+ secondary: '#a3a3a3',
23
+ background: '#000000',
24
+ text: '#ffffff',
25
+ textMuted: '#737373',
26
+ border: '#262626',
27
+ success: '#22c55e',
28
+ error: '#ef4444',
29
+ warning: '#f97316'
30
+ };
31
+ this.typography = {
32
+ fontFamily: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif',
33
+ fontSizes: {
34
+ small: '13px',
35
+ medium: '15px',
36
+ large: '17px',
37
+ xlarge: '21px'
38
+ },
39
+ fontWeights: {
40
+ normal: 400,
41
+ medium: 500,
42
+ bold: 600
43
+ }
44
+ };
45
+ this.spacing = {
46
+ xs: '8px',
47
+ sm: '16px',
48
+ md: '24px',
49
+ lg: '32px',
50
+ xl: '48px'
51
+ };
52
+ // cores minimalistas
53
+ this.minimalColors = {
54
+ white: '#ffffff',
55
+ black: '#000000',
56
+ gray100: '#f5f5f5',
57
+ gray200: '#e5e5e5',
58
+ gray300: '#d4d4d4',
59
+ gray400: '#a3a3a3',
60
+ gray500: '#737373',
61
+ gray600: '#525252',
62
+ gray700: '#404040',
63
+ gray800: '#262626',
64
+ gray900: '#171717'
65
+ };
66
+ this.borderStyle = {
67
+ radius: {
68
+ none: '0px',
69
+ small: '2px',
70
+ medium: '4px',
71
+ large: '8px',
72
+ full: '9999px'
73
+ },
74
+ width: {
75
+ thin: '1px',
76
+ medium: '2px'
77
+ },
78
+ style: 'solid'
79
+ };
80
+ this.effects = {
81
+ shadow: 'none',
82
+ transition: 'all 0.2s ease',
83
+ opacity: {
84
+ hover: '0.7',
85
+ disabled: '0.5'
86
+ }
87
+ };
88
+ this.layout = {
89
+ maxWidth: '640px',
90
+ contentWidth: '560px',
91
+ spacingMultiplier: 1.5,
92
+ lineHeight: 1.6,
93
+ paragraphSpacing: '1.5em'
94
+ };
95
+ this.designSystem = {
96
+ grid: {
97
+ columns: 12,
98
+ gutter: '20px',
99
+ margin: '20px'
100
+ },
101
+ breakpoints: {
102
+ mobile: '480px',
103
+ tablet: '768px',
104
+ desktop: '1024px'
105
+ },
106
+ zIndex: {
107
+ base: 1,
108
+ overlay: 10,
109
+ modal: 100
110
+ }
111
+ };
112
+ }
113
+ }
114
+ exports.MinimalTheme = MinimalTheme;
@@ -0,0 +1,38 @@
1
+ import { ThemeType } from '../../core/enums/theme.enum';
2
+ import { ITheme, IThemeColors, ITypography, ISpacing } from './theme.interface';
3
+ export declare class ModernTheme implements ITheme {
4
+ id: ThemeType;
5
+ name: string;
6
+ light: IThemeColors;
7
+ dark: IThemeColors;
8
+ typography: ITypography;
9
+ spacing: ISpacing;
10
+ gradients: {
11
+ primary: string;
12
+ secondary: string;
13
+ accent: string;
14
+ dark: string;
15
+ light: string;
16
+ };
17
+ borderStyle: {
18
+ radius: {
19
+ small: string;
20
+ medium: string;
21
+ large: string;
22
+ full: string;
23
+ };
24
+ width: string;
25
+ style: string;
26
+ };
27
+ glassmorphism: {
28
+ light: string;
29
+ dark: string;
30
+ blur: string;
31
+ };
32
+ animations: {
33
+ hover: string;
34
+ fade: string;
35
+ slide: string;
36
+ };
37
+ }
38
+ //# sourceMappingURL=modern.theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modern.theme.d.ts","sourceRoot":"","sources":["../../../src/templates/themes/modern.theme.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEhF,qBAAa,WAAY,YAAW,MAAM;IACxC,EAAE,YAAoB;IACtB,IAAI,SAAY;IAEhB,KAAK,EAAE,YAAY,CAUjB;IAEF,IAAI,EAAE,YAAY,CAUhB;IAEF,UAAU,EAAE,WAAW,CAarB;IAEF,OAAO,EAAE,QAAQ,CAMf;IAEF,SAAS;;;;;;MAMP;IAEF,WAAW;;;;;;;;;MAST;IAEF,aAAa;;;;MAIX;IAEF,UAAU;;;;MAIR;CACH"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ModernTheme = void 0;
4
+ const theme_enum_1 = require("../../core/enums/theme.enum");
5
+ class ModernTheme {
6
+ constructor() {
7
+ this.id = theme_enum_1.ThemeType.MODERN;
8
+ this.name = 'Modern';
9
+ this.light = {
10
+ primary: '#0f172a',
11
+ secondary: '#64748b',
12
+ background: '#ffffff',
13
+ text: '#0f172a',
14
+ textMuted: '#64748b',
15
+ border: '#e2e8f0',
16
+ success: '#10b981',
17
+ error: '#ef4444',
18
+ warning: '#f59e0b'
19
+ };
20
+ this.dark = {
21
+ primary: '#38bdf8',
22
+ secondary: '#94a3b8',
23
+ background: '#0f172a',
24
+ text: '#f1f5f9',
25
+ textMuted: '#94a3b8',
26
+ border: '#1e293b',
27
+ success: '#34d399',
28
+ error: '#f87171',
29
+ warning: '#fbbf24'
30
+ };
31
+ this.typography = {
32
+ fontFamily: '"Inter", "SF Pro Display", "Segoe UI", system-ui, sans-serif',
33
+ fontSizes: {
34
+ small: '13px',
35
+ medium: '15px',
36
+ large: '17px',
37
+ xlarge: '24px'
38
+ },
39
+ fontWeights: {
40
+ normal: 400,
41
+ medium: 500,
42
+ bold: 600
43
+ }
44
+ };
45
+ this.spacing = {
46
+ xs: '6px',
47
+ sm: '12px',
48
+ md: '20px',
49
+ lg: '32px',
50
+ xl: '48px'
51
+ };
52
+ this.gradients = {
53
+ primary: 'linear-gradient(135deg, #0f172a 0%, #1e293b 100%)',
54
+ secondary: 'linear-gradient(135deg, #64748b 0%, #94a3b8 100%)',
55
+ accent: 'linear-gradient(135deg, #38bdf8 0%, #0f172a 100%)',
56
+ dark: 'linear-gradient(135deg, #0f172a 0%, #020617 100%)',
57
+ light: 'linear-gradient(135deg, #f8fafc 0%, #ffffff 100%)'
58
+ };
59
+ this.borderStyle = {
60
+ radius: {
61
+ small: '8px',
62
+ medium: '12px',
63
+ large: '16px',
64
+ full: '9999px'
65
+ },
66
+ width: '1px',
67
+ style: 'solid'
68
+ };
69
+ this.glassmorphism = {
70
+ light: 'rgba(255, 255, 255, 0.8)',
71
+ dark: 'rgba(15, 23, 42, 0.8)',
72
+ blur: '12px'
73
+ };
74
+ this.animations = {
75
+ hover: 'transform 0.2s ease, box-shadow 0.2s ease',
76
+ fade: 'opacity 0.3s ease',
77
+ slide: 'transform 0.3s cubic-bezier(0.4, 0, 0.2, 1)'
78
+ };
79
+ }
80
+ }
81
+ exports.ModernTheme = ModernTheme;
@@ -0,0 +1,29 @@
1
+ import { ThemeType } from '../../core/enums/theme.enum';
2
+ import { ITheme, IThemeColors, ITypography, ISpacing } from './theme.interface';
3
+ export declare class MonokaiTheme implements ITheme {
4
+ id: ThemeType;
5
+ name: string;
6
+ light: IThemeColors;
7
+ dark: IThemeColors;
8
+ typography: ITypography;
9
+ spacing: ISpacing;
10
+ codeHighlight: {
11
+ comment: string;
12
+ keyword: string;
13
+ string: string;
14
+ number: string;
15
+ function: string;
16
+ variable: string;
17
+ };
18
+ borderStyle: {
19
+ radius: string;
20
+ width: string;
21
+ style: string;
22
+ };
23
+ effects: {
24
+ glow: string;
25
+ shadow: string;
26
+ transition: string;
27
+ };
28
+ }
29
+ //# sourceMappingURL=monokai.theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monokai.theme.d.ts","sourceRoot":"","sources":["../../../src/templates/themes/monokai.theme.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEhF,qBAAa,YAAa,YAAW,MAAM;IACzC,EAAE,YAAqB;IACvB,IAAI,SAAa;IAEjB,KAAK,EAAE,YAAY,CAUjB;IAEF,IAAI,EAAE,YAAY,CAUhB;IAEF,UAAU,EAAE,WAAW,CAarB;IAEF,OAAO,EAAE,QAAQ,CAMf;IAGF,aAAa;;;;;;;MAOX;IAGF,WAAW;;;;MAIT;IAEF,OAAO;;;;MAIL;CACH"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MonokaiTheme = void 0;
4
+ const theme_enum_1 = require("../../core/enums/theme.enum");
5
+ class MonokaiTheme {
6
+ constructor() {
7
+ this.id = theme_enum_1.ThemeType.MONOKAI;
8
+ this.name = 'Monokai';
9
+ this.light = {
10
+ primary: '#f92672',
11
+ secondary: '#a6e22e',
12
+ background: '#f9f9f9',
13
+ text: '#272822',
14
+ textMuted: '#75715e',
15
+ border: '#e5e5e5',
16
+ success: '#a6e22e',
17
+ error: '#f92672',
18
+ warning: '#fd971f'
19
+ };
20
+ this.dark = {
21
+ primary: '#f92672',
22
+ secondary: '#a6e22e',
23
+ background: '#272822',
24
+ text: '#f8f8f2',
25
+ textMuted: '#75715e',
26
+ border: '#3e3d32',
27
+ success: '#a6e22e',
28
+ error: '#f92672',
29
+ warning: '#fd971f'
30
+ };
31
+ this.typography = {
32
+ fontFamily: '"SF Mono", "Monaco", "Inconsolata", "Fira Code", monospace',
33
+ fontSizes: {
34
+ small: '12px',
35
+ medium: '14px',
36
+ large: '16px',
37
+ xlarge: '20px'
38
+ },
39
+ fontWeights: {
40
+ normal: 400,
41
+ medium: 500,
42
+ bold: 700
43
+ }
44
+ };
45
+ this.spacing = {
46
+ xs: '4px',
47
+ sm: '8px',
48
+ md: '16px',
49
+ lg: '24px',
50
+ xl: '32px'
51
+ };
52
+ // cores adicionais
53
+ this.codeHighlight = {
54
+ comment: '#75715e',
55
+ keyword: '#f92672',
56
+ string: '#e6db74',
57
+ number: '#ae81ff',
58
+ function: '#a6e22e',
59
+ variable: '#fd971f'
60
+ };
61
+ this.borderStyle = {
62
+ radius: '4px',
63
+ width: '2px',
64
+ style: 'solid'
65
+ };
66
+ this.effects = {
67
+ glow: '0 0 10px rgba(249, 38, 114, 0.3)',
68
+ shadow: '0 4px 6px rgba(0, 0, 0, 0.1)',
69
+ transition: 'all 0.3s ease'
70
+ };
71
+ }
72
+ }
73
+ exports.MonokaiTheme = MonokaiTheme;
@@ -0,0 +1,50 @@
1
+ import { ThemeType } from '../../core/enums/theme.enum';
2
+ import { ITheme } from './theme.interface';
3
+ export declare class SystemTheme implements ITheme {
4
+ id: ThemeType;
5
+ name: string;
6
+ light: {
7
+ primary: string;
8
+ secondary: string;
9
+ background: string;
10
+ text: string;
11
+ textMuted: string;
12
+ border: string;
13
+ success: string;
14
+ error: string;
15
+ warning: string;
16
+ };
17
+ dark: {
18
+ primary: string;
19
+ secondary: string;
20
+ background: string;
21
+ text: string;
22
+ textMuted: string;
23
+ border: string;
24
+ success: string;
25
+ error: string;
26
+ warning: string;
27
+ };
28
+ typography: {
29
+ fontFamily: string;
30
+ fontSizes: {
31
+ small: string;
32
+ medium: string;
33
+ large: string;
34
+ xlarge: string;
35
+ };
36
+ fontWeights: {
37
+ normal: number;
38
+ medium: number;
39
+ bold: number;
40
+ };
41
+ };
42
+ spacing: {
43
+ xs: string;
44
+ sm: string;
45
+ md: string;
46
+ lg: string;
47
+ xl: string;
48
+ };
49
+ }
50
+ //# sourceMappingURL=system.theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.theme.d.ts","sourceRoot":"","sources":["../../../src/templates/themes/system.theme.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,qBAAa,WAAY,YAAW,MAAM;IACxC,EAAE,YAAoB;IACtB,IAAI,SAAY;IAEhB,KAAK;;;;;;;;;;MAUH;IAEF,IAAI;;;;;;;;;;MAUF;IAEF,UAAU;;;;;;;;;;;;;MAaR;IAEF,OAAO;;;;;;MAML;CACH"}