@optilogic/core 1.1.0 → 1.2.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.
@@ -2,64 +2,15 @@
2
2
  * Theme Presets
3
3
  *
4
4
  * Built-in theme definitions for opti-ui.
5
- * Ported from platform-leapfrog for consistent theming.
5
+ * Curated set of production-ready themes with proper contrast and border visibility.
6
6
  */
7
7
 
8
8
  import type { Theme } from "./types";
9
9
 
10
10
  /**
11
- * Green Theme - Alternative theme option
12
- */
13
- export const GREEN_THEME: Theme = {
14
- id: "green-theme",
15
- name: "Green Theme",
16
- description: "A green theme with natural, earthy tones",
17
- author: "Leapfrog",
18
- background: "#1a2820",
19
- foreground: "#E6F5EC",
20
- card: "#2d4038",
21
- cardForeground: "#E6F5EC",
22
- popover: "#243630",
23
- popoverForeground: "#E6F5EC",
24
- primary: "#6FCF97",
25
- primaryForeground: "#1a2820",
26
- accent: "#6FCF97",
27
- accentForeground: "#1a2820",
28
- secondary: "#1f3329",
29
- secondaryForeground: "#E6F5EC",
30
- muted: "#354840",
31
- mutedForeground: "#9DB8A8",
32
- destructive: "#EB5757",
33
- destructiveForeground: "#E6F5EC",
34
- success: "#6FCF97",
35
- successForeground: "#1a2820",
36
- warning: "#F2C94C",
37
- warningForeground: "#1a2820",
38
- chip: "#3a5045",
39
- chipForeground: "#C5E3D1",
40
- border: "#243630",
41
- input: "#243630",
42
- ring: "#6FCF97",
43
- toggleTrack: "#354840",
44
- toggleTrackForeground: "#E6F5EC",
45
- inputHover: "#6FCF97",
46
- chart1: "#6FCF97",
47
- chart2: "#8FE3B0",
48
- chart3: "#9DB8A8",
49
- chart4: "#2d4038",
50
- chart5: "#354840",
51
- chart6: "#4CAF50",
52
- chart7: "#81C784",
53
- chart8: "#F2C94C",
54
- chart9: "#EB5757",
55
- chart10: "#56CCF2",
56
- chart11: "#BB6BD9",
57
- chart12: "#2D9CDB",
58
- radius: "0.5rem",
59
- };
60
-
61
- /**
62
- * Optilogic Legacy Theme - Default theme
11
+ * Optilogic Legacy Theme - Default light theme
12
+ *
13
+ * Classic Optilogic branding with deep blue (#0C0A5A) primary.
63
14
  */
