@hiroi/react-youtube 0.0.2 → 0.0.3

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