@fakhrirafiki/theme-engine 0.2.2 → 0.2.6

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/index.js CHANGED
@@ -125,11 +125,56 @@ var ALL_CSS_PROPERTIES = [
125
125
  ];
126
126
 
127
127
  // src/data/tweakcn-presets.ts
128
+ var DEFAULT_ACCENT_COLORS = {
129
+ DARK: {
130
+ "accent-info": "#38BDF8",
131
+ // bright sky blue
132
+ "accent-info-foreground": "#0F172A",
133
+ "accent-success": "#4ADE80",
134
+ // fresh green
135
+ "accent-success-foreground": "#0F172A",
136
+ "accent-warning": "#FBBF24",
137
+ // amber gold
138
+ "accent-warning-foreground": "#0F172A",
139
+ "accent-danger": "#F87171",
140
+ // vivid red
141
+ "accent-danger-foreground": "#0F172A",
142
+ "accent-brand": "#FB923C",
143
+ // warm orange coral (brand)
144
+ "accent-brand-foreground": "#0F172A",
145
+ "accent-feature": "#F472B6",
146
+ // playful pink for feature highlight
147
+ "accent-feature-foreground": "#0F172A",
148
+ "accent-highlight": "#A78BFA",
149
+ // lavender for accents
150
+ "accent-highlight-foreground": "#0F172A"
151
+ },
152
+ LIGHT: {
153
+ "accent-info": "#3B82F6",
154
+ "accent-info-foreground": "#FFFFFF",
155
+ "accent-success": "#22C55E",
156
+ "accent-success-foreground": "#FFFFFF",
157
+ "accent-warning": "#F59E0B",
158
+ "accent-warning-foreground": "#FFFFFF",
159
+ "accent-danger": "#EF4444",
160
+ "accent-danger-foreground": "#FFFFFF",
161
+ "accent-brand": "#F97316",
162
+ // Coral orange
163
+ "accent-brand-foreground": "#FFFFFF",
164
+ "accent-feature": "#FB923C",
165
+ // Lighter orange
166
+ "accent-feature-foreground": "#0F172A",
167
+ "accent-highlight": "#E879F9",
168
+ // fun pink-violet accent
169
+ "accent-highlight-foreground": "#0F172A"
170
+ }
171
+ };
128
172
  var tweakcnPresets = {
129
173
  "modern-minimal": {
130
174
  label: "Modern Minimal",
131
175
  styles: {
132
176
  light: {
177
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
133
178
  background: "#ffffff",
134
179
  foreground: "#333333",
135
180
  card: "#ffffff",
@@ -168,6 +213,7 @@ var tweakcnPresets = {
168
213
  "font-mono": "JetBrains Mono, monospace"
169
214
  },
170
215
  dark: {
216
+ ...DEFAULT_ACCENT_COLORS.DARK,
171
217
  background: "#171717",
172
218
  foreground: "#e5e5e5",
173
219
  card: "#262626",
@@ -209,6 +255,7 @@ var tweakcnPresets = {
209
255
  createdAt: "2025-06-26",
210
256
  styles: {
211
257
  light: {
258
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
212
259
  background: "#fdfdfd",
213
260
  foreground: "#000000",
214
261
  card: "#fdfdfd",
@@ -255,6 +302,7 @@ var tweakcnPresets = {
255
302
  spacing: "0.27rem"
256
303
  },
257
304
  dark: {
305
+ ...DEFAULT_ACCENT_COLORS.DARK,
258
306
  background: "#1a1b1e",
259
307
  foreground: "#f0f0f0",
260
308
  card: "#222327",
@@ -307,6 +355,7 @@ var tweakcnPresets = {
307
355
  createdAt: "2025-04-19",
308
356
  styles: {
309
357
  light: {
358
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
310
359
  background: "#faf5fa",
311
360
  foreground: "#501854",
312
361
  card: "#faf5fa",
@@ -342,6 +391,7 @@ var tweakcnPresets = {
342
391
  radius: "0.5rem"
343
392
  },
344
393
  dark: {
394
+ ...DEFAULT_ACCENT_COLORS.DARK,
345
395
  background: "#221d27",
346
396
  foreground: "#d2c4de",
347
397
  card: "#2c2632",
@@ -382,6 +432,7 @@ var tweakcnPresets = {
382
432
  createdAt: "2025-04-24",
383
433
  styles: {
384
434
  light: {
435
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
385
436
  background: "#ffffff",
386
437
  foreground: "#0f1419",
387
438
  card: "#f7f8f8",
@@ -426,6 +477,7 @@ var tweakcnPresets = {
426
477
  "shadow-offset-y": "2px"
427
478
  },
428
479
  dark: {
480
+ ...DEFAULT_ACCENT_COLORS.DARK,
429
481
  background: "#000000",
430
482
  foreground: "#e7e9ea",
431
483
  card: "#17181c",
@@ -467,6 +519,7 @@ var tweakcnPresets = {
467
519
  createdAt: "2025-04-24",
468
520
  styles: {
469
521
  light: {
522
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
470
523
  background: "#F1F0E5",
471
524
  foreground: "#56453F",
472
525
  card: "#F1F0E5",
@@ -511,6 +564,7 @@ var tweakcnPresets = {
511
564
  "shadow-offset-y": "2px"
512
565
  },
513
566
  dark: {
567
+ ...DEFAULT_ACCENT_COLORS.DARK,
514
568
  background: "#2d2521",
515
569
  foreground: "#F1F0E5",
516
570
  card: "#3c332e",
@@ -552,6 +606,7 @@ var tweakcnPresets = {
552
606
  createdAt: "2025-04-18",
553
607
  styles: {
554
608
  light: {
609
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
555
610
  background: "#f6e6ee",
556
611
  foreground: "#5b5b5b",
557
612
  card: "#fdedc9",
@@ -596,6 +651,7 @@ var tweakcnPresets = {
596
651
  "shadow-offset-y": "3px"
597
652
  },
598
653
  dark: {
654
+ ...DEFAULT_ACCENT_COLORS.DARK,
599
655
  background: "#12242e",
600
656
  foreground: "#f3e3ea",
601
657
  card: "#1c2e38",
@@ -640,6 +696,7 @@ var tweakcnPresets = {
640
696
  createdAt: "2025-05-08",
641
697
  styles: {
642
698
  light: {
699
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
643
700
  background: "#f8f7fa",
644
701
  foreground: "#3d3c4f",
645
702
  card: "#ffffff",
@@ -686,6 +743,7 @@ var tweakcnPresets = {
686
743
  spacing: "0.25rem"
687
744
  },
688
745
  dark: {
746
+ ...DEFAULT_ACCENT_COLORS.DARK,
689
747
  background: "#1a1823",
690
748
  foreground: "#e0ddef",
691
749
  card: "#232030",
@@ -726,6 +784,7 @@ var tweakcnPresets = {
726
784
  createdAt: "2025-05-10",
727
785
  styles: {
728
786
  light: {
787
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
729
788
  background: "#f9f9f9",
730
789
  foreground: "#3a3a3a",
731
790
  card: "#ffffff",
@@ -772,6 +831,7 @@ var tweakcnPresets = {
772
831
  spacing: "0.25rem"
773
832
  },
774
833
  dark: {
834
+ ...DEFAULT_ACCENT_COLORS.DARK,
775
835
  background: "#2b2b2b",
776
836
  foreground: "#dcdcdc",
777
837
  card: "#333333",
@@ -824,6 +884,7 @@ var tweakcnPresets = {
824
884
  createdAt: "2025-04-28",
825
885
  styles: {
826
886
  light: {
887
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
827
888
  background: "#cccccc",
828
889
  foreground: "#1f1f1f",
829
890
  card: "#b0b0b0",
@@ -870,6 +931,7 @@ var tweakcnPresets = {
870
931
  spacing: "0.25rem"
871
932
  },
872
933
  dark: {
934
+ ...DEFAULT_ACCENT_COLORS.DARK,
873
935
  background: "#1a1a1a",
874
936
  foreground: "#e0e0e0",
875
937
  card: "#2a2a2a",
@@ -922,6 +984,7 @@ var tweakcnPresets = {
922
984
  createdAt: "2025-04-18",
923
985
  styles: {
924
986
  light: {
987
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
925
988
  background: "#eff1f5",
926
989
  foreground: "#4c4f69",
927
990
  card: "#ffffff",
@@ -966,6 +1029,7 @@ var tweakcnPresets = {
966
1029
  "shadow-offset-y": "4px"
967
1030
  },
968
1031
  dark: {
1032
+ ...DEFAULT_ACCENT_COLORS.DARK,
969
1033
  background: "#181825",
970
1034
  foreground: "#cdd6f4",
971
1035
  card: "#1e1e2e",
@@ -1006,6 +1070,7 @@ var tweakcnPresets = {
1006
1070
  createdAt: "2025-04-17",
1007
1071
  styles: {
1008
1072
  light: {
1073
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1009
1074
  background: "#f0f0f0",
1010
1075
  foreground: "#333333",
1011
1076
  card: "#f5f5f5",
@@ -1050,6 +1115,7 @@ var tweakcnPresets = {
1050
1115
  "shadow-offset-y": "2px"
1051
1116
  },
1052
1117
  dark: {
1118
+ ...DEFAULT_ACCENT_COLORS.DARK,
1053
1119
  background: "#1a1a1a",
1054
1120
  foreground: "#d9d9d9",
1055
1121
  card: "#202020",
@@ -1093,6 +1159,7 @@ var tweakcnPresets = {
1093
1159
  createdAt: "2025-04-01",
1094
1160
  styles: {
1095
1161
  light: {
1162
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1096
1163
  background: "#e8f0f0",
1097
1164
  foreground: "#0a4a55",
1098
1165
  card: "#f2f7f7",
@@ -1137,6 +1204,7 @@ var tweakcnPresets = {
1137
1204
  "shadow-offset-y": "1px"
1138
1205
  },
1139
1206
  dark: {
1207
+ ...DEFAULT_ACCENT_COLORS.DARK,
1140
1208
  background: "#0a1a20",
1141
1209
  foreground: "#4de8e8",
1142
1210
  card: "#0c2025",
@@ -1186,6 +1254,7 @@ var tweakcnPresets = {
1186
1254
  label: "Kodama Grove",
1187
1255
  styles: {
1188
1256
  light: {
1257
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1189
1258
  background: "#e4d7b0",
1190
1259
  foreground: "#5c4b3e",
1191
1260
  card: "#e7dbbf",
@@ -1230,6 +1299,7 @@ var tweakcnPresets = {
1230
1299
  "shadow-offset-y": "3px"
1231
1300
  },
1232
1301
  dark: {
1302
+ ...DEFAULT_ACCENT_COLORS.DARK,
1233
1303
  background: "#3a3529",
1234
1304
  foreground: "#ede4d4",
1235
1305
  card: "#413c33",
@@ -1270,6 +1340,7 @@ var tweakcnPresets = {
1270
1340
  createdAt: "2025-04-04",
1271
1341
  styles: {
1272
1342
  light: {
1343
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1273
1344
  background: "#f5f5ff",
1274
1345
  foreground: "#2a2a4a",
1275
1346
  card: "#ffffff",
@@ -1314,6 +1385,7 @@ var tweakcnPresets = {
1314
1385
  "shadow-offset-y": "4px"
1315
1386
  },
1316
1387
  dark: {
1388
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1317
1389
  background: "#0f0f1a",
1318
1390
  foreground: "#e2e2f5",
1319
1391
  card: "#1a1a2e",
@@ -1355,6 +1427,7 @@ var tweakcnPresets = {
1355
1427
  createdAt: "2025-04-09",
1356
1428
  styles: {
1357
1429
  light: {
1430
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1358
1431
  background: "#e8ebed",
1359
1432
  foreground: "#333333",
1360
1433
  card: "#ffffff",
@@ -1399,6 +1472,7 @@ var tweakcnPresets = {
1399
1472
  "shadow-offset-y": "1px"
1400
1473
  },
1401
1474
  dark: {
1475
+ ...DEFAULT_ACCENT_COLORS.DARK,
1402
1476
  background: "#1c2433",
1403
1477
  foreground: "#e5e5e5",
1404
1478
  card: "#2a3040",
@@ -1439,6 +1513,7 @@ var tweakcnPresets = {
1439
1513
  createdAt: "2025-04-03",
1440
1514
  styles: {
1441
1515
  light: {
1516
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1442
1517
  background: "#fff0f8",
1443
1518
  foreground: "#91185c",
1444
1519
  card: "#fff7fc",
@@ -1483,6 +1558,7 @@ var tweakcnPresets = {
1483
1558
  "shadow-offset-y": "3px"
1484
1559
  },
1485
1560
  dark: {
1561
+ ...DEFAULT_ACCENT_COLORS.DARK,
1486
1562
  background: "#1a0922",
1487
1563
  foreground: "#ffb3ff",
1488
1564
  card: "#2a1435",
@@ -1526,6 +1602,7 @@ var tweakcnPresets = {
1526
1602
  label: "Nature",
1527
1603
  styles: {
1528
1604
  light: {
1605
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1529
1606
  background: "#f8f5f0",
1530
1607
  foreground: "#3e2723",
1531
1608
  card: "#f8f5f0",
@@ -1564,6 +1641,7 @@ var tweakcnPresets = {
1564
1641
  "font-mono": "Source Code Pro, monospace"
1565
1642
  },
1566
1643
  dark: {
1644
+ ...DEFAULT_ACCENT_COLORS.DARK,
1567
1645
  background: "#1c2a1f",
1568
1646
  foreground: "#f0ebe5",
1569
1647
  card: "#2d3a2e",
@@ -1604,6 +1682,7 @@ var tweakcnPresets = {
1604
1682
  label: "Bold Tech",
1605
1683
  styles: {
1606
1684
  light: {
1685
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1607
1686
  background: "#ffffff",
1608
1687
  foreground: "#312e81",
1609
1688
  card: "#ffffff",
@@ -1648,6 +1727,7 @@ var tweakcnPresets = {
1648
1727
  "shadow-offset-y": "2px"
1649
1728
  },
1650
1729
  dark: {
1730
+ ...DEFAULT_ACCENT_COLORS.DARK,
1651
1731
  background: "#0f172a",
1652
1732
  foreground: "#e0e7ff",
1653
1733
  card: "#1e1b4b",
@@ -1688,6 +1768,7 @@ var tweakcnPresets = {
1688
1768
  label: "Elegant Luxury",
1689
1769
  styles: {
1690
1770
  light: {
1771
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1691
1772
  background: "#faf7f5",
1692
1773
  foreground: "#1a1a1a",
1693
1774
  card: "#faf7f5",
@@ -1732,6 +1813,7 @@ var tweakcnPresets = {
1732
1813
  "shadow-offset-y": "1px"
1733
1814
  },
1734
1815
  dark: {
1816
+ ...DEFAULT_ACCENT_COLORS.DARK,
1735
1817
  background: "#1c1917",
1736
1818
  foreground: "#f5f5f4",
1737
1819
  card: "#292524",
@@ -1773,6 +1855,7 @@ var tweakcnPresets = {
1773
1855
  createdAt: "2025-04-27",
1774
1856
  styles: {
1775
1857
  light: {
1858
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1776
1859
  background: "#ffffff",
1777
1860
  foreground: "#262626",
1778
1861
  card: "#ffffff",
@@ -1819,6 +1902,7 @@ var tweakcnPresets = {
1819
1902
  spacing: "0.25rem"
1820
1903
  },
1821
1904
  dark: {
1905
+ ...DEFAULT_ACCENT_COLORS.DARK,
1822
1906
  background: "#171717",
1823
1907
  foreground: "#e5e5e5",
1824
1908
  card: "#262626",
@@ -1859,6 +1943,7 @@ var tweakcnPresets = {
1859
1943
  createdAt: "2025-04-27",
1860
1944
  styles: {
1861
1945
  light: {
1946
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1862
1947
  background: "#fcfcfc",
1863
1948
  foreground: "#171717",
1864
1949
  card: "#fcfcfc",
@@ -1904,6 +1989,7 @@ var tweakcnPresets = {
1904
1989
  "letter-spacing": "0.025em"
1905
1990
  },
1906
1991
  dark: {
1992
+ ...DEFAULT_ACCENT_COLORS.DARK,
1907
1993
  background: "#121212",
1908
1994
  foreground: "#e2e8f0",
1909
1995
  card: "#171717",
@@ -1943,6 +2029,7 @@ var tweakcnPresets = {
1943
2029
  label: "Neo Brutalism",
1944
2030
  styles: {
1945
2031
  light: {
2032
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
1946
2033
  background: "#ffffff",
1947
2034
  foreground: "#000000",
1948
2035
  card: "#ffffff",
@@ -1986,6 +2073,7 @@ var tweakcnPresets = {
1986
2073
  "shadow-offset-y": "4px"
1987
2074
  },
1988
2075
  dark: {
2076
+ ...DEFAULT_ACCENT_COLORS.DARK,
1989
2077
  background: "#000000",
1990
2078
  foreground: "#ffffff",
1991
2079
  card: "#333333",
@@ -2027,6 +2115,7 @@ var tweakcnPresets = {
2027
2115
  createdAt: "2025-04-12",
2028
2116
  styles: {
2029
2117
  light: {
2118
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2030
2119
  background: "#FDFBF7",
2031
2120
  foreground: "#4A3B33",
2032
2121
  card: "#F8F4EE",
@@ -2071,6 +2160,7 @@ var tweakcnPresets = {
2071
2160
  "shadow-offset-y": "2px"
2072
2161
  },
2073
2162
  dark: {
2163
+ ...DEFAULT_ACCENT_COLORS.DARK,
2074
2164
  background: "#1C1917",
2075
2165
  foreground: "#F5F5F4",
2076
2166
  card: "#292524",
@@ -2112,6 +2202,7 @@ var tweakcnPresets = {
2112
2202
  label: "Claymorphism",
2113
2203
  styles: {
2114
2204
  light: {
2205
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2115
2206
  background: "#e7e5e4",
2116
2207
  foreground: "#1e293b",
2117
2208
  card: "#f5f5f4",
@@ -2156,6 +2247,7 @@ var tweakcnPresets = {
2156
2247
  "shadow-offset-y": "2px"
2157
2248
  },
2158
2249
  dark: {
2250
+ ...DEFAULT_ACCENT_COLORS.DARK,
2159
2251
  background: "#1e1b18",
2160
2252
  foreground: "#e2e8f0",
2161
2253
  card: "#2c2825",
@@ -2197,6 +2289,7 @@ var tweakcnPresets = {
2197
2289
  label: "Cyberpunk",
2198
2290
  styles: {
2199
2291
  light: {
2292
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2200
2293
  background: "#f8f9fa",
2201
2294
  foreground: "#0c0c1d",
2202
2295
  card: "#ffffff",
@@ -2280,6 +2373,7 @@ var tweakcnPresets = {
2280
2373
  label: "Pastel Dreams",
2281
2374
  styles: {
2282
2375
  light: {
2376
+ ...DEFAULT_ACCENT_COLORS.DARK,
2283
2377
  background: "#f7f3f9",
2284
2378
  foreground: "#374151",
2285
2379
  card: "#ffffff",
@@ -2364,6 +2458,7 @@ var tweakcnPresets = {
2364
2458
  label: "Clean Slate",
2365
2459
  styles: {
2366
2460
  light: {
2461
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2367
2462
  background: "#f8fafc",
2368
2463
  foreground: "#1e293b",
2369
2464
  card: "#ffffff",
@@ -2408,6 +2503,7 @@ var tweakcnPresets = {
2408
2503
  "shadow-offset-y": "4px"
2409
2504
  },
2410
2505
  dark: {
2506
+ ...DEFAULT_ACCENT_COLORS.DARK,
2411
2507
  background: "#0f172a",
2412
2508
  foreground: "#e2e8f0",
2413
2509
  card: "#1e293b",
@@ -2448,6 +2544,7 @@ var tweakcnPresets = {
2448
2544
  label: "Caffeine",
2449
2545
  styles: {
2450
2546
  light: {
2547
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2451
2548
  background: "#f9f9f9",
2452
2549
  foreground: "#202020",
2453
2550
  card: "#fcfcfc",
@@ -2483,6 +2580,7 @@ var tweakcnPresets = {
2483
2580
  radius: "0.5rem"
2484
2581
  },
2485
2582
  dark: {
2583
+ ...DEFAULT_ACCENT_COLORS.DARK,
2486
2584
  background: "#111111",
2487
2585
  foreground: "#eeeeee",
2488
2586
  card: "#191919",
@@ -2523,6 +2621,7 @@ var tweakcnPresets = {
2523
2621
  label: "Ocean Breeze",
2524
2622
  styles: {
2525
2623
  light: {
2624
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2526
2625
  background: "#f0f8ff",
2527
2626
  foreground: "#374151",
2528
2627
  card: "#ffffff",
@@ -2567,6 +2666,7 @@ var tweakcnPresets = {
2567
2666
  "shadow-offset-y": "4px"
2568
2667
  },
2569
2668
  dark: {
2669
+ ...DEFAULT_ACCENT_COLORS.DARK,
2570
2670
  background: "#0f172a",
2571
2671
  foreground: "#d1d5db",
2572
2672
  card: "#1e293b",
@@ -2607,6 +2707,7 @@ var tweakcnPresets = {
2607
2707
  label: "Retro Arcade",
2608
2708
  styles: {
2609
2709
  light: {
2710
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2610
2711
  background: "#fdf6e3",
2611
2712
  foreground: "#073642",
2612
2713
  card: "#eee8d5",
@@ -2650,6 +2751,7 @@ var tweakcnPresets = {
2650
2751
  "shadow-offset-y": "2px"
2651
2752
  },
2652
2753
  dark: {
2754
+ ...DEFAULT_ACCENT_COLORS.DARK,
2653
2755
  background: "#002b36",
2654
2756
  foreground: "#93a1a1",
2655
2757
  card: "#073642",
@@ -2690,6 +2792,7 @@ var tweakcnPresets = {
2690
2792
  label: "Midnight Bloom",
2691
2793
  styles: {
2692
2794
  light: {
2795
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2693
2796
  background: "#f9f9f9",
2694
2797
  foreground: "#333333",
2695
2798
  card: "#ffffff",
@@ -2734,6 +2837,7 @@ var tweakcnPresets = {
2734
2837
  "shadow-offset-y": "5px"
2735
2838
  },
2736
2839
  dark: {
2840
+ ...DEFAULT_ACCENT_COLORS.DARK,
2737
2841
  background: "#1a1d23",
2738
2842
  foreground: "#e5e5e5",
2739
2843
  card: "#2f3436",
@@ -2774,6 +2878,7 @@ var tweakcnPresets = {
2774
2878
  label: "Candyland",
2775
2879
  styles: {
2776
2880
  light: {
2881
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2777
2882
  background: "#f7f9fa",
2778
2883
  foreground: "#333333",
2779
2884
  card: "#ffffff",
@@ -2811,6 +2916,7 @@ var tweakcnPresets = {
2811
2916
  "font-mono": "Roboto Mono, monospace"
2812
2917
  },
2813
2918
  dark: {
2919
+ ...DEFAULT_ACCENT_COLORS.DARK,
2814
2920
  background: "#1a1d23",
2815
2921
  foreground: "#e5e5e5",
2816
2922
  card: "#2f3436",
@@ -2851,6 +2957,7 @@ var tweakcnPresets = {
2851
2957
  label: "Northern Lights",
2852
2958
  styles: {
2853
2959
  light: {
2960
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2854
2961
  background: "#f9f9fa",
2855
2962
  foreground: "#333333",
2856
2963
  card: "#ffffff",
@@ -2889,6 +2996,7 @@ var tweakcnPresets = {
2889
2996
  "font-mono": "JetBrains Mono, monospace"
2890
2997
  },
2891
2998
  dark: {
2999
+ ...DEFAULT_ACCENT_COLORS.DARK,
2892
3000
  background: "#1a1d23",
2893
3001
  foreground: "#e5e5e5",
2894
3002
  card: "#2f3436",
@@ -2929,6 +3037,7 @@ var tweakcnPresets = {
2929
3037
  label: "Vintage Paper",
2930
3038
  styles: {
2931
3039
  light: {
3040
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
2932
3041
  background: "#f5f1e6",
2933
3042
  foreground: "#4a3f35",
2934
3043
  card: "#fffcf5",
@@ -2973,6 +3082,7 @@ var tweakcnPresets = {
2973
3082
  "shadow-offset-y": "3px"
2974
3083
  },
2975
3084
  dark: {
3085
+ ...DEFAULT_ACCENT_COLORS.DARK,
2976
3086
  background: "#2d2621",
2977
3087
  foreground: "#ece5d8",
2978
3088
  card: "#3a322c",
@@ -3013,6 +3123,7 @@ var tweakcnPresets = {
3013
3123
  label: "Sunset Horizon",
3014
3124
  styles: {
3015
3125
  light: {
3126
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
3016
3127
  background: "#fff9f5",
3017
3128
  foreground: "#3d3436",
3018
3129
  card: "#ffffff",
@@ -3057,6 +3168,7 @@ var tweakcnPresets = {
3057
3168
  "shadow-offset-y": "6px"
3058
3169
  },
3059
3170
  dark: {
3171
+ ...DEFAULT_ACCENT_COLORS.DARK,
3060
3172
  background: "#2a2024",
3061
3173
  foreground: "#f2e9e4",
3062
3174
  card: "#392f35",
@@ -3098,6 +3210,7 @@ var tweakcnPresets = {
3098
3210
  createdAt: "2025-04-16",
3099
3211
  styles: {
3100
3212
  light: {
3213
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
3101
3214
  background: "#f5f7fa",
3102
3215
  foreground: "#1a2238",
3103
3216
  card: "#e3eaf2",
@@ -3134,6 +3247,7 @@ var tweakcnPresets = {
3134
3247
  radius: "0.5rem"
3135
3248
  },
3136
3249
  dark: {
3250
+ ...DEFAULT_ACCENT_COLORS.DARK,
3137
3251
  background: "#181a24",
3138
3252
  foreground: "#e6eaf3",
3139
3253
  card: "#23243a",
@@ -3174,6 +3288,7 @@ var tweakcnPresets = {
3174
3288
  label: "Claude",
3175
3289
  styles: {
3176
3290
  light: {
3291
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
3177
3292
  background: "#faf9f5",
3178
3293
  foreground: "#3d3929",
3179
3294
  card: "#faf9f5",
@@ -3209,6 +3324,7 @@ var tweakcnPresets = {
3209
3324
  radius: "0.5rem"
3210
3325
  },
3211
3326
  dark: {
3327
+ ...DEFAULT_ACCENT_COLORS.DARK,
3212
3328
  background: "#262624",
3213
3329
  foreground: "#c3c0b6",
3214
3330
  card: "#262624",
@@ -3249,6 +3365,7 @@ var tweakcnPresets = {
3249
3365
  createdAt: "2025-04-13",
3250
3366
  styles: {
3251
3367
  light: {
3368
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
3252
3369
  background: "oklch(0.99 0 0)",
3253
3370
  foreground: "oklch(0 0 0)",
3254
3371
  card: "oklch(1.00 0 0)",
@@ -3293,6 +3410,7 @@ var tweakcnPresets = {
3293
3410
  "shadow-offset-y": "1px"
3294
3411
  },
3295
3412
  dark: {
3413
+ ...DEFAULT_ACCENT_COLORS.DARK,
3296
3414
  background: "oklch(0 0 0)",
3297
3415
  foreground: "oklch(1.00 0 0)",
3298
3416
  card: "oklch(0.14 0 0)",
@@ -3336,6 +3454,7 @@ var tweakcnPresets = {
3336
3454
  createdAt: "2025-04-20",
3337
3455
  styles: {
3338
3456
  light: {
3457
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
3339
3458
  background: "#ffffff",
3340
3459
  foreground: "#0a0a0a",
3341
3460
  card: "#ffffff",
@@ -3380,6 +3499,7 @@ var tweakcnPresets = {
3380
3499
  "shadow-offset-y": "1px"
3381
3500
  },
3382
3501
  dark: {
3502
+ ...DEFAULT_ACCENT_COLORS.DARK,
3383
3503
  background: "#0a0a0a",
3384
3504
  foreground: "#fafafa",
3385
3505
  card: "#191919",
@@ -3420,6 +3540,7 @@ var tweakcnPresets = {
3420
3540
  createdAt: "2025-07-08",
3421
3541
  styles: {
3422
3542
  light: {
3543
+ ...DEFAULT_ACCENT_COLORS.LIGHT,
3423
3544
  background: "#f7f9f3",
3424
3545
  foreground: "#000000",
3425
3546
  card: "#ffffff",
@@ -3466,6 +3587,7 @@ var tweakcnPresets = {
3466
3587
  spacing: "0.25rem"
3467
3588
  },
3468
3589
  dark: {
3590
+ ...DEFAULT_ACCENT_COLORS.DARK,
3469
3591
  background: "#000000",
3470
3592
  foreground: "#ffffff",
3471
3593
  card: "#1a212b",
@@ -3525,9 +3647,7 @@ function getPresetLabels() {
3525
3647
  }
3526
3648
  function searchPresets(query) {
3527
3649
  const lowerQuery = query.toLowerCase();
3528
- return Object.entries(tweakcnPresets).filter(
3529
- ([id, preset]) => preset.label.toLowerCase().includes(lowerQuery) || id.toLowerCase().includes(lowerQuery)
3530
- ).map(([id, preset]) => ({ id, preset }));
3650
+ return Object.entries(tweakcnPresets).filter(([id, preset]) => preset.label.toLowerCase().includes(lowerQuery) || id.toLowerCase().includes(lowerQuery)).map(([id, preset]) => ({ id, preset }));
3531
3651
  }
3532
3652
  function getPresetsCount() {
3533
3653
  return Object.keys(tweakcnPresets).length;
@@ -3748,9 +3868,12 @@ function ThemeProvider({
3748
3868
  }, [includeBuiltInPresets, customPresets]);
3749
3869
  const builtInPresets = (0, import_react.useMemo)(() => includeBuiltInPresets ? tweakcnPresets : {}, [includeBuiltInPresets]);
3750
3870
  const normalizedCustomPresets = (0, import_react.useMemo)(() => customPresets || {}, [customPresets]);
3751
- const getAvailablePresetById = (0, import_react.useCallback)((id) => {
3752
- return availablePresets[id] || null;
3753
- }, [availablePresets]);
3871
+ const getAvailablePresetById = (0, import_react.useCallback)(
3872
+ (id) => {
3873
+ return availablePresets[id] || null;
3874
+ },
3875
+ [availablePresets]
3876
+ );
3754
3877
  const [currentPreset, setCurrentPreset] = (0, import_react.useState)(null);
3755
3878
  const [isReady, setIsReady] = (0, import_react.useState)(false);
3756
3879
  (0, import_react.useEffect)(() => {
@@ -3760,10 +3883,9 @@ function ThemeProvider({
3760
3883
  }
3761
3884
  try {
3762
3885
  const stored = localStorage.getItem(presetStorageKey);
3763
- if (stored) {
3764
- const preset = JSON.parse(stored);
3765
- setCurrentPreset(preset);
3766
- } else if (defaultPreset) {
3886
+ const isDevelopment = typeof window !== "undefined" && window.location?.hostname === "localhost";
3887
+ const applyDefaultPreset = () => {
3888
+ if (!defaultPreset) return;
3767
3889
  const preset = getAvailablePresetById(defaultPreset);
3768
3890
  if (preset) {
3769
3891
  const presetData = {
@@ -3779,13 +3901,42 @@ function ThemeProvider({
3779
3901
  } else {
3780
3902
  console.warn("\u{1F3A8} UnifiedTheme: Default preset not found:", defaultPreset);
3781
3903
  }
3904
+ };
3905
+ if (stored) {
3906
+ try {
3907
+ const parsed = JSON.parse(stored);
3908
+ const isValidObject = parsed && typeof parsed === "object";
3909
+ const hasColors = isValidObject && "colors" in parsed && parsed.colors && typeof parsed.colors === "object" && parsed.colors.light && parsed.colors.dark;
3910
+ if (hasColors) {
3911
+ setCurrentPreset(parsed);
3912
+ if (isDevelopment) {
3913
+ }
3914
+ } else {
3915
+ if (isDevelopment) {
3916
+ console.warn("\u{1F3A8} UnifiedTheme: Invalid persisted preset shape. Clearing and falling back.");
3917
+ }
3918
+ localStorage.removeItem(presetStorageKey);
3919
+ applyDefaultPreset();
3920
+ }
3921
+ } catch (error) {
3922
+ if (isDevelopment) {
3923
+ console.warn("\u{1F3A8} UnifiedTheme: Failed to parse persisted preset. Clearing key.", error);
3924
+ }
3925
+ localStorage.removeItem(presetStorageKey);
3926
+ applyDefaultPreset();
3927
+ }
3928
+ } else {
3929
+ applyDefaultPreset();
3782
3930
  }
3783
3931
  } catch (error) {
3784
- console.warn("\u{1F3A8} UnifiedTheme: Failed to load preset:", error);
3932
+ const isDevelopment = typeof window !== "undefined" && window.location?.hostname === "localhost";
3933
+ if (isDevelopment) {
3934
+ console.warn("\u{1F3A8} UnifiedTheme: Failed to load preset from storage:", error);
3935
+ }
3785
3936
  } finally {
3786
3937
  setIsReady(true);
3787
3938
  }
3788
- }, [presetStorageKey, enablePresets, defaultPreset]);
3939
+ }, [presetStorageKey, enablePresets, defaultPreset, getAvailablePresetById]);
3789
3940
  (0, import_react.useEffect)(() => {
3790
3941
  if (mode === "system") {
3791
3942
  const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
@@ -3806,11 +3957,12 @@ function ThemeProvider({
3806
3957
  root.style.colorScheme = resolvedMode;
3807
3958
  }, [resolvedMode]);
3808
3959
  const applyPresetColors = (0, import_react.useCallback)((preset, mode2) => {
3960
+ if (!preset) return;
3809
3961
  const root = document.documentElement;
3810
3962
  const colors = preset[mode2];
3811
3963
  if (!colors) return;
3812
3964
  const defaultValues = {
3813
- "spacing": "0.25rem",
3965
+ spacing: "0.25rem",
3814
3966
  "letter-spacing": "normal"
3815
3967
  };
3816
3968
  const allCategories = [
@@ -3849,67 +4001,79 @@ function ThemeProvider({
3849
4001
  }
3850
4002
  });
3851
4003
  }, []);
3852
- const handleModeChange = (0, import_react.useCallback)((newMode) => {
3853
- setMode(newMode);
3854
- setStoredMode(newMode, modeStorageKey);
3855
- }, [modeStorageKey]);
3856
- const handleModeToggle = (0, import_react.useCallback)((coordinates) => {
3857
- const newMode = resolvedMode === "light" ? "dark" : "light";
3858
- const prefersReducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
3859
- if (enableTransitions && !prefersReducedMotion && typeof document !== "undefined" && "startViewTransition" in document) {
3860
- const root = document.documentElement;
3861
- if (coordinates) {
3862
- root.style.setProperty("--x", `${coordinates.x}px`);
3863
- root.style.setProperty("--y", `${coordinates.y}px`);
3864
- }
3865
- document.startViewTransition(() => {
4004
+ const handleModeChange = (0, import_react.useCallback)(
4005
+ (newMode) => {
4006
+ setMode(newMode);
4007
+ setStoredMode(newMode, modeStorageKey);
4008
+ },
4009
+ [modeStorageKey]
4010
+ );
4011
+ const handleModeToggle = (0, import_react.useCallback)(
4012
+ (coordinates) => {
4013
+ const newMode = resolvedMode === "light" ? "dark" : "light";
4014
+ const prefersReducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
4015
+ if (enableTransitions && !prefersReducedMotion && typeof document !== "undefined" && "startViewTransition" in document) {
4016
+ const root = document.documentElement;
4017
+ if (coordinates) {
4018
+ root.style.setProperty("--x", `${coordinates.x}px`);
4019
+ root.style.setProperty("--y", `${coordinates.y}px`);
4020
+ }
4021
+ document.startViewTransition(() => {
4022
+ handleModeChange(newMode);
4023
+ });
4024
+ } else {
3866
4025
  handleModeChange(newMode);
3867
- });
3868
- } else {
3869
- handleModeChange(newMode);
3870
- }
3871
- }, [resolvedMode, enableTransitions, handleModeChange]);
4026
+ }
4027
+ },
4028
+ [resolvedMode, enableTransitions, handleModeChange]
4029
+ );
3872
4030
  (0, import_react.useEffect)(() => {
3873
4031
  if (!currentPreset || typeof window === "undefined") return;
3874
4032
  applyPresetColors(currentPreset.colors, resolvedMode);
3875
4033
  }, [currentPreset, resolvedMode, applyPresetColors]);
3876
- const applyPreset = (0, import_react.useCallback)((preset) => {
3877
- const presetData = {
3878
- presetId: preset.id,
3879
- presetName: preset.name,
3880
- colors: preset.colors,
3881
- appliedAt: Date.now()
3882
- };
3883
- setCurrentPreset(presetData);
3884
- if (enablePresets && typeof window !== "undefined") {
3885
- try {
3886
- localStorage.setItem(presetStorageKey, JSON.stringify(presetData));
3887
- } catch (error) {
3888
- console.error("\u{1F3A8} UnifiedTheme: Failed to save preset:", error);
4034
+ const applyPreset = (0, import_react.useCallback)(
4035
+ (preset) => {
4036
+ const presetData = {
4037
+ presetId: preset.id,
4038
+ presetName: preset.name,
4039
+ colors: preset.colors,
4040
+ appliedAt: Date.now()
4041
+ };
4042
+ setCurrentPreset(presetData);
4043
+ if (enablePresets && typeof window !== "undefined") {
4044
+ try {
4045
+ localStorage.setItem(presetStorageKey, JSON.stringify(presetData));
4046
+ } catch (error) {
4047
+ console.error("\u{1F3A8} UnifiedTheme: Failed to save preset:", error);
4048
+ }
3889
4049
  }
3890
- }
3891
- if (typeof window !== "undefined") {
3892
- applyPresetColors(preset.colors, resolvedMode);
3893
- }
3894
- }, [presetStorageKey, enablePresets, applyPresetColors, resolvedMode]);
3895
- const setThemePresetById = (0, import_react.useCallback)((presetId) => {
3896
- const preset = getAvailablePresetById(presetId);
3897
- if (!preset) {
3898
4050
  if (typeof window !== "undefined") {
3899
- console.warn("\u{1F3A8} UnifiedTheme: Preset not found for id:", presetId);
4051
+ applyPresetColors(preset.colors, resolvedMode);
3900
4052
  }
3901
- return;
3902
- }
3903
- const presetData = {
3904
- id: presetId,
3905
- name: preset.label,
3906
- colors: {
3907
- light: preset.styles.light,
3908
- dark: preset.styles.dark
4053
+ },
4054
+ [presetStorageKey, enablePresets, applyPresetColors, resolvedMode]
4055
+ );
4056
+ const setThemePresetById = (0, import_react.useCallback)(
4057
+ (presetId) => {
4058
+ const preset = getAvailablePresetById(presetId);
4059
+ if (!preset) {
4060
+ if (typeof window !== "undefined") {
4061
+ console.warn("\u{1F3A8} UnifiedTheme: Preset not found for id:", presetId);
4062
+ }
4063
+ return;
3909
4064
  }
3910
- };
3911
- applyPreset(presetData);
3912
- }, [getAvailablePresetById, applyPreset]);
4065
+ const presetData = {
4066
+ id: presetId,
4067
+ name: preset.label,
4068
+ colors: {
4069
+ light: preset.styles.light,
4070
+ dark: preset.styles.dark
4071
+ }
4072
+ };
4073
+ applyPreset(presetData);
4074
+ },
4075
+ [getAvailablePresetById, applyPreset]
4076
+ );
3913
4077
  const clearPreset = (0, import_react.useCallback)(() => {
3914
4078
  if (enablePresets && typeof window !== "undefined") {
3915
4079
  try {
@@ -3957,6 +4121,7 @@ function ThemeProvider({
3957
4121
  if (!isReady) {
3958
4122
  return null;
3959
4123
  }
4124
+ const isUsingDefaultPreset = !!defaultPreset && currentPreset?.presetId === defaultPreset;
3960
4125
  const contextValue = {
3961
4126
  mode,
3962
4127
  resolvedMode,
@@ -3966,6 +4131,7 @@ function ThemeProvider({
3966
4131
  applyPreset,
3967
4132
  setThemePresetById,
3968
4133
  clearPreset,
4134
+ isUsingDefaultPreset,
3969
4135
  availablePresets,
3970
4136
  builtInPresets,
3971
4137
  customPresets: normalizedCustomPresets