Skip to content

Commit 036e5c8

Browse files
authored
fix: add basic group and peer helpers (#446)
1 parent f42cda6 commit 036e5c8

File tree

3 files changed

+32
-1
lines changed

3 files changed

+32
-1
lines changed

src/cli/core/ClassnamesGenerator.ts

+10-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ import {nonConfigurableClassNames} from '../lib/non-configurable';
55
import {
66
TAllClassnames, Backgrounds, Layout, Borders, Tables, Effects,
77
Interactivity, TransitionsAndAnimations, Transforms, Accessibility, SVG,
8-
FlexBox, Grid, Spacing, Sizing, Typography, Filters
8+
FlexBox, Grid, Spacing, Sizing, Typography, Filters,
9+
Grouping
910
} from '../types/classes';
1011
import {TConfigTheme, TConfigDarkMode} from '../types/config';
1112
import {tailwindLabsPlugins} from '../lib/tailwindlabs-plugins';
@@ -44,6 +45,7 @@ export class ClassnamesGenerator {
4445
Filters: this.filters(),
4546
FlexBox: this.flexBox(),
4647
Grid: this.grid(),
48+
Grouping: this.grouping(),
4749
Spacing: this.spacing(),
4850
Interactivity: this.interactivity(),
4951
Layout: this.layout(),
@@ -94,6 +96,13 @@ export class ClassnamesGenerator {
9496
};
9597
};
9698

99+
private grouping = (): Grouping => {
100+
return {
101+
group: ['group'],
102+
peer: ['peer'],
103+
};
104+
};
105+
97106
private backgrounds = (): Backgrounds => {
98107
return {
99108
...nonConfigurableClassNames.backgrounds,

src/cli/types/classes.ts

+4
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ export type Effects = Record<TEffectsCategoryItem, string[]>;
77
export type Filters = Record<TFiltersCategoryItem, string[]>;
88
export type FlexBox = Record<TFlexBoxCategoryItem, string[]>;
99
export type Grid = Record<TGridCategoryItem, string[]>;
10+
export type Grouping = Record<TGroupingCategoryItem, string[]>;
1011
export type Interactivity = Record<TInteractivityCategoryItem, string[]>;
1112
export type Layout = Record<TLayoutCategoryItem, string[]>;
1213
export type Sizing = Record<TSizingCategoryItem, string[]>;
@@ -25,6 +26,7 @@ export type TAllClassnames = {
2526
Filters: Filters;
2627
FlexBox: FlexBox;
2728
Grid: Grid;
29+
Grouping: Grouping;
2830
Interactivity: Interactivity;
2931
Layout: Layout;
3032
Sizing: Sizing;
@@ -132,6 +134,8 @@ type TGridCategoryItem =
132134
| 'gap'
133135
| 'gridAutoFlow';
134136

137+
type TGroupingCategoryItem = 'group' | 'peer';
138+
135139
type TInteractivityCategoryItem =
136140
| 'appearance'
137141
| 'cursor'

src/index.ts

+18
Original file line numberDiff line numberDiff line change
@@ -4634,6 +4634,12 @@ export type TGrid =
46344634
| TGridRowEnd
46354635
| TGap;
46364636

4637+
export type TGroup = 'group';
4638+
4639+
export type TPeer = 'peer';
4640+
4641+
export type TGrouping = TGroup | TPeer;
4642+
46374643
export type TPadding =
46384644
| 'p-0'
46394645
| 'p-1'
@@ -8247,6 +8253,11 @@ export const gridRowStart: TUtilityFunction<TGridRowStart> = classnamesLib as an
82478253
export const gridRowEnd: TUtilityFunction<TGridRowEnd> = classnamesLib as any;
82488254
export const gap: TUtilityFunction<TGap> = classnamesLib as any;
82498255

8256+
//////////// Grouping Utility functions
8257+
8258+
export const group: TUtilityFunction<TGroup> = classnamesLib as any;
8259+
export const peer: TUtilityFunction<TPeer> = classnamesLib as any;
8260+
82508261
//////////// Spacing Utility functions
82518262

82528263
export const padding: TUtilityFunction<TPadding> = classnamesLib as any;
@@ -8384,6 +8395,10 @@ export const flexBox: TUtilityFunction<TFlexBox> = classnamesLib as any;
83848395

83858396
export const grid: TUtilityFunction<TGrid> = classnamesLib as any;
83868397

8398+
//////////// Grouping Utility functions
8399+
8400+
export const grouping: TUtilityFunction<TGrouping> = classnamesLib as any;
8401+
83878402
//////////// Spacing Utility functions
83888403

83898404
export const spacing: TUtilityFunction<TSpacing> = classnamesLib as any;
@@ -8502,6 +8517,8 @@ export const TW = {
85028517
gridRowStart,
85038518
gridRowEnd,
85048519
gap,
8520+
group,
8521+
peer,
85058522
padding,
85068523
margin,
85078524
space,
@@ -8592,6 +8609,7 @@ export const CN = {
85928609
filters,
85938610
flexBox,
85948611
grid,
8612+
grouping,
85958613
spacing,
85968614
interactivity,
85978615
layout,

0 commit comments

Comments
 (0)