@texturehq/edges 1.0.0 → 1.0.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/styles.css CHANGED
@@ -26,12 +26,14 @@
26
26
  --color-green-500: oklch(0.627 0.194 130.331);
27
27
  --color-green-600: oklch(0.527 0.19 131.688);
28
28
  --color-green-800: oklch(0.366 0.121 132.109);
29
+ --color-green-900: oklch(0.314 0.095 133.748);
29
30
  --color-blue-50: oklch(0.97 0.014 237.69);
30
31
  --color-blue-100: oklch(0.932 0.032 241.935);
31
32
  --color-blue-200: oklch(0.882 0.059 243.157);
32
33
  --color-blue-500: oklch(0.623 0.214 250.546);
33
34
  --color-blue-600: oklch(0.546 0.245 253.739);
34
35
  --color-blue-800: oklch(0.424 0.199 255.585);
36
+ --color-blue-900: oklch(0.368 0.146 254.128);
35
37
  --color-yellow-50: oklch(0.987 0.024 102.851);
36
38
  --color-yellow-100: oklch(0.973 0.071 103.193);
37
39
  --color-yellow-200: oklch(0.945 0.129 101.54);
@@ -77,6 +79,7 @@
77
79
  --font-weight-medium: 500;
78
80
  --font-weight-semibold: 600;
79
81
  --font-weight-bold: 700;
82
+ --color-background-body: #ffffff;
80
83
  --color-background-surface: #ffffff;
81
84
  --color-background-muted: #f3f4f6;
82
85
  --color-background-hover: #f3f4f6;
@@ -109,6 +112,7 @@
109
112
  --color-feedback-info-border: #93c5fd;
110
113
  --color-action-primary: #444ae1;
111
114
  --color-action-primary-hover: #383ccb;
115
+ --color-action-primary-light: rgba(68, 74, 225, 0.1);
112
116
  --color-action-secondary: #333333;
113
117
  --control-sm: 0.75rem;
114
118
  --control-md: 0.875rem;
@@ -165,6 +169,7 @@
165
169
  --container-xl: 36rem;
166
170
  --container-4xl: 56rem;
167
171
  --container-6xl: 72rem;
172
+ --container-7xl: 80rem;
168
173
  --text-xs: 0.75rem;
169
174
  --text-xs--line-height: calc(1 / 0.75);
170
175
  --text-sm: 0.875rem;
@@ -198,7 +203,7 @@
198
203
  --default-font-family: var(--font-sans);
199
204
  --default-mono-font-family: var(--font-mono);
200
205
  }
