gitxp 0.0.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.
Files changed (48) hide show
  1. package/.output/nitro.json +17 -0
  2. package/.output/public/assets/index-BGHvBNtP.js +11 -0
  3. package/.output/public/assets/routes-DuE8S6pX.js +60 -0
  4. package/.output/public/assets/styles-D5xbQNYu.css +1 -0
  5. package/.output/server/_chunks/ssr-renderer.mjs +26 -0
  6. package/.output/server/_libs/@floating-ui/core+[...].mjs +671 -0
  7. package/.output/server/_libs/@floating-ui/dom+[...].mjs +649 -0
  8. package/.output/server/_libs/@floating-ui/react-dom+[...].mjs +856 -0
  9. package/.output/server/_libs/@radix-ui/react-arrow+[...].mjs +258 -0
  10. package/.output/server/_libs/@radix-ui/react-dialog+[...].mjs +1862 -0
  11. package/.output/server/_libs/@radix-ui/react-popper+[...].mjs +320 -0
  12. package/.output/server/_libs/@radix-ui/react-tooltip+[...].mjs +534 -0
  13. package/.output/server/_libs/@tanstack/db+[...].mjs +14680 -0
  14. package/.output/server/_libs/@tanstack/react-router+[...].mjs +14563 -0
  15. package/.output/server/_libs/@tanstack/react-router-ssr-query+[...].mjs +126 -0
  16. package/.output/server/_libs/@tanstack/router-core+[...].mjs +3636 -0
  17. package/.output/server/_libs/class-variance-authority+clsx.mjs +69 -0
  18. package/.output/server/_libs/cmdk.mjs +504 -0
  19. package/.output/server/_libs/h3+rou3+srvx.mjs +1361 -0
  20. package/.output/server/_libs/h3-v2.mjs +285 -0
  21. package/.output/server/_libs/lucide-react.mjs +158 -0
  22. package/.output/server/_libs/radix-ui__primitive.mjs +44 -0
  23. package/.output/server/_libs/radix-ui__react-context.mjs +108 -0
  24. package/.output/server/_libs/tailwind-merge.mjs +3380 -0
  25. package/.output/server/_libs/tanstack__history.mjs +384 -0
  26. package/.output/server/_libs/tanstack__query-core.mjs +2225 -0
  27. package/.output/server/_libs/tanstack__react-db.mjs +242 -0
  28. package/.output/server/_libs/tanstack__react-query.mjs +140 -0
  29. package/.output/server/_libs/ufo.mjs +64 -0
  30. package/.output/server/_runtime.mjs +35 -0
  31. package/.output/server/_ssr/empty-plugin-adapters-D9UWiqvJ.mjs +5 -0
  32. package/.output/server/_ssr/events-BNrmOvgU.mjs +13 -0
  33. package/.output/server/_ssr/notifications-DUoENv6E.mjs +514 -0
  34. package/.output/server/_ssr/router-DsUHD4bT.mjs +179 -0
  35. package/.output/server/_ssr/routes-DIFfr242.mjs +982 -0
  36. package/.output/server/_ssr/ssr.mjs +1854 -0
  37. package/.output/server/_ssr/start-5Z2QO8AU.mjs +4 -0
  38. package/.output/server/_tanstack-start-manifest_v-CrD0YpZr.mjs +20 -0
  39. package/.output/server/index.mjs +310 -0
  40. package/.output/server/node_modules/tslib/modules/index.js +70 -0
  41. package/.output/server/node_modules/tslib/modules/package.json +3 -0
  42. package/.output/server/node_modules/tslib/package.json +47 -0
  43. package/.output/server/node_modules/tslib/tslib.js +484 -0
  44. package/.output/server/package.json +9 -0
  45. package/LICENSE +21 -0
  46. package/README.md +325 -0
  47. package/bin/gitxp.js +85 -0
  48. package/package.json +92 -0
