@mgcrea/react-native-tailwind 0.6.0 → 0.6.1
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/README.md +33 -10
- package/dist/babel/index.cjs +336 -110
- package/dist/components/Pressable.d.ts +2 -0
- package/dist/components/TextInput.d.ts +2 -0
- package/dist/config/palettes.d.ts +302 -0
- package/dist/config/palettes.js +1 -0
- package/dist/parser/colors.js +1 -1
- package/dist/parser/colors.test.js +1 -1
- package/dist/parser/layout.js +1 -1
- package/dist/parser/layout.test.js +1 -1
- package/dist/parser/typography.js +1 -1
- package/dist/parser/typography.test.js +1 -1
- package/package.json +1 -1
- package/src/components/Pressable.tsx +1 -0
- package/src/components/TextInput.tsx +1 -0
- package/src/config/palettes.ts +304 -0
- package/src/parser/colors.test.ts +47 -31
- package/src/parser/colors.ts +20 -111
- package/src/parser/layout.test.ts +35 -0
- package/src/parser/layout.ts +26 -0
- package/src/parser/typography.test.ts +10 -0
- package/src/parser/typography.ts +8 -0
package/README.md
CHANGED
|
@@ -1,13 +1,32 @@
|
|
|
1
|
-
# React Native Tailwind
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
<!-- # React Native Tailwind -->
|
|
2
|
+
|
|
3
|
+
<!-- markdownlint-disable MD033 -->
|
|
4
|
+
<p align="center">
|
|
5
|
+
<a href="https://mgcrea.github.io/react-native-swiftui">
|
|
6
|
+
<img src="./.github/assets/logo.png" alt="logo" width="480" height="300"/>
|
|
7
|
+
</a>
|
|
8
|
+
</p>
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://www.npmjs.com/package/@mgcrea/react-native-tailwind">
|
|
11
|
+
<img src="https://img.shields.io/npm/v/@mgcrea/react-native-tailwind.svg?style=for-the-badge" alt="npm version" />
|
|
12
|
+
</a>
|
|
13
|
+
<a href="https://www.npmjs.com/package/@mgcrea/react-native-tailwind">
|
|
14
|
+
<img src="https://img.shields.io/npm/dt/@mgcrea/react-native-tailwind.svg?style=for-the-badge" alt="npm total downloads" />
|
|
15
|
+
</a>
|
|
16
|
+
<a href="https://www.npmjs.com/package/@mgcrea/react-native-tailwind">
|
|
17
|
+
<img src="https://img.shields.io/npm/dm/@mgcrea/react-native-tailwind.svg?style=for-the-badge" alt="npm monthly downloads" />
|
|
18
|
+
</a>
|
|
19
|
+
<a href="https://www.npmjs.com/package/@mgcrea/react-native-tailwind">
|
|
20
|
+
<img src="https://img.shields.io/npm/l/@mgcrea/react-native-tailwind.svg?style=for-the-badge" alt="npm license" />
|
|
21
|
+
</a>
|
|
22
|
+
<br />
|
|
23
|
+
<a href="https://github.com/mgcrea/react-native-tailwind/actions/workflows/main.yaml">
|
|
24
|
+
<img src="https://img.shields.io/github/actions/workflow/status/mgcrea/react-native-tailwind/main.yaml?style=for-the-badge&branch=main" alt="build status" />
|
|
25
|
+
</a>
|
|
26
|
+
<a href="https://depfu.com/github/mgcrea/react-native-tailwind">
|
|
27
|
+
<img src="https://img.shields.io/depfu/dependencies/github/mgcrea/react-native-tailwind?style=for-the-badge" alt="dependencies status" />
|
|
28
|
+
</a>
|
|
29
|
+
</p>
|
|
11
30
|
|
|
12
31
|
## Overview
|
|
13
32
|
|
|
@@ -27,6 +46,10 @@ Compile-time Tailwind CSS for React Native with zero runtime overhead. Transform
|
|
|
27
46
|
- 🎯 **State modifiers** — `active:`, `hover:`, `focus:`, and `disabled:` modifiers for interactive components
|
|
28
47
|
- 📜 **Special style props** — Support for `contentContainerClassName`, `columnWrapperClassName`, and more
|
|
29
48
|
|
|
49
|
+
## Demo
|
|
50
|
+
|
|
51
|
+