201
- .dark {
206
+ .theme-dark {
202
207
  --color-white: #ffffff;
203
208
  --color-black: #000000;
204
209
  --color-gray-50: #f9fafb;
@@ -374,6 +379,7 @@
374
379
  --color-action-primary: #7a8ee1;
375
380
  --color-action-primary-hover: #6a6fcc;
376
381
  --color-action-primary-text: #ffffff;
382
+ --color-action-primary-light: rgba(122, 142, 225, 0.15);
377
383
  --color-action-secondary: #e5e7eb;
378
384
  --color-action-secondary-hover: #f3f4f6;
379
385
  --color-action-secondary-text: #111827;
@@ -770,6 +776,9 @@
770
776
  .isolate {
771
777
  isolation: isolate;
772
778
  }
779
+ .-z-10 {
780
+ z-index: calc(10 * -1);
781
+ }
773
782
  .z-0 {
774
783
  z-index: 0;
775
784
  }
@@ -782,9 +791,15 @@
782
791
  .z-30 {
783
792
  z-index: 30;
784
793
  }
794
+ .z-40 {
795
+ z-index: 40;
796
+ }
785
797
  .z-50 {
786
798
  z-index: 50;
787
799
  }
800
+ .z-\[60\] {
801
+ z-index: 60;
802
+ }
788
803
  .col-span-full {
789
804
  grid-column: 1 / -1;
790
805
  }
@@ -842,6 +857,9 @@
842
857
  .mt-6 {
843
858
  margin-top: var(--spacing-6);
844
859
  }
860
+ .mt-8 {
861
+ margin-top: var(--spacing-8);
862
+ }
845
863
  .mr-1 {
846
864
  margin-right: var(--spacing-1);
847
865
  }
@@ -863,12 +881,18 @@
863
881
  .mb-4 {
864
882
  margin-bottom: var(--spacing-4);
865
883
  }
884
+ .mb-6 {
885
+ margin-bottom: var(--spacing-6);
886
+ }
866
887
  .-ml-px {
867
888
  margin-left: -1px;
868
889
  }
869
890
  .ml-2 {
870
891
  margin-left: var(--spacing-2);
871
892
  }
893
+ .ml-6 {
894
+ margin-left: var(--spacing-6);
895
+ }
872
896
  .ml-auto {
873
897
  margin-left: auto;
874
898
  }
@@ -971,12 +995,18 @@
971
995
  .h-\[28px\] {
972
996
  height: 28px;
973
997
  }
998
+ .h-\[60px\] {
999
+ height: 60px;
1000
+ }
974
1001
  .h-\[120px\] {
975
1002
  height: 120px;
976
1003
  }
977
1004
  .h-\[400px\] {
978
1005
  height: 400px;
979
1006
  }
1007
+ .h-\[calc\(100vh-60px\)\] {
1008
+ height: calc(100vh - 60px);
1009
+ }
980
1010
  .h-\[var\(--control-lg-height\)\] {
981
1011
  height: var(--control-lg-height);
982
1012
  }
@@ -998,6 +1028,9 @@
998
1028
  .h-px {
999
1029
  height: 1px;
1000
1030
  }
1031
+ .h-screen {
1032
+ height: 100vh;
1033
+ }
1001
1034
  .max-h-48 {
1002
1035
  max-height: var(--spacing-48);
1003
1036
  }
@@ -1019,6 +1052,9 @@
1019
1052
  .min-h-\[200px\] {
1020
1053
  min-height: 200px;
1021
1054
  }
1055
+ .min-h-screen {
1056
+ min-height: 100vh;
1057
+ }
1022
1058
  .w-1\.5 {
1023
1059
  width: calc(var(--spacing) * 1.5);
1024
1060
  }
@@ -1064,6 +1100,9 @@
1064
1100
  .w-12 {
1065
1101
  width: var(--spacing-12);
1066
1102
  }
1103
+ .w-14 {
1104
+ width: var(--spacing-14);
1105
+ }
1067
1106
  .w-16 {
1068
1107
  width: var(--spacing-16);
1069
1108
  }
@@ -1122,6 +1161,9 @@
1122
1161
  .max-w-6xl {
1123
1162
  max-width: var(--container-6xl);
1124
1163
  }
1164
+ .max-w-7xl {
1165
+ max-width: var(--container-7xl);
1166
+ }
1125
1167
  .max-w-\[200px\] {
1126
1168
  max-width: 200px;
1127
1169
  }
@@ -1203,6 +1245,10 @@
1203
1245
  --tw-translate-x: calc(calc(1/2 * 100%) * -1);
1204
1246
  translate: var(--tw-translate-x) var(--tw-translate-y);
1205
1247
  }
1248
+ .-translate-x-full {
1249
+ --tw-translate-x: -100%;
1250
+ translate: var(--tw-translate-x) var(--tw-translate-y);
1251
+ }
1206
1252
  .translate-x-0 {
1207
1253
  --tw-translate-x: var(--spacing-0);
1208
1254
  translate: var(--tw-translate-x) var(--tw-translate-y);
@@ -1554,6 +1600,10 @@
1554
1600
  border-top-style: var(--tw-border-style);
1555
1601
  border-top-width: 1px;
1556
1602
  }
1603
+ .\!border-r-0 {
1604
+ border-right-style: var(--tw-border-style) !important;
1605
+ border-right-width: 0px !important;
1606
+ }
1557
1607
  .border-r {
1558
1608
  border-right-style: var(--tw-border-style);
1559
1609
  border-right-width: 1px;
@@ -1574,6 +1624,10 @@
1574
1624
  border-left-style: var(--tw-border-style);
1575
1625
  border-left-width: 1px;
1576
1626
  }
1627
+ .border-l-2 {
1628
+ border-left-style: var(--tw-border-style);
1629
+ border-left-width: 2px;
1630
+ }
1577
1631
  .border-l-4 {
1578
1632
  border-left-style: var(--tw-border-style);
1579
1633
  border-left-width: 4px;
@@ -1704,6 +1758,9 @@
1704
1758
  .bg-action-primary {
1705
1759
  background-color: var(--color-action-primary);
1706
1760
  }
1761
+ .bg-action-primary-light {
1762
+ background-color: var(--color-action-primary-light);
1763
+ }
1707
1764
  .bg-action-primary\/5 {
1708
1765
  background-color: color-mix(in srgb, #444ae1 5%, transparent);
1709
1766
  @supports (color: color-mix(in lab, red, red)) {
@@ -1722,6 +1779,9 @@
1722
1779
  background-color: color-mix(in oklab, var(--color-action-secondary) 10%, transparent);
1723
1780
  }
1724
1781
  }
1782
+ .bg-background-body {
1783
+ background-color: var(--color-background-body);
1784
+ }
1725
1785
  .bg-background-hover {
1726
1786
  background-color: var(--color-background-hover);
1727
1787
  }
@@ -1904,9 +1964,6 @@
1904
1964
  .bg-clip-padding {
1905
1965
  background-clip: padding-box;
1906
1966
  }
1907
- .fill-\[\#333333\] {
1908
- fill: #333333;
1909
- }
1910
1967
  .fill-brand-primary {
1911
1968
  fill: var(--color-brand-primary);
1912
1969
  }
@@ -1969,6 +2026,9 @@
1969
2026
  .p-\[1rem\] {
1970
2027
  padding: 1rem;
1971
2028
  }
2029
+ .\!px-1 {
2030
+ padding-inline: var(--spacing-1) !important;
2031
+ }
1972
2032
  .\!px-2 {
1973
2033
  padding-inline: var(--spacing-2) !important;
1974
2034
  }
@@ -1999,6 +2059,9 @@
1999
2059
  .px-5 {
2000
2060
  padding-inline: var(--spacing-5);
2001
2061
  }
2062
+ .px-6 {
2063
+ padding-inline: var(--spacing-6);
2064
+ }
2002
2065
  .px-\[var\(--control-padding-lg\)\] {
2003
2066
  padding-inline: var(--control-padding-lg);
2004
2067
  }
@@ -2044,6 +2107,9 @@
2044
2107
  .py-12 {
2045
2108
  padding-block: var(--spacing-12);
2046
2109
  }
2110
+ .pt-\[60px\] {
2111
+ padding-top: 60px;
2112
+ }
2047
2113
  .pr-0 {
2048
2114
  padding-right: var(--spacing-0);
2049
2115
  }
@@ -2053,6 +2119,9 @@
2053
2119
  .pr-3 {
2054
2120
  padding-right: var(--spacing-3);
2055
2121
  }
2122
+ .pr-6 {
2123
+ padding-right: var(--spacing-6);
2124
+ }
2056
2125
  .pr-8 {
2057
2126
  padding-right: var(--spacing-8);
2058
2127
  }
@@ -2250,6 +2319,9 @@
2250
2319
  .text-blue-800 {
2251
2320
  color: var(--color-blue-800);
2252
2321
  }
2322
+ .text-blue-900 {
2323
+ color: var(--color-blue-900);
2324
+ }
2253
2325
  .text-brand-dark {
2254
2326
  color: var(--color-brand-dark);
2255
2327
  }
@@ -2677,6 +2749,32 @@
2677
2749
  color: var(--color-text-disabled);
2678
2750
  }
2679
2751
  }
2752
+ .peer-checked\/category\:block {
2753
+ &:is(:where(.peer\/category):checked ~ *) {
2754
+ display: block;
2755
+ }
2756
+ }
2757
+ .peer-checked\/category\:rotate-180 {
2758
+ &:is(:where(.peer\/category):checked ~ *) {
2759
+ rotate: 180deg;
2760
+ }
2761
+ }
2762
+ .peer-checked\/mobile\:pointer-events-auto {
2763
+ &:is(:where(.peer\/mobile):checked ~ *) {
2764
+ pointer-events: auto;
2765
+ }
2766
+ }
2767
+ .peer-checked\/mobile\:translate-x-0 {
2768
+ &:is(:where(.peer\/mobile):checked ~ *) {
2769
+ --tw-translate-x: var(--spacing-0);
2770
+ translate: var(--tw-translate-x) var(--tw-translate-y);
2771
+ }
2772
+ }
2773
+ .peer-checked\/mobile\:opacity-100 {
2774
+ &:is(:where(.peer\/mobile):checked ~ *) {
2775
+ opacity: 100%;
2776
+ }
2777
+ }
2680
2778
  .placeholder\:text-text-placeholder {
2681
2779
  &::-moz-placeholder {
2682
2780
  color: var(--color-text-placeholder);
@@ -2949,6 +3047,13 @@
2949
3047
  }
2950
3048
  }
2951
3049
  }
