luaniverse 4.0.40

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.
@@ -0,0 +1,234 @@
1
+ /**
2
+ * Luaniverse Design System - Tailwind CSS Safelist
3
+ *
4
+ * This file contains all the classes that should be safelisted in consumer applications
5
+ * to ensure they are included in the final CSS build even if not detected by content scanning.
6
+ */
7
+
8
+ export const luaniverseSafelist = [
9
+ // Dialog positioning
10
+ 'left-[50%]',
11
+ 'top-[50%]',
12
+ 'translate-x-[-50%]',
13
+ 'translate-y-[-50%]',
14
+ 'slide-out-to-left-1/2',
15
+ 'slide-out-to-top-[48%]',
16
+ 'slide-in-from-left-1/2',
17
+ 'slide-in-from-top-[48%]',
18
+ 'sm:rounded-[20px]',
19
+
20
+ // Story container sizes
21
+ 'w-[140px]',
22
+ 'w-[180px]',
23
+ 'w-[200px]',
24
+ 'w-[250px]',
25
+ 'w-[280px]',
26
+ 'w-[300px]',
27
+ 'w-[350px]',
28
+ 'w-[400px]',
29
+ 'w-[425px]',
30
+ 'w-[500px]',
31
+ 'w-[600px]',
32
+ 'h-[200px]',
33
+ 'h-[300px]',
34
+ 'min-h-[300px]',
35
+ 'min-h-[500px]',
36
+ 'min-w-[100px]',
37
+ 'max-w-[425px]',
38
+ 'max-w-[500px]',
39
+
40
+ 'lua:active:text-white',
41
+ 'lua:focus:ring-2',
42
+ 'lua:focus:ring-blue-500',
43
+ 'lua:focus-visible:ring-2',
44
+ 'lua:focus-visible:ring-offset-white',
45
+ 'lua:focus:ring-offset-2',
46
+ 'lua:ring-offset-white',
47
+ 'lua:focus:outline-hidden',
48
+ 'lua:focus:border-transparent',
49
+ 'lua:focus-visible:ring-blue-600',
50
+ 'lua:hover:bg-black-hover',
51
+ 'lua:active:bg-black-hover ',
52
+ 'lua:focus-visible:bg-black',
53
+ 'lua:focus-visible:ring-black',
54
+ 'lua:hover:bg-neutral-200',
55
+ 'lua:text-gray-700',
56
+ 'lua:left-2',
57
+ 'lua:hover:bg-blue-600',
58
+ 'lua:hover:text-white',
59
+ // Padding classes that are missing
60
+ 'lua:p-4',
61
+ 'lua:pl-8',
62
+ 'lua:pr-2',
63
+ 'lua:py-2',
64
+ 'lua:px-3',
65
+ 'lua:pl-10',
66
+ 'lua:pr-12',
67
+ // Other commonly missing classes
68
+ 'lua:rounded-sm',
69
+ 'lua:select-none',
70
+ 'lua:cursor-default',
71
+ 'lua:outline-hidden',
72
+ 'lua:focus:bg-gray-100',
73
+ 'lua:focus:text-gray-900',
74
+ // Flex
75
+ 'lua:flex-col-reverse',
76
+ 'lua:sm:justify-end',
77
+ 'lua:flex-col',
78
+ 'lua:lg:flex-row',
79
+ 'lua:h-auto',
80
+ 'lua:lg:h-full',
81
+ 'lua:max-h-64',
82
+ 'lua:lg:max-h-none',
83
+ 'lua:lg:border-r',
84
+ 'lua:lg:border-t-0',
85
+ 'lua:lg:border-r-2',
86
+ 'lua:min-h-0',
87
+
88
+ // Tables
89
+ 'lua:bg-gray-100',
90
+ 'lua:md:hover:bg-gray-50',
91
+ 'lua:transition-colors',
92
+ 'lua:block',
93
+ 'lua:md:table-row',
94
+ 'lua:md:table-row-group',
95
+ 'lua:md:table',
96
+ 'lua:md:table-header-group',
97
+ 'lua:md:table-cell',
98
+ 'lua:py-2',
99
+ 'lua:[&_tr]:border-none',
100
+ 'lua:hidden',
101
+ 'lua:shadow-sm',
102
+ 'lua:text-sm',
103
+ 'lua:w-full',
104
+ 'lua:caption-bottom',
105
+ 'lua:h-11',
106
+ 'lua:align-middle',
107
+ 'lua:md:px-4',
108
+ 'lua:md:text-left',
109
+ 'lua:md:border-b',
110
+ 'lua:md:border-b-0',
111
+ 'lua:font-medium',
112
+ 'lua:space-y-4',
113
+ 'lua:cursor-pointer',
114
+ 'lua:md:border-1',
115
+ 'lua:rounded-xl',
116
+ 'lua:overflow-x-auto',
117
+ 'lua:[&_tr:last-child]:border-0',
118
+ 'last:lua:border-b-0',
119
+ 'lua:border-b',
120
+ 'lua:border-gray-100',
121
+ 'lua:md:border-0',
122
+ 'lua:md:border-gray-200',
123
+ 'lua:border',
124
+ 'lua:border-gray-200',
125
+
126
+ // Checkbox
127
+ 'lua:peer',
128
+ 'lua:data-[state=checked]:bg-blue-600',
129
+ 'lua:data-[state=checked]:text-white',
130
+ 'lua:aria-[invalid=true]:border-red-500',
131
+ 'lua:aria-[invalid=true]:ring-red-200',
132
+ 'lua:data-[state=checked]:border-blue-600',
133
+ 'lua:disabled:opacity-50',
134
+ 'lua:disabled:cursor-not-allowed',
135
+ 'lua:focus-visible:ring-offset-white',
136
+ 'lua:focus-visible:ring-offset-2',
137
+ 'lua:transition-all',
138
+ 'lua:shadow-xs',
139
+ 'lua:shrink-0',
140
+ 'lua:bg-gray-200',
141
+ 'lua:-mx-1',
142
+ 'lua:my-1',
143
+ 'lua:h-px',
144
+
145
+ 'lua:w-[var(--radix-dropdown-menu-trigger-width)]',
146
+
147
+ // tabs
148
+ 'lua:data-[state=active]:text-blue-600',
149
+ 'lua:data-[state=active]:border-b-2',
150
+ 'lua:data-[state=active]:border-blue-600',
151
+ 'lua:data-[state=active]:-mb-px',
152
+ 'lua:hover:text-gray-900',
153
+ 'lua:disabled:pointer-events-none',
154
+ 'lua:focus-visible:outline-hidden',
155
+ 'lua:whitespace-nowrap',
156
+ 'lua:gap-2',
157
+
158
+ // carousel
159
+ 'lua:justify-center',
160
+ 'lua:overflow-hidden',
161
+ 'lua:max-w-5xl',
162
+ 'lua:absolute',
163
+ 'lua:px-16',
164
+ 'lua:duration-200',
165
+ 'lua:shadow-lg',
166
+ 'lua:bg-black/50',
167
+ 'lua:hover:bg-black/70',
168
+ 'lua:fixed',
169
+ 'lua:relative',
170
+ 'lua:max-w-lg',
171
+ 'lua:min-w-0',
172
+ 'lua:max-w-xs',
173
+ 'lua:-translate-y-1/2',
174
+ 'lua:-left-12',
175
+ 'lua:top-1/2',
176
+ 'lua:-mx-2',
177
+ 'lua:flex-none',
178
+ 'lua:-right-12',
179
+ 'lua:sm:rounded-lg',
180
+
181
+ // Sheet
182
+ 'lua:sm:max-w-sm',
183
+ 'lua:h-full lua:w-3/4',
184
+ 'lua:inset-y-0',
185
+ 'lua:inset-0',
186
+ 'lua:z-50',
187
+ 'lua:backdrop-blur-sm',
188
+ 'lua:bg-black/80',
189
+ 'lua:data-[state=open]:bg-gray-100',
190
+ 'lua:focus:ring-blue-600',
191
+ 'lua:focus:outline-hidden',
192
+ 'lua:hover:opacity-100',
193
+ 'lua:transition-opacity',
194
+ 'lua:opacity-70',
195
+ 'lua:sm:max-w-md',
196
+
197
+ // Toast colors (headless approach)
198
+ 'lua:bg-green-50',
199
+ 'lua:bg-red-50',
200
+ 'lua:bg-yellow-50',
201
+ 'lua:bg-blue-50',
202
+ 'lua:border-green-200',
203
+ 'lua:border-red-200',
204
+ 'lua:border-yellow-200',
205
+ 'lua:border-blue-200',
206
+ 'lua:border-gray-200',
207
+ 'lua:text-green-800',
208
+ 'lua:text-red-800',
209
+ 'lua:text-yellow-800',
210
+ 'lua:text-blue-800',
211
+ 'lua:text-green-600',
212
+ 'lua:text-red-600',
213
+ 'lua:text-yellow-600',
214
+ 'lua:text-blue-600',
215
+ 'lua:text-gray-900',
216
+ 'lua:bg-white',
217
+ 'lua:gap-3',
218
+ 'lua:items-center',
219
+ 'lua:min-w-[320px]',
220
+ 'lua:max-w-md',
221
+ 'lua:flex-1',
222
+ 'lua:font-medium',
223
+ 'lua:opacity-80',
224
+ 'lua:mt-1',
225
+ 'lua:w-5',
226
+ 'lua:h-5',
227
+ 'lua:text-xs',
228
+
229
+ // select
230
+ 'lua:max-h-96',
231
+ 'lua:min-w-32',
232
+ ];
233
+
234
+ export default luaniverseSafelist;
@@ -0,0 +1,210 @@
1
+ # Luaniverse Safelist for Tailwind CSS v4
2
+ # Auto-generated from src/safelist.js - do not edit manually
3
+ # Use with @source directive in Tailwind CSS v4
4
+ #
5
+ # Usage in your CSS:
6
+ # @source "./node_modules/@lua-ai-global/luaniverse/dist/safelist.txt";
7
+ #
8
+ # Total classes: 201
9
+
10
+ left-[50%]
11
+ top-[50%]
12
+ translate-x-[-50%]
13
+ translate-y-[-50%]
14
+ slide-out-to-left-1/2
15
+ slide-out-to-top-[48%]
16
+ slide-in-from-left-1/2
17
+ slide-in-from-top-[48%]
18
+ sm:rounded-[20px]
19
+ w-[140px]
20
+ w-[180px]
21
+ w-[200px]
22
+ w-[250px]
23
+ w-[280px]
24
+ w-[300px]
25
+ w-[350px]
26
+ w-[400px]
27
+ w-[425px]
28
+ w-[500px]
29
+ w-[600px]
30
+ h-[200px]
31
+ h-[300px]
32
+ min-h-[300px]
33
+ min-h-[500px]
34
+ min-w-[100px]
35
+ max-w-[425px]
36
+ max-w-[500px]
37
+ lua:active:text-white
38
+ lua:focus:ring-2
39
+ lua:focus:ring-blue-500
40
+ lua:focus-visible:ring-2
41
+ lua:focus-visible:ring-offset-white
42
+ lua:focus:ring-offset-2
43
+ lua:ring-offset-white
44
+ lua:focus:outline-hidden
45
+ lua:focus:border-transparent
46
+ lua:focus-visible:ring-blue-600
47
+ lua:hover:bg-black-hover
48
+ lua:active:bg-black-hover
49
+ lua:focus-visible:bg-black
50
+ lua:focus-visible:ring-black
51
+ lua:hover:bg-neutral-200
52
+ lua:text-gray-700
53
+ lua:left-2
54
+ lua:hover:bg-blue-600
55
+ lua:hover:text-white
56
+ lua:p-4
57
+ lua:pl-8
58
+ lua:pr-2
59
+ lua:py-2
60
+ lua:px-3
61
+ lua:pl-10
62
+ lua:pr-12
63
+ lua:rounded-sm
64
+ lua:select-none
65
+ lua:cursor-default
66
+ lua:outline-hidden
67
+ lua:focus:bg-gray-100
68
+ lua:focus:text-gray-900
69
+ lua:flex-col-reverse
70
+ lua:sm:justify-end
71
+ lua:flex-col
72
+ lua:lg:flex-row
73
+ lua:h-auto
74
+ lua:lg:h-full
75
+ lua:max-h-64
76
+ lua:lg:max-h-none
77
+ lua:lg:border-r
78
+ lua:lg:border-t-0
79
+ lua:lg:border-r-2
80
+ lua:min-h-0
81
+ lua:bg-gray-100
82
+ lua:md:hover:bg-gray-50
83
+ lua:transition-colors
84
+ lua:block
85
+ lua:md:table-row
86
+ lua:md:table-row-group
87
+ lua:md:table
88
+ lua:md:table-header-group
89
+ lua:md:table-cell
90
+ lua:py-2
91
+ lua:[&_tr]:border-none
92
+ lua:hidden
93
+ lua:shadow-sm
94
+ lua:text-sm
95
+ lua:w-full
96
+ lua:caption-bottom
97
+ lua:h-11
98
+ lua:align-middle
99
+ lua:md:px-4
100
+ lua:md:text-left
101
+ lua:md:border-b
102
+ lua:md:border-b-0
103
+ lua:font-medium
104
+ lua:space-y-4
105
+ lua:cursor-pointer
106
+ lua:md:border-1
107
+ lua:rounded-xl
108
+ lua:overflow-x-auto
109
+ lua:[&_tr:last-child]:border-0
110
+ last:lua:border-b-0
111
+ lua:border-b
112
+ lua:border-gray-100
113
+ lua:md:border-0
114
+ lua:md:border-gray-200
115
+ lua:border
116
+ lua:border-gray-200
117
+ lua:peer
118
+ lua:data-[state=checked]:bg-blue-600
119
+ lua:data-[state=checked]:text-white
120
+ lua:aria-[invalid=true]:border-red-500
121
+ lua:aria-[invalid=true]:ring-red-200
122
+ lua:data-[state=checked]:border-blue-600
123
+ lua:disabled:opacity-50
124
+ lua:disabled:cursor-not-allowed
125
+ lua:focus-visible:ring-offset-white
126
+ lua:focus-visible:ring-offset-2
127
+ lua:transition-all
128
+ lua:shadow-xs
129
+ lua:shrink-0
130
+ lua:bg-gray-200
131
+ lua:-mx-1
132
+ lua:my-1
133
+ lua:h-px
134
+ lua:w-[var(--radix-dropdown-menu-trigger-width)]
135
+ lua:data-[state=active]:text-blue-600
136
+ lua:data-[state=active]:border-b-2
137
+ lua:data-[state=active]:border-blue-600
138
+ lua:data-[state=active]:-mb-px
139
+ lua:hover:text-gray-900
140
+ lua:disabled:pointer-events-none
141
+ lua:focus-visible:outline-hidden
142
+ lua:whitespace-nowrap
143
+ lua:gap-2
144
+ lua:justify-center
145
+ lua:overflow-hidden
146
+ lua:max-w-5xl
147
+ lua:absolute
148
+ lua:px-16
149
+ lua:duration-200
150
+ lua:shadow-lg
151
+ lua:bg-black/50
152
+ lua:hover:bg-black/70
153
+ lua:fixed
154
+ lua:relative
155
+ lua:max-w-lg
156
+ lua:min-w-0
157
+ lua:max-w-xs
158
+ lua:-translate-y-1/2
159
+ lua:-left-12
160
+ lua:top-1/2
161
+ lua:-mx-2
162
+ lua:flex-none
163
+ lua:-right-12
164
+ lua:sm:rounded-lg
165
+ lua:sm:max-w-sm
166
+ lua:h-full lua:w-3/4
167
+ lua:inset-y-0
168
+ lua:inset-0
169
+ lua:z-50
170
+ lua:backdrop-blur-sm
171
+ lua:bg-black/80
172
+ lua:data-[state=open]:bg-gray-100
173
+ lua:focus:ring-blue-600
174
+ lua:focus:outline-hidden
175
+ lua:hover:opacity-100
176
+ lua:transition-opacity
177
+ lua:opacity-70
178
+ lua:sm:max-w-md
179
+ lua:bg-green-50
180
+ lua:bg-red-50
181
+ lua:bg-yellow-50
182
+ lua:bg-blue-50
183
+ lua:border-green-200
184
+ lua:border-red-200
185
+ lua:border-yellow-200
186
+ lua:border-blue-200
187
+ lua:border-gray-200
188
+ lua:text-green-800
189
+ lua:text-red-800
190
+ lua:text-yellow-800
191
+ lua:text-blue-800
192
+ lua:text-green-600
193
+ lua:text-red-600
194
+ lua:text-yellow-600
195
+ lua:text-blue-600
196
+ lua:text-gray-900
197
+ lua:bg-white
198
+ lua:gap-3
199
+ lua:items-center
200
+ lua:min-w-[320px]
201
+ lua:max-w-md
202
+ lua:flex-1
203
+ lua:font-medium
204
+ lua:opacity-80
205
+ lua:mt-1
206
+ lua:w-5
207
+ lua:h-5
208
+ lua:text-xs
209
+ lua:max-h-96
210
+ lua:min-w-32