@principal-ade/industry-theme 0.1.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.
- package/dist/cjs/ThemeProvider.d.ts +19 -0
- package/dist/cjs/ThemeProvider.d.ts.map +1 -0
- package/dist/cjs/ThemeShowcase.d.ts +24 -0
- package/dist/cjs/ThemeShowcase.d.ts.map +1 -0
- package/dist/cjs/defaultThemes.d.ts +8 -0
- package/dist/cjs/defaultThemes.d.ts.map +1 -0
- package/dist/cjs/glassmorphismTheme.d.ts +7 -0
- package/dist/cjs/glassmorphismTheme.d.ts.map +1 -0
- package/dist/cjs/index.d.ts +130 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +1798 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/themeHelpers.d.ts +30 -0
- package/dist/cjs/themeHelpers.d.ts.map +1 -0
- package/dist/cjs/themes.d.ts +12 -0
- package/dist/cjs/themes.d.ts.map +1 -0
- package/dist/cjs/utils.d.ts +32 -0
- package/dist/cjs/utils.d.ts.map +1 -0
- package/dist/esm/ThemeProvider.d.ts +19 -0
- package/dist/esm/ThemeProvider.d.ts.map +1 -0
- package/dist/esm/ThemeShowcase.d.ts +24 -0
- package/dist/esm/ThemeShowcase.d.ts.map +1 -0
- package/dist/esm/defaultThemes.d.ts +8 -0
- package/dist/esm/defaultThemes.d.ts.map +1 -0
- package/dist/esm/glassmorphismTheme.d.ts +7 -0
- package/dist/esm/glassmorphismTheme.d.ts.map +1 -0
- package/dist/esm/index.d.ts +130 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +1753 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/themeHelpers.d.ts +30 -0
- package/dist/esm/themeHelpers.d.ts.map +1 -0
- package/dist/esm/themes.d.ts +12 -0
- package/dist/esm/themes.d.ts.map +1 -0
- package/dist/esm/utils.d.ts +32 -0
- package/dist/esm/utils.d.ts.map +1 -0
- package/package.json +64 -0
- package/src/README.md +134 -0
- package/src/ThemeProvider.tsx +117 -0
- package/src/ThemeShowcase.tsx +442 -0
- package/src/defaultThemes.ts +369 -0
- package/src/glassmorphismTheme.ts +213 -0
- package/src/index.ts +230 -0
- package/src/themeHelpers.ts +106 -0
- package/src/themes.ts +746 -0
- package/src/utils.ts +135 -0
package/src/themes.ts
ADDED
|
@@ -0,0 +1,746 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Collection of available themes for PrincipleMD
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { Theme } from './index';
|
|
6
|
+
export { glassmorphismTheme } from './glassmorphismTheme';
|
|
7
|
+
export {
|
|
8
|
+
defaultMarkdownTheme,
|
|
9
|
+
defaultEditorTheme,
|
|
10
|
+
defaultTerminalTheme,
|
|
11
|
+
} from './defaultThemes';
|
|
12
|
+
|
|
13
|
+
// Regal theme (previous default) - Dark Academia with warm amber gold
|
|
14
|
+
export const regalTheme: Theme = {
|
|
15
|
+
// Spacing scale (used for margin, padding, etc.)
|
|
16
|
+
space: [0, 4, 8, 16, 32, 64, 128, 256, 512],
|
|
17
|
+
|
|
18
|
+
// Typography
|
|
19
|
+
fonts: {
|
|
20
|
+
body: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
21
|
+
heading: '"Crimson Text", "Georgia", "Times New Roman", serif',
|
|
22
|
+
monospace: '"Fira Code", "SF Mono", Monaco, Inconsolata, monospace',
|
|
23
|
+
},
|
|
24
|
+
|
|
25
|
+
fontSizes: [12, 14, 16, 18, 20, 24, 32, 48, 64, 96],
|
|
26
|
+
|
|
27
|
+
fontScale: 1.0,
|
|
28
|
+
|
|
29
|
+
fontWeights: {
|
|
30
|
+
body: 400,
|
|
31
|
+
heading: 600,
|
|
32
|
+
bold: 700,
|
|
33
|
+
light: 300,
|
|
34
|
+
medium: 500,
|
|
35
|
+
semibold: 600,
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
lineHeights: {
|
|
39
|
+
body: 1.5,
|
|
40
|
+
heading: 1.2,
|
|
41
|
+
tight: 1.25,
|
|
42
|
+
relaxed: 1.75,
|
|
43
|
+
},
|
|
44
|
+
|
|
45
|
+
// Layout
|
|
46
|
+
breakpoints: ['640px', '768px', '1024px', '1280px'],
|
|
47
|
+
sizes: [16, 32, 64, 128, 256, 512, 768, 1024, 1536],
|
|
48
|
+
radii: [0, 2, 4, 6, 8, 12, 16, 24],
|
|
49
|
+
shadows: [
|
|
50
|
+
'none',
|
|
51
|
+
'0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)',
|
|
52
|
+
'0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',
|
|
53
|
+
'0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',
|
|
54
|
+
'0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',
|
|
55
|
+
'0 25px 50px -12px rgba(0, 0, 0, 0.25)',
|
|
56
|
+
],
|
|
57
|
+
zIndices: [0, 1, 10, 20, 30, 40, 50],
|
|
58
|
+
|
|
59
|
+
// Colors (light mode default) - Dark Academia theme with muted gold
|
|
60
|
+
colors: {
|
|
61
|
+
// Base colors
|
|
62
|
+
text: '#f1e8dc', // Warm cream
|
|
63
|
+
background: '#1a1f2e', // Deep midnight blue
|
|
64
|
+
primary: '#d4a574', // Warm amber gold
|
|
65
|
+
secondary: '#e0b584', // Lighter amber on hover
|
|
66
|
+
accent: '#c9b8a3', // Muted gold
|
|
67
|
+
highlight: 'rgba(212, 165, 116, 0.15)', // Translucent amber
|
|
68
|
+
muted: '#8b7968', // Faded bronze
|
|
69
|
+
|
|
70
|
+
// Status colors - Jewel tones
|
|
71
|
+
success: '#5c8a72', // Forest green
|
|
72
|
+
warning: '#d4a574', // Amber (same as primary for consistency)
|
|
73
|
+
error: '#a85751', // Burgundy red
|
|
74
|
+
info: '#d4a574', // Using primary amber
|
|
75
|
+
|
|
76
|
+
// Additional semantic colors
|
|
77
|
+
border: 'rgba(212, 165, 116, 0.2)', // Translucent gold
|
|
78
|
+
backgroundSecondary: '#212738', // Slightly lighter navy
|
|
79
|
+
backgroundTertiary: '#2d3446', // Tertiary dark blue
|
|
80
|
+
backgroundLight: 'rgba(212, 165, 116, 0.08)', // Very light amber
|
|
81
|
+
backgroundHover: 'rgba(212, 165, 116, 0.15)', // Translucent amber hover
|
|
82
|
+
surface: '#212738', // Dark navy surface
|
|
83
|
+
textSecondary: '#c9b8a3', // Muted gold
|
|
84
|
+
textTertiary: '#8b7968', // Faded bronze
|
|
85
|
+
textMuted: '#8b7968', // Faded bronze
|
|
86
|
+
|
|
87
|
+
// Search highlight colors
|
|
88
|
+
highlightBg: 'rgba(255, 193, 7, 0.25)', // Semi-transparent amber/yellow
|
|
89
|
+
highlightBorder: 'rgba(255, 193, 7, 0.5)', // Stronger amber for border
|
|
90
|
+
},
|
|
91
|
+
|
|
92
|
+
// Component variants
|
|
93
|
+
buttons: {
|
|
94
|
+
primary: {
|
|
95
|
+
color: 'background',
|
|
96
|
+
bg: 'primary',
|
|
97
|
+
'&:hover': {
|
|
98
|
+
bg: 'secondary',
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
secondary: {
|
|
102
|
+
color: 'text',
|
|
103
|
+
bg: 'muted',
|
|
104
|
+
'&:hover': {
|
|
105
|
+
bg: 'backgroundSecondary',
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
ghost: {
|
|
109
|
+
color: 'primary',
|
|
110
|
+
bg: 'transparent',
|
|
111
|
+
'&:hover': {
|
|
112
|
+
bg: 'muted',
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
|
|
117
|
+
text: {
|
|
118
|
+
heading: {
|
|
119
|
+
fontFamily: 'heading',
|
|
120
|
+
fontWeight: 'heading',
|
|
121
|
+
lineHeight: 'heading',
|
|
122
|
+
},
|
|
123
|
+
body: {
|
|
124
|
+
fontFamily: 'body',
|
|
125
|
+
fontWeight: 'body',
|
|
126
|
+
lineHeight: 'body',
|
|
127
|
+
},
|
|
128
|
+
caption: {
|
|
129
|
+
fontSize: 1,
|
|
130
|
+
color: 'textSecondary',
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
|
|
134
|
+
cards: {
|
|
135
|
+
primary: {
|
|
136
|
+
bg: 'background',
|
|
137
|
+
border: '1px solid',
|
|
138
|
+
borderColor: 'border',
|
|
139
|
+
borderRadius: 2,
|
|
140
|
+
},
|
|
141
|
+
secondary: {
|
|
142
|
+
bg: 'backgroundSecondary',
|
|
143
|
+
border: '1px solid',
|
|
144
|
+
borderColor: 'border',
|
|
145
|
+
borderRadius: 2,
|
|
146
|
+
},
|
|
147
|
+
},
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
// Terminal theme - Minimalistic developer-focused dark theme with transparency
|
|
151
|
+
export const terminalTheme: Theme = {
|
|
152
|
+
// Spacing scale (used for margin, padding, etc.)
|
|
153
|
+
space: [0, 4, 8, 16, 32, 64, 128, 256, 512],
|
|
154
|
+
|
|
155
|
+
// Typography - More monospace focused
|
|
156
|
+
fonts: {
|
|
157
|
+
body: '"SF Mono", "Monaco", "Inconsolata", "Fira Code", monospace',
|
|
158
|
+
heading: '"SF Mono", "Monaco", "Inconsolata", "Fira Code", monospace',
|
|
159
|
+
monospace: '"SF Mono", "Monaco", "Inconsolata", "Fira Code", monospace',
|
|
160
|
+
},
|
|
161
|
+
|
|
162
|
+
fontSizes: [12, 14, 16, 18, 20, 24, 32, 48, 64, 96],
|
|
163
|
+
|
|
164
|
+
fontScale: 1.0,
|
|
165
|
+
|
|
166
|
+
fontWeights: {
|
|
167
|
+
body: 400,
|
|
168
|
+
heading: 500,
|
|
169
|
+
bold: 600,
|
|
170
|
+
light: 300,
|
|
171
|
+
medium: 500,
|
|
172
|
+
semibold: 600,
|
|
173
|
+
},
|
|
174
|
+
|
|
175
|
+
lineHeights: {
|
|
176
|
+
body: 1.6,
|
|
177
|
+
heading: 1.3,
|
|
178
|
+
tight: 1.4,
|
|
179
|
+
relaxed: 1.8,
|
|
180
|
+
},
|
|
181
|
+
|
|
182
|
+
// Layout
|
|
183
|
+
breakpoints: ['640px', '768px', '1024px', '1280px'],
|
|
184
|
+
sizes: [16, 32, 64, 128, 256, 512, 768, 1024, 1536],
|
|
185
|
+
radii: [0, 2, 4, 6, 8, 12, 16, 24],
|
|
186
|
+
shadows: [
|
|
187
|
+
'none',
|
|
188
|
+
'0 1px 2px 0 rgba(0, 0, 0, 0.05)',
|
|
189
|
+
'0 2px 4px 0 rgba(0, 0, 0, 0.06)',
|
|
190
|
+
'0 4px 6px 0 rgba(0, 0, 0, 0.07)',
|
|
191
|
+
'0 8px 12px 0 rgba(0, 0, 0, 0.08)',
|
|
192
|
+
'0 16px 24px 0 rgba(0, 0, 0, 0.10)',
|
|
193
|
+
],
|
|
194
|
+
zIndices: [0, 1, 10, 20, 30, 40, 50],
|
|
195
|
+
|
|
196
|
+
// Colors - Dark terminal theme with transparency
|
|
197
|
+
colors: {
|
|
198
|
+
// Base colors - Dark terminal inspired with transparency
|
|
199
|
+
text: '#e4e4e4', // Light gray
|
|
200
|
+
background: 'rgba(10, 10, 10, 0.85)', // Semi-transparent almost black
|
|
201
|
+
primary: '#66b3ff', // Bright terminal blue
|
|
202
|
+
secondary: '#80c4ff', // Lighter blue
|
|
203
|
+
accent: '#66ff99', // Bright terminal green
|
|
204
|
+
highlight: 'rgba(102, 179, 255, 0.15)', // Translucent blue
|
|
205
|
+
muted: 'rgba(26, 26, 26, 0.8)', // Semi-transparent dark gray
|
|
206
|
+
|
|
207
|
+
// Status colors - Terminal inspired
|
|
208
|
+
success: '#66ff99', // Bright green
|
|
209
|
+
warning: '#ffcc66', // Bright amber
|
|
210
|
+
error: '#ff6666', // Bright red
|
|
211
|
+
info: '#66b3ff', // Bright blue
|
|
212
|
+
|
|
213
|
+
// Additional semantic colors with transparency
|
|
214
|
+
border: 'rgba(255, 255, 255, 0.1)', // Transparent white border
|
|
215
|
+
backgroundSecondary: 'rgba(15, 15, 15, 0.9)', // Semi-transparent slightly lighter black
|
|
216
|
+
backgroundTertiary: 'rgba(20, 20, 20, 0.9)', // Semi-transparent even lighter black
|
|
217
|
+
backgroundLight: 'rgba(255, 255, 255, 0.05)', // Very transparent white
|
|
218
|
+
backgroundHover: 'rgba(102, 179, 255, 0.08)', // Subtle blue hover
|
|
219
|
+
surface: 'rgba(15, 15, 15, 0.95)', // Nearly opaque dark surface
|
|
220
|
+
textSecondary: 'rgba(255, 255, 255, 0.7)', // 70% white
|
|
221
|
+
textTertiary: 'rgba(255, 255, 255, 0.5)', // 50% white
|
|
222
|
+
textMuted: 'rgba(255, 255, 255, 0.4)', // 40% white
|
|
223
|
+
|
|
224
|
+
// Search highlight colors
|
|
225
|
+
highlightBg: 'rgba(255, 235, 59, 0.25)', // Yellow highlight
|
|
226
|
+
highlightBorder: 'rgba(255, 235, 59, 0.5)', // Stronger yellow for border
|
|
227
|
+
},
|
|
228
|
+
|
|
229
|
+
// Light mode for terminal theme
|
|
230
|
+
modes: {
|
|
231
|
+
light: {
|
|
232
|
+
// Base colors - Light terminal with transparency
|
|
233
|
+
text: '#1a1a1a', // Almost black
|
|
234
|
+
background: 'rgba(255, 255, 255, 0.9)', // Semi-transparent white
|
|
235
|
+
primary: '#0066cc', // Classic terminal blue
|
|
236
|
+
secondary: '#0052a3', // Darker blue
|
|
237
|
+
accent: '#00cc88', // Terminal green
|
|
238
|
+
highlight: 'rgba(0, 102, 204, 0.08)', // Very light blue highlight
|
|
239
|
+
muted: 'rgba(245, 245, 245, 0.8)', // Semi-transparent light gray
|
|
240
|
+
|
|
241
|
+
// Status colors - Terminal inspired
|
|
242
|
+
success: '#00cc88', // Green
|
|
243
|
+
warning: '#ffaa00', // Amber
|
|
244
|
+
error: '#ff3333', // Red
|
|
245
|
+
info: '#0066cc', // Blue
|
|
246
|
+
|
|
247
|
+
// Additional semantic colors with transparency
|
|
248
|
+
border: 'rgba(0, 0, 0, 0.1)', // Transparent black border
|
|
249
|
+
backgroundSecondary: 'rgba(250, 250, 250, 0.9)', // Semi-transparent very light gray
|
|
250
|
+
backgroundTertiary: 'rgba(245, 245, 245, 0.9)', // Semi-transparent light gray
|
|
251
|
+
backgroundLight: 'rgba(0, 0, 0, 0.02)', // Very transparent black
|
|
252
|
+
backgroundHover: 'rgba(0, 102, 204, 0.04)', // Very subtle blue hover
|
|
253
|
+
surface: 'rgba(255, 255, 255, 0.95)', // Nearly opaque white surface
|
|
254
|
+
textSecondary: 'rgba(0, 0, 0, 0.6)', // 60% black
|
|
255
|
+
textTertiary: 'rgba(0, 0, 0, 0.4)', // 40% black
|
|
256
|
+
textMuted: 'rgba(0, 0, 0, 0.3)', // 30% black
|
|
257
|
+
|
|
258
|
+
// Search highlight colors
|
|
259
|
+
highlightBg: 'rgba(255, 235, 59, 0.3)', // Light yellow highlight
|
|
260
|
+
highlightBorder: 'rgba(255, 235, 59, 0.6)', // Stronger yellow for border
|
|
261
|
+
},
|
|
262
|
+
},
|
|
263
|
+
|
|
264
|
+
// Component variants
|
|
265
|
+
buttons: {
|
|
266
|
+
primary: {
|
|
267
|
+
color: 'white',
|
|
268
|
+
bg: 'primary',
|
|
269
|
+
borderWidth: 0,
|
|
270
|
+
'&:hover': {
|
|
271
|
+
bg: 'secondary',
|
|
272
|
+
},
|
|
273
|
+
},
|
|
274
|
+
secondary: {
|
|
275
|
+
color: 'primary',
|
|
276
|
+
bg: 'transparent',
|
|
277
|
+
borderWidth: 1,
|
|
278
|
+
borderStyle: 'solid',
|
|
279
|
+
borderColor: 'primary',
|
|
280
|
+
'&:hover': {
|
|
281
|
+
bg: 'highlight',
|
|
282
|
+
},
|
|
283
|
+
},
|
|
284
|
+
ghost: {
|
|
285
|
+
color: 'text',
|
|
286
|
+
bg: 'transparent',
|
|
287
|
+
'&:hover': {
|
|
288
|
+
bg: 'backgroundHover',
|
|
289
|
+
},
|
|
290
|
+
},
|
|
291
|
+
},
|
|
292
|
+
|
|
293
|
+
text: {
|
|
294
|
+
heading: {
|
|
295
|
+
fontFamily: 'heading',
|
|
296
|
+
fontWeight: 'heading',
|
|
297
|
+
lineHeight: 'heading',
|
|
298
|
+
},
|
|
299
|
+
body: {
|
|
300
|
+
fontFamily: 'body',
|
|
301
|
+
fontWeight: 'body',
|
|
302
|
+
lineHeight: 'body',
|
|
303
|
+
},
|
|
304
|
+
caption: {
|
|
305
|
+
fontSize: 1,
|
|
306
|
+
color: 'textSecondary',
|
|
307
|
+
},
|
|
308
|
+
},
|
|
309
|
+
|
|
310
|
+
cards: {
|
|
311
|
+
primary: {
|
|
312
|
+
bg: 'surface',
|
|
313
|
+
border: '1px solid',
|
|
314
|
+
borderColor: 'border',
|
|
315
|
+
borderRadius: 1,
|
|
316
|
+
},
|
|
317
|
+
secondary: {
|
|
318
|
+
bg: 'backgroundSecondary',
|
|
319
|
+
border: '1px solid',
|
|
320
|
+
borderColor: 'border',
|
|
321
|
+
borderRadius: 1,
|
|
322
|
+
},
|
|
323
|
+
},
|
|
324
|
+
};
|
|
325
|
+
|
|
326
|
+
// Matrix theme - Classic Matrix green-on-black terminal look
|
|
327
|
+
export const matrixTheme: Theme = {
|
|
328
|
+
// Spacing scale (used for margin, padding, etc.)
|
|
329
|
+
space: [0, 4, 8, 16, 32, 64, 128, 256, 512],
|
|
330
|
+
|
|
331
|
+
// Typography - Classic terminal/Matrix fonts
|
|
332
|
+
fonts: {
|
|
333
|
+
body: '"Courier New", "Courier", "Lucida Console", "Monaco", monospace',
|
|
334
|
+
heading: '"Courier New", "Courier", "Lucida Console", "Monaco", monospace',
|
|
335
|
+
monospace: '"Courier New", "Courier", "Lucida Console", "Monaco", monospace',
|
|
336
|
+
},
|
|
337
|
+
|
|
338
|
+
fontSizes: [12, 14, 16, 18, 20, 24, 32, 48, 64, 96],
|
|
339
|
+
|
|
340
|
+
fontScale: 1.0,
|
|
341
|
+
|
|
342
|
+
fontWeights: {
|
|
343
|
+
body: 400,
|
|
344
|
+
heading: 500,
|
|
345
|
+
bold: 600,
|
|
346
|
+
light: 300,
|
|
347
|
+
medium: 500,
|
|
348
|
+
semibold: 600,
|
|
349
|
+
},
|
|
350
|
+
|
|
351
|
+
lineHeights: {
|
|
352
|
+
body: 1.5,
|
|
353
|
+
heading: 1.2,
|
|
354
|
+
tight: 1.3,
|
|
355
|
+
relaxed: 1.7,
|
|
356
|
+
},
|
|
357
|
+
|
|
358
|
+
// Layout
|
|
359
|
+
breakpoints: ['640px', '768px', '1024px', '1280px'],
|
|
360
|
+
sizes: [16, 32, 64, 128, 256, 512, 768, 1024, 1536],
|
|
361
|
+
radii: [0, 2, 4, 6, 8, 12, 16, 24],
|
|
362
|
+
shadows: [
|
|
363
|
+
'none',
|
|
364
|
+
'0 0 5px rgba(0, 216, 53, 0.15)',
|
|
365
|
+
'0 0 10px rgba(0, 216, 53, 0.2)',
|
|
366
|
+
'0 0 15px rgba(0, 216, 53, 0.25)',
|
|
367
|
+
'0 0 20px rgba(0, 216, 53, 0.3)',
|
|
368
|
+
'0 0 30px rgba(0, 216, 53, 0.4)',
|
|
369
|
+
],
|
|
370
|
+
zIndices: [0, 1, 10, 20, 30, 40, 50],
|
|
371
|
+
|
|
372
|
+
// Colors - Matrix inspired theme with softer whites and green accents
|
|
373
|
+
colors: {
|
|
374
|
+
// Base colors - Softer whites with Matrix green accents
|
|
375
|
+
text: '#a8a8a8', // Much softer white for main text
|
|
376
|
+
background: '#000000', // Pure black background
|
|
377
|
+
primary: '#00d835', // Softer Matrix green for primary actions
|
|
378
|
+
secondary: '#00a828', // Darker softer green for secondary
|
|
379
|
+
accent: '#00d835', // Softer Matrix green accent
|
|
380
|
+
highlight: 'rgba(0, 216, 53, 0.15)', // Translucent softer green highlight
|
|
381
|
+
muted: '#0a0a0a', // Very dark gray
|
|
382
|
+
|
|
383
|
+
// Status colors - More variety while keeping Matrix feel
|
|
384
|
+
success: '#00d835', // Softer Matrix green
|
|
385
|
+
warning: '#d4a000', // Softer amber warning
|
|
386
|
+
error: '#d63333', // Softer red for errors
|
|
387
|
+
info: '#00a8d6', // Softer cyan for info
|
|
388
|
+
|
|
389
|
+
// Additional semantic colors
|
|
390
|
+
border: 'rgba(0, 216, 53, 0.2)', // Subtle softer green border
|
|
391
|
+
backgroundSecondary: '#0a0a0a', // Very dark gray
|
|
392
|
+
backgroundTertiary: '#111111', // Slightly lighter dark gray
|
|
393
|
+
backgroundLight: 'rgba(0, 216, 53, 0.03)', // Very faint softer green glow
|
|
394
|
+
backgroundHover: 'rgba(0, 216, 53, 0.08)', // Subtle softer green hover
|
|
395
|
+
surface: '#050505', // Almost black
|
|
396
|
+
textSecondary: '#808080', // Even softer gray for secondary text
|
|
397
|
+
textTertiary: '#606060', // Much softer medium gray
|
|
398
|
+
textMuted: '#484848', // Much softer darker gray
|
|
399
|
+
|
|
400
|
+
// Search highlight colors
|
|
401
|
+
highlightBg: 'rgba(0, 216, 53, 0.25)', // Softer green highlight
|
|
402
|
+
highlightBorder: 'rgba(0, 216, 53, 0.5)', // Stronger softer green for border
|
|
403
|
+
},
|
|
404
|
+
|
|
405
|
+
// Component variants
|
|
406
|
+
buttons: {
|
|
407
|
+
primary: {
|
|
408
|
+
color: 'black',
|
|
409
|
+
bg: 'primary',
|
|
410
|
+
borderWidth: 0,
|
|
411
|
+
'&:hover': {
|
|
412
|
+
bg: 'secondary',
|
|
413
|
+
},
|
|
414
|
+
},
|
|
415
|
+
secondary: {
|
|
416
|
+
color: 'primary',
|
|
417
|
+
bg: 'transparent',
|
|
418
|
+
borderWidth: 1,
|
|
419
|
+
borderStyle: 'solid',
|
|
420
|
+
borderColor: 'primary',
|
|
421
|
+
'&:hover': {
|
|
422
|
+
bg: 'highlight',
|
|
423
|
+
},
|
|
424
|
+
},
|
|
425
|
+
ghost: {
|
|
426
|
+
color: 'text',
|
|
427
|
+
bg: 'transparent',
|
|
428
|
+
'&:hover': {
|
|
429
|
+
bg: 'backgroundHover',
|
|
430
|
+
},
|
|
431
|
+
},
|
|
432
|
+
},
|
|
433
|
+
|
|
434
|
+
text: {
|
|
435
|
+
heading: {
|
|
436
|
+
fontFamily: 'heading',
|
|
437
|
+
fontWeight: 'heading',
|
|
438
|
+
lineHeight: 'heading',
|
|
439
|
+
},
|
|
440
|
+
body: {
|
|
441
|
+
fontFamily: 'body',
|
|
442
|
+
fontWeight: 'body',
|
|
443
|
+
lineHeight: 'body',
|
|
444
|
+
},
|
|
445
|
+
caption: {
|
|
446
|
+
fontSize: 1,
|
|
447
|
+
color: 'textSecondary',
|
|
448
|
+
},
|
|
449
|
+
},
|
|
450
|
+
|
|
451
|
+
cards: {
|
|
452
|
+
primary: {
|
|
453
|
+
bg: 'surface',
|
|
454
|
+
border: '1px solid',
|
|
455
|
+
borderColor: 'border',
|
|
456
|
+
borderRadius: 0, // No rounded corners for authentic terminal look
|
|
457
|
+
},
|
|
458
|
+
secondary: {
|
|
459
|
+
bg: 'backgroundSecondary',
|
|
460
|
+
border: '1px solid',
|
|
461
|
+
borderColor: 'border',
|
|
462
|
+
borderRadius: 0,
|
|
463
|
+
},
|
|
464
|
+
},
|
|
465
|
+
};
|
|
466
|
+
|
|
467
|
+
// Matrix Minimal theme - Matrix aesthetic with white primary/secondary
|
|
468
|
+
export const matrixMinimalTheme: Theme = {
|
|
469
|
+
// Spacing scale (used for margin, padding, etc.)
|
|
470
|
+
space: [0, 4, 8, 16, 32, 64, 128, 256, 512],
|
|
471
|
+
|
|
472
|
+
// Typography - Classic terminal/Matrix fonts
|
|
473
|
+
fonts: {
|
|
474
|
+
body: '"Courier New", "Courier", "Lucida Console", "Monaco", monospace',
|
|
475
|
+
heading: '"Courier New", "Courier", "Lucida Console", "Monaco", monospace',
|
|
476
|
+
monospace: '"Courier New", "Courier", "Lucida Console", "Monaco", monospace',
|
|
477
|
+
},
|
|
478
|
+
|
|
479
|
+
fontSizes: [12, 14, 16, 18, 20, 24, 32, 48, 64, 96],
|
|
480
|
+
|
|
481
|
+
fontScale: 1.0,
|
|
482
|
+
|
|
483
|
+
fontWeights: {
|
|
484
|
+
body: 400,
|
|
485
|
+
heading: 500,
|
|
486
|
+
bold: 600,
|
|
487
|
+
light: 300,
|
|
488
|
+
medium: 500,
|
|
489
|
+
semibold: 600,
|
|
490
|
+
},
|
|
491
|
+
|
|
492
|
+
lineHeights: {
|
|
493
|
+
body: 1.5,
|
|
494
|
+
heading: 1.2,
|
|
495
|
+
tight: 1.3,
|
|
496
|
+
relaxed: 1.7,
|
|
497
|
+
},
|
|
498
|
+
|
|
499
|
+
// Layout
|
|
500
|
+
breakpoints: ['640px', '768px', '1024px', '1280px'],
|
|
501
|
+
sizes: [16, 32, 64, 128, 256, 512, 768, 1024, 1536],
|
|
502
|
+
radii: [0, 2, 4, 6, 8, 12, 16, 24],
|
|
503
|
+
shadows: [
|
|
504
|
+
'none',
|
|
505
|
+
'0 1px 2px rgba(0, 0, 0, 0.05)',
|
|
506
|
+
'0 2px 4px rgba(0, 0, 0, 0.1)',
|
|
507
|
+
'0 4px 8px rgba(0, 0, 0, 0.15)',
|
|
508
|
+
'0 8px 16px rgba(0, 0, 0, 0.2)',
|
|
509
|
+
'0 0 20px rgba(0, 216, 53, 0.1)', // Subtle softer green glow for special elements
|
|
510
|
+
],
|
|
511
|
+
zIndices: [0, 1, 10, 20, 30, 40, 50],
|
|
512
|
+
|
|
513
|
+
// Colors - Minimal Matrix theme with white primary/secondary and green accents
|
|
514
|
+
colors: {
|
|
515
|
+
// Base colors - Whites with Matrix green as accent only
|
|
516
|
+
text: '#a8a8a8', // Much softer white for main text
|
|
517
|
+
background: '#000000', // Pure black background
|
|
518
|
+
primary: '#b8b8b8', // Much softer off-white for primary
|
|
519
|
+
secondary: '#909090', // Much softer light gray for secondary
|
|
520
|
+
accent: '#00d835', // Softer Matrix green for accents only
|
|
521
|
+
highlight: 'rgba(0, 216, 53, 0.1)', // Very subtle softer green highlight
|
|
522
|
+
muted: '#0a0a0a', // Very dark gray
|
|
523
|
+
|
|
524
|
+
// Status colors - Practical colors
|
|
525
|
+
success: '#00d835', // Softer Matrix green for success
|
|
526
|
+
warning: '#d4a000', // Softer amber warning
|
|
527
|
+
error: '#d63333', // Softer red for errors
|
|
528
|
+
info: '#00a8d6', // Softer cyan for info
|
|
529
|
+
|
|
530
|
+
// Additional semantic colors
|
|
531
|
+
border: 'rgba(184, 184, 184, 0.1)', // Subtle softer off-white border
|
|
532
|
+
backgroundSecondary: '#0a0a0a', // Very dark gray
|
|
533
|
+
backgroundTertiary: '#111111', // Slightly lighter dark gray
|
|
534
|
+
backgroundLight: 'rgba(184, 184, 184, 0.02)', // Very faint softer off-white glow
|
|
535
|
+
backgroundHover: 'rgba(0, 216, 53, 0.05)', // Very subtle softer green hover
|
|
536
|
+
surface: '#050505', // Almost black
|
|
537
|
+
textSecondary: '#808080', // Even softer gray for secondary text
|
|
538
|
+
textTertiary: '#606060', // Much softer medium gray
|
|
539
|
+
textMuted: '#484848', // Much softer darker gray
|
|
540
|
+
|
|
541
|
+
// Search highlight colors
|
|
542
|
+
highlightBg: 'rgba(0, 216, 53, 0.2)', // Softer green highlight for search
|
|
543
|
+
highlightBorder: 'rgba(0, 216, 53, 0.4)', // Stronger softer green for border
|
|
544
|
+
},
|
|
545
|
+
|
|
546
|
+
// Component variants
|
|
547
|
+
buttons: {
|
|
548
|
+
primary: {
|
|
549
|
+
color: 'black',
|
|
550
|
+
bg: 'primary',
|
|
551
|
+
borderWidth: 0,
|
|
552
|
+
'&:hover': {
|
|
553
|
+
bg: 'secondary',
|
|
554
|
+
},
|
|
555
|
+
},
|
|
556
|
+
secondary: {
|
|
557
|
+
color: 'primary',
|
|
558
|
+
bg: 'transparent',
|
|
559
|
+
borderWidth: 1,
|
|
560
|
+
borderStyle: 'solid',
|
|
561
|
+
borderColor: 'primary',
|
|
562
|
+
'&:hover': {
|
|
563
|
+
bg: 'backgroundHover',
|
|
564
|
+
},
|
|
565
|
+
},
|
|
566
|
+
ghost: {
|
|
567
|
+
color: 'text',
|
|
568
|
+
bg: 'transparent',
|
|
569
|
+
'&:hover': {
|
|
570
|
+
bg: 'backgroundHover',
|
|
571
|
+
},
|
|
572
|
+
},
|
|
573
|
+
},
|
|
574
|
+
|
|
575
|
+
text: {
|
|
576
|
+
heading: {
|
|
577
|
+
fontFamily: 'heading',
|
|
578
|
+
fontWeight: 'heading',
|
|
579
|
+
lineHeight: 'heading',
|
|
580
|
+
},
|
|
581
|
+
body: {
|
|
582
|
+
fontFamily: 'body',
|
|
583
|
+
fontWeight: 'body',
|
|
584
|
+
lineHeight: 'body',
|
|
585
|
+
},
|
|
586
|
+
caption: {
|
|
587
|
+
fontSize: 1,
|
|
588
|
+
color: 'textSecondary',
|
|
589
|
+
},
|
|
590
|
+
},
|
|
591
|
+
|
|
592
|
+
cards: {
|
|
593
|
+
primary: {
|
|
594
|
+
bg: 'surface',
|
|
595
|
+
border: '1px solid',
|
|
596
|
+
borderColor: 'border',
|
|
597
|
+
borderRadius: 0, // No rounded corners for terminal look
|
|
598
|
+
},
|
|
599
|
+
secondary: {
|
|
600
|
+
bg: 'backgroundSecondary',
|
|
601
|
+
border: '1px solid',
|
|
602
|
+
borderColor: 'border',
|
|
603
|
+
borderRadius: 0,
|
|
604
|
+
},
|
|
605
|
+
},
|
|
606
|
+
};
|
|
607
|
+
|
|
608
|
+
// Slate theme - Sophisticated grey-based theme with vibrant accents
|
|
609
|
+
export const slateTheme: Theme = {
|
|
610
|
+
// Spacing scale (used for margin, padding, etc.)
|
|
611
|
+
space: [0, 4, 8, 16, 32, 64, 128, 256, 512],
|
|
612
|
+
|
|
613
|
+
// Typography
|
|
614
|
+
fonts: {
|
|
615
|
+
body: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
616
|
+
heading: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
617
|
+
monospace: '"Fira Code", "SF Mono", Monaco, Inconsolata, monospace',
|
|
618
|
+
},
|
|
619
|
+
|
|
620
|
+
fontSizes: [12, 14, 16, 18, 20, 24, 32, 48, 64, 96],
|
|
621
|
+
|
|
622
|
+
fontScale: 1.0,
|
|
623
|
+
|
|
624
|
+
fontWeights: {
|
|
625
|
+
body: 400,
|
|
626
|
+
heading: 600,
|
|
627
|
+
bold: 700,
|
|
628
|
+
light: 300,
|
|
629
|
+
medium: 500,
|
|
630
|
+
semibold: 600,
|
|
631
|
+
},
|
|
632
|
+
|
|
633
|
+
lineHeights: {
|
|
634
|
+
body: 1.6,
|
|
635
|
+
heading: 1.3,
|
|
636
|
+
tight: 1.25,
|
|
637
|
+
relaxed: 1.75,
|
|
638
|
+
},
|
|
639
|
+
|
|
640
|
+
// Layout
|
|
641
|
+
breakpoints: ['640px', '768px', '1024px', '1280px'],
|
|
642
|
+
sizes: [16, 32, 64, 128, 256, 512, 768, 1024, 1536],
|
|
643
|
+
radii: [0, 2, 4, 6, 8, 12, 16, 24],
|
|
644
|
+
shadows: [
|
|
645
|
+
'none',
|
|
646
|
+
'0 1px 3px 0 rgba(0, 0, 0, 0.2)',
|
|
647
|
+
'0 4px 6px -1px rgba(0, 0, 0, 0.2)',
|
|
648
|
+
'0 10px 15px -3px rgba(0, 0, 0, 0.2)',
|
|
649
|
+
'0 20px 25px -5px rgba(0, 0, 0, 0.25)',
|
|
650
|
+
'0 25px 50px -12px rgba(0, 0, 0, 0.3)',
|
|
651
|
+
],
|
|
652
|
+
zIndices: [0, 1, 10, 20, 30, 40, 50],
|
|
653
|
+
|
|
654
|
+
// Colors - Grey-based with vibrant accents
|
|
655
|
+
colors: {
|
|
656
|
+
// Base colors - Various shades of grey with white accents
|
|
657
|
+
text: '#9ca3af', // Medium grey for most text
|
|
658
|
+
background: '#1a1c1e', // Very dark charcoal
|
|
659
|
+
primary: '#d1d5db', // Light grey for primary
|
|
660
|
+
secondary: '#6b7280', // Medium grey for secondary
|
|
661
|
+
accent: '#f59e0b', // Vibrant amber
|
|
662
|
+
highlight: 'rgba(209, 213, 219, 0.15)', // Translucent light grey
|
|
663
|
+
muted: '#2d3134', // Dark grey
|
|
664
|
+
|
|
665
|
+
// Status colors - Vibrant and practical
|
|
666
|
+
success: '#10b981', // Emerald green
|
|
667
|
+
warning: '#f59e0b', // Amber
|
|
668
|
+
error: '#ef4444', // Red
|
|
669
|
+
info: '#3b82f6', // Blue
|
|
670
|
+
|
|
671
|
+
// Additional semantic colors - Grey palette
|
|
672
|
+
border: 'rgba(156, 163, 175, 0.15)', // Subtle grey border
|
|
673
|
+
backgroundSecondary: '#22252a', // Slightly lighter dark grey
|
|
674
|
+
backgroundTertiary: '#2d3134', // Even lighter dark grey
|
|
675
|
+
backgroundLight: 'rgba(156, 163, 175, 0.05)', // Very faint grey
|
|
676
|
+
backgroundHover: 'rgba(156, 163, 175, 0.1)', // Subtle grey hover
|
|
677
|
+
surface: '#1f2124', // Near-black surface
|
|
678
|
+
textSecondary: '#e5e7eb', // Light grey for important text (closer to white)
|
|
679
|
+
textTertiary: '#6b7280', // Darker grey
|
|
680
|
+
textMuted: '#4b5563', // Even darker grey
|
|
681
|
+
|
|
682
|
+
// Search highlight colors
|
|
683
|
+
highlightBg: 'rgba(245, 158, 11, 0.25)', // Amber highlight
|
|
684
|
+
highlightBorder: 'rgba(245, 158, 11, 0.5)', // Stronger amber for border
|
|
685
|
+
},
|
|
686
|
+
|
|
687
|
+
// Component variants
|
|
688
|
+
buttons: {
|
|
689
|
+
primary: {
|
|
690
|
+
color: '#1a1c1e', // Dark text on light grey
|
|
691
|
+
bg: 'primary',
|
|
692
|
+
borderWidth: 0,
|
|
693
|
+
'&:hover': {
|
|
694
|
+
bg: '#9ca3af', // Darker grey on hover
|
|
695
|
+
},
|
|
696
|
+
},
|
|
697
|
+
secondary: {
|
|
698
|
+
color: '#e5e7eb', // Light text on medium grey
|
|
699
|
+
bg: 'secondary',
|
|
700
|
+
borderWidth: 0,
|
|
701
|
+
'&:hover': {
|
|
702
|
+
bg: '#4b5563', // Darker grey on hover
|
|
703
|
+
},
|
|
704
|
+
},
|
|
705
|
+
ghost: {
|
|
706
|
+
color: 'textSecondary',
|
|
707
|
+
bg: 'transparent',
|
|
708
|
+
'&:hover': {
|
|
709
|
+
bg: 'backgroundHover',
|
|
710
|
+
},
|
|
711
|
+
},
|
|
712
|
+
},
|
|
713
|
+
|
|
714
|
+
text: {
|
|
715
|
+
heading: {
|
|
716
|
+
fontFamily: 'heading',
|
|
717
|
+
fontWeight: 'heading',
|
|
718
|
+
lineHeight: 'heading',
|
|
719
|
+
color: 'textSecondary', // Headers in lighter grey/white
|
|
720
|
+
},
|
|
721
|
+
body: {
|
|
722
|
+
fontFamily: 'body',
|
|
723
|
+
fontWeight: 'body',
|
|
724
|
+
lineHeight: 'body',
|
|
725
|
+
},
|
|
726
|
+
caption: {
|
|
727
|
+
fontSize: 1,
|
|
728
|
+
color: 'textTertiary',
|
|
729
|
+
},
|
|
730
|
+
},
|
|
731
|
+
|
|
732
|
+
cards: {
|
|
733
|
+
primary: {
|
|
734
|
+
bg: 'surface',
|
|
735
|
+
border: '1px solid',
|
|
736
|
+
borderColor: 'border',
|
|
737
|
+
borderRadius: 3,
|
|
738
|
+
},
|
|
739
|
+
secondary: {
|
|
740
|
+
bg: 'backgroundSecondary',
|
|
741
|
+
border: '1px solid',
|
|
742
|
+
borderColor: 'border',
|
|
743
|
+
borderRadius: 3,
|
|
744
|
+
},
|
|
745
|
+
},
|
|
746
|
+
};
|