tailwind-clamp 2.2.3 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../node_modules/.pnpm/tailwindcss@3.4.14/node_modules/tailwindcss/lib/util/createPlugin.js","../node_modules/.pnpm/tailwindcss@3.4.14/node_modules/tailwindcss/lib/public/create-plugin.js","../node_modules/.pnpm/tailwindcss@3.4.14/node_modules/tailwindcss/plugin.js","../lib/resolve-property.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/ansi-styles/index.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/supports-color/browser.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/utilities.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/index.js","../lib/log.js","../lib/parse-value.js","../lib/clamp.js","../lib/index.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nfunction createPlugin(plugin, config) {\n return {\n handler: plugin,\n config\n };\n}\ncreatePlugin.withOptions = function(pluginFunction, configFunction = ()=>({})) {\n const optionsFunction = function(options) {\n return {\n __options: options,\n handler: pluginFunction(options),\n config: configFunction(options)\n };\n };\n optionsFunction.__isOptionsFunction = true;\n // Expose plugin dependencies so that `object-hash` returns a different\n // value if anything here changes, to ensure a rebuild is triggered.\n optionsFunction.__pluginFunction = pluginFunction;\n optionsFunction.__configFunction = configFunction;\n return optionsFunction;\n};\nconst _default = createPlugin;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nconst _createPlugin = /*#__PURE__*/ _interop_require_default(require(\"../util/createPlugin\"));\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nconst _default = _createPlugin.default;\n","let createPlugin = require('./lib/public/create-plugin')\nmodule.exports = (createPlugin.__esModule ? createPlugin : { default: createPlugin }).default\n","const cssTransformValue = [\n 'translate(var(--tw-translate-x), var(--tw-translate-y))',\n 'rotate(var(--tw-rotate))',\n 'skewX(var(--tw-skew-x))',\n 'skewY(var(--tw-skew-y))',\n 'scaleX(var(--tw-scale-x))',\n 'scaleY(var(--tw-scale-y))',\n].join(' ');\n\nexport const resolveProperty = (name) => {\n switch (name) {\n case 'p':\n return {\n key: 'padding',\n props: ['padding'],\n };\n case 'pt':\n return {\n key: 'padding',\n props: ['paddingTop'],\n };\n case 'pb':\n return {\n key: 'padding',\n props: ['paddingBottom'],\n };\n case 'pl':\n return {\n key: 'padding',\n props: ['paddingLeft'],\n };\n case 'pr':\n return {\n key: 'padding',\n props: ['paddingRight'],\n };\n case 'px':\n return {\n key: 'padding',\n props: ['paddingLeft', 'paddingRight'],\n };\n case 'py':\n return {\n key: 'padding',\n props: ['paddingTop', 'paddingBottom'],\n };\n case 'm':\n return {\n key: 'margin',\n props: ['margin'],\n };\n case 'mt':\n return {\n key: 'margin',\n props: ['marginTop'],\n };\n case 'mb':\n return {\n key: 'margin',\n props: ['marginBottom'],\n };\n case 'ml':\n return {\n key: 'margin',\n props: ['marginLeft'],\n };\n case 'mr':\n return {\n key: 'margin',\n props: ['marginRight'],\n };\n case 'mx':\n return {\n key: 'margin',\n props: ['marginLeft', 'marginRight'],\n };\n case 'my':\n return {\n key: 'margin',\n props: ['marginTop', 'marginBottom'],\n };\n case 'inset':\n return {\n key: 'inset',\n props: ['top', 'left', 'right', 'bottom'],\n };\n case 'top':\n return {\n key: 'inset',\n props: ['top'],\n };\n\n case 'left':\n return {\n key: 'inset',\n props: ['left'],\n };\n case 'right':\n return {\n key: 'inset',\n props: ['right'],\n };\n case 'bottom':\n return {\n key: 'inset',\n props: ['bottom'],\n };\n case 'text':\n return {\n key: 'fontSize',\n props: ['fontSize'],\n };\n case 'gap':\n return {\n key: 'gap',\n props: ['gap'],\n };\n case 'gap-x':\n return {\n key: 'gap',\n props: ['columnGap'],\n };\n case 'gap-y':\n return {\n key: 'gap',\n props: ['rowGap'],\n };\n case 'w':\n return {\n key: 'width',\n props: ['width'],\n };\n case 'h':\n return {\n key: 'height',\n props: ['height'],\n };\n case 'size':\n return {\n key: 'size',\n props: ['width', 'height'],\n };\n\n case 'min-w':\n return {\n key: 'minWidth',\n props: ['minWidth'],\n };\n\n case 'min-h':\n return {\n key: 'minHeight',\n props: ['minHeight'],\n };\n\n case 'max-w':\n return {\n key: 'maxWidth',\n props: ['maxWidth'],\n };\n\n case 'max-h':\n return {\n key: 'maxHeight',\n props: ['maxHeight'],\n };\n\n case 'rounded':\n return {\n key: 'borderRadius',\n props: ['borderRadius'],\n };\n\n case 'rounded-t':\n return {\n key: 'borderRadius',\n props: ['borderTopLeftRadius', 'borderTopRightRadius'],\n };\n\n case 'rounded-r':\n return {\n key: 'borderRadius',\n props: ['borderTopRightRadius', 'borderBottomRightRadius'],\n };\n\n case 'rounded-b':\n return {\n key: 'borderRadius',\n props: ['borderBottomLeftRadius', 'borderBottomRightRadius'],\n };\n\n case 'rounded-l':\n return {\n key: 'borderRadius',\n props: ['borderTopLeftRadius', 'borderBottomLeftRadius'],\n };\n\n case 'rounded-tl':\n return {\n key: 'borderRadius',\n props: ['borderTopLeftRadius'],\n };\n\n case 'rounded-tr':\n return {\n key: 'borderRadius',\n props: ['borderTopRightRadius'],\n };\n\n case 'rounded-bl':\n return {\n key: 'borderRadius',\n props: ['borderBottomLeftRadius'],\n };\n\n case 'rounded-br':\n return {\n key: 'borderRadius',\n props: ['borderBottomRightRadius'],\n };\n\n case 'translate-x':\n return {\n key: 'translate',\n props: [\n '--tw-translate-x',\n { '@defaults transform': {} },\n { transform: cssTransformValue },\n ],\n };\n\n case 'translate-y':\n return {\n key: 'translate',\n props: [\n '--tw-translate-y',\n { '@defaults transform': {} },\n { transform: cssTransformValue },\n ],\n };\n case 'stroke':\n return {\n key: 'strokeWidth',\n props: ['strokeWidth'],\n };\n\n case 'leading':\n return {\n key: 'lineHeight',\n props: ['lineHeight'],\n };\n\n case 'border':\n return {\n key: 'borderWidth',\n props: ['borderWidth'],\n };\n case 'border-t':\n return {\n key: 'borderWidth',\n props: ['borderTopWidth'],\n };\n case 'border-b':\n return {\n key: 'borderWidth',\n props: ['borderBottomWidth'],\n };\n\n case 'border-l':\n return {\n key: 'borderWidth',\n props: ['borderLeftWidth'],\n };\n\n case 'border-r':\n return {\n key: 'borderWidth',\n props: ['borderRightWidth'],\n };\n\n case 'border-x':\n return {\n key: 'borderWidth',\n props: ['borderLeftWidth', 'borderRightWidth'],\n };\n\n case 'border-y':\n return {\n key: 'borderWidth',\n props: ['borderTopWidth', 'borderBottomWidth'],\n };\n\n case 'scroll-m':\n return {\n key: 'scrollMargin',\n props: ['scrollMargin'],\n };\n\n default:\n return null;\n }\n};\n","const ANSI_BACKGROUND_OFFSET = 10;\n\nconst wrapAnsi16 = (offset = 0) => code => `\\u001B[${code + offset}m`;\n\nconst wrapAnsi256 = (offset = 0) => code => `\\u001B[${38 + offset};5;${code}m`;\n\nconst wrapAnsi16m = (offset = 0) => (red, green, blue) => `\\u001B[${38 + offset};2;${red};${green};${blue}m`;\n\nconst styles = {\n\tmodifier: {\n\t\treset: [0, 0],\n\t\t// 21 isn't widely supported and 22 does the same thing\n\t\tbold: [1, 22],\n\t\tdim: [2, 22],\n\t\titalic: [3, 23],\n\t\tunderline: [4, 24],\n\t\toverline: [53, 55],\n\t\tinverse: [7, 27],\n\t\thidden: [8, 28],\n\t\tstrikethrough: [9, 29],\n\t},\n\tcolor: {\n\t\tblack: [30, 39],\n\t\tred: [31, 39],\n\t\tgreen: [32, 39],\n\t\tyellow: [33, 39],\n\t\tblue: [34, 39],\n\t\tmagenta: [35, 39],\n\t\tcyan: [36, 39],\n\t\twhite: [37, 39],\n\n\t\t// Bright color\n\t\tblackBright: [90, 39],\n\t\tgray: [90, 39], // Alias of `blackBright`\n\t\tgrey: [90, 39], // Alias of `blackBright`\n\t\tredBright: [91, 39],\n\t\tgreenBright: [92, 39],\n\t\tyellowBright: [93, 39],\n\t\tblueBright: [94, 39],\n\t\tmagentaBright: [95, 39],\n\t\tcyanBright: [96, 39],\n\t\twhiteBright: [97, 39],\n\t},\n\tbgColor: {\n\t\tbgBlack: [40, 49],\n\t\tbgRed: [41, 49],\n\t\tbgGreen: [42, 49],\n\t\tbgYellow: [43, 49],\n\t\tbgBlue: [44, 49],\n\t\tbgMagenta: [45, 49],\n\t\tbgCyan: [46, 49],\n\t\tbgWhite: [47, 49],\n\n\t\t// Bright color\n\t\tbgBlackBright: [100, 49],\n\t\tbgGray: [100, 49], // Alias of `bgBlackBright`\n\t\tbgGrey: [100, 49], // Alias of `bgBlackBright`\n\t\tbgRedBright: [101, 49],\n\t\tbgGreenBright: [102, 49],\n\t\tbgYellowBright: [103, 49],\n\t\tbgBlueBright: [104, 49],\n\t\tbgMagentaBright: [105, 49],\n\t\tbgCyanBright: [106, 49],\n\t\tbgWhiteBright: [107, 49],\n\t},\n};\n\nexport const modifierNames = Object.keys(styles.modifier);\nexport const foregroundColorNames = Object.keys(styles.color);\nexport const backgroundColorNames = Object.keys(styles.bgColor);\nexport const colorNames = [...foregroundColorNames, ...backgroundColorNames];\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`,\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false,\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false,\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tstyles.color.ansi = wrapAnsi16();\n\tstyles.color.ansi256 = wrapAnsi256();\n\tstyles.color.ansi16m = wrapAnsi16m();\n\tstyles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);\n\n\t// From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js\n\tObject.defineProperties(styles, {\n\t\trgbToAnsi256: {\n\t\t\tvalue(red, green, blue) {\n\t\t\t\t// We use the extended greyscale palette here, with the exception of\n\t\t\t\t// black and white. normal palette only has 4 greyscale shades.\n\t\t\t\tif (red === green && green === blue) {\n\t\t\t\t\tif (red < 8) {\n\t\t\t\t\t\treturn 16;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (red > 248) {\n\t\t\t\t\t\treturn 231;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Math.round(((red - 8) / 247) * 24) + 232;\n\t\t\t\t}\n\n\t\t\t\treturn 16\n\t\t\t\t\t+ (36 * Math.round(red / 255 * 5))\n\t\t\t\t\t+ (6 * Math.round(green / 255 * 5))\n\t\t\t\t\t+ Math.round(blue / 255 * 5);\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToRgb: {\n\t\t\tvalue(hex) {\n\t\t\t\tconst matches = /[a-f\\d]{6}|[a-f\\d]{3}/i.exec(hex.toString(16));\n\t\t\t\tif (!matches) {\n\t\t\t\t\treturn [0, 0, 0];\n\t\t\t\t}\n\n\t\t\t\tlet [colorString] = matches;\n\n\t\t\t\tif (colorString.length === 3) {\n\t\t\t\t\tcolorString = [...colorString].map(character => character + character).join('');\n\t\t\t\t}\n\n\t\t\t\tconst integer = Number.parseInt(colorString, 16);\n\n\t\t\t\treturn [\n\t\t\t\t\t/* eslint-disable no-bitwise */\n\t\t\t\t\t(integer >> 16) & 0xFF,\n\t\t\t\t\t(integer >> 8) & 0xFF,\n\t\t\t\t\tinteger & 0xFF,\n\t\t\t\t\t/* eslint-enable no-bitwise */\n\t\t\t\t];\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi256: {\n\t\t\tvalue: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t\tansi256ToAnsi: {\n\t\t\tvalue(code) {\n\t\t\t\tif (code < 8) {\n\t\t\t\t\treturn 30 + code;\n\t\t\t\t}\n\n\t\t\t\tif (code < 16) {\n\t\t\t\t\treturn 90 + (code - 8);\n\t\t\t\t}\n\n\t\t\t\tlet red;\n\t\t\t\tlet green;\n\t\t\t\tlet blue;\n\n\t\t\t\tif (code >= 232) {\n\t\t\t\t\tred = (((code - 232) * 10) + 8) / 255;\n\t\t\t\t\tgreen = red;\n\t\t\t\t\tblue = red;\n\t\t\t\t} else {\n\t\t\t\t\tcode -= 16;\n\n\t\t\t\t\tconst remainder = code % 36;\n\n\t\t\t\t\tred = Math.floor(code / 36) / 5;\n\t\t\t\t\tgreen = Math.floor(remainder / 6) / 5;\n\t\t\t\t\tblue = (remainder % 6) / 5;\n\t\t\t\t}\n\n\t\t\t\tconst value = Math.max(red, green, blue) * 2;\n\n\t\t\t\tif (value === 0) {\n\t\t\t\t\treturn 30;\n\t\t\t\t}\n\n\t\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\t\tlet result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));\n\n\t\t\t\tif (value === 2) {\n\t\t\t\t\tresult += 60;\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\trgbToAnsi: {\n\t\t\tvalue: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi: {\n\t\t\tvalue: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t});\n\n\treturn styles;\n}\n\nconst ansiStyles = assembleStyles();\n\nexport default ansiStyles;\n","/* eslint-env browser */\n\nconst level = (() => {\n\tif (navigator.userAgentData) {\n\t\tconst brand = navigator.userAgentData.brands.find(({brand}) => brand === 'Chromium');\n\t\tif (brand && brand.version > 93) {\n\t\t\treturn 3;\n\t\t}\n\t}\n\n\tif (/\\b(Chrome|Chromium)\\//.test(navigator.userAgent)) {\n\t\treturn 1;\n\t}\n\n\treturn 0;\n})();\n\nconst colorSupport = level !== 0 && {\n\tlevel,\n\thasBasic: true,\n\thas256: level >= 2,\n\thas16m: level >= 3,\n};\n\nconst supportsColor = {\n\tstdout: colorSupport,\n\tstderr: colorSupport,\n};\n\nexport default supportsColor;\n","// TODO: When targeting Node.js 16, use `String.prototype.replaceAll`.\nexport function stringReplaceAll(string, substring, replacer) {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.slice(endIndex, index) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n\nexport function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.slice(endIndex, (gotCR ? index - 1 : index)) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n","import ansiStyles from '#ansi-styles';\nimport supportsColor from '#supports-color';\nimport { // eslint-disable-line import/order\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex,\n} from './utilities.js';\n\nconst {stdout: stdoutColor, stderr: stderrColor} = supportsColor;\n\nconst GENERATOR = Symbol('GENERATOR');\nconst STYLER = Symbol('STYLER');\nconst IS_EMPTY = Symbol('IS_EMPTY');\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m',\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nexport class Chalk {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = (...strings) => strings.join(' ');\n\tapplyOptions(chalk, options);\n\n\tObject.setPrototypeOf(chalk, createChalk.prototype);\n\n\treturn chalk;\n};\n\nfunction createChalk(options) {\n\treturn chalkFactory(options);\n}\n\nObject.setPrototypeOf(createChalk.prototype, Function.prototype);\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t},\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this[STYLER], true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t},\n};\n\nconst getModelAnsi = (model, level, type, ...arguments_) => {\n\tif (model === 'rgb') {\n\t\tif (level === 'ansi16m') {\n\t\t\treturn ansiStyles[type].ansi16m(...arguments_);\n\t\t}\n\n\t\tif (level === 'ansi256') {\n\t\t\treturn ansiStyles[type].ansi256(ansiStyles.rgbToAnsi256(...arguments_));\n\t\t}\n\n\t\treturn ansiStyles[type].ansi(ansiStyles.rgbToAnsi(...arguments_));\n\t}\n\n\tif (model === 'hex') {\n\t\treturn getModelAnsi('rgb', level, type, ...ansiStyles.hexToRgb(...arguments_));\n\t}\n\n\treturn ansiStyles[type][model](...arguments_);\n};\n\nconst usedModels = ['rgb', 'hex', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'color', ...arguments_), ansiStyles.color.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'bgColor', ...arguments_), ansiStyles.bgColor.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this[GENERATOR].level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis[GENERATOR].level = level;\n\t\t},\n\t},\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent,\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\t// Single argument is hot path, implicit coercion is faster than anything\n\t// eslint-disable-next-line no-implicit-coercion\n\tconst builder = (...arguments_) => applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder[GENERATOR] = self;\n\tbuilder[STYLER] = _styler;\n\tbuilder[IS_EMPTY] = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self[IS_EMPTY] ? '' : string;\n\t}\n\n\tlet styler = self[STYLER];\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.includes('\\u001B')) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nObject.defineProperties(createChalk.prototype, styles);\n\nconst chalk = createChalk();\nexport const chalkStderr = createChalk({level: stderrColor ? stderrColor.level : 0});\n\nexport {\n\tmodifierNames,\n\tforegroundColorNames,\n\tbackgroundColorNames,\n\tcolorNames,\n\n\t// TODO: Remove these aliases in the next major version\n\tmodifierNames as modifiers,\n\tforegroundColorNames as foregroundColors,\n\tbackgroundColorNames as backgroundColors,\n\tcolorNames as colors,\n} from './vendor/ansi-styles/index.js';\n\nexport {\n\tstdoutColor as supportsColor,\n\tstderrColor as supportsColorStderr,\n};\n\nexport default chalk;\n","import chalk from 'chalk';\n\nexport const log = {\n error() {\n console.log(chalk.red(...arguments));\n },\n warn() {\n console.log(chalk.yellow(...arguments));\n },\n info() {\n console.log(chalk.blue(...arguments));\n },\n log() {\n console.log(chalk.gray(...arguments));\n },\n};\n","import { log } from './log.js';\n\nexport const parseValue = (v) => {\n const value = `${v}`;\n const number = parseFloat(value);\n let unit = 'unsupported';\n\n if (/^\\d+$/.test(value) && number !== 0) {\n unit = 'px';\n }\n\n const match = value.match(/px|rem|em/);\n if (match) {\n unit = match[0];\n }\n\n if (number === 0) {\n unit = 'zero';\n }\n\n return { number, unit };\n};\n\nexport const parseFontSizeValue = (value) => {\n const values = {};\n if (typeof value === 'string') {\n values.fontSize = parseValue(value);\n } else if (Array.isArray(value)) {\n values.fontSize = parseValue(value[0]);\n if (typeof value[1] === 'string') {\n values.lineHeight = parseValue(value[1]);\n } else if (typeof value[1] === 'object') {\n if ('lineHeight' in value[1]) {\n values.lineHeight = parseValue(value[1].lineHeight);\n }\n if ('letterSpacing' in value[1]) {\n values.letterSpacing = parseValue(value[1].letterSpacing);\n }\n }\n }\n return values;\n};\n\nexport const checkValues = (start, end, value, prop = null) => {\n if (start.number === end.number) {\n log.error(\n `Same value for start an end${\n prop ? ` (${prop})` : ''\n }: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n if (start.unit !== end.unit && start.unit !== 'zero' && end.unit !== 'zero') {\n log.error(\n `Units need to match${prop ? ` (${prop})` : ''}: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n if (start.unit === 'unsupported' || end.unit === 'unsupported') {\n log.error(\n `Only px, rem and em units are supported${\n prop ? ` (${prop})` : ''\n }: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n return true;\n};\n","// https://chriskirknielsen.com/blog/modern-fluid-typography-with-clamp/\n\nexport const clamp = (\n _start,\n _end,\n _minvw = { number: 375, unit: 'px' },\n _maxvw = { number: 1440, unit: 'px' }\n) => {\n const unit = _start.unit === 'zero' ? _end.unit : _start.unit;\n const isPx = unit === 'px';\n\n let start = _start.number;\n let end = _end.number;\n let negative = false;\n\n let minvw = _minvw.number;\n let maxvw = _maxvw.number;\n\n if (_minvw.unit !== 'px' && isPx) {\n minvw = _minvw.number * 16;\n }\n\n if (_minvw.unit === 'px' && !isPx) {\n minvw = _minvw.number / 16;\n }\n\n if (_maxvw.unit !== 'px' && isPx) {\n maxvw = _maxvw.number * 16;\n }\n\n if (_maxvw.unit === 'px' && !isPx) {\n maxvw = _maxvw.number / 16;\n }\n\n if (end < start && start < 0 && end < 0) {\n start = Math.abs(start);\n end = Math.abs(end);\n negative = true;\n } else if (end < start && start > 0 && end > 0) {\n start = start * -1;\n end = end * -1;\n negative = true;\n } else if (end < start) {\n start = Math.abs(start) * -1;\n end = Math.abs(end);\n negative = true;\n }\n\n const slope = (end - start) / (maxvw - minvw);\n const calc = `${(start - minvw * slope).toFixed(6)}${unit} + ${(\n 100 * slope\n ).toFixed(6)}vw`;\n\n const value = `clamp(${start}${unit}, ${calc}, ${end}${unit})`;\n\n return negative ? `calc(${value} * -1)` : value;\n};\n\nconst defaultOptions = {\n unit: 'rem',\n minViewportWidth: 375,\n maxViewportWidth: 1440,\n};\n\nexport const clampValue = (\n start,\n end,\n options = {\n unit: 'rem',\n minViewportWidth: 375,\n maxViewportWidth: 1440,\n }\n) => {\n const o = { ...defaultOptions, ...options };\n\n const convert = (val) => (o.unit === 'rem' ? val / 16 : val);\n\n return clamp(\n { number: convert(start), unit: o.unit },\n { number: convert(end), unit: o.unit },\n { number: convert(o.minViewportWidth), unit: o.unit },\n { number: convert(o.maxViewportWidth), unit: o.unit }\n );\n};\n","import plugin from 'tailwindcss/plugin';\nimport { resolveProperty } from './resolve-property.js';\nimport { log } from './log.js';\nimport { parseValue, parseFontSizeValue, checkValues } from './parse-value.js';\nimport { clamp, clampValue as cv } from './clamp.js';\n\nconst defaultOptions = {\n minViewportWidth: 375,\n maxViewportWidth: 1440,\n};\n\nexport const clampValue = cv;\n\nexport const tailwindClamp = plugin.withOptions(function (\n options = defaultOptions\n) {\n return function ({ matchUtilities, theme, config }) {\n matchUtilities(\n {\n clamp: (value) => {\n const args = value.split(',');\n\n const minvw = parseValue(\n config().theme.screens[args[3]] ||\n args[3] ||\n options.minViewportWidth ||\n defaultOptions.minViewportWidth\n );\n\n const maxvw = parseValue(\n config().theme.screens[args[4]] ||\n args[4] ||\n options.maxViewportWidth ||\n defaultOptions.maxViewportWidth\n );\n\n if (args.length < 3) {\n log.error(\n `The clamp utility requires at least 3 arguments: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n const resolvedProp = resolveProperty(args[0]);\n\n if (!resolvedProp) {\n log.error(\n `Property \"${args[0]}\" is not supported: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n const { key, props } = resolvedProp;\n\n // handle fontSize separately\n if (key === 'fontSize') {\n const start = parseFontSizeValue(\n config().theme[key][args[1]] || args[1]\n );\n const end = parseFontSizeValue(\n config().theme[key][args[2]] || args[2]\n );\n\n const css = {};\n\n Object.keys(start).forEach((k) => {\n if (k in end && checkValues(start[k], end[k], value, k)) {\n const val = clamp(start[k], end[k], minvw, maxvw);\n css[k] = val;\n }\n });\n\n return Object.keys(css).length > 0 ? css : null;\n }\n\n // handle other properties\n const startNegative = args[1].startsWith('-');\n const endNegative = args[2].startsWith('-');\n\n const startVal = startNegative ? args[1].slice(1) : args[1];\n const endVal = endNegative ? args[2].slice(1) : args[2];\n\n const start = parseValue(config().theme[key][startVal] || startVal);\n const end = parseValue(config().theme[key][endVal] || endVal);\n\n if (startNegative) start.number = start.number * -1;\n if (endNegative) end.number = end.number * -1;\n\n if (!checkValues(start, end, value)) {\n return null;\n }\n\n const val = clamp(start, end, minvw, maxvw);\n\n const css = props.reduce((acc, prop) => {\n if (typeof prop === 'string') {\n acc[prop] = val;\n } else {\n acc = { ...acc, ...prop };\n }\n return acc;\n }, {});\n\n return css;\n },\n },\n { values: theme('clamp') }\n );\n };\n});\n"],"names":["exports","_default","createPlugin","plugin","config","pluginFunction","configFunction","optionsFunction","options","_createPlugin","_interop_require_default","require$$0","obj","cssTransformValue","resolveProperty","name","ANSI_BACKGROUND_OFFSET","wrapAnsi16","offset","code","wrapAnsi256","wrapAnsi16m","red","green","blue","styles","foregroundColorNames","backgroundColorNames","assembleStyles","codes","groupName","group","styleName","style","hex","matches","colorString","character","integer","remainder","value","result","ansiStyles","level","brand","colorSupport","supportsColor","stringReplaceAll","string","substring","replacer","index","substringLength","endIndex","returnValue","stringEncaseCRLFWithFirstIndex","prefix","postfix","gotCR","stdoutColor","stderrColor","GENERATOR","STYLER","IS_EMPTY","levelMapping","applyOptions","object","colorLevel","chalkFactory","chalk","strings","createChalk","builder","createBuilder","createStyler","getModelAnsi","model","type","arguments_","usedModels","styler","bgModel","proto","open","close","parent","openAll","closeAll","self","_styler","_isEmpty","applyStyle","lfIndex","log","parseValue","v","number","unit","match","parseFontSizeValue","values","checkValues","start","end","prop","clamp","_start","_end","_minvw","_maxvw","isPx","negative","minvw","maxvw","slope","calc","defaultOptions","clampValue","o","convert","val","cv","tailwindClamp","matchUtilities","theme","args","resolvedProp","key","props","css","k","startNegative","endNegative","startVal","endVal","acc"],"mappings":"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","x_google_ignoreList":[0,1,2,4,5,6,7]}
@@ -0,0 +1,6 @@
1
+ (function(h,k){typeof exports=="object"&&typeof module<"u"?k(exports):typeof define=="function"&&define.amd?define(["exports"],k):(h=typeof globalThis<"u"?globalThis:h||self,k(h["tailwind-clamp"]={}))})(this,function(h){"use strict";function k(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var z={},_={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return n}});function e(r,o){return{handler:r,config:o}}e.withOptions=function(r,o=()=>({})){const s=function(i){return{__options:i,handler:r(i),config:o(i)}};return s.__isOptionsFunction=!0,s.__pluginFunction=r,s.__configFunction=o,s};const n=e})(_),function(t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r}});const e=n(_);function n(o){return o&&o.__esModule?o:{default:o}}const r=e.default}(z);let S=z;var Z=(S.__esModule?S:{default:S}).default;const ee=k(Z),H=["translate(var(--tw-translate-x), var(--tw-translate-y))","rotate(var(--tw-rotate))","skewX(var(--tw-skew-x))","skewY(var(--tw-skew-y))","scaleX(var(--tw-scale-x))","scaleY(var(--tw-scale-y))"].join(" "),te=t=>{switch(t){case"p":return{key:"padding",props:["padding"]};case"pt":return{key:"padding",props:["paddingTop"]};case"pb":return{key:"padding",props:["paddingBottom"]};case"pl":return{key:"padding",props:["paddingLeft"]};case"pr":return{key:"padding",props:["paddingRight"]};case"px":return{key:"padding",props:["paddingLeft","paddingRight"]};case"py":return{key:"padding",props:["paddingTop","paddingBottom"]};case"m":return{key:"margin",props:["margin"]};case"mt":return{key:"margin",props:["marginTop"]};case"mb":return{key:"margin",props:["marginBottom"]};case"ml":return{key:"margin",props:["marginLeft"]};case"mr":return{key:"margin",props:["marginRight"]};case"mx":return{key:"margin",props:["marginLeft","marginRight"]};case"my":return{key:"margin",props:["marginTop","marginBottom"]};case"inset":return{key:"inset",props:["top","left","right","bottom"]};case"top":return{key:"inset",props:["top"]};case"left":return{key:"inset",props:["left"]};case"right":return{key:"inset",props:["right"]};case"bottom":return{key:"inset",props:["bottom"]};case"text":return{key:"fontSize",props:["fontSize"]};case"gap":return{key:"gap",props:["gap"]};case"gap-x":return{key:"gap",props:["columnGap"]};case"gap-y":return{key:"gap",props:["rowGap"]};case"w":return{key:"width",props:["width"]};case"h":return{key:"height",props:["height"]};case"size":return{key:"size",props:["width","height"]};case"min-w":return{key:"minWidth",props:["minWidth"]};case"min-h":return{key:"minHeight",props:["minHeight"]};case"max-w":return{key:"maxWidth",props:["maxWidth"]};case"max-h":return{key:"maxHeight",props:["maxHeight"]};case"rounded":return{key:"borderRadius",props:["borderRadius"]};case"rounded-t":return{key:"borderRadius",props:["borderTopLeftRadius","borderTopRightRadius"]};case"rounded-r":return{key:"borderRadius",props:["borderTopRightRadius","borderBottomRightRadius"]};case"rounded-b":return{key:"borderRadius",props:["borderBottomLeftRadius","borderBottomRightRadius"]};case"rounded-l":return{key:"borderRadius",props:["borderTopLeftRadius","borderBottomLeftRadius"]};case"rounded-tl":return{key:"borderRadius",props:["borderTopLeftRadius"]};case"rounded-tr":return{key:"borderRadius",props:["borderTopRightRadius"]};case"rounded-bl":return{key:"borderRadius",props:["borderBottomLeftRadius"]};case"rounded-br":return{key:"borderRadius",props:["borderBottomRightRadius"]};case"translate-x":return{key:"translate",props:["--tw-translate-x",{"@defaults transform":{}},{transform:H}]};case"translate-y":return{key:"translate",props:["--tw-translate-y",{"@defaults transform":{}},{transform:H}]};case"stroke":return{key:"strokeWidth",props:["strokeWidth"]};case"leading":return{key:"lineHeight",props:["lineHeight"]};case"border":return{key:"borderWidth",props:["borderWidth"]};case"border-t":return{key:"borderWidth",props:["borderTopWidth"]};case"border-b":return{key:"borderWidth",props:["borderBottomWidth"]};case"border-l":return{key:"borderWidth",props:["borderLeftWidth"]};case"border-r":return{key:"borderWidth",props:["borderRightWidth"]};case"border-x":return{key:"borderWidth",props:["borderLeftWidth","borderRightWidth"]};case"border-y":return{key:"borderWidth",props:["borderTopWidth","borderBottomWidth"]};case"scroll-m":return{key:"scrollMargin",props:["scrollMargin"]};default:return null}},P=10,G=(t=0)=>e=>`\x1B[${e+t}m`,I=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,Y=(t=0)=>(e,n,r)=>`\x1B[${38+t};2;${e};${n};${r}m`,a={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(a.modifier);const re=Object.keys(a.color),ne=Object.keys(a.bgColor);[...re,...ne];function oe(){const t=new Map;for(const[e,n]of Object.entries(a)){for(const[r,o]of Object.entries(n))a[r]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},n[r]=a[r],t.set(o[0],o[1]);Object.defineProperty(a,e,{value:n,enumerable:!1})}return Object.defineProperty(a,"codes",{value:t,enumerable:!1}),a.color.close="\x1B[39m",a.bgColor.close="\x1B[49m",a.color.ansi=G(),a.color.ansi256=I(),a.color.ansi16m=Y(),a.bgColor.ansi=G(P),a.bgColor.ansi256=I(P),a.bgColor.ansi16m=Y(P),Object.defineProperties(a,{rgbToAnsi256:{value(e,n,r){return e===n&&n===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},enumerable:!1},hexToRgb:{value(e){const n=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!n)return[0,0,0];let[r]=n;r.length===3&&(r=[...r].map(s=>s+s).join(""));const o=Number.parseInt(r,16);return[o>>16&255,o>>8&255,o&255]},enumerable:!1},hexToAnsi256:{value:e=>a.rgbToAnsi256(...a.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let n,r,o;if(e>=232)n=((e-232)*10+8)/255,r=n,o=n;else{e-=16;const u=e%36;n=Math.floor(e/36)/5,r=Math.floor(u/6)/5,o=u%6/5}const s=Math.max(n,r,o)*2;if(s===0)return 30;let i=30+(Math.round(o)<<2|Math.round(r)<<1|Math.round(n));return s===2&&(i+=60),i},enumerable:!1},rgbToAnsi:{value:(e,n,r)=>a.ansi256ToAnsi(a.rgbToAnsi256(e,n,r)),enumerable:!1},hexToAnsi:{value:e=>a.ansi256ToAnsi(a.hexToAnsi256(e)),enumerable:!1}}),a}const l=oe(),T=(()=>{if(navigator.userAgentData){const t=navigator.userAgentData.brands.find(({brand:e})=>e==="Chromium");if(t&&t.version>93)return 3}return/\b(Chrome|Chromium)\//.test(navigator.userAgent)?1:0})(),D=T!==0&&{level:T,hasBasic:!0,has256:T>=2,has16m:T>=3},se={stdout:D,stderr:D};function ie(t,e,n){let r=t.indexOf(e);if(r===-1)return t;const o=e.length;let s=0,i="";do i+=t.slice(s,r)+e+n,s=r+o,r=t.indexOf(e,s);while(r!==-1);return i+=t.slice(s),i}function ae(t,e,n,r){let o=0,s="";do{const i=t[r-1]==="\r";s+=t.slice(o,i?r-1:r)+e+(i?`\r
2
+ `:`
3
+ `)+n,o=r+1,r=t.indexOf(`
4
+ `,o)}while(r!==-1);return s+=t.slice(o),s}const{stdout:U,stderr:q}=se,C=Symbol("GENERATOR"),g=Symbol("STYLER"),w=Symbol("IS_EMPTY"),X=["ansi","ansi","ansi256","ansi16m"],y=Object.create(null),ue=(t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");const n=U?U.level:0;t.level=e.level===void 0?n:e.level},le=t=>{const e=(...n)=>n.join(" ");return ue(e,t),Object.setPrototypeOf(e,R.prototype),e};function R(t){return le(t)}Object.setPrototypeOf(R.prototype,Function.prototype);for(const[t,e]of Object.entries(l))y[t]={get(){const n=W(this,F(e.open,e.close,this[g]),this[w]);return Object.defineProperty(this,t,{value:n}),n}};y.visible={get(){const t=W(this,this[g],!0);return Object.defineProperty(this,"visible",{value:t}),t}};const V=(t,e,n,...r)=>t==="rgb"?e==="ansi16m"?l[n].ansi16m(...r):e==="ansi256"?l[n].ansi256(l.rgbToAnsi256(...r)):l[n].ansi(l.rgbToAnsi(...r)):t==="hex"?V("rgb",e,n,...l.hexToRgb(...r)):l[n][t](...r),ce=["rgb","hex","ansi256"];for(const t of ce){y[t]={get(){const{level:n}=this;return function(...r){const o=F(V(t,X[n],"color",...r),l.color.close,this[g]);return W(this,o,this[w])}}};const e="bg"+t[0].toUpperCase()+t.slice(1);y[e]={get(){const{level:n}=this;return function(...r){const o=F(V(t,X[n],"bgColor",...r),l.bgColor.close,this[g]);return W(this,o,this[w])}}}}const de=Object.defineProperties(()=>{},{...y,level:{enumerable:!0,get(){return this[C].level},set(t){this[C].level=t}}}),F=(t,e,n)=>{let r,o;return n===void 0?(r=t,o=e):(r=n.openAll+t,o=e+n.closeAll),{open:t,close:e,openAll:r,closeAll:o,parent:n}},W=(t,e,n)=>{const r=(...o)=>pe(r,o.length===1?""+o[0]:o.join(" "));return Object.setPrototypeOf(r,de),r[C]=t,r[g]=e,r[w]=n,r},pe=(t,e)=>{if(t.level<=0||!e)return t[w]?"":e;let n=t[g];if(n===void 0)return e;const{openAll:r,closeAll:o}=n;if(e.includes("\x1B"))for(;n!==void 0;)e=ie(e,n.close,n.open),n=n.parent;const s=e.indexOf(`
5
+ `);return s!==-1&&(e=ae(e,o,r,s)),r+e+o};Object.defineProperties(R.prototype,y);const $=R();R({level:q?q.level:0});const x={error(){console.log($.red(...arguments))},warn(){console.log($.yellow(...arguments))},info(){console.log($.blue(...arguments))},log(){console.log($.gray(...arguments))}},d=t=>{const e=`${t}`,n=parseFloat(e);let r="unsupported";/^\d+$/.test(e)&&n!==0&&(r="px");const o=e.match(/px|rem|em/);return o&&(r=o[0]),n===0&&(r="zero"),{number:n,unit:r}},K=t=>{const e={};return typeof t=="string"?e.fontSize=d(t):Array.isArray(t)&&(e.fontSize=d(t[0]),typeof t[1]=="string"?e.lineHeight=d(t[1]):typeof t[1]=="object"&&("lineHeight"in t[1]&&(e.lineHeight=d(t[1].lineHeight)),"letterSpacing"in t[1]&&(e.letterSpacing=d(t[1].letterSpacing)))),e},J=(t,e,n,r=null)=>t.number===e.number?(x.error(`Same value for start an end${r?` (${r})`:""}: "clamp-[${n}]".`),null):t.unit!==e.unit&&t.unit!=="zero"&&e.unit!=="zero"?(x.error(`Units need to match${r?` (${r})`:""}: "clamp-[${n}]".`),null):t.unit==="unsupported"||e.unit==="unsupported"?(x.error(`Only px, rem and em units are supported${r?` (${r})`:""}: "clamp-[${n}]".`),null):!0,L=(t,e,n={number:375,unit:"px"},r={number:1440,unit:"px"})=>{const o=t.unit==="zero"?e.unit:t.unit,s=o==="px";let i=t.number,u=e.number,b=!1,c=n.number,O=r.number;n.unit!=="px"&&s&&(c=n.number*16),n.unit==="px"&&!s&&(c=n.number/16),r.unit!=="px"&&s&&(O=r.number*16),r.unit==="px"&&!s&&(O=r.number/16),u<i&&i<0&&u<0?(i=Math.abs(i),u=Math.abs(u),b=!0):u<i&&i>0&&u>0?(i=i*-1,u=u*-1,b=!0):u<i&&(i=Math.abs(i)*-1,u=Math.abs(u),b=!0);const v=(u-i)/(O-c),A=`${(i-c*v).toFixed(6)}${o} + ${(100*v).toFixed(6)}vw`,B=`clamp(${i}${o}, ${A}, ${u}${o})`;return b?`calc(${B} * -1)`:B},he={unit:"rem",minViewportWidth:375,maxViewportWidth:1440},be=(t,e,n={unit:"rem",minViewportWidth:375,maxViewportWidth:1440})=>{const r={...he,...n},o=s=>r.unit==="rem"?s/16:s;return L({number:o(t),unit:r.unit},{number:o(e),unit:r.unit},{number:o(r.minViewportWidth),unit:r.unit},{number:o(r.maxViewportWidth),unit:r.unit})},E={minViewportWidth:375,maxViewportWidth:1440},fe=be,me=ee.withOptions(function(t=E){return function({matchUtilities:e,theme:n,config:r}){e({clamp:o=>{const s=o.split(","),i=d(r().theme.screens[s[3]]||s[3]||t.minViewportWidth||E.minViewportWidth),u=d(r().theme.screens[s[4]]||s[4]||t.maxViewportWidth||E.maxViewportWidth);if(s.length<3)return x.error(`The clamp utility requires at least 3 arguments: "clamp-[${o}]".`),null;const b=te(s[0]);if(!b)return x.error(`Property "${s[0]}" is not supported: "clamp-[${o}]".`),null;const{key:c,props:O}=b;if(c==="fontSize"){const p=K(r().theme[c][s[1]]||s[1]),f=K(r().theme[c][s[2]]||s[2]),N={};return Object.keys(p).forEach(m=>{if(m in f&&J(p[m],f[m],o,m)){const ye=L(p[m],f[m],i,u);N[m]=ye}}),Object.keys(N).length>0?N:null}const v=s[1].startsWith("-"),A=s[2].startsWith("-"),B=v?s[1].slice(1):s[1],Q=A?s[2].slice(1):s[2],M=d(r().theme[c][B]||B),j=d(r().theme[c][Q]||Q);if(v&&(M.number=M.number*-1),A&&(j.number=j.number*-1),!J(M,j,o))return null;const ge=L(M,j,i,u);return O.reduce((p,f)=>(typeof f=="string"?p[f]=ge:p={...p,...f},p),{})}},{values:n("clamp")})}});h.clampValue=fe,h.tailwindClamp=me,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})});
6
+ //# sourceMappingURL=index.umd.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.umd.cjs","sources":["../node_modules/.pnpm/tailwindcss@3.4.14/node_modules/tailwindcss/lib/util/createPlugin.js","../node_modules/.pnpm/tailwindcss@3.4.14/node_modules/tailwindcss/lib/public/create-plugin.js","../node_modules/.pnpm/tailwindcss@3.4.14/node_modules/tailwindcss/plugin.js","../lib/resolve-property.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/ansi-styles/index.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/supports-color/browser.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/utilities.js","../node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/index.js","../lib/log.js","../lib/parse-value.js","../lib/clamp.js","../lib/index.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nfunction createPlugin(plugin, config) {\n return {\n handler: plugin,\n config\n };\n}\ncreatePlugin.withOptions = function(pluginFunction, configFunction = ()=>({})) {\n const optionsFunction = function(options) {\n return {\n __options: options,\n handler: pluginFunction(options),\n config: configFunction(options)\n };\n };\n optionsFunction.__isOptionsFunction = true;\n // Expose plugin dependencies so that `object-hash` returns a different\n // value if anything here changes, to ensure a rebuild is triggered.\n optionsFunction.__pluginFunction = pluginFunction;\n optionsFunction.__configFunction = configFunction;\n return optionsFunction;\n};\nconst _default = createPlugin;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nconst _createPlugin = /*#__PURE__*/ _interop_require_default(require(\"../util/createPlugin\"));\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nconst _default = _createPlugin.default;\n","let createPlugin = require('./lib/public/create-plugin')\nmodule.exports = (createPlugin.__esModule ? createPlugin : { default: createPlugin }).default\n","const cssTransformValue = [\n 'translate(var(--tw-translate-x), var(--tw-translate-y))',\n 'rotate(var(--tw-rotate))',\n 'skewX(var(--tw-skew-x))',\n 'skewY(var(--tw-skew-y))',\n 'scaleX(var(--tw-scale-x))',\n 'scaleY(var(--tw-scale-y))',\n].join(' ');\n\nexport const resolveProperty = (name) => {\n switch (name) {\n case 'p':\n return {\n key: 'padding',\n props: ['padding'],\n };\n case 'pt':\n return {\n key: 'padding',\n props: ['paddingTop'],\n };\n case 'pb':\n return {\n key: 'padding',\n props: ['paddingBottom'],\n };\n case 'pl':\n return {\n key: 'padding',\n props: ['paddingLeft'],\n };\n case 'pr':\n return {\n key: 'padding',\n props: ['paddingRight'],\n };\n case 'px':\n return {\n key: 'padding',\n props: ['paddingLeft', 'paddingRight'],\n };\n case 'py':\n return {\n key: 'padding',\n props: ['paddingTop', 'paddingBottom'],\n };\n case 'm':\n return {\n key: 'margin',\n props: ['margin'],\n };\n case 'mt':\n return {\n key: 'margin',\n props: ['marginTop'],\n };\n case 'mb':\n return {\n key: 'margin',\n props: ['marginBottom'],\n };\n case 'ml':\n return {\n key: 'margin',\n props: ['marginLeft'],\n };\n case 'mr':\n return {\n key: 'margin',\n props: ['marginRight'],\n };\n case 'mx':\n return {\n key: 'margin',\n props: ['marginLeft', 'marginRight'],\n };\n case 'my':\n return {\n key: 'margin',\n props: ['marginTop', 'marginBottom'],\n };\n case 'inset':\n return {\n key: 'inset',\n props: ['top', 'left', 'right', 'bottom'],\n };\n case 'top':\n return {\n key: 'inset',\n props: ['top'],\n };\n\n case 'left':\n return {\n key: 'inset',\n props: ['left'],\n };\n case 'right':\n return {\n key: 'inset',\n props: ['right'],\n };\n case 'bottom':\n return {\n key: 'inset',\n props: ['bottom'],\n };\n case 'text':\n return {\n key: 'fontSize',\n props: ['fontSize'],\n };\n case 'gap':\n return {\n key: 'gap',\n props: ['gap'],\n };\n case 'gap-x':\n return {\n key: 'gap',\n props: ['columnGap'],\n };\n case 'gap-y':\n return {\n key: 'gap',\n props: ['rowGap'],\n };\n case 'w':\n return {\n key: 'width',\n props: ['width'],\n };\n case 'h':\n return {\n key: 'height',\n props: ['height'],\n };\n case 'size':\n return {\n key: 'size',\n props: ['width', 'height'],\n };\n\n case 'min-w':\n return {\n key: 'minWidth',\n props: ['minWidth'],\n };\n\n case 'min-h':\n return {\n key: 'minHeight',\n props: ['minHeight'],\n };\n\n case 'max-w':\n return {\n key: 'maxWidth',\n props: ['maxWidth'],\n };\n\n case 'max-h':\n return {\n key: 'maxHeight',\n props: ['maxHeight'],\n };\n\n case 'rounded':\n return {\n key: 'borderRadius',\n props: ['borderRadius'],\n };\n\n case 'rounded-t':\n return {\n key: 'borderRadius',\n props: ['borderTopLeftRadius', 'borderTopRightRadius'],\n };\n\n case 'rounded-r':\n return {\n key: 'borderRadius',\n props: ['borderTopRightRadius', 'borderBottomRightRadius'],\n };\n\n case 'rounded-b':\n return {\n key: 'borderRadius',\n props: ['borderBottomLeftRadius', 'borderBottomRightRadius'],\n };\n\n case 'rounded-l':\n return {\n key: 'borderRadius',\n props: ['borderTopLeftRadius', 'borderBottomLeftRadius'],\n };\n\n case 'rounded-tl':\n return {\n key: 'borderRadius',\n props: ['borderTopLeftRadius'],\n };\n\n case 'rounded-tr':\n return {\n key: 'borderRadius',\n props: ['borderTopRightRadius'],\n };\n\n case 'rounded-bl':\n return {\n key: 'borderRadius',\n props: ['borderBottomLeftRadius'],\n };\n\n case 'rounded-br':\n return {\n key: 'borderRadius',\n props: ['borderBottomRightRadius'],\n };\n\n case 'translate-x':\n return {\n key: 'translate',\n props: [\n '--tw-translate-x',\n { '@defaults transform': {} },\n { transform: cssTransformValue },\n ],\n };\n\n case 'translate-y':\n return {\n key: 'translate',\n props: [\n '--tw-translate-y',\n { '@defaults transform': {} },\n { transform: cssTransformValue },\n ],\n };\n case 'stroke':\n return {\n key: 'strokeWidth',\n props: ['strokeWidth'],\n };\n\n case 'leading':\n return {\n key: 'lineHeight',\n props: ['lineHeight'],\n };\n\n case 'border':\n return {\n key: 'borderWidth',\n props: ['borderWidth'],\n };\n case 'border-t':\n return {\n key: 'borderWidth',\n props: ['borderTopWidth'],\n };\n case 'border-b':\n return {\n key: 'borderWidth',\n props: ['borderBottomWidth'],\n };\n\n case 'border-l':\n return {\n key: 'borderWidth',\n props: ['borderLeftWidth'],\n };\n\n case 'border-r':\n return {\n key: 'borderWidth',\n props: ['borderRightWidth'],\n };\n\n case 'border-x':\n return {\n key: 'borderWidth',\n props: ['borderLeftWidth', 'borderRightWidth'],\n };\n\n case 'border-y':\n return {\n key: 'borderWidth',\n props: ['borderTopWidth', 'borderBottomWidth'],\n };\n\n case 'scroll-m':\n return {\n key: 'scrollMargin',\n props: ['scrollMargin'],\n };\n\n default:\n return null;\n }\n};\n","const ANSI_BACKGROUND_OFFSET = 10;\n\nconst wrapAnsi16 = (offset = 0) => code => `\\u001B[${code + offset}m`;\n\nconst wrapAnsi256 = (offset = 0) => code => `\\u001B[${38 + offset};5;${code}m`;\n\nconst wrapAnsi16m = (offset = 0) => (red, green, blue) => `\\u001B[${38 + offset};2;${red};${green};${blue}m`;\n\nconst styles = {\n\tmodifier: {\n\t\treset: [0, 0],\n\t\t// 21 isn't widely supported and 22 does the same thing\n\t\tbold: [1, 22],\n\t\tdim: [2, 22],\n\t\titalic: [3, 23],\n\t\tunderline: [4, 24],\n\t\toverline: [53, 55],\n\t\tinverse: [7, 27],\n\t\thidden: [8, 28],\n\t\tstrikethrough: [9, 29],\n\t},\n\tcolor: {\n\t\tblack: [30, 39],\n\t\tred: [31, 39],\n\t\tgreen: [32, 39],\n\t\tyellow: [33, 39],\n\t\tblue: [34, 39],\n\t\tmagenta: [35, 39],\n\t\tcyan: [36, 39],\n\t\twhite: [37, 39],\n\n\t\t// Bright color\n\t\tblackBright: [90, 39],\n\t\tgray: [90, 39], // Alias of `blackBright`\n\t\tgrey: [90, 39], // Alias of `blackBright`\n\t\tredBright: [91, 39],\n\t\tgreenBright: [92, 39],\n\t\tyellowBright: [93, 39],\n\t\tblueBright: [94, 39],\n\t\tmagentaBright: [95, 39],\n\t\tcyanBright: [96, 39],\n\t\twhiteBright: [97, 39],\n\t},\n\tbgColor: {\n\t\tbgBlack: [40, 49],\n\t\tbgRed: [41, 49],\n\t\tbgGreen: [42, 49],\n\t\tbgYellow: [43, 49],\n\t\tbgBlue: [44, 49],\n\t\tbgMagenta: [45, 49],\n\t\tbgCyan: [46, 49],\n\t\tbgWhite: [47, 49],\n\n\t\t// Bright color\n\t\tbgBlackBright: [100, 49],\n\t\tbgGray: [100, 49], // Alias of `bgBlackBright`\n\t\tbgGrey: [100, 49], // Alias of `bgBlackBright`\n\t\tbgRedBright: [101, 49],\n\t\tbgGreenBright: [102, 49],\n\t\tbgYellowBright: [103, 49],\n\t\tbgBlueBright: [104, 49],\n\t\tbgMagentaBright: [105, 49],\n\t\tbgCyanBright: [106, 49],\n\t\tbgWhiteBright: [107, 49],\n\t},\n};\n\nexport const modifierNames = Object.keys(styles.modifier);\nexport const foregroundColorNames = Object.keys(styles.color);\nexport const backgroundColorNames = Object.keys(styles.bgColor);\nexport const colorNames = [...foregroundColorNames, ...backgroundColorNames];\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`,\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false,\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false,\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tstyles.color.ansi = wrapAnsi16();\n\tstyles.color.ansi256 = wrapAnsi256();\n\tstyles.color.ansi16m = wrapAnsi16m();\n\tstyles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);\n\tstyles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);\n\n\t// From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js\n\tObject.defineProperties(styles, {\n\t\trgbToAnsi256: {\n\t\t\tvalue(red, green, blue) {\n\t\t\t\t// We use the extended greyscale palette here, with the exception of\n\t\t\t\t// black and white. normal palette only has 4 greyscale shades.\n\t\t\t\tif (red === green && green === blue) {\n\t\t\t\t\tif (red < 8) {\n\t\t\t\t\t\treturn 16;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (red > 248) {\n\t\t\t\t\t\treturn 231;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Math.round(((red - 8) / 247) * 24) + 232;\n\t\t\t\t}\n\n\t\t\t\treturn 16\n\t\t\t\t\t+ (36 * Math.round(red / 255 * 5))\n\t\t\t\t\t+ (6 * Math.round(green / 255 * 5))\n\t\t\t\t\t+ Math.round(blue / 255 * 5);\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToRgb: {\n\t\t\tvalue(hex) {\n\t\t\t\tconst matches = /[a-f\\d]{6}|[a-f\\d]{3}/i.exec(hex.toString(16));\n\t\t\t\tif (!matches) {\n\t\t\t\t\treturn [0, 0, 0];\n\t\t\t\t}\n\n\t\t\t\tlet [colorString] = matches;\n\n\t\t\t\tif (colorString.length === 3) {\n\t\t\t\t\tcolorString = [...colorString].map(character => character + character).join('');\n\t\t\t\t}\n\n\t\t\t\tconst integer = Number.parseInt(colorString, 16);\n\n\t\t\t\treturn [\n\t\t\t\t\t/* eslint-disable no-bitwise */\n\t\t\t\t\t(integer >> 16) & 0xFF,\n\t\t\t\t\t(integer >> 8) & 0xFF,\n\t\t\t\t\tinteger & 0xFF,\n\t\t\t\t\t/* eslint-enable no-bitwise */\n\t\t\t\t];\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi256: {\n\t\t\tvalue: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t\tansi256ToAnsi: {\n\t\t\tvalue(code) {\n\t\t\t\tif (code < 8) {\n\t\t\t\t\treturn 30 + code;\n\t\t\t\t}\n\n\t\t\t\tif (code < 16) {\n\t\t\t\t\treturn 90 + (code - 8);\n\t\t\t\t}\n\n\t\t\t\tlet red;\n\t\t\t\tlet green;\n\t\t\t\tlet blue;\n\n\t\t\t\tif (code >= 232) {\n\t\t\t\t\tred = (((code - 232) * 10) + 8) / 255;\n\t\t\t\t\tgreen = red;\n\t\t\t\t\tblue = red;\n\t\t\t\t} else {\n\t\t\t\t\tcode -= 16;\n\n\t\t\t\t\tconst remainder = code % 36;\n\n\t\t\t\t\tred = Math.floor(code / 36) / 5;\n\t\t\t\t\tgreen = Math.floor(remainder / 6) / 5;\n\t\t\t\t\tblue = (remainder % 6) / 5;\n\t\t\t\t}\n\n\t\t\t\tconst value = Math.max(red, green, blue) * 2;\n\n\t\t\t\tif (value === 0) {\n\t\t\t\t\treturn 30;\n\t\t\t\t}\n\n\t\t\t\t// eslint-disable-next-line no-bitwise\n\t\t\t\tlet result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));\n\n\t\t\t\tif (value === 2) {\n\t\t\t\t\tresult += 60;\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t},\n\t\t\tenumerable: false,\n\t\t},\n\t\trgbToAnsi: {\n\t\t\tvalue: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),\n\t\t\tenumerable: false,\n\t\t},\n\t\thexToAnsi: {\n\t\t\tvalue: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),\n\t\t\tenumerable: false,\n\t\t},\n\t});\n\n\treturn styles;\n}\n\nconst ansiStyles = assembleStyles();\n\nexport default ansiStyles;\n","/* eslint-env browser */\n\nconst level = (() => {\n\tif (navigator.userAgentData) {\n\t\tconst brand = navigator.userAgentData.brands.find(({brand}) => brand === 'Chromium');\n\t\tif (brand && brand.version > 93) {\n\t\t\treturn 3;\n\t\t}\n\t}\n\n\tif (/\\b(Chrome|Chromium)\\//.test(navigator.userAgent)) {\n\t\treturn 1;\n\t}\n\n\treturn 0;\n})();\n\nconst colorSupport = level !== 0 && {\n\tlevel,\n\thasBasic: true,\n\thas256: level >= 2,\n\thas16m: level >= 3,\n};\n\nconst supportsColor = {\n\tstdout: colorSupport,\n\tstderr: colorSupport,\n};\n\nexport default supportsColor;\n","// TODO: When targeting Node.js 16, use `String.prototype.replaceAll`.\nexport function stringReplaceAll(string, substring, replacer) {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.slice(endIndex, index) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n\nexport function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.slice(endIndex, (gotCR ? index - 1 : index)) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.slice(endIndex);\n\treturn returnValue;\n}\n","import ansiStyles from '#ansi-styles';\nimport supportsColor from '#supports-color';\nimport { // eslint-disable-line import/order\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex,\n} from './utilities.js';\n\nconst {stdout: stdoutColor, stderr: stderrColor} = supportsColor;\n\nconst GENERATOR = Symbol('GENERATOR');\nconst STYLER = Symbol('STYLER');\nconst IS_EMPTY = Symbol('IS_EMPTY');\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m',\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nexport class Chalk {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = (...strings) => strings.join(' ');\n\tapplyOptions(chalk, options);\n\n\tObject.setPrototypeOf(chalk, createChalk.prototype);\n\n\treturn chalk;\n};\n\nfunction createChalk(options) {\n\treturn chalkFactory(options);\n}\n\nObject.setPrototypeOf(createChalk.prototype, Function.prototype);\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t},\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this[STYLER], true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t},\n};\n\nconst getModelAnsi = (model, level, type, ...arguments_) => {\n\tif (model === 'rgb') {\n\t\tif (level === 'ansi16m') {\n\t\t\treturn ansiStyles[type].ansi16m(...arguments_);\n\t\t}\n\n\t\tif (level === 'ansi256') {\n\t\t\treturn ansiStyles[type].ansi256(ansiStyles.rgbToAnsi256(...arguments_));\n\t\t}\n\n\t\treturn ansiStyles[type].ansi(ansiStyles.rgbToAnsi(...arguments_));\n\t}\n\n\tif (model === 'hex') {\n\t\treturn getModelAnsi('rgb', level, type, ...ansiStyles.hexToRgb(...arguments_));\n\t}\n\n\treturn ansiStyles[type][model](...arguments_);\n};\n\nconst usedModels = ['rgb', 'hex', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'color', ...arguments_), ansiStyles.color.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(getModelAnsi(model, levelMapping[level], 'bgColor', ...arguments_), ansiStyles.bgColor.close, this[STYLER]);\n\t\t\t\treturn createBuilder(this, styler, this[IS_EMPTY]);\n\t\t\t};\n\t\t},\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this[GENERATOR].level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis[GENERATOR].level = level;\n\t\t},\n\t},\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent,\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\t// Single argument is hot path, implicit coercion is faster than anything\n\t// eslint-disable-next-line no-implicit-coercion\n\tconst builder = (...arguments_) => applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder[GENERATOR] = self;\n\tbuilder[STYLER] = _styler;\n\tbuilder[IS_EMPTY] = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self[IS_EMPTY] ? '' : string;\n\t}\n\n\tlet styler = self[STYLER];\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.includes('\\u001B')) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nObject.defineProperties(createChalk.prototype, styles);\n\nconst chalk = createChalk();\nexport const chalkStderr = createChalk({level: stderrColor ? stderrColor.level : 0});\n\nexport {\n\tmodifierNames,\n\tforegroundColorNames,\n\tbackgroundColorNames,\n\tcolorNames,\n\n\t// TODO: Remove these aliases in the next major version\n\tmodifierNames as modifiers,\n\tforegroundColorNames as foregroundColors,\n\tbackgroundColorNames as backgroundColors,\n\tcolorNames as colors,\n} from './vendor/ansi-styles/index.js';\n\nexport {\n\tstdoutColor as supportsColor,\n\tstderrColor as supportsColorStderr,\n};\n\nexport default chalk;\n","import chalk from 'chalk';\n\nexport const log = {\n error() {\n console.log(chalk.red(...arguments));\n },\n warn() {\n console.log(chalk.yellow(...arguments));\n },\n info() {\n console.log(chalk.blue(...arguments));\n },\n log() {\n console.log(chalk.gray(...arguments));\n },\n};\n","import { log } from './log.js';\n\nexport const parseValue = (v) => {\n const value = `${v}`;\n const number = parseFloat(value);\n let unit = 'unsupported';\n\n if (/^\\d+$/.test(value) && number !== 0) {\n unit = 'px';\n }\n\n const match = value.match(/px|rem|em/);\n if (match) {\n unit = match[0];\n }\n\n if (number === 0) {\n unit = 'zero';\n }\n\n return { number, unit };\n};\n\nexport const parseFontSizeValue = (value) => {\n const values = {};\n if (typeof value === 'string') {\n values.fontSize = parseValue(value);\n } else if (Array.isArray(value)) {\n values.fontSize = parseValue(value[0]);\n if (typeof value[1] === 'string') {\n values.lineHeight = parseValue(value[1]);\n } else if (typeof value[1] === 'object') {\n if ('lineHeight' in value[1]) {\n values.lineHeight = parseValue(value[1].lineHeight);\n }\n if ('letterSpacing' in value[1]) {\n values.letterSpacing = parseValue(value[1].letterSpacing);\n }\n }\n }\n return values;\n};\n\nexport const checkValues = (start, end, value, prop = null) => {\n if (start.number === end.number) {\n log.error(\n `Same value for start an end${\n prop ? ` (${prop})` : ''\n }: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n if (start.unit !== end.unit && start.unit !== 'zero' && end.unit !== 'zero') {\n log.error(\n `Units need to match${prop ? ` (${prop})` : ''}: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n if (start.unit === 'unsupported' || end.unit === 'unsupported') {\n log.error(\n `Only px, rem and em units are supported${\n prop ? ` (${prop})` : ''\n }: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n return true;\n};\n","// https://chriskirknielsen.com/blog/modern-fluid-typography-with-clamp/\n\nexport const clamp = (\n _start,\n _end,\n _minvw = { number: 375, unit: 'px' },\n _maxvw = { number: 1440, unit: 'px' }\n) => {\n const unit = _start.unit === 'zero' ? _end.unit : _start.unit;\n const isPx = unit === 'px';\n\n let start = _start.number;\n let end = _end.number;\n let negative = false;\n\n let minvw = _minvw.number;\n let maxvw = _maxvw.number;\n\n if (_minvw.unit !== 'px' && isPx) {\n minvw = _minvw.number * 16;\n }\n\n if (_minvw.unit === 'px' && !isPx) {\n minvw = _minvw.number / 16;\n }\n\n if (_maxvw.unit !== 'px' && isPx) {\n maxvw = _maxvw.number * 16;\n }\n\n if (_maxvw.unit === 'px' && !isPx) {\n maxvw = _maxvw.number / 16;\n }\n\n if (end < start && start < 0 && end < 0) {\n start = Math.abs(start);\n end = Math.abs(end);\n negative = true;\n } else if (end < start && start > 0 && end > 0) {\n start = start * -1;\n end = end * -1;\n negative = true;\n } else if (end < start) {\n start = Math.abs(start) * -1;\n end = Math.abs(end);\n negative = true;\n }\n\n const slope = (end - start) / (maxvw - minvw);\n const calc = `${(start - minvw * slope).toFixed(6)}${unit} + ${(\n 100 * slope\n ).toFixed(6)}vw`;\n\n const value = `clamp(${start}${unit}, ${calc}, ${end}${unit})`;\n\n return negative ? `calc(${value} * -1)` : value;\n};\n\nconst defaultOptions = {\n unit: 'rem',\n minViewportWidth: 375,\n maxViewportWidth: 1440,\n};\n\nexport const clampValue = (\n start,\n end,\n options = {\n unit: 'rem',\n minViewportWidth: 375,\n maxViewportWidth: 1440,\n }\n) => {\n const o = { ...defaultOptions, ...options };\n\n const convert = (val) => (o.unit === 'rem' ? val / 16 : val);\n\n return clamp(\n { number: convert(start), unit: o.unit },\n { number: convert(end), unit: o.unit },\n { number: convert(o.minViewportWidth), unit: o.unit },\n { number: convert(o.maxViewportWidth), unit: o.unit }\n );\n};\n","import plugin from 'tailwindcss/plugin';\nimport { resolveProperty } from './resolve-property.js';\nimport { log } from './log.js';\nimport { parseValue, parseFontSizeValue, checkValues } from './parse-value.js';\nimport { clamp, clampValue as cv } from './clamp.js';\n\nconst defaultOptions = {\n minViewportWidth: 375,\n maxViewportWidth: 1440,\n};\n\nexport const clampValue = cv;\n\nexport const tailwindClamp = plugin.withOptions(function (\n options = defaultOptions\n) {\n return function ({ matchUtilities, theme, config }) {\n matchUtilities(\n {\n clamp: (value) => {\n const args = value.split(',');\n\n const minvw = parseValue(\n config().theme.screens[args[3]] ||\n args[3] ||\n options.minViewportWidth ||\n defaultOptions.minViewportWidth\n );\n\n const maxvw = parseValue(\n config().theme.screens[args[4]] ||\n args[4] ||\n options.maxViewportWidth ||\n defaultOptions.maxViewportWidth\n );\n\n if (args.length < 3) {\n log.error(\n `The clamp utility requires at least 3 arguments: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n const resolvedProp = resolveProperty(args[0]);\n\n if (!resolvedProp) {\n log.error(\n `Property \"${args[0]}\" is not supported: \"clamp-[${value}]\".`\n );\n return null;\n }\n\n const { key, props } = resolvedProp;\n\n // handle fontSize separately\n if (key === 'fontSize') {\n const start = parseFontSizeValue(\n config().theme[key][args[1]] || args[1]\n );\n const end = parseFontSizeValue(\n config().theme[key][args[2]] || args[2]\n );\n\n const css = {};\n\n Object.keys(start).forEach((k) => {\n if (k in end && checkValues(start[k], end[k], value, k)) {\n const val = clamp(start[k], end[k], minvw, maxvw);\n css[k] = val;\n }\n });\n\n return Object.keys(css).length > 0 ? css : null;\n }\n\n // handle other properties\n const startNegative = args[1].startsWith('-');\n const endNegative = args[2].startsWith('-');\n\n const startVal = startNegative ? args[1].slice(1) : args[1];\n const endVal = endNegative ? args[2].slice(1) : args[2];\n\n const start = parseValue(config().theme[key][startVal] || startVal);\n const end = parseValue(config().theme[key][endVal] || endVal);\n\n if (startNegative) start.number = start.number * -1;\n if (endNegative) end.number = end.number * -1;\n\n if (!checkValues(start, end, value)) {\n return null;\n }\n\n const val = clamp(start, end, minvw, maxvw);\n\n const css = props.reduce((acc, prop) => {\n if (typeof prop === 'string') {\n acc[prop] = val;\n } else {\n acc = { ...acc, ...prop };\n }\n return acc;\n }, {});\n\n return css;\n },\n },\n { values: theme('clamp') }\n );\n };\n});\n"],"names":["exports","_default","createPlugin","plugin","config","pluginFunction","configFunction","optionsFunction","options","_createPlugin","_interop_require_default","require$$0","obj","cssTransformValue","resolveProperty","name","ANSI_BACKGROUND_OFFSET","wrapAnsi16","offset","code","wrapAnsi256","wrapAnsi16m","red","green","blue","styles","foregroundColorNames","backgroundColorNames","assembleStyles","codes","groupName","group","styleName","style","hex","matches","colorString","character","integer","remainder","value","result","ansiStyles","level","brand","colorSupport","supportsColor","stringReplaceAll","string","substring","replacer","index","substringLength","endIndex","returnValue","stringEncaseCRLFWithFirstIndex","prefix","postfix","gotCR","stdoutColor","stderrColor","GENERATOR","STYLER","IS_EMPTY","levelMapping","applyOptions","object","colorLevel","chalkFactory","chalk","strings","createChalk","builder","createBuilder","createStyler","getModelAnsi","model","type","arguments_","usedModels","styler","bgModel","proto","open","close","parent","openAll","closeAll","self","_styler","_isEmpty","applyStyle","lfIndex","log","parseValue","v","number","unit","match","parseFontSizeValue","values","checkValues","start","end","prop","clamp","_start","_end","_minvw","_maxvw","isPx","negative","minvw","maxvw","slope","calc","defaultOptions","clampValue","o","convert","val","cv","tailwindClamp","matchUtilities","theme","args","resolvedProp","key","props","css","k","startNegative","endNegative","startVal","endVal","acc"],"mappings":"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","x_google_ignoreList":[0,1,2,4,5,6,7]}
package/package.json CHANGED
@@ -1,14 +1,23 @@
1
1
  {
2
2
  "name": "tailwind-clamp",
3
- "version": "2.2.3",
3
+ "version": "3.0.0",
4
4
  "description": "Tailwind CSS plugin to use CSS clamp in your projects",
5
- "main": "src/index.js",
5
+ "main": "dist/index.umd.cjs",
6
+ "module": "dist/index.js",
7
+ "exports": {
8
+ ".": {
9
+ "import": "./dist/index.js",
10
+ "require": "./dist/index.umd.cjs"
11
+ }
12
+ },
13
+ "files": [
14
+ "/dist"
15
+ ],
6
16
  "type": "module",
7
17
  "scripts": {
8
- "dev": "next dev demo",
9
- "build": "next build demo",
10
- "start": "next start demo",
11
- "lint": "next lint demo"
18
+ "dev": "vite",
19
+ "build": "vite build",
20
+ "preview": "vite preview"
12
21
  },
13
22
  "repository": {
14
23
  "type": "git",
@@ -27,13 +36,11 @@
27
36
  "homepage": "https://github.com/nicolas-cusan/tailwind-clamp#readme",
28
37
  "dependencies": {
29
38
  "chalk": "^5.3.0",
30
- "tailwindcss": "^3.4.4"
39
+ "tailwindcss": "^3.4.14"
31
40
  },
32
41
  "devDependencies": {
33
- "autoprefixer": "^10.4.19",
34
- "postcss": "^8",
35
- "next": "14.2.4",
36
- "react": "^18",
37
- "react-dom": "^18"
42
+ "autoprefixer": "^10.4.20",
43
+ "postcss": "^8.4.47",
44
+ "vite": "^5.4.10"
38
45
  }
39
46
  }
package/src/clamp.js DELETED
@@ -1,84 +0,0 @@
1
- // https://chriskirknielsen.com/blog/modern-fluid-typography-with-clamp/
2
-
3
- export const clamp = (
4
- _start,
5
- _end,
6
- _minvw = { number: 375, unit: 'px' },
7
- _maxvw = { number: 1440, unit: 'px' }
8
- ) => {
9
- const unit = _start.unit === 'zero' ? _end.unit : _start.unit;
10
- const isPx = unit === 'px';
11
-
12
- let start = _start.number;
13
- let end = _end.number;
14
- let negative = false;
15
-
16
- let minvw = _minvw.number;
17
- let maxvw = _maxvw.number;
18
-
19
- if (_minvw.unit !== 'px' && isPx) {
20
- minvw = _minvw.number * 16;
21
- }
22
-
23
- if (_minvw.unit === 'px' && !isPx) {
24
- minvw = _minvw.number / 16;
25
- }
26
-
27
- if (_maxvw.unit !== 'px' && isPx) {
28
- maxvw = _maxvw.number * 16;
29
- }
30
-
31
- if (_maxvw.unit === 'px' && !isPx) {
32
- maxvw = _maxvw.number / 16;
33
- }
34
-
35
- if (end < start && start < 0 && end < 0) {
36
- start = Math.abs(start);
37
- end = Math.abs(end);
38
- negative = true;
39
- } else if (end < start && start > 0 && end > 0) {
40
- start = start * -1;
41
- end = end * -1;
42
- negative = true;
43
- } else if (end < start) {
44
- start = Math.abs(start) * -1;
45
- end = Math.abs(end);
46
- negative = true;
47
- }
48
-
49
- const slope = (end - start) / (maxvw - minvw);
50
- const calc = `${(start - minvw * slope).toFixed(6)}${unit} + ${(
51
- 100 * slope
52
- ).toFixed(6)}vw`;
53
-
54
- const value = `clamp(${start}${unit}, ${calc}, ${end}${unit})`;
55
-
56
- return negative ? `calc(${value} * -1)` : value;
57
- };
58
-
59
- const defaultOptions = {
60
- unit: 'rem',
61
- minViewportWidth: 375,
62
- maxViewportWidth: 1440,
63
- };
64
-
65
- export const clampValue = (
66
- start,
67
- end,
68
- options = {
69
- unit: 'rem',
70
- minViewportWidth: 375,
71
- maxViewportWidth: 1440,
72
- }
73
- ) => {
74
- const o = { ...defaultOptions, ...options };
75
-
76
- const convert = (val) => (o.unit === 'rem' ? val / 16 : val);
77
-
78
- return clamp(
79
- { number: convert(start), unit: o.unit },
80
- { number: convert(end), unit: o.unit },
81
- { number: convert(o.minViewportWidth), unit: o.unit },
82
- { number: convert(o.maxViewportWidth), unit: o.unit }
83
- );
84
- };
package/src/index.js DELETED
@@ -1,108 +0,0 @@
1
- import plugin from 'tailwindcss/plugin';
2
- import { resolveProperty } from './resolve-property.js';
3
- import { log } from './log.js';
4
- import { parseValue, parseFontSizeValue, checkValues } from './parse-value.js';
5
- import { clamp, clampValue as cv } from './clamp.js';
6
-
7
- const defaultOptions = {
8
- minViewportWidth: 375,
9
- maxViewportWidth: 1440,
10
- };
11
-
12
- export const clampValue = cv;
13
-
14
- export default plugin.withOptions(function (options = defaultOptions) {
15
- return function ({ matchUtilities, theme, config }) {
16
- matchUtilities(
17
- {
18
- clamp: (value) => {
19
- const args = value.split(',');
20
-
21
- const minvw = parseValue(
22
- config().theme.screens[args[3]] ||
23
- args[3] ||
24
- options.minViewportWidth ||
25
- defaultOptions.minViewportWidth
26
- );
27
-
28
- const maxvw = parseValue(
29
- config().theme.screens[args[4]] ||
30
- args[4] ||
31
- options.maxViewportWidth ||
32
- defaultOptions.maxViewportWidth
33
- );
34
-
35
- if (args.length < 3) {
36
- log.error(
37
- `The clamp utility requires at least 3 arguments: "clamp-[${value}]".`
38
- );
39
- return null;
40
- }
41
-
42
- const resolvedProp = resolveProperty(args[0]);
43
-
44
- if (!resolvedProp) {
45
- log.error(
46
- `Property "${args[0]}" is not supported: "clamp-[${value}]".`
47
- );
48
- return null;
49
- }
50
-
51
- const { key, props } = resolvedProp;
52
-
53
- // handle fontSize separately
54
- if (key === 'fontSize') {
55
- const start = parseFontSizeValue(
56
- config().theme[key][args[1]] || args[1]
57
- );
58
- const end = parseFontSizeValue(
59
- config().theme[key][args[2]] || args[2]
60
- );
61
-
62
- const css = {};
63
-
64
- Object.keys(start).forEach((k) => {
65
- if (k in end && checkValues(start[k], end[k], value, k)) {
66
- const val = clamp(start[k], end[k], minvw, maxvw);
67
- css[k] = val;
68
- }
69
- });
70
-
71
- return Object.keys(css).length > 0 ? css : null;
72
- }
73
-
74
- // handle other properties
75
- const startNegative = args[1].startsWith('-');
76
- const endNegative = args[2].startsWith('-');
77
-
78
- const startVal = startNegative ? args[1].slice(1) : args[1];
79
- const endVal = endNegative ? args[2].slice(1) : args[2];
80
-
81
- const start = parseValue(config().theme[key][startVal] || startVal);
82
- const end = parseValue(config().theme[key][endVal] || endVal);
83
-
84
- if (startNegative) start.number = start.number * -1;
85
- if (endNegative) end.number = end.number * -1;
86
-
87
- if (!checkValues(start, end, value)) {
88
- return null;
89
- }
90
-
91
- const val = clamp(start, end, minvw, maxvw);
92
-
93
- const css = props.reduce((acc, prop) => {
94
- if (typeof prop === 'string') {
95
- acc[prop] = val;
96
- } else {
97
- acc = { ...acc, ...prop };
98
- }
99
- return acc;
100
- }, {});
101
-
102
- return css;
103
- },
104
- },
105
- { values: theme('clamp') }
106
- );
107
- };
108
- });
package/src/log.js DELETED
@@ -1,16 +0,0 @@
1
- import chalk from 'chalk';
2
-
3
- export const log = {
4
- error() {
5
- console.log(chalk.red(...arguments));
6
- },
7
- warn() {
8
- console.log(chalk.yellow(...arguments));
9
- },
10
- info() {
11
- console.log(chalk.blue(...arguments));
12
- },
13
- log() {
14
- console.log(chalk.gray(...arguments));
15
- },
16
- };
@@ -1,71 +0,0 @@
1
- import { log } from './log.js';
2
-
3
- export const parseValue = (v) => {
4
- const value = `${v}`;
5
- const number = parseFloat(value);
6
- let unit = 'unsupported';
7
-
8
- if (/^\d+$/.test(value) && number !== 0) {
9
- unit = 'px';
10
- }
11
-
12
- const match = value.match(/px|rem|em/);
13
- if (match) {
14
- unit = match[0];
15
- }
16
-
17
- if (number === 0) {
18
- unit = 'zero';
19
- }
20
-
21
- return { number, unit };
22
- };
23
-
24
- export const parseFontSizeValue = (value) => {
25
- const values = {};
26
- if (typeof value === 'string') {
27
- values.fontSize = parseValue(value);
28
- } else if (Array.isArray(value)) {
29
- values.fontSize = parseValue(value[0]);
30
- if (typeof value[1] === 'string') {
31
- values.lineHeight = parseValue(value[1]);
32
- } else if (typeof value[1] === 'object') {
33
- if ('lineHeight' in value[1]) {
34
- values.lineHeight = parseValue(value[1].lineHeight);
35
- }
36
- if ('letterSpacing' in value[1]) {
37
- values.letterSpacing = parseValue(value[1].letterSpacing);
38
- }
39
- }
40
- }
41
- return values;
42
- };
43
-
44
- export const checkValues = (start, end, value, prop = null) => {
45
- if (start.number === end.number) {
46
- log.error(
47
- `Same value for start an end${
48
- prop ? ` (${prop})` : ''
49
- }: "clamp-[${value}]".`
50
- );
51
- return null;
52
- }
53
-
54
- if (start.unit !== end.unit && start.unit !== 'zero' && end.unit !== 'zero') {
55
- log.error(
56
- `Units need to match${prop ? ` (${prop})` : ''}: "clamp-[${value}]".`
57
- );
58
- return null;
59
- }
60
-
61
- if (start.unit === 'unsupported' || end.unit === 'unsupported') {
62
- log.error(
63
- `Only px, rem and em units are supported${
64
- prop ? ` (${prop})` : ''
65
- }: "clamp-[${value}]".`
66
- );
67
- return null;
68
- }
69
-
70
- return true;
71
- };