|
|
52
|
+
|
|
30
53
|
## Installation
|
|
31
54
|
|
|
32
55
|
```bash
|
package/dist/babel/index.cjs
CHANGED
|
@@ -258,112 +258,310 @@ function parseBorderRadius(cls) {
|
|
|
258
258
|
return null;
|
|
259
259
|
}
|
|
260
260
|
|
|
261
|
-
// src/
|
|
262
|
-
var
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
261
|
+
// src/config/palettes.ts
|
|
262
|
+
var TAILWIND_PALETTES = {
|
|
263
|
+
red: {
|
|
264
|
+
"50": "#fef2f2",
|
|
265
|
+
"100": "#ffe2e2",
|
|
266
|
+
"200": "#ffc9c9",
|
|
267
|
+
"300": "#ffa2a2",
|
|
268
|
+
"400": "#ff6467",
|
|
269
|
+
"500": "#fb2c36",
|
|
270
|
+
"600": "#e7000b",
|
|
271
|
+
"700": "#c10007",
|
|
272
|
+
"800": "#9f0712",
|
|
273
|
+
"900": "#82181a",
|
|
274
|
+
"950": "#460809"
|
|
275
|
+
},
|
|
276
|
+
orange: {
|
|
277
|
+
"50": "#fff7ed",
|
|
278
|
+
"100": "#ffedd4",
|
|
279
|
+
"200": "#ffd6a7",
|
|
280
|
+
"300": "#ffb86a",
|
|
281
|
+
"400": "#ff8904",
|
|
282
|
+
"500": "#ff6900",
|
|
283
|
+
"600": "#f54900",
|
|
284
|
+
"700": "#ca3500",
|
|
285
|
+
"800": "#9f2d00",
|
|
286
|
+
"900": "#7e2a0c",
|
|
287
|
+
"950": "#441306"
|
|
288
|
+
},
|
|
289
|
+
amber: {
|
|
290
|
+
"50": "#fffbeb",
|
|
291
|
+
"100": "#fef3c6",
|
|
292
|
+
"200": "#fee685",
|
|
293
|
+
"300": "#ffd230",
|
|
294
|
+
"400": "#ffb900",
|
|
295
|
+
"500": "#fe9a00",
|
|
296
|
+
"600": "#e17100",
|
|
297
|
+
"700": "#bb4d00",
|
|
298
|
+
"800": "#973c00",
|
|
299
|
+
"900": "#7b3306",
|
|
300
|
+
"950": "#461901"
|
|
301
|
+
},
|
|
302
|
+
yellow: {
|
|
303
|
+
"50": "#fefce8",
|
|
304
|
+
"100": "#fef9c2",
|
|
305
|
+
"200": "#fff085",
|
|
306
|
+
"300": "#ffdf20",
|
|
307
|
+
"400": "#fdc700",
|
|
308
|
+
"500": "#f0b100",
|
|
309
|
+
"600": "#d08700",
|
|
310
|
+
"700": "#a65f00",
|
|
311
|
+
"800": "#894b00",
|
|
312
|
+
"900": "#733e0a",
|
|
313
|
+
"950": "#432004"
|
|
314
|
+
},
|
|
315
|
+
lime: {
|
|
316
|
+
"50": "#f7fee7",
|
|
317
|
+
"100": "#ecfcca",
|
|
318
|
+
"200": "#d8f999",
|
|
319
|
+
"300": "#bbf451",
|
|
320
|
+
"400": "#9ae600",
|
|
321
|
+
"500": "#7ccf00",
|
|
322
|
+
"600": "#5ea500",
|
|
323
|
+
"700": "#497d00",
|
|
324
|
+
"800": "#3c6300",
|
|
325
|
+
"900": "#35530e",
|
|
326
|
+
"950": "#192e03"
|
|
327
|
+
},
|
|
328
|
+
green: {
|
|
329
|
+
"50": "#f0fdf4",
|
|
330
|
+
"100": "#dcfce7",
|
|
331
|
+
"200": "#b9f8cf",
|
|
332
|
+
"300": "#7bf1a8",
|
|
333
|
+
"400": "#05df72",
|
|
334
|
+
"500": "#00c950",
|
|
335
|
+
"600": "#00a63e",
|
|
336
|
+
"700": "#008236",
|
|
337
|
+
"800": "#016630",
|
|
338
|
+
"900": "#0d542b",
|
|
339
|
+
"950": "#032e15"
|
|
340
|
+
},
|
|
341
|
+
emerald: {
|
|
342
|
+
"50": "#ecfdf5",
|
|
343
|
+
"100": "#d0fae5",
|
|
344
|
+
"200": "#a4f4cf",
|
|
345
|
+
"300": "#5ee9b5",
|
|
346
|
+
"400": "#00d492",
|
|
347
|
+
"500": "#00bc7d",
|
|
348
|
+
"600": "#009966",
|
|
349
|
+
"700": "#007a55",
|
|
350
|
+
"800": "#006045",
|
|
351
|
+
"900": "#004f3b",
|
|
352
|
+
"950": "#002c22"
|
|
353
|
+
},
|
|
354
|
+
teal: {
|
|
355
|
+
"50": "#f0fdfa",
|
|
356
|
+
"100": "#cbfbf1",
|
|
357
|
+
"200": "#96f7e4",
|
|
358
|
+
"300": "#46ecd5",
|
|
359
|
+
"400": "#00d5be",
|
|
360
|
+
"500": "#00bba7",
|
|
361
|
+
"600": "#009689",
|
|
362
|
+
"700": "#00786f",
|
|
363
|
+
"800": "#005f5a",
|
|
364
|
+
"900": "#0b4f4a",
|
|
365
|
+
"950": "#022f2e"
|
|
366
|
+
},
|
|
367
|
+
cyan: {
|
|
368
|
+
"50": "#ecfeff",
|
|
369
|
+
"100": "#cefafe",
|
|
370
|
+
"200": "#a2f4fd",
|
|
371
|
+
"300": "#53eafd",
|
|
372
|
+
"400": "#00d3f2",
|
|
373
|
+
"500": "#00b8db",
|
|
374
|
+
"600": "#0092b8",
|
|
375
|
+
"700": "#007595",
|
|
376
|
+
"800": "#005f78",
|
|
377
|
+
"900": "#104e64",
|
|
378
|
+
"950": "#053345"
|
|
379
|
+
},
|
|
380
|
+
sky: {
|
|
381
|
+
"50": "#f0f9ff",
|
|
382
|
+
"100": "#dff2fe",
|
|
383
|
+
"200": "#b8e6fe",
|
|
384
|
+
"300": "#74d4ff",
|
|
385
|
+
"400": "#00bcff",
|
|
386
|
+
"500": "#00a6f4",
|
|
387
|
+
"600": "#0084d1",
|
|
388
|
+
"700": "#0069a8",
|
|
389
|
+
"800": "#00598a",
|
|
390
|
+
"900": "#024a70",
|
|
391
|
+
"950": "#052f4a"
|
|
392
|
+
},
|
|
393
|
+
blue: {
|
|
394
|
+
"50": "#eff6ff",
|
|
395
|
+
"100": "#dbeafe",
|
|
396
|
+
"200": "#bedbff",
|
|
397
|
+
"300": "#8ec5ff",
|
|
398
|
+
"400": "#51a2ff",
|
|
399
|
+
"500": "#2b7fff",
|
|
400
|
+
"600": "#155dfc",
|
|
401
|
+
"700": "#1447e6",
|
|
402
|
+
"800": "#193cb8",
|
|
403
|
+
"900": "#1c398e",
|
|
404
|
+
"950": "#162456"
|
|
405
|
+
},
|
|
406
|
+
indigo: {
|
|
407
|
+
"50": "#eef2ff",
|
|
408
|
+
"100": "#e0e7ff",
|
|
409
|
+
"200": "#c6d2ff",
|
|
410
|
+
"300": "#a3b3ff",
|
|
411
|
+
"400": "#7c86ff",
|
|
412
|
+
"500": "#615fff",
|
|
413
|
+
"600": "#4f39f6",
|
|
414
|
+
"700": "#432dd7",
|
|
415
|
+
"800": "#372aac",
|
|
416
|
+
"900": "#312c85",
|
|
417
|
+
"950": "#1e1a4d"
|
|
418
|
+
},
|
|
419
|
+
violet: {
|
|
420
|
+
"50": "#f5f3ff",
|
|
421
|
+
"100": "#ede9fe",
|
|
422
|
+
"200": "#ddd6ff",
|
|
423
|
+
"300": "#c4b4ff",
|
|
424
|
+
"400": "#a684ff",
|
|
425
|
+
"500": "#8e51ff",
|
|
426
|
+
"600": "#7f22fe",
|
|
427
|
+
"700": "#7008e7",
|
|
428
|
+
"800": "#5d0ec0",
|
|
429
|
+
"900": "#4d179a",
|
|
430
|
+
"950": "#2f0d68"
|
|
431
|
+
},
|
|
432
|
+
purple: {
|
|
433
|
+
"50": "#faf5ff",
|
|
434
|
+
"100": "#f3e8ff",
|
|
435
|
+
"200": "#e9d4ff",
|
|
436
|
+
"300": "#dab2ff",
|
|
437
|
+
"400": "#c27aff",
|
|
438
|
+
"500": "#ad46ff",
|
|
439
|
+
"600": "#9810fa",
|
|
440
|
+
"700": "#8200db",
|
|
441
|
+
"800": "#6e11b0",
|
|
442
|
+
"900": "#59168b",
|
|
443
|
+
"950": "#3c0366"
|
|
444
|
+
},
|
|
445
|
+
fuchsia: {
|
|
446
|
+
"50": "#fdf4ff",
|
|
447
|
+
"100": "#fae8ff",
|
|
448
|
+
"200": "#f6cfff",
|
|
449
|
+
"300": "#f4a8ff",
|
|
450
|
+
"400": "#ed6aff",
|
|
451
|
+
"500": "#e12afb",
|
|
452
|
+
"600": "#c800de",
|
|
453
|
+
"700": "#a800b7",
|
|
454
|
+
"800": "#8a0194",
|
|
455
|
+
"900": "#721378",
|
|
456
|
+
"950": "#4b004f"
|
|
457
|
+
},
|
|
458
|
+
pink: {
|
|
459
|
+
"50": "#fdf2f8",
|
|
460
|
+
"100": "#fce7f3",
|
|
461
|
+
"200": "#fccee8",
|
|
462
|
+
"300": "#fda5d5",
|
|
463
|
+
"400": "#fb64b6",
|
|
464
|
+
"500": "#f6339a",
|
|
465
|
+
"600": "#e60076",
|
|
466
|
+
"700": "#c6005c",
|
|
467
|
+
"800": "#a3004c",
|
|
468
|
+
"900": "#861043",
|
|
469
|
+
"950": "#510424"
|
|
470
|
+
},
|
|
471
|
+
rose: {
|
|
472
|
+
"50": "#fff1f2",
|
|
473
|
+
"100": "#ffe4e6",
|
|
474
|
+
"200": "#ffccd3",
|
|
475
|
+
"300": "#ffa1ad",
|
|
476
|
+
"400": "#ff637e",
|
|
477
|
+
"500": "#ff2056",
|
|
478
|
+
"600": "#ec003f",
|
|
479
|
+
"700": "#c70036",
|
|
480
|
+
"800": "#a50036",
|
|
481
|
+
"900": "#8b0836",
|
|
482
|
+
"950": "#4d0218"
|
|
483
|
+
},
|
|
484
|
+
slate: {
|
|
485
|
+
"50": "#f8fafc",
|
|
486
|
+
"100": "#f1f5f9",
|
|
487
|
+
"200": "#e2e8f0",
|
|
488
|
+
"300": "#cad5e2",
|
|
489
|
+
"400": "#90a1b9",
|
|
490
|
+
"500": "#62748e",
|
|
491
|
+
"600": "#45556c",
|
|
492
|
+
"700": "#314158",
|
|
493
|
+
"800": "#1d293d",
|
|
494
|
+
"900": "#0f172b",
|
|
495
|
+
"950": "#020618"
|
|
496
|
+
},
|
|
497
|
+
gray: {
|
|
498
|
+
"50": "#f9fafb",
|
|
499
|
+
"100": "#f3f4f6",
|
|
500
|
+
"200": "#e5e7eb",
|
|
501
|
+
"300": "#d1d5dc",
|
|
502
|
+
"400": "#99a1af",
|
|
503
|
+
"500": "#6a7282",
|
|
504
|
+
"600": "#4a5565",
|
|
505
|
+
"700": "#364153",
|
|
506
|
+
"800": "#1e2939",
|
|
507
|
+
"900": "#101828",
|
|
508
|
+
"950": "#030712"
|
|
509
|
+
},
|
|
510
|
+
zinc: {
|
|
511
|
+
"50": "#fafafa",
|
|
512
|
+
"100": "#f4f4f5",
|
|
513
|
+
"200": "#e4e4e7",
|
|
514
|
+
"300": "#d4d4d8",
|
|
515
|
+
"400": "#9f9fa9",
|
|
516
|
+
"500": "#71717b",
|
|
517
|
+
"600": "#52525c",
|
|
518
|
+
"700": "#3f3f46",
|
|
519
|
+
"800": "#27272a",
|
|
520
|
+
"900": "#18181b",
|
|
521
|
+
"950": "#09090b"
|
|
522
|
+
},
|
|
523
|
+
neutral: {
|
|
524
|
+
"50": "#fafafa",
|
|
525
|
+
"100": "#f5f5f5",
|
|
526
|
+
"200": "#e5e5e5",
|
|
527
|
+
"300": "#d4d4d4",
|
|
528
|
+
"400": "#a1a1a1",
|
|
529
|
+
"500": "#737373",
|
|
530
|
+
"600": "#525252",
|
|
531
|
+
"700": "#404040",
|
|
532
|
+
"800": "#262626",
|
|
533
|
+
"900": "#171717",
|
|
534
|
+
"950": "#0a0a0a"
|
|
535
|
+
},
|
|
536
|
+
stone: {
|
|
537
|
+
"50": "#fafaf9",
|
|
538
|
+
"100": "#f5f5f4",
|
|
539
|
+
"200": "#e7e5e4",
|
|
540
|
+
"300": "#d6d3d1",
|
|
541
|
+
"400": "#a6a09b",
|
|
542
|
+
"500": "#79716b",
|
|
543
|
+
"600": "#57534d",
|
|
544
|
+
"700": "#44403b",
|
|
545
|
+
"800": "#292524",
|
|
546
|
+
"900": "#1c1917",
|
|
547
|
+
"950": "#0c0a09"
|
|
548
|
+
}
|
|
366
549
|
};
|
|
550
|
+
|
|
551
|
+
// src/parser/colors.ts
|
|
552
|
+
function flattenColors() {
|
|
553
|
+
const flat = {};
|
|
554
|
+
for (const [colorName, shades] of Object.entries(TAILWIND_PALETTES)) {
|
|
555
|
+
for (const [shade, hex] of Object.entries(shades)) {
|
|
556
|
+
flat[`${colorName}-${shade}`] = hex;
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
flat.white = "#FFFFFF";
|
|
560
|
+
flat.black = "#000000";
|
|
561
|
+
flat.transparent = "transparent";
|
|
562
|
+
return flat;
|
|
563
|
+
}
|
|
564
|
+
var COLORS = flattenColors();
|
|
367
565
|
function applyOpacity(hex, opacity) {
|
|
368
566
|
if (hex === "transparent") {
|
|
369
567
|
return "transparent";
|
|
@@ -561,6 +759,29 @@ var OVERFLOW_MAP = {
|
|
|
561
759
|
"overflow-visible": { overflow: "visible" },
|
|
562
760
|
"overflow-scroll": { overflow: "scroll" }
|
|
563
761
|
};
|
|
762
|
+
var OPACITY_MAP = {
|
|
763
|
+
"opacity-0": { opacity: 0 },
|
|
764
|
+
"opacity-5": { opacity: 0.05 },
|
|
765
|
+
"opacity-10": { opacity: 0.1 },
|
|
766
|
+
"opacity-15": { opacity: 0.15 },
|
|
767
|
+
"opacity-20": { opacity: 0.2 },
|
|
768
|
+
"opacity-25": { opacity: 0.25 },
|
|
769
|
+
"opacity-30": { opacity: 0.3 },
|
|
770
|
+
"opacity-35": { opacity: 0.35 },
|
|
771
|
+
"opacity-40": { opacity: 0.4 },
|
|
772
|
+
"opacity-45": { opacity: 0.45 },
|
|
773
|
+
"opacity-50": { opacity: 0.5 },
|
|
774
|
+
"opacity-55": { opacity: 0.55 },
|
|
775
|
+
"opacity-60": { opacity: 0.6 },
|
|
776
|
+
"opacity-65": { opacity: 0.65 },
|
|
777
|
+
"opacity-70": { opacity: 0.7 },
|
|
778
|
+
"opacity-75": { opacity: 0.75 },
|
|
779
|
+
"opacity-80": { opacity: 0.8 },
|
|
780
|
+
"opacity-85": { opacity: 0.85 },
|
|
781
|
+
"opacity-90": { opacity: 0.9 },
|
|
782
|
+
"opacity-95": { opacity: 0.95 },
|
|
783
|
+
"opacity-100": { opacity: 1 }
|
|
784
|
+
};
|
|
564
785
|
var Z_INDEX_SCALE = {
|
|
565
786
|
0: 0,
|
|
566
787
|
10: 10,
|
|
@@ -691,7 +912,7 @@ function parseLayout(cls) {
|
|
|
691
912
|
return { top: insetValue, right: insetValue, bottom: insetValue, left: insetValue };
|
|
692
913
|
}
|
|
693
914
|
}
|
|
694
|
-
return DISPLAY_MAP[cls] ?? FLEX_DIRECTION_MAP[cls] ?? FLEX_WRAP_MAP[cls] ?? FLEX_MAP[cls] ?? GROW_SHRINK_MAP[cls] ?? JUSTIFY_CONTENT_MAP[cls] ?? ALIGN_ITEMS_MAP[cls] ?? ALIGN_SELF_MAP[cls] ?? ALIGN_CONTENT_MAP[cls] ?? POSITION_MAP[cls] ?? OVERFLOW_MAP[cls] ?? null;
|
|
915
|
+
return DISPLAY_MAP[cls] ?? FLEX_DIRECTION_MAP[cls] ?? FLEX_WRAP_MAP[cls] ?? FLEX_MAP[cls] ?? GROW_SHRINK_MAP[cls] ?? JUSTIFY_CONTENT_MAP[cls] ?? ALIGN_ITEMS_MAP[cls] ?? ALIGN_SELF_MAP[cls] ?? ALIGN_CONTENT_MAP[cls] ?? POSITION_MAP[cls] ?? OVERFLOW_MAP[cls] ?? OPACITY_MAP[cls] ?? null;
|
|
695
916
|
}
|
|
696
917
|
|
|
697
918
|
// src/parser/shadows.ts
|
|
@@ -1353,6 +1574,11 @@ var FONT_SIZES = {
|
|
|
1353
1574
|
"8xl": 96,
|
|
1354
1575
|
"9xl": 128
|
|
1355
1576
|
};
|
|
1577
|
+
var FONT_FAMILY_MAP = {
|
|
1578
|
+
"font-sans": { fontFamily: "System" },
|
|
1579
|
+
"font-serif": { fontFamily: "serif" },
|
|
1580
|
+
"font-mono": { fontFamily: "Courier" }
|
|
1581
|
+
};
|
|
1356
1582
|
var FONT_WEIGHT_MAP = {
|
|
1357
1583
|
"font-thin": { fontWeight: "100" },
|
|
1358
1584
|
"font-extralight": { fontWeight: "200" },
|
|
@@ -1450,7 +1676,7 @@ function parseTypography(cls) {
|
|
|
1450
1676
|
return { lineHeight: arbitraryValue };
|
|
1451
1677
|
}
|
|
1452
1678
|
}
|
|
1453
|
-
return FONT_WEIGHT_MAP[cls] ?? FONT_STYLE_MAP[cls] ?? TEXT_ALIGN_MAP[cls] ?? TEXT_DECORATION_MAP[cls] ?? TEXT_TRANSFORM_MAP[cls] ?? LINE_HEIGHT_MAP[cls] ?? TRACKING_MAP[cls] ?? null;
|
|
1679
|
+
return FONT_FAMILY_MAP[cls] ?? FONT_WEIGHT_MAP[cls] ?? FONT_STYLE_MAP[cls] ?? TEXT_ALIGN_MAP[cls] ?? TEXT_DECORATION_MAP[cls] ?? TEXT_TRANSFORM_MAP[cls] ?? LINE_HEIGHT_MAP[cls] ?? TRACKING_MAP[cls] ?? null;
|
|
1454
1680
|
}
|
|
1455
1681
|
|
|
1456
1682
|
// src/parser/modifiers.ts
|
|
@@ -1575,14 +1801,14 @@ function loadTailwindConfig(configPath) {
|
|
|
1575
1801
|
return null;
|
|
1576
1802
|
}
|
|
1577
1803
|
}
|
|
1578
|
-
function
|
|
1804
|
+
function flattenColors2(colors, prefix = "") {
|
|
1579
1805
|
const result = {};
|
|
1580
1806
|
for (const [key, value] of Object.entries(colors)) {
|
|
1581
1807
|
const newKey = prefix ? `${prefix}-${key}` : key;
|
|
1582
1808
|
if (typeof value === "string") {
|
|
1583
1809
|
result[newKey] = value;
|
|
1584
1810
|
} else if (typeof value === "object" && value !== null) {
|
|
1585
|
-
Object.assign(result,
|
|
1811
|
+
Object.assign(result, flattenColors2(value, newKey));
|
|
1586
1812
|
}
|
|
1587
1813
|
}
|
|
1588
1814
|
return result;
|
|
@@ -1603,7 +1829,7 @@ function extractCustomColors(filename) {
|
|
|
1603
1829
|
);
|
|
1604
1830
|
}
|
|
1605
1831
|
const colors = config.theme.extend?.colors ?? config.theme.colors ?? {};
|
|
1606
|
-
return
|
|
1832
|
+
return flattenColors2(colors);
|
|
1607
1833
|
}
|
|
1608
1834
|
|
|
1609
1835
|
// src/babel/index.ts
|
|
@@ -11,6 +11,7 @@ export type PressableProps = Omit<RNPressableProps, "style"> & {
|
|
|
11
11
|
* Style can be a static style object/array or a function that receives Pressable state + disabled
|
|
12
12
|
*/
|
|
13
13
|
style?: StyleProp<ViewStyle> | ((state: EnhancedPressableState) => StyleProp<ViewStyle>);
|
|
14
|
+
className?: string;
|
|
14
15
|
};
|
|
15
16
|
/**
|
|
16
17
|
* Enhanced Pressable that supports the disabled: modifier
|
|
@@ -28,5 +29,6 @@ export declare const Pressable: import("react").ForwardRefExoticComponent<Omit<R
|
|
|
28
29
|
* Style can be a static style object/array or a function that receives Pressable state + disabled
|
|
29
30
|
*/
|
|
30
31
|
style?: StyleProp<ViewStyle> | ((state: EnhancedPressableState) => StyleProp<ViewStyle>);
|
|
32
|
+
className?: string;
|
|
31
33
|
} & import("react").RefAttributes<import("react-native").View>>;
|
|
32
34
|
export {};
|
|
@@ -23,6 +23,7 @@ export type TextInputProps = Omit<RNTextInputProps, "style"> & {
|
|
|
23
23
|
focused: boolean;
|
|
24
24
|
disabled: boolean;
|
|
25
25
|
}) => RNTextInputProps["style"]);
|
|
26
|
+
className?: string;
|
|
26
27
|
/**
|
|
27
28
|
* Convenience prop for disabled state (overrides editable if provided)
|
|
28
29
|
* When true, sets editable to false
|
|
@@ -48,6 +49,7 @@ export declare const TextInput: import("react").ForwardRefExoticComponent<Omit<R
|
|
|
48
49
|
focused: boolean;
|
|
49
50
|
disabled: boolean;
|
|
50
51
|
}) => RNTextInputProps["style"]);
|
|
52
|
+
className?: string;
|
|
51
53
|
/**
|
|
52
54
|
* Convenience prop for disabled state (overrides editable if provided)
|
|
53
55
|
* When true, sets editable to false
|