3050
+ .hover\:bg-transparent {
3051
+ &:hover {
3052
+ @media (hover: hover) {
3053
+ background-color: transparent;
3054
+ }
3055
+ }
3056
+ }
2952
3057
  .hover\:font-semibold {
2953
3058
  &:hover {
2954
3059
  @media (hover: hover) {
@@ -2988,6 +3093,13 @@
2988
3093
  }
2989
3094
  }
2990
3095
  }
3096
+ .hover\:text-text-heading {
3097
+ &:hover {
3098
+ @media (hover: hover) {
3099
+ color: var(--color-text-heading);
3100
+ }
3101
+ }
3102
+ }
2991
3103
  .hover\:text-text-link-hover {
2992
3104
  &:hover {
2993
3105
  @media (hover: hover) {
@@ -3067,6 +3179,33 @@
3067
3179
  }
3068
3180
  }
3069
3181
  }
3182
+ .focus\:not-sr-only {
3183
+ &:focus {
3184
+ position: static;
3185
+ width: auto;
3186
+ height: auto;
3187
+ padding: 0;
3188
+ margin: 0;
3189
+ overflow: visible;
3190
+ clip: auto;
3191
+ white-space: normal;
3192
+ }
3193
+ }
3194
+ .focus\:absolute {
3195
+ &:focus {
3196
+ position: absolute;
3197
+ }
3198
+ }
3199
+ .focus\:top-4 {
3200
+ &:focus {
3201
+ top: var(--spacing-4);
3202
+ }
3203
+ }
3204
+ .focus\:left-4 {
3205
+ &:focus {
3206
+ left: var(--spacing-4);
3207
+ }
3208
+ }
3070
3209
  .focus\:bg-background-hover {
3071
3210
  &:focus {
3072
3211
  background-color: var(--color-background-hover);
@@ -3088,6 +3227,12 @@
3088
3227
  --tw-ring-color: var(--color-border-focus);
3089
3228
  }
3090
3229
  }
