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