stylelint-webpack-plugin 3.0.0 → 3.0.1

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.
@@ -1,3 +1,29 @@
1
+ /**
2
+ * @template T
3
+ * @param {T} value
4
+ * @return {
5
+ T extends (null | undefined)
6
+ ? []
7
+ : T extends string
8
+ ? [string]
9
+ : T extends readonly unknown[]
10
+ ? T
11
+ : T extends Iterable<infer T>
12
+ ? T[]
13
+ : [T]
14
+ }
15
+ */
16
+ export function arrify<T>(
17
+ value: T
18
+ ): T extends null | undefined
19
+ ? []
20
+ : T extends string
21
+ ? [string]
22
+ : T extends readonly unknown[]
23
+ ? T
24
+ : T extends Iterable<infer T_1>
25
+ ? T_1[]
26
+ : [T];
1
27
  /**
2
28
  * @param {string|string[]} files
3
29
  * @param {string} context
package/dist/index.js CHANGED
@@ -9,8 +9,6 @@ var _path = require("path");
9
9
 
10
10
  var _globby = _interopRequireDefault(require("globby"));
11
11
 
12
- var _arrify = _interopRequireDefault(require("arrify"));
13
-
14
12
  var _micromatch = require("micromatch");
15
13
 
16
14
  var _options = require("./options");
@@ -90,7 +88,7 @@ class StylelintWebpackPlugin {
90
88
  const excludeDefault = ['**/node_modules/**', String(compiler.options.output.path)];
91
89
  const options = { ...this.options,
92
90
  exclude: (0, _utils.parseFiles)(this.options.exclude || excludeDefault, context),
93
- extensions: (0, _arrify.default)(this.options.extensions),
91
+ extensions: (0, _utils.arrify)(this.options.extensions),
94
92
  files: (0, _utils.parseFiles)(this.options.files || '', context)
95
93
  };
96
94
  const wanted = (0, _utils.parseFoldersToGlobs)(options.files, options.extensions);
package/dist/linter.js CHANGED
@@ -7,15 +7,13 @@ exports.default = linter;
7
7
 
8
8
  var _path = require("path");
9
9
 
10
- var _arrify = _interopRequireDefault(require("arrify"));
11
-
12
10
  var _StylelintError = _interopRequireDefault(require("./StylelintError"));
13
11
 
14
12
  var _getStylelint = _interopRequireDefault(require("./getStylelint"));
15
13
 
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ var _utils = require("./utils");
17
15
 
18
- // @ts-ignore
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
17
 
20
18
  /** @typedef {import('stylelint')} Stylelint */
21
19
 
@@ -88,7 +86,7 @@ function linter(key, options, compilation) {
88
86
  */
89
87
 
90
88
  function lint(files) {
91
- for (const file of (0, _arrify.default)(files)) {
89
+ for (const file of (0, _utils.arrify)(files)) {
92
90
  delete crossRunResultStorage[file];
93
91
  }
94
92
 
package/dist/utils.js CHANGED
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.arrify = arrify;
6
7
  exports.parseFiles = parseFiles;
7
8
  exports.parseFoldersToGlobs = parseFoldersToGlobs;
8
9
  exports.jsonStringifyReplacerSortKeys = void 0;
@@ -11,21 +12,62 @@ var _path = require("path");
11
12
 
12
13
  var _fs = require("fs");
13
14
 
14
- var _arrify = _interopRequireDefault(require("arrify"));
15
-
16
15
  var _normalizePath = _interopRequireDefault(require("normalize-path"));
17
16
 
18
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
18
 
20
19
  // @ts-ignore
21
20
 
21
+ /**
22
+ * @template T
23
+ * @param {T} value
24
+ * @return {
25
+ T extends (null | undefined)
26
+ ? []
27
+ : T extends string
28
+ ? [string]
29
+ : T extends readonly unknown[]
30
+ ? T
31
+ : T extends Iterable<infer T>
32
+ ? T[]
33
+ : [T]
34
+ }
35
+ */
36
+ function arrify(value) {
37
+ // eslint-disable-next-line no-undefined
38
+ if (value === null || value === undefined) {
39
+ // @ts-ignore
40
+ return [];
41
+ }
42
+
43
+ if (Array.isArray(value)) {
44
+ // @ts-ignore
45
+ return value;
46
+ }
47
+
48
+ if (typeof value === 'string') {
49
+ // @ts-ignore
50
+ return [value];
51
+ } // @ts-ignore
52
+
53
+
54
+ if (typeof value[Symbol.iterator] === 'function') {
55
+ // @ts-ignore
56
+ return [...value];
57
+ } // @ts-ignore
58
+
59
+
60
+ return [value];
61
+ }
22
62
  /**
23
63
  * @param {string|string[]} files
24
64
  * @param {string} context
25
65
  * @returns {string[]}
26
66
  */
67
+
68
+
27
69
  function parseFiles(files, context) {
28
- return (0, _arrify.default)(files).map((
70
+ return arrify(files).map((
29
71
  /** @type {string} */
30
72
  file) => (0, _normalizePath.default)((0, _path.resolve)(context, file)));
31
73
  }
@@ -37,12 +79,12 @@ function parseFiles(files, context) {
37
79
 
38
80
 
39
81
  function parseFoldersToGlobs(patterns, extensions = []) {
40
- const extensionsList = (0, _arrify.default)(extensions);
82
+ const extensionsList = arrify(extensions);
41
83
  const [prefix, postfix] = extensionsList.length > 1 ? ['{', '}'] : ['', ''];
42
84
  const extensionsGlob = extensionsList.map((
43
85
  /** @type {string} */
44
86
  extension) => extension.replace(/^\./u, '')).join(',');
45
- return (0, _arrify.default)(patterns).map((
87
+ return arrify(patterns).map((
46
88
  /** @type {string} */
47
89
  pattern) => {
48
90
  try {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stylelint-webpack-plugin",
3
- "version": "3.0.0",
3
+ "version": "3.0.1",
4
4
  "description": "A Stylelint plugin for webpack",
5
5
  "license": "MIT",
6
6
  "repository": "webpack-contrib/stylelint-webpack-plugin",
@@ -47,7 +47,6 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@types/stylelint": "^13.13.1",
50
- "arrify": "^3.0.0",
51
50
  "jest-worker": "^27.0.6",
52
51
  "globby": "^11.0.4",
53
52
  "micromatch": "^4.0.4",