3230
+ .focus\:ring-offset-2 {
3231
+ &:focus {
3232
+ --tw-ring-offset-width: 2px;
3233
+ --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
3234
+ }
3235
+ }
3091
3236
  .focus\:outline-2 {
3092
3237
  &:focus {
3093
3238
  outline-style: var(--tw-outline-style);
@@ -3214,6 +3359,21 @@
3214
3359
  display: none;
3215
3360
  }
3216
3361
  }
3362
+ .md\:relative {
3363
+ @media (width >= 48rem) {
3364
+ position: relative;
3365
+ }
3366
+ }
3367
+ .md\:block {
3368
+ @media (width >= 48rem) {
3369
+ display: block;
3370
+ }
3371
+ }
3372
+ .md\:flex {
3373
+ @media (width >= 48rem) {
3374
+ display: flex;
3375
+ }
3376
+ }
3217
3377
  .md\:grid {
3218
3378
  @media (width >= 48rem) {
3219
3379
  display: grid;
@@ -3224,6 +3384,11 @@
3224
3384
  display: none;
3225
3385
  }
3226
3386
  }
3387
+ .md\:h-screen {
3388
+ @media (width >= 48rem) {
3389
+ height: 100vh;
3390
+ }
3391
+ }
3227
3392
  .md\:w-\[50\%\] {
3228
3393
  @media (width >= 48rem) {
3229
3394
  width: 50%;
@@ -3234,6 +3399,12 @@
3234
3399
  width: 456px;
3235
3400
  }
3236
3401
  }