64
15
  export const OPTILOGIC_LEGACY_THEME: Theme = {
65
16
  id: "optilogic-legacy",
@@ -91,6 +42,8 @@ export const OPTILOGIC_LEGACY_THEME: Theme = {
91
42
  border: "#D0D0D0",
92
43
  input: "#D0D0D0",
93
44
  ring: "#5766F2",
45
+ popoverBorder: "#D0D0D0",
46
+ divider: "#D0D0D0",
94
47
  toggleTrack: "#D0D0D0",
95
48
  toggleTrackForeground: "#FFFFFF",
96
49
  inputHover: "#5766F2",
@@ -110,485 +63,246 @@ export const OPTILOGIC_LEGACY_THEME: Theme = {
110
63
  };
111
64
 
112
65
  /**
113
- * Futuristic Theme - Neon cyberpunk aesthetic
114
- */
115
- export const FUTURISTIC_THEME: Theme = {
116
- id: "futuristic",
117
- name: "Futuristic",
118
- description: "Neon cyberpunk aesthetic with electric blues and purples",
119
- author: "Leapfrog",
120
- background: "#0a0e27",
121
- foreground: "#e0e7ff",
122
- card: "#1a1f3a",
123
- cardForeground: "#e0e7ff",
124
- popover: "#1a1f3a",
125
- popoverForeground: "#e0e7ff",
126
- primary: "#6366f1",
127
- primaryForeground: "#ffffff",
128
- accent: "#8b5cf6",
129
- accentForeground: "#ffffff",
130
- secondary: "#1e293b",
131
- secondaryForeground: "#e0e7ff",
132
- muted: "#1e293b",
133
- mutedForeground: "#94a3b8",
134
- destructive: "#ef4444",
135
- destructiveForeground: "#ffffff",
136
- success: "#10b981",
137
- successForeground: "#ffffff",
138
- warning: "#f59e0b",
139
- warningForeground: "#ffffff",
140
- chip: "#312e81",
141
- chipForeground: "#c7d2fe",
142
- border: "#1e293b",
143
- input: "#1e293b",
144
- ring: "#6366f1",
145
- toggleTrack: "#334155",
146
- toggleTrackForeground: "#e0e7ff",
147
- inputHover: "#6366f1",
148
- chart1: "#6366f1",
149
- chart2: "#8b5cf6",
150
- chart3: "#a855f7",
151
- chart4: "#ec4899",
152
- chart5: "#f43f5e",
153
- chart6: "#06b6d4",
154
- chart7: "#14b8a6",
155
- chart8: "#f97316",
156
- chart9: "#eab308",
157
- chart10: "#22c55e",
158
- chart11: "#0ea5e9",
159
- chart12: "#f43f5e",
160
- radius: "0.5rem",
161
- };
162
-
163
- /**
164
- * Nature Inspired Theme - Earthy greens and browns
165
- */
166
- export const NATURE_THEME: Theme = {
167
- id: "nature",
168
- name: "Nature Inspired",
169
- description: "Earthy greens and browns inspired by forests and meadows",
170
- author: "Leapfrog",
171
- background: "#1a2e1a",
172
- foreground: "#e8f5e9",
173
- card: "#2d4a2d",
174
- cardForeground: "#e8f5e9",
175
- popover: "#243824",
176
- popoverForeground: "#e8f5e9",
177
- primary: "#4caf50",
178
- primaryForeground: "#1a2e1a",
179
- accent: "#66bb6a",
180
- accentForeground: "#1a2e1a",
181
- secondary: "#2d4a2d",
182
- secondaryForeground: "#e8f5e9",
183
- muted: "#3d5a3d",
184
- mutedForeground: "#a5d6a7",
185
- destructive: "#e57373",
186
- destructiveForeground: "#ffffff",
187
- success: "#66bb6a",
188
- successForeground: "#1a2e1a",
189
- warning: "#ffb74d",
190
- warningForeground: "#1a2e1a",
191
- chip: "#3d5a3d",
192
- chipForeground: "#c8e6c9",
193
- border: "#243824",
194
- input: "#243824",
195
- ring: "#4caf50",
196
- toggleTrack: "#3d5a3d",
197
- toggleTrackForeground: "#e8f5e9",
198
- inputHover: "#4caf50",
199
- chart1: "#4caf50",
200
- chart2: "#66bb6a",
201
- chart3: "#81c784",
202
- chart4: "#a5d6a7",
203
- chart5: "#c8e6c9",
204
- chart6: "#8bc34a",
205
- chart7: "#cddc39",
206
- chart8: "#ffb74d",
207
- chart9: "#4db6ac",
208
- chart10: "#7986cb",
209
- chart11: "#e57373",
210
- chart12: "#64b5f6",
211
- radius: "0.5rem",
212
- };
213
-
214
- /**
215
- * Sci-Fi Theme - Deep space with vibrant accents
216
- */
217
- export const SCIFI_THEME: Theme = {
218
- id: "scifi",
219
- name: "Sci-Fi",
220
- description: "Deep space aesthetic with vibrant cyan and magenta accents",
221
- author: "Leapfrog",
222
- background: "#0d1117",
223
- foreground: "#c9d1d9",
224
- card: "#161b22",
225
- cardForeground: "#c9d1d9",
226
- popover: "#161b22",
227
- popoverForeground: "#c9d1d9",
228
- primary: "#00d9ff",
229
- primaryForeground: "#0d1117",
230
- accent: "#ff00ff",
231
- accentForeground: "#ffffff",
232
- secondary: "#1c2128",
233
- secondaryForeground: "#c9d1d9",
234
- muted: "#21262d",
235
- mutedForeground: "#8b949e",
236
- destructive: "#ff6b6b",
237
- destructiveForeground: "#ffffff",
238
- success: "#00ff88",
239
- successForeground: "#0d1117",
240
- warning: "#ffd93d",
241
- warningForeground: "#0d1117",
242
- chip: "#1c2128",
243
- chipForeground: "#58a6ff",
244
- border: "#30363d",
245
- input: "#21262d",
246
- ring: "#00d9ff",
247
- toggleTrack: "#30363d",
248
- toggleTrackForeground: "#c9d1d9",
249
- inputHover: "#00d9ff",
250
- chart1: "#00d9ff",
251
- chart2: "#ff00ff",
252
- chart3: "#00ff88",
253
- chart4: "#ffd93d",
254
- chart5: "#58a6ff",
255
- chart6: "#ff6b6b",
256
- chart7: "#4ecdc4",
257
- chart8: "#a855f7",
258
- chart9: "#fb923c",
259
- chart10: "#38bdf8",
260
- chart11: "#f472b6",
261
- chart12: "#34d399",
262
- radius: "0.5rem",
263
- };
264
-
265
- /**
266
- * Ocean Theme - Calming blues and teals
267
- */
268
- export const OCEAN_THEME: Theme = {
269
- id: "ocean",
270
- name: "Ocean",
271
- description: "Calming blues and teals inspired by the deep sea",
272
- author: "Leapfrog",
273
- background: "#0a1929",
274
- foreground: "#e3f2fd",
275
- card: "#132f4c",
276
- cardForeground: "#e3f2fd",
277
- popover: "#0f2540",
278
- popoverForeground: "#e3f2fd",
279
- primary: "#2196f3",
280
- primaryForeground: "#ffffff",
281
- accent: "#00bcd4",
282
- accentForeground: "#0a1929",
283
- secondary: "#1565c0",
284
- secondaryForeground: "#ffffff",
285
- muted: "#1e3a5f",
286
- mutedForeground: "#90caf9",
287
- destructive: "#f44336",
288
- destructiveForeground: "#ffffff",
289
- success: "#4caf50",
290
- successForeground: "#ffffff",
291
- warning: "#ff9800",
292
- warningForeground: "#ffffff",
293
- chip: "#1565c0",
294
- chipForeground: "#bbdefb",
295
- border: "#1e3a5f",
296
- input: "#1e3a5f",
297
- ring: "#2196f3",
298
- toggleTrack: "#264a6e",
299
- toggleTrackForeground: "#e3f2fd",
300
- inputHover: "#2196f3",
301
- chart1: "#2196f3",
302
- chart2: "#00bcd4",
303
- chart3: "#03a9f4",
304
- chart4: "#0288d1",
305
- chart5: "#0277bd",
306
- chart6: "#26c6da",
307
- chart7: "#42a5f5",
308
- chart8: "#66bb6a",
309
- chart9: "#ffb74d",
310
- chart10: "#ef5350",
311
- chart11: "#ab47bc",
312
- chart12: "#78909c",
313
- radius: "0.5rem",
314
- };
315
-
316
- /**
317
- * Sunset Theme - Warm oranges and purples
66
+ * Optilogic Dark Theme - Branded dark mode
67
+ *
68
+ * Uses Optilogic marketing site colors for a branded dark experience.
69
+ * Primary palette: deep teal background with signature neon green accent.
318
70
  */
319
- export const SUNSET_THEME: Theme = {
320
- id: "sunset",
321
- name: "Sunset",
322
- description: "Warm oranges and purples like a beautiful sunset",
323
- author: "Leapfrog",
324
- background: "#1a0d1a",
325
- foreground: "#ffe0e6",
326
- card: "#2d1a2d",
327
- cardForeground: "#ffe0e6",
328
- popover: "#241424",
329
- popoverForeground: "#ffe0e6",
330
- primary: "#ff6b35",
331
- primaryForeground: "#ffffff",
332
- accent: "#c44569",
333
- accentForeground: "#ffffff",
334
- secondary: "#f7931e",
335
- secondaryForeground: "#1a0d1a",
336
- muted: "#3d2a3d",
337
- mutedForeground: "#ffb3c1",
338
- destructive: "#e63946",
339
- destructiveForeground: "#ffffff",
340
- success: "#06d6a0",
341
- successForeground: "#1a0d1a",
342
- warning: "#ffb703",
343
- warningForeground: "#1a0d1a",
344
- chip: "#3d2a3d",
345
- chipForeground: "#ffb3c1",
346
- border: "#241424",
347
- input: "#241424",
348
- ring: "#ff6b35",
349
- toggleTrack: "#3d2a3d",
350
- toggleTrackForeground: "#ffe0e6",
351
- inputHover: "#ff6b35",
352
- chart1: "#ff6b35",
353
- chart2: "#c44569",
354
- chart3: "#f7931e",
355
- chart4: "#ffb703",
356
- chart5: "#ff8c42",
357
- chart6: "#06d6a0",
358
- chart7: "#118ab2",
359
- chart8: "#ef476f",
360
- chart9: "#ffd166",
361
- chart10: "#073b4c",
362
- chart11: "#8338ec",
363
- chart12: "#3a86ff",
71
+ export const OPTILOGIC_DARK_THEME: Theme = {
72
+ id: "optilogic-dark",
73
+ name: "Optilogic Dark",
74
+ description: "Optilogic branded dark theme with signature green",
75
+ author: "Optilogic",
76
+ background: "#042926",
77
+ foreground: "#E0E7E6",
78
+ card: "#0A3F34",
79
+ cardForeground: "#E0E7E6",
80
+ popover: "#0A3F34",
81
+ popoverForeground: "#E0E7E6",
82
+ primary: "#23EF6A",
83
+ primaryForeground: "#042926",
84
+ accent: "#23EF6A",
85
+ accentForeground: "#042926",
86
+ secondary: "#0D4D3F",
87
+ secondaryForeground: "#E0E7E6",
88
+ muted: "#0D4D3F",
89
+ mutedForeground: "#9CB5B0",
90
+ destructive: "#EF4444",
91
+ destructiveForeground: "#FFFFFF",
92
+ success: "#23EF6A",
93
+ successForeground: "#042926",
94
+ warning: "#FBBF24",
95
+ warningForeground: "#042926",
96
+ chip: "#0D4D3F",
97
+ chipForeground: "#A7D5CA",
98
+ border: "#1A5C4C",
99
+ input: "#1A5C4C",
100
+ ring: "#23EF6A",
101
+ popoverBorder: "#237A64",
102
+ divider: "#1A5C4C",
103
+ toggleTrack: "#1A5C4C",
104
+ toggleTrackForeground: "#E0E7E6",
105
+ inputHover: "#23EF6A",
106
+ chart1: "#23EF6A",
107
+ chart2: "#3B82F6",
108
+ chart3: "#FBBF24",
109
+ chart4: "#F97316",
110
+ chart5: "#A78BFA",
111
+ chart6: "#EF4444",
112
+ chart7: "#06B6D4",
113
+ chart8: "#EC4899",
114
+ chart9: "#84CC16",
115
+ chart10: "#14B8A6",
116
+ chart11: "#F59E0B",
117
+ chart12: "#8B5CF6",
364
118
  radius: "0.5rem",
365
119
  };
366
120
 
367
121
  /**
368
- * Forest Theme - Deep greens and browns
122
+ * Modern Light Theme - Clean, readable light mode
123
+ *
124
+ * Neutral grays with blue primary for a modern, professional look.
125
+ * Reworked from the original Minimalist Light theme.
369
126
  */
370
- export const FOREST_THEME: Theme = {
371
- id: "forest",
372
- name: "Forest",
373
- description: "Deep greens and browns like an ancient forest",
374
- author: "Leapfrog",
375
- background: "#0d1b0d",
376
- foreground: "#e8f5e9",
377
- card: "#1a2e1a",
378
- cardForeground: "#e8f5e9",
379
- popover: "#152515",
380
- popoverForeground: "#e8f5e9",
381
- primary: "#2e7d32",
382
- primaryForeground: "#ffffff",
383
- accent: "#558b2f",
384
- accentForeground: "#ffffff",
385
- secondary: "#1b5e20",
386
- secondaryForeground: "#e8f5e9",
387
- muted: "#2d4a2d",
388
- mutedForeground: "#a5d6a7",
389
- destructive: "#c62828",
390
- destructiveForeground: "#ffffff",
391
- success: "#4caf50",
392
- successForeground: "#ffffff",
393
- warning: "#f57c00",
394
- warningForeground: "#ffffff",
395
- chip: "#2d4a2d",
396
- chipForeground: "#c8e6c9",
397
- border: "#1b5e20",
398
- input: "#1a2e1a",
399
- ring: "#2e7d32",
400
- toggleTrack: "#2d4a2d",
401
- toggleTrackForeground: "#e8f5e9",
402
- inputHover: "#2e7d32",
403
- chart1: "#2e7d32",
404
- chart2: "#388e3c",
405
- chart3: "#43a047",
406
- chart4: "#66bb6a",
407
- chart5: "#81c784",
408
- chart6: "#a5d6a7",
409
- chart7: "#c8e6c9",
410
- chart8: "#ffb74d",
411
- chart9: "#4db6ac",
412
- chart10: "#7986cb",
413
- chart11: "#e57373",
414
- chart12: "#64b5f6",
127
+ export const MODERN_LIGHT_THEME: Theme = {
128
+ id: "modern-light",
129
+ name: "Modern Light",
130
+ description: "Clean and modern light theme with blue accents",
131
+ author: "opti-ui",
132
+ background: "#FFFFFF",
133
+ foreground: "#1A1A1A",
134
+ card: "#F8F9FA",
135
+ cardForeground: "#1A1A1A",
136
+ popover: "#FFFFFF",
137
+ popoverForeground: "#1A1A1A",
138
+ primary: "#2563EB",
139
+ primaryForeground: "#FFFFFF",
140
+ accent: "#E9ECEF",
141
+ accentForeground: "#1A1A1A",
142
+ secondary: "#F1F3F5",
143
+ secondaryForeground: "#1A1A1A",
144
+ muted: "#E9ECEF",
145
+ mutedForeground: "#6C757D",
146
+ destructive: "#DC3545",
147
+ destructiveForeground: "#FFFFFF",
148
+ success: "#28A745",
149
+ successForeground: "#FFFFFF",
150
+ warning: "#FFC107",
151
+ warningForeground: "#1A1A1A",
152
+ chip: "#E9ECEF",
153
+ chipForeground: "#495057",
154
+ border: "#DEE2E6",
155
+ input: "#DEE2E6",
156
+ ring: "#2563EB",
157
+ popoverBorder: "#DEE2E6",
158
+ divider: "#DEE2E6",
159
+ toggleTrack: "#CED4DA",
160
+ toggleTrackForeground: "#FFFFFF",
161
+ inputHover: "#6C757D",
162
+ chart1: "#2563EB",
163
+ chart2: "#16A34A",
164
+ chart3: "#EA580C",
165
+ chart4: "#9333EA",
166
+ chart5: "#DC2626",
167
+ chart6: "#0891B2",
168
+ chart7: "#CA8A04",
169
+ chart8: "#DB2777",
170
+ chart9: "#4F46E5",
171
+ chart10: "#059669",
172
+ chart11: "#D97706",
173
+ chart12: "#7C3AED",
415
174
  radius: "0.5rem",
416
175
  };
417
176
 
418
- /**
419
- * Cyberpunk Theme - Neon pinks and cyans
420
- */
421
- export const CYBERPUNK_THEME: Theme = {
422
- id: "cyberpunk",
423
- name: "Cyberpunk",
424
- description: "Neon pinks and cyans with high contrast",
425
- author: "Leapfrog",
426
- background: "#0a0a0f",
427
- foreground: "#f0f0f0",
428
- card: "#1a1a2e",
429
- cardForeground: "#f0f0f0",
430
- popover: "#16213e",
431
- popoverForeground: "#f0f0f0",
432
- primary: "#ff00ff",
433
- primaryForeground: "#ffffff",
434
- accent: "#00ffff",
435
- accentForeground: "#0a0a0f",
436
- secondary: "#16213e",
437
- secondaryForeground: "#f0f0f0",
438
- muted: "#1a1a2e",
439
- mutedForeground: "#a0a0a0",
440
- destructive: "#ff1744",
441
- destructiveForeground: "#ffffff",
442
- success: "#00ff88",
443
- successForeground: "#0a0a0f",
444
- warning: "#ffd700",
445
- warningForeground: "#0a0a0f",
446
- chip: "#16213e",
447
- chipForeground: "#ff00ff",
448
- border: "#1a1a2e",
449
- input: "#16213e",
450
- ring: "#ff00ff",
451
- toggleTrack: "#2a2a4e",
452
- toggleTrackForeground: "#f0f0f0",
453
- inputHover: "#ff00ff",
454
- chart1: "#ff00ff",
455
- chart2: "#00ffff",
456
- chart3: "#00ff88",
457
- chart4: "#ffd700",
458
- chart5: "#ff1744",
459
- chart6: "#ff6b6b",
460
- chart7: "#4ecdc4",
461
- chart8: "#a855f7",
462
- chart9: "#fb923c",
463
- chart10: "#38bdf8",
464
- chart11: "#84cc16",
465
- chart12: "#f97316",
466
- radius: "0.5rem",
467
- };
177
+ /** @deprecated Use MODERN_LIGHT_THEME instead */
178
+ export const MINIMALIST_LIGHT_THEME = MODERN_LIGHT_THEME;
468
179
 
469
180
  /**
470
- * Minimalist Light Theme - Clean and simple
181
+ * Modern Dark Theme - Neutral, clean dark mode
182
+ *
183
+ * Zinc-based palette with blue accents. Strong border contrast
184
+ * for clear visual separation of UI elements.
471
185
  */
472
- export const MINIMALIST_LIGHT_THEME: Theme = {
473
- id: "minimalist-light",
474
- name: "Minimalist Light",
475
- description: "Clean and simple light theme with subtle grays",
476
- author: "Leapfrog",
477
- background: "#ffffff",
478
- foreground: "#1a1a1a",
479
- card: "#f8f9fa",
480
- cardForeground: "#1a1a1a",
481
- popover: "#ffffff",
482
- popoverForeground: "#1a1a1a",
483
- primary: "#000000",
484
- primaryForeground: "#ffffff",
485
- accent: "#e9ecef",
486
- accentForeground: "#1a1a1a",
487
- secondary: "#f1f3f5",
488
- secondaryForeground: "#1a1a1a",
489
- muted: "#e9ecef",
490
- mutedForeground: "#6c757d",
491
- destructive: "#dc3545",
492
- destructiveForeground: "#ffffff",
493
- success: "#28a745",
494
- successForeground: "#ffffff",
495
- warning: "#ffc107",
496
- warningForeground: "#1a1a1a",
497
- chip: "#e9ecef",
498
- chipForeground: "#495057",
499
- border: "#dee2e6",
500
- input: "#dee2e6",
501
- ring: "#000000",
502
- toggleTrack: "#ced4da",
503
- toggleTrackForeground: "#ffffff",
504
- inputHover: "#6c757d",
505
- chart1: "#000000",
506
- chart2: "#6c757d",
507
- chart3: "#adb5bd",
508
- chart4: "#dee2e6",
509
- chart5: "#e9ecef",
510
- chart6: "#343a40",
511
- chart7: "#495057",
512
- chart8: "#868e96",
513
- chart9: "#5c6bc0",
514
- chart10: "#26a69a",
515
- chart11: "#ef5350",
516
- chart12: "#ffa726",
186
+ export const MODERN_DARK_THEME: Theme = {
187
+ id: "modern-dark",
188
+ name: "Modern Dark",
189
+ description: "Clean, neutral dark theme with blue accents",
190
+ author: "opti-ui",
191
+ background: "#09090B",
192
+ foreground: "#FAFAFA",
193
+ card: "#18181B",
194
+ cardForeground: "#FAFAFA",
195
+ popover: "#18181B",
196
+ popoverForeground: "#FAFAFA",
197
+ primary: "#3B82F6",
198
+ primaryForeground: "#FFFFFF",
199
+ accent: "#27272A",
200
+ accentForeground: "#FAFAFA",
201
+ secondary: "#27272A",
202
+ secondaryForeground: "#FAFAFA",
203
+ muted: "#27272A",
204
+ mutedForeground: "#A1A1AA",
205
+ destructive: "#EF4444",
206
+ destructiveForeground: "#FFFFFF",
207
+ success: "#22C55E",
208
+ successForeground: "#FFFFFF",
209
+ warning: "#EAB308",
210
+ warningForeground: "#09090B",
211
+ chip: "#27272A",
212
+ chipForeground: "#D4D4D8",
213
+ border: "#3F3F46",
214
+ input: "#3F3F46",
215
+ ring: "#3B82F6",
216
+ popoverBorder: "#52525B",
217
+ divider: "#3F3F46",
218
+ toggleTrack: "#3F3F46",
219
+ toggleTrackForeground: "#FAFAFA",
220
+ inputHover: "#3B82F6",
221
+ chart1: "#3B82F6",
222
+ chart2: "#22C55E",
223
+ chart3: "#F59E0B",
224
+ chart4: "#EF4444",
225
+ chart5: "#A855F7",
226
+ chart6: "#14B8A6",
227
+ chart7: "#F97316",
228
+ chart8: "#EC4899",
229
+ chart9: "#0EA5E9",
230
+ chart10: "#EAB308",
231
+ chart11: "#10B981",
232
+ chart12: "#C084FC",
517
233
  radius: "0.5rem",
518
234
  };
519
235
 
520
236
  /**
521
237
  * Dark Elegant Theme - Sophisticated dark mode
238
+ *
239
+ * Deep charcoal with purple/teal accents for a refined aesthetic.
522
240
  */
523
241
  export const DARK_ELEGANT_THEME: Theme = {
524
242
  id: "dark-elegant",
525
243
  name: "Dark Elegant",
526
244
  description: "Sophisticated dark mode with refined colors",
527
- author: "Leapfrog",
245
+ author: "opti-ui",
528
246
  background: "#121212",
529
- foreground: "#e0e0e0",
530
- card: "#1e1e1e",
531
- cardForeground: "#e0e0e0",
532
- popover: "#1e1e1e",
533
- popoverForeground: "#e0e0e0",
534
- primary: "#bb86fc",
247
+ foreground: "#E0E0E0",
248
+ card: "#1E1E1E",
249
+ cardForeground: "#E0E0E0",
250
+ popover: "#1E1E1E",
251
+ popoverForeground: "#E0E0E0",
252
+ primary: "#BB86FC",
535
253
  primaryForeground: "#121212",
536
- accent: "#03dac6",
254
+ accent: "#03DAC6",
537
255
  accentForeground: "#121212",
538
- secondary: "#2d2d2d",
539
- secondaryForeground: "#e0e0e0",
540
- muted: "#2d2d2d",
541
- mutedForeground: "#9e9e9e",
542
- destructive: "#cf6679",
543
- destructiveForeground: "#ffffff",
544
- success: "#4caf50",
545
- successForeground: "#ffffff",
546
- warning: "#ff9800",
547
- warningForeground: "#ffffff",
548
- chip: "#2d2d2d",
549
- chipForeground: "#b39ddb",
550
- border: "#2d2d2d",
551
- input: "#1e1e1e",
552
- ring: "#bb86fc",
553
- toggleTrack: "#3d3d3d",
554
- toggleTrackForeground: "#e0e0e0",
555
- inputHover: "#bb86fc",
556
- chart1: "#bb86fc",
557
- chart2: "#03dac6",
558
- chart3: "#4caf50",
559
- chart4: "#ff9800",
560
- chart5: "#cf6679",
561
- chart6: "#64b5f6",
562
- chart7: "#81c784",
563
- chart8: "#ffb74d",
564
- chart9: "#e57373",
565
- chart10: "#7986cb",
566
- chart11: "#4db6ac",
567
- chart12: "#f06292",
256
+ secondary: "#2D2D2D",
257
+ secondaryForeground: "#E0E0E0",
258
+ muted: "#2D2D2D",
259
+ mutedForeground: "#9E9E9E",
260
+ destructive: "#CF6679",
261
+ destructiveForeground: "#FFFFFF",
262
+ success: "#4CAF50",
263
+ successForeground: "#FFFFFF",
264
+ warning: "#FF9800",
265
+ warningForeground: "#121212",
266
+ chip: "#2D2D2D",
267
+ chipForeground: "#B39DDB",
268
+ border: "#404040",
269
+ input: "#404040",
270
+ ring: "#BB86FC",
271
+ popoverBorder: "#525252",
272
+ divider: "#404040",
273
+ toggleTrack: "#404040",
274
+ toggleTrackForeground: "#E0E0E0",
275
+ inputHover: "#BB86FC",
276
+ chart1: "#BB86FC",
277
+ chart2: "#03DAC6",
278
+ chart3: "#4CAF50",
279
+ chart4: "#FF9800",
280
+ chart5: "#CF6679",
281
+ chart6: "#64B5F6",
282
+ chart7: "#81C784",
283
+ chart8: "#FFB74D",
284
+ chart9: "#E57373",
285
+ chart10: "#7986CB",
286
+ chart11: "#4DB6AC",
287
+ chart12: "#F06292",
568
288
  radius: "0.5rem",
569
289
  };
570
290
 
571
291
  /**
572
292
  * All available preset themes
573
293
  */
574
- export const PRESET_THEMES: Theme[] = [OPTILOGIC_LEGACY_THEME];
294
+ export const PRESET_THEMES: Theme[] = [
295
+ OPTILOGIC_LEGACY_THEME,
296
+ OPTILOGIC_DARK_THEME,
297
+ MODERN_LIGHT_THEME,
298
+ MODERN_DARK_THEME,
299
+ DARK_ELEGANT_THEME,
300
+ ];
575
301
 
576
302
  /**
577
303
  * All theme suggestions for preview
578
304
  */
579
- export const ALL_THEMES: Theme[] = [
580
- OPTILOGIC_LEGACY_THEME,
581
- FUTURISTIC_THEME,
582
- NATURE_THEME,
583
- SCIFI_THEME,
584
- OCEAN_THEME,
585
- SUNSET_THEME,
586
- FOREST_THEME,
587
- CYBERPUNK_THEME,
588
- MINIMALIST_LIGHT_THEME,
589
- DARK_ELEGANT_THEME,
590
- GREEN_THEME,
591
- ];
305
+ export const ALL_THEMES: Theme[] = PRESET_THEMES;
592
306
 
593
307
  /**
594
308
  * Get a preset theme by ID