@@ -11,6 +11,7 @@ import {
11
11
isInteger ,
12
12
isLength ,
13
13
isNumber ,
14
+ isPercent ,
14
15
isTshirtSize ,
15
16
} from './validators'
16
17
@@ -29,6 +30,7 @@ export function getDefaultConfig() {
29
30
const invert = fromTheme ( 'invert' )
30
31
const gap = fromTheme ( 'gap' )
31
32
const gradientColorStops = fromTheme ( 'gradientColorStops' )
33
+ const gradientColorStopPositions = fromTheme ( 'gradientColorStopPositions' )
32
34
const inset = fromTheme ( 'inset' )
33
35
const margin = fromTheme ( 'margin' )
34
36
const opacity = fromTheme ( 'opacity' )
@@ -78,7 +80,8 @@ export function getDefaultConfig() {
78
80
'luminosity' ,
79
81
'plus-lighter' ,
80
82
] as const
81
- const getAlign = ( ) => [ 'start' , 'end' , 'center' , 'between' , 'around' , 'evenly' ] as const
83
+ const getAlign = ( ) =>
84
+ [ 'start' , 'end' , 'center' , 'between' , 'around' , 'evenly' , 'stretch' ] as const
82
85
const getZeroAndEmpty = ( ) => [ '' , '0' , isArbitraryValue ] as const
83
86
const getBreaks = ( ) =>
84
87
[ 'auto' , 'avoid' , 'all' , 'avoid-page' , 'page' , 'left' , 'right' , 'column' ] as const
@@ -102,6 +105,7 @@ export function getDefaultConfig() {
102
105
invert : getZeroAndEmpty ( ) ,
103
106
gap : [ spacing ] ,
104
107
gradientColorStops : [ colors ] ,
108
+ gradientColorStopPositions : [ isPercent , isArbitraryLength ] ,
105
109
inset : getSpacingWithAuto ( ) ,
106
110
margin : getSpacingWithAuto ( ) ,
107
111
opacity : getNumber ( ) ,
@@ -257,6 +261,16 @@ export function getDefaultConfig() {
257
261
* @see https://tailwindcss.com/docs/top-right-bottom-left
258
262
*/
259
263
'inset-y' : [ { 'inset-y' : [ inset ] } ] ,
264
+ /**
265
+ * Start
266
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
267
+ */
268
+ start : [ { start : [ inset ] } ] ,
269
+ /**
270
+ * End
271
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
272
+ */
273
+ end : [ { end : [ inset ] } ] ,
260
274
/**
261
275
* Top
262
276
* @see https://tailwindcss.com/docs/top-right-bottom-left
@@ -397,7 +411,7 @@ export function getDefaultConfig() {
397
411
* Justify Content
398
412
* @see https://tailwindcss.com/docs/justify-content
399
413
*/
400
- 'justify-content' : [ { justify : getAlign ( ) } ] ,
414
+ 'justify-content' : [ { justify : [ 'normal' , ... getAlign ( ) ] } ] ,
401
415
/**
402
416
* Justify Items
403
417
* @see https://tailwindcss.com/docs/justify-items
@@ -412,7 +426,7 @@ export function getDefaultConfig() {
412
426
* Align Content
413
427
* @see https://tailwindcss.com/docs/align-content
414
428
*/
415
- 'align-content' : [ { content : [ ...getAlign ( ) , 'baseline' ] } ] ,
429
+ 'align-content' : [ { content : [ 'normal' , ...getAlign ( ) , 'baseline' ] } ] ,
416
430
/**
417
431
* Align Items
418
432
* @see https://tailwindcss.com/docs/align-items
@@ -427,7 +441,7 @@ export function getDefaultConfig() {
427
441
* Place Content
428
442
* @see https://tailwindcss.com/docs/place-content
429
443
*/
430
- 'place-content' : [ { 'place-content' : [ ...getAlign ( ) , 'baseline' , 'stretch' ] } ] ,
444
+ 'place-content' : [ { 'place-content' : [ ...getAlign ( ) , 'baseline' ] } ] ,
431
445
/**
432
446
* Place Items
433
447
* @see https://tailwindcss.com/docs/place-items
@@ -454,6 +468,16 @@ export function getDefaultConfig() {
454
468
* @see https://tailwindcss.com/docs/padding
455
469
*/
456
470
py : [ { py : [ padding ] } ] ,
471
+ /**
472
+ * Padding Start
473
+ * @see https://tailwindcss.com/docs/padding
474
+ */
475
+ ps : [ { ps : [ padding ] } ] ,
476
+ /**
477
+ * Padding End
478
+ * @see https://tailwindcss.com/docs/padding
479
+ */
480
+ pe : [ { pe : [ padding ] } ] ,
457
481
/**
458
482
* Padding Top
459
483
* @see https://tailwindcss.com/docs/padding
@@ -489,6 +513,16 @@ export function getDefaultConfig() {
489
513
* @see https://tailwindcss.com/docs/margin
490
514
*/
491
515
my : [ { my : [ margin ] } ] ,
516
+ /**
517
+ * Margin Start
518
+ * @see https://tailwindcss.com/docs/margin
519
+ */
520
+ ms : [ { ms : [ margin ] } ] ,
521
+ /**
522
+ * Margin End
523
+ * @see https://tailwindcss.com/docs/margin
524
+ */
525
+ me : [ { me : [ margin ] } ] ,
492
526
/**
493
527
* Margin Top
494
528
* @see https://tailwindcss.com/docs/margin
@@ -663,13 +697,23 @@ export function getDefaultConfig() {
663
697
] ,
664
698
} ,
665
699
] ,
700
+ /**
701
+ * Line Clamp
702
+ * @see https://tailwindcss.com/docs/line-clamp
703
+ */
704
+ 'line-clamp' : [ { 'line-clamp' : [ 'none' , isNumber , isArbitraryNumber ] } ] ,
666
705
/**
667
706
* Line Height
668
707
* @see https://tailwindcss.com/docs/line-height
669
708
*/
670
709
leading : [
671
710
{ leading : [ 'none' , 'tight' , 'snug' , 'normal' , 'relaxed' , 'loose' , isLength ] } ,
672
711
] ,
712
+ /**
713
+ * List Style Image
714
+ * @see https://tailwindcss.com/docs/list-style-image
715
+ */
716
+ 'list-image' : [ { 'list-image' : [ 'none' , isArbitraryValue ] } ] ,
673
717
/**
674
718
* List Style Type
675
719
* @see https://tailwindcss.com/docs/list-style-type
@@ -769,12 +813,19 @@ export function getDefaultConfig() {
769
813
* Whitespace
770
814
* @see https://tailwindcss.com/docs/whitespace
771
815
*/
772
- whitespace : [ { whitespace : [ 'normal' , 'nowrap' , 'pre' , 'pre-line' , 'pre-wrap' ] } ] ,
816
+ whitespace : [
817
+ { whitespace : [ 'normal' , 'nowrap' , 'pre' , 'pre-line' , 'pre-wrap' , 'break-spaces' ] } ,
818
+ ] ,
773
819
/**
774
820
* Word Break
775
821
* @see https://tailwindcss.com/docs/word-break
776
822
*/
777
823
break : [ { break : [ 'normal' , 'words' , 'all' , 'keep' ] } ] ,
824
+ /**
825
+ * Hyphens
826
+ * @see https://tailwindcss.com/docs/hyphens
827
+ */
828
+ hyphens : [ { hyphens : [ 'none' , 'manual' , 'auto' ] } ] ,
778
829
/**
779
830
* Content
780
831
* @see https://tailwindcss.com/docs/content
@@ -835,6 +886,21 @@ export function getDefaultConfig() {
835
886
* @see https://tailwindcss.com/docs/background-color
836
887
*/
837
888
'bg-color' : [ { bg : [ colors ] } ] ,
889
+ /**
890
+ * Gradient Color Stops From Position
891
+ * @see https://tailwindcss.com/docs/gradient-color-stops
892
+ */
893
+ 'gradient-from-pos' : [ { from : [ gradientColorStopPositions ] } ] ,
894
+ /**
895
+ * Gradient Color Stops Via Position
896
+ * @see https://tailwindcss.com/docs/gradient-color-stops
897
+ */
898
+ 'gradient-via-pos' : [ { via : [ gradientColorStopPositions ] } ] ,
899
+ /**
900
+ * Gradient Color Stops To Position
901
+ * @see https://tailwindcss.com/docs/gradient-color-stops
902
+ */
903
+ 'gradient-to-pos' : [ { to : [ gradientColorStopPositions ] } ] ,
838
904
/**
839
905
* Gradient Color Stops From
840
906
* @see https://tailwindcss.com/docs/gradient-color-stops
@@ -856,6 +922,16 @@ export function getDefaultConfig() {
856
922
* @see https://tailwindcss.com/docs/border-radius
857
923
*/
858
924
rounded : [ { rounded : [ borderRadius ] } ] ,
925
+ /**
926
+ * Border Radius Start
927
+ * @see https://tailwindcss.com/docs/border-radius
928
+ */
929
+ 'rounded-s' : [ { 'rounded-s' : [ borderRadius ] } ] ,
930
+ /**
931
+ * Border Radius End
932
+ * @see https://tailwindcss.com/docs/border-radius
933
+ */
934
+ 'rounded-e' : [ { 'rounded-e' : [ borderRadius ] } ] ,
859
935
/**
860
936
* Border Radius Top
861
937
* @see https://tailwindcss.com/docs/border-radius
@@ -876,6 +952,26 @@ export function getDefaultConfig() {
876
952
* @see https://tailwindcss.com/docs/border-radius
877
953
*/
878
954
'rounded-l' : [ { 'rounded-l' : [ borderRadius ] } ] ,
955
+ /**
956
+ * Border Radius Start Start
957
+ * @see https://tailwindcss.com/docs/border-radius
958
+ */
959
+ 'rounded-ss' : [ { 'rounded-ss' : [ borderRadius ] } ] ,
960
+ /**
961
+ * Border Radius Start End
962
+ * @see https://tailwindcss.com/docs/border-radius
963
+ */
964
+ 'rounded-se' : [ { 'rounded-se' : [ borderRadius ] } ] ,
965
+ /**
966
+ * Border Radius End End
967
+ * @see https://tailwindcss.com/docs/border-radius
968
+ */
969
+ 'rounded-ee' : [ { 'rounded-ee' : [ borderRadius ] } ] ,
970
+ /**
971
+ * Border Radius End Start
972
+ * @see https://tailwindcss.com/docs/border-radius
973
+ */
974
+ 'rounded-es' : [ { 'rounded-es' : [ borderRadius ] } ] ,
879
975
/**
880
976
* Border Radius Top Left
881
977
* @see https://tailwindcss.com/docs/border-radius
@@ -911,6 +1007,16 @@ export function getDefaultConfig() {
911
1007
* @see https://tailwindcss.com/docs/border-width
912
1008
*/
913
1009
'border-w-y' : [ { 'border-y' : [ borderWidth ] } ] ,
1010
+ /**
1011
+ * Border Width Start
1012
+ * @see https://tailwindcss.com/docs/border-width
1013
+ */
1014
+ 'border-w-s' : [ { 'border-s' : [ borderWidth ] } ] ,
1015
+ /**
1016
+ * Border Width End
1017
+ * @see https://tailwindcss.com/docs/border-width
1018
+ */
1019
+ 'border-w-e' : [ { 'border-e' : [ borderWidth ] } ] ,
914
1020
/**
915
1021
* Border Width Top
916
1022
* @see https://tailwindcss.com/docs/border-width
@@ -1216,6 +1322,11 @@ export function getDefaultConfig() {
1216
1322
* @see https://tailwindcss.com/docs/table-layout
1217
1323
*/
1218
1324
'table-layout' : [ { table : [ 'auto' , 'fixed' ] } ] ,
1325
+ /**
1326
+ * Caption Side
1327
+ * @see https://tailwindcss.com/docs/caption-side
1328
+ */
1329
+ caption : [ { caption : [ 'top' , 'bottom' ] } ] ,
1219
1330
// Transitions and Animation
1220
1331
/**
1221
1332
* Tranisition Property
@@ -1414,6 +1525,16 @@ export function getDefaultConfig() {
1414
1525
* @see https://tailwindcss.com/docs/scroll-margin
1415
1526
*/
1416
1527
'scroll-my' : [ { 'scroll-my' : [ spacing ] } ] ,
1528
+ /**
1529
+ * Scroll Margin Start
1530
+ * @see https://tailwindcss.com/docs/scroll-margin
1531
+ */
1532
+ 'scroll-ms' : [ { 'scroll-ms' : [ spacing ] } ] ,
1533
+ /**
1534
+ * Scroll Margin End
1535
+ * @see https://tailwindcss.com/docs/scroll-margin
1536
+ */
1537
+ 'scroll-me' : [ { 'scroll-me' : [ spacing ] } ] ,
1417
1538
/**
1418
1539
* Scroll Margin Top
1419
1540
* @see https://tailwindcss.com/docs/scroll-margin
@@ -1449,6 +1570,16 @@ export function getDefaultConfig() {
1449
1570
* @see https://tailwindcss.com/docs/scroll-padding
1450
1571
*/
1451
1572
'scroll-py' : [ { 'scroll-py' : [ spacing ] } ] ,
1573
+ /**
1574
+ * Scroll Padding Start
1575
+ * @see https://tailwindcss.com/docs/scroll-padding
1576
+ */
1577
+ 'scroll-ps' : [ { 'scroll-ps' : [ spacing ] } ] ,
1578
+ /**
1579
+ * Scroll Padding End
1580
+ * @see https://tailwindcss.com/docs/scroll-padding
1581
+ */
1582
+ 'scroll-pe' : [ { 'scroll-pe' : [ spacing ] } ] ,
1452
1583
/**
1453
1584
* Scroll Padding Top
1454
1585
* @see https://tailwindcss.com/docs/scroll-padding
@@ -1542,15 +1673,15 @@ export function getDefaultConfig() {
1542
1673
conflictingClassGroups : {
1543
1674
overflow : [ 'overflow-x' , 'overflow-y' ] ,
1544
1675
overscroll : [ 'overscroll-x' , 'overscroll-y' ] ,
1545
- inset : [ 'inset-x' , 'inset-y' , 'top' , 'right' , 'bottom' , 'left' ] ,
1676
+ inset : [ 'inset-x' , 'inset-y' , 'start' , 'end' , ' top', 'right' , 'bottom' , 'left' ] ,
1546
1677
'inset-x' : [ 'right' , 'left' ] ,
1547
1678
'inset-y' : [ 'top' , 'bottom' ] ,
1548
1679
flex : [ 'basis' , 'grow' , 'shrink' ] ,
1549
1680
gap : [ 'gap-x' , 'gap-y' ] ,
1550
- p : [ 'px' , 'py' , 'pt' , 'pr' , 'pb' , 'pl' ] ,
1681
+ p : [ 'px' , 'py' , 'ps' , 'pe' , ' pt', 'pr' , 'pb' , 'pl' ] ,
1551
1682
px : [ 'pr' , 'pl' ] ,
1552
1683
py : [ 'pt' , 'pb' ] ,
1553
- m : [ 'mx' , 'my' , 'mt' , 'mr' , 'mb' , 'ml' ] ,
1684
+ m : [ 'mx' , 'my' , 'ms' , 'me' , ' mt', 'mr' , 'mb' , 'ml' ] ,
1554
1685
mx : [ 'mr' , 'ml' ] ,
1555
1686
my : [ 'mt' , 'mb' ] ,
1556
1687
'font-size' : [ 'leading' ] ,
@@ -1567,21 +1698,36 @@ export function getDefaultConfig() {
1567
1698
'fvn-spacing' : [ 'fvn-normal' ] ,
1568
1699
'fvn-fraction' : [ 'fvn-normal' ] ,
1569
1700
rounded : [
1701
+ 'rounded-s' ,
1702
+ 'rounded-e' ,
1570
1703
'rounded-t' ,
1571
1704
'rounded-r' ,
1572
1705
'rounded-b' ,
1573
1706
'rounded-l' ,
1707
+ 'rounded-ss' ,
1708
+ 'rounded-se' ,
1709
+ 'rounded-ee' ,
1710
+ 'rounded-es' ,
1574
1711
'rounded-tl' ,
1575
1712
'rounded-tr' ,
1576
1713
'rounded-br' ,
1577
1714
'rounded-bl' ,
1578
1715
] ,
1716
+ 'rounded-s' : [ 'rounded-ss' , 'rounded-es' ] ,
1717
+ 'rounded-e' : [ 'rounded-se' , 'rounded-ee' ] ,
1579
1718
'rounded-t' : [ 'rounded-tl' , 'rounded-tr' ] ,
1580
1719
'rounded-r' : [ 'rounded-tr' , 'rounded-br' ] ,
1581
1720
'rounded-b' : [ 'rounded-br' , 'rounded-bl' ] ,
1582
1721
'rounded-l' : [ 'rounded-tl' , 'rounded-bl' ] ,
1583
1722
'border-spacing' : [ 'border-spacing-x' , 'border-spacing-y' ] ,
1584
- 'border-w' : [ 'border-w-t' , 'border-w-r' , 'border-w-b' , 'border-w-l' ] ,
1723
+ 'border-w' : [
1724
+ 'border-w-s' ,
1725
+ 'border-w-e' ,
1726
+ 'border-w-t' ,
1727
+ 'border-w-r' ,
1728
+ 'border-w-b' ,
1729
+ 'border-w-l' ,
1730
+ ] ,
1585
1731
'border-w-x' : [ 'border-w-r' , 'border-w-l' ] ,
1586
1732
'border-w-y' : [ 'border-w-t' , 'border-w-b' ] ,
1587
1733
'border-color' : [
@@ -1595,6 +1741,8 @@ export function getDefaultConfig() {
1595
1741
'scroll-m' : [
1596
1742
'scroll-mx' ,
1597
1743
'scroll-my' ,
1744
+ 'scroll-ms' ,
1745
+ 'scroll-me' ,
1598
1746
'scroll-mt' ,
1599
1747
'scroll-mr' ,
1600
1748
'scroll-mb' ,
@@ -1605,6 +1753,8 @@ export function getDefaultConfig() {
1605
1753
'scroll-p' : [
1606
1754
'scroll-px' ,
1607
1755
'scroll-py' ,
1756
+ 'scroll-ps' ,
1757
+ 'scroll-pe' ,
1608
1758
'scroll-pt' ,
1609
1759
'scroll-pr' ,
1610
1760
'scroll-pb' ,
0 commit comments