3402
+ .md\:translate-x-0 {
3403
+ @media (width >= 48rem) {
3404
+ --tw-translate-x: var(--spacing-0);
3405
+ translate: var(--tw-translate-x) var(--tw-translate-y);
3406
+ }
3407
+ }
3237
3408
  .md\:border-x {
3238
3409
  @media (width >= 48rem) {
3239
3410
  border-inline-style: var(--tw-border-style);
@@ -3246,6 +3417,16 @@
3246
3417
  border-inline-width: 0px;
3247
3418
  }
3248
3419
  }
3420
+ .md\:px-6 {
3421
+ @media (width >= 48rem) {
3422
+ padding-inline: var(--spacing-6);
3423
+ }
3424
+ }
3425
+ .md\:py-6 {
3426
+ @media (width >= 48rem) {
3427
+ padding-block: var(--spacing-6);
3428
+ }
3429
+ }
3249
3430
  .lg\:grid {
3250
3431
  @media (width >= 64rem) {
3251
3432
  display: grid;
@@ -3271,6 +3452,11 @@
3271
3452
  display: none;
3272
3453
  }
3273
3454
  }
3455
+ .dark\:border-blue-800 {
3456
+ @media (prefers-color-scheme: dark) {
3457
+ border-color: var(--color-blue-800);
3458
+ }
3459
+ }
3274
3460
  .dark\:border-gray-700 {
3275
3461
  @media (prefers-color-scheme: dark) {
3276
3462
  border-color: var(--color-gray-700);
@@ -3302,11 +3488,32 @@
3302
3488
  background-color: var(--color-blue-500);
3303
3489
  }
3304
3490
  }
3491
+ .dark\:bg-blue-900\/20 {
3492
+ @media (prefers-color-scheme: dark) {
3493
+ background-color: color-mix(in srgb, oklch(0.368 0.146 254.128) 20%, transparent);
3494
+ @supports (color: color-mix(in lab, red, red)) {
3495
+ background-color: color-mix(in oklab, var(--color-blue-900) 20%, transparent);
3496
+ }
3497
+ }
3498
+ }
3305
3499
  .dark\:bg-gray-800 {
3306
3500
  @media (prefers-color-scheme: dark) {
3307
3501
  background-color: var(--color-gray-800);
3308
3502
  }
3309
3503
  }
