npm-pkgbuild 20.8.15 → 20.8.16

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.
Files changed (2) hide show
  1. package/package.json +2 -2
  2. package/src/util.mjs +20 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npm-pkgbuild",
3
- "version": "20.8.15",
3
+ "version": "20.8.16",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": false
@@ -53,7 +53,7 @@
53
53
  "compare-versions": "^6.1.1",
54
54
  "content-entry": "^14.2.7",
55
55
  "content-entry-filesystem": "^9.0.14",
56
- "content-entry-transform": "^1.7.0",
56
+ "content-entry-transform": "^1.7.1",
57
57
  "execa": "^10.0.1",
58
58
  "ini": "^7.0.0",
59
59
  "iterable-string-interceptor": "^3.0.8",
package/src/util.mjs CHANGED
@@ -138,8 +138,26 @@ export function quote(v, qc = "'") {
138
138
  return v.match(/^\w+$/) ? v : qc + v + qc;
139
139
  }
140
140
 
141
- export function asArray(o) {
142
- return Array.isArray(o) ? o : o ? [o] : [];
141
+ /**
142
+ * Convert scalar or iterable into Array.
143
+ * @param {any} value
144
+ * @returns {Array<any>}
145
+ */
146
+ export function asArray(value) {
147
+ switch (typeof value) {
148
+ case "undefined":
149
+ return [];
150
+ case "object":
151
+ if (Array.isArray(value)) {
152
+ return value;
153
+ }
154
+
155
+ if (value instanceof Iterator || value[Symbol.iterator]) {
156
+ return [...value];
157
+ }
158
+ }
159
+
160
+ return [value];
143
161
  }
144
162
 
145
163
  /**