@storybook/addon-vitest 10.1.0-alpha.1 → 10.1.0-alpha.11
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.
- package/dist/_browser-chunks/chunk-ULSHVN74.js +60 -0
- package/dist/_node-chunks/chunk-2WX72TIY.js +35 -0
- package/dist/_node-chunks/chunk-BEGZGAUW.js +1697 -0
- package/dist/_node-chunks/chunk-CHRIX3Z2.js +339 -0
- package/dist/_node-chunks/chunk-FCFZB5YS.js +45 -0
- package/dist/_node-chunks/chunk-FD2MOKYY.js +69 -0
- package/dist/_node-chunks/chunk-L7WYCUSW.js +138 -0
- package/dist/_node-chunks/chunk-TCQNKRGF.js +83 -0
- package/dist/_node-chunks/{chunk-RWZYDWYZ.js → chunk-XN666246.js} +15 -24
- package/dist/index.js +1 -5
- package/dist/manager.js +270 -490
- package/dist/node/coverage-reporter.js +319 -864
- package/dist/node/vitest.js +189 -454
- package/dist/postinstall.js +476 -1343
- package/dist/preset.js +150 -338
- package/dist/vitest-plugin/global-setup.js +50 -105
- package/dist/vitest-plugin/index.js +1160 -2377
- package/dist/vitest-plugin/setup-file.js +6 -12
- package/dist/vitest-plugin/test-utils.js +31 -71
- package/package.json +3 -3
- package/dist/_browser-chunks/chunk-CAYLRBRX.js +0 -77
- package/dist/_browser-chunks/chunk-JK72E6FR.js +0 -6
- package/dist/_node-chunks/chunk-4EEN4T72.js +0 -37
- package/dist/_node-chunks/chunk-5D5GEQQR.js +0 -104
- package/dist/_node-chunks/chunk-5KVXKVT6.js +0 -98
- package/dist/_node-chunks/chunk-CPO3S7HD.js +0 -481
- package/dist/_node-chunks/chunk-JLLEOCT6.js +0 -247
- package/dist/_node-chunks/chunk-SIWL37RV.js +0 -2574
- package/dist/_node-chunks/chunk-XYGEMTYA.js +0 -50
package/dist/postinstall.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import CJS_COMPAT_NODE_URL_zfiyucf8tb from 'node:url';
|
|
2
|
+
import CJS_COMPAT_NODE_PATH_zfiyucf8tb from 'node:path';
|
|
3
|
+
import CJS_COMPAT_NODE_MODULE_zfiyucf8tb from "node:module";
|
|
4
4
|
|
|
5
|
-
var __filename =
|
|
6
|
-
var __dirname =
|
|
7
|
-
var require =
|
|
5
|
+
var __filename = CJS_COMPAT_NODE_URL_zfiyucf8tb.fileURLToPath(import.meta.url);
|
|
6
|
+
var __dirname = CJS_COMPAT_NODE_PATH_zfiyucf8tb.dirname(__filename);
|
|
7
|
+
var require = CJS_COMPAT_NODE_MODULE_zfiyucf8tb.createRequire(import.meta.url);
|
|
8
8
|
|
|
9
9
|
// ------------------------------------------------------------
|
|
10
10
|
// end of CJS compatibility banner, injected by Storybook's esbuild configuration
|
|
@@ -12,22 +12,22 @@ var require = CJS_COMPAT_NODE_MODULE_8w58nre1r1b.createRequire(import.meta.url);
|
|
|
12
12
|
import {
|
|
13
13
|
execa,
|
|
14
14
|
resolvePackageDir
|
|
15
|
-
} from "./_node-chunks/chunk-
|
|
15
|
+
} from "./_node-chunks/chunk-BEGZGAUW.js";
|
|
16
16
|
import {
|
|
17
17
|
any,
|
|
18
18
|
getAddonNames,
|
|
19
19
|
up
|
|
20
|
-
} from "./_node-chunks/chunk-
|
|
20
|
+
} from "./_node-chunks/chunk-FD2MOKYY.js";
|
|
21
21
|
import {
|
|
22
22
|
DOCUMENTATION_LINK,
|
|
23
23
|
SUPPORTED_FRAMEWORKS
|
|
24
|
-
} from "./_node-chunks/chunk-
|
|
24
|
+
} from "./_node-chunks/chunk-TCQNKRGF.js";
|
|
25
25
|
import {
|
|
26
26
|
dirname,
|
|
27
27
|
join,
|
|
28
28
|
relative,
|
|
29
29
|
resolve
|
|
30
|
-
} from "./_node-chunks/chunk-
|
|
30
|
+
} from "./_node-chunks/chunk-L7WYCUSW.js";
|
|
31
31
|
import {
|
|
32
32
|
require_compare,
|
|
33
33
|
require_constants,
|
|
@@ -37,31 +37,27 @@ import {
|
|
|
37
37
|
require_parse_options,
|
|
38
38
|
require_re,
|
|
39
39
|
require_semver
|
|
40
|
-
} from "./_node-chunks/chunk-
|
|
40
|
+
} from "./_node-chunks/chunk-CHRIX3Z2.js";
|
|
41
41
|
import {
|
|
42
42
|
__commonJS,
|
|
43
|
-
__name,
|
|
44
43
|
__toESM
|
|
45
|
-
} from "./_node-chunks/chunk-
|
|
44
|
+
} from "./_node-chunks/chunk-FCFZB5YS.js";
|
|
46
45
|
|
|
47
46
|
// ../../node_modules/semver/functions/parse.js
|
|
48
47
|
var require_parse = __commonJS({
|
|
49
48
|
"../../node_modules/semver/functions/parse.js"(exports, module) {
|
|
50
49
|
"use strict";
|
|
51
|
-
var SemVer = require_semver()
|
|
52
|
-
|
|
53
|
-
if (version instanceof SemVer) {
|
|
50
|
+
var SemVer = require_semver(), parse = (version, options, throwErrors = !1) => {
|
|
51
|
+
if (version instanceof SemVer)
|
|
54
52
|
return version;
|
|
55
|
-
}
|
|
56
53
|
try {
|
|
57
54
|
return new SemVer(version, options);
|
|
58
55
|
} catch (er) {
|
|
59
|
-
if (!throwErrors)
|
|
56
|
+
if (!throwErrors)
|
|
60
57
|
return null;
|
|
61
|
-
}
|
|
62
58
|
throw er;
|
|
63
59
|
}
|
|
64
|
-
}
|
|
60
|
+
};
|
|
65
61
|
module.exports = parse;
|
|
66
62
|
}
|
|
67
63
|
});
|
|
@@ -70,11 +66,10 @@ var require_parse = __commonJS({
|
|
|
70
66
|
var require_valid = __commonJS({
|
|
71
67
|
"../../node_modules/semver/functions/valid.js"(exports, module) {
|
|
72
68
|
"use strict";
|
|
73
|
-
var parse = require_parse()
|
|
74
|
-
|
|
75
|
-
const v = parse(version, options);
|
|
69
|
+
var parse = require_parse(), valid = (version, options) => {
|
|
70
|
+
let v = parse(version, options);
|
|
76
71
|
return v ? v.version : null;
|
|
77
|
-
}
|
|
72
|
+
};
|
|
78
73
|
module.exports = valid;
|
|
79
74
|
}
|
|
80
75
|
});
|
|
@@ -83,11 +78,10 @@ var require_valid = __commonJS({
|
|
|
83
78
|
var require_clean = __commonJS({
|
|
84
79
|
"../../node_modules/semver/functions/clean.js"(exports, module) {
|
|
85
80
|
"use strict";
|
|
86
|
-
var parse = require_parse()
|
|
87
|
-
|
|
88
|
-
const s = parse(version.trim().replace(/^[=v]+/, ""), options);
|
|
81
|
+
var parse = require_parse(), clean = (version, options) => {
|
|
82
|
+
let s = parse(version.trim().replace(/^[=v]+/, ""), options);
|
|
89
83
|
return s ? s.version : null;
|
|
90
|
-
}
|
|
84
|
+
};
|
|
91
85
|
module.exports = clean;
|
|
92
86
|
}
|
|
93
87
|
});
|
|
@@ -96,22 +90,17 @@ var require_clean = __commonJS({
|
|
|
96
90
|
var require_inc = __commonJS({
|
|
97
91
|
"../../node_modules/semver/functions/inc.js"(exports, module) {
|
|
98
92
|
"use strict";
|
|
99
|
-
var SemVer = require_semver()
|
|
100
|
-
|
|
101
|
-
if (typeof options === "string") {
|
|
102
|
-
identifierBase = identifier;
|
|
103
|
-
identifier = options;
|
|
104
|
-
options = void 0;
|
|
105
|
-
}
|
|
93
|
+
var SemVer = require_semver(), inc = (version, release, options, identifier, identifierBase) => {
|
|
94
|
+
typeof options == "string" && (identifierBase = identifier, identifier = options, options = void 0);
|
|
106
95
|
try {
|
|
107
96
|
return new SemVer(
|
|
108
97
|
version instanceof SemVer ? version.version : version,
|
|
109
98
|
options
|
|
110
99
|
).inc(release, identifier, identifierBase).version;
|
|
111
|
-
} catch
|
|
100
|
+
} catch {
|
|
112
101
|
return null;
|
|
113
102
|
}
|
|
114
|
-
}
|
|
103
|
+
};
|
|
115
104
|
module.exports = inc;
|
|
116
105
|
}
|
|
117
106
|
});
|
|
@@ -120,42 +109,20 @@ var require_inc = __commonJS({
|
|
|
120
109
|
var require_diff = __commonJS({
|
|
121
110
|
"../../node_modules/semver/functions/diff.js"(exports, module) {
|
|
122
111
|
"use strict";
|
|
123
|
-
var parse = require_parse()
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
const v2 = parse(version2, null, true);
|
|
127
|
-
const comparison = v1.compare(v2);
|
|
128
|
-
if (comparison === 0) {
|
|
112
|
+
var parse = require_parse(), diff = (version1, version2) => {
|
|
113
|
+
let v1 = parse(version1, null, !0), v2 = parse(version2, null, !0), comparison = v1.compare(v2);
|
|
114
|
+
if (comparison === 0)
|
|
129
115
|
return null;
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
const lowVersion = v1Higher ? v2 : v1;
|
|
134
|
-
const highHasPre = !!highVersion.prerelease.length;
|
|
135
|
-
const lowHasPre = !!lowVersion.prerelease.length;
|
|
136
|
-
if (lowHasPre && !highHasPre) {
|
|
137
|
-
if (!lowVersion.patch && !lowVersion.minor) {
|
|
116
|
+
let v1Higher = comparison > 0, highVersion = v1Higher ? v1 : v2, lowVersion = v1Higher ? v2 : v1, highHasPre = !!highVersion.prerelease.length;
|
|
117
|
+
if (!!lowVersion.prerelease.length && !highHasPre) {
|
|
118
|
+
if (!lowVersion.patch && !lowVersion.minor)
|
|
138
119
|
return "major";
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
if (lowVersion.minor && !lowVersion.patch) {
|
|
142
|
-
return "minor";
|
|
143
|
-
}
|
|
144
|
-
return "patch";
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
const prefix = highHasPre ? "pre" : "";
|
|
148
|
-
if (v1.major !== v2.major) {
|
|
149
|
-
return prefix + "major";
|
|
120
|
+
if (lowVersion.compareMain(highVersion) === 0)
|
|
121
|
+
return lowVersion.minor && !lowVersion.patch ? "minor" : "patch";
|
|
150
122
|
}
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
if (v1.patch !== v2.patch) {
|
|
155
|
-
return prefix + "patch";
|
|
156
|
-
}
|
|
157
|
-
return "prerelease";
|
|
158
|
-
}, "diff");
|
|
123
|
+
let prefix = highHasPre ? "pre" : "";
|
|
124
|
+
return v1.major !== v2.major ? prefix + "major" : v1.minor !== v2.minor ? prefix + "minor" : v1.patch !== v2.patch ? prefix + "patch" : "prerelease";
|
|
125
|
+
};
|
|
159
126
|
module.exports = diff;
|
|
160
127
|
}
|
|
161
128
|
});
|
|
@@ -164,8 +131,7 @@ var require_diff = __commonJS({
|
|
|
164
131
|
var require_major = __commonJS({
|
|
165
132
|
"../../node_modules/semver/functions/major.js"(exports, module) {
|
|
166
133
|
"use strict";
|
|
167
|
-
var SemVer = require_semver();
|
|
168
|
-
var major = /* @__PURE__ */ __name((a, loose) => new SemVer(a, loose).major, "major");
|
|
134
|
+
var SemVer = require_semver(), major = (a, loose) => new SemVer(a, loose).major;
|
|
169
135
|
module.exports = major;
|
|
170
136
|
}
|
|
171
137
|
});
|
|
@@ -174,8 +140,7 @@ var require_major = __commonJS({
|
|
|
174
140
|
var require_minor = __commonJS({
|
|
175
141
|
"../../node_modules/semver/functions/minor.js"(exports, module) {
|
|
176
142
|
"use strict";
|
|
177
|
-
var SemVer = require_semver();
|
|
178
|
-
var minor = /* @__PURE__ */ __name((a, loose) => new SemVer(a, loose).minor, "minor");
|
|
143
|
+
var SemVer = require_semver(), minor = (a, loose) => new SemVer(a, loose).minor;
|
|
179
144
|
module.exports = minor;
|
|
180
145
|
}
|
|
181
146
|
});
|
|
@@ -184,8 +149,7 @@ var require_minor = __commonJS({
|
|
|
184
149
|
var require_patch = __commonJS({
|
|
185
150
|
"../../node_modules/semver/functions/patch.js"(exports, module) {
|
|
186
151
|
"use strict";
|
|
187
|
-
var SemVer = require_semver();
|
|
188
|
-
var patch = /* @__PURE__ */ __name((a, loose) => new SemVer(a, loose).patch, "patch");
|
|
152
|
+
var SemVer = require_semver(), patch = (a, loose) => new SemVer(a, loose).patch;
|
|
189
153
|
module.exports = patch;
|
|
190
154
|
}
|
|
191
155
|
});
|
|
@@ -194,11 +158,10 @@ var require_patch = __commonJS({
|
|
|
194
158
|
var require_prerelease = __commonJS({
|
|
195
159
|
"../../node_modules/semver/functions/prerelease.js"(exports, module) {
|
|
196
160
|
"use strict";
|
|
197
|
-
var parse = require_parse()
|
|
198
|
-
|
|
199
|
-
const parsed = parse(version, options);
|
|
161
|
+
var parse = require_parse(), prerelease = (version, options) => {
|
|
162
|
+
let parsed = parse(version, options);
|
|
200
163
|
return parsed && parsed.prerelease.length ? parsed.prerelease : null;
|
|
201
|
-
}
|
|
164
|
+
};
|
|
202
165
|
module.exports = prerelease;
|
|
203
166
|
}
|
|
204
167
|
});
|
|
@@ -207,8 +170,7 @@ var require_prerelease = __commonJS({
|
|
|
207
170
|
var require_rcompare = __commonJS({
|
|
208
171
|
"../../node_modules/semver/functions/rcompare.js"(exports, module) {
|
|
209
172
|
"use strict";
|
|
210
|
-
var compare = require_compare();
|
|
211
|
-
var rcompare = /* @__PURE__ */ __name((a, b, loose) => compare(b, a, loose), "rcompare");
|
|
173
|
+
var compare = require_compare(), rcompare = (a, b, loose) => compare(b, a, loose);
|
|
212
174
|
module.exports = rcompare;
|
|
213
175
|
}
|
|
214
176
|
});
|
|
@@ -217,8 +179,7 @@ var require_rcompare = __commonJS({
|
|
|
217
179
|
var require_compare_loose = __commonJS({
|
|
218
180
|
"../../node_modules/semver/functions/compare-loose.js"(exports, module) {
|
|
219
181
|
"use strict";
|
|
220
|
-
var compare = require_compare();
|
|
221
|
-
var compareLoose = /* @__PURE__ */ __name((a, b) => compare(a, b, true), "compareLoose");
|
|
182
|
+
var compare = require_compare(), compareLoose = (a, b) => compare(a, b, !0);
|
|
222
183
|
module.exports = compareLoose;
|
|
223
184
|
}
|
|
224
185
|
});
|
|
@@ -227,12 +188,10 @@ var require_compare_loose = __commonJS({
|
|
|
227
188
|
var require_compare_build = __commonJS({
|
|
228
189
|
"../../node_modules/semver/functions/compare-build.js"(exports, module) {
|
|
229
190
|
"use strict";
|
|
230
|
-
var SemVer = require_semver()
|
|
231
|
-
|
|
232
|
-
const versionA = new SemVer(a, loose);
|
|
233
|
-
const versionB = new SemVer(b, loose);
|
|
191
|
+
var SemVer = require_semver(), compareBuild = (a, b, loose) => {
|
|
192
|
+
let versionA = new SemVer(a, loose), versionB = new SemVer(b, loose);
|
|
234
193
|
return versionA.compare(versionB) || versionA.compareBuild(versionB);
|
|
235
|
-
}
|
|
194
|
+
};
|
|
236
195
|
module.exports = compareBuild;
|
|
237
196
|
}
|
|
238
197
|
});
|
|
@@ -241,8 +200,7 @@ var require_compare_build = __commonJS({
|
|
|
241
200
|
var require_sort = __commonJS({
|
|
242
201
|
"../../node_modules/semver/functions/sort.js"(exports, module) {
|
|
243
202
|
"use strict";
|
|
244
|
-
var compareBuild = require_compare_build();
|
|
245
|
-
var sort = /* @__PURE__ */ __name((list, loose) => list.sort((a, b) => compareBuild(a, b, loose)), "sort");
|
|
203
|
+
var compareBuild = require_compare_build(), sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
|
|
246
204
|
module.exports = sort;
|
|
247
205
|
}
|
|
248
206
|
});
|
|
@@ -251,8 +209,7 @@ var require_sort = __commonJS({
|
|
|
251
209
|
var require_rsort = __commonJS({
|
|
252
210
|
"../../node_modules/semver/functions/rsort.js"(exports, module) {
|
|
253
211
|
"use strict";
|
|
254
|
-
var compareBuild = require_compare_build();
|
|
255
|
-
var rsort = /* @__PURE__ */ __name((list, loose) => list.sort((a, b) => compareBuild(b, a, loose)), "rsort");
|
|
212
|
+
var compareBuild = require_compare_build(), rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
|
|
256
213
|
module.exports = rsort;
|
|
257
214
|
}
|
|
258
215
|
});
|
|
@@ -261,8 +218,7 @@ var require_rsort = __commonJS({
|
|
|
261
218
|
var require_gt = __commonJS({
|
|
262
219
|
"../../node_modules/semver/functions/gt.js"(exports, module) {
|
|
263
220
|
"use strict";
|
|
264
|
-
var compare = require_compare();
|
|
265
|
-
var gt = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) > 0, "gt");
|
|
221
|
+
var compare = require_compare(), gt = (a, b, loose) => compare(a, b, loose) > 0;
|
|
266
222
|
module.exports = gt;
|
|
267
223
|
}
|
|
268
224
|
});
|
|
@@ -271,8 +227,7 @@ var require_gt = __commonJS({
|
|
|
271
227
|
var require_lt = __commonJS({
|
|
272
228
|
"../../node_modules/semver/functions/lt.js"(exports, module) {
|
|
273
229
|
"use strict";
|
|
274
|
-
var compare = require_compare();
|
|
275
|
-
var lt = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) < 0, "lt");
|
|
230
|
+
var compare = require_compare(), lt = (a, b, loose) => compare(a, b, loose) < 0;
|
|
276
231
|
module.exports = lt;
|
|
277
232
|
}
|
|
278
233
|
});
|
|
@@ -281,8 +236,7 @@ var require_lt = __commonJS({
|
|
|
281
236
|
var require_eq = __commonJS({
|
|
282
237
|
"../../node_modules/semver/functions/eq.js"(exports, module) {
|
|
283
238
|
"use strict";
|
|
284
|
-
var compare = require_compare();
|
|
285
|
-
var eq = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) === 0, "eq");
|
|
239
|
+
var compare = require_compare(), eq = (a, b, loose) => compare(a, b, loose) === 0;
|
|
286
240
|
module.exports = eq;
|
|
287
241
|
}
|
|
288
242
|
});
|
|
@@ -291,8 +245,7 @@ var require_eq = __commonJS({
|
|
|
291
245
|
var require_neq = __commonJS({
|
|
292
246
|
"../../node_modules/semver/functions/neq.js"(exports, module) {
|
|
293
247
|
"use strict";
|
|
294
|
-
var compare = require_compare();
|
|
295
|
-
var neq = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) !== 0, "neq");
|
|
248
|
+
var compare = require_compare(), neq = (a, b, loose) => compare(a, b, loose) !== 0;
|
|
296
249
|
module.exports = neq;
|
|
297
250
|
}
|
|
298
251
|
});
|
|
@@ -301,8 +254,7 @@ var require_neq = __commonJS({
|
|
|
301
254
|
var require_lte = __commonJS({
|
|
302
255
|
"../../node_modules/semver/functions/lte.js"(exports, module) {
|
|
303
256
|
"use strict";
|
|
304
|
-
var compare = require_compare();
|
|
305
|
-
var lte = /* @__PURE__ */ __name((a, b, loose) => compare(a, b, loose) <= 0, "lte");
|
|
257
|
+
var compare = require_compare(), lte = (a, b, loose) => compare(a, b, loose) <= 0;
|
|
306
258
|
module.exports = lte;
|
|
307
259
|
}
|
|
308
260
|
});
|
|
@@ -311,30 +263,12 @@ var require_lte = __commonJS({
|
|
|
311
263
|
var require_cmp = __commonJS({
|
|
312
264
|
"../../node_modules/semver/functions/cmp.js"(exports, module) {
|
|
313
265
|
"use strict";
|
|
314
|
-
var eq = require_eq()
|
|
315
|
-
var neq = require_neq();
|
|
316
|
-
var gt = require_gt();
|
|
317
|
-
var gte = require_gte();
|
|
318
|
-
var lt = require_lt();
|
|
319
|
-
var lte = require_lte();
|
|
320
|
-
var cmp = /* @__PURE__ */ __name((a, op, b, loose) => {
|
|
266
|
+
var eq = require_eq(), neq = require_neq(), gt = require_gt(), gte = require_gte(), lt = require_lt(), lte = require_lte(), cmp = (a, op, b, loose) => {
|
|
321
267
|
switch (op) {
|
|
322
268
|
case "===":
|
|
323
|
-
|
|
324
|
-
a = a.version;
|
|
325
|
-
}
|
|
326
|
-
if (typeof b === "object") {
|
|
327
|
-
b = b.version;
|
|
328
|
-
}
|
|
329
|
-
return a === b;
|
|
269
|
+
return typeof a == "object" && (a = a.version), typeof b == "object" && (b = b.version), a === b;
|
|
330
270
|
case "!==":
|
|
331
|
-
|
|
332
|
-
a = a.version;
|
|
333
|
-
}
|
|
334
|
-
if (typeof b === "object") {
|
|
335
|
-
b = b.version;
|
|
336
|
-
}
|
|
337
|
-
return a !== b;
|
|
271
|
+
return typeof a == "object" && (a = a.version), typeof b == "object" && (b = b.version), a !== b;
|
|
338
272
|
case "":
|
|
339
273
|
case "=":
|
|
340
274
|
case "==":
|
|
@@ -352,7 +286,7 @@ var require_cmp = __commonJS({
|
|
|
352
286
|
default:
|
|
353
287
|
throw new TypeError(`Invalid operator: ${op}`);
|
|
354
288
|
}
|
|
355
|
-
}
|
|
289
|
+
};
|
|
356
290
|
module.exports = cmp;
|
|
357
291
|
}
|
|
358
292
|
});
|
|
@@ -361,44 +295,26 @@ var require_cmp = __commonJS({
|
|
|
361
295
|
var require_coerce = __commonJS({
|
|
362
296
|
"../../node_modules/semver/functions/coerce.js"(exports, module) {
|
|
363
297
|
"use strict";
|
|
364
|
-
var SemVer = require_semver()
|
|
365
|
-
|
|
366
|
-
var { safeRe: re, t } = require_re();
|
|
367
|
-
var coerce2 = /* @__PURE__ */ __name((version, options) => {
|
|
368
|
-
if (version instanceof SemVer) {
|
|
298
|
+
var SemVer = require_semver(), parse = require_parse(), { safeRe: re, t } = require_re(), coerce2 = (version, options) => {
|
|
299
|
+
if (version instanceof SemVer)
|
|
369
300
|
return version;
|
|
370
|
-
|
|
371
|
-
if (typeof version === "number") {
|
|
372
|
-
version = String(version);
|
|
373
|
-
}
|
|
374
|
-
if (typeof version !== "string") {
|
|
301
|
+
if (typeof version == "number" && (version = String(version)), typeof version != "string")
|
|
375
302
|
return null;
|
|
376
|
-
}
|
|
377
303
|
options = options || {};
|
|
378
304
|
let match = null;
|
|
379
|
-
if (!options.rtl)
|
|
305
|
+
if (!options.rtl)
|
|
380
306
|
match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE]);
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
if (!match || next.index + next[0].length !== match.index + match[0].length) {
|
|
386
|
-
match = next;
|
|
387
|
-
}
|
|
388
|
-
coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
|
|
389
|
-
}
|
|
307
|
+
else {
|
|
308
|
+
let coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL], next;
|
|
309
|
+
for (; (next = coerceRtlRegex.exec(version)) && (!match || match.index + match[0].length !== version.length); )
|
|
310
|
+
(!match || next.index + next[0].length !== match.index + match[0].length) && (match = next), coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length;
|
|
390
311
|
coerceRtlRegex.lastIndex = -1;
|
|
391
312
|
}
|
|
392
|
-
if (match === null)
|
|
313
|
+
if (match === null)
|
|
393
314
|
return null;
|
|
394
|
-
}
|
|
395
|
-
const major = match[2];
|
|
396
|
-
const minor = match[3] || "0";
|
|
397
|
-
const patch = match[4] || "0";
|
|
398
|
-
const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
|
|
399
|
-
const build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
|
|
315
|
+
let major = match[2], minor = match[3] || "0", patch = match[4] || "0", prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "", build = options.includePrerelease && match[6] ? `+${match[6]}` : "";
|
|
400
316
|
return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options);
|
|
401
|
-
}
|
|
317
|
+
};
|
|
402
318
|
module.exports = coerce2;
|
|
403
319
|
}
|
|
404
320
|
});
|
|
@@ -408,31 +324,21 @@ var require_lrucache = __commonJS({
|
|
|
408
324
|
"../../node_modules/semver/internal/lrucache.js"(exports, module) {
|
|
409
325
|
"use strict";
|
|
410
326
|
var LRUCache = class {
|
|
411
|
-
static {
|
|
412
|
-
__name(this, "LRUCache");
|
|
413
|
-
}
|
|
414
327
|
constructor() {
|
|
415
|
-
this.max = 1e3;
|
|
416
|
-
this.map = /* @__PURE__ */ new Map();
|
|
328
|
+
this.max = 1e3, this.map = /* @__PURE__ */ new Map();
|
|
417
329
|
}
|
|
418
330
|
get(key) {
|
|
419
|
-
|
|
420
|
-
if (value
|
|
421
|
-
return
|
|
422
|
-
} else {
|
|
423
|
-
this.map.delete(key);
|
|
424
|
-
this.map.set(key, value);
|
|
425
|
-
return value;
|
|
426
|
-
}
|
|
331
|
+
let value = this.map.get(key);
|
|
332
|
+
if (value !== void 0)
|
|
333
|
+
return this.map.delete(key), this.map.set(key, value), value;
|
|
427
334
|
}
|
|
428
335
|
delete(key) {
|
|
429
336
|
return this.map.delete(key);
|
|
430
337
|
}
|
|
431
338
|
set(key, value) {
|
|
432
|
-
|
|
433
|
-
if (!deleted && value !== void 0) {
|
|
339
|
+
if (!this.delete(key) && value !== void 0) {
|
|
434
340
|
if (this.map.size >= this.max) {
|
|
435
|
-
|
|
341
|
+
let firstKey = this.map.keys().next().value;
|
|
436
342
|
this.delete(firstKey);
|
|
437
343
|
}
|
|
438
344
|
this.map.set(key, value);
|
|
@@ -448,46 +354,24 @@ var require_lrucache = __commonJS({
|
|
|
448
354
|
var require_range = __commonJS({
|
|
449
355
|
"../../node_modules/semver/classes/range.js"(exports, module) {
|
|
450
356
|
"use strict";
|
|
451
|
-
var SPACE_CHARACTERS = /\s+/g
|
|
452
|
-
var Range = class _Range {
|
|
453
|
-
static {
|
|
454
|
-
__name(this, "Range");
|
|
455
|
-
}
|
|
357
|
+
var SPACE_CHARACTERS = /\s+/g, Range = class _Range {
|
|
456
358
|
constructor(range, options) {
|
|
457
|
-
options = parseOptions(options)
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
return new _Range(range.raw, options);
|
|
463
|
-
}
|
|
464
|
-
}
|
|
465
|
-
if (range instanceof Comparator) {
|
|
466
|
-
this.raw = range.value;
|
|
467
|
-
this.set = [[range]];
|
|
468
|
-
this.formatted = void 0;
|
|
469
|
-
return this;
|
|
470
|
-
}
|
|
471
|
-
this.options = options;
|
|
472
|
-
this.loose = !!options.loose;
|
|
473
|
-
this.includePrerelease = !!options.includePrerelease;
|
|
474
|
-
this.raw = range.trim().replace(SPACE_CHARACTERS, " ");
|
|
475
|
-
this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
|
|
476
|
-
if (!this.set.length) {
|
|
359
|
+
if (options = parseOptions(options), range instanceof _Range)
|
|
360
|
+
return range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease ? range : new _Range(range.raw, options);
|
|
361
|
+
if (range instanceof Comparator)
|
|
362
|
+
return this.raw = range.value, this.set = [[range]], this.formatted = void 0, this;
|
|
363
|
+
if (this.options = options, this.loose = !!options.loose, this.includePrerelease = !!options.includePrerelease, this.raw = range.trim().replace(SPACE_CHARACTERS, " "), this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length), !this.set.length)
|
|
477
364
|
throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
|
|
478
|
-
}
|
|
479
365
|
if (this.set.length > 1) {
|
|
480
|
-
|
|
481
|
-
this.set = this.set.filter((c) => !isNullSet(c[0]))
|
|
482
|
-
if (this.set.length === 0) {
|
|
366
|
+
let first = this.set[0];
|
|
367
|
+
if (this.set = this.set.filter((c) => !isNullSet(c[0])), this.set.length === 0)
|
|
483
368
|
this.set = [first];
|
|
484
|
-
|
|
485
|
-
for (
|
|
369
|
+
else if (this.set.length > 1) {
|
|
370
|
+
for (let c of this.set)
|
|
486
371
|
if (c.length === 1 && isAny(c[0])) {
|
|
487
372
|
this.set = [c];
|
|
488
373
|
break;
|
|
489
374
|
}
|
|
490
|
-
}
|
|
491
375
|
}
|
|
492
376
|
}
|
|
493
377
|
this.formatted = void 0;
|
|
@@ -496,16 +380,10 @@ var require_range = __commonJS({
|
|
|
496
380
|
if (this.formatted === void 0) {
|
|
497
381
|
this.formatted = "";
|
|
498
382
|
for (let i = 0; i < this.set.length; i++) {
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
for (let k = 0; k < comps.length; k++) {
|
|
504
|
-
if (k > 0) {
|
|
505
|
-
this.formatted += " ";
|
|
506
|
-
}
|
|
507
|
-
this.formatted += comps[k].toString().trim();
|
|
508
|
-
}
|
|
383
|
+
i > 0 && (this.formatted += "||");
|
|
384
|
+
let comps = this.set[i];
|
|
385
|
+
for (let k = 0; k < comps.length; k++)
|
|
386
|
+
k > 0 && (this.formatted += " "), this.formatted += comps[k].toString().trim();
|
|
509
387
|
}
|
|
510
388
|
}
|
|
511
389
|
return this.formatted;
|
|
@@ -517,309 +395,94 @@ var require_range = __commonJS({
|
|
|
517
395
|
return this.range;
|
|
518
396
|
}
|
|
519
397
|
parseRange(range) {
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
const cached = cache.get(memoKey);
|
|
523
|
-
if (cached) {
|
|
398
|
+
let memoKey = ((this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE)) + ":" + range, cached = cache.get(memoKey);
|
|
399
|
+
if (cached)
|
|
524
400
|
return cached;
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
|
|
528
|
-
range = range.replace(hr, hyphenReplace(this.options.includePrerelease));
|
|
529
|
-
debug("hyphen replace", range);
|
|
530
|
-
range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
|
|
531
|
-
debug("comparator trim", range);
|
|
532
|
-
range = range.replace(re[t.TILDETRIM], tildeTrimReplace);
|
|
533
|
-
debug("tilde trim", range);
|
|
534
|
-
range = range.replace(re[t.CARETTRIM], caretTrimReplace);
|
|
535
|
-
debug("caret trim", range);
|
|
401
|
+
let loose = this.options.loose, hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE];
|
|
402
|
+
range = range.replace(hr, hyphenReplace(this.options.includePrerelease)), debug("hyphen replace", range), range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace), debug("comparator trim", range), range = range.replace(re[t.TILDETRIM], tildeTrimReplace), debug("tilde trim", range), range = range.replace(re[t.CARETTRIM], caretTrimReplace), debug("caret trim", range);
|
|
536
403
|
let rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
});
|
|
542
|
-
}
|
|
543
|
-
debug("range list", rangeList);
|
|
544
|
-
const rangeMap = /* @__PURE__ */ new Map();
|
|
545
|
-
const comparators = rangeList.map((comp) => new Comparator(comp, this.options));
|
|
546
|
-
for (const comp of comparators) {
|
|
547
|
-
if (isNullSet(comp)) {
|
|
404
|
+
loose && (rangeList = rangeList.filter((comp) => (debug("loose invalid filter", comp, this.options), !!comp.match(re[t.COMPARATORLOOSE])))), debug("range list", rangeList);
|
|
405
|
+
let rangeMap = /* @__PURE__ */ new Map(), comparators = rangeList.map((comp) => new Comparator(comp, this.options));
|
|
406
|
+
for (let comp of comparators) {
|
|
407
|
+
if (isNullSet(comp))
|
|
548
408
|
return [comp];
|
|
549
|
-
}
|
|
550
409
|
rangeMap.set(comp.value, comp);
|
|
551
410
|
}
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
const result = [...rangeMap.values()];
|
|
556
|
-
cache.set(memoKey, result);
|
|
557
|
-
return result;
|
|
411
|
+
rangeMap.size > 1 && rangeMap.has("") && rangeMap.delete("");
|
|
412
|
+
let result = [...rangeMap.values()];
|
|
413
|
+
return cache.set(memoKey, result), result;
|
|
558
414
|
}
|
|
559
415
|
intersects(range, options) {
|
|
560
|
-
if (!(range instanceof _Range))
|
|
416
|
+
if (!(range instanceof _Range))
|
|
561
417
|
throw new TypeError("a Range is required");
|
|
562
|
-
|
|
563
|
-
return this.set.some((thisComparators) => {
|
|
564
|
-
return isSatisfiable(thisComparators, options) && range.set.some((rangeComparators) => {
|
|
565
|
-
return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
|
|
566
|
-
return rangeComparators.every((rangeComparator) => {
|
|
567
|
-
return thisComparator.intersects(rangeComparator, options);
|
|
568
|
-
});
|
|
569
|
-
});
|
|
570
|
-
});
|
|
571
|
-
});
|
|
418
|
+
return this.set.some((thisComparators) => isSatisfiable(thisComparators, options) && range.set.some((rangeComparators) => isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => rangeComparators.every((rangeComparator) => thisComparator.intersects(rangeComparator, options)))));
|
|
572
419
|
}
|
|
573
420
|
// if ANY of the sets match ALL of its comparators, then pass
|
|
574
421
|
test(version) {
|
|
575
|
-
if (!version)
|
|
576
|
-
return
|
|
577
|
-
|
|
578
|
-
if (typeof version === "string") {
|
|
422
|
+
if (!version)
|
|
423
|
+
return !1;
|
|
424
|
+
if (typeof version == "string")
|
|
579
425
|
try {
|
|
580
426
|
version = new SemVer(version, this.options);
|
|
581
|
-
} catch
|
|
582
|
-
return
|
|
583
|
-
}
|
|
584
|
-
}
|
|
585
|
-
for (let i = 0; i < this.set.length; i++) {
|
|
586
|
-
if (testSet(this.set[i], version, this.options)) {
|
|
587
|
-
return true;
|
|
427
|
+
} catch {
|
|
428
|
+
return !1;
|
|
588
429
|
}
|
|
589
|
-
|
|
590
|
-
|
|
430
|
+
for (let i = 0; i < this.set.length; i++)
|
|
431
|
+
if (testSet(this.set[i], version, this.options))
|
|
432
|
+
return !0;
|
|
433
|
+
return !1;
|
|
591
434
|
}
|
|
592
435
|
};
|
|
593
436
|
module.exports = Range;
|
|
594
|
-
var LRU = require_lrucache()
|
|
595
|
-
var cache = new LRU();
|
|
596
|
-
var parseOptions = require_parse_options();
|
|
597
|
-
var Comparator = require_comparator();
|
|
598
|
-
var debug = require_debug();
|
|
599
|
-
var SemVer = require_semver();
|
|
600
|
-
var {
|
|
437
|
+
var LRU = require_lrucache(), cache = new LRU(), parseOptions = require_parse_options(), Comparator = require_comparator(), debug = require_debug(), SemVer = require_semver(), {
|
|
601
438
|
safeRe: re,
|
|
602
439
|
t,
|
|
603
440
|
comparatorTrimReplace,
|
|
604
441
|
tildeTrimReplace,
|
|
605
442
|
caretTrimReplace
|
|
606
|
-
} = require_re()
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
var isSatisfiable = /* @__PURE__ */ __name((comparators, options) => {
|
|
611
|
-
let result = true;
|
|
612
|
-
const remainingComparators = comparators.slice();
|
|
613
|
-
let testComparator = remainingComparators.pop();
|
|
614
|
-
while (result && remainingComparators.length) {
|
|
615
|
-
result = remainingComparators.every((otherComparator) => {
|
|
616
|
-
return testComparator.intersects(otherComparator, options);
|
|
617
|
-
});
|
|
618
|
-
testComparator = remainingComparators.pop();
|
|
619
|
-
}
|
|
443
|
+
} = require_re(), { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants(), isNullSet = (c) => c.value === "<0.0.0-0", isAny = (c) => c.value === "", isSatisfiable = (comparators, options) => {
|
|
444
|
+
let result = !0, remainingComparators = comparators.slice(), testComparator = remainingComparators.pop();
|
|
445
|
+
for (; result && remainingComparators.length; )
|
|
446
|
+
result = remainingComparators.every((otherComparator) => testComparator.intersects(otherComparator, options)), testComparator = remainingComparators.pop();
|
|
620
447
|
return result;
|
|
621
|
-
}, "
|
|
622
|
-
|
|
623
|
-
debug("comp", comp, options);
|
|
624
|
-
comp = replaceCarets(comp, options);
|
|
625
|
-
debug("caret", comp);
|
|
626
|
-
comp = replaceTildes(comp, options);
|
|
627
|
-
debug("tildes", comp);
|
|
628
|
-
comp = replaceXRanges(comp, options);
|
|
629
|
-
debug("xrange", comp);
|
|
630
|
-
comp = replaceStars(comp, options);
|
|
631
|
-
debug("stars", comp);
|
|
632
|
-
return comp;
|
|
633
|
-
}, "parseComparator");
|
|
634
|
-
var isX = /* @__PURE__ */ __name((id) => !id || id.toLowerCase() === "x" || id === "*", "isX");
|
|
635
|
-
var replaceTildes = /* @__PURE__ */ __name((comp, options) => {
|
|
636
|
-
return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
|
|
637
|
-
}, "replaceTildes");
|
|
638
|
-
var replaceTilde = /* @__PURE__ */ __name((comp, options) => {
|
|
639
|
-
const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
|
|
448
|
+
}, parseComparator = (comp, options) => (comp = comp.replace(re[t.BUILD], ""), debug("comp", comp, options), comp = replaceCarets(comp, options), debug("caret", comp), comp = replaceTildes(comp, options), debug("tildes", comp), comp = replaceXRanges(comp, options), debug("xrange", comp), comp = replaceStars(comp, options), debug("stars", comp), comp), isX = (id) => !id || id.toLowerCase() === "x" || id === "*", replaceTildes = (comp, options) => comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" "), replaceTilde = (comp, options) => {
|
|
449
|
+
let r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
|
|
640
450
|
return comp.replace(r, (_, M, m, p, pr) => {
|
|
641
451
|
debug("tilde", comp, _, M, m, p, pr);
|
|
642
452
|
let ret;
|
|
643
|
-
|
|
644
|
-
ret = "";
|
|
645
|
-
} else if (isX(m)) {
|
|
646
|
-
ret = `>=${M}.0.0 <${+M + 1}.0.0-0`;
|
|
647
|
-
} else if (isX(p)) {
|
|
648
|
-
ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`;
|
|
649
|
-
} else if (pr) {
|
|
650
|
-
debug("replaceTilde pr", pr);
|
|
651
|
-
ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
|
|
652
|
-
} else {
|
|
653
|
-
ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`;
|
|
654
|
-
}
|
|
655
|
-
debug("tilde return", ret);
|
|
656
|
-
return ret;
|
|
453
|
+
return isX(M) ? ret = "" : isX(m) ? ret = `>=${M}.0.0 <${+M + 1}.0.0-0` : isX(p) ? ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0` : pr ? (debug("replaceTilde pr", pr), ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`) : ret = `>=${M}.${m}.${p} <${M}.${+m + 1}.0-0`, debug("tilde return", ret), ret;
|
|
657
454
|
});
|
|
658
|
-
}, "
|
|
659
|
-
var replaceCarets = /* @__PURE__ */ __name((comp, options) => {
|
|
660
|
-
return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" ");
|
|
661
|
-
}, "replaceCarets");
|
|
662
|
-
var replaceCaret = /* @__PURE__ */ __name((comp, options) => {
|
|
455
|
+
}, replaceCarets = (comp, options) => comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" "), replaceCaret = (comp, options) => {
|
|
663
456
|
debug("caret", comp, options);
|
|
664
|
-
|
|
665
|
-
const z = options.includePrerelease ? "-0" : "";
|
|
457
|
+
let r = options.loose ? re[t.CARETLOOSE] : re[t.CARET], z = options.includePrerelease ? "-0" : "";
|
|
666
458
|
return comp.replace(r, (_, M, m, p, pr) => {
|
|
667
459
|
debug("caret", comp, _, M, m, p, pr);
|
|
668
460
|
let ret;
|
|
669
|
-
|
|
670
|
-
ret = "";
|
|
671
|
-
} else if (isX(m)) {
|
|
672
|
-
ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
|
|
673
|
-
} else if (isX(p)) {
|
|
674
|
-
if (M === "0") {
|
|
675
|
-
ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
|
|
676
|
-
} else {
|
|
677
|
-
ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`;
|
|
678
|
-
}
|
|
679
|
-
} else if (pr) {
|
|
680
|
-
debug("replaceCaret pr", pr);
|
|
681
|
-
if (M === "0") {
|
|
682
|
-
if (m === "0") {
|
|
683
|
-
ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0`;
|
|
684
|
-
} else {
|
|
685
|
-
ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
|
|
686
|
-
}
|
|
687
|
-
} else {
|
|
688
|
-
ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`;
|
|
689
|
-
}
|
|
690
|
-
} else {
|
|
691
|
-
debug("no pr");
|
|
692
|
-
if (M === "0") {
|
|
693
|
-
if (m === "0") {
|
|
694
|
-
ret = `>=${M}.${m}.${p}${z} <${M}.${m}.${+p + 1}-0`;
|
|
695
|
-
} else {
|
|
696
|
-
ret = `>=${M}.${m}.${p}${z} <${M}.${+m + 1}.0-0`;
|
|
697
|
-
}
|
|
698
|
-
} else {
|
|
699
|
-
ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`;
|
|
700
|
-
}
|
|
701
|
-
}
|
|
702
|
-
debug("caret return", ret);
|
|
703
|
-
return ret;
|
|
461
|
+
return isX(M) ? ret = "" : isX(m) ? ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0` : isX(p) ? M === "0" ? ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0` : ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0` : pr ? (debug("replaceCaret pr", pr), M === "0" ? m === "0" ? ret = `>=${M}.${m}.${p}-${pr} <${M}.${m}.${+p + 1}-0` : ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0` : ret = `>=${M}.${m}.${p}-${pr} <${+M + 1}.0.0-0`) : (debug("no pr"), M === "0" ? m === "0" ? ret = `>=${M}.${m}.${p}${z} <${M}.${m}.${+p + 1}-0` : ret = `>=${M}.${m}.${p}${z} <${M}.${+m + 1}.0-0` : ret = `>=${M}.${m}.${p} <${+M + 1}.0.0-0`), debug("caret return", ret), ret;
|
|
704
462
|
});
|
|
705
|
-
}, "
|
|
706
|
-
var replaceXRanges = /* @__PURE__ */ __name((comp, options) => {
|
|
707
|
-
debug("replaceXRanges", comp, options);
|
|
708
|
-
return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ");
|
|
709
|
-
}, "replaceXRanges");
|
|
710
|
-
var replaceXRange = /* @__PURE__ */ __name((comp, options) => {
|
|
463
|
+
}, replaceXRanges = (comp, options) => (debug("replaceXRanges", comp, options), comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ")), replaceXRange = (comp, options) => {
|
|
711
464
|
comp = comp.trim();
|
|
712
|
-
|
|
465
|
+
let r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE];
|
|
713
466
|
return comp.replace(r, (ret, gtlt, M, m, p, pr) => {
|
|
714
467
|
debug("xRange", comp, ret, gtlt, M, m, p, pr);
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
const xp = xm || isX(p);
|
|
718
|
-
const anyX = xp;
|
|
719
|
-
if (gtlt === "=" && anyX) {
|
|
720
|
-
gtlt = "";
|
|
721
|
-
}
|
|
722
|
-
pr = options.includePrerelease ? "-0" : "";
|
|
723
|
-
if (xM) {
|
|
724
|
-
if (gtlt === ">" || gtlt === "<") {
|
|
725
|
-
ret = "<0.0.0-0";
|
|
726
|
-
} else {
|
|
727
|
-
ret = "*";
|
|
728
|
-
}
|
|
729
|
-
} else if (gtlt && anyX) {
|
|
730
|
-
if (xm) {
|
|
731
|
-
m = 0;
|
|
732
|
-
}
|
|
733
|
-
p = 0;
|
|
734
|
-
if (gtlt === ">") {
|
|
735
|
-
gtlt = ">=";
|
|
736
|
-
if (xm) {
|
|
737
|
-
M = +M + 1;
|
|
738
|
-
m = 0;
|
|
739
|
-
p = 0;
|
|
740
|
-
} else {
|
|
741
|
-
m = +m + 1;
|
|
742
|
-
p = 0;
|
|
743
|
-
}
|
|
744
|
-
} else if (gtlt === "<=") {
|
|
745
|
-
gtlt = "<";
|
|
746
|
-
if (xm) {
|
|
747
|
-
M = +M + 1;
|
|
748
|
-
} else {
|
|
749
|
-
m = +m + 1;
|
|
750
|
-
}
|
|
751
|
-
}
|
|
752
|
-
if (gtlt === "<") {
|
|
753
|
-
pr = "-0";
|
|
754
|
-
}
|
|
755
|
-
ret = `${gtlt + M}.${m}.${p}${pr}`;
|
|
756
|
-
} else if (xm) {
|
|
757
|
-
ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`;
|
|
758
|
-
} else if (xp) {
|
|
759
|
-
ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`;
|
|
760
|
-
}
|
|
761
|
-
debug("xRange return", ret);
|
|
762
|
-
return ret;
|
|
468
|
+
let xM = isX(M), xm = xM || isX(m), xp = xm || isX(p), anyX = xp;
|
|
469
|
+
return gtlt === "=" && anyX && (gtlt = ""), pr = options.includePrerelease ? "-0" : "", xM ? gtlt === ">" || gtlt === "<" ? ret = "<0.0.0-0" : ret = "*" : gtlt && anyX ? (xm && (m = 0), p = 0, gtlt === ">" ? (gtlt = ">=", xm ? (M = +M + 1, m = 0, p = 0) : (m = +m + 1, p = 0)) : gtlt === "<=" && (gtlt = "<", xm ? M = +M + 1 : m = +m + 1), gtlt === "<" && (pr = "-0"), ret = `${gtlt + M}.${m}.${p}${pr}`) : xm ? ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0` : xp && (ret = `>=${M}.${m}.0${pr} <${M}.${+m + 1}.0-0`), debug("xRange return", ret), ret;
|
|
763
470
|
});
|
|
764
|
-
}, "
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
}, "replaceStars");
|
|
769
|
-
var replaceGTE0 = /* @__PURE__ */ __name((comp, options) => {
|
|
770
|
-
debug("replaceGTE0", comp, options);
|
|
771
|
-
return comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], "");
|
|
772
|
-
}, "replaceGTE0");
|
|
773
|
-
var hyphenReplace = /* @__PURE__ */ __name((incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => {
|
|
774
|
-
if (isX(fM)) {
|
|
775
|
-
from = "";
|
|
776
|
-
} else if (isX(fm)) {
|
|
777
|
-
from = `>=${fM}.0.0${incPr ? "-0" : ""}`;
|
|
778
|
-
} else if (isX(fp)) {
|
|
779
|
-
from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`;
|
|
780
|
-
} else if (fpr) {
|
|
781
|
-
from = `>=${from}`;
|
|
782
|
-
} else {
|
|
783
|
-
from = `>=${from}${incPr ? "-0" : ""}`;
|
|
784
|
-
}
|
|
785
|
-
if (isX(tM)) {
|
|
786
|
-
to = "";
|
|
787
|
-
} else if (isX(tm)) {
|
|
788
|
-
to = `<${+tM + 1}.0.0-0`;
|
|
789
|
-
} else if (isX(tp)) {
|
|
790
|
-
to = `<${tM}.${+tm + 1}.0-0`;
|
|
791
|
-
} else if (tpr) {
|
|
792
|
-
to = `<=${tM}.${tm}.${tp}-${tpr}`;
|
|
793
|
-
} else if (incPr) {
|
|
794
|
-
to = `<${tM}.${tm}.${+tp + 1}-0`;
|
|
795
|
-
} else {
|
|
796
|
-
to = `<=${to}`;
|
|
797
|
-
}
|
|
798
|
-
return `${from} ${to}`.trim();
|
|
799
|
-
}, "hyphenReplace");
|
|
800
|
-
var testSet = /* @__PURE__ */ __name((set, version, options) => {
|
|
801
|
-
for (let i = 0; i < set.length; i++) {
|
|
802
|
-
if (!set[i].test(version)) {
|
|
803
|
-
return false;
|
|
804
|
-
}
|
|
805
|
-
}
|
|
471
|
+
}, replaceStars = (comp, options) => (debug("replaceStars", comp, options), comp.trim().replace(re[t.STAR], "")), replaceGTE0 = (comp, options) => (debug("replaceGTE0", comp, options), comp.trim().replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], "")), hyphenReplace = (incPr) => ($0, from, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => (isX(fM) ? from = "" : isX(fm) ? from = `>=${fM}.0.0${incPr ? "-0" : ""}` : isX(fp) ? from = `>=${fM}.${fm}.0${incPr ? "-0" : ""}` : fpr ? from = `>=${from}` : from = `>=${from}${incPr ? "-0" : ""}`, isX(tM) ? to = "" : isX(tm) ? to = `<${+tM + 1}.0.0-0` : isX(tp) ? to = `<${tM}.${+tm + 1}.0-0` : tpr ? to = `<=${tM}.${tm}.${tp}-${tpr}` : incPr ? to = `<${tM}.${tm}.${+tp + 1}-0` : to = `<=${to}`, `${from} ${to}`.trim()), testSet = (set, version, options) => {
|
|
472
|
+
for (let i = 0; i < set.length; i++)
|
|
473
|
+
if (!set[i].test(version))
|
|
474
|
+
return !1;
|
|
806
475
|
if (version.prerelease.length && !options.includePrerelease) {
|
|
807
|
-
for (let i = 0; i < set.length; i++)
|
|
808
|
-
debug(set[i].semver)
|
|
809
|
-
|
|
810
|
-
|
|
476
|
+
for (let i = 0; i < set.length; i++)
|
|
477
|
+
if (debug(set[i].semver), set[i].semver !== Comparator.ANY && set[i].semver.prerelease.length > 0) {
|
|
478
|
+
let allowed = set[i].semver;
|
|
479
|
+
if (allowed.major === version.major && allowed.minor === version.minor && allowed.patch === version.patch)
|
|
480
|
+
return !0;
|
|
811
481
|
}
|
|
812
|
-
|
|
813
|
-
const allowed = set[i].semver;
|
|
814
|
-
if (allowed.major === version.major && allowed.minor === version.minor && allowed.patch === version.patch) {
|
|
815
|
-
return true;
|
|
816
|
-
}
|
|
817
|
-
}
|
|
818
|
-
}
|
|
819
|
-
return false;
|
|
482
|
+
return !1;
|
|
820
483
|
}
|
|
821
|
-
return
|
|
822
|
-
}
|
|
484
|
+
return !0;
|
|
485
|
+
};
|
|
823
486
|
}
|
|
824
487
|
});
|
|
825
488
|
|
|
@@ -827,115 +490,46 @@ var require_range = __commonJS({
|
|
|
827
490
|
var require_comparator = __commonJS({
|
|
828
491
|
"../../node_modules/semver/classes/comparator.js"(exports, module) {
|
|
829
492
|
"use strict";
|
|
830
|
-
var ANY = Symbol("SemVer ANY")
|
|
831
|
-
var Comparator = class _Comparator {
|
|
832
|
-
static {
|
|
833
|
-
__name(this, "Comparator");
|
|
834
|
-
}
|
|
493
|
+
var ANY = Symbol("SemVer ANY"), Comparator = class _Comparator {
|
|
835
494
|
static get ANY() {
|
|
836
495
|
return ANY;
|
|
837
496
|
}
|
|
838
497
|
constructor(comp, options) {
|
|
839
|
-
options = parseOptions(options)
|
|
840
|
-
|
|
841
|
-
if (comp.loose === !!options.loose) {
|
|
498
|
+
if (options = parseOptions(options), comp instanceof _Comparator) {
|
|
499
|
+
if (comp.loose === !!options.loose)
|
|
842
500
|
return comp;
|
|
843
|
-
|
|
844
|
-
comp = comp.value;
|
|
845
|
-
}
|
|
501
|
+
comp = comp.value;
|
|
846
502
|
}
|
|
847
|
-
comp = comp.trim().split(/\s+/).join(" ");
|
|
848
|
-
debug("comparator", comp, options);
|
|
849
|
-
this.options = options;
|
|
850
|
-
this.loose = !!options.loose;
|
|
851
|
-
this.parse(comp);
|
|
852
|
-
if (this.semver === ANY) {
|
|
853
|
-
this.value = "";
|
|
854
|
-
} else {
|
|
855
|
-
this.value = this.operator + this.semver.version;
|
|
856
|
-
}
|
|
857
|
-
debug("comp", this);
|
|
503
|
+
comp = comp.trim().split(/\s+/).join(" "), debug("comparator", comp, options), this.options = options, this.loose = !!options.loose, this.parse(comp), this.semver === ANY ? this.value = "" : this.value = this.operator + this.semver.version, debug("comp", this);
|
|
858
504
|
}
|
|
859
505
|
parse(comp) {
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
if (!m) {
|
|
506
|
+
let r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR], m = comp.match(r);
|
|
507
|
+
if (!m)
|
|
863
508
|
throw new TypeError(`Invalid comparator: ${comp}`);
|
|
864
|
-
|
|
865
|
-
this.operator = m[1] !== void 0 ? m[1] : "";
|
|
866
|
-
if (this.operator === "=") {
|
|
867
|
-
this.operator = "";
|
|
868
|
-
}
|
|
869
|
-
if (!m[2]) {
|
|
870
|
-
this.semver = ANY;
|
|
871
|
-
} else {
|
|
872
|
-
this.semver = new SemVer(m[2], this.options.loose);
|
|
873
|
-
}
|
|
509
|
+
this.operator = m[1] !== void 0 ? m[1] : "", this.operator === "=" && (this.operator = ""), m[2] ? this.semver = new SemVer(m[2], this.options.loose) : this.semver = ANY;
|
|
874
510
|
}
|
|
875
511
|
toString() {
|
|
876
512
|
return this.value;
|
|
877
513
|
}
|
|
878
514
|
test(version) {
|
|
879
|
-
debug("Comparator.test", version, this.options.loose)
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
}
|
|
883
|
-
if (typeof version === "string") {
|
|
515
|
+
if (debug("Comparator.test", version, this.options.loose), this.semver === ANY || version === ANY)
|
|
516
|
+
return !0;
|
|
517
|
+
if (typeof version == "string")
|
|
884
518
|
try {
|
|
885
519
|
version = new SemVer(version, this.options);
|
|
886
|
-
} catch
|
|
887
|
-
return
|
|
520
|
+
} catch {
|
|
521
|
+
return !1;
|
|
888
522
|
}
|
|
889
|
-
}
|
|
890
523
|
return cmp(version, this.operator, this.semver, this.options);
|
|
891
524
|
}
|
|
892
525
|
intersects(comp, options) {
|
|
893
|
-
if (!(comp instanceof _Comparator))
|
|
526
|
+
if (!(comp instanceof _Comparator))
|
|
894
527
|
throw new TypeError("a Comparator is required");
|
|
895
|
-
|
|
896
|
-
if (this.operator === "") {
|
|
897
|
-
if (this.value === "") {
|
|
898
|
-
return true;
|
|
899
|
-
}
|
|
900
|
-
return new Range(comp.value, options).test(this.value);
|
|
901
|
-
} else if (comp.operator === "") {
|
|
902
|
-
if (comp.value === "") {
|
|
903
|
-
return true;
|
|
904
|
-
}
|
|
905
|
-
return new Range(this.value, options).test(comp.semver);
|
|
906
|
-
}
|
|
907
|
-
options = parseOptions(options);
|
|
908
|
-
if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) {
|
|
909
|
-
return false;
|
|
910
|
-
}
|
|
911
|
-
if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) {
|
|
912
|
-
return false;
|
|
913
|
-
}
|
|
914
|
-
if (this.operator.startsWith(">") && comp.operator.startsWith(">")) {
|
|
915
|
-
return true;
|
|
916
|
-
}
|
|
917
|
-
if (this.operator.startsWith("<") && comp.operator.startsWith("<")) {
|
|
918
|
-
return true;
|
|
919
|
-
}
|
|
920
|
-
if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) {
|
|
921
|
-
return true;
|
|
922
|
-
}
|
|
923
|
-
if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) {
|
|
924
|
-
return true;
|
|
925
|
-
}
|
|
926
|
-
if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) {
|
|
927
|
-
return true;
|
|
928
|
-
}
|
|
929
|
-
return false;
|
|
528
|
+
return this.operator === "" ? this.value === "" ? !0 : new Range(comp.value, options).test(this.value) : comp.operator === "" ? comp.value === "" ? !0 : new Range(this.value, options).test(comp.semver) : (options = parseOptions(options), options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0") || !options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0")) ? !1 : !!(this.operator.startsWith(">") && comp.operator.startsWith(">") || this.operator.startsWith("<") && comp.operator.startsWith("<") || this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=") || cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<") || cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")));
|
|
930
529
|
}
|
|
931
530
|
};
|
|
932
531
|
module.exports = Comparator;
|
|
933
|
-
var parseOptions = require_parse_options();
|
|
934
|
-
var { safeRe: re, t } = require_re();
|
|
935
|
-
var cmp = require_cmp();
|
|
936
|
-
var debug = require_debug();
|
|
937
|
-
var SemVer = require_semver();
|
|
938
|
-
var Range = require_range();
|
|
532
|
+
var parseOptions = require_parse_options(), { safeRe: re, t } = require_re(), cmp = require_cmp(), debug = require_debug(), SemVer = require_semver(), Range = require_range();
|
|
939
533
|
}
|
|
940
534
|
});
|
|
941
535
|
|
|
@@ -943,15 +537,14 @@ var require_comparator = __commonJS({
|
|
|
943
537
|
var require_satisfies = __commonJS({
|
|
944
538
|
"../../node_modules/semver/functions/satisfies.js"(exports, module) {
|
|
945
539
|
"use strict";
|
|
946
|
-
var Range = require_range()
|
|
947
|
-
var satisfies2 = /* @__PURE__ */ __name((version, range, options) => {
|
|
540
|
+
var Range = require_range(), satisfies2 = (version, range, options) => {
|
|
948
541
|
try {
|
|
949
542
|
range = new Range(range, options);
|
|
950
|
-
} catch
|
|
951
|
-
return
|
|
543
|
+
} catch {
|
|
544
|
+
return !1;
|
|
952
545
|
}
|
|
953
546
|
return range.test(version);
|
|
954
|
-
}
|
|
547
|
+
};
|
|
955
548
|
module.exports = satisfies2;
|
|
956
549
|
}
|
|
957
550
|
});
|
|
@@ -960,8 +553,7 @@ var require_satisfies = __commonJS({
|
|
|
960
553
|
var require_to_comparators = __commonJS({
|
|
961
554
|
"../../node_modules/semver/ranges/to-comparators.js"(exports, module) {
|
|
962
555
|
"use strict";
|
|
963
|
-
var Range = require_range();
|
|
964
|
-
var toComparators = /* @__PURE__ */ __name((range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" ")), "toComparators");
|
|
556
|
+
var Range = require_range(), toComparators = (range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
|
|
965
557
|
module.exports = toComparators;
|
|
966
558
|
}
|
|
967
559
|
});
|
|
@@ -970,27 +562,17 @@ var require_to_comparators = __commonJS({
|
|
|
970
562
|
var require_max_satisfying = __commonJS({
|
|
971
563
|
"../../node_modules/semver/ranges/max-satisfying.js"(exports, module) {
|
|
972
564
|
"use strict";
|
|
973
|
-
var SemVer = require_semver()
|
|
974
|
-
|
|
975
|
-
var maxSatisfying = /* @__PURE__ */ __name((versions, range, options) => {
|
|
976
|
-
let max = null;
|
|
977
|
-
let maxSV = null;
|
|
978
|
-
let rangeObj = null;
|
|
565
|
+
var SemVer = require_semver(), Range = require_range(), maxSatisfying = (versions, range, options) => {
|
|
566
|
+
let max = null, maxSV = null, rangeObj = null;
|
|
979
567
|
try {
|
|
980
568
|
rangeObj = new Range(range, options);
|
|
981
|
-
} catch
|
|
569
|
+
} catch {
|
|
982
570
|
return null;
|
|
983
571
|
}
|
|
984
|
-
versions.forEach((v) => {
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
maxSV = new SemVer(max, options);
|
|
989
|
-
}
|
|
990
|
-
}
|
|
991
|
-
});
|
|
992
|
-
return max;
|
|
993
|
-
}, "maxSatisfying");
|
|
572
|
+
return versions.forEach((v) => {
|
|
573
|
+
rangeObj.test(v) && (!max || maxSV.compare(v) === -1) && (max = v, maxSV = new SemVer(max, options));
|
|
574
|
+
}), max;
|
|
575
|
+
};
|
|
994
576
|
module.exports = maxSatisfying;
|
|
995
577
|
}
|
|
996
578
|
});
|
|
@@ -999,27 +581,17 @@ var require_max_satisfying = __commonJS({
|
|
|
999
581
|
var require_min_satisfying = __commonJS({
|
|
1000
582
|
"../../node_modules/semver/ranges/min-satisfying.js"(exports, module) {
|
|
1001
583
|
"use strict";
|
|
1002
|
-
var SemVer = require_semver()
|
|
1003
|
-
|
|
1004
|
-
var minSatisfying = /* @__PURE__ */ __name((versions, range, options) => {
|
|
1005
|
-
let min = null;
|
|
1006
|
-
let minSV = null;
|
|
1007
|
-
let rangeObj = null;
|
|
584
|
+
var SemVer = require_semver(), Range = require_range(), minSatisfying = (versions, range, options) => {
|
|
585
|
+
let min = null, minSV = null, rangeObj = null;
|
|
1008
586
|
try {
|
|
1009
587
|
rangeObj = new Range(range, options);
|
|
1010
|
-
} catch
|
|
588
|
+
} catch {
|
|
1011
589
|
return null;
|
|
1012
590
|
}
|
|
1013
|
-
versions.forEach((v) => {
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
minSV = new SemVer(min, options);
|
|
1018
|
-
}
|
|
1019
|
-
}
|
|
1020
|
-
});
|
|
1021
|
-
return min;
|
|
1022
|
-
}, "minSatisfying");
|
|
591
|
+
return versions.forEach((v) => {
|
|
592
|
+
rangeObj.test(v) && (!min || minSV.compare(v) === 1) && (min = v, minSV = new SemVer(min, options));
|
|
593
|
+
}), min;
|
|
594
|
+
};
|
|
1023
595
|
module.exports = minSatisfying;
|
|
1024
596
|
}
|
|
1025
597
|
});
|
|
@@ -1028,39 +600,23 @@ var require_min_satisfying = __commonJS({
|
|
|
1028
600
|
var require_min_version = __commonJS({
|
|
1029
601
|
"../../node_modules/semver/ranges/min-version.js"(exports, module) {
|
|
1030
602
|
"use strict";
|
|
1031
|
-
var SemVer = require_semver()
|
|
1032
|
-
var Range = require_range();
|
|
1033
|
-
var gt = require_gt();
|
|
1034
|
-
var minVersion = /* @__PURE__ */ __name((range, loose) => {
|
|
603
|
+
var SemVer = require_semver(), Range = require_range(), gt = require_gt(), minVersion = (range, loose) => {
|
|
1035
604
|
range = new Range(range, loose);
|
|
1036
605
|
let minver = new SemVer("0.0.0");
|
|
1037
|
-
if (range.test(minver))
|
|
606
|
+
if (range.test(minver) || (minver = new SemVer("0.0.0-0"), range.test(minver)))
|
|
1038
607
|
return minver;
|
|
1039
|
-
}
|
|
1040
|
-
minver = new SemVer("0.0.0-0");
|
|
1041
|
-
if (range.test(minver)) {
|
|
1042
|
-
return minver;
|
|
1043
|
-
}
|
|
1044
608
|
minver = null;
|
|
1045
609
|
for (let i = 0; i < range.set.length; ++i) {
|
|
1046
|
-
|
|
1047
|
-
let setMin = null;
|
|
610
|
+
let comparators = range.set[i], setMin = null;
|
|
1048
611
|
comparators.forEach((comparator) => {
|
|
1049
|
-
|
|
612
|
+
let compver = new SemVer(comparator.semver.version);
|
|
1050
613
|
switch (comparator.operator) {
|
|
1051
614
|
case ">":
|
|
1052
|
-
|
|
1053
|
-
compver.patch++;
|
|
1054
|
-
} else {
|
|
1055
|
-
compver.prerelease.push(0);
|
|
1056
|
-
}
|
|
1057
|
-
compver.raw = compver.format();
|
|
615
|
+
compver.prerelease.length === 0 ? compver.patch++ : compver.prerelease.push(0), compver.raw = compver.format();
|
|
1058
616
|
/* fallthrough */
|
|
1059
617
|
case "":
|
|
1060
618
|
case ">=":
|
|
1061
|
-
|
|
1062
|
-
setMin = compver;
|
|
1063
|
-
}
|
|
619
|
+
(!setMin || gt(compver, setMin)) && (setMin = compver);
|
|
1064
620
|
break;
|
|
1065
621
|
case "<":
|
|
1066
622
|
case "<=":
|
|
@@ -1069,16 +625,10 @@ var require_min_version = __commonJS({
|
|
|
1069
625
|
default:
|
|
1070
626
|
throw new Error(`Unexpected operation: ${comparator.operator}`);
|
|
1071
627
|
}
|
|
1072
|
-
});
|
|
1073
|
-
if (setMin && (!minver || gt(minver, setMin))) {
|
|
1074
|
-
minver = setMin;
|
|
1075
|
-
}
|
|
1076
|
-
}
|
|
1077
|
-
if (minver && range.test(minver)) {
|
|
1078
|
-
return minver;
|
|
628
|
+
}), setMin && (!minver || gt(minver, setMin)) && (minver = setMin);
|
|
1079
629
|
}
|
|
1080
|
-
return null;
|
|
1081
|
-
}
|
|
630
|
+
return minver && range.test(minver) ? minver : null;
|
|
631
|
+
};
|
|
1082
632
|
module.exports = minVersion;
|
|
1083
633
|
}
|
|
1084
634
|
});
|
|
@@ -1087,14 +637,13 @@ var require_min_version = __commonJS({
|
|
|
1087
637
|
var require_valid2 = __commonJS({
|
|
1088
638
|
"../../node_modules/semver/ranges/valid.js"(exports, module) {
|
|
1089
639
|
"use strict";
|
|
1090
|
-
var Range = require_range()
|
|
1091
|
-
var validRange = /* @__PURE__ */ __name((range, options) => {
|
|
640
|
+
var Range = require_range(), validRange = (range, options) => {
|
|
1092
641
|
try {
|
|
1093
642
|
return new Range(range, options).range || "*";
|
|
1094
|
-
} catch
|
|
643
|
+
} catch {
|
|
1095
644
|
return null;
|
|
1096
645
|
}
|
|
1097
|
-
}
|
|
646
|
+
};
|
|
1098
647
|
module.exports = validRange;
|
|
1099
648
|
}
|
|
1100
649
|
});
|
|
@@ -1103,67 +652,32 @@ var require_valid2 = __commonJS({
|
|
|
1103
652
|
var require_outside = __commonJS({
|
|
1104
653
|
"../../node_modules/semver/ranges/outside.js"(exports, module) {
|
|
1105
654
|
"use strict";
|
|
1106
|
-
var SemVer = require_semver()
|
|
1107
|
-
|
|
1108
|
-
var { ANY } = Comparator;
|
|
1109
|
-
var Range = require_range();
|
|
1110
|
-
var satisfies2 = require_satisfies();
|
|
1111
|
-
var gt = require_gt();
|
|
1112
|
-
var lt = require_lt();
|
|
1113
|
-
var lte = require_lte();
|
|
1114
|
-
var gte = require_gte();
|
|
1115
|
-
var outside = /* @__PURE__ */ __name((version, range, hilo, options) => {
|
|
1116
|
-
version = new SemVer(version, options);
|
|
1117
|
-
range = new Range(range, options);
|
|
655
|
+
var SemVer = require_semver(), Comparator = require_comparator(), { ANY } = Comparator, Range = require_range(), satisfies2 = require_satisfies(), gt = require_gt(), lt = require_lt(), lte = require_lte(), gte = require_gte(), outside = (version, range, hilo, options) => {
|
|
656
|
+
version = new SemVer(version, options), range = new Range(range, options);
|
|
1118
657
|
let gtfn, ltefn, ltfn, comp, ecomp;
|
|
1119
658
|
switch (hilo) {
|
|
1120
659
|
case ">":
|
|
1121
|
-
gtfn = gt;
|
|
1122
|
-
ltefn = lte;
|
|
1123
|
-
ltfn = lt;
|
|
1124
|
-
comp = ">";
|
|
1125
|
-
ecomp = ">=";
|
|
660
|
+
gtfn = gt, ltefn = lte, ltfn = lt, comp = ">", ecomp = ">=";
|
|
1126
661
|
break;
|
|
1127
662
|
case "<":
|
|
1128
|
-
gtfn = lt;
|
|
1129
|
-
ltefn = gte;
|
|
1130
|
-
ltfn = gt;
|
|
1131
|
-
comp = "<";
|
|
1132
|
-
ecomp = "<=";
|
|
663
|
+
gtfn = lt, ltefn = gte, ltfn = gt, comp = "<", ecomp = "<=";
|
|
1133
664
|
break;
|
|
1134
665
|
default:
|
|
1135
666
|
throw new TypeError('Must provide a hilo val of "<" or ">"');
|
|
1136
667
|
}
|
|
1137
|
-
if (satisfies2(version, range, options))
|
|
1138
|
-
return
|
|
1139
|
-
}
|
|
668
|
+
if (satisfies2(version, range, options))
|
|
669
|
+
return !1;
|
|
1140
670
|
for (let i = 0; i < range.set.length; ++i) {
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
high = comparator;
|
|
1152
|
-
} else if (ltfn(comparator.semver, low.semver, options)) {
|
|
1153
|
-
low = comparator;
|
|
1154
|
-
}
|
|
1155
|
-
});
|
|
1156
|
-
if (high.operator === comp || high.operator === ecomp) {
|
|
1157
|
-
return false;
|
|
1158
|
-
}
|
|
1159
|
-
if ((!low.operator || low.operator === comp) && ltefn(version, low.semver)) {
|
|
1160
|
-
return false;
|
|
1161
|
-
} else if (low.operator === ecomp && ltfn(version, low.semver)) {
|
|
1162
|
-
return false;
|
|
1163
|
-
}
|
|
1164
|
-
}
|
|
1165
|
-
return true;
|
|
1166
|
-
}, "outside");
|
|
671
|
+
let comparators = range.set[i], high = null, low = null;
|
|
672
|
+
if (comparators.forEach((comparator) => {
|
|
673
|
+
comparator.semver === ANY && (comparator = new Comparator(">=0.0.0")), high = high || comparator, low = low || comparator, gtfn(comparator.semver, high.semver, options) ? high = comparator : ltfn(comparator.semver, low.semver, options) && (low = comparator);
|
|
674
|
+
}), high.operator === comp || high.operator === ecomp || (!low.operator || low.operator === comp) && ltefn(version, low.semver))
|
|
675
|
+
return !1;
|
|
676
|
+
if (low.operator === ecomp && ltfn(version, low.semver))
|
|
677
|
+
return !1;
|
|
678
|
+
}
|
|
679
|
+
return !0;
|
|
680
|
+
};
|
|
1167
681
|
module.exports = outside;
|
|
1168
682
|
}
|
|
1169
683
|
});
|
|
@@ -1172,8 +686,7 @@ var require_outside = __commonJS({
|
|
|
1172
686
|
var require_gtr = __commonJS({
|
|
1173
687
|
"../../node_modules/semver/ranges/gtr.js"(exports, module) {
|
|
1174
688
|
"use strict";
|
|
1175
|
-
var outside = require_outside();
|
|
1176
|
-
var gtr = /* @__PURE__ */ __name((version, range, options) => outside(version, range, ">", options), "gtr");
|
|
689
|
+
var outside = require_outside(), gtr = (version, range, options) => outside(version, range, ">", options);
|
|
1177
690
|
module.exports = gtr;
|
|
1178
691
|
}
|
|
1179
692
|
});
|
|
@@ -1182,8 +695,7 @@ var require_gtr = __commonJS({
|
|
|
1182
695
|
var require_ltr = __commonJS({
|
|
1183
696
|
"../../node_modules/semver/ranges/ltr.js"(exports, module) {
|
|
1184
697
|
"use strict";
|
|
1185
|
-
var outside = require_outside();
|
|
1186
|
-
var ltr = /* @__PURE__ */ __name((version, range, options) => outside(version, range, "<", options), "ltr");
|
|
698
|
+
var outside = require_outside(), ltr = (version, range, options) => outside(version, range, "<", options);
|
|
1187
699
|
module.exports = ltr;
|
|
1188
700
|
}
|
|
1189
701
|
});
|
|
@@ -1192,12 +704,7 @@ var require_ltr = __commonJS({
|
|
|
1192
704
|
var require_intersects = __commonJS({
|
|
1193
705
|
"../../node_modules/semver/ranges/intersects.js"(exports, module) {
|
|
1194
706
|
"use strict";
|
|
1195
|
-
var Range = require_range();
|
|
1196
|
-
var intersects = /* @__PURE__ */ __name((r1, r2, options) => {
|
|
1197
|
-
r1 = new Range(r1, options);
|
|
1198
|
-
r2 = new Range(r2, options);
|
|
1199
|
-
return r1.intersects(r2, options);
|
|
1200
|
-
}, "intersects");
|
|
707
|
+
var Range = require_range(), intersects = (r1, r2, options) => (r1 = new Range(r1, options), r2 = new Range(r2, options), r1.intersects(r2, options));
|
|
1201
708
|
module.exports = intersects;
|
|
1202
709
|
}
|
|
1203
710
|
});
|
|
@@ -1206,47 +713,16 @@ var require_intersects = __commonJS({
|
|
|
1206
713
|
var require_simplify = __commonJS({
|
|
1207
714
|
"../../node_modules/semver/ranges/simplify.js"(exports, module) {
|
|
1208
715
|
"use strict";
|
|
1209
|
-
var satisfies2 = require_satisfies();
|
|
1210
|
-
var compare = require_compare();
|
|
716
|
+
var satisfies2 = require_satisfies(), compare = require_compare();
|
|
1211
717
|
module.exports = (versions, range, options) => {
|
|
1212
|
-
|
|
1213
|
-
let
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
if (!first) {
|
|
1221
|
-
first = version;
|
|
1222
|
-
}
|
|
1223
|
-
} else {
|
|
1224
|
-
if (prev) {
|
|
1225
|
-
set.push([first, prev]);
|
|
1226
|
-
}
|
|
1227
|
-
prev = null;
|
|
1228
|
-
first = null;
|
|
1229
|
-
}
|
|
1230
|
-
}
|
|
1231
|
-
if (first) {
|
|
1232
|
-
set.push([first, null]);
|
|
1233
|
-
}
|
|
1234
|
-
const ranges = [];
|
|
1235
|
-
for (const [min, max] of set) {
|
|
1236
|
-
if (min === max) {
|
|
1237
|
-
ranges.push(min);
|
|
1238
|
-
} else if (!max && min === v[0]) {
|
|
1239
|
-
ranges.push("*");
|
|
1240
|
-
} else if (!max) {
|
|
1241
|
-
ranges.push(`>=${min}`);
|
|
1242
|
-
} else if (min === v[0]) {
|
|
1243
|
-
ranges.push(`<=${max}`);
|
|
1244
|
-
} else {
|
|
1245
|
-
ranges.push(`${min} - ${max}`);
|
|
1246
|
-
}
|
|
1247
|
-
}
|
|
1248
|
-
const simplified = ranges.join(" || ");
|
|
1249
|
-
const original = typeof range.raw === "string" ? range.raw : String(range);
|
|
718
|
+
let set = [], first = null, prev = null, v = versions.sort((a, b) => compare(a, b, options));
|
|
719
|
+
for (let version of v)
|
|
720
|
+
satisfies2(version, range, options) ? (prev = version, first || (first = version)) : (prev && set.push([first, prev]), prev = null, first = null);
|
|
721
|
+
first && set.push([first, null]);
|
|
722
|
+
let ranges = [];
|
|
723
|
+
for (let [min, max] of set)
|
|
724
|
+
min === max ? ranges.push(min) : !max && min === v[0] ? ranges.push("*") : max ? min === v[0] ? ranges.push(`<=${max}`) : ranges.push(`${min} - ${max}`) : ranges.push(`>=${min}`);
|
|
725
|
+
let simplified = ranges.join(" || "), original = typeof range.raw == "string" ? range.raw : String(range);
|
|
1250
726
|
return simplified.length < original.length ? simplified : range;
|
|
1251
727
|
};
|
|
1252
728
|
}
|
|
@@ -1256,160 +732,86 @@ var require_simplify = __commonJS({
|
|
|
1256
732
|
var require_subset = __commonJS({
|
|
1257
733
|
"../../node_modules/semver/ranges/subset.js"(exports, module) {
|
|
1258
734
|
"use strict";
|
|
1259
|
-
var Range = require_range()
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
sub = new Range(sub, options);
|
|
1269
|
-
dom = new Range(dom, options);
|
|
1270
|
-
let sawNonNull = false;
|
|
1271
|
-
OUTER: for (const simpleSub of sub.set) {
|
|
1272
|
-
for (const simpleDom of dom.set) {
|
|
1273
|
-
const isSub = simpleSubset(simpleSub, simpleDom, options);
|
|
1274
|
-
sawNonNull = sawNonNull || isSub !== null;
|
|
1275
|
-
if (isSub) {
|
|
735
|
+
var Range = require_range(), Comparator = require_comparator(), { ANY } = Comparator, satisfies2 = require_satisfies(), compare = require_compare(), subset = (sub, dom, options = {}) => {
|
|
736
|
+
if (sub === dom)
|
|
737
|
+
return !0;
|
|
738
|
+
sub = new Range(sub, options), dom = new Range(dom, options);
|
|
739
|
+
let sawNonNull = !1;
|
|
740
|
+
OUTER: for (let simpleSub of sub.set) {
|
|
741
|
+
for (let simpleDom of dom.set) {
|
|
742
|
+
let isSub = simpleSubset(simpleSub, simpleDom, options);
|
|
743
|
+
if (sawNonNull = sawNonNull || isSub !== null, isSub)
|
|
1276
744
|
continue OUTER;
|
|
1277
|
-
}
|
|
1278
|
-
}
|
|
1279
|
-
if (sawNonNull) {
|
|
1280
|
-
return false;
|
|
1281
745
|
}
|
|
746
|
+
if (sawNonNull)
|
|
747
|
+
return !1;
|
|
1282
748
|
}
|
|
1283
|
-
return
|
|
1284
|
-
}, "
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
var simpleSubset = /* @__PURE__ */ __name((sub, dom, options) => {
|
|
1288
|
-
if (sub === dom) {
|
|
1289
|
-
return true;
|
|
1290
|
-
}
|
|
749
|
+
return !0;
|
|
750
|
+
}, minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")], minimumVersion = [new Comparator(">=0.0.0")], simpleSubset = (sub, dom, options) => {
|
|
751
|
+
if (sub === dom)
|
|
752
|
+
return !0;
|
|
1291
753
|
if (sub.length === 1 && sub[0].semver === ANY) {
|
|
1292
|
-
if (dom.length === 1 && dom[0].semver === ANY)
|
|
1293
|
-
return
|
|
1294
|
-
|
|
1295
|
-
sub = minimumVersionWithPreRelease;
|
|
1296
|
-
} else {
|
|
1297
|
-
sub = minimumVersion;
|
|
1298
|
-
}
|
|
754
|
+
if (dom.length === 1 && dom[0].semver === ANY)
|
|
755
|
+
return !0;
|
|
756
|
+
options.includePrerelease ? sub = minimumVersionWithPreRelease : sub = minimumVersion;
|
|
1299
757
|
}
|
|
1300
758
|
if (dom.length === 1 && dom[0].semver === ANY) {
|
|
1301
|
-
if (options.includePrerelease)
|
|
1302
|
-
return
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
for (const c of sub) {
|
|
1310
|
-
if (c.operator === ">" || c.operator === ">=") {
|
|
1311
|
-
gt = higherGT(gt, c, options);
|
|
1312
|
-
} else if (c.operator === "<" || c.operator === "<=") {
|
|
1313
|
-
lt = lowerLT(lt, c, options);
|
|
1314
|
-
} else {
|
|
1315
|
-
eqSet.add(c.semver);
|
|
1316
|
-
}
|
|
1317
|
-
}
|
|
1318
|
-
if (eqSet.size > 1) {
|
|
759
|
+
if (options.includePrerelease)
|
|
760
|
+
return !0;
|
|
761
|
+
dom = minimumVersion;
|
|
762
|
+
}
|
|
763
|
+
let eqSet = /* @__PURE__ */ new Set(), gt, lt;
|
|
764
|
+
for (let c of sub)
|
|
765
|
+
c.operator === ">" || c.operator === ">=" ? gt = higherGT(gt, c, options) : c.operator === "<" || c.operator === "<=" ? lt = lowerLT(lt, c, options) : eqSet.add(c.semver);
|
|
766
|
+
if (eqSet.size > 1)
|
|
1319
767
|
return null;
|
|
1320
|
-
}
|
|
1321
768
|
let gtltComp;
|
|
1322
769
|
if (gt && lt) {
|
|
1323
|
-
gtltComp = compare(gt.semver, lt.semver, options)
|
|
1324
|
-
if (gtltComp > 0) {
|
|
770
|
+
if (gtltComp = compare(gt.semver, lt.semver, options), gtltComp > 0)
|
|
1325
771
|
return null;
|
|
1326
|
-
|
|
772
|
+
if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<="))
|
|
1327
773
|
return null;
|
|
1328
|
-
}
|
|
1329
774
|
}
|
|
1330
|
-
for (
|
|
1331
|
-
if (gt && !satisfies2(eq, String(gt), options))
|
|
775
|
+
for (let eq of eqSet) {
|
|
776
|
+
if (gt && !satisfies2(eq, String(gt), options) || lt && !satisfies2(eq, String(lt), options))
|
|
1332
777
|
return null;
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
|
|
1348
|
-
if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) {
|
|
1349
|
-
needDomLTPre = false;
|
|
1350
|
-
}
|
|
1351
|
-
for (const c of dom) {
|
|
1352
|
-
hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">=";
|
|
1353
|
-
hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<=";
|
|
1354
|
-
if (gt) {
|
|
1355
|
-
if (needDomGTPre) {
|
|
1356
|
-
if (c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch) {
|
|
1357
|
-
needDomGTPre = false;
|
|
1358
|
-
}
|
|
1359
|
-
}
|
|
1360
|
-
if (c.operator === ">" || c.operator === ">=") {
|
|
1361
|
-
higher = higherGT(gt, c, options);
|
|
1362
|
-
if (higher === c && higher !== gt) {
|
|
1363
|
-
return false;
|
|
1364
|
-
}
|
|
1365
|
-
} else if (gt.operator === ">=" && !satisfies2(gt.semver, String(c), options)) {
|
|
1366
|
-
return false;
|
|
1367
|
-
}
|
|
778
|
+
for (let c of dom)
|
|
779
|
+
if (!satisfies2(eq, String(c), options))
|
|
780
|
+
return !1;
|
|
781
|
+
return !0;
|
|
782
|
+
}
|
|
783
|
+
let higher, lower, hasDomLT, hasDomGT, needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : !1, needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : !1;
|
|
784
|
+
needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0 && (needDomLTPre = !1);
|
|
785
|
+
for (let c of dom) {
|
|
786
|
+
if (hasDomGT = hasDomGT || c.operator === ">" || c.operator === ">=", hasDomLT = hasDomLT || c.operator === "<" || c.operator === "<=", gt) {
|
|
787
|
+
if (needDomGTPre && c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomGTPre.major && c.semver.minor === needDomGTPre.minor && c.semver.patch === needDomGTPre.patch && (needDomGTPre = !1), c.operator === ">" || c.operator === ">=") {
|
|
788
|
+
if (higher = higherGT(gt, c, options), higher === c && higher !== gt)
|
|
789
|
+
return !1;
|
|
790
|
+
} else if (gt.operator === ">=" && !satisfies2(gt.semver, String(c), options))
|
|
791
|
+
return !1;
|
|
1368
792
|
}
|
|
1369
793
|
if (lt) {
|
|
1370
|
-
if (needDomLTPre) {
|
|
1371
|
-
if (
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
}
|
|
1383
|
-
}
|
|
1384
|
-
if (!c.operator && (lt || gt) && gtltComp !== 0) {
|
|
1385
|
-
return false;
|
|
1386
|
-
}
|
|
1387
|
-
}
|
|
1388
|
-
if (gt && hasDomLT && !lt && gtltComp !== 0) {
|
|
1389
|
-
return false;
|
|
1390
|
-
}
|
|
1391
|
-
if (lt && hasDomGT && !gt && gtltComp !== 0) {
|
|
1392
|
-
return false;
|
|
1393
|
-
}
|
|
1394
|
-
if (needDomGTPre || needDomLTPre) {
|
|
1395
|
-
return false;
|
|
1396
|
-
}
|
|
1397
|
-
return true;
|
|
1398
|
-
}, "simpleSubset");
|
|
1399
|
-
var higherGT = /* @__PURE__ */ __name((a, b, options) => {
|
|
1400
|
-
if (!a) {
|
|
794
|
+
if (needDomLTPre && c.semver.prerelease && c.semver.prerelease.length && c.semver.major === needDomLTPre.major && c.semver.minor === needDomLTPre.minor && c.semver.patch === needDomLTPre.patch && (needDomLTPre = !1), c.operator === "<" || c.operator === "<=") {
|
|
795
|
+
if (lower = lowerLT(lt, c, options), lower === c && lower !== lt)
|
|
796
|
+
return !1;
|
|
797
|
+
} else if (lt.operator === "<=" && !satisfies2(lt.semver, String(c), options))
|
|
798
|
+
return !1;
|
|
799
|
+
}
|
|
800
|
+
if (!c.operator && (lt || gt) && gtltComp !== 0)
|
|
801
|
+
return !1;
|
|
802
|
+
}
|
|
803
|
+
return !(gt && hasDomLT && !lt && gtltComp !== 0 || lt && hasDomGT && !gt && gtltComp !== 0 || needDomGTPre || needDomLTPre);
|
|
804
|
+
}, higherGT = (a, b, options) => {
|
|
805
|
+
if (!a)
|
|
1401
806
|
return b;
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
var lowerLT = /* @__PURE__ */ __name((a, b, options) => {
|
|
1407
|
-
if (!a) {
|
|
807
|
+
let comp = compare(a.semver, b.semver, options);
|
|
808
|
+
return comp > 0 ? a : comp < 0 || b.operator === ">" && a.operator === ">=" ? b : a;
|
|
809
|
+
}, lowerLT = (a, b, options) => {
|
|
810
|
+
if (!a)
|
|
1408
811
|
return b;
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
}, "lowerLT");
|
|
812
|
+
let comp = compare(a.semver, b.semver, options);
|
|
813
|
+
return comp < 0 ? a : comp > 0 || b.operator === "<" && a.operator === "<=" ? b : a;
|
|
814
|
+
};
|
|
1413
815
|
module.exports = subset;
|
|
1414
816
|
}
|
|
1415
817
|
});
|
|
@@ -1418,47 +820,7 @@ var require_subset = __commonJS({
|
|
|
1418
820
|
var require_semver2 = __commonJS({
|
|
1419
821
|
"../../node_modules/semver/index.js"(exports, module) {
|
|
1420
822
|
"use strict";
|
|
1421
|
-
var internalRe = require_re();
|
|
1422
|
-
var constants = require_constants();
|
|
1423
|
-
var SemVer = require_semver();
|
|
1424
|
-
var identifiers = require_identifiers();
|
|
1425
|
-
var parse = require_parse();
|
|
1426
|
-
var valid = require_valid();
|
|
1427
|
-
var clean = require_clean();
|
|
1428
|
-
var inc = require_inc();
|
|
1429
|
-
var diff = require_diff();
|
|
1430
|
-
var major = require_major();
|
|
1431
|
-
var minor = require_minor();
|
|
1432
|
-
var patch = require_patch();
|
|
1433
|
-
var prerelease = require_prerelease();
|
|
1434
|
-
var compare = require_compare();
|
|
1435
|
-
var rcompare = require_rcompare();
|
|
1436
|
-
var compareLoose = require_compare_loose();
|
|
1437
|
-
var compareBuild = require_compare_build();
|
|
1438
|
-
var sort = require_sort();
|
|
1439
|
-
var rsort = require_rsort();
|
|
1440
|
-
var gt = require_gt();
|
|
1441
|
-
var lt = require_lt();
|
|
1442
|
-
var eq = require_eq();
|
|
1443
|
-
var neq = require_neq();
|
|
1444
|
-
var gte = require_gte();
|
|
1445
|
-
var lte = require_lte();
|
|
1446
|
-
var cmp = require_cmp();
|
|
1447
|
-
var coerce2 = require_coerce();
|
|
1448
|
-
var Comparator = require_comparator();
|
|
1449
|
-
var Range = require_range();
|
|
1450
|
-
var satisfies2 = require_satisfies();
|
|
1451
|
-
var toComparators = require_to_comparators();
|
|
1452
|
-
var maxSatisfying = require_max_satisfying();
|
|
1453
|
-
var minSatisfying = require_min_satisfying();
|
|
1454
|
-
var minVersion = require_min_version();
|
|
1455
|
-
var validRange = require_valid2();
|
|
1456
|
-
var outside = require_outside();
|
|
1457
|
-
var gtr = require_gtr();
|
|
1458
|
-
var ltr = require_ltr();
|
|
1459
|
-
var intersects = require_intersects();
|
|
1460
|
-
var simplifyRange = require_simplify();
|
|
1461
|
-
var subset = require_subset();
|
|
823
|
+
var internalRe = require_re(), constants = require_constants(), SemVer = require_semver(), identifiers = require_identifiers(), parse = require_parse(), valid = require_valid(), clean = require_clean(), inc = require_inc(), diff = require_diff(), major = require_major(), minor = require_minor(), patch = require_patch(), prerelease = require_prerelease(), compare = require_compare(), rcompare = require_rcompare(), compareLoose = require_compare_loose(), compareBuild = require_compare_build(), sort = require_sort(), rsort = require_rsort(), gt = require_gt(), lt = require_lt(), eq = require_eq(), neq = require_neq(), gte = require_gte(), lte = require_lte(), cmp = require_cmp(), coerce2 = require_coerce(), Comparator = require_comparator(), Range = require_range(), satisfies2 = require_satisfies(), toComparators = require_to_comparators(), maxSatisfying = require_max_satisfying(), minSatisfying = require_min_satisfying(), minVersion = require_min_version(), validRange = require_valid2(), outside = require_outside(), gtr = require_gtr(), ltr = require_ltr(), intersects = require_intersects(), simplifyRange = require_simplify(), subset = require_subset();
|
|
1462
824
|
module.exports = {
|
|
1463
825
|
parse,
|
|
1464
826
|
valid,
|
|
@@ -1534,7 +896,6 @@ import { logger as logger2 } from "storybook/internal/node-logger";
|
|
|
1534
896
|
function up2(options) {
|
|
1535
897
|
return up("package.json", options);
|
|
1536
898
|
}
|
|
1537
|
-
__name(up2, "up");
|
|
1538
899
|
|
|
1539
900
|
// src/postinstall.ts
|
|
1540
901
|
var import_semver = __toESM(require_semver2(), 1);
|
|
@@ -1544,89 +905,49 @@ import { dedent } from "ts-dedent";
|
|
|
1544
905
|
// src/postinstall-logger.ts
|
|
1545
906
|
import { isCI } from "storybook/internal/common";
|
|
1546
907
|
import { colors, logger } from "storybook/internal/node-logger";
|
|
1547
|
-
var fancy = process.platform !== "win32" || isCI() || process.env.TERM === "xterm-256color"
|
|
1548
|
-
var step = colors.gray("\u203A");
|
|
1549
|
-
var info = colors.blue(fancy ? "\u2139" : "i");
|
|
1550
|
-
var success = colors.green(fancy ? "\u2714" : "\u221A");
|
|
1551
|
-
var warning = colors.orange(fancy ? "\u26A0" : "\u203C");
|
|
1552
|
-
var error = colors.red(fancy ? "\u2716" : "\xD7");
|
|
1553
|
-
var baseOptions = {
|
|
908
|
+
var fancy = process.platform !== "win32" || isCI() || process.env.TERM === "xterm-256color", step = colors.gray("\u203A"), info = colors.blue(fancy ? "\u2139" : "i"), success = colors.green(fancy ? "\u2714" : "\u221A"), warning = colors.orange(fancy ? "\u26A0" : "\u203C"), error = colors.red(fancy ? "\u2716" : "\xD7"), baseOptions = {
|
|
1554
909
|
borderStyle: "round",
|
|
1555
910
|
padding: 1
|
|
1556
|
-
}
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
logger.logBox(message, { ...baseOptions, ...options });
|
|
1560
|
-
}, "print");
|
|
1561
|
-
var printInfo = /* @__PURE__ */ __name((title, message, options) => print(message, { borderColor: "blue", title, ...options }), "printInfo");
|
|
1562
|
-
var printWarning = /* @__PURE__ */ __name((title, message, options) => print(message, { borderColor: "yellow", title, ...options }), "printWarning");
|
|
1563
|
-
var printError = /* @__PURE__ */ __name((title, message, options) => print(message, { borderColor: "red", title, ...options }), "printError");
|
|
1564
|
-
var printSuccess = /* @__PURE__ */ __name((title, message, options) => print(message, { borderColor: "green", title, ...options }), "printSuccess");
|
|
911
|
+
}, print = (message, options) => {
|
|
912
|
+
logger.line(1), logger.logBox(message, { ...baseOptions, ...options });
|
|
913
|
+
}, printInfo = (title, message, options) => print(message, { borderColor: "blue", title, ...options }), printWarning = (title, message, options) => print(message, { borderColor: "yellow", title, ...options }), printError = (title, message, options) => print(message, { borderColor: "red", title, ...options }), printSuccess = (title, message, options) => print(message, { borderColor: "green", title, ...options });
|
|
1565
914
|
|
|
1566
915
|
// src/updateVitestFile.ts
|
|
1567
916
|
import * as fs from "node:fs/promises";
|
|
1568
|
-
var loadTemplate =
|
|
917
|
+
var loadTemplate = async (name, replacements) => {
|
|
1569
918
|
let template = await fs.readFile(
|
|
1570
919
|
join(resolvePackageDir("@storybook/addon-vitest"), "templates", name),
|
|
1571
920
|
"utf8"
|
|
1572
921
|
);
|
|
1573
|
-
Object.entries(replacements).forEach(([key, value]) => template = template.replace(key, value));
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
var mergeProperties = /* @__PURE__ */ __name((source, target) => {
|
|
1577
|
-
for (const sourceProp of source) {
|
|
922
|
+
return Object.entries(replacements).forEach(([key, value]) => template = template.replace(key, value)), template;
|
|
923
|
+
}, mergeProperties = (source, target) => {
|
|
924
|
+
for (let sourceProp of source)
|
|
1578
925
|
if (sourceProp.type === "ObjectProperty") {
|
|
1579
|
-
|
|
926
|
+
let targetProp = target.find(
|
|
1580
927
|
(p) => sourceProp.key.type === "Identifier" && p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === sourceProp.key.name
|
|
1581
928
|
);
|
|
1582
|
-
|
|
1583
|
-
if (sourceProp.value.type === "ObjectExpression" && targetProp.value.type === "ObjectExpression") {
|
|
1584
|
-
mergeProperties(sourceProp.value.properties, targetProp.value.properties);
|
|
1585
|
-
} else if (sourceProp.value.type === "ArrayExpression" && targetProp.value.type === "ArrayExpression") {
|
|
1586
|
-
targetProp.value.elements.push(...sourceProp.value.elements);
|
|
1587
|
-
} else {
|
|
1588
|
-
targetProp.value = sourceProp.value;
|
|
1589
|
-
}
|
|
1590
|
-
} else {
|
|
1591
|
-
target.push(sourceProp);
|
|
1592
|
-
}
|
|
929
|
+
targetProp && targetProp.type === "ObjectProperty" ? sourceProp.value.type === "ObjectExpression" && targetProp.value.type === "ObjectExpression" ? mergeProperties(sourceProp.value.properties, targetProp.value.properties) : sourceProp.value.type === "ArrayExpression" && targetProp.value.type === "ArrayExpression" ? targetProp.value.elements.push(...sourceProp.value.elements) : targetProp.value = sourceProp.value : target.push(sourceProp);
|
|
1593
930
|
}
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
var updateConfigFile = /* @__PURE__ */ __name((source, target) => {
|
|
1597
|
-
let updated = false;
|
|
1598
|
-
const sourceExportDefault = source.program.body.find(
|
|
931
|
+
}, updateConfigFile = (source, target) => {
|
|
932
|
+
let updated = !1, sourceExportDefault = source.program.body.find(
|
|
1599
933
|
(n) => n.type === "ExportDefaultDeclaration"
|
|
1600
934
|
);
|
|
1601
|
-
if (!sourceExportDefault || sourceExportDefault.declaration.type !== "CallExpression")
|
|
1602
|
-
return
|
|
1603
|
-
|
|
1604
|
-
const targetExportDefault = target.program.body.find(
|
|
935
|
+
if (!sourceExportDefault || sourceExportDefault.declaration.type !== "CallExpression")
|
|
936
|
+
return !1;
|
|
937
|
+
let targetExportDefault = target.program.body.find(
|
|
1605
938
|
(n) => n.type === "ExportDefaultDeclaration"
|
|
1606
939
|
);
|
|
1607
|
-
if (!targetExportDefault)
|
|
1608
|
-
return
|
|
1609
|
-
|
|
1610
|
-
if (targetExportDefault.declaration.type === "CallExpression" && targetExportDefault.declaration.callee.type === "Identifier" && targetExportDefault.declaration.callee.name === "defineConfig" && targetExportDefault.declaration.arguments.
|
|
1611
|
-
return
|
|
1612
|
-
|
|
1613
|
-
let canHandleConfig = false;
|
|
1614
|
-
if (targetExportDefault.declaration.type === "ObjectExpression") {
|
|
1615
|
-
canHandleConfig = true;
|
|
1616
|
-
} else if (targetExportDefault.declaration.type === "CallExpression" && targetExportDefault.declaration.callee.type === "Identifier" && targetExportDefault.declaration.callee.name === "defineConfig" && targetExportDefault.declaration.arguments[0]?.type === "ObjectExpression") {
|
|
1617
|
-
canHandleConfig = true;
|
|
1618
|
-
} else if (targetExportDefault.declaration.type === "CallExpression" && targetExportDefault.declaration.callee.type === "Identifier" && targetExportDefault.declaration.callee.name === "mergeConfig" && targetExportDefault.declaration.arguments.length >= 2) {
|
|
1619
|
-
canHandleConfig = true;
|
|
1620
|
-
}
|
|
1621
|
-
if (!canHandleConfig) {
|
|
1622
|
-
return false;
|
|
1623
|
-
}
|
|
1624
|
-
for (const sourceNode of source.program.body) {
|
|
940
|
+
if (!targetExportDefault || targetExportDefault.declaration.type === "CallExpression" && targetExportDefault.declaration.callee.type === "Identifier" && targetExportDefault.declaration.callee.name === "defineConfig" && targetExportDefault.declaration.arguments.length > 0 && targetExportDefault.declaration.arguments[0].type === "ArrowFunctionExpression")
|
|
941
|
+
return !1;
|
|
942
|
+
let canHandleConfig = !1;
|
|
943
|
+
if ((targetExportDefault.declaration.type === "ObjectExpression" || targetExportDefault.declaration.type === "CallExpression" && targetExportDefault.declaration.callee.type === "Identifier" && targetExportDefault.declaration.callee.name === "defineConfig" && targetExportDefault.declaration.arguments[0]?.type === "ObjectExpression" || targetExportDefault.declaration.type === "CallExpression" && targetExportDefault.declaration.callee.type === "Identifier" && targetExportDefault.declaration.callee.name === "mergeConfig" && targetExportDefault.declaration.arguments.length >= 2) && (canHandleConfig = !0), !canHandleConfig)
|
|
944
|
+
return !1;
|
|
945
|
+
for (let sourceNode of source.program.body)
|
|
1625
946
|
if (sourceNode.type === "ImportDeclaration") {
|
|
1626
947
|
if (!target.program.body.some(
|
|
1627
948
|
(targetNode) => targetNode.type === sourceNode.type && targetNode.specifiers.some((s) => s.local.name === sourceNode.specifiers[0].local.name)
|
|
1628
949
|
)) {
|
|
1629
|
-
|
|
950
|
+
let lastImport = target.program.body.findLastIndex((n) => n.type === "ImportDeclaration");
|
|
1630
951
|
target.program.body.splice(lastImport + 1, 0, sourceNode);
|
|
1631
952
|
}
|
|
1632
953
|
} else if (sourceNode.type === "VariableDeclaration") {
|
|
@@ -1635,110 +956,88 @@ var updateConfigFile = /* @__PURE__ */ __name((source, target) => {
|
|
|
1635
956
|
(d) => "name" in d.id && "name" in sourceNode.declarations[0].id && d.id.name === sourceNode.declarations[0].id.name
|
|
1636
957
|
)
|
|
1637
958
|
)) {
|
|
1638
|
-
|
|
959
|
+
let lastImport = target.program.body.findLastIndex((n) => n.type === "ImportDeclaration");
|
|
1639
960
|
target.program.body.splice(lastImport + 1, 0, sourceNode);
|
|
1640
961
|
}
|
|
1641
962
|
} else if (sourceNode.type === "ExportDefaultDeclaration") {
|
|
1642
|
-
|
|
963
|
+
let exportDefault = target.program.body.find((n) => n.type === "ExportDefaultDeclaration");
|
|
1643
964
|
if (exportDefault && sourceNode.declaration.type === "CallExpression" && sourceNode.declaration.arguments.length > 0 && sourceNode.declaration.arguments[0].type === "ObjectExpression") {
|
|
1644
|
-
|
|
1645
|
-
if (exportDefault.declaration.type === "ObjectExpression")
|
|
1646
|
-
mergeProperties(properties, exportDefault.declaration.properties);
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
if (arg?.type === "CallExpression" && arg.callee.type === "Identifier" && arg.callee.name === "defineConfig" && arg.arguments[0]?.type === "ObjectExpression") {
|
|
1655
|
-
configObjectNodes.push(arg.arguments[0]);
|
|
1656
|
-
} else if (arg?.type === "ObjectExpression") {
|
|
1657
|
-
configObjectNodes.push(arg);
|
|
1658
|
-
}
|
|
1659
|
-
}
|
|
1660
|
-
const configObjectWithTest = configObjectNodes.find(
|
|
965
|
+
let { properties } = sourceNode.declaration.arguments[0];
|
|
966
|
+
if (exportDefault.declaration.type === "ObjectExpression")
|
|
967
|
+
mergeProperties(properties, exportDefault.declaration.properties), updated = !0;
|
|
968
|
+
else if (exportDefault.declaration.type === "CallExpression" && exportDefault.declaration.callee.type === "Identifier" && exportDefault.declaration.callee.name === "defineConfig" && exportDefault.declaration.arguments[0]?.type === "ObjectExpression")
|
|
969
|
+
mergeProperties(properties, exportDefault.declaration.arguments[0].properties), updated = !0;
|
|
970
|
+
else if (exportDefault.declaration.type === "CallExpression" && exportDefault.declaration.callee.type === "Identifier" && exportDefault.declaration.callee.name === "mergeConfig" && exportDefault.declaration.arguments.length >= 2) {
|
|
971
|
+
let configObjectNodes = [];
|
|
972
|
+
for (let arg of exportDefault.declaration.arguments)
|
|
973
|
+
arg?.type === "CallExpression" && arg.callee.type === "Identifier" && arg.callee.name === "defineConfig" && arg.arguments[0]?.type === "ObjectExpression" ? configObjectNodes.push(arg.arguments[0]) : arg?.type === "ObjectExpression" && configObjectNodes.push(arg);
|
|
974
|
+
let targetConfigObject = configObjectNodes.find(
|
|
1661
975
|
(obj) => obj.properties.some(
|
|
1662
976
|
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === "test"
|
|
1663
977
|
)
|
|
1664
|
-
);
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
}
|
|
1669
|
-
const existingTestProp = targetConfigObject.properties.find(
|
|
978
|
+
) || configObjectNodes[0];
|
|
979
|
+
if (!targetConfigObject)
|
|
980
|
+
return !1;
|
|
981
|
+
let existingTestProp = targetConfigObject.properties.find(
|
|
1670
982
|
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === "test"
|
|
1671
983
|
);
|
|
1672
984
|
if (existingTestProp && existingTestProp.value.type === "ObjectExpression") {
|
|
1673
|
-
|
|
985
|
+
let templateTestProp = properties.find(
|
|
1674
986
|
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === "test"
|
|
1675
987
|
);
|
|
1676
988
|
if (templateTestProp && templateTestProp.value.type === "ObjectExpression") {
|
|
1677
|
-
|
|
989
|
+
let workspaceOrProjectsProp = templateTestProp.value.properties.find(
|
|
1678
990
|
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && (p.key.name === "workspace" || p.key.name === "projects")
|
|
1679
991
|
);
|
|
1680
992
|
if (workspaceOrProjectsProp && workspaceOrProjectsProp.value.type === "ArrayExpression") {
|
|
1681
|
-
|
|
993
|
+
let coverageProp = existingTestProp.value.properties.find(
|
|
1682
994
|
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === "coverage"
|
|
1683
|
-
)
|
|
1684
|
-
const testPropsWithoutCoverage = existingTestProp.value.properties.filter(
|
|
1685
|
-
(p) => p !== coverageProp
|
|
1686
|
-
);
|
|
1687
|
-
const testConfigForProject = {
|
|
995
|
+
), testConfigForProject = {
|
|
1688
996
|
type: "ObjectExpression",
|
|
1689
|
-
properties:
|
|
1690
|
-
|
|
1691
|
-
|
|
997
|
+
properties: existingTestProp.value.properties.filter(
|
|
998
|
+
(p) => p !== coverageProp
|
|
999
|
+
)
|
|
1000
|
+
}, existingTestProject = {
|
|
1692
1001
|
type: "ObjectExpression",
|
|
1693
1002
|
properties: [
|
|
1694
1003
|
{
|
|
1695
1004
|
type: "ObjectProperty",
|
|
1696
1005
|
key: { type: "Identifier", name: "extends" },
|
|
1697
|
-
value: { type: "BooleanLiteral", value:
|
|
1698
|
-
computed:
|
|
1699
|
-
shorthand:
|
|
1006
|
+
value: { type: "BooleanLiteral", value: !0 },
|
|
1007
|
+
computed: !1,
|
|
1008
|
+
shorthand: !1
|
|
1700
1009
|
},
|
|
1701
1010
|
{
|
|
1702
1011
|
type: "ObjectProperty",
|
|
1703
1012
|
key: { type: "Identifier", name: "test" },
|
|
1704
1013
|
value: testConfigForProject,
|
|
1705
|
-
computed:
|
|
1706
|
-
shorthand:
|
|
1014
|
+
computed: !1,
|
|
1015
|
+
shorthand: !1
|
|
1707
1016
|
}
|
|
1708
1017
|
]
|
|
1709
1018
|
};
|
|
1710
|
-
workspaceOrProjectsProp.value.elements.unshift(existingTestProject)
|
|
1711
|
-
targetConfigObject.properties = targetConfigObject.properties.filter(
|
|
1019
|
+
workspaceOrProjectsProp.value.elements.unshift(existingTestProject), targetConfigObject.properties = targetConfigObject.properties.filter(
|
|
1712
1020
|
(p) => p !== existingTestProp
|
|
1713
|
-
);
|
|
1714
|
-
|
|
1715
|
-
templateTestProp.value.properties.unshift(coverageProp);
|
|
1716
|
-
}
|
|
1717
|
-
mergeProperties(properties, targetConfigObject.properties);
|
|
1718
|
-
} else {
|
|
1021
|
+
), coverageProp && templateTestProp.value.type === "ObjectExpression" && templateTestProp.value.properties.unshift(coverageProp), mergeProperties(properties, targetConfigObject.properties);
|
|
1022
|
+
} else
|
|
1719
1023
|
mergeProperties(properties, targetConfigObject.properties);
|
|
1720
|
-
|
|
1721
|
-
} else {
|
|
1024
|
+
} else
|
|
1722
1025
|
mergeProperties(properties, targetConfigObject.properties);
|
|
1723
|
-
|
|
1724
|
-
} else {
|
|
1026
|
+
} else
|
|
1725
1027
|
mergeProperties(properties, targetConfigObject.properties);
|
|
1726
|
-
|
|
1727
|
-
updated = true;
|
|
1028
|
+
updated = !0;
|
|
1728
1029
|
}
|
|
1729
1030
|
}
|
|
1730
1031
|
}
|
|
1731
|
-
}
|
|
1732
1032
|
return updated;
|
|
1733
|
-
},
|
|
1734
|
-
|
|
1735
|
-
let
|
|
1736
|
-
for (const sourceNode of source.program.body) {
|
|
1033
|
+
}, updateWorkspaceFile = (source, target) => {
|
|
1034
|
+
let updated = !1;
|
|
1035
|
+
for (let sourceNode of source.program.body)
|
|
1737
1036
|
if (sourceNode.type === "ImportDeclaration") {
|
|
1738
1037
|
if (!target.program.body.some(
|
|
1739
1038
|
(targetNode) => targetNode.type === sourceNode.type && targetNode.source.value === sourceNode.source.value && targetNode.specifiers.some((s) => s.local.name === sourceNode.specifiers[0].local.name)
|
|
1740
1039
|
)) {
|
|
1741
|
-
|
|
1040
|
+
let lastImport = target.program.body.findLastIndex((n) => n.type === "ImportDeclaration");
|
|
1742
1041
|
target.program.body.splice(lastImport + 1, 0, sourceNode);
|
|
1743
1042
|
}
|
|
1744
1043
|
} else if (sourceNode.type === "VariableDeclaration") {
|
|
@@ -1747,52 +1046,30 @@ var updateWorkspaceFile = /* @__PURE__ */ __name((source, target) => {
|
|
|
1747
1046
|
(d) => "name" in d.id && "name" in sourceNode.declarations[0].id && d.id.name === sourceNode.declarations[0].id.name
|
|
1748
1047
|
)
|
|
1749
1048
|
)) {
|
|
1750
|
-
|
|
1049
|
+
let lastImport = target.program.body.findLastIndex((n) => n.type === "ImportDeclaration");
|
|
1751
1050
|
target.program.body.splice(lastImport + 1, 0, sourceNode);
|
|
1752
1051
|
}
|
|
1753
1052
|
} else if (sourceNode.type === "ExportDefaultDeclaration") {
|
|
1754
|
-
|
|
1053
|
+
let exportDefault = target.program.body.find((n) => n.type === "ExportDefaultDeclaration");
|
|
1755
1054
|
if (exportDefault && sourceNode.declaration.type === "CallExpression" && sourceNode.declaration.arguments.length > 0 && sourceNode.declaration.arguments[0].type === "ArrayExpression" && sourceNode.declaration.arguments[0].elements.length > 0) {
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
exportDefault.declaration.elements.push(...elements);
|
|
1759
|
-
updated = true;
|
|
1760
|
-
} else if (exportDefault.declaration.type === "CallExpression" && exportDefault.declaration.callee.type === "Identifier" && exportDefault.declaration.callee.name === "defineWorkspace" && exportDefault.declaration.arguments[0]?.type === "ArrayExpression") {
|
|
1761
|
-
exportDefault.declaration.arguments[0].elements.push(...elements);
|
|
1762
|
-
updated = true;
|
|
1763
|
-
}
|
|
1055
|
+
let { elements } = sourceNode.declaration.arguments[0];
|
|
1056
|
+
exportDefault.declaration.type === "ArrayExpression" ? (exportDefault.declaration.elements.push(...elements), updated = !0) : exportDefault.declaration.type === "CallExpression" && exportDefault.declaration.callee.type === "Identifier" && exportDefault.declaration.callee.name === "defineWorkspace" && exportDefault.declaration.arguments[0]?.type === "ArrayExpression" && (exportDefault.declaration.arguments[0].elements.push(...elements), updated = !0);
|
|
1764
1057
|
}
|
|
1765
1058
|
}
|
|
1766
|
-
}
|
|
1767
1059
|
return updated;
|
|
1768
|
-
}
|
|
1060
|
+
};
|
|
1769
1061
|
|
|
1770
1062
|
// src/postinstall.ts
|
|
1771
|
-
var ADDON_NAME = "@storybook/addon-vitest";
|
|
1772
|
-
var EXTENSIONS = [".ts", ".tsx", ".js", ".jsx", ".cts", ".mts", ".cjs", ".mjs"];
|
|
1773
|
-
var addonA11yName = "@storybook/addon-a11y";
|
|
1774
|
-
var hasErrors = false;
|
|
1063
|
+
var ADDON_NAME = "@storybook/addon-vitest", EXTENSIONS = [".ts", ".tsx", ".js", ".jsx", ".cts", ".mts", ".cjs", ".mjs"], addonA11yName = "@storybook/addon-a11y", hasErrors = !1;
|
|
1775
1064
|
function nameMatches(name, pattern) {
|
|
1776
|
-
|
|
1777
|
-
return true;
|
|
1778
|
-
}
|
|
1779
|
-
if (name.includes(`${pattern}${sep}`)) {
|
|
1780
|
-
return true;
|
|
1781
|
-
}
|
|
1782
|
-
if (name.includes(`${pattern}${posix.sep}`)) {
|
|
1783
|
-
return true;
|
|
1784
|
-
}
|
|
1785
|
-
return false;
|
|
1065
|
+
return !!(name === pattern || name.includes(`${pattern}${sep}`) || name.includes(`${pattern}${posix.sep}`));
|
|
1786
1066
|
}
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
printError(...args);
|
|
1791
|
-
}, "logErrors");
|
|
1792
|
-
var findFile = /* @__PURE__ */ __name((basename, extensions = EXTENSIONS) => any(
|
|
1067
|
+
var logErrors = (...args) => {
|
|
1068
|
+
hasErrors = !0, printError(...args);
|
|
1069
|
+
}, findFile = (basename, extensions = EXTENSIONS) => any(
|
|
1793
1070
|
extensions.map((ext) => basename + ext),
|
|
1794
1071
|
{ last: getProjectRoot() }
|
|
1795
|
-
)
|
|
1072
|
+
);
|
|
1796
1073
|
async function postInstall(options) {
|
|
1797
1074
|
printSuccess(
|
|
1798
1075
|
"\u{1F44B} Howdy!",
|
|
@@ -1802,139 +1079,80 @@ async function postInstall(options) {
|
|
|
1802
1079
|
Hold on for a moment while I look at your project and get it set up...
|
|
1803
1080
|
`
|
|
1804
1081
|
);
|
|
1805
|
-
|
|
1082
|
+
let packageManager = JsPackageManagerFactory.getPackageManager({
|
|
1806
1083
|
force: options.packageManager
|
|
1807
|
-
})
|
|
1808
|
-
const vitestVersionSpecifier = await packageManager.getInstalledVersion("vitest");
|
|
1809
|
-
const coercedVitestVersion = vitestVersionSpecifier ? (0, import_semver.coerce)(vitestVersionSpecifier) : null;
|
|
1810
|
-
const isVitest3_2To4 = vitestVersionSpecifier ? (0, import_semver.satisfies)(vitestVersionSpecifier, ">=3.2.0 <4.0.0") : false;
|
|
1811
|
-
const isVitest4OrNewer = vitestVersionSpecifier ? (0, import_semver.satisfies)(vitestVersionSpecifier, ">=4.0.0") : true;
|
|
1812
|
-
const info2 = await getStorybookInfo(options);
|
|
1813
|
-
const allDeps = packageManager.getAllDependencies();
|
|
1814
|
-
const dependencies = [
|
|
1084
|
+
}), vitestVersionSpecifier = await packageManager.getInstalledVersion("vitest"), coercedVitestVersion = vitestVersionSpecifier ? (0, import_semver.coerce)(vitestVersionSpecifier) : null, isVitest3_2To4 = vitestVersionSpecifier ? (0, import_semver.satisfies)(vitestVersionSpecifier, ">=3.2.0 <4.0.0") : !1, isVitest4OrNewer = vitestVersionSpecifier ? (0, import_semver.satisfies)(vitestVersionSpecifier, ">=4.0.0") : !0, info2 = await getStorybookInfo(options), allDeps = packageManager.getAllDependencies(), uniqueDependencies = [
|
|
1815
1085
|
"vitest",
|
|
1816
1086
|
"playwright",
|
|
1817
1087
|
isVitest4OrNewer ? "@vitest/browser-playwright" : "@vitest/browser"
|
|
1818
|
-
];
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
const isInteractive = process.stdout.isTTY && !isCI2();
|
|
1824
|
-
if (nameMatches(info2.frameworkPackageName, "@storybook/nextjs") && !hasCustomWebpackConfig) {
|
|
1825
|
-
const out = options.yes || !isInteractive ? { migrateToNextjsVite: !!options.yes } : await prompts({
|
|
1826
|
-
type: "confirm",
|
|
1827
|
-
name: "migrateToNextjsVite",
|
|
1828
|
-
message: dedent`
|
|
1088
|
+
].filter((p) => !allDeps[p]), mainJsPath = getInterpretedFile(resolve(options.configDir, "main")), config = await readConfig(mainJsPath), hasCustomWebpackConfig = !!config.getFieldNode(["webpackFinal"]), isInteractive = process.stdout.isTTY && !isCI2();
|
|
1089
|
+
nameMatches(info2.frameworkPackageName, "@storybook/nextjs") && !hasCustomWebpackConfig && (options.yes || !isInteractive ? { migrateToNextjsVite: !!options.yes } : await prompts({
|
|
1090
|
+
type: "confirm",
|
|
1091
|
+
name: "migrateToNextjsVite",
|
|
1092
|
+
message: dedent`
|
|
1829
1093
|
The addon requires the use of @storybook/nextjs-vite to work with Next.js.
|
|
1830
1094
|
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}#install-and-set-up
|
|
1831
1095
|
|
|
1832
1096
|
Do you want to migrate?
|
|
1833
1097
|
`,
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
await packageManager.removeDependencies(["@storybook/nextjs"]);
|
|
1841
|
-
traverse(config._ast, {
|
|
1842
|
-
StringLiteral(path) {
|
|
1843
|
-
if (path.node.value === "@storybook/nextjs") {
|
|
1844
|
-
path.node.value = "@storybook/nextjs-vite";
|
|
1845
|
-
}
|
|
1846
|
-
}
|
|
1847
|
-
});
|
|
1848
|
-
await writeConfig(config, mainJsPath);
|
|
1849
|
-
info2.frameworkPackageName = "@storybook/nextjs-vite";
|
|
1850
|
-
info2.builderPackageName = "@storybook/builder-vite";
|
|
1851
|
-
await scanAndTransformFiles({
|
|
1852
|
-
promptMessage: "Enter a glob to scan for all @storybook/nextjs imports to substitute with @storybook/nextjs-vite:",
|
|
1853
|
-
force: options.yes,
|
|
1854
|
-
dryRun: false,
|
|
1855
|
-
transformFn: /* @__PURE__ */ __name((files, options2, dryRun) => transformImportFiles(files, options2, dryRun), "transformFn"),
|
|
1856
|
-
transformOptions: {
|
|
1857
|
-
"@storybook/nextjs": "@storybook/nextjs-vite"
|
|
1858
|
-
}
|
|
1859
|
-
});
|
|
1098
|
+
initial: !0
|
|
1099
|
+
})).migrateToNextjsVite && (await packageManager.addDependencies({ type: "devDependencies", skipInstall: !0 }, [
|
|
1100
|
+
"@storybook/nextjs-vite"
|
|
1101
|
+
]), await packageManager.removeDependencies(["@storybook/nextjs"]), traverse(config._ast, {
|
|
1102
|
+
StringLiteral(path) {
|
|
1103
|
+
path.node.value === "@storybook/nextjs" && (path.node.value = "@storybook/nextjs-vite");
|
|
1860
1104
|
}
|
|
1861
|
-
}
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
if (hasCustomWebpackConfig) {
|
|
1869
|
-
reasons.push("\u2022 The addon can not be used with a custom Webpack configuration.");
|
|
1870
|
-
}
|
|
1871
|
-
if (!nameMatches(info2.frameworkPackageName, "@storybook/nextjs") && !nameMatches(info2.builderPackageName, "@storybook/builder-vite")) {
|
|
1872
|
-
reasons.push(
|
|
1873
|
-
"\u2022 The addon can only be used with a Vite-based Storybook framework or Next.js."
|
|
1874
|
-
);
|
|
1105
|
+
}), await writeConfig(config, mainJsPath), info2.frameworkPackageName = "@storybook/nextjs-vite", info2.builderPackageName = "@storybook/builder-vite", await scanAndTransformFiles({
|
|
1106
|
+
promptMessage: "Enter a glob to scan for all @storybook/nextjs imports to substitute with @storybook/nextjs-vite:",
|
|
1107
|
+
force: options.yes,
|
|
1108
|
+
dryRun: !1,
|
|
1109
|
+
transformFn: (files, options2, dryRun) => transformImportFiles(files, options2, dryRun),
|
|
1110
|
+
transformOptions: {
|
|
1111
|
+
"@storybook/nextjs": "@storybook/nextjs-vite"
|
|
1875
1112
|
}
|
|
1876
|
-
|
|
1877
|
-
|
|
1113
|
+
}));
|
|
1114
|
+
let annotationsImport = SUPPORTED_FRAMEWORKS.find(
|
|
1115
|
+
(f) => nameMatches(info2.frameworkPackageName, f)
|
|
1116
|
+
) ? info2.frameworkPackageName === "@storybook/nextjs" ? "@storybook/nextjs-vite" : info2.frameworkPackageName : null, isRendererSupported = !!annotationsImport, result = await (async () => {
|
|
1117
|
+
let reasons = [];
|
|
1118
|
+
hasCustomWebpackConfig && reasons.push("\u2022 The addon can not be used with a custom Webpack configuration."), !nameMatches(info2.frameworkPackageName, "@storybook/nextjs") && !nameMatches(info2.builderPackageName, "@storybook/builder-vite") && reasons.push(
|
|
1119
|
+
"\u2022 The addon can only be used with a Vite-based Storybook framework or Next.js."
|
|
1120
|
+
), isRendererSupported || reasons.push(dedent`
|
|
1878
1121
|
• The addon cannot yet be used with ${info2.frameworkPackageName}
|
|
1879
|
-
`)
|
|
1880
|
-
}
|
|
1881
|
-
if (coercedVitestVersion && !(0, import_semver.satisfies)(coercedVitestVersion, ">=3.0.0")) {
|
|
1882
|
-
reasons.push(dedent`
|
|
1122
|
+
`), coercedVitestVersion && !(0, import_semver.satisfies)(coercedVitestVersion, ">=3.0.0") && reasons.push(dedent`
|
|
1883
1123
|
• The addon requires Vitest 3.0.0 or higher. You are currently using ${vitestVersionSpecifier}.
|
|
1884
1124
|
Please update all of your Vitest dependencies and try again.
|
|
1885
1125
|
`);
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
const coercedMswVersion = mswVersionSpecifier ? (0, import_semver.coerce)(mswVersionSpecifier) : null;
|
|
1889
|
-
if (coercedMswVersion && !(0, import_semver.satisfies)(coercedMswVersion, ">=2.0.0")) {
|
|
1890
|
-
reasons.push(dedent`
|
|
1126
|
+
let mswVersionSpecifier = await packageManager.getInstalledVersion("msw"), coercedMswVersion = mswVersionSpecifier ? (0, import_semver.coerce)(mswVersionSpecifier) : null;
|
|
1127
|
+
return coercedMswVersion && !(0, import_semver.satisfies)(coercedMswVersion, ">=2.0.0") && reasons.push(dedent`
|
|
1891
1128
|
• The addon uses Vitest behind the scenes, which supports only version 2 and above of MSW. However, we have detected version ${coercedMswVersion.version} in this project.
|
|
1892
1129
|
Please update the 'msw' package and try again.
|
|
1893
|
-
`)
|
|
1894
|
-
}
|
|
1895
|
-
if (nameMatches(info2.frameworkPackageName, "@storybook/nextjs")) {
|
|
1896
|
-
const nextVersion = await packageManager.getInstalledVersion("next");
|
|
1897
|
-
if (!nextVersion) {
|
|
1898
|
-
reasons.push(dedent`
|
|
1130
|
+
`), nameMatches(info2.frameworkPackageName, "@storybook/nextjs") && (await packageManager.getInstalledVersion("next") || reasons.push(dedent`
|
|
1899
1131
|
• You are using @storybook/nextjs without having "next" installed.
|
|
1900
1132
|
Please install "next" or use a different Storybook framework integration and try again.
|
|
1901
|
-
`)
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
reasons.unshift(
|
|
1906
|
-
`@storybook/addon-vitest's automated setup failed due to the following package incompatibilities:`
|
|
1907
|
-
);
|
|
1908
|
-
reasons.push("--------------------------------");
|
|
1909
|
-
reasons.push(
|
|
1910
|
-
dedent`
|
|
1133
|
+
`)), reasons.length > 0 ? (reasons.unshift(
|
|
1134
|
+
"@storybook/addon-vitest's automated setup failed due to the following package incompatibilities:"
|
|
1135
|
+
), reasons.push("--------------------------------"), reasons.push(
|
|
1136
|
+
dedent`
|
|
1911
1137
|
You can fix these issues and rerun the command to reinstall. If you wish to roll back the installation, remove ${ADDON_NAME} from the "addons" array
|
|
1912
1138
|
in your main Storybook config file and remove the dependency from your package.json file.
|
|
1913
1139
|
`
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
reasons.push(
|
|
1917
|
-
dedent`
|
|
1918
|
-
Please check the documentation for more information about its requirements and installation:
|
|
1919
|
-
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}
|
|
1920
|
-
`
|
|
1921
|
-
);
|
|
1922
|
-
} else {
|
|
1923
|
-
reasons.push(
|
|
1924
|
-
dedent`
|
|
1140
|
+
), isRendererSupported ? reasons.push(
|
|
1141
|
+
dedent`
|
|
1925
1142
|
Fear not, however, you can follow the manual installation process instead at:
|
|
1926
1143
|
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}#manual-setup
|
|
1927
1144
|
`
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1145
|
+
) : reasons.push(
|
|
1146
|
+
dedent`
|
|
1147
|
+
Please check the documentation for more information about its requirements and installation:
|
|
1148
|
+
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}
|
|
1149
|
+
`
|
|
1150
|
+
), reasons.map((r) => r.trim()).join(`
|
|
1151
|
+
|
|
1152
|
+
`)) : null;
|
|
1153
|
+
})();
|
|
1935
1154
|
if (result) {
|
|
1936
|
-
logErrors("\u26D4\uFE0F Sorry!", result);
|
|
1937
|
-
logger2.line(1);
|
|
1155
|
+
logErrors("\u26D4\uFE0F Sorry!", result), logger2.line(1);
|
|
1938
1156
|
return;
|
|
1939
1157
|
}
|
|
1940
1158
|
if (info2.frameworkPackageName === "@storybook/nextjs") {
|
|
@@ -1949,60 +1167,40 @@ async function postInstall(options) {
|
|
|
1949
1167
|
`
|
|
1950
1168
|
);
|
|
1951
1169
|
try {
|
|
1952
|
-
|
|
1170
|
+
let storybookVersion = await packageManager.getInstalledVersion("storybook");
|
|
1953
1171
|
uniqueDependencies.push(`@storybook/nextjs-vite@^${storybookVersion}`);
|
|
1954
|
-
} catch
|
|
1172
|
+
} catch {
|
|
1955
1173
|
console.error("Failed to install @storybook/nextjs-vite. Please install it manually");
|
|
1956
1174
|
}
|
|
1957
1175
|
}
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
"\u{1F648} Let me cover this for you",
|
|
1963
|
-
dedent`
|
|
1176
|
+
let v8Version = await packageManager.getInstalledVersion("@vitest/coverage-v8"), istanbulVersion = await packageManager.getInstalledVersion("@vitest/coverage-istanbul");
|
|
1177
|
+
!v8Version && !istanbulVersion && (printInfo(
|
|
1178
|
+
"\u{1F648} Let me cover this for you",
|
|
1179
|
+
dedent`
|
|
1964
1180
|
You don't seem to have a coverage reporter installed. Vitest needs either V8 or Istanbul to generate coverage reports.
|
|
1965
1181
|
|
|
1966
1182
|
Adding "@vitest/coverage-v8" to enable coverage reporting.
|
|
1967
1183
|
Read more about Vitest coverage providers at https://vitest.dev/guide/coverage.html#coverage-providers
|
|
1968
1184
|
`
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
if (versionedDependencies.length > 0) {
|
|
1979
|
-
await packageManager.addDependencies(
|
|
1980
|
-
{ type: "devDependencies", skipInstall: true },
|
|
1981
|
-
versionedDependencies
|
|
1982
|
-
);
|
|
1983
|
-
logger2.line(1);
|
|
1984
|
-
logger2.plain(`${step} Installing dependencies:`);
|
|
1985
|
-
logger2.plain(" " + versionedDependencies.join(", "));
|
|
1986
|
-
}
|
|
1987
|
-
await packageManager.installDependencies();
|
|
1988
|
-
logger2.line(1);
|
|
1989
|
-
if (options.skipInstall) {
|
|
1990
|
-
logger2.plain("Skipping Playwright installation, please run this command manually:");
|
|
1991
|
-
logger2.plain(" npx playwright install chromium --with-deps");
|
|
1992
|
-
} else {
|
|
1993
|
-
logger2.plain(`${step} Configuring Playwright with Chromium (this might take some time):`);
|
|
1994
|
-
logger2.plain(" npx playwright install chromium --with-deps");
|
|
1185
|
+
), uniqueDependencies.push("@vitest/coverage-v8"));
|
|
1186
|
+
let versionedDependencies = uniqueDependencies.map((p) => p.includes("vitest") && vitestVersionSpecifier ? `${p}@${vitestVersionSpecifier}` : p);
|
|
1187
|
+
if (versionedDependencies.length > 0 && (await packageManager.addDependencies(
|
|
1188
|
+
{ type: "devDependencies", skipInstall: !0 },
|
|
1189
|
+
versionedDependencies
|
|
1190
|
+
), logger2.line(1), logger2.plain(`${step} Installing dependencies:`), logger2.plain(" " + versionedDependencies.join(", "))), await packageManager.installDependencies(), logger2.line(1), options.skipInstall)
|
|
1191
|
+
logger2.plain("Skipping Playwright installation, please run this command manually:"), logger2.plain(" npx playwright install chromium --with-deps");
|
|
1192
|
+
else {
|
|
1193
|
+
logger2.plain(`${step} Configuring Playwright with Chromium (this might take some time):`), logger2.plain(" npx playwright install chromium --with-deps");
|
|
1995
1194
|
try {
|
|
1996
1195
|
await packageManager.executeCommand({
|
|
1997
1196
|
command: "npx",
|
|
1998
1197
|
args: ["playwright", "install", "chromium", "--with-deps"]
|
|
1999
1198
|
});
|
|
2000
|
-
} catch
|
|
1199
|
+
} catch {
|
|
2001
1200
|
console.error("Failed to install Playwright. Please install it manually");
|
|
2002
1201
|
}
|
|
2003
1202
|
}
|
|
2004
|
-
|
|
2005
|
-
const vitestSetupFile = resolve(options.configDir, `vitest.setup.${fileExtension}`);
|
|
1203
|
+
let fileExtension = allDeps.typescript || findFile("tsconfig", [...EXTENSIONS, ".json"]) ? "ts" : "js", vitestSetupFile = resolve(options.configDir, `vitest.setup.${fileExtension}`);
|
|
2006
1204
|
if (existsSync(vitestSetupFile)) {
|
|
2007
1205
|
logErrors(
|
|
2008
1206
|
"\u{1F6A8} Oh no!",
|
|
@@ -2013,67 +1211,40 @@ async function postInstall(options) {
|
|
|
2013
1211
|
Please refer to the documentation to complete the setup manually:
|
|
2014
1212
|
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}#manual-setup
|
|
2015
1213
|
`
|
|
2016
|
-
);
|
|
2017
|
-
logger2.line(1);
|
|
1214
|
+
), logger2.line(1);
|
|
2018
1215
|
return;
|
|
2019
1216
|
}
|
|
2020
|
-
logger2.line(1);
|
|
2021
|
-
|
|
2022
|
-
logger2.plain(` ${vitestSetupFile}`);
|
|
2023
|
-
const previewExists = EXTENSIONS.map((ext) => resolve(options.configDir, `preview${ext}`)).some(
|
|
1217
|
+
logger2.line(1), logger2.plain(`${step} Creating a Vitest setup file for Storybook:`), logger2.plain(` ${vitestSetupFile}`);
|
|
1218
|
+
let previewExists = EXTENSIONS.map((ext) => resolve(options.configDir, `preview${ext}`)).some(
|
|
2024
1219
|
existsSync
|
|
2025
|
-
);
|
|
2026
|
-
|
|
2027
|
-
const projectAnnotations = [];
|
|
2028
|
-
if (previewExists) {
|
|
2029
|
-
imports.push(`import * as projectAnnotations from './preview';`);
|
|
2030
|
-
projectAnnotations.push("projectAnnotations");
|
|
2031
|
-
}
|
|
2032
|
-
await writeFile(
|
|
1220
|
+
), imports = [`import { setProjectAnnotations } from '${annotationsImport}';`], projectAnnotations = [];
|
|
1221
|
+
previewExists && (imports.push("import * as projectAnnotations from './preview';"), projectAnnotations.push("projectAnnotations")), await writeFile(
|
|
2033
1222
|
vitestSetupFile,
|
|
2034
1223
|
dedent`
|
|
2035
|
-
${imports.join(
|
|
1224
|
+
${imports.join(`
|
|
1225
|
+
`)}
|
|
2036
1226
|
|
|
2037
1227
|
// This is an important step to apply the right configuration when testing your stories.
|
|
2038
1228
|
// More info at: https://storybook.js.org/docs/api/portable-stories/portable-stories-vitest#setprojectannotations
|
|
2039
1229
|
setProjectAnnotations([${projectAnnotations.join(", ")}]);
|
|
2040
1230
|
`
|
|
2041
1231
|
);
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
await writeFile(
|
|
2049
|
-
"vitest.shims.d.ts",
|
|
2050
|
-
isVitest4OrNewer ? '/// <reference types="@vitest/browser-playwright" />' : '/// <reference types="@vitest/browser/providers/playwright" />'
|
|
2051
|
-
);
|
|
2052
|
-
}
|
|
2053
|
-
const getTemplateName = /* @__PURE__ */ __name(() => {
|
|
2054
|
-
if (isVitest4OrNewer) {
|
|
2055
|
-
return "vitest.config.4.template.ts";
|
|
2056
|
-
} else if (isVitest3_2To4) {
|
|
2057
|
-
return "vitest.config.3.2.template.ts";
|
|
2058
|
-
}
|
|
2059
|
-
return "vitest.config.template.ts";
|
|
2060
|
-
}, "getTemplateName");
|
|
1232
|
+
let vitestWorkspaceFile = findFile("vitest.workspace", [".ts", ".js", ".json"]), viteConfigFile = findFile("vite.config"), vitestConfigFile = findFile("vitest.config"), vitestShimFile = findFile("vitest.shims.d"), rootConfig = vitestConfigFile || viteConfigFile;
|
|
1233
|
+
fileExtension === "ts" && !vitestShimFile && await writeFile(
|
|
1234
|
+
"vitest.shims.d.ts",
|
|
1235
|
+
isVitest4OrNewer ? '/// <reference types="@vitest/browser-playwright" />' : '/// <reference types="@vitest/browser/providers/playwright" />'
|
|
1236
|
+
);
|
|
1237
|
+
let getTemplateName = () => isVitest4OrNewer ? "vitest.config.4.template.ts" : isVitest3_2To4 ? "vitest.config.3.2.template.ts" : "vitest.config.template.ts";
|
|
2061
1238
|
if (vitestWorkspaceFile) {
|
|
2062
|
-
|
|
1239
|
+
let workspaceTemplate = await loadTemplate("vitest.workspace.template.ts", {
|
|
2063
1240
|
EXTENDS_WORKSPACE: viteConfigFile ? relative(dirname(vitestWorkspaceFile), viteConfigFile) : "",
|
|
2064
1241
|
CONFIG_DIR: options.configDir,
|
|
2065
1242
|
SETUP_FILE: relative(dirname(vitestWorkspaceFile), vitestSetupFile)
|
|
2066
1243
|
}).then((t) => t.replace(`
|
|
2067
|
-
'ROOT_CONFIG',`, "").replace(/\s+extends: '',/, ""));
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
const updated = updateWorkspaceFile(source, target);
|
|
2072
|
-
if (updated) {
|
|
2073
|
-
logger2.line(1);
|
|
2074
|
-
logger2.plain(`${step} Updating your Vitest workspace file:`);
|
|
2075
|
-
logger2.plain(` ${vitestWorkspaceFile}`);
|
|
2076
|
-
const formattedContent = await formatFileContent(vitestWorkspaceFile, generate(target).code);
|
|
1244
|
+
'ROOT_CONFIG',`, "").replace(/\s+extends: '',/, "")), workspaceFile = await fs2.readFile(vitestWorkspaceFile, "utf8"), source = babelParse(workspaceTemplate), target = babelParse(workspaceFile);
|
|
1245
|
+
if (updateWorkspaceFile(source, target)) {
|
|
1246
|
+
logger2.line(1), logger2.plain(`${step} Updating your Vitest workspace file:`), logger2.plain(` ${vitestWorkspaceFile}`);
|
|
1247
|
+
let formattedContent = await formatFileContent(vitestWorkspaceFile, generate(target).code);
|
|
2077
1248
|
await writeFile(vitestWorkspaceFile, formattedContent);
|
|
2078
1249
|
} else {
|
|
2079
1250
|
logErrors(
|
|
@@ -2088,37 +1259,29 @@ async function postInstall(options) {
|
|
|
2088
1259
|
Please refer to the documentation to complete the setup manually:
|
|
2089
1260
|
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}#manual-setup
|
|
2090
1261
|
`
|
|
2091
|
-
);
|
|
2092
|
-
logger2.line(1);
|
|
1262
|
+
), logger2.line(1);
|
|
2093
1263
|
return;
|
|
2094
1264
|
}
|
|
2095
1265
|
} else if (rootConfig) {
|
|
2096
|
-
let target, updated
|
|
2097
|
-
const configFile = await fs2.readFile(rootConfig, "utf8");
|
|
2098
|
-
const configFileHasTypeReference = configFile.match(
|
|
1266
|
+
let target, updated, configFile = await fs2.readFile(rootConfig, "utf8"), configFileHasTypeReference = configFile.match(
|
|
2099
1267
|
/\/\/\/\s*<reference\s+types=["']vitest\/config["']\s*\/>/
|
|
2100
|
-
);
|
|
2101
|
-
const templateName = getTemplateName();
|
|
1268
|
+
), templateName = getTemplateName();
|
|
2102
1269
|
if (templateName) {
|
|
2103
|
-
|
|
1270
|
+
let configTemplate = await loadTemplate(templateName, {
|
|
2104
1271
|
CONFIG_DIR: options.configDir,
|
|
2105
1272
|
SETUP_FILE: relative(dirname(rootConfig), vitestSetupFile)
|
|
2106
|
-
});
|
|
2107
|
-
|
|
2108
|
-
target = babelParse(configFile);
|
|
2109
|
-
updated = updateConfigFile(source, target);
|
|
1273
|
+
}), source = babelParse(configTemplate);
|
|
1274
|
+
target = babelParse(configFile), updated = updateConfigFile(source, target);
|
|
2110
1275
|
}
|
|
2111
1276
|
if (target && updated) {
|
|
2112
|
-
logger2.line(1);
|
|
2113
|
-
|
|
2114
|
-
logger2.plain(` ${rootConfig}`);
|
|
2115
|
-
const formattedContent = await formatFileContent(rootConfig, generate(target).code);
|
|
2116
|
-
const shouldAddReference = !configFileHasTypeReference && !vitestConfigFile;
|
|
1277
|
+
logger2.line(1), logger2.plain(`${step} Updating your ${vitestConfigFile ? "Vitest" : "Vite"} config file:`), logger2.plain(` ${rootConfig}`);
|
|
1278
|
+
let formattedContent = await formatFileContent(rootConfig, generate(target).code);
|
|
2117
1279
|
await writeFile(
|
|
2118
1280
|
rootConfig,
|
|
2119
|
-
|
|
1281
|
+
!configFileHasTypeReference && !vitestConfigFile ? `/// <reference types="vitest/config" />
|
|
1282
|
+
` + formattedContent : formattedContent
|
|
2120
1283
|
);
|
|
2121
|
-
} else
|
|
1284
|
+
} else
|
|
2122
1285
|
logErrors(
|
|
2123
1286
|
"\u{1F6A8} Oh no!",
|
|
2124
1287
|
dedent`
|
|
@@ -2128,24 +1291,18 @@ async function postInstall(options) {
|
|
|
2128
1291
|
https://storybook.js.org/docs/writing-tests/integrations/vitest-addon#manual-setup
|
|
2129
1292
|
`
|
|
2130
1293
|
);
|
|
2131
|
-
}
|
|
2132
1294
|
} else {
|
|
2133
|
-
|
|
2134
|
-
const configTemplate = await loadTemplate(getTemplateName(), {
|
|
1295
|
+
let newConfigFile = resolve(`vitest.config.${fileExtension}`), configTemplate = await loadTemplate(getTemplateName(), {
|
|
2135
1296
|
CONFIG_DIR: options.configDir,
|
|
2136
1297
|
SETUP_FILE: relative(dirname(newConfigFile), vitestSetupFile)
|
|
2137
1298
|
});
|
|
2138
|
-
logger2.line(1);
|
|
2139
|
-
|
|
2140
|
-
logger2.plain(` ${newConfigFile}`);
|
|
2141
|
-
const formattedContent = await formatFileContent(newConfigFile, configTemplate);
|
|
1299
|
+
logger2.line(1), logger2.plain(`${step} Creating a Vitest config file:`), logger2.plain(` ${newConfigFile}`);
|
|
1300
|
+
let formattedContent = await formatFileContent(newConfigFile, configTemplate);
|
|
2142
1301
|
await writeFile(newConfigFile, formattedContent);
|
|
2143
1302
|
}
|
|
2144
|
-
|
|
2145
|
-
if (a11yAddon) {
|
|
1303
|
+
if (info2.addons.find((addon) => addon.includes(addonA11yName)))
|
|
2146
1304
|
try {
|
|
2147
|
-
logger2.plain(`${step} Setting up ${addonA11yName} for @storybook/addon-vitest:`)
|
|
2148
|
-
await execa(
|
|
1305
|
+
logger2.plain(`${step} Setting up ${addonA11yName} for @storybook/addon-vitest:`), await execa(
|
|
2149
1306
|
"storybook",
|
|
2150
1307
|
[
|
|
2151
1308
|
"automigrate",
|
|
@@ -2175,83 +1332,59 @@ async function postInstall(options) {
|
|
|
2175
1332
|
`
|
|
2176
1333
|
);
|
|
2177
1334
|
}
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
1335
|
+
hasErrors ? printWarning(
|
|
1336
|
+
"\u26A0\uFE0F Done, but with errors!",
|
|
1337
|
+
dedent`
|
|
1338
|
+
@storybook/addon-vitest was installed successfully, but there were some errors during the setup process.
|
|
1339
|
+
|
|
1340
|
+
Please refer to the documentation to complete the setup manually and check the errors above:
|
|
1341
|
+
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}#manual-setup
|
|
1342
|
+
`
|
|
1343
|
+
) : printSuccess(
|
|
1344
|
+
"\u{1F389} All done!",
|
|
1345
|
+
dedent`
|
|
2184
1346
|
@storybook/addon-vitest is now configured and you're ready to run your tests!
|
|
2185
1347
|
|
|
2186
1348
|
Here are a couple of tips to get you started:
|
|
2187
|
-
• You can run tests with "${
|
|
1349
|
+
• You can run tests with "${rootConfig ? "npx vitest --project=storybook" : "npx vitest"}"
|
|
2188
1350
|
• When using the Vitest extension in your editor, all of your stories will be shown as tests!
|
|
2189
1351
|
|
|
2190
1352
|
Check the documentation for more information about its features and options at:
|
|
2191
1353
|
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}
|
|
2192
1354
|
`
|
|
2193
|
-
|
|
2194
|
-
} else {
|
|
2195
|
-
printWarning(
|
|
2196
|
-
"\u26A0\uFE0F Done, but with errors!",
|
|
2197
|
-
dedent`
|
|
2198
|
-
@storybook/addon-vitest was installed successfully, but there were some errors during the setup process.
|
|
2199
|
-
|
|
2200
|
-
Please refer to the documentation to complete the setup manually and check the errors above:
|
|
2201
|
-
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}#manual-setup
|
|
2202
|
-
`
|
|
2203
|
-
);
|
|
2204
|
-
}
|
|
2205
|
-
logger2.line(1);
|
|
1355
|
+
), logger2.line(1);
|
|
2206
1356
|
}
|
|
2207
|
-
__name(postInstall, "postInstall");
|
|
2208
1357
|
async function getPackageNameFromPath(input) {
|
|
2209
|
-
|
|
2210
|
-
if (!isAbsolute(path))
|
|
1358
|
+
let path = input.startsWith("file://") ? fileURLToPath(input) : input;
|
|
1359
|
+
if (!isAbsolute(path))
|
|
2211
1360
|
return path;
|
|
2212
|
-
}
|
|
2213
|
-
|
|
2214
|
-
if (!packageJsonPath) {
|
|
1361
|
+
let packageJsonPath = up2({ cwd: path });
|
|
1362
|
+
if (!packageJsonPath)
|
|
2215
1363
|
throw new Error(`Could not find package.json in path: ${path}`);
|
|
2216
|
-
}
|
|
2217
|
-
const { default: packageJson } = await import(pathToFileURL(packageJsonPath).href, {
|
|
1364
|
+
let { default: packageJson } = await import(pathToFileURL(packageJsonPath).href, {
|
|
2218
1365
|
with: { type: "json" }
|
|
2219
1366
|
});
|
|
2220
1367
|
return packageJson.name;
|
|
2221
1368
|
}
|
|
2222
|
-
__name(getPackageNameFromPath, "getPackageNameFromPath");
|
|
2223
1369
|
async function getStorybookInfo({ configDir, packageManager: pkgMgr }) {
|
|
2224
|
-
|
|
2225
|
-
const { packageJson } = packageManager.primaryPackageJson;
|
|
2226
|
-
const config = await loadMainConfig({ configDir });
|
|
2227
|
-
const { presets } = await experimental_loadStorybook({
|
|
1370
|
+
let packageManager = JsPackageManagerFactory.getPackageManager({ force: pkgMgr, configDir }), { packageJson } = packageManager.primaryPackageJson, config = await loadMainConfig({ configDir }), { presets } = await experimental_loadStorybook({
|
|
2228
1371
|
configDir,
|
|
2229
1372
|
packageJson
|
|
2230
|
-
});
|
|
2231
|
-
|
|
2232
|
-
const core = await presets.apply("core", {});
|
|
2233
|
-
const { builder, renderer } = core;
|
|
2234
|
-
if (!builder) {
|
|
1373
|
+
}), framework = await presets.apply("framework", {}), core = await presets.apply("core", {}), { builder, renderer } = core;
|
|
1374
|
+
if (!builder)
|
|
2235
1375
|
throw new Error("Could not detect your Storybook builder.");
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
);
|
|
2243
|
-
let rendererPackageName;
|
|
2244
|
-
if (renderer) {
|
|
2245
|
-
rendererPackageName = await getPackageNameFromPath(renderer);
|
|
2246
|
-
}
|
|
2247
|
-
return {
|
|
1376
|
+
let frameworkPackageName = await getPackageNameFromPath(
|
|
1377
|
+
typeof framework == "string" ? framework : framework.name
|
|
1378
|
+
), builderPackageName = await getPackageNameFromPath(
|
|
1379
|
+
typeof builder == "string" ? builder : builder.name
|
|
1380
|
+
), rendererPackageName;
|
|
1381
|
+
return renderer && (rendererPackageName = await getPackageNameFromPath(renderer)), {
|
|
2248
1382
|
frameworkPackageName,
|
|
2249
1383
|
builderPackageName,
|
|
2250
1384
|
rendererPackageName,
|
|
2251
1385
|
addons: getAddonNames(config)
|
|
2252
1386
|
};
|
|
2253
1387
|
}
|
|
2254
|
-
__name(getStorybookInfo, "getStorybookInfo");
|
|
2255
1388
|
export {
|
|
2256
1389
|
postInstall as default
|
|
2257
1390
|
};
|