{"version":3,"sources":["jsdelivr-header.js","/npm/stylelint-gamut@1.3.4/src/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,aAEA,MAAM,UAAY,QAAQ,aACpB,MAAQ,QAAQ,cAAc,SAE9B,2BACL,2BAA0B,yBAC1B,yBAAwB,sBACxB,sBAAqB,gCACrB,gCAA+B,iBAC/B,kBACG,QAAQ,WAEN,SAAW,iCAEX,SAAW,UAAU,MAAM,aAAa,SAAU,CACvD,SAAW,GAAU,wCAAwC,OAGxD,KAAO,CACZ,IAAK,0EAIA,aAAgB,GACd,CAAC,EAAM,KAKb,IAJqB,UAAU,MAAM,gBAAgB,EAAQ,SAAU,CACtE,OAAQ,IAIR,OAGD,MAAM,EAAmB,CAAC,EAE1B,EAAK,WAAW,IACf,IAAK,yBAAyB,EAAK,MAAO,OAE1C,MAAM,EAAS,EAAK,MAAM,MACzB,uCAGD,GAAK,EAGL,IAAK,MAAM,KAAS,EACnB,EAAM,GAGP,SAAS,EAAM,GAMd,IAJE,EAAM,WAAW,YACjB,EAAM,SAAS,YACd,iBAAiB,EAAM,MAAM,KAAK,KAEhB,OAErB,IAAI,EACJ,GAAI,EAAM,WAAW,UAAW,CAC/B,MAAM,EAAU,EAAM,MAAM,GAAI,GAChC,IACC,EAAiB,IAChB,EAAiB,GAAS,QAI3B,OAFA,EAAkB,EAAiB,GAAS,KAI9C,CAEA,MAAM,EAAQ,IAAI,MAAM,GAAmB,GAE3C,GAAI,EAAM,QAAQ,QAAS,OAC3B,GAAI,EAAM,QAAQ,OAAS,2BAA2B,GACrD,OACD,GACC,EAAM,QAAQ,YACd,gCAAgC,GAEhC,OAED,GAAI,EAAK,MAAQ,EAAK,KAAK,WAAW,MAKrC,YAJA,EAAiB,EAAK,MAAQ,CAC7B,MAAO,EAAK,MAAM,OAClB,SAAS,IAKX,MAAM,EAAQ,sBAAsB,GAC9B,EAAW,EAAQ,EAAK,MAAM,OACpC,UAAU,MAAM,OAAO,CACtB,QAAS,SAAS,SAAS,GAC3B,KAAM,EACN,QACA,WACA,SACA,mBAEF,IACC,EAIJ,aAAa,SAAW,SACxB,aAAa,SAAW,SACxB,aAAa,KAAO,KAEpB,OAAO,QAAU,UAAU,aAAa,SAAU","file":"/npm/stylelint-gamut@1.3.4/src/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/stylelint-gamut@1.3.4/src/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\n\nconst stylelint = require(\"stylelint\");\nconst Color = require(\"colorjs.io\").default;\n\nconst {\n\tisInColorGamutP3MediaQuery,\n\tisStandardSyntaxProperty,\n\tdeclarationValueIndex,\n\tisInColorGamutRec2020MediaQuery,\n\tstartsWithNumber,\n} = require(\"./utils\");\n\nconst ruleName = \"gamut/color-no-out-gamut-range\";\n\nconst messages = stylelint.utils.ruleMessages(ruleName, {\n\trejected: (color) => `Unexpected color out of gamut range \"${color}\"`,\n});\n\nconst meta = {\n\turl: \"https://github.com/fpetrakov/stylelint-gamut/blob/master/src/README.md\",\n};\n\n/** @type {import('stylelint').Rule} */\nconst ruleFunction = (primary) => {\n\treturn (root, result) => {\n\t\tconst validOptions = stylelint.utils.validateOptions(result, ruleName, {\n\t\t\tactual: primary,\n\t\t});\n\n\t\tif (!validOptions) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst customProperties = {};\n\n\t\troot.walkDecls((decl) => {\n\t\t\tif (!isStandardSyntaxProperty(decl.prop)) return;\n\n\t\t\tconst values = decl.value.match(\n\t\t\t\t/(oklch|oklab|lab|lch|var)\\([^)]+\\)/g,\n\t\t\t);\n\n\t\t\tif (!values) return;\n\n\t\t\t// value is e.g. lch(48% 82 283 / 67%)\n\t\t\tfor (const value of values) {\n\t\t\t\tcheck(value);\n\t\t\t}\n\n\t\t\tfunction check(value) {\n\t\t\t\tconst shouldBeIgnored =\n\t\t\t\t\t!value.startsWith(\"var(--\") &&\n\t\t\t\t\t(value.includes(\"var(--\") ||\n\t\t\t\t\t\t!startsWithNumber(value.split(\"(\")[1]));\n\n\t\t\t\tif (shouldBeIgnored) return;\n\n\t\t\t\tlet customPropValue;\n\t\t\t\tif (value.startsWith(\"var(--\")) {\n\t\t\t\t\tconst varName = value.slice(4, -1);\n\t\t\t\t\tif (\n\t\t\t\t\t\tcustomProperties[varName] &&\n\t\t\t\t\t\t!customProperties[varName].inQuery\n\t\t\t\t\t) {\n\t\t\t\t\t\tcustomPropValue = customProperties[varName].value;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst color = new Color(customPropValue || value);\n\n\t\t\t\tif (color.inGamut(\"srgb\")) return;\n\t\t\t\tif (color.inGamut(\"p3\") && isInColorGamutP3MediaQuery(decl))\n\t\t\t\t\treturn;\n\t\t\t\tif (\n\t\t\t\t\tcolor.inGamut(\"rec2020\") &&\n\t\t\t\t\tisInColorGamutRec2020MediaQuery(decl)\n\t\t\t\t)\n\t\t\t\t\treturn;\n\n\t\t\t\tif (decl.prop && decl.prop.startsWith(\"--\")) {\n\t\t\t\t\tcustomProperties[decl.prop] = {\n\t\t\t\t\t\tvalue: decl.value.trim(),\n\t\t\t\t\t\tinQuery: false,\n\t\t\t\t\t};\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst index = declarationValueIndex(decl);\n\t\t\t\tconst endIndex = index + decl.value.length;\n\t\t\t\tstylelint.utils.report({\n\t\t\t\t\tmessage: messages.rejected(value),\n\t\t\t\t\tnode: decl,\n\t\t\t\t\tindex,\n\t\t\t\t\tendIndex,\n\t\t\t\t\tresult,\n\t\t\t\t\truleName,\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t};\n};\n\nruleFunction.ruleName = ruleName;\nruleFunction.messages = messages;\nruleFunction.meta = meta;\n\nmodule.exports = stylelint.createPlugin(ruleName, ruleFunction);\n"]}