3504
+ .dark\:bg-gray-900 {
3505
+ @media (prefers-color-scheme: dark) {
3506
+ background-color: var(--color-gray-900);
3507
+ }
3508
+ }
3509
+ .dark\:bg-green-900\/20 {
3510
+ @media (prefers-color-scheme: dark) {
3511
+ background-color: color-mix(in srgb, oklch(0.314 0.095 133.748) 20%, transparent);
3512
+ @supports (color: color-mix(in lab, red, red)) {
3513
+ background-color: color-mix(in oklab, var(--color-green-900) 20%, transparent);
3514
+ }
3515
+ }
3516
+ }
3310
3517
  .dark\:bg-slate-600 {
3311
3518
  @media (prefers-color-scheme: dark) {
3312
3519
  background-color: var(--color-slate-600);
@@ -3371,6 +3578,16 @@
3371
3578
  stroke: var(--color-zinc-600);
3372
3579
  }
3373
3580
  }
3581
+ .dark\:text-blue-100 {
3582
+ @media (prefers-color-scheme: dark) {
3583
+ color: var(--color-blue-100);
3584
+ }
3585
+ }
3586
+ .dark\:text-blue-200 {
3587
+ @media (prefers-color-scheme: dark) {
3588
+ color: var(--color-blue-200);
3589
+ }
3590
+ }
3374
3591
  .dark\:text-gray-100 {
3375
3592
  @media (prefers-color-scheme: dark) {
3376
3593
  color: var(--color-gray-100);
@@ -3466,6 +3683,15 @@
3466
3683
  }
3467
3684
  }
3468
3685
  }
3686
+ .dark\:hover\:bg-gray-800 {
3687
+ @media (prefers-color-scheme: dark) {
3688
+ &:hover {
3689
+ @media (hover: hover) {
3690
+ background-color: var(--color-gray-800);
3691
+ }
3692
+ }
3693
+ }
3694
+ }
3469
3695
  .dark\:hover\:bg-zinc-700 {
3470
3696
  @media (prefers-color-scheme: dark) {
3471
3697
  &:hover {
@@ -4109,6 +4335,19 @@
4109
4335
  }
4110
4336
  }
4111
4337
  }
