From e71c85eb474e1d93472c8bdd91a294c31ff34a54 Mon Sep 17 00:00:00 2001 From: Michael Cousins Date: Tue, 12 Sep 2023 22:15:29 -0400 Subject: [PATCH] fix: do not crash if pkg.(d|devD)ependencies unset --- src/index.js | 4 +++- test/fixtures/package-json-files/no-postcss/package.json | 5 +---- .../postcss-v8-in-dependencies/package.json | 5 ++--- .../postcss-v8-in-devDependencies/package.json | 3 +-- 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/index.js b/src/index.js index a0771805..cb23147e 100644 --- a/src/index.js +++ b/src/index.js @@ -162,7 +162,9 @@ export default async function loader(content, sourceMap, meta) { } if (pkg) { - if (!pkg.dependencies.postcss && !pkg.devDependencies.postcss) { + const { dependencies = {}, devDependencies = {} } = pkg; + + if (!dependencies.postcss && !devDependencies.postcss) { this.emitWarning( new Error( "Add postcss as project dependency. postcss is not a peer dependency for postcss-loader. " + diff --git a/test/fixtures/package-json-files/no-postcss/package.json b/test/fixtures/package-json-files/no-postcss/package.json index 255dac01..0967ef42 100644 --- a/test/fixtures/package-json-files/no-postcss/package.json +++ b/test/fixtures/package-json-files/no-postcss/package.json @@ -1,4 +1 @@ -{ - "dependencies": {}, - "devDependencies": {} -} \ No newline at end of file +{} diff --git a/test/fixtures/package-json-files/postcss-v8-in-dependencies/package.json b/test/fixtures/package-json-files/postcss-v8-in-dependencies/package.json index 7e20ba4d..2003d907 100644 --- a/test/fixtures/package-json-files/postcss-v8-in-dependencies/package.json +++ b/test/fixtures/package-json-files/postcss-v8-in-dependencies/package.json @@ -1,6 +1,5 @@ { "dependencies": { "postcss": "^8.0.0" - }, - "devDependencies": {} -} \ No newline at end of file + } +} diff --git a/test/fixtures/package-json-files/postcss-v8-in-devDependencies/package.json b/test/fixtures/package-json-files/postcss-v8-in-devDependencies/package.json index 0712e31c..b750286e 100644 --- a/test/fixtures/package-json-files/postcss-v8-in-devDependencies/package.json +++ b/test/fixtures/package-json-files/postcss-v8-in-devDependencies/package.json @@ -1,6 +1,5 @@ { - "dependencies": {}, "devDependencies": { "postcss": "^8.0.0" } -} \ No newline at end of file +}