Merge branch 'jtojnar-postcss-8'

master
Sven Slootweg 2 years ago
commit 2ecb34fc8a

@ -2,13 +2,20 @@
const { validateValue } = require("@validatem/core");
const postcssNested = require("postcss-nested");
const postcssNestedProps = require("postcss-nested-props");
const isPostCSSPlugin = require("./");
/* Plugin (factory) */
console.log(validateValue(postcssNested, [ isPostCSSPlugin ])); // { process: [Function] }
/* Plugin (factory), PostCSS <= 7 */
console.log(validateValue(postcssNestedProps, [ isPostCSSPlugin ])); // { process: [Function (anonymous)] }
/* Plugin function (instance) */
console.log(validateValue(postcssNested(), [ isPostCSSPlugin ])); // { postcssPlugin: 'postcss-nested', postcssVersion: '7.0.32' }
/* Plugin function (instance), PostCSS <= 7 */
console.log(validateValue(postcssNestedProps(), [ isPostCSSPlugin ])); // { postcssPlugin: 'postcss-nested-props', postcssVersion: '6.0.23' }
/* Plugin (factory), PostCSS 8 */
console.log(validateValue(postcssNested, [ isPostCSSPlugin ])); // [Function (anonymous)] { postcss: true }
/* Plugin function (instance), PostCSS 8 */
console.log(validateValue(postcssNested(), [ isPostCSSPlugin ])); // { postcssPlugin: 'postcss-nested', Rule: [Function: Rule] }
console.log(validateValue("hello world", [ isPostCSSPlugin ])); /*
AggregrateValidationError: One or more validation errors occurred:

@ -3,6 +3,8 @@
const wrapError = require("@validatem/wrap-error");
const hasShape = require("@validatem/has-shape");
const isFunction = require("@validatem/is-function");
const isPlainObject = require("@validatem/is-plain-object");
const isValue = require("@validatem/is-value");
const allowExtraProperties = require("@validatem/allow-extra-properties");
const either = require("@validatem/either");
const required = require("@validatem/required");
@ -11,13 +13,13 @@ const ValidationError = require("@validatem/error");
// NOTE: We use `hasShape` explicitly here, since the implicit `hasShape` wrapper you get when specifying an object literal will also enforce that the value *itself* is a plain object. But that is not the case for PostCSS plugins, which are functions that happen to have additional properties specified on them.
function hasPostCSSProperty(object) {
// This is custom logic that only checks whether the property *exists*, and is guaranteed not to attempt to get its *value*, as the property is a getter that lazily constructs an instance. We don't want to trigger that logic just by checking the shape of the object, which might happen if we specify the property in the `hasShape` rule instead.
// This is custom logic that only checks whether the property *exists*, and is guaranteed not to attempt to get its *value* as on PostCSS 7, the property is a getter that lazily constructs an instance. We don't want to trigger that logic just by checking the shape of the object, which might happen if we specify the property in the `hasShape` rule instead.
if (!("postcss" in object)) {
throw new ValidationError(`Must have a 'postcss' property`);
}
}
let plugin = [
let plugin7 = [
isFunction,
hasPostCSSProperty,
allowExtraProperties(hasShape({
@ -25,7 +27,7 @@ let plugin = [
})),
];
let pluginFunction = [
let pluginFunction7 = [
isFunction,
allowExtraProperties(hasShape({
postcssPlugin: [ required ],
@ -33,4 +35,31 @@ let pluginFunction = [
}))
];
module.exports = wrapError("Must be a PostCSS plugin", either([ plugin, pluginFunction ]));
let plugin8 = [
isFunction,
hasPostCSSProperty,
allowExtraProperties(hasShape({
postcss: [ required, isValue(true) ]
})),
];
let pluginFunction8 = [
isPlainObject,
allowExtraProperties(hasShape({
postcssPlugin: [ required ],
}))
];
module.exports = wrapError("Must be a PostCSS plugin", either([
// NOTE: The order of these rules matters, we need to test the v7 options first, to prevent accidental evaluation of the `postcss` property in v7 plugins by the `plugin8` rule
plugin7, pluginFunction7,
plugin8, pluginFunction8
]));
module.exports.v7 = wrapError("Must be a PostCSS <= v7 plugin", either([
plugin7, pluginFunction7
]));
module.exports.v8 = wrapError("Must be a PostCSS v8 plugin", either([
plugin8, pluginFunction8
]));

@ -16,11 +16,14 @@
"@validatem/error": "^1.0.0",
"@validatem/has-shape": "^0.1.5",
"@validatem/is-function": "^0.1.0",
"@validatem/is-plain-object": "^0.1.1",
"@validatem/is-value": "^0.1.0",
"@validatem/required": "^0.1.1",
"@validatem/wrap-error": "^0.1.2"
},
"devDependencies": {
"@validatem/core": "^0.3.3",
"postcss-nested": "^4.2.1"
"postcss-nested": "^5.0.0",
"postcss-nested-props": "^2.0.0"
}
}

@ -4,21 +4,21 @@
"@validatem/allow-extra-properties@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@validatem/allow-extra-properties/-/allow-extra-properties-0.1.0.tgz#e8c434818d6fd74b8cb237cfaa4d548295de13c1"
resolved "https://registry.npmjs.org/@validatem/allow-extra-properties/-/allow-extra-properties-0.1.0.tgz"
integrity sha512-9jihpYxw1vp4FdjnbN0bTVZMLYv//9OjFNTsVLG5OV4xHESwtgkgQEF5/N5rY1iBwoH/pcKuRl44MBZ8eMdrKw==
dependencies:
"@validatem/with-context" "^0.1.0"
"@validatem/annotate-errors@^0.1.2":
version "0.1.2"
resolved "https://registry.yarnpkg.com/@validatem/annotate-errors/-/annotate-errors-0.1.2.tgz#fa9152bb30f4f42b69496b527e38f0c31ff605a9"
resolved "https://registry.npmjs.org/@validatem/annotate-errors/-/annotate-errors-0.1.2.tgz"
integrity sha512-EuX7pzdYI/YpTmZcgdPG481Oi3elAg8JWh/LYXuE1h6MaZk3A8eP5DD33/l7EoKzrysn6y8nCsqNa1ngei562w==
dependencies:
"@validatem/match-validation-error" "^0.1.0"
"@validatem/any-property@^0.1.0":
version "0.1.3"
resolved "https://registry.yarnpkg.com/@validatem/any-property/-/any-property-0.1.3.tgz#fc7768c1922a8bacff9369ae48913672e5350f52"
resolved "https://registry.npmjs.org/@validatem/any-property/-/any-property-0.1.3.tgz"
integrity sha512-jYWxif5ff9pccu7566LIQ/4+snlApXEJUimBywzAriBgS3r4eDBbz3oZFHuiPmhxNK/NNof5YUS+L6Sk3zaMfg==
dependencies:
"@validatem/annotate-errors" "^0.1.2"
@ -30,12 +30,12 @@
"@validatem/combinator@^0.1.0", "@validatem/combinator@^0.1.1":
version "0.1.2"
resolved "https://registry.yarnpkg.com/@validatem/combinator/-/combinator-0.1.2.tgz#eab893d55f1643b9c6857eaf6ff7ed2a728e89ff"
resolved "https://registry.npmjs.org/@validatem/combinator/-/combinator-0.1.2.tgz"
integrity sha512-vE8t1tNXknmN62FlN6LxQmA2c6TwVKZ+fl/Wit3H2unFdOhu7SZj2kRPGjAXdK/ARh/3svYfUBeD75pea0j1Sw==
"@validatem/core@^0.3.3":
version "0.3.3"
resolved "https://registry.yarnpkg.com/@validatem/core/-/core-0.3.3.tgz#f9d812ba75c073e3879b3afae8f5c8c356992717"
resolved "https://registry.npmjs.org/@validatem/core/-/core-0.3.3.tgz"
integrity sha512-2rJdTwc/KlyjQtdn9uWgWYdqLOB3F47tV/Ew5XQ67bHabZhrF6xZF97B6I+C340HH0A7YW1tgNTnKsNh0PvhCg==
dependencies:
"@validatem/annotate-errors" "^0.1.2"
@ -56,7 +56,7 @@
"@validatem/either@^0.1.2":
version "0.1.2"
resolved "https://registry.yarnpkg.com/@validatem/either/-/either-0.1.2.tgz#61ff451b5596ef4dacb1be39a1bd3e40203505c8"
resolved "https://registry.npmjs.org/@validatem/either/-/either-0.1.2.tgz"
integrity sha512-oZwINgEKZ52lrKM5gNEWIdGVlEurdjTonslBWRVbVTxCEEKyXi4dQ7k84yxuG6JOXg3apw1xOBPgzOiQyH89SQ==
dependencies:
"@validatem/combinator" "^0.1.1"
@ -64,14 +64,14 @@
"@validatem/error@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@validatem/error/-/error-1.0.0.tgz#a975904aa4c3e7618d89088a393567a5e1778340"
resolved "https://registry.npmjs.org/@validatem/error/-/error-1.0.0.tgz"
integrity sha512-7M3tV4DhCuimuCRdC2L/topBByDjhzspzeQGNU0S4/mdn2aDNtESYE43K/2Kh/utCAhqXh2gyw89WYxy//t3fQ==
dependencies:
create-error "^0.3.1"
"@validatem/has-shape@^0.1.0", "@validatem/has-shape@^0.1.5":
version "0.1.5"
resolved "https://registry.yarnpkg.com/@validatem/has-shape/-/has-shape-0.1.5.tgz#7fc727e8254fa17c30e1eb4a7661767bb7701535"
resolved "https://registry.npmjs.org/@validatem/has-shape/-/has-shape-0.1.5.tgz"
integrity sha512-Ht+GOOZOle5A7QpcI8cXSfDoGIe//JrA70ibpFOVy7946WQAFmB2icoyUXwsZY+ybnZwY4g/y1NqyqVQ/Z8hzw==
dependencies:
"@validatem/annotate-errors" "^0.1.2"
@ -91,7 +91,7 @@
"@validatem/error" "^1.0.0"
is-callable "^1.1.5"
"@validatem/is-plain-object@^0.1.0":
"@validatem/is-plain-object@^0.1.0", "@validatem/is-plain-object@^0.1.1":
version "0.1.1"
resolved "https://registry.yarnpkg.com/@validatem/is-plain-object/-/is-plain-object-0.1.1.tgz#b7a3ef8ef960882c7c41e84ed709fa0bfb932e93"
integrity sha512-aNGbNIbKRpYI0lRBczlTBbiA+nqN52ADAASdySKg2/QeSCVtYS4uOIeCNIJRAgXe/5sUnLTuL4pgq628uAl7Kw==
@ -99,31 +99,38 @@
"@validatem/error" "^1.0.0"
is-plain-obj "^2.1.0"
"@validatem/is-value@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@validatem/is-value/-/is-value-0.1.0.tgz#b4c7481818a88d7c24400b9b587f83b388b37d56"
integrity sha512-FrwC6AP4W8dN6GCJEX02qNphoRUaN2JtdbIU2ztwPpLFUSgaJ+zvUrIPYDr8f+8YfrI/QIHm+uiY2TNEjQq/iQ==
dependencies:
"@validatem/error" "^1.0.0"
"@validatem/match-special@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@validatem/match-special/-/match-special-0.1.0.tgz#4e0c28f1aee5bf53c1ef30bbf8c755d4946ae0ff"
resolved "https://registry.npmjs.org/@validatem/match-special/-/match-special-0.1.0.tgz"
integrity sha512-TFiq9Wk/1Hoja4PK85WwNYnwBXk3+Lgoj59ZIMxm2an1qmNYp8j+BnSvkKBflba451yIn6V1laU9NJf+/NYZgw==
"@validatem/match-validation-error@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@validatem/match-validation-error/-/match-validation-error-0.1.0.tgz#fa87f5f1836e7c1d9bf6b75b2addf0a5b21e4c1e"
resolved "https://registry.npmjs.org/@validatem/match-validation-error/-/match-validation-error-0.1.0.tgz"
integrity sha512-6akGTk7DdulOreyqDiGdikwRSixQz/AlvARSX18dcWaTFc79KxCLouL2hyoFcor9IIUhu5RTY4/i756y4T1yxA==
dependencies:
"@validatem/match-versioned-special" "^0.1.0"
"@validatem/match-versioned-special@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@validatem/match-versioned-special/-/match-versioned-special-0.1.0.tgz#2eacc48debecdbbe7e3d02f0c0a665afaea9bedf"
resolved "https://registry.npmjs.org/@validatem/match-versioned-special/-/match-versioned-special-0.1.0.tgz"
integrity sha512-xoOTY0bdA2ELj+ntcDVJ8YyMEFIJpjZ4HNPL9lGcbnRFwJBhQcHUAhUpZwkMxu02zH9wkNM1FvYGHxPz40745Q==
"@validatem/match-virtual-property@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@validatem/match-virtual-property/-/match-virtual-property-0.1.0.tgz#4de2de1075987b5f3b356d3f2bcf6c0be5b5fb83"
resolved "https://registry.npmjs.org/@validatem/match-virtual-property/-/match-virtual-property-0.1.0.tgz"
integrity sha512-ssd3coFgwbLuqvZftLZTy3eHN0TFST8oTS2XTViQdXJPXVoJmwEKBpFhXgwnb5Ly1CE037R/KWpjhd1TP/56kQ==
"@validatem/normalize-rules@^0.1.0":
version "0.1.2"
resolved "https://registry.yarnpkg.com/@validatem/normalize-rules/-/normalize-rules-0.1.2.tgz#6529f17a6f36c6e2ae3ef285c59347c2ea208aa1"
resolved "https://registry.npmjs.org/@validatem/normalize-rules/-/normalize-rules-0.1.2.tgz"
integrity sha512-IHc81Sy/W0OiCbmvE3kTB+5OPVJnXWHP2tTXvKO6hVH0qykclMvIPRGgZf1s4dLaeOLKdkkfKyO/pLTVyNCIbA==
dependencies:
"@validatem/has-shape" "^0.1.0"
@ -136,31 +143,31 @@
"@validatem/required@^0.1.0", "@validatem/required@^0.1.1":
version "0.1.1"
resolved "https://registry.yarnpkg.com/@validatem/required/-/required-0.1.1.tgz#64f4a87333fc5955511634036b7f8948ed269170"
resolved "https://registry.npmjs.org/@validatem/required/-/required-0.1.1.tgz"
integrity sha512-vI4NzLfay4RFAzp7xyU34PHb8sAo6w/3frrNh1EY9Xjnw2zxjY5oaxwmbFP1jVevBE6QQEnKogtzUHz/Zuvh6g==
"@validatem/validation-result@^0.1.1", "@validatem/validation-result@^0.1.2":
version "0.1.2"
resolved "https://registry.yarnpkg.com/@validatem/validation-result/-/validation-result-0.1.2.tgz#4e75cfd87305fc78f8d05ac84921a2c99a0348e0"
resolved "https://registry.npmjs.org/@validatem/validation-result/-/validation-result-0.1.2.tgz"
integrity sha512-okmP8JarIwIgfpaVcvZGuQ1yOsLKT3Egt49Ynz6h1MAeGsP/bGHXkkXtbiWOVsk5Tzku5vDVFSrFnF+5IEHKxw==
dependencies:
default-value "^1.0.0"
"@validatem/virtual-property@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@validatem/virtual-property/-/virtual-property-0.1.0.tgz#880540dfd149f98ecf1095d93912e34443381fe4"
resolved "https://registry.npmjs.org/@validatem/virtual-property/-/virtual-property-0.1.0.tgz"
integrity sha512-JUUvWtdqoSkOwlsl20oB3qFHYIL05a/TAfdY4AJcs55QeVTiX5iI1b8IoQW644sIWWooBuLv+XwoxjRsQFczlQ==
"@validatem/with-context@^0.1.0":
version "0.1.2"
resolved "https://registry.yarnpkg.com/@validatem/with-context/-/with-context-0.1.2.tgz#3645c04897664f70995104961277e07b61b4f615"
resolved "https://registry.npmjs.org/@validatem/with-context/-/with-context-0.1.2.tgz"
integrity sha512-noAWf4CsmU+BCz+KOg3GPq9+R9BQLWOQnOgWVfkYHFdLnnbLhl8w/ONdzvFzUYGHIZGKZwsWVCp+Kwz/tAfMnA==
dependencies:
"@validatem/combinator" "^0.1.1"
"@validatem/wrap-error@^0.1.2":
version "0.1.2"
resolved "https://registry.yarnpkg.com/@validatem/wrap-error/-/wrap-error-0.1.2.tgz#146394ef8c9f78df0bb249a03e14b760f6c749fc"
resolved "https://registry.npmjs.org/@validatem/wrap-error/-/wrap-error-0.1.2.tgz"
integrity sha512-UgXDcBUEyo0cHRbUWi8Wl0Bf88L/QLNVKIlxGhiyQwsatk9aDVsNC3H7NgLev1mjjST0idxic8+zGAP4UcYRuA==
dependencies:
"@validatem/combinator" "^0.1.1"
@ -180,15 +187,15 @@ ansi-styles@^3.2.1:
as-expression@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/as-expression/-/as-expression-1.0.0.tgz#7bc620ca4cb2fe0ee90d86729bd6add33b8fd831"
resolved "https://registry.npmjs.org/as-expression/-/as-expression-1.0.0.tgz"
integrity sha512-Iqh4GxNUfxbJdGn6b7/XMzc8m1Dz2ZHouBQ9DDTzyMRO3VPPIAXeoY/sucRxxxXKbUtzwzWZSN6jPR3zfpYHHA==
assure-array@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/assure-array/-/assure-array-1.0.0.tgz#4f4ad16a87659d6200a4fb7103462033d216ec1f"
resolved "https://registry.npmjs.org/assure-array/-/assure-array-1.0.0.tgz"
integrity sha1-T0rRaodlnWIApPtxA0YgM9IW7B8=
chalk@^2.4.2:
chalk@^2.4.1:
version "2.4.2"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@ -211,7 +218,7 @@ color-name@1.1.3:
create-error@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/create-error/-/create-error-0.3.1.tgz#69810245a629e654432bf04377360003a5351a23"
resolved "https://registry.npmjs.org/create-error/-/create-error-0.3.1.tgz"
integrity sha1-aYECRaYp5lRDK/BDdzYAA6U1GiM=
cssesc@^3.0.0:
@ -221,14 +228,14 @@ cssesc@^3.0.0:
default-value@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/default-value/-/default-value-1.0.0.tgz#8c6f52a5a1193fe78fdc9f86eb71d16c9757c83a"
resolved "https://registry.npmjs.org/default-value/-/default-value-1.0.0.tgz"
integrity sha1-jG9SpaEZP+eP3J+G63HRbJdXyDo=
dependencies:
es6-promise-try "0.0.1"
es6-promise-try@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/es6-promise-try/-/es6-promise-try-0.0.1.tgz#10f140dad27459cef949973e5d21a087f7274b20"
resolved "https://registry.npmjs.org/es6-promise-try/-/es6-promise-try-0.0.1.tgz"
integrity sha1-EPFA2tJ0Wc75SZc+XSGgh/cnSyA=
escape-string-regexp@^1.0.5:
@ -238,7 +245,7 @@ escape-string-regexp@^1.0.5:
flatten@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b"
resolved "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz"
integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==
has-flag@^3.0.0:
@ -246,51 +253,63 @@ has-flag@^3.0.0:
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
indexes-of@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc=
is-arguments@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3"
resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz"
integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==
is-callable@^1.1.5:
version "1.2.0"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb"
integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==
version "1.2.4"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945"
integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==
is-plain-obj@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287"
resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz"
integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==
postcss-nested@^4.2.1:
version "4.2.1"
resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-4.2.1.tgz#4bc2e5b35e3b1e481ff81e23b700da7f82a8b248"
integrity sha512-AMayXX8tS0HCp4O4lolp4ygj9wBn32DJWXvG6gCv+ZvJrEa00GUxJcJEEzMh87BIe6FrWdYkpR2cuyqHKrxmXw==
postcss-nested-props@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/postcss-nested-props/-/postcss-nested-props-2.0.0.tgz#91ad31b05cbfbf0ff8a38b6c22ef46efbdb0b03a"
integrity sha512-fwq48WtIGZCjPMAjUAT6ZFkGZxPmlT+MVA+KE5QtnqORIa1n4rKEr2KQ2yS+cZOH1oEOb5zc/BoPcPe4+FR8+Q==
dependencies:
postcss "^6.0.14"
pseudo-classes "^1.0.0"
pseudo-elements "^1.1.0"
postcss-nested@^5.0.0:
version "5.0.6"
resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-5.0.6.tgz#466343f7fc8d3d46af3e7dba3fcd47d052a945bc"
integrity sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==
dependencies:
postcss "^7.0.21"
postcss-selector-parser "^6.0.2"
postcss-selector-parser "^6.0.6"
postcss-selector-parser@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c"
integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==
postcss-selector-parser@^6.0.6:
version "6.0.9"
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz#ee71c3b9ff63d9cd130838876c13a2ec1a992b2f"
integrity sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==
dependencies:
cssesc "^3.0.0"
indexes-of "^1.0.1"
uniq "^1.0.1"
util-deprecate "^1.0.2"
postcss@^7.0.21:
version "7.0.32"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d"
integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==
postcss@^6.0.14:
version "6.0.23"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324"
integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==
dependencies:
chalk "^2.4.2"
chalk "^2.4.1"
source-map "^0.6.1"
supports-color "^6.1.0"
supports-color "^5.4.0"
pseudo-classes@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/pseudo-classes/-/pseudo-classes-1.0.0.tgz#60a69b67395c36ff119c4d1c86e1981785206b96"
integrity sha1-YKabZzlcNv8RnE0chuGYF4Uga5Y=
pseudo-elements@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/pseudo-elements/-/pseudo-elements-1.1.0.tgz#9ba6dd8ac3ce1f3d7d36d4355aa3e28d08391f28"
integrity sha1-m6bdisPOHz19NtQ1WqPijQg5Hyg=
source-map@^0.6.1:
version "0.6.1"
@ -299,24 +318,17 @@ source-map@^0.6.1:
split-filter-n@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/split-filter-n/-/split-filter-n-1.1.2.tgz#268be1ec9c4d93dfb27b030c06165ac1b6f70f66"
resolved "https://registry.npmjs.org/split-filter-n/-/split-filter-n-1.1.2.tgz"
integrity sha512-+hXSQYpKe1uyXPXI4zQtAJAlaF2EzEc+BaF2goMeNL5oUD5YLqrVcpjxELJxpomXfwMCUaYLAszEbdY9gKVdHQ==
supports-color@^5.3.0:
supports-color@^5.3.0, supports-color@^5.4.0:
version "5.5.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
dependencies:
has-flag "^3.0.0"
supports-color@^6.1.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3"
integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==
dependencies:
has-flag "^3.0.0"
uniq@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=
util-deprecate@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=

Loading…
Cancel
Save