4338
+ @layer base {
4339
+ :root {
4340
+ --default-border-color: var(--color-border-default);
4341
+ }
4342
+ .theme-dark {
4343
+ --default-border-color: var(--color-border-default);
4344
+ }
4345
+ *,
4346
+ ::after,
4347
+ ::before {
4348
+ border-color: var(--default-border-color);
4349
+ }
4350
+ }
4112
4351
  @property --tw-border-spacing-x {
4113
4352
  syntax: "<length>";
4114
4353
  inherits: false;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@texturehq/edges",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "author": "Nicholas Brown <nick@texturehq.com>",
5
5
  "description": "A shared component library for Texture",
6
6
  "type": "module",
@@ -16,9 +16,15 @@
16
16
  "exports": {
17
17
  ".": {
18
18
  "types": "./dist/index.d.ts",
19
+ "react-server": "./dist/server.js",
19
20
  "import": "./dist/index.js",
20
21
  "default": "./dist/index.js"
21
22
  },
23
+ "./server": {
24
+ "types": "./dist/server.d.ts",
25
+ "import": "./dist/server.js",
26
+ "default": "./dist/server.js"
27
+ },
22
28
  "./styles.css": "./dist/styles.css",
23
29
  "./dist/styles.css": "./dist/styles.css",
24
30
  "./theme.css": "./dist/theme.css",
@@ -27,7 +33,8 @@
27
33
  "scripts": {
28
34
  "dev": "yarn watch",
29
35
  "watch": "tsup --watch",
30
- "build": "yarn tokens:build && tsup",
36
+ "build": "yarn tokens:build && tsup && yarn build:post",
37
+ "build:post": "postcss src/styles.css -o dist/styles.css && node scripts/copy-assets.js && node scripts/generate-components-manifest.js",
31
38
  "tokens:build": "node style-dictionary.config.mjs",
32
39
  "tokens:build:tailwind": "node style-dictionary.config.mjs",
33
40
  "tokens:watch": "nodemon --watch tokens --ext json --exec 'yarn tokens:build'",
@@ -51,6 +58,7 @@
51
58
  "postinstall": "node scripts/setup-cursor-rules.js || echo \"! setup-cursor-rules: non-fatal error\""
52
59
  },
53
60
  "peerDependencies": {
61
+ "next": "*",
54
62
  "react": "^18.2.0",
55
63
  "react-dom": "^18.2.0"
56
64
  },
@@ -101,6 +109,7 @@
101
109
  "@testing-library/react": "^14.2.1",
102
110
  "@testing-library/user-event": "^14.5.2",
103
111
  "@types/file-saver": "^2.0.7",
112
+ "@types/luxon": "^3.7.1",
104
113
  "@types/node": "^20.11.30",
105
114
  "@types/papaparse": "^5.3.16",
106
115
  "@types/react": "^18.2.67",
@@ -0,0 +1,48 @@
1
+ #!/usr/bin/env node
2
+
3
+ import fs from "fs";
4
+
5
+ console.log("📁 Copying assets to dist...");
6
+
7
+ try {
8
+ // Copy theme.css to dist
9
+ fs.copyFileSync("src/theme.css", "dist/theme.css");
10
+ console.log("✅ Theme CSS copied to dist");
11
+
12
+ // Copy style layer files to dist
13
+ const styleFiles = ["src/styles/animations.css", "src/styles/computed.css", "src/styles/utilities.css"];
14
+
15
+ // Create styles directory in dist
16
+ if (!fs.existsSync("dist/styles")) {
17
+ fs.mkdirSync("dist/styles", { recursive: true });
18
+ }
19
+
20
+ styleFiles.forEach((file) => {
21
+ if (fs.existsSync(file)) {
22
+ const filename = file.split("/").pop();
23
+ fs.copyFileSync(file, `dist/styles/${filename}`);
24
+ console.log(`✅ Style file ${filename} copied to dist/styles`);
25
+ }
26
+ });
27
+
28
+ // Copy generated token CSS to dist (if they exist)
29
+ const tokenFiles = ["src/generated/tailwind-tokens-light.css", "src/generated/tailwind-tokens-dark.css"];
30
+
31
+ // Create generated directory in dist
32
+ if (!fs.existsSync("dist/generated")) {
33
+ fs.mkdirSync("dist/generated", { recursive: true });
34
+ }
35
+
36
+ tokenFiles.forEach((file) => {
37
+ if (fs.existsSync(file)) {
38
+ const filename = file.split("/").pop();
39
+ fs.copyFileSync(file, `dist/generated/${filename}`);
40
+ console.log(`✅ Token CSS ${filename} copied to dist/generated`);
41
+ }
42
+ });
43
+
44
+ console.log("🎉 All assets copied successfully!");
45
+ } catch (error) {
46
+ console.error("❌ Failed to copy assets:", error.message);
47
+ process.exitCode = 1;
48
+ }
@@ -175,3 +175,4 @@ function main() {
175
175
 
176
176
  // Run validation
177
177
  main();
178
+
@@ -53,7 +53,7 @@ The theme is imported via CSS:
53
53
 
54
54
  ## Dark Mode
55
55
 
56
- All colors automatically adapt to dark mode when `.dark` class is present.
56
+ All colors automatically adapt to dark mode when `.theme-dark` class is present.
57
57
 
58
58
  ## Available Variables
59
59
 
@@ -52,7 +52,7 @@ The theme is imported via CSS:
52
52
  ```
53
53
 
54
54
  ## Dark Mode
55
- All colors automatically adapt to dark mode when `.dark` class is present.
55
+ All colors automatically adapt to dark mode when `.theme-dark` class is present.
56
56
 
57
57
  ## Available Variables
58
58
  All CSS variables from the theme file are automatically available. The theme includes: