From 31380e0d90ec0fb0e3b61b9a2a5cd983ab86b874 Mon Sep 17 00:00:00 2001 From: Antonio Laguna <sombragriselros@gmail.com> Date: Fri, 14 Dec 2018 12:41:31 +0100 Subject: [PATCH 1/3] Safe checking if params are present --- src/plugins/postcss-icss-parser.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/plugins/postcss-icss-parser.js b/src/plugins/postcss-icss-parser.js index 1cb7a988..2f2cba99 100644 --- a/src/plugins/postcss-icss-parser.js +++ b/src/plugins/postcss-icss-parser.js @@ -76,7 +76,9 @@ export default postcss.plugin( // Replace tokens in at-rules css.walkAtRules((atrule) => { // eslint-disable-next-line no-param-reassign - atrule.params = replaceImportsInString(atrule.params.toString()); + if (atrule.params) { + atrule.params = replaceImportsInString(atrule.params.toString()); + } }); // Replace tokens in export From 9d0c096a7b53f37f8c1d7ade3227bb5cb5fafe6f Mon Sep 17 00:00:00 2001 From: Antonio Laguna <sombragriselros@gmail.com> Date: Fri, 14 Dec 2018 13:01:43 +0100 Subject: [PATCH 2/3] Fixing eslint To be next to where the infraction happens --- src/plugins/postcss-icss-parser.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/postcss-icss-parser.js b/src/plugins/postcss-icss-parser.js index 2f2cba99..9c0bbf30 100644 --- a/src/plugins/postcss-icss-parser.js +++ b/src/plugins/postcss-icss-parser.js @@ -75,8 +75,8 @@ export default postcss.plugin( // Replace tokens in at-rules css.walkAtRules((atrule) => { - // eslint-disable-next-line no-param-reassign if (atrule.params) { + // eslint-disable-next-line no-param-reassign atrule.params = replaceImportsInString(atrule.params.toString()); } }); From 2bfb0b5b5044419d9f8a08543c5630376bb404d8 Mon Sep 17 00:00:00 2001 From: Antonio Laguna <sombragriselros@gmail.com> Date: Fri, 14 Dec 2018 13:27:34 +0100 Subject: [PATCH 3/3] Adding comment to if rule --- src/plugins/postcss-icss-parser.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/plugins/postcss-icss-parser.js b/src/plugins/postcss-icss-parser.js index 9c0bbf30..6730f50b 100644 --- a/src/plugins/postcss-icss-parser.js +++ b/src/plugins/postcss-icss-parser.js @@ -75,6 +75,8 @@ export default postcss.plugin( // Replace tokens in at-rules css.walkAtRules((atrule) => { + // Due reusing `ast` from `postcss-loader` some plugins may lack + // `params` property, we need to account for this possibility if (atrule.params) { // eslint-disable-next-line no-param-reassign atrule.params = replaceImportsInString(atrule.params.toString());