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