@@ -0,0 +1,3380 @@
1
+ //#region node_modules/tailwind-merge/dist/bundle-mjs.mjs
2
+ /**
3
+ * Concatenates two arrays faster than the array spread operator.
4
+ */
5
+ var concatArrays = (array1, array2) => {
6
+ const combinedArray = new Array(array1.length + array2.length);
7
+ for (let i = 0; i < array1.length; i++) combinedArray[i] = array1[i];
8
+ for (let i = 0; i < array2.length; i++) combinedArray[array1.length + i] = array2[i];
9
+ return combinedArray;
10
+ };
11
+ var createClassValidatorObject = (classGroupId, validator) => ({
12
+ classGroupId,
13
+ validator
14
+ });
15
+ var createClassPartObject = (nextPart = /* @__PURE__ */ new Map(), validators = null, classGroupId) => ({
16
+ nextPart,
17
+ validators,
18
+ classGroupId
19
+ });
20
+ var CLASS_PART_SEPARATOR = "-";
21
+ var EMPTY_CONFLICTS = [];
22
+ var ARBITRARY_PROPERTY_PREFIX = "arbitrary..";
23
+ var createClassGroupUtils = (config) => {
24
+ const classMap = createClassMap(config);
25
+ const { conflictingClassGroups, conflictingClassGroupModifiers } = config;
26
+ const getClassGroupId = (className) => {
27
+ if (className.startsWith("[") && className.endsWith("]")) return getGroupIdForArbitraryProperty(className);
28
+ const classParts = className.split(CLASS_PART_SEPARATOR);
29
+ return getGroupRecursive(classParts, classParts[0] === "" && classParts.length > 1 ? 1 : 0, classMap);
30
+ };
31
+ const getConflictingClassGroupIds = (classGroupId, hasPostfixModifier) => {
32
+ if (hasPostfixModifier) {
33
+ const modifierConflicts = conflictingClassGroupModifiers[classGroupId];
34
+ const baseConflicts = conflictingClassGroups[classGroupId];
35
+ if (modifierConflicts) {
36
+ if (baseConflicts) return concatArrays(baseConflicts, modifierConflicts);
37
+ return modifierConflicts;
38
+ }
39
+ return baseConflicts || EMPTY_CONFLICTS;
40
+ }
41
+ return conflictingClassGroups[classGroupId] || EMPTY_CONFLICTS;
42
+ };
43
+ return {
44
+ getClassGroupId,
45
+ getConflictingClassGroupIds
46
+ };
47
+ };
48
+ var getGroupRecursive = (classParts, startIndex, classPartObject) => {
49
+ if (classParts.length - startIndex === 0) return classPartObject.classGroupId;
50
+ const currentClassPart = classParts[startIndex];
51
+ const nextClassPartObject = classPartObject.nextPart.get(currentClassPart);
52
+ if (nextClassPartObject) {
53
+ const result = getGroupRecursive(classParts, startIndex + 1, nextClassPartObject);
54
+ if (result) return result;
55
+ }
56
+ const validators = classPartObject.validators;
57
+ if (validators === null) return;
58
+ const classRest = startIndex === 0 ? classParts.join(CLASS_PART_SEPARATOR) : classParts.slice(startIndex).join(CLASS_PART_SEPARATOR);
59
+ const validatorsLength = validators.length;
60
+ for (let i = 0; i < validatorsLength; i++) {
61
+ const validatorObj = validators[i];
62
+ if (validatorObj.validator(classRest)) return validatorObj.classGroupId;
63
+ }
64
+ };
65
+ /**
66
+ * Get the class group ID for an arbitrary property.
67
+ *
68
+ * @param className - The class name to get the group ID for. Is expected to be string starting with `[` and ending with `]`.
69
+ */
70
+ var getGroupIdForArbitraryProperty = (className) => className.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
71
+ const content = className.slice(1, -1);
72
+ const colonIndex = content.indexOf(":");
73
+ const property = content.slice(0, colonIndex);
74
+ return property ? ARBITRARY_PROPERTY_PREFIX + property : void 0;
75
+ })();
76
+ /**
77
+ * Exported for testing only
78
+ */
79
+ var createClassMap = (config) => {
80
+ const { theme, classGroups } = config;
81
+ return processClassGroups(classGroups, theme);
82
+ };
83
+ var processClassGroups = (classGroups, theme) => {
84
+ const classMap = createClassPartObject();
85
+ for (const classGroupId in classGroups) {
86
+ const group = classGroups[classGroupId];
87
+ processClassesRecursively(group, classMap, classGroupId, theme);
88
+ }
89
+ return classMap;
90
+ };
91
+ var processClassesRecursively = (classGroup, classPartObject, classGroupId, theme) => {
92
+ const len = classGroup.length;
93
+ for (let i = 0; i < len; i++) {
94
+ const classDefinition = classGroup[i];
95
+ processClassDefinition(classDefinition, classPartObject, classGroupId, theme);
96
+ }
97
+ };
98
+ var processClassDefinition = (classDefinition, classPartObject, classGroupId, theme) => {
99
+ if (typeof classDefinition === "string") {
100
+ processStringDefinition(classDefinition, classPartObject, classGroupId);
101
+ return;
102
+ }
103
+ if (typeof classDefinition === "function") {
104
+ processFunctionDefinition(classDefinition, classPartObject, classGroupId, theme);
105
+ return;
106
+ }
107
+ processObjectDefinition(classDefinition, classPartObject, classGroupId, theme);
108
+ };
109
+ var processStringDefinition = (classDefinition, classPartObject, classGroupId) => {
110
+ const classPartObjectToEdit = classDefinition === "" ? classPartObject : getPart(classPartObject, classDefinition);
111
+ classPartObjectToEdit.classGroupId = classGroupId;
112
+ };
113
+ var processFunctionDefinition = (classDefinition, classPartObject, classGroupId, theme) => {
114
+ if (isThemeGetter(classDefinition)) {
115
+ processClassesRecursively(classDefinition(theme), classPartObject, classGroupId, theme);
116
+ return;
117
+ }
118
+ if (classPartObject.validators === null) classPartObject.validators = [];
119
+ classPartObject.validators.push(createClassValidatorObject(classGroupId, classDefinition));
120
+ };
121
+ var processObjectDefinition = (classDefinition, classPartObject, classGroupId, theme) => {
122
+ const entries = Object.entries(classDefinition);
123
+ const len = entries.length;
124
+ for (let i = 0; i < len; i++) {
125
+ const [key, value] = entries[i];
126
+ processClassesRecursively(value, getPart(classPartObject, key), classGroupId, theme);
127
+ }
128
+ };
129
+ var getPart = (classPartObject, path) => {
130
+ let current = classPartObject;
131
+ const parts = path.split(CLASS_PART_SEPARATOR);
132
+ const len = parts.length;
133
+ for (let i = 0; i < len; i++) {
134
+ const part = parts[i];
135
+ let next = current.nextPart.get(part);
136
+ if (!next) {
137
+ next = createClassPartObject();
138
+ current.nextPart.set(part, next);
139
+ }
140
+ current = next;
141
+ }
142
+ return current;
143
+ };
144
+ var isThemeGetter = (func) => "isThemeGetter" in func && func.isThemeGetter === true;
145
+ var createLruCache = (maxCacheSize) => {
146
+ if (maxCacheSize < 1) return {
147
+ get: () => void 0,
148
+ set: () => {}
149
+ };
150
+ let cacheSize = 0;
151
+ let cache = Object.create(null);
152
+ let previousCache = Object.create(null);
153
+ const update = (key, value) => {
154
+ cache[key] = value;
155
+ cacheSize++;
156
+ if (cacheSize > maxCacheSize) {
157
+ cacheSize = 0;
158
+ previousCache = cache;
159
+ cache = Object.create(null);
160
+ }
161
+ };
162
+ return {
163
+ get(key) {
164
+ let value = cache[key];
165
+ if (value !== void 0) return value;
166
+ if ((value = previousCache[key]) !== void 0) {
167
+ update(key, value);
168
+ return value;
169
+ }
170
+ },
171
+ set(key, value) {
172
+ if (key in cache) cache[key] = value;
173
+ else update(key, value);
174
+ }
175
+ };
176
+ };
177
+ var IMPORTANT_MODIFIER = "!";
178
+ var MODIFIER_SEPARATOR = ":";
179
+ var EMPTY_MODIFIERS = [];
180
+ var createResultObject = (modifiers, hasImportantModifier, baseClassName, maybePostfixModifierPosition, isExternal) => ({
181
+ modifiers,
182
+ hasImportantModifier,
183
+ baseClassName,
184
+ maybePostfixModifierPosition,
185
+ isExternal
186
+ });
187
+ var createParseClassName = (config) => {
188
+ const { prefix, experimentalParseClassName } = config;
189
+ /**
190
+ * Parse class name into parts.
191
+ *
192
+ * Inspired by `splitAtTopLevelOnly` used in Tailwind CSS
193
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v3.2.2/src/util/splitAtTopLevelOnly.js
194
+ */
195
+ let parseClassName = (className) => {
196
+ const modifiers = [];
197
+ let bracketDepth = 0;
198
+ let parenDepth = 0;
199
+ let modifierStart = 0;
200
+ let postfixModifierPosition;
201
+ const len = className.length;
202
+ for (let index = 0; index < len; index++) {
203
+ const currentCharacter = className[index];
204
+ if (bracketDepth === 0 && parenDepth === 0) {
205
+ if (currentCharacter === MODIFIER_SEPARATOR) {
206
+ modifiers.push(className.slice(modifierStart, index));
207
+ modifierStart = index + 1;
208
+ continue;
209
+ }
210
+ if (currentCharacter === "/") {
211
+ postfixModifierPosition = index;
212
+ continue;
213
+ }
214
+ }
215
+ if (currentCharacter === "[") bracketDepth++;
216
+ else if (currentCharacter === "]") bracketDepth--;
217
+ else if (currentCharacter === "(") parenDepth++;
218
+ else if (currentCharacter === ")") parenDepth--;
219
+ }
220
+ const baseClassNameWithImportantModifier = modifiers.length === 0 ? className : className.slice(modifierStart);
221
+ let baseClassName = baseClassNameWithImportantModifier;
222
+ let hasImportantModifier = false;
223
+ if (baseClassNameWithImportantModifier.endsWith(IMPORTANT_MODIFIER)) {
224
+ baseClassName = baseClassNameWithImportantModifier.slice(0, -1);
225
+ hasImportantModifier = true;
226
+ } else if (baseClassNameWithImportantModifier.startsWith(IMPORTANT_MODIFIER)) {
227
+ baseClassName = baseClassNameWithImportantModifier.slice(1);
228
+ hasImportantModifier = true;
229
+ }
230
+ const maybePostfixModifierPosition = postfixModifierPosition && postfixModifierPosition > modifierStart ? postfixModifierPosition - modifierStart : void 0;
231
+ return createResultObject(modifiers, hasImportantModifier, baseClassName, maybePostfixModifierPosition);
232
+ };
233
+ if (prefix) {
234
+ const fullPrefix = prefix + MODIFIER_SEPARATOR;
235
+ const parseClassNameOriginal = parseClassName;
236
+ parseClassName = (className) => className.startsWith(fullPrefix) ? parseClassNameOriginal(className.slice(fullPrefix.length)) : createResultObject(EMPTY_MODIFIERS, false, className, void 0, true);
237
+ }
238
+ if (experimentalParseClassName) {
239
+ const parseClassNameOriginal = parseClassName;
240
+ parseClassName = (className) => experimentalParseClassName({
241
+ className,
242
+ parseClassName: parseClassNameOriginal
243
+ });
244
+ }
245
+ return parseClassName;
246
+ };
247
+ /**
248
+ * Sorts modifiers according to following schema:
249
+ * - Predefined modifiers are sorted alphabetically
250
+ * - When an arbitrary variant appears, it must be preserved which modifiers are before and after it
251
+ */
252
+ var createSortModifiers = (config) => {
253
+ const modifierWeights = /* @__PURE__ */ new Map();
254
+ config.orderSensitiveModifiers.forEach((mod, index) => {
255
+ modifierWeights.set(mod, 1e6 + index);
256
+ });
257
+ return (modifiers) => {
258
+ const result = [];
259
+ let currentSegment = [];
260
+ for (let i = 0; i < modifiers.length; i++) {
261
+ const modifier = modifiers[i];
262
+ const isArbitrary = modifier[0] === "[";
263
+ const isOrderSensitive = modifierWeights.has(modifier);
264
+ if (isArbitrary || isOrderSensitive) {
265
+ if (currentSegment.length > 0) {
266
+ currentSegment.sort();
267
+ result.push(...currentSegment);
268
+ currentSegment = [];
269
+ }
270
+ result.push(modifier);
271
+ } else currentSegment.push(modifier);
272
+ }
273
+ if (currentSegment.length > 0) {
274
+ currentSegment.sort();
275
+ result.push(...currentSegment);
276
+ }
277
+ return result;
278
+ };
279
+ };
280
+ var createConfigUtils = (config) => ({
281
+ cache: createLruCache(config.cacheSize),
282
+ parseClassName: createParseClassName(config),
283
+ sortModifiers: createSortModifiers(config),
284
+ postfixLookupClassGroupIds: createPostfixLookupClassGroupIds(config),
285
+ ...createClassGroupUtils(config)
286
+ });
287
+ var createPostfixLookupClassGroupIds = (config) => {
288
+ const lookup = Object.create(null);
289
+ const classGroupIds = config.postfixLookupClassGroups;
290
+ if (classGroupIds) for (let i = 0; i < classGroupIds.length; i++) lookup[classGroupIds[i]] = true;
291
+ return lookup;
292
+ };
293
+ var SPLIT_CLASSES_REGEX = /\s+/;
294
+ var mergeClassList = (classList, configUtils) => {
295
+ const { parseClassName, getClassGroupId, getConflictingClassGroupIds, sortModifiers, postfixLookupClassGroupIds } = configUtils;
296
+ /**
297
+ * Set of classGroupIds in following format:
298
+ * `{importantModifier}{variantModifiers}{classGroupId}`
299
+ * @example 'float'
300
+ * @example 'hover:focus:bg-color'
301
+ * @example 'md:!pr'
302
+ */
303
+ const classGroupsInConflict = [];
304
+ const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
305
+ let result = "";
306
+ for (let index = classNames.length - 1; index >= 0; index -= 1) {
307
+ const originalClassName = classNames[index];
308
+ const { isExternal, modifiers, hasImportantModifier, baseClassName, maybePostfixModifierPosition } = parseClassName(originalClassName);
309
+ if (isExternal) {
310
+ result = originalClassName + (result.length > 0 ? " " + result : result);
311
+ continue;
312
+ }
313
+ let hasPostfixModifier = !!maybePostfixModifierPosition;
314
+ let classGroupId;
315
+ if (hasPostfixModifier) {
316
+ classGroupId = getClassGroupId(baseClassName.substring(0, maybePostfixModifierPosition));
317
+ const classGroupIdWithPostfix = classGroupId && postfixLookupClassGroupIds[classGroupId] ? getClassGroupId(baseClassName) : void 0;
318
+ if (classGroupIdWithPostfix && classGroupIdWithPostfix !== classGroupId) {
319
+ classGroupId = classGroupIdWithPostfix;
320
+ hasPostfixModifier = false;
321
+ }
322
+ } else classGroupId = getClassGroupId(baseClassName);
323
+ if (!classGroupId) {
324
+ if (!hasPostfixModifier) {
325
+ result = originalClassName + (result.length > 0 ? " " + result : result);
326
+ continue;
327
+ }
328
+ classGroupId = getClassGroupId(baseClassName);
329
+ if (!classGroupId) {
330
+ result = originalClassName + (result.length > 0 ? " " + result : result);
331
+ continue;
332
+ }
333
+ hasPostfixModifier = false;
334
+ }
335
+ const variantModifier = modifiers.length === 0 ? "" : modifiers.length === 1 ? modifiers[0] : sortModifiers(modifiers).join(":");
336
+ const modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;
337
+ const classId = modifierId + classGroupId;
338
+ if (classGroupsInConflict.indexOf(classId) > -1) continue;
339
+ classGroupsInConflict.push(classId);
340
+ const conflictGroups = getConflictingClassGroupIds(classGroupId, hasPostfixModifier);
341
+ for (let i = 0; i < conflictGroups.length; ++i) {
342
+ const group = conflictGroups[i];
343
+ classGroupsInConflict.push(modifierId + group);
344
+ }
345
+ result = originalClassName + (result.length > 0 ? " " + result : result);
346
+ }
347
+ return result;
348
+ };
349
+ /**
350
+ * The code in this file is copied from https://github.com/lukeed/clsx and modified to suit the needs of tailwind-merge better.
351
+ *
352
+ * Specifically:
353
+ * - Runtime code from https://github.com/lukeed/clsx/blob/v1.2.1/src/index.js
354
+ * - TypeScript types from https://github.com/lukeed/clsx/blob/v1.2.1/clsx.d.ts
355
+ *
356
+ * Original code has MIT license: Copyright (c) Luke Edwards <luke.edwards05@gmail.com> (lukeed.com)
357
+ */
358
+ var twJoin = (...classLists) => {
359
+ let index = 0;
360
+ let argument;
361
+ let resolvedValue;
362
+ let string = "";
363
+ while (index < classLists.length) if (argument = classLists[index++]) {
364
+ if (resolvedValue = toValue(argument)) {
365
+ string && (string += " ");
366
+ string += resolvedValue;
367
+ }
368
+ }
369
+ return string;
370
+ };
371
+ var toValue = (mix) => {
372
+ if (typeof mix === "string") return mix;
373
+ let resolvedValue;
374
+ let string = "";
375
+ for (let k = 0; k < mix.length; k++) if (mix[k]) {
376
+ if (resolvedValue = toValue(mix[k])) {
377
+ string && (string += " ");
378
+ string += resolvedValue;
379
+ }
380
+ }
381
+ return string;
382
+ };
383
+ var createTailwindMerge = (createConfigFirst, ...createConfigRest) => {
384
+ let configUtils;
385
+ let cacheGet;
386
+ let cacheSet;
387
+ let functionToCall;
388
+ const initTailwindMerge = (classList) => {
389
+ configUtils = createConfigUtils(createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst()));
390
+ cacheGet = configUtils.cache.get;
391
+ cacheSet = configUtils.cache.set;
392
+ functionToCall = tailwindMerge;
393
+ return tailwindMerge(classList);
394
+ };
395
+ const tailwindMerge = (classList) => {
396
+ const cachedResult = cacheGet(classList);
397
+ if (cachedResult) return cachedResult;
398
+ const result = mergeClassList(classList, configUtils);
399
+ cacheSet(classList, result);
400
+ return result;
401
+ };
402
+ functionToCall = initTailwindMerge;
403
+ return (...args) => functionToCall(twJoin(...args));
404
+ };
405
+ var fallbackThemeArr = [];
406
+ var fromTheme = (key) => {
407
+ const themeGetter = (theme) => theme[key] || fallbackThemeArr;
408
+ themeGetter.isThemeGetter = true;
409
+ return themeGetter;
410
+ };
411
+ var arbitraryValueRegex = /^\[(?:(\w[\w-]*):)?(.+)\]$/i;
412
+ var arbitraryVariableRegex = /^\((?:(\w[\w-]*):)?(.+)\)$/i;
413
+ var fractionRegex = /^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/;
414
+ var tshirtUnitRegex = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/;
415
+ var lengthUnitRegex = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/;
416
+ var colorFunctionRegex = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/;
417
+ var shadowRegex = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
418
+ var imageRegex = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/;
419
+ var isFraction = (value) => fractionRegex.test(value);
420
+ var isNumber = (value) => !!value && !Number.isNaN(Number(value));
421
+ var isInteger = (value) => !!value && Number.isInteger(Number(value));
422
+ var isPercent = (value) => value.endsWith("%") && isNumber(value.slice(0, -1));
423
+ var isTshirtSize = (value) => tshirtUnitRegex.test(value);
424
+ var isAny = () => true;
425
+ var isLengthOnly = (value) => lengthUnitRegex.test(value) && !colorFunctionRegex.test(value);
426
+ var isNever = () => false;
427
+ var isShadow = (value) => shadowRegex.test(value);
428
+ var isImage = (value) => imageRegex.test(value);
429
+ var isAnyNonArbitrary = (value) => !isArbitraryValue(value) && !isArbitraryVariable(value);
430
+ var isNamedContainerQuery = (value) => value.startsWith("@container") && (value[10] === "/" && value[11] !== void 0 || value[11] === "s" && value[16] !== void 0 && value.startsWith("-size/", 10) || value[11] === "n" && value[18] !== void 0 && value.startsWith("-normal/", 10));
431
+ var isArbitrarySize = (value) => getIsArbitraryValue(value, isLabelSize, isNever);
432
+ var isArbitraryValue = (value) => arbitraryValueRegex.test(value);
433
+ var isArbitraryLength = (value) => getIsArbitraryValue(value, isLabelLength, isLengthOnly);
434
+ var isArbitraryNumber = (value) => getIsArbitraryValue(value, isLabelNumber, isNumber);
435
+ var isArbitraryWeight = (value) => getIsArbitraryValue(value, isLabelWeight, isAny);
436
+ var isArbitraryFamilyName = (value) => getIsArbitraryValue(value, isLabelFamilyName, isNever);
437
+ var isArbitraryPosition = (value) => getIsArbitraryValue(value, isLabelPosition, isNever);
438
+ var isArbitraryImage = (value) => getIsArbitraryValue(value, isLabelImage, isImage);
439
+ var isArbitraryShadow = (value) => getIsArbitraryValue(value, isLabelShadow, isShadow);
440
+ var isArbitraryVariable = (value) => arbitraryVariableRegex.test(value);
441
+ var isArbitraryVariableLength = (value) => getIsArbitraryVariable(value, isLabelLength);
442
+ var isArbitraryVariableFamilyName = (value) => getIsArbitraryVariable(value, isLabelFamilyName);
443
+ var isArbitraryVariablePosition = (value) => getIsArbitraryVariable(value, isLabelPosition);
444
+ var isArbitraryVariableSize = (value) => getIsArbitraryVariable(value, isLabelSize);
445
+ var isArbitraryVariableImage = (value) => getIsArbitraryVariable(value, isLabelImage);
446
+ var isArbitraryVariableShadow = (value) => getIsArbitraryVariable(value, isLabelShadow, true);
447
+ var isArbitraryVariableWeight = (value) => getIsArbitraryVariable(value, isLabelWeight, true);
448
+ var getIsArbitraryValue = (value, testLabel, testValue) => {
449
+ const result = arbitraryValueRegex.exec(value);
450
+ if (result) {
451
+ if (result[1]) return testLabel(result[1]);
452
+ return testValue(result[2]);
453
+ }
454
+ return false;
455
+ };
456
+ var getIsArbitraryVariable = (value, testLabel, shouldMatchNoLabel = false) => {
457
+ const result = arbitraryVariableRegex.exec(value);
458
+ if (result) {
459
+ if (result[1]) return testLabel(result[1]);
460
+ return shouldMatchNoLabel;
461
+ }
462
+ return false;
463
+ };
464
+ var isLabelPosition = (label) => label === "position" || label === "percentage";
465
+ var isLabelImage = (label) => label === "image" || label === "url";
466
+ var isLabelSize = (label) => label === "length" || label === "size" || label === "bg-size";
467
+ var isLabelLength = (label) => label === "length";
468
+ var isLabelNumber = (label) => label === "number";
469
+ var isLabelFamilyName = (label) => label === "family-name";
470
+ var isLabelWeight = (label) => label === "number" || label === "weight";
471
+ var isLabelShadow = (label) => label === "shadow";
472
+ var getDefaultConfig = () => {
473
+ /**
474
+ * Theme getters for theme variable namespaces
475
+ * @see https://tailwindcss.com/docs/theme#theme-variable-namespaces
476
+ */
477
+ const themeColor = fromTheme("color");
478
+ const themeFont = fromTheme("font");
479
+ const themeText = fromTheme("text");
480
+ const themeFontWeight = fromTheme("font-weight");
481
+ const themeTracking = fromTheme("tracking");
482
+ const themeLeading = fromTheme("leading");
483
+ const themeBreakpoint = fromTheme("breakpoint");
484
+ const themeContainer = fromTheme("container");
485
+ const themeSpacing = fromTheme("spacing");
486
+ const themeRadius = fromTheme("radius");
487
+ const themeShadow = fromTheme("shadow");
488
+ const themeInsetShadow = fromTheme("inset-shadow");
489
+ const themeTextShadow = fromTheme("text-shadow");
490
+ const themeDropShadow = fromTheme("drop-shadow");
491
+ const themeBlur = fromTheme("blur");
492
+ const themePerspective = fromTheme("perspective");
493
+ const themeAspect = fromTheme("aspect");
494
+ const themeEase = fromTheme("ease");
495
+ const themeAnimate = fromTheme("animate");
496
+ /**
497
+ * Helpers to avoid repeating the same scales
498
+ *
499
+ * We use functions that create a new array every time they're called instead of static arrays.
500
+ * This ensures that users who modify any scale by mutating the array (e.g. with `array.push(element)`) don't accidentally mutate arrays in other parts of the config.
501
+ */
502
+ const scaleBreak = () => [
503
+ "auto",
504
+ "avoid",
505
+ "all",
506
+ "avoid-page",
507
+ "page",
508
+ "left",
509
+ "right",
510
+ "column"
511
+ ];
512
+ const scalePosition = () => [
513
+ "center",
514
+ "top",
515
+ "bottom",
516
+ "left",
517
+ "right",
518
+ "top-left",
519
+ "left-top",
520
+ "top-right",
521
+ "right-top",
522
+ "bottom-right",
523
+ "right-bottom",
524
+ "bottom-left",
525
+ "left-bottom"
526
+ ];
527
+ const scalePositionWithArbitrary = () => [
528
+ ...scalePosition(),
529
+ isArbitraryVariable,
530
+ isArbitraryValue
531
+ ];
532
+ const scaleOverflow = () => [
533
+ "auto",
534
+ "hidden",
535
+ "clip",
536
+ "visible",
537
+ "scroll"
538
+ ];
539
+ const scaleOverscroll = () => [
540
+ "auto",
541
+ "contain",
542
+ "none"
543
+ ];
544
+ const scaleUnambiguousSpacing = () => [
545
+ isArbitraryVariable,
546
+ isArbitraryValue,
547
+ themeSpacing
548
+ ];
549
+ const scaleInset = () => [
550
+ isFraction,
551
+ "full",
552
+ "auto",
553
+ ...scaleUnambiguousSpacing()
554
+ ];
555
+ const scaleGridTemplateColsRows = () => [
556
+ isInteger,
557
+ "none",
558
+ "subgrid",
559
+ isArbitraryVariable,
560
+ isArbitraryValue
561
+ ];
562
+ const scaleGridColRowStartAndEnd = () => [
563
+ "auto",
564
+ { span: [
565
+ "full",
566
+ isInteger,
567
+ isArbitraryVariable,
568
+ isArbitraryValue
569
+ ] },
570
+ isInteger,
571
+ isArbitraryVariable,
572
+ isArbitraryValue
573
+ ];
574
+ const scaleGridColRowStartOrEnd = () => [
575
+ isInteger,
576
+ "auto",
577
+ isArbitraryVariable,
578
+ isArbitraryValue
579
+ ];
580
+ const scaleGridAutoColsRows = () => [
581
+ "auto",
582
+ "min",
583
+ "max",
584
+ "fr",
585
+ isArbitraryVariable,
586
+ isArbitraryValue
587
+ ];
588
+ const scaleAlignPrimaryAxis = () => [
589
+ "start",
590
+ "end",
591
+ "center",
592
+ "between",
593
+ "around",
594
+ "evenly",
595
+ "stretch",
596
+ "baseline",
597
+ "center-safe",
598
+ "end-safe"
599
+ ];
600
+ const scaleAlignSecondaryAxis = () => [
601
+ "start",
602
+ "end",
603
+ "center",
604
+ "stretch",
605
+ "center-safe",
606
+ "end-safe"
607
+ ];
608
+ const scaleMargin = () => ["auto", ...scaleUnambiguousSpacing()];
609
+ const scaleSizing = () => [
610
+ isFraction,
611
+ "auto",
612
+ "full",
613
+ "dvw",
614
+ "dvh",
615
+ "lvw",
616
+ "lvh",
617
+ "svw",
618
+ "svh",
619
+ "min",
620
+ "max",
621
+ "fit",
622
+ ...scaleUnambiguousSpacing()
623
+ ];
624
+ const scaleSizingInline = () => [
625
+ isFraction,
626
+ "screen",
627
+ "full",
628
+ "dvw",
629
+ "lvw",
630
+ "svw",
631
+ "min",
632
+ "max",
633
+ "fit",
634
+ ...scaleUnambiguousSpacing()
635
+ ];
636
+ const scaleSizingBlock = () => [
637
+ isFraction,
638
+ "screen",
639
+ "full",
640
+ "lh",
641
+ "dvh",
642
+ "lvh",
643
+ "svh",
644
+ "min",
645
+ "max",
646
+ "fit",
647
+ ...scaleUnambiguousSpacing()
648
+ ];
649
+ const scaleColor = () => [
650
+ themeColor,
651
+ isArbitraryVariable,
652
+ isArbitraryValue
653
+ ];
654
+ const scaleBgPosition = () => [
655
+ ...scalePosition(),
656
+ isArbitraryVariablePosition,
657
+ isArbitraryPosition,
658
+ { position: [isArbitraryVariable, isArbitraryValue] }
659
+ ];
660
+ const scaleBgRepeat = () => ["no-repeat", { repeat: [
661
+ "",
662
+ "x",
663
+ "y",
664
+ "space",
665
+ "round"
666
+ ] }];
667
+ const scaleBgSize = () => [
668
+ "auto",
669
+ "cover",
670
+ "contain",
671
+ isArbitraryVariableSize,
672
+ isArbitrarySize,
673
+ { size: [isArbitraryVariable, isArbitraryValue] }
674
+ ];
675
+ const scaleGradientStopPosition = () => [
676
+ isPercent,
677
+ isArbitraryVariableLength,
678
+ isArbitraryLength
679
+ ];
680
+ const scaleRadius = () => [
681
+ "",
682
+ "none",
683
+ "full",
684
+ themeRadius,
685
+ isArbitraryVariable,
686
+ isArbitraryValue
687
+ ];
688
+ const scaleBorderWidth = () => [
689
+ "",
690
+ isNumber,
691
+ isArbitraryVariableLength,
692
+ isArbitraryLength
693
+ ];
694
+ const scaleLineStyle = () => [
695
+ "solid",
696
+ "dashed",
697
+ "dotted",
698
+ "double"
699
+ ];
700
+ const scaleBlendMode = () => [
701
+ "normal",
702
+ "multiply",
703
+ "screen",
704
+ "overlay",
705
+ "darken",
706
+ "lighten",
707
+ "color-dodge",
708
+ "color-burn",
709
+ "hard-light",
710
+ "soft-light",
711
+ "difference",
712
+ "exclusion",
713
+ "hue",
714
+ "saturation",
715
+ "color",
716
+ "luminosity"
717
+ ];
718
+ const scaleMaskImagePosition = () => [
719
+ isNumber,
720
+ isPercent,
721
+ isArbitraryVariablePosition,
722
+ isArbitraryPosition
723
+ ];
724
+ const scaleBlur = () => [
725
+ "",
726
+ "none",
727
+ themeBlur,
728
+ isArbitraryVariable,
729
+ isArbitraryValue
730
+ ];
731
+ const scaleRotate = () => [
732
+ "none",
733
+ isNumber,
734
+ isArbitraryVariable,
735
+ isArbitraryValue
736
+ ];
737
+ const scaleScale = () => [
738
+ "none",
739
+ isNumber,
740
+ isArbitraryVariable,
741
+ isArbitraryValue
742
+ ];
743
+ const scaleSkew = () => [
744
+ isNumber,
745
+ isArbitraryVariable,
746
+ isArbitraryValue
747
+ ];
748
+ const scaleTranslate = () => [
749
+ isFraction,
750
+ "full",
751
+ ...scaleUnambiguousSpacing()
752
+ ];
753
+ return {
754
+ cacheSize: 500,
755
+ theme: {
756
+ animate: [
757
+ "spin",
758
+ "ping",
759
+ "pulse",
760
+ "bounce"
761
+ ],
762
+ aspect: ["video"],
763
+ blur: [isTshirtSize],
764
+ breakpoint: [isTshirtSize],
765
+ color: [isAny],
766
+ container: [isTshirtSize],
767
+ "drop-shadow": [isTshirtSize],
768
+ ease: [
769
+ "in",
770
+ "out",
771
+ "in-out"
772
+ ],
773
+ font: [isAnyNonArbitrary],
774
+ "font-weight": [
775
+ "thin",
776
+ "extralight",
777
+ "light",
778
+ "normal",
779
+ "medium",
780
+ "semibold",
781
+ "bold",
782
+ "extrabold",
783
+ "black"
784
+ ],
785
+ "inset-shadow": [isTshirtSize],
786
+ leading: [
787
+ "none",
788
+ "tight",
789
+ "snug",
790
+ "normal",
791
+ "relaxed",
792
+ "loose"
793
+ ],
794
+ perspective: [
795
+ "dramatic",
796
+ "near",
797
+ "normal",
798
+ "midrange",
799
+ "distant",
800
+ "none"
801
+ ],
802
+ radius: [isTshirtSize],
803
+ shadow: [isTshirtSize],
804
+ spacing: ["px", isNumber],
805
+ text: [isTshirtSize],
806
+ "text-shadow": [isTshirtSize],
807
+ tracking: [
808
+ "tighter",
809
+ "tight",
810
+ "normal",
811
+ "wide",
812
+ "wider",
813
+ "widest"
814
+ ]
815
+ },
816
+ classGroups: {
817
+ /**
818
+ * Aspect Ratio
819
+ * @see https://tailwindcss.com/docs/aspect-ratio
820
+ */
821
+ aspect: [{ aspect: [
822
+ "auto",
823
+ "square",
824
+ isFraction,
825
+ isArbitraryValue,
826
+ isArbitraryVariable,
827
+ themeAspect
828
+ ] }],
829
+ /**
830
+ * Container
831
+ * @see https://tailwindcss.com/docs/container
832
+ * @deprecated since Tailwind CSS v4.0.0
833
+ */
834
+ container: ["container"],
835
+ /**
836
+ * Container Type
837
+ * @see https://tailwindcss.com/docs/responsive-design#container-queries
838
+ */
839
+ "container-type": [{ "@container": [
840
+ "",
841
+ "normal",
842
+ "size",
843
+ isArbitraryVariable,
844
+ isArbitraryValue
845
+ ] }],
846
+ /**
847
+ * Container Name
848
+ * @see https://tailwindcss.com/docs/responsive-design#named-containers
849
+ */
850
+ "container-named": [isNamedContainerQuery],
851
+ /**
852
+ * Columns
853
+ * @see https://tailwindcss.com/docs/columns
854
+ */
855
+ columns: [{ columns: [
856
+ isNumber,
857
+ isArbitraryValue,
858
+ isArbitraryVariable,
859
+ themeContainer
860
+ ] }],
861
+ /**
862
+ * Break After
863
+ * @see https://tailwindcss.com/docs/break-after
864
+ */
865
+ "break-after": [{ "break-after": scaleBreak() }],
866
+ /**
867
+ * Break Before
868
+ * @see https://tailwindcss.com/docs/break-before
869
+ */
870
+ "break-before": [{ "break-before": scaleBreak() }],
871
+ /**
872
+ * Break Inside
873
+ * @see https://tailwindcss.com/docs/break-inside
874
+ */
875
+ "break-inside": [{ "break-inside": [
876
+ "auto",
877
+ "avoid",
878
+ "avoid-page",
879
+ "avoid-column"
880
+ ] }],
881
+ /**
882
+ * Box Decoration Break
883
+ * @see https://tailwindcss.com/docs/box-decoration-break
884
+ */
885
+ "box-decoration": [{ "box-decoration": ["slice", "clone"] }],
886
+ /**
887
+ * Box Sizing
888
+ * @see https://tailwindcss.com/docs/box-sizing
889
+ */
890
+ box: [{ box: ["border", "content"] }],
891
+ /**
892
+ * Display
893
+ * @see https://tailwindcss.com/docs/display
894
+ */
895
+ display: [
896
+ "block",
897
+ "inline-block",
898
+ "inline",
899
+ "flex",
900
+ "inline-flex",
901
+ "table",
902
+ "inline-table",
903
+ "table-caption",
904
+ "table-cell",
905
+ "table-column",
906
+ "table-column-group",
907
+ "table-footer-group",
908
+ "table-header-group",
909
+ "table-row-group",
910
+ "table-row",
911
+ "flow-root",
912
+ "grid",
913
+ "inline-grid",
914
+ "contents",
915
+ "list-item",
916
+ "hidden"
917
+ ],
918
+ /**
919
+ * Screen Reader Only
920
+ * @see https://tailwindcss.com/docs/display#screen-reader-only
921
+ */
922
+ sr: ["sr-only", "not-sr-only"],
923
+ /**
924
+ * Floats
925
+ * @see https://tailwindcss.com/docs/float
926
+ */
927
+ float: [{ float: [
928
+ "right",
929
+ "left",
930
+ "none",
931
+ "start",
932
+ "end"
933
+ ] }],
934
+ /**
935
+ * Clear
936
+ * @see https://tailwindcss.com/docs/clear
937
+ */
938
+ clear: [{ clear: [
939
+ "left",
940
+ "right",
941
+ "both",
942
+ "none",
943
+ "start",
944
+ "end"
945
+ ] }],
946
+ /**
947
+ * Isolation
948
+ * @see https://tailwindcss.com/docs/isolation
949
+ */
950
+ isolation: ["isolate", "isolation-auto"],
951
+ /**
952
+ * Object Fit
953
+ * @see https://tailwindcss.com/docs/object-fit
954
+ */
955
+ "object-fit": [{ object: [
956
+ "contain",
957
+ "cover",
958
+ "fill",
959
+ "none",
960
+ "scale-down"
961
+ ] }],
962
+ /**
963
+ * Object Position
964
+ * @see https://tailwindcss.com/docs/object-position
965
+ */
966
+ "object-position": [{ object: scalePositionWithArbitrary() }],
967
+ /**
968
+ * Overflow
969
+ * @see https://tailwindcss.com/docs/overflow
970
+ */
971
+ overflow: [{ overflow: scaleOverflow() }],
972
+ /**
973
+ * Overflow X
974
+ * @see https://tailwindcss.com/docs/overflow
975
+ */
976
+ "overflow-x": [{ "overflow-x": scaleOverflow() }],
977
+ /**
978
+ * Overflow Y
979
+ * @see https://tailwindcss.com/docs/overflow
980
+ */
981
+ "overflow-y": [{ "overflow-y": scaleOverflow() }],
982
+ /**
983
+ * Overscroll Behavior
984
+ * @see https://tailwindcss.com/docs/overscroll-behavior
985
+ */
986
+ overscroll: [{ overscroll: scaleOverscroll() }],
987
+ /**
988
+ * Overscroll Behavior X
989
+ * @see https://tailwindcss.com/docs/overscroll-behavior
990
+ */
991
+ "overscroll-x": [{ "overscroll-x": scaleOverscroll() }],
992
+ /**
993
+ * Overscroll Behavior Y
994
+ * @see https://tailwindcss.com/docs/overscroll-behavior
995
+ */
996
+ "overscroll-y": [{ "overscroll-y": scaleOverscroll() }],
997
+ /**
998
+ * Position
999
+ * @see https://tailwindcss.com/docs/position
1000
+ */
1001
+ position: [
1002
+ "static",
1003
+ "fixed",
1004
+ "absolute",
1005
+ "relative",
1006
+ "sticky"
1007
+ ],
1008
+ /**
1009
+ * Inset
1010
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1011
+ */
1012
+ inset: [{ inset: scaleInset() }],
1013
+ /**
1014
+ * Inset Inline
1015
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1016
+ */
1017
+ "inset-x": [{ "inset-x": scaleInset() }],
1018
+ /**
1019
+ * Inset Block
1020
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1021
+ */
1022
+ "inset-y": [{ "inset-y": scaleInset() }],
1023
+ /**
1024
+ * Inset Inline Start
1025
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1026
+ * @todo class group will be renamed to `inset-s` in next major release
1027
+ */
1028
+ start: [{
1029
+ "inset-s": scaleInset(),
1030
+ /**
1031
+ * @deprecated since Tailwind CSS v4.2.0 in favor of `inset-s-*` utilities.
1032
+ * @see https://github.com/tailwindlabs/tailwindcss/pull/19613
1033
+ */
1034
+ start: scaleInset()
1035
+ }],
1036
+ /**
1037
+ * Inset Inline End
1038
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1039
+ * @todo class group will be renamed to `inset-e` in next major release
1040
+ */
1041
+ end: [{
1042
+ "inset-e": scaleInset(),
1043
+ /**
1044
+ * @deprecated since Tailwind CSS v4.2.0 in favor of `inset-e-*` utilities.
1045
+ * @see https://github.com/tailwindlabs/tailwindcss/pull/19613
1046
+ */
1047
+ end: scaleInset()
1048
+ }],
1049
+ /**
1050
+ * Inset Block Start
1051
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1052
+ */
1053
+ "inset-bs": [{ "inset-bs": scaleInset() }],
1054
+ /**
1055
+ * Inset Block End
1056
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1057
+ */
1058
+ "inset-be": [{ "inset-be": scaleInset() }],
1059
+ /**
1060
+ * Top
1061
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1062
+ */
1063
+ top: [{ top: scaleInset() }],
1064
+ /**
1065
+ * Right
1066
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1067
+ */
1068
+ right: [{ right: scaleInset() }],
1069
+ /**
1070
+ * Bottom
1071
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1072
+ */
1073
+ bottom: [{ bottom: scaleInset() }],
1074
+ /**
1075
+ * Left
1076
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
1077
+ */
1078
+ left: [{ left: scaleInset() }],
1079
+ /**
1080
+ * Visibility
1081
+ * @see https://tailwindcss.com/docs/visibility
1082
+ */
1083
+ visibility: [
1084
+ "visible",
1085
+ "invisible",
1086
+ "collapse"
1087
+ ],
1088
+ /**
1089
+ * Z-Index
1090
+ * @see https://tailwindcss.com/docs/z-index
1091
+ */
1092
+ z: [{ z: [
1093
+ isInteger,
1094
+ "auto",
1095
+ isArbitraryVariable,
1096
+ isArbitraryValue
1097
+ ] }],
1098
+ /**
1099
+ * Flex Basis
1100
+ * @see https://tailwindcss.com/docs/flex-basis
1101
+ */
1102
+ basis: [{ basis: [
1103
+ isFraction,
1104
+ "full",
1105
+ "auto",
1106
+ themeContainer,
1107
+ ...scaleUnambiguousSpacing()
1108
+ ] }],
1109
+ /**
1110
+ * Flex Direction
1111
+ * @see https://tailwindcss.com/docs/flex-direction
1112
+ */
1113
+ "flex-direction": [{ flex: [
1114
+ "row",
1115
+ "row-reverse",
1116
+ "col",
1117
+ "col-reverse"
1118
+ ] }],
1119
+ /**
1120
+ * Flex Wrap
1121
+ * @see https://tailwindcss.com/docs/flex-wrap
1122
+ */
1123
+ "flex-wrap": [{ flex: [
1124
+ "nowrap",
1125
+ "wrap",
1126
+ "wrap-reverse"
1127
+ ] }],
1128
+ /**
1129
+ * Flex
1130
+ * @see https://tailwindcss.com/docs/flex
1131
+ */
1132
+ flex: [{ flex: [
1133
+ isNumber,
1134
+ isFraction,
1135
+ "auto",
1136
+ "initial",
1137
+ "none",
1138
+ isArbitraryValue
1139
+ ] }],
1140
+ /**
1141
+ * Flex Grow
1142
+ * @see https://tailwindcss.com/docs/flex-grow
1143
+ */
1144
+ grow: [{ grow: [
1145
+ "",
1146
+ isNumber,
1147
+ isArbitraryVariable,
1148
+ isArbitraryValue
1149
+ ] }],
1150
+ /**
1151
+ * Flex Shrink
1152
+ * @see https://tailwindcss.com/docs/flex-shrink
1153
+ */
1154
+ shrink: [{ shrink: [
1155
+ "",
1156
+ isNumber,
1157
+ isArbitraryVariable,
1158
+ isArbitraryValue
1159
+ ] }],
1160
+ /**
1161
+ * Order
1162
+ * @see https://tailwindcss.com/docs/order
1163
+ */
1164
+ order: [{ order: [
1165
+ isInteger,
1166
+ "first",
1167
+ "last",
1168
+ "none",
1169
+ isArbitraryVariable,
1170
+ isArbitraryValue
1171
+ ] }],
1172
+ /**
1173
+ * Grid Template Columns
1174
+ * @see https://tailwindcss.com/docs/grid-template-columns
1175
+ */
1176
+ "grid-cols": [{ "grid-cols": scaleGridTemplateColsRows() }],
1177
+ /**
1178
+ * Grid Column Start / End
1179
+ * @see https://tailwindcss.com/docs/grid-column
1180
+ */
1181
+ "col-start-end": [{ col: scaleGridColRowStartAndEnd() }],
1182
+ /**
1183
+ * Grid Column Start
1184
+ * @see https://tailwindcss.com/docs/grid-column
1185
+ */
1186
+ "col-start": [{ "col-start": scaleGridColRowStartOrEnd() }],
1187
+ /**
1188
+ * Grid Column End
1189
+ * @see https://tailwindcss.com/docs/grid-column
1190
+ */
1191
+ "col-end": [{ "col-end": scaleGridColRowStartOrEnd() }],
1192
+ /**
1193
+ * Grid Template Rows
1194
+ * @see https://tailwindcss.com/docs/grid-template-rows
1195
+ */
1196
+ "grid-rows": [{ "grid-rows": scaleGridTemplateColsRows() }],
1197
+ /**
1198
+ * Grid Row Start / End
1199
+ * @see https://tailwindcss.com/docs/grid-row
1200
+ */
1201
+ "row-start-end": [{ row: scaleGridColRowStartAndEnd() }],
1202
+ /**
1203
+ * Grid Row Start
1204
+ * @see https://tailwindcss.com/docs/grid-row
1205
+ */
1206
+ "row-start": [{ "row-start": scaleGridColRowStartOrEnd() }],
1207
+ /**
1208
+ * Grid Row End
1209
+ * @see https://tailwindcss.com/docs/grid-row
1210
+ */
1211
+ "row-end": [{ "row-end": scaleGridColRowStartOrEnd() }],
1212
+ /**
1213
+ * Grid Auto Flow
1214
+ * @see https://tailwindcss.com/docs/grid-auto-flow
1215
+ */
1216
+ "grid-flow": [{ "grid-flow": [
1217
+ "row",
1218
+ "col",
1219
+ "dense",
1220
+ "row-dense",
1221
+ "col-dense"
1222
+ ] }],
1223
+ /**
1224
+ * Grid Auto Columns
1225
+ * @see https://tailwindcss.com/docs/grid-auto-columns
1226
+ */
1227
+ "auto-cols": [{ "auto-cols": scaleGridAutoColsRows() }],
1228
+ /**
1229
+ * Grid Auto Rows
1230
+ * @see https://tailwindcss.com/docs/grid-auto-rows
1231
+ */
1232
+ "auto-rows": [{ "auto-rows": scaleGridAutoColsRows() }],
1233
+ /**
1234
+ * Gap
1235
+ * @see https://tailwindcss.com/docs/gap
1236
+ */
1237
+ gap: [{ gap: scaleUnambiguousSpacing() }],
1238
+ /**
1239
+ * Gap X
1240
+ * @see https://tailwindcss.com/docs/gap
1241
+ */
1242
+ "gap-x": [{ "gap-x": scaleUnambiguousSpacing() }],
1243
+ /**
1244
+ * Gap Y
1245
+ * @see https://tailwindcss.com/docs/gap
1246
+ */
1247
+ "gap-y": [{ "gap-y": scaleUnambiguousSpacing() }],
1248
+ /**
1249
+ * Justify Content
1250
+ * @see https://tailwindcss.com/docs/justify-content
1251
+ */
1252
+ "justify-content": [{ justify: [...scaleAlignPrimaryAxis(), "normal"] }],
1253
+ /**
1254
+ * Justify Items
1255
+ * @see https://tailwindcss.com/docs/justify-items
1256
+ */
1257
+ "justify-items": [{ "justify-items": [...scaleAlignSecondaryAxis(), "normal"] }],
1258
+ /**
1259
+ * Justify Self
1260
+ * @see https://tailwindcss.com/docs/justify-self
1261
+ */
1262
+ "justify-self": [{ "justify-self": ["auto", ...scaleAlignSecondaryAxis()] }],
1263
+ /**
1264
+ * Align Content
1265
+ * @see https://tailwindcss.com/docs/align-content
1266
+ */
1267
+ "align-content": [{ content: ["normal", ...scaleAlignPrimaryAxis()] }],
1268
+ /**
1269
+ * Align Items
1270
+ * @see https://tailwindcss.com/docs/align-items
1271
+ */
1272
+ "align-items": [{ items: [...scaleAlignSecondaryAxis(), { baseline: ["", "last"] }] }],
1273
+ /**
1274
+ * Align Self
1275
+ * @see https://tailwindcss.com/docs/align-self
1276
+ */
1277
+ "align-self": [{ self: [
1278
+ "auto",
1279
+ ...scaleAlignSecondaryAxis(),
1280
+ { baseline: ["", "last"] }
1281
+ ] }],
1282
+ /**
1283
+ * Place Content
1284
+ * @see https://tailwindcss.com/docs/place-content
1285
+ */
1286
+ "place-content": [{ "place-content": scaleAlignPrimaryAxis() }],
1287
+ /**
1288
+ * Place Items
1289
+ * @see https://tailwindcss.com/docs/place-items
1290
+ */
1291
+ "place-items": [{ "place-items": [...scaleAlignSecondaryAxis(), "baseline"] }],
1292
+ /**
1293
+ * Place Self
1294
+ * @see https://tailwindcss.com/docs/place-self
1295
+ */
1296
+ "place-self": [{ "place-self": ["auto", ...scaleAlignSecondaryAxis()] }],
1297
+ /**
1298
+ * Padding
1299
+ * @see https://tailwindcss.com/docs/padding
1300
+ */
1301
+ p: [{ p: scaleUnambiguousSpacing() }],
1302
+ /**
1303
+ * Padding Inline
1304
+ * @see https://tailwindcss.com/docs/padding
1305
+ */
1306
+ px: [{ px: scaleUnambiguousSpacing() }],
1307
+ /**
1308
+ * Padding Block
1309
+ * @see https://tailwindcss.com/docs/padding
1310
+ */
1311
+ py: [{ py: scaleUnambiguousSpacing() }],
1312
+ /**
1313
+ * Padding Inline Start
1314
+ * @see https://tailwindcss.com/docs/padding
1315
+ */
1316
+ ps: [{ ps: scaleUnambiguousSpacing() }],
1317
+ /**
1318
+ * Padding Inline End
1319
+ * @see https://tailwindcss.com/docs/padding
1320
+ */
1321
+ pe: [{ pe: scaleUnambiguousSpacing() }],
1322
+ /**
1323
+ * Padding Block Start
1324
+ * @see https://tailwindcss.com/docs/padding
1325
+ */
1326
+ pbs: [{ pbs: scaleUnambiguousSpacing() }],
1327
+ /**
1328
+ * Padding Block End
1329
+ * @see https://tailwindcss.com/docs/padding
1330
+ */
1331
+ pbe: [{ pbe: scaleUnambiguousSpacing() }],
1332
+ /**
1333
+ * Padding Top
1334
+ * @see https://tailwindcss.com/docs/padding
1335
+ */
1336
+ pt: [{ pt: scaleUnambiguousSpacing() }],
1337
+ /**
1338
+ * Padding Right
1339
+ * @see https://tailwindcss.com/docs/padding
1340
+ */
1341
+ pr: [{ pr: scaleUnambiguousSpacing() }],
1342
+ /**
1343
+ * Padding Bottom
1344
+ * @see https://tailwindcss.com/docs/padding
1345
+ */
1346
+ pb: [{ pb: scaleUnambiguousSpacing() }],
1347
+ /**
1348
+ * Padding Left
1349
+ * @see https://tailwindcss.com/docs/padding
1350
+ */
1351
+ pl: [{ pl: scaleUnambiguousSpacing() }],
1352
+ /**
1353
+ * Margin
1354
+ * @see https://tailwindcss.com/docs/margin
1355
+ */
1356
+ m: [{ m: scaleMargin() }],
1357
+ /**
1358
+ * Margin Inline
1359
+ * @see https://tailwindcss.com/docs/margin
1360
+ */
1361
+ mx: [{ mx: scaleMargin() }],
1362
+ /**
1363
+ * Margin Block
1364
+ * @see https://tailwindcss.com/docs/margin
1365
+ */
1366
+ my: [{ my: scaleMargin() }],
1367
+ /**
1368
+ * Margin Inline Start
1369
+ * @see https://tailwindcss.com/docs/margin
1370
+ */
1371
+ ms: [{ ms: scaleMargin() }],
1372
+ /**
1373
+ * Margin Inline End
1374
+ * @see https://tailwindcss.com/docs/margin
1375
+ */
1376
+ me: [{ me: scaleMargin() }],
1377
+ /**
1378
+ * Margin Block Start
1379
+ * @see https://tailwindcss.com/docs/margin
1380
+ */
1381
+ mbs: [{ mbs: scaleMargin() }],
1382
+ /**
1383
+ * Margin Block End
1384
+ * @see https://tailwindcss.com/docs/margin
1385
+ */
1386
+ mbe: [{ mbe: scaleMargin() }],
1387
+ /**
1388
+ * Margin Top
1389
+ * @see https://tailwindcss.com/docs/margin
1390
+ */
1391
+ mt: [{ mt: scaleMargin() }],
1392
+ /**
1393
+ * Margin Right
1394
+ * @see https://tailwindcss.com/docs/margin
1395
+ */
1396
+ mr: [{ mr: scaleMargin() }],
1397
+ /**
1398
+ * Margin Bottom
1399
+ * @see https://tailwindcss.com/docs/margin
1400
+ */
1401
+ mb: [{ mb: scaleMargin() }],
1402
+ /**
1403
+ * Margin Left
1404
+ * @see https://tailwindcss.com/docs/margin
1405
+ */
1406
+ ml: [{ ml: scaleMargin() }],
1407
+ /**
1408
+ * Space Between X
1409
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1410
+ */
1411
+ "space-x": [{ "space-x": scaleUnambiguousSpacing() }],
1412
+ /**
1413
+ * Space Between X Reverse
1414
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1415
+ */
1416
+ "space-x-reverse": ["space-x-reverse"],
1417
+ /**
1418
+ * Space Between Y
1419
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1420
+ */
1421
+ "space-y": [{ "space-y": scaleUnambiguousSpacing() }],
1422
+ /**
1423
+ * Space Between Y Reverse
1424
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1425
+ */
1426
+ "space-y-reverse": ["space-y-reverse"],
1427
+ /**
1428
+ * Size
1429
+ * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
1430
+ */
1431
+ size: [{ size: scaleSizing() }],
1432
+ /**
1433
+ * Inline Size
1434
+ * @see https://tailwindcss.com/docs/width
1435
+ */
1436
+ "inline-size": [{ inline: ["auto", ...scaleSizingInline()] }],
1437
+ /**
1438
+ * Min-Inline Size
1439
+ * @see https://tailwindcss.com/docs/min-width
1440
+ */
1441
+ "min-inline-size": [{ "min-inline": ["auto", ...scaleSizingInline()] }],
1442
+ /**
1443
+ * Max-Inline Size
1444
+ * @see https://tailwindcss.com/docs/max-width
1445
+ */
1446
+ "max-inline-size": [{ "max-inline": ["none", ...scaleSizingInline()] }],
1447
+ /**
1448
+ * Block Size
1449
+ * @see https://tailwindcss.com/docs/height
1450
+ */
1451
+ "block-size": [{ block: ["auto", ...scaleSizingBlock()] }],
1452
+ /**
1453
+ * Min-Block Size
1454
+ * @see https://tailwindcss.com/docs/min-height
1455
+ */
1456
+ "min-block-size": [{ "min-block": ["auto", ...scaleSizingBlock()] }],
1457
+ /**
1458
+ * Max-Block Size
1459
+ * @see https://tailwindcss.com/docs/max-height
1460
+ */
1461
+ "max-block-size": [{ "max-block": ["none", ...scaleSizingBlock()] }],
1462
+ /**
1463
+ * Width
1464
+ * @see https://tailwindcss.com/docs/width
1465
+ */
1466
+ w: [{ w: [
1467
+ themeContainer,
1468
+ "screen",
1469
+ ...scaleSizing()
1470
+ ] }],
1471
+ /**
1472
+ * Min-Width
1473
+ * @see https://tailwindcss.com/docs/min-width
1474
+ */
1475
+ "min-w": [{ "min-w": [
1476
+ themeContainer,
1477
+ "screen",
1478
+ "none",
1479
+ ...scaleSizing()
1480
+ ] }],
1481
+ /**
1482
+ * Max-Width
1483
+ * @see https://tailwindcss.com/docs/max-width
1484
+ */
1485
+ "max-w": [{ "max-w": [
1486
+ themeContainer,
1487
+ "screen",
1488
+ "none",
1489
+ "prose",
1490
+ { screen: [themeBreakpoint] },
1491
+ ...scaleSizing()
1492
+ ] }],
1493
+ /**
1494
+ * Height
1495
+ * @see https://tailwindcss.com/docs/height
1496
+ */
1497
+ h: [{ h: [
1498
+ "screen",
1499
+ "lh",
1500
+ ...scaleSizing()
1501
+ ] }],
1502
+ /**
1503
+ * Min-Height
1504
+ * @see https://tailwindcss.com/docs/min-height
1505
+ */
1506
+ "min-h": [{ "min-h": [
1507
+ "screen",
1508
+ "lh",
1509
+ "none",
1510
+ ...scaleSizing()
1511
+ ] }],
1512
+ /**
1513
+ * Max-Height
1514
+ * @see https://tailwindcss.com/docs/max-height
1515
+ */
1516
+ "max-h": [{ "max-h": [
1517
+ "screen",
1518
+ "lh",
1519
+ ...scaleSizing()
1520
+ ] }],
1521
+ /**
1522
+ * Font Size
1523
+ * @see https://tailwindcss.com/docs/font-size
1524
+ */
1525
+ "font-size": [{ text: [
1526
+ "base",
1527
+ themeText,
1528
+ isArbitraryVariableLength,
1529
+ isArbitraryLength
1530
+ ] }],
1531
+ /**
1532
+ * Font Smoothing
1533
+ * @see https://tailwindcss.com/docs/font-smoothing
1534
+ */
1535
+ "font-smoothing": ["antialiased", "subpixel-antialiased"],
1536
+ /**
1537
+ * Font Style
1538
+ * @see https://tailwindcss.com/docs/font-style
1539
+ */
1540
+ "font-style": ["italic", "not-italic"],
1541
+ /**
1542
+ * Font Weight
1543
+ * @see https://tailwindcss.com/docs/font-weight
1544
+ */
1545
+ "font-weight": [{ font: [
1546
+ themeFontWeight,
1547
+ isArbitraryVariableWeight,
1548
+ isArbitraryWeight
1549
+ ] }],
1550
+ /**
1551
+ * Font Stretch
1552
+ * @see https://tailwindcss.com/docs/font-stretch
1553
+ */
1554
+ "font-stretch": [{ "font-stretch": [
1555
+ "ultra-condensed",
1556
+ "extra-condensed",
1557
+ "condensed",
1558
+ "semi-condensed",
1559
+ "normal",
1560
+ "semi-expanded",
1561
+ "expanded",
1562
+ "extra-expanded",
1563
+ "ultra-expanded",
1564
+ isPercent,
1565
+ isArbitraryValue
1566
+ ] }],
1567
+ /**
1568
+ * Font Family
1569
+ * @see https://tailwindcss.com/docs/font-family
1570
+ */
1571
+ "font-family": [{ font: [
1572
+ isArbitraryVariableFamilyName,
1573
+ isArbitraryFamilyName,
1574
+ themeFont
1575
+ ] }],
1576
+ /**
1577
+ * Font Feature Settings
1578
+ * @see https://tailwindcss.com/docs/font-feature-settings
1579
+ */
1580
+ "font-features": [{ "font-features": [isArbitraryValue] }],
1581
+ /**
1582
+ * Font Variant Numeric
1583
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1584
+ */
1585
+ "fvn-normal": ["normal-nums"],
1586
+ /**
1587
+ * Font Variant Numeric
1588
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1589
+ */
1590
+ "fvn-ordinal": ["ordinal"],
1591
+ /**
1592
+ * Font Variant Numeric
1593
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1594
+ */
1595
+ "fvn-slashed-zero": ["slashed-zero"],
1596
+ /**
1597
+ * Font Variant Numeric
1598
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1599
+ */
1600
+ "fvn-figure": ["lining-nums", "oldstyle-nums"],
1601
+ /**
1602
+ * Font Variant Numeric
1603
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1604
+ */
1605
+ "fvn-spacing": ["proportional-nums", "tabular-nums"],
1606
+ /**
1607
+ * Font Variant Numeric
1608
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1609
+ */
1610
+ "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
1611
+ /**
1612
+ * Letter Spacing
1613
+ * @see https://tailwindcss.com/docs/letter-spacing
1614
+ */
1615
+ tracking: [{ tracking: [
1616
+ themeTracking,
1617
+ isArbitraryVariable,
1618
+ isArbitraryValue
1619
+ ] }],
1620
+ /**
1621
+ * Line Clamp
1622
+ * @see https://tailwindcss.com/docs/line-clamp
1623
+ */
1624
+ "line-clamp": [{ "line-clamp": [
1625
+ isNumber,
1626
+ "none",
1627
+ isArbitraryVariable,
1628
+ isArbitraryNumber
1629
+ ] }],
1630
+ /**
1631
+ * Line Height
1632
+ * @see https://tailwindcss.com/docs/line-height
1633
+ */
1634
+ leading: [{ leading: [themeLeading, ...scaleUnambiguousSpacing()] }],
1635
+ /**
1636
+ * List Style Image
1637
+ * @see https://tailwindcss.com/docs/list-style-image
1638
+ */
1639
+ "list-image": [{ "list-image": [
1640
+ "none",
1641
+ isArbitraryVariable,
1642
+ isArbitraryValue
1643
+ ] }],
1644
+ /**
1645
+ * List Style Position
1646
+ * @see https://tailwindcss.com/docs/list-style-position
1647
+ */
1648
+ "list-style-position": [{ list: ["inside", "outside"] }],
1649
+ /**
1650
+ * List Style Type
1651
+ * @see https://tailwindcss.com/docs/list-style-type
1652
+ */
1653
+ "list-style-type": [{ list: [
1654
+ "disc",
1655
+ "decimal",
1656
+ "none",
1657
+ isArbitraryVariable,
1658
+ isArbitraryValue
1659
+ ] }],
1660
+ /**
1661
+ * Text Alignment
1662
+ * @see https://tailwindcss.com/docs/text-align
1663
+ */
1664
+ "text-alignment": [{ text: [
1665
+ "left",
1666
+ "center",
1667
+ "right",
1668
+ "justify",
1669
+ "start",
1670
+ "end"
1671
+ ] }],
1672
+ /**
1673
+ * Placeholder Color
1674
+ * @deprecated since Tailwind CSS v3.0.0
1675
+ * @see https://v3.tailwindcss.com/docs/placeholder-color
1676
+ */
1677
+ "placeholder-color": [{ placeholder: scaleColor() }],
1678
+ /**
1679
+ * Text Color
1680
+ * @see https://tailwindcss.com/docs/text-color
1681
+ */
1682
+ "text-color": [{ text: scaleColor() }],
1683
+ /**
1684
+ * Text Decoration
1685
+ * @see https://tailwindcss.com/docs/text-decoration
1686
+ */
1687
+ "text-decoration": [
1688
+ "underline",
1689
+ "overline",
1690
+ "line-through",
1691
+ "no-underline"
1692
+ ],
1693
+ /**
1694
+ * Text Decoration Style
1695
+ * @see https://tailwindcss.com/docs/text-decoration-style
1696
+ */
1697
+ "text-decoration-style": [{ decoration: [...scaleLineStyle(), "wavy"] }],
1698
+ /**
1699
+ * Text Decoration Thickness
1700
+ * @see https://tailwindcss.com/docs/text-decoration-thickness
1701
+ */
1702
+ "text-decoration-thickness": [{ decoration: [
1703
+ isNumber,
1704
+ "from-font",
1705
+ "auto",
1706
+ isArbitraryVariable,
1707
+ isArbitraryLength
1708
+ ] }],
1709
+ /**
1710
+ * Text Decoration Color
1711
+ * @see https://tailwindcss.com/docs/text-decoration-color
1712
+ */
1713
+ "text-decoration-color": [{ decoration: scaleColor() }],
1714
+ /**
1715
+ * Text Underline Offset
1716
+ * @see https://tailwindcss.com/docs/text-underline-offset
1717
+ */
1718
+ "underline-offset": [{ "underline-offset": [
1719
+ isNumber,
1720
+ "auto",
1721
+ isArbitraryVariable,
1722
+ isArbitraryValue
1723
+ ] }],
1724
+ /**
1725
+ * Text Transform
1726
+ * @see https://tailwindcss.com/docs/text-transform
1727
+ */
1728
+ "text-transform": [
1729
+ "uppercase",
1730
+ "lowercase",
1731
+ "capitalize",
1732
+ "normal-case"
1733
+ ],
1734
+ /**
1735
+ * Text Overflow
1736
+ * @see https://tailwindcss.com/docs/text-overflow
1737
+ */
1738
+ "text-overflow": [
1739
+ "truncate",
1740
+ "text-ellipsis",
1741
+ "text-clip"
1742
+ ],
1743
+ /**
1744
+ * Text Wrap
1745
+ * @see https://tailwindcss.com/docs/text-wrap
1746
+ */
1747
+ "text-wrap": [{ text: [
1748
+ "wrap",
1749
+ "nowrap",
1750
+ "balance",
1751
+ "pretty"
1752
+ ] }],
1753
+ /**
1754
+ * Text Indent
1755
+ * @see https://tailwindcss.com/docs/text-indent
1756
+ */
1757
+ indent: [{ indent: scaleUnambiguousSpacing() }],
1758
+ /**
1759
+ * Tab Size
1760
+ * @see https://tailwindcss.com/docs/tab-size
1761
+ */
1762
+ "tab-size": [{ tab: [
1763
+ isInteger,
1764
+ isArbitraryVariable,
1765
+ isArbitraryValue
1766
+ ] }],
1767
+ /**
1768
+ * Vertical Alignment
1769
+ * @see https://tailwindcss.com/docs/vertical-align
1770
+ */
1771
+ "vertical-align": [{ align: [
1772
+ "baseline",
1773
+ "top",
1774
+ "middle",
1775
+ "bottom",
1776
+ "text-top",
1777
+ "text-bottom",
1778
+ "sub",
1779
+ "super",
1780
+ isArbitraryVariable,
1781
+ isArbitraryValue
1782
+ ] }],
1783
+ /**
1784
+ * Whitespace
1785
+ * @see https://tailwindcss.com/docs/whitespace
1786
+ */
1787
+ whitespace: [{ whitespace: [
1788
+ "normal",
1789
+ "nowrap",
1790
+ "pre",
1791
+ "pre-line",
1792
+ "pre-wrap",
1793
+ "break-spaces"
1794
+ ] }],
1795
+ /**
1796
+ * Word Break
1797
+ * @see https://tailwindcss.com/docs/word-break
1798
+ */
1799
+ break: [{ break: [
1800
+ "normal",
1801
+ "words",
1802
+ "all",
1803
+ "keep"
1804
+ ] }],
1805
+ /**
1806
+ * Overflow Wrap
1807
+ * @see https://tailwindcss.com/docs/overflow-wrap
1808
+ */
1809
+ wrap: [{ wrap: [
1810
+ "break-word",
1811
+ "anywhere",
1812
+ "normal"
1813
+ ] }],
1814
+ /**
1815
+ * Hyphens
1816
+ * @see https://tailwindcss.com/docs/hyphens
1817
+ */
1818
+ hyphens: [{ hyphens: [
1819
+ "none",
1820
+ "manual",
1821
+ "auto"
1822
+ ] }],
1823
+ /**
1824
+ * Content
1825
+ * @see https://tailwindcss.com/docs/content
1826
+ */
1827
+ content: [{ content: [
1828
+ "none",
1829
+ isArbitraryVariable,
1830
+ isArbitraryValue
1831
+ ] }],
1832
+ /**
1833
+ * Background Attachment
1834
+ * @see https://tailwindcss.com/docs/background-attachment
1835
+ */
1836
+ "bg-attachment": [{ bg: [
1837
+ "fixed",
1838
+ "local",
1839
+ "scroll"
1840
+ ] }],
1841
+ /**
1842
+ * Background Clip
1843
+ * @see https://tailwindcss.com/docs/background-clip
1844
+ */
1845
+ "bg-clip": [{ "bg-clip": [
1846
+ "border",
1847
+ "padding",
1848
+ "content",
1849
+ "text"
1850
+ ] }],
1851
+ /**
1852
+ * Background Origin
1853
+ * @see https://tailwindcss.com/docs/background-origin
1854
+ */
1855
+ "bg-origin": [{ "bg-origin": [
1856
+ "border",
1857
+ "padding",
1858
+ "content"
1859
+ ] }],
1860
+ /**
1861
+ * Background Position
1862
+ * @see https://tailwindcss.com/docs/background-position
1863
+ */
1864
+ "bg-position": [{ bg: scaleBgPosition() }],
1865
+ /**
1866
+ * Background Repeat
1867
+ * @see https://tailwindcss.com/docs/background-repeat
1868
+ */
1869
+ "bg-repeat": [{ bg: scaleBgRepeat() }],
1870
+ /**
1871
+ * Background Size
1872
+ * @see https://tailwindcss.com/docs/background-size
1873
+ */
1874
+ "bg-size": [{ bg: scaleBgSize() }],
1875
+ /**
1876
+ * Background Image
1877
+ * @see https://tailwindcss.com/docs/background-image
1878
+ */
1879
+ "bg-image": [{ bg: [
1880
+ "none",
1881
+ {
1882
+ linear: [
1883
+ { to: [
1884
+ "t",
1885
+ "tr",
1886
+ "r",
1887
+ "br",
1888
+ "b",
1889
+ "bl",
1890
+ "l",
1891
+ "tl"
1892
+ ] },
1893
+ isInteger,
1894
+ isArbitraryVariable,
1895
+ isArbitraryValue
1896
+ ],
1897
+ radial: [
1898
+ "",
1899
+ isArbitraryVariable,
1900
+ isArbitraryValue
1901
+ ],
1902
+ conic: [
1903
+ isInteger,
1904
+ isArbitraryVariable,
1905
+ isArbitraryValue
1906
+ ]
1907
+ },
1908
+ isArbitraryVariableImage,
1909
+ isArbitraryImage
1910
+ ] }],
1911
+ /**
1912
+ * Background Color
1913
+ * @see https://tailwindcss.com/docs/background-color
1914
+ */
1915
+ "bg-color": [{ bg: scaleColor() }],
1916
+ /**
1917
+ * Gradient Color Stops From Position
1918
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1919
+ */
1920
+ "gradient-from-pos": [{ from: scaleGradientStopPosition() }],
1921
+ /**
1922
+ * Gradient Color Stops Via Position
1923
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1924
+ */
1925
+ "gradient-via-pos": [{ via: scaleGradientStopPosition() }],
1926
+ /**
1927
+ * Gradient Color Stops To Position
1928
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1929
+ */
1930
+ "gradient-to-pos": [{ to: scaleGradientStopPosition() }],
1931
+ /**
1932
+ * Gradient Color Stops From
1933
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1934
+ */
1935
+ "gradient-from": [{ from: scaleColor() }],
1936
+ /**
1937
+ * Gradient Color Stops Via
1938
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1939
+ */
1940
+ "gradient-via": [{ via: scaleColor() }],
1941
+ /**
1942
+ * Gradient Color Stops To
1943
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1944
+ */
1945
+ "gradient-to": [{ to: scaleColor() }],
1946
+ /**
1947
+ * Border Radius
1948
+ * @see https://tailwindcss.com/docs/border-radius
1949
+ */
1950
+ rounded: [{ rounded: scaleRadius() }],
1951
+ /**
1952
+ * Border Radius Start
1953
+ * @see https://tailwindcss.com/docs/border-radius
1954
+ */
1955
+ "rounded-s": [{ "rounded-s": scaleRadius() }],
1956
+ /**
1957
+ * Border Radius End
1958
+ * @see https://tailwindcss.com/docs/border-radius
1959
+ */
1960
+ "rounded-e": [{ "rounded-e": scaleRadius() }],
1961
+ /**
1962
+ * Border Radius Top
1963
+ * @see https://tailwindcss.com/docs/border-radius
1964
+ */
1965
+ "rounded-t": [{ "rounded-t": scaleRadius() }],
1966
+ /**
1967
+ * Border Radius Right
1968
+ * @see https://tailwindcss.com/docs/border-radius
1969
+ */
1970
+ "rounded-r": [{ "rounded-r": scaleRadius() }],
1971
+ /**
1972
+ * Border Radius Bottom
1973
+ * @see https://tailwindcss.com/docs/border-radius
1974
+ */
1975
+ "rounded-b": [{ "rounded-b": scaleRadius() }],
1976
+ /**
1977
+ * Border Radius Left
1978
+ * @see https://tailwindcss.com/docs/border-radius
1979
+ */
1980
+ "rounded-l": [{ "rounded-l": scaleRadius() }],
1981
+ /**
1982
+ * Border Radius Start Start
1983
+ * @see https://tailwindcss.com/docs/border-radius
1984
+ */
1985
+ "rounded-ss": [{ "rounded-ss": scaleRadius() }],
1986
+ /**
1987
+ * Border Radius Start End
1988
+ * @see https://tailwindcss.com/docs/border-radius
1989
+ */
1990
+ "rounded-se": [{ "rounded-se": scaleRadius() }],
1991
+ /**
1992
+ * Border Radius End End
1993
+ * @see https://tailwindcss.com/docs/border-radius
1994
+ */
1995
+ "rounded-ee": [{ "rounded-ee": scaleRadius() }],
1996
+ /**
1997
+ * Border Radius End Start
1998
+ * @see https://tailwindcss.com/docs/border-radius
1999
+ */
2000
+ "rounded-es": [{ "rounded-es": scaleRadius() }],
2001
+ /**
2002
+ * Border Radius Top Left
2003
+ * @see https://tailwindcss.com/docs/border-radius
2004
+ */
2005
+ "rounded-tl": [{ "rounded-tl": scaleRadius() }],
2006
+ /**
2007
+ * Border Radius Top Right
2008
+ * @see https://tailwindcss.com/docs/border-radius
2009
+ */
2010
+ "rounded-tr": [{ "rounded-tr": scaleRadius() }],
2011
+ /**
2012
+ * Border Radius Bottom Right
2013
+ * @see https://tailwindcss.com/docs/border-radius
2014
+ */
2015
+ "rounded-br": [{ "rounded-br": scaleRadius() }],
2016
+ /**
2017
+ * Border Radius Bottom Left
2018
+ * @see https://tailwindcss.com/docs/border-radius
2019
+ */
2020
+ "rounded-bl": [{ "rounded-bl": scaleRadius() }],
2021
+ /**
2022
+ * Border Width
2023
+ * @see https://tailwindcss.com/docs/border-width
2024
+ */
2025
+ "border-w": [{ border: scaleBorderWidth() }],
2026
+ /**
2027
+ * Border Width Inline
2028
+ * @see https://tailwindcss.com/docs/border-width
2029
+ */
2030
+ "border-w-x": [{ "border-x": scaleBorderWidth() }],
2031
+ /**
2032
+ * Border Width Block
2033
+ * @see https://tailwindcss.com/docs/border-width
2034
+ */
2035
+ "border-w-y": [{ "border-y": scaleBorderWidth() }],
2036
+ /**
2037
+ * Border Width Inline Start
2038
+ * @see https://tailwindcss.com/docs/border-width
2039
+ */
2040
+ "border-w-s": [{ "border-s": scaleBorderWidth() }],
2041
+ /**
2042
+ * Border Width Inline End
2043
+ * @see https://tailwindcss.com/docs/border-width
2044
+ */
2045
+ "border-w-e": [{ "border-e": scaleBorderWidth() }],
2046
+ /**
2047
+ * Border Width Block Start
2048
+ * @see https://tailwindcss.com/docs/border-width
2049
+ */
2050
+ "border-w-bs": [{ "border-bs": scaleBorderWidth() }],
2051
+ /**
2052
+ * Border Width Block End
2053
+ * @see https://tailwindcss.com/docs/border-width
2054
+ */
2055
+ "border-w-be": [{ "border-be": scaleBorderWidth() }],
2056
+ /**
2057
+ * Border Width Top
2058
+ * @see https://tailwindcss.com/docs/border-width
2059
+ */
2060
+ "border-w-t": [{ "border-t": scaleBorderWidth() }],
2061
+ /**
2062
+ * Border Width Right
2063
+ * @see https://tailwindcss.com/docs/border-width
2064
+ */
2065
+ "border-w-r": [{ "border-r": scaleBorderWidth() }],
2066
+ /**
2067
+ * Border Width Bottom
2068
+ * @see https://tailwindcss.com/docs/border-width
2069
+ */
2070
+ "border-w-b": [{ "border-b": scaleBorderWidth() }],
2071
+ /**
2072
+ * Border Width Left
2073
+ * @see https://tailwindcss.com/docs/border-width
2074
+ */
2075
+ "border-w-l": [{ "border-l": scaleBorderWidth() }],
2076
+ /**
2077
+ * Divide Width X
2078
+ * @see https://tailwindcss.com/docs/border-width#between-children
2079
+ */
2080
+ "divide-x": [{ "divide-x": scaleBorderWidth() }],
2081
+ /**
2082
+ * Divide Width X Reverse
2083
+ * @see https://tailwindcss.com/docs/border-width#between-children
2084
+ */
2085
+ "divide-x-reverse": ["divide-x-reverse"],
2086
+ /**
2087
+ * Divide Width Y
2088
+ * @see https://tailwindcss.com/docs/border-width#between-children
2089
+ */
2090
+ "divide-y": [{ "divide-y": scaleBorderWidth() }],
2091
+ /**
2092
+ * Divide Width Y Reverse
2093
+ * @see https://tailwindcss.com/docs/border-width#between-children
2094
+ */
2095
+ "divide-y-reverse": ["divide-y-reverse"],
2096
+ /**
2097
+ * Border Style
2098
+ * @see https://tailwindcss.com/docs/border-style
2099
+ */
2100
+ "border-style": [{ border: [
2101
+ ...scaleLineStyle(),
2102
+ "hidden",
2103
+ "none"
2104
+ ] }],
2105
+ /**
2106
+ * Divide Style
2107
+ * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
2108
+ */
2109
+ "divide-style": [{ divide: [
2110
+ ...scaleLineStyle(),
2111
+ "hidden",
2112
+ "none"
2113
+ ] }],
2114
+ /**
2115
+ * Border Color
2116
+ * @see https://tailwindcss.com/docs/border-color
2117
+ */
2118
+ "border-color": [{ border: scaleColor() }],
2119
+ /**
2120
+ * Border Color Inline
2121
+ * @see https://tailwindcss.com/docs/border-color
2122
+ */
2123
+ "border-color-x": [{ "border-x": scaleColor() }],
2124
+ /**
2125
+ * Border Color Block
2126
+ * @see https://tailwindcss.com/docs/border-color
2127
+ */
2128
+ "border-color-y": [{ "border-y": scaleColor() }],
2129
+ /**
2130
+ * Border Color Inline Start
2131
+ * @see https://tailwindcss.com/docs/border-color
2132
+ */
2133
+ "border-color-s": [{ "border-s": scaleColor() }],
2134
+ /**
2135
+ * Border Color Inline End
2136
+ * @see https://tailwindcss.com/docs/border-color
2137
+ */
2138
+ "border-color-e": [{ "border-e": scaleColor() }],
2139
+ /**
2140
+ * Border Color Block Start
2141
+ * @see https://tailwindcss.com/docs/border-color
2142
+ */
2143
+ "border-color-bs": [{ "border-bs": scaleColor() }],
2144
+ /**
2145
+ * Border Color Block End
2146
+ * @see https://tailwindcss.com/docs/border-color
2147
+ */
2148
+ "border-color-be": [{ "border-be": scaleColor() }],
2149
+ /**
2150
+ * Border Color Top
2151
+ * @see https://tailwindcss.com/docs/border-color
2152
+ */
2153
+ "border-color-t": [{ "border-t": scaleColor() }],
2154
+ /**
2155
+ * Border Color Right
2156
+ * @see https://tailwindcss.com/docs/border-color
2157
+ */
2158
+ "border-color-r": [{ "border-r": scaleColor() }],
2159
+ /**
2160
+ * Border Color Bottom
2161
+ * @see https://tailwindcss.com/docs/border-color
2162
+ */
2163
+ "border-color-b": [{ "border-b": scaleColor() }],
2164
+ /**
2165
+ * Border Color Left
2166
+ * @see https://tailwindcss.com/docs/border-color
2167
+ */
2168
+ "border-color-l": [{ "border-l": scaleColor() }],
2169
+ /**
2170
+ * Divide Color
2171
+ * @see https://tailwindcss.com/docs/divide-color
2172
+ */
2173
+ "divide-color": [{ divide: scaleColor() }],
2174
+ /**
2175
+ * Outline Style
2176
+ * @see https://tailwindcss.com/docs/outline-style
2177
+ */
2178
+ "outline-style": [{ outline: [
2179
+ ...scaleLineStyle(),
2180
+ "none",
2181
+ "hidden"
2182
+ ] }],
2183
+ /**
2184
+ * Outline Offset
2185
+ * @see https://tailwindcss.com/docs/outline-offset
2186
+ */
2187
+ "outline-offset": [{ "outline-offset": [
2188
+ isNumber,
2189
+ isArbitraryVariable,
2190
+ isArbitraryValue
2191
+ ] }],
2192
+ /**
2193
+ * Outline Width
2194
+ * @see https://tailwindcss.com/docs/outline-width
2195
+ */
2196
+ "outline-w": [{ outline: [
2197
+ "",
2198
+ isNumber,
2199
+ isArbitraryVariableLength,
2200
+ isArbitraryLength
2201
+ ] }],
2202
+ /**
2203
+ * Outline Color
2204
+ * @see https://tailwindcss.com/docs/outline-color
2205
+ */
2206
+ "outline-color": [{ outline: scaleColor() }],
2207
+ /**
2208
+ * Box Shadow
2209
+ * @see https://tailwindcss.com/docs/box-shadow
2210
+ */
2211
+ shadow: [{ shadow: [
2212
+ "",
2213
+ "none",
2214
+ themeShadow,
2215
+ isArbitraryVariableShadow,
2216
+ isArbitraryShadow
2217
+ ] }],
2218
+ /**
2219
+ * Box Shadow Color
2220
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
2221
+ */
2222
+ "shadow-color": [{ shadow: scaleColor() }],
2223
+ /**
2224
+ * Inset Box Shadow
2225
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
2226
+ */
2227
+ "inset-shadow": [{ "inset-shadow": [
2228
+ "none",
2229
+ themeInsetShadow,
2230
+ isArbitraryVariableShadow,
2231
+ isArbitraryShadow
2232
+ ] }],
2233
+ /**
2234
+ * Inset Box Shadow Color
2235
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
2236
+ */
2237
+ "inset-shadow-color": [{ "inset-shadow": scaleColor() }],
2238
+ /**
2239
+ * Ring Width
2240
+ * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
2241
+ */
2242
+ "ring-w": [{ ring: scaleBorderWidth() }],
2243
+ /**
2244
+ * Ring Width Inset
2245
+ * @see https://v3.tailwindcss.com/docs/ring-width#inset-rings
2246
+ * @deprecated since Tailwind CSS v4.0.0
2247
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2248
+ */
2249
+ "ring-w-inset": ["ring-inset"],
2250
+ /**
2251
+ * Ring Color
2252
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
2253
+ */
2254
+ "ring-color": [{ ring: scaleColor() }],
2255
+ /**
2256
+ * Ring Offset Width
2257
+ * @see https://v3.tailwindcss.com/docs/ring-offset-width
2258
+ * @deprecated since Tailwind CSS v4.0.0
2259
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2260
+ */
2261
+ "ring-offset-w": [{ "ring-offset": [isNumber, isArbitraryLength] }],
2262
+ /**
2263
+ * Ring Offset Color
2264
+ * @see https://v3.tailwindcss.com/docs/ring-offset-color
2265
+ * @deprecated since Tailwind CSS v4.0.0
2266
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2267
+ */
2268
+ "ring-offset-color": [{ "ring-offset": scaleColor() }],
2269
+ /**
2270
+ * Inset Ring Width
2271
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
2272
+ */
2273
+ "inset-ring-w": [{ "inset-ring": scaleBorderWidth() }],
2274
+ /**
2275
+ * Inset Ring Color
2276
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
2277
+ */
2278
+ "inset-ring-color": [{ "inset-ring": scaleColor() }],
2279
+ /**
2280
+ * Text Shadow
2281
+ * @see https://tailwindcss.com/docs/text-shadow
2282
+ */
2283
+ "text-shadow": [{ "text-shadow": [
2284
+ "none",
2285
+ themeTextShadow,
2286
+ isArbitraryVariableShadow,
2287
+ isArbitraryShadow
2288
+ ] }],
2289
+ /**
2290
+ * Text Shadow Color
2291
+ * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
2292
+ */
2293
+ "text-shadow-color": [{ "text-shadow": scaleColor() }],
2294
+ /**
2295
+ * Opacity
2296
+ * @see https://tailwindcss.com/docs/opacity
2297
+ */
2298
+ opacity: [{ opacity: [
2299
+ isNumber,
2300
+ isArbitraryVariable,
2301
+ isArbitraryValue
2302
+ ] }],
2303
+ /**
2304
+ * Mix Blend Mode
2305
+ * @see https://tailwindcss.com/docs/mix-blend-mode
2306
+ */
2307
+ "mix-blend": [{ "mix-blend": [
2308
+ ...scaleBlendMode(),
2309
+ "plus-darker",
2310
+ "plus-lighter"
2311
+ ] }],
2312
+ /**
2313
+ * Background Blend Mode
2314
+ * @see https://tailwindcss.com/docs/background-blend-mode
2315
+ */
2316
+ "bg-blend": [{ "bg-blend": scaleBlendMode() }],
2317
+ /**
2318
+ * Mask Clip
2319
+ * @see https://tailwindcss.com/docs/mask-clip
2320
+ */
2321
+ "mask-clip": [{ "mask-clip": [
2322
+ "border",
2323
+ "padding",
2324
+ "content",
2325
+ "fill",
2326
+ "stroke",
2327
+ "view"
2328
+ ] }, "mask-no-clip"],
2329
+ /**
2330
+ * Mask Composite
2331
+ * @see https://tailwindcss.com/docs/mask-composite
2332
+ */
2333
+ "mask-composite": [{ mask: [
2334
+ "add",
2335
+ "subtract",
2336
+ "intersect",
2337
+ "exclude"
2338
+ ] }],
2339
+ /**
2340
+ * Mask Image
2341
+ * @see https://tailwindcss.com/docs/mask-image
2342
+ */
2343
+ "mask-image-linear-pos": [{ "mask-linear": [isNumber] }],
2344
+ "mask-image-linear-from-pos": [{ "mask-linear-from": scaleMaskImagePosition() }],
2345
+ "mask-image-linear-to-pos": [{ "mask-linear-to": scaleMaskImagePosition() }],
2346
+ "mask-image-linear-from-color": [{ "mask-linear-from": scaleColor() }],
2347
+ "mask-image-linear-to-color": [{ "mask-linear-to": scaleColor() }],
2348
+ "mask-image-t-from-pos": [{ "mask-t-from": scaleMaskImagePosition() }],
2349
+ "mask-image-t-to-pos": [{ "mask-t-to": scaleMaskImagePosition() }],
2350
+ "mask-image-t-from-color": [{ "mask-t-from": scaleColor() }],
2351
+ "mask-image-t-to-color": [{ "mask-t-to": scaleColor() }],
2352
+ "mask-image-r-from-pos": [{ "mask-r-from": scaleMaskImagePosition() }],
2353
+ "mask-image-r-to-pos": [{ "mask-r-to": scaleMaskImagePosition() }],
2354
+ "mask-image-r-from-color": [{ "mask-r-from": scaleColor() }],
2355
+ "mask-image-r-to-color": [{ "mask-r-to": scaleColor() }],
2356
+ "mask-image-b-from-pos": [{ "mask-b-from": scaleMaskImagePosition() }],
2357
+ "mask-image-b-to-pos": [{ "mask-b-to": scaleMaskImagePosition() }],
2358
+ "mask-image-b-from-color": [{ "mask-b-from": scaleColor() }],
2359
+ "mask-image-b-to-color": [{ "mask-b-to": scaleColor() }],
2360
+ "mask-image-l-from-pos": [{ "mask-l-from": scaleMaskImagePosition() }],
2361
+ "mask-image-l-to-pos": [{ "mask-l-to": scaleMaskImagePosition() }],
2362
+ "mask-image-l-from-color": [{ "mask-l-from": scaleColor() }],
2363
+ "mask-image-l-to-color": [{ "mask-l-to": scaleColor() }],
2364
+ "mask-image-x-from-pos": [{ "mask-x-from": scaleMaskImagePosition() }],
2365
+ "mask-image-x-to-pos": [{ "mask-x-to": scaleMaskImagePosition() }],
2366
+ "mask-image-x-from-color": [{ "mask-x-from": scaleColor() }],
2367
+ "mask-image-x-to-color": [{ "mask-x-to": scaleColor() }],
2368
+ "mask-image-y-from-pos": [{ "mask-y-from": scaleMaskImagePosition() }],
2369
+ "mask-image-y-to-pos": [{ "mask-y-to": scaleMaskImagePosition() }],
2370
+ "mask-image-y-from-color": [{ "mask-y-from": scaleColor() }],
2371
+ "mask-image-y-to-color": [{ "mask-y-to": scaleColor() }],
2372
+ "mask-image-radial": [{ "mask-radial": [isArbitraryVariable, isArbitraryValue] }],
2373
+ "mask-image-radial-from-pos": [{ "mask-radial-from": scaleMaskImagePosition() }],
2374
+ "mask-image-radial-to-pos": [{ "mask-radial-to": scaleMaskImagePosition() }],
2375
+ "mask-image-radial-from-color": [{ "mask-radial-from": scaleColor() }],
2376
+ "mask-image-radial-to-color": [{ "mask-radial-to": scaleColor() }],
2377
+ "mask-image-radial-shape": [{ "mask-radial": ["circle", "ellipse"] }],
2378
+ "mask-image-radial-size": [{ "mask-radial": [{
2379
+ closest: ["side", "corner"],
2380
+ farthest: ["side", "corner"]
2381
+ }] }],
2382
+ "mask-image-radial-pos": [{ "mask-radial-at": scalePosition() }],
2383
+ "mask-image-conic-pos": [{ "mask-conic": [isNumber] }],
2384
+ "mask-image-conic-from-pos": [{ "mask-conic-from": scaleMaskImagePosition() }],
2385
+ "mask-image-conic-to-pos": [{ "mask-conic-to": scaleMaskImagePosition() }],
2386
+ "mask-image-conic-from-color": [{ "mask-conic-from": scaleColor() }],
2387
+ "mask-image-conic-to-color": [{ "mask-conic-to": scaleColor() }],
2388
+ /**
2389
+ * Mask Mode
2390
+ * @see https://tailwindcss.com/docs/mask-mode
2391
+ */
2392
+ "mask-mode": [{ mask: [
2393
+ "alpha",
2394
+ "luminance",
2395
+ "match"
2396
+ ] }],
2397
+ /**
2398
+ * Mask Origin
2399
+ * @see https://tailwindcss.com/docs/mask-origin
2400
+ */
2401
+ "mask-origin": [{ "mask-origin": [
2402
+ "border",
2403
+ "padding",
2404
+ "content",
2405
+ "fill",
2406
+ "stroke",
2407
+ "view"
2408
+ ] }],
2409
+ /**
2410
+ * Mask Position
2411
+ * @see https://tailwindcss.com/docs/mask-position
2412
+ */
2413
+ "mask-position": [{ mask: scaleBgPosition() }],
2414
+ /**
2415
+ * Mask Repeat
2416
+ * @see https://tailwindcss.com/docs/mask-repeat
2417
+ */
2418
+ "mask-repeat": [{ mask: scaleBgRepeat() }],
2419
+ /**
2420
+ * Mask Size
2421
+ * @see https://tailwindcss.com/docs/mask-size
2422
+ */
2423
+ "mask-size": [{ mask: scaleBgSize() }],
2424
+ /**
2425
+ * Mask Type
2426
+ * @see https://tailwindcss.com/docs/mask-type
2427
+ */
2428
+ "mask-type": [{ "mask-type": ["alpha", "luminance"] }],
2429
+ /**
2430
+ * Mask Image
2431
+ * @see https://tailwindcss.com/docs/mask-image
2432
+ */
2433
+ "mask-image": [{ mask: [
2434
+ "none",
2435
+ isArbitraryVariable,
2436
+ isArbitraryValue
2437
+ ] }],
2438
+ /**
2439
+ * Filter
2440
+ * @see https://tailwindcss.com/docs/filter
2441
+ */
2442
+ filter: [{ filter: [
2443
+ "",
2444
+ "none",
2445
+ isArbitraryVariable,
2446
+ isArbitraryValue
2447
+ ] }],
2448
+ /**
2449
+ * Blur
2450
+ * @see https://tailwindcss.com/docs/blur
2451
+ */
2452
+ blur: [{ blur: scaleBlur() }],
2453
+ /**
2454
+ * Brightness
2455
+ * @see https://tailwindcss.com/docs/brightness
2456
+ */
2457
+ brightness: [{ brightness: [
2458
+ isNumber,
2459
+ isArbitraryVariable,
2460
+ isArbitraryValue
2461
+ ] }],
2462
+ /**
2463
+ * Contrast
2464
+ * @see https://tailwindcss.com/docs/contrast
2465
+ */
2466
+ contrast: [{ contrast: [
2467
+ isNumber,
2468
+ isArbitraryVariable,
2469
+ isArbitraryValue
2470
+ ] }],
2471
+ /**
2472
+ * Drop Shadow
2473
+ * @see https://tailwindcss.com/docs/drop-shadow
2474
+ */
2475
+ "drop-shadow": [{ "drop-shadow": [
2476
+ "",
2477
+ "none",
2478
+ themeDropShadow,
2479
+ isArbitraryVariableShadow,
2480
+ isArbitraryShadow
2481
+ ] }],
2482
+ /**
2483
+ * Drop Shadow Color
2484
+ * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
2485
+ */
2486
+ "drop-shadow-color": [{ "drop-shadow": scaleColor() }],
2487
+ /**
2488
+ * Grayscale
2489
+ * @see https://tailwindcss.com/docs/grayscale
2490
+ */
2491
+ grayscale: [{ grayscale: [
2492
+ "",
2493
+ isNumber,
2494
+ isArbitraryVariable,
2495
+ isArbitraryValue
2496
+ ] }],
2497
+ /**
2498
+ * Hue Rotate
2499
+ * @see https://tailwindcss.com/docs/hue-rotate
2500
+ */
2501
+ "hue-rotate": [{ "hue-rotate": [
2502
+ isNumber,
2503
+ isArbitraryVariable,
2504
+ isArbitraryValue
2505
+ ] }],
2506
+ /**
2507
+ * Invert
2508
+ * @see https://tailwindcss.com/docs/invert
2509
+ */
2510
+ invert: [{ invert: [
2511
+ "",
2512
+ isNumber,
2513
+ isArbitraryVariable,
2514
+ isArbitraryValue
2515
+ ] }],
2516
+ /**
2517
+ * Saturate
2518
+ * @see https://tailwindcss.com/docs/saturate
2519
+ */
2520
+ saturate: [{ saturate: [
2521
+ isNumber,
2522
+ isArbitraryVariable,
2523
+ isArbitraryValue
2524
+ ] }],
2525
+ /**
2526
+ * Sepia
2527
+ * @see https://tailwindcss.com/docs/sepia
2528
+ */
2529
+ sepia: [{ sepia: [
2530
+ "",
2531
+ isNumber,
2532
+ isArbitraryVariable,
2533
+ isArbitraryValue
2534
+ ] }],
2535
+ /**
2536
+ * Backdrop Filter
2537
+ * @see https://tailwindcss.com/docs/backdrop-filter
2538
+ */
2539
+ "backdrop-filter": [{ "backdrop-filter": [
2540
+ "",
2541
+ "none",
2542
+ isArbitraryVariable,
2543
+ isArbitraryValue
2544
+ ] }],
2545
+ /**
2546
+ * Backdrop Blur
2547
+ * @see https://tailwindcss.com/docs/backdrop-blur
2548
+ */
2549
+ "backdrop-blur": [{ "backdrop-blur": scaleBlur() }],
2550
+ /**
2551
+ * Backdrop Brightness
2552
+ * @see https://tailwindcss.com/docs/backdrop-brightness
2553
+ */
2554
+ "backdrop-brightness": [{ "backdrop-brightness": [
2555
+ isNumber,
2556
+ isArbitraryVariable,
2557
+ isArbitraryValue
2558
+ ] }],
2559
+ /**
2560
+ * Backdrop Contrast
2561
+ * @see https://tailwindcss.com/docs/backdrop-contrast
2562
+ */
2563
+ "backdrop-contrast": [{ "backdrop-contrast": [
2564
+ isNumber,
2565
+ isArbitraryVariable,
2566
+ isArbitraryValue
2567
+ ] }],
2568
+ /**
2569
+ * Backdrop Grayscale
2570
+ * @see https://tailwindcss.com/docs/backdrop-grayscale
2571
+ */
2572
+ "backdrop-grayscale": [{ "backdrop-grayscale": [
2573
+ "",
2574
+ isNumber,
2575
+ isArbitraryVariable,
2576
+ isArbitraryValue
2577
+ ] }],
2578
+ /**
2579
+ * Backdrop Hue Rotate
2580
+ * @see https://tailwindcss.com/docs/backdrop-hue-rotate
2581
+ */
2582
+ "backdrop-hue-rotate": [{ "backdrop-hue-rotate": [
2583
+ isNumber,
2584
+ isArbitraryVariable,
2585
+ isArbitraryValue
2586
+ ] }],
2587
+ /**
2588
+ * Backdrop Invert
2589
+ * @see https://tailwindcss.com/docs/backdrop-invert
2590
+ */
2591
+ "backdrop-invert": [{ "backdrop-invert": [
2592
+ "",
2593
+ isNumber,
2594
+ isArbitraryVariable,
2595
+ isArbitraryValue
2596
+ ] }],
2597
+ /**
2598
+ * Backdrop Opacity
2599
+ * @see https://tailwindcss.com/docs/backdrop-opacity
2600
+ */
2601
+ "backdrop-opacity": [{ "backdrop-opacity": [
2602
+ isNumber,
2603
+ isArbitraryVariable,
2604
+ isArbitraryValue
2605
+ ] }],
2606
+ /**
2607
+ * Backdrop Saturate
2608
+ * @see https://tailwindcss.com/docs/backdrop-saturate
2609
+ */
2610
+ "backdrop-saturate": [{ "backdrop-saturate": [
2611
+ isNumber,
2612
+ isArbitraryVariable,
2613
+ isArbitraryValue
2614
+ ] }],
2615
+ /**
2616
+ * Backdrop Sepia
2617
+ * @see https://tailwindcss.com/docs/backdrop-sepia
2618
+ */
2619
+ "backdrop-sepia": [{ "backdrop-sepia": [
2620
+ "",
2621
+ isNumber,
2622
+ isArbitraryVariable,
2623
+ isArbitraryValue
2624
+ ] }],
2625
+ /**
2626
+ * Border Collapse
2627
+ * @see https://tailwindcss.com/docs/border-collapse
2628
+ */
2629
+ "border-collapse": [{ border: ["collapse", "separate"] }],
2630
+ /**
2631
+ * Border Spacing
2632
+ * @see https://tailwindcss.com/docs/border-spacing
2633
+ */
2634
+ "border-spacing": [{ "border-spacing": scaleUnambiguousSpacing() }],
2635
+ /**
2636
+ * Border Spacing X
2637
+ * @see https://tailwindcss.com/docs/border-spacing
2638
+ */
2639
+ "border-spacing-x": [{ "border-spacing-x": scaleUnambiguousSpacing() }],
2640
+ /**
2641
+ * Border Spacing Y
2642
+ * @see https://tailwindcss.com/docs/border-spacing
2643
+ */
2644
+ "border-spacing-y": [{ "border-spacing-y": scaleUnambiguousSpacing() }],
2645
+ /**
2646
+ * Table Layout
2647
+ * @see https://tailwindcss.com/docs/table-layout
2648
+ */
2649
+ "table-layout": [{ table: ["auto", "fixed"] }],
2650
+ /**
2651
+ * Caption Side
2652
+ * @see https://tailwindcss.com/docs/caption-side
2653
+ */
2654
+ caption: [{ caption: ["top", "bottom"] }],
2655
+ /**
2656
+ * Transition Property
2657
+ * @see https://tailwindcss.com/docs/transition-property
2658
+ */
2659
+ transition: [{ transition: [
2660
+ "",
2661
+ "all",
2662
+ "colors",
2663
+ "opacity",
2664
+ "shadow",
2665
+ "transform",
2666
+ "none",
2667
+ isArbitraryVariable,
2668
+ isArbitraryValue
2669
+ ] }],
2670
+ /**
2671
+ * Transition Behavior
2672
+ * @see https://tailwindcss.com/docs/transition-behavior
2673
+ */
2674
+ "transition-behavior": [{ transition: ["normal", "discrete"] }],
2675
+ /**
2676
+ * Transition Duration
2677
+ * @see https://tailwindcss.com/docs/transition-duration
2678
+ */
2679
+ duration: [{ duration: [
2680
+ isNumber,
2681
+ "initial",
2682
+ isArbitraryVariable,
2683
+ isArbitraryValue
2684
+ ] }],
2685
+ /**
2686
+ * Transition Timing Function
2687
+ * @see https://tailwindcss.com/docs/transition-timing-function
2688
+ */
2689
+ ease: [{ ease: [
2690
+ "linear",
2691
+ "initial",
2692
+ themeEase,
2693
+ isArbitraryVariable,
2694
+ isArbitraryValue
2695
+ ] }],
2696
+ /**
2697
+ * Transition Delay
2698
+ * @see https://tailwindcss.com/docs/transition-delay
2699
+ */
2700
+ delay: [{ delay: [
2701
+ isNumber,
2702
+ isArbitraryVariable,
2703
+ isArbitraryValue
2704
+ ] }],
2705
+ /**
2706
+ * Animation
2707
+ * @see https://tailwindcss.com/docs/animation
2708
+ */
2709
+ animate: [{ animate: [
2710
+ "none",
2711
+ themeAnimate,
2712
+ isArbitraryVariable,
2713
+ isArbitraryValue
2714
+ ] }],
2715
+ /**
2716
+ * Backface Visibility
2717
+ * @see https://tailwindcss.com/docs/backface-visibility
2718
+ */
2719
+ backface: [{ backface: ["hidden", "visible"] }],
2720
+ /**
2721
+ * Perspective
2722
+ * @see https://tailwindcss.com/docs/perspective
2723
+ */
2724
+ perspective: [{ perspective: [
2725
+ themePerspective,
2726
+ isArbitraryVariable,
2727
+ isArbitraryValue
2728
+ ] }],
2729
+ /**
2730
+ * Perspective Origin
2731
+ * @see https://tailwindcss.com/docs/perspective-origin
2732
+ */
2733
+ "perspective-origin": [{ "perspective-origin": scalePositionWithArbitrary() }],
2734
+ /**
2735
+ * Rotate
2736
+ * @see https://tailwindcss.com/docs/rotate
2737
+ */
2738
+ rotate: [{ rotate: scaleRotate() }],
2739
+ /**
2740
+ * Rotate X
2741
+ * @see https://tailwindcss.com/docs/rotate
2742
+ */
2743
+ "rotate-x": [{ "rotate-x": scaleRotate() }],
2744
+ /**
2745
+ * Rotate Y
2746
+ * @see https://tailwindcss.com/docs/rotate
2747
+ */
2748
+ "rotate-y": [{ "rotate-y": scaleRotate() }],
2749
+ /**
2750
+ * Rotate Z
2751
+ * @see https://tailwindcss.com/docs/rotate
2752
+ */
2753
+ "rotate-z": [{ "rotate-z": scaleRotate() }],
2754
+ /**
2755
+ * Scale
2756
+ * @see https://tailwindcss.com/docs/scale
2757
+ */
2758
+ scale: [{ scale: scaleScale() }],
2759
+ /**
2760
+ * Scale X
2761
+ * @see https://tailwindcss.com/docs/scale
2762
+ */
2763
+ "scale-x": [{ "scale-x": scaleScale() }],
2764
+ /**
2765
+ * Scale Y
2766
+ * @see https://tailwindcss.com/docs/scale
2767
+ */
2768
+ "scale-y": [{ "scale-y": scaleScale() }],
2769
+ /**
2770
+ * Scale Z
2771
+ * @see https://tailwindcss.com/docs/scale
2772
+ */
2773
+ "scale-z": [{ "scale-z": scaleScale() }],
2774
+ /**
2775
+ * Scale 3D
2776
+ * @see https://tailwindcss.com/docs/scale
2777
+ */
2778
+ "scale-3d": ["scale-3d"],
2779
+ /**
2780
+ * Skew
2781
+ * @see https://tailwindcss.com/docs/skew
2782
+ */
2783
+ skew: [{ skew: scaleSkew() }],
2784
+ /**
2785
+ * Skew X
2786
+ * @see https://tailwindcss.com/docs/skew
2787
+ */
2788
+ "skew-x": [{ "skew-x": scaleSkew() }],
2789
+ /**
2790
+ * Skew Y
2791
+ * @see https://tailwindcss.com/docs/skew
2792
+ */
2793
+ "skew-y": [{ "skew-y": scaleSkew() }],
2794
+ /**
2795
+ * Transform
2796
+ * @see https://tailwindcss.com/docs/transform
2797
+ */
2798
+ transform: [{ transform: [
2799
+ isArbitraryVariable,
2800
+ isArbitraryValue,
2801
+ "",
2802
+ "none",
2803
+ "gpu",
2804
+ "cpu"
2805
+ ] }],
2806
+ /**
2807
+ * Transform Origin
2808
+ * @see https://tailwindcss.com/docs/transform-origin
2809
+ */
2810
+ "transform-origin": [{ origin: scalePositionWithArbitrary() }],
2811
+ /**
2812
+ * Transform Style
2813
+ * @see https://tailwindcss.com/docs/transform-style
2814
+ */
2815
+ "transform-style": [{ transform: ["3d", "flat"] }],
2816
+ /**
2817
+ * Translate
2818
+ * @see https://tailwindcss.com/docs/translate
2819
+ */
2820
+ translate: [{ translate: scaleTranslate() }],
2821
+ /**
2822
+ * Translate X
2823
+ * @see https://tailwindcss.com/docs/translate
2824
+ */
2825
+ "translate-x": [{ "translate-x": scaleTranslate() }],
2826
+ /**
2827
+ * Translate Y
2828
+ * @see https://tailwindcss.com/docs/translate
2829
+ */
2830
+ "translate-y": [{ "translate-y": scaleTranslate() }],
2831
+ /**
2832
+ * Translate Z
2833
+ * @see https://tailwindcss.com/docs/translate
2834
+ */
2835
+ "translate-z": [{ "translate-z": scaleTranslate() }],
2836
+ /**
2837
+ * Translate None
2838
+ * @see https://tailwindcss.com/docs/translate
2839
+ */
2840
+ "translate-none": ["translate-none"],
2841
+ /**
2842
+ * Zoom
2843
+ * @see https://tailwindcss.com/docs/zoom
2844
+ */
2845
+ zoom: [{ zoom: [
2846
+ isInteger,
2847
+ isArbitraryVariable,
2848
+ isArbitraryValue
2849
+ ] }],
2850
+ /**
2851
+ * Accent Color
2852
+ * @see https://tailwindcss.com/docs/accent-color
2853
+ */
2854
+ accent: [{ accent: scaleColor() }],
2855
+ /**
2856
+ * Appearance
2857
+ * @see https://tailwindcss.com/docs/appearance
2858
+ */
2859
+ appearance: [{ appearance: ["none", "auto"] }],
2860
+ /**
2861
+ * Caret Color
2862
+ * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
2863
+ */
2864
+ "caret-color": [{ caret: scaleColor() }],
2865
+ /**
2866
+ * Color Scheme
2867
+ * @see https://tailwindcss.com/docs/color-scheme
2868
+ */
2869
+ "color-scheme": [{ scheme: [
2870
+ "normal",
2871
+ "dark",
2872
+ "light",
2873
+ "light-dark",
2874
+ "only-dark",
2875
+ "only-light"
2876
+ ] }],
2877
+ /**
2878
+ * Cursor
2879
+ * @see https://tailwindcss.com/docs/cursor
2880
+ */
2881
+ cursor: [{ cursor: [
2882
+ "auto",
2883
+ "default",
2884
+ "pointer",
2885
+ "wait",
2886
+ "text",
2887
+ "move",
2888
+ "help",
2889
+ "not-allowed",
2890
+ "none",
2891
+ "context-menu",
2892
+ "progress",
2893
+ "cell",
2894
+ "crosshair",
2895
+ "vertical-text",
2896
+ "alias",
2897
+ "copy",
2898
+ "no-drop",
2899
+ "grab",
2900
+ "grabbing",
2901
+ "all-scroll",
2902
+ "col-resize",
2903
+ "row-resize",
2904
+ "n-resize",
2905
+ "e-resize",
2906
+ "s-resize",
2907
+ "w-resize",
2908
+ "ne-resize",
2909
+ "nw-resize",
2910
+ "se-resize",
2911
+ "sw-resize",
2912
+ "ew-resize",
2913
+ "ns-resize",
2914
+ "nesw-resize",
2915
+ "nwse-resize",
2916
+ "zoom-in",
2917
+ "zoom-out",
2918
+ isArbitraryVariable,
2919
+ isArbitraryValue
2920
+ ] }],
2921
+ /**
2922
+ * Field Sizing
2923
+ * @see https://tailwindcss.com/docs/field-sizing
2924
+ */
2925
+ "field-sizing": [{ "field-sizing": ["fixed", "content"] }],
2926
+ /**
2927
+ * Pointer Events
2928
+ * @see https://tailwindcss.com/docs/pointer-events
2929
+ */
2930
+ "pointer-events": [{ "pointer-events": ["auto", "none"] }],
2931
+ /**
2932
+ * Resize
2933
+ * @see https://tailwindcss.com/docs/resize
2934
+ */
2935
+ resize: [{ resize: [
2936
+ "none",
2937
+ "",
2938
+ "y",
2939
+ "x"
2940
+ ] }],
2941
+ /**
2942
+ * Scroll Behavior
2943
+ * @see https://tailwindcss.com/docs/scroll-behavior
2944
+ */
2945
+ "scroll-behavior": [{ scroll: ["auto", "smooth"] }],
2946
+ /**
2947
+ * Scrollbar Thumb Color
2948
+ * @see https://tailwindcss.com/docs/scrollbar-color
2949
+ */
2950
+ "scrollbar-thumb-color": [{ "scrollbar-thumb": scaleColor() }],
2951
+ /**
2952
+ * Scrollbar Track Color
2953
+ * @see https://tailwindcss.com/docs/scrollbar-color
2954
+ */
2955
+ "scrollbar-track-color": [{ "scrollbar-track": scaleColor() }],
2956
+ /**
2957
+ * Scrollbar Gutter
2958
+ * @see https://tailwindcss.com/docs/scrollbar-gutter
2959
+ */
2960
+ "scrollbar-gutter": [{ "scrollbar-gutter": [
2961
+ "auto",
2962
+ "stable",
2963
+ "both"
2964
+ ] }],
2965
+ /**
2966
+ * Scrollbar Width
2967
+ * @see https://tailwindcss.com/docs/scrollbar-width
2968
+ */
2969
+ "scrollbar-w": [{ scrollbar: [
2970
+ "auto",
2971
+ "thin",
2972
+ "none"
2973
+ ] }],
2974
+ /**
2975
+ * Scroll Margin
2976
+ * @see https://tailwindcss.com/docs/scroll-margin
2977
+ */
2978
+ "scroll-m": [{ "scroll-m": scaleUnambiguousSpacing() }],
2979
+ /**
2980
+ * Scroll Margin Inline
2981
+ * @see https://tailwindcss.com/docs/scroll-margin
2982
+ */
2983
+ "scroll-mx": [{ "scroll-mx": scaleUnambiguousSpacing() }],
2984
+ /**
2985
+ * Scroll Margin Block
2986
+ * @see https://tailwindcss.com/docs/scroll-margin
2987
+ */
2988
+ "scroll-my": [{ "scroll-my": scaleUnambiguousSpacing() }],
2989
+ /**
2990
+ * Scroll Margin Inline Start
2991
+ * @see https://tailwindcss.com/docs/scroll-margin
2992
+ */
2993
+ "scroll-ms": [{ "scroll-ms": scaleUnambiguousSpacing() }],
2994
+ /**
2995
+ * Scroll Margin Inline End
2996
+ * @see https://tailwindcss.com/docs/scroll-margin
2997
+ */
2998
+ "scroll-me": [{ "scroll-me": scaleUnambiguousSpacing() }],
2999
+ /**
3000
+ * Scroll Margin Block Start
3001
+ * @see https://tailwindcss.com/docs/scroll-margin
3002
+ */
3003
+ "scroll-mbs": [{ "scroll-mbs": scaleUnambiguousSpacing() }],
3004
+ /**
3005
+ * Scroll Margin Block End
3006
+ * @see https://tailwindcss.com/docs/scroll-margin
3007
+ */
3008
+ "scroll-mbe": [{ "scroll-mbe": scaleUnambiguousSpacing() }],
3009
+ /**
3010
+ * Scroll Margin Top
3011
+ * @see https://tailwindcss.com/docs/scroll-margin
3012
+ */
3013
+ "scroll-mt": [{ "scroll-mt": scaleUnambiguousSpacing() }],
3014
+ /**
3015
+ * Scroll Margin Right
3016
+ * @see https://tailwindcss.com/docs/scroll-margin
3017
+ */
3018
+ "scroll-mr": [{ "scroll-mr": scaleUnambiguousSpacing() }],
3019
+ /**
3020
+ * Scroll Margin Bottom
3021
+ * @see https://tailwindcss.com/docs/scroll-margin
3022
+ */
3023
+ "scroll-mb": [{ "scroll-mb": scaleUnambiguousSpacing() }],
3024
+ /**
3025
+ * Scroll Margin Left
3026
+ * @see https://tailwindcss.com/docs/scroll-margin
3027
+ */
3028
+ "scroll-ml": [{ "scroll-ml": scaleUnambiguousSpacing() }],
3029
+ /**
3030
+ * Scroll Padding
3031
+ * @see https://tailwindcss.com/docs/scroll-padding
3032
+ */
3033
+ "scroll-p": [{ "scroll-p": scaleUnambiguousSpacing() }],
3034
+ /**
3035
+ * Scroll Padding Inline
3036
+ * @see https://tailwindcss.com/docs/scroll-padding
3037
+ */
3038
+ "scroll-px": [{ "scroll-px": scaleUnambiguousSpacing() }],
3039
+ /**
3040
+ * Scroll Padding Block
3041
+ * @see https://tailwindcss.com/docs/scroll-padding
3042
+ */
3043
+ "scroll-py": [{ "scroll-py": scaleUnambiguousSpacing() }],
3044
+ /**
3045
+ * Scroll Padding Inline Start
3046
+ * @see https://tailwindcss.com/docs/scroll-padding
3047
+ */
3048
+ "scroll-ps": [{ "scroll-ps": scaleUnambiguousSpacing() }],
3049
+ /**
3050
+ * Scroll Padding Inline End
3051
+ * @see https://tailwindcss.com/docs/scroll-padding
3052
+ */
3053
+ "scroll-pe": [{ "scroll-pe": scaleUnambiguousSpacing() }],
3054
+ /**
3055
+ * Scroll Padding Block Start
3056
+ * @see https://tailwindcss.com/docs/scroll-padding
3057
+ */
3058
+ "scroll-pbs": [{ "scroll-pbs": scaleUnambiguousSpacing() }],
3059
+ /**
3060
+ * Scroll Padding Block End
3061
+ * @see https://tailwindcss.com/docs/scroll-padding
3062
+ */
3063
+ "scroll-pbe": [{ "scroll-pbe": scaleUnambiguousSpacing() }],
3064
+ /**
3065
+ * Scroll Padding Top
3066
+ * @see https://tailwindcss.com/docs/scroll-padding
3067
+ */
3068
+ "scroll-pt": [{ "scroll-pt": scaleUnambiguousSpacing() }],
3069
+ /**
3070
+ * Scroll Padding Right
3071
+ * @see https://tailwindcss.com/docs/scroll-padding
3072
+ */
3073
+ "scroll-pr": [{ "scroll-pr": scaleUnambiguousSpacing() }],
3074
+ /**
3075
+ * Scroll Padding Bottom
3076
+ * @see https://tailwindcss.com/docs/scroll-padding
3077
+ */
3078
+ "scroll-pb": [{ "scroll-pb": scaleUnambiguousSpacing() }],
3079
+ /**
3080
+ * Scroll Padding Left
3081
+ * @see https://tailwindcss.com/docs/scroll-padding
3082
+ */
3083
+ "scroll-pl": [{ "scroll-pl": scaleUnambiguousSpacing() }],
3084
+ /**
3085
+ * Scroll Snap Align
3086
+ * @see https://tailwindcss.com/docs/scroll-snap-align
3087
+ */
3088
+ "snap-align": [{ snap: [
3089
+ "start",
3090
+ "end",
3091
+ "center",
3092
+ "align-none"
3093
+ ] }],
3094
+ /**
3095
+ * Scroll Snap Stop
3096
+ * @see https://tailwindcss.com/docs/scroll-snap-stop
3097
+ */
3098
+ "snap-stop": [{ snap: ["normal", "always"] }],
3099
+ /**
3100
+ * Scroll Snap Type
3101
+ * @see https://tailwindcss.com/docs/scroll-snap-type
3102
+ */
3103
+ "snap-type": [{ snap: [
3104
+ "none",
3105
+ "x",
3106
+ "y",
3107
+ "both"
3108
+ ] }],
3109
+ /**
3110
+ * Scroll Snap Type Strictness
3111
+ * @see https://tailwindcss.com/docs/scroll-snap-type
3112
+ */
3113
+ "snap-strictness": [{ snap: ["mandatory", "proximity"] }],
3114
+ /**
3115
+ * Touch Action
3116
+ * @see https://tailwindcss.com/docs/touch-action
3117
+ */
3118
+ touch: [{ touch: [
3119
+ "auto",
3120
+ "none",
3121
+ "manipulation"
3122
+ ] }],
3123
+ /**
3124
+ * Touch Action X
3125
+ * @see https://tailwindcss.com/docs/touch-action
3126
+ */
3127
+ "touch-x": [{ "touch-pan": [
3128
+ "x",
3129
+ "left",
3130
+ "right"
3131
+ ] }],
3132
+ /**
3133
+ * Touch Action Y
3134
+ * @see https://tailwindcss.com/docs/touch-action
3135
+ */
3136
+ "touch-y": [{ "touch-pan": [
3137
+ "y",
3138
+ "up",
3139
+ "down"
3140
+ ] }],
3141
+ /**
3142
+ * Touch Action Pinch Zoom
3143
+ * @see https://tailwindcss.com/docs/touch-action
3144
+ */
3145
+ "touch-pz": ["touch-pinch-zoom"],
3146
+ /**
3147
+ * User Select
3148
+ * @see https://tailwindcss.com/docs/user-select
3149
+ */
3150
+ select: [{ select: [
3151
+ "none",
3152
+ "text",
3153
+ "all",
3154
+ "auto"
3155
+ ] }],
3156
+ /**
3157
+ * Will Change
3158
+ * @see https://tailwindcss.com/docs/will-change
3159
+ */
3160
+ "will-change": [{ "will-change": [
3161
+ "auto",
3162
+ "scroll",
3163
+ "contents",
3164
+ "transform",
3165
+ isArbitraryVariable,
3166
+ isArbitraryValue
3167
+ ] }],
3168
+ /**
3169
+ * Fill
3170
+ * @see https://tailwindcss.com/docs/fill
3171
+ */
3172
+ fill: [{ fill: ["none", ...scaleColor()] }],
3173
+ /**
3174
+ * Stroke Width
3175
+ * @see https://tailwindcss.com/docs/stroke-width
3176
+ */
3177
+ "stroke-w": [{ stroke: [
3178
+ isNumber,
3179
+ isArbitraryVariableLength,
3180
+ isArbitraryLength,
3181
+ isArbitraryNumber
3182
+ ] }],
3183
+ /**
3184
+ * Stroke
3185
+ * @see https://tailwindcss.com/docs/stroke
3186
+ */
3187
+ stroke: [{ stroke: ["none", ...scaleColor()] }],
3188
+ /**
3189
+ * Forced Color Adjust
3190
+ * @see https://tailwindcss.com/docs/forced-color-adjust
3191
+ */
3192
+ "forced-color-adjust": [{ "forced-color-adjust": ["auto", "none"] }]
3193
+ },
3194
+ conflictingClassGroups: {
3195
+ "container-named": ["container-type"],
3196
+ overflow: ["overflow-x", "overflow-y"],
3197
+ overscroll: ["overscroll-x", "overscroll-y"],
3198
+ inset: [
3199
+ "inset-x",
3200
+ "inset-y",
3201
+ "inset-bs",
3202
+ "inset-be",
3203
+ "start",
3204
+ "end",
3205
+ "top",
3206
+ "right",
3207
+ "bottom",
3208
+ "left"
3209
+ ],
3210
+ "inset-x": ["right", "left"],
3211
+ "inset-y": ["top", "bottom"],
3212
+ flex: [
3213
+ "basis",
3214
+ "grow",
3215
+ "shrink"
3216
+ ],
3217
+ gap: ["gap-x", "gap-y"],
3218
+ p: [
3219
+ "px",
3220
+ "py",
3221
+ "ps",
3222
+ "pe",
3223
+ "pbs",
3224
+ "pbe",
3225
+ "pt",
3226
+ "pr",
3227
+ "pb",
3228
+ "pl"
3229
+ ],
3230
+ px: ["pr", "pl"],
3231
+ py: ["pt", "pb"],
3232
+ m: [
3233
+ "mx",
3234
+ "my",
3235
+ "ms",
3236
+ "me",
3237
+ "mbs",
3238
+ "mbe",
3239
+ "mt",
3240
+ "mr",
3241
+ "mb",
3242
+ "ml"
3243
+ ],
3244
+ mx: ["mr", "ml"],
3245
+ my: ["mt", "mb"],
3246
+ size: ["w", "h"],
3247
+ "font-size": ["leading"],
3248
+ "fvn-normal": [
3249
+ "fvn-ordinal",
3250
+ "fvn-slashed-zero",
3251
+ "fvn-figure",
3252
+ "fvn-spacing",
3253
+ "fvn-fraction"
3254
+ ],
3255
+ "fvn-ordinal": ["fvn-normal"],
3256
+ "fvn-slashed-zero": ["fvn-normal"],
3257
+ "fvn-figure": ["fvn-normal"],
3258
+ "fvn-spacing": ["fvn-normal"],
3259
+ "fvn-fraction": ["fvn-normal"],
3260
+ "line-clamp": ["display", "overflow"],
3261
+ rounded: [
3262
+ "rounded-s",
3263
+ "rounded-e",
3264
+ "rounded-t",
3265
+ "rounded-r",
3266
+ "rounded-b",
3267
+ "rounded-l",
3268
+ "rounded-ss",
3269
+ "rounded-se",
3270
+ "rounded-ee",
3271
+ "rounded-es",
3272
+ "rounded-tl",
3273
+ "rounded-tr",
3274
+ "rounded-br",
3275
+ "rounded-bl"
3276
+ ],
3277
+ "rounded-s": ["rounded-ss", "rounded-es"],
3278
+ "rounded-e": ["rounded-se", "rounded-ee"],
3279
+ "rounded-t": ["rounded-tl", "rounded-tr"],
3280
+ "rounded-r": ["rounded-tr", "rounded-br"],
3281
+ "rounded-b": ["rounded-br", "rounded-bl"],
3282
+ "rounded-l": ["rounded-tl", "rounded-bl"],
3283
+ "border-spacing": ["border-spacing-x", "border-spacing-y"],
3284
+ "border-w": [
3285
+ "border-w-x",
3286
+ "border-w-y",
3287
+ "border-w-s",
3288
+ "border-w-e",
3289
+ "border-w-bs",
3290
+ "border-w-be",
3291
+ "border-w-t",
3292
+ "border-w-r",
3293
+ "border-w-b",
3294
+ "border-w-l"
3295
+ ],
3296
+ "border-w-x": ["border-w-r", "border-w-l"],
3297
+ "border-w-y": ["border-w-t", "border-w-b"],
3298
+ "border-color": [
3299
+ "border-color-x",
3300
+ "border-color-y",
3301
+ "border-color-s",
3302
+ "border-color-e",
3303
+ "border-color-bs",
3304
+ "border-color-be",
3305
+ "border-color-t",
3306
+ "border-color-r",
3307
+ "border-color-b",
3308
+ "border-color-l"
3309
+ ],
3310
+ "border-color-x": ["border-color-r", "border-color-l"],
3311
+ "border-color-y": ["border-color-t", "border-color-b"],
3312
+ translate: [
3313
+ "translate-x",
3314
+ "translate-y",
3315
+ "translate-none"
3316
+ ],
3317
+ "translate-none": [
3318
+ "translate",
3319
+ "translate-x",
3320
+ "translate-y",
3321
+ "translate-z"
3322
+ ],
3323
+ "scroll-m": [
3324
+ "scroll-mx",
3325
+ "scroll-my",
3326
+ "scroll-ms",
3327
+ "scroll-me",
3328
+ "scroll-mbs",
3329
+ "scroll-mbe",
3330
+ "scroll-mt",
3331
+ "scroll-mr",
3332
+ "scroll-mb",
3333
+ "scroll-ml"
3334
+ ],
3335
+ "scroll-mx": ["scroll-mr", "scroll-ml"],
3336
+ "scroll-my": ["scroll-mt", "scroll-mb"],
3337
+ "scroll-p": [
3338
+ "scroll-px",
3339
+ "scroll-py",
3340
+ "scroll-ps",
3341
+ "scroll-pe",
3342
+ "scroll-pbs",
3343
+ "scroll-pbe",
3344
+ "scroll-pt",
3345
+ "scroll-pr",
3346
+ "scroll-pb",
3347
+ "scroll-pl"
3348
+ ],
3349
+ "scroll-px": ["scroll-pr", "scroll-pl"],
3350
+ "scroll-py": ["scroll-pt", "scroll-pb"],
3351
+ touch: [
3352
+ "touch-x",
3353
+ "touch-y",
3354
+ "touch-pz"
3355
+ ],
3356
+ "touch-x": ["touch"],
3357
+ "touch-y": ["touch"],
3358
+ "touch-pz": ["touch"]
3359
+ },
3360
+ conflictingClassGroupModifiers: { "font-size": ["leading"] },
3361
+ postfixLookupClassGroups: ["container-type"],
3362
+ orderSensitiveModifiers: [
3363
+ "*",
3364
+ "**",
3365
+ "after",
3366
+ "backdrop",
3367
+ "before",
3368
+ "details-content",
3369
+ "file",
3370
+ "first-letter",
3371
+ "first-line",
3372
+ "marker",
3373
+ "placeholder",
3374
+ "selection"
3375
+ ]
3376
+ };
3377
+ };
3378
+ var twMerge = /*#__PURE__*/ createTailwindMerge(getDefaultConfig);
3379
+ //#endregion
3380
+ export { twMerge as t };