@voidzero-dev/vite-plus-core 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/LICENSE +7 -1
  2. package/dist/rolldown/cli.mjs +30 -27
  3. package/dist/rolldown/config.d.mts +3 -3
  4. package/dist/rolldown/config.mjs +2 -2
  5. package/dist/rolldown/experimental-index.d.mts +27 -27
  6. package/dist/rolldown/experimental-index.mjs +8 -8
  7. package/dist/rolldown/experimental-runtime-types.d.ts +15 -2
  8. package/dist/rolldown/experimental-runtime.d.ts +15 -2
  9. package/dist/rolldown/experimental-runtime.mjs +19 -2
  10. package/dist/rolldown/filter-index.d.mts +1 -1
  11. package/dist/rolldown/index.d.mts +1 -1
  12. package/dist/rolldown/index.mjs +4 -4
  13. package/dist/rolldown/parallel-plugin-worker.mjs +2 -2
  14. package/dist/rolldown/parallel-plugin.d.mts +3 -3
  15. package/dist/rolldown/parse-ast-index.d.mts +5 -6
  16. package/dist/rolldown/parse-ast-index.mjs +1 -1
  17. package/dist/rolldown/plugins-index.d.mts +4 -4
  18. package/dist/rolldown/plugins-index.mjs +2 -2
  19. package/dist/rolldown/shared/{binding-B4m_2rFW.mjs → binding-DlR5d34p.mjs} +27 -27
  20. package/dist/rolldown/shared/{bindingify-input-options-YtcpaV3r.mjs → bindingify-input-options-DhjlrWZE.mjs} +13 -13
  21. package/dist/rolldown/shared/{constructors-DDRbtWM1.mjs → constructors-B2hkJoIA.mjs} +1 -1
  22. package/dist/rolldown/shared/{constructors-CGQ9ItSV.d.mts → constructors-Dw9H1IvX.d.mts} +1 -1
  23. package/dist/rolldown/shared/{create-bundler-option-CFtx335R.mjs → create-bundler-option-1AEe_J0o.mjs} +22 -5
  24. package/dist/rolldown/shared/{define-config-kIZKjX8Q.d.mts → define-config-CGhm2DU-.d.mts} +24 -5
  25. package/dist/rolldown/shared/{error-Bj1xBdEY.mjs → error-Dsqzw0Oa.mjs} +1 -1
  26. package/dist/rolldown/shared/{load-config-CiFPv7UH.mjs → load-config-bvw8z7Ft.mjs} +1 -1
  27. package/dist/rolldown/shared/{normalize-string-or-regex-xyy0kCQR.mjs → normalize-string-or-regex-B7Gsiuz7.mjs} +1 -1
  28. package/dist/rolldown/shared/{parse-Zii6QoPp.mjs → parse-BCSSrLHf.mjs} +2 -2
  29. package/dist/rolldown/shared/{resolve-tsconfig-DRWFAQ3v.mjs → resolve-tsconfig-DyR2RUTm.mjs} +2 -2
  30. package/dist/rolldown/shared/{rolldown-BCQsxZbq.mjs → rolldown-C8QomUuX.mjs} +4 -4
  31. package/dist/rolldown/shared/{watch-CXhrnblH.mjs → watch-CPI70Lkn.mjs} +4 -4
  32. package/dist/rolldown/utils-index.d.mts +3 -3
  33. package/dist/rolldown/utils-index.mjs +5 -5
  34. package/dist/tsdown/{build-JVmLFaZt-k6Y-YuG9.js → build-KEepWO_k-BOsPZ2cH.js} +26 -25
  35. package/dist/tsdown/{debug-CpC4hV25-D_60QWpz.js → debug-DKTolR2K-BMJOFfj2.js} +4 -5
  36. package/dist/tsdown/{detect-Bg-d8iUV--_V5C4Db.js → detect-DHDepxVX-CpWW52Jd.js} +38 -34
  37. package/dist/tsdown/dist-BebyOHRu.js +6224 -0
  38. package/dist/tsdown/index-types.d.ts +216 -216
  39. package/dist/tsdown/index.js +4 -4
  40. package/dist/tsdown/{main-CyNcZUzu.js → main-Du9xCnhX.js} +105 -19
  41. package/dist/tsdown/npm_entry_picomatch.cjs +36 -25
  42. package/dist/tsdown/{resolver-DE0_sy8o-Pz8aksn9.js → resolver-DE0_sy8o-DNoi-dFQ.js} +3 -2
  43. package/dist/tsdown/run.js +28 -26
  44. package/dist/tsdown/{src-pN7Bl6zo.js → src-CBWRkeF5.js} +4 -4
  45. package/dist/tsdown/{target-DgdLrXba-BygiKCU8.js → target-HZbF5Cux-Cmv1LI5D.js} +175 -9
  46. package/dist/tsdown/{tsc-2xhsE0Bf.js → tsc-YwU2b8yT.js} +4 -4
  47. package/dist/tsdown/tsdown-css.js +4 -4
  48. package/dist/tsdown/tsdown-exe.js +5 -43
  49. package/dist/vite/client/bundledDevClient.mjs +38 -20
  50. package/dist/vite/client/client.mjs +10 -9
  51. package/dist/vite/node/chunks/build.js +19 -19
  52. package/dist/vite/node/chunks/node.js +4409 -4358
  53. package/dist/vite/node/chunks/postcss-import.js +10 -10
  54. package/dist/vite/node/cli.js +24 -21
  55. package/dist/vite/node/index.d.ts +2 -1
  56. package/dist/vite/node/index.js +1 -2
  57. package/dist/vite/node/internal.js +1 -2
  58. package/dist/vite/node/module-runner.d.ts +1 -0
  59. package/dist/vite/node/module-runner.js +16 -25
  60. package/package.json +26 -27
  61. package/dist/tsdown/dist-DquISSoY.js +0 -2952
  62. package/dist/tsdown/require-BbBF8Ii0-S6Y65RhW.js +0 -320
  63. package/dist/tsdown/style-DiMP8pYv-DIC5PXeH.js +0 -88
  64. package/dist/tsdown/version-CQ98ZBpL-CKvh-HCu.js +0 -169
@@ -1,320 +0,0 @@
1
- import { createRequire } from "node:module";
2
- import { formatWithOptions, inspect } from "node:util";
3
- import { isatty } from "node:tty";
4
- //#region ../../node_modules/.pnpm/obug@3.0.0/node_modules/obug/dist/core.js
5
- /**
6
- * Coerce `value`.
7
- */
8
- function coerce(value) {
9
- if (value instanceof Error) return value.stack || value.message;
10
- return value;
11
- }
12
- /**
13
- * Selects a color for a debug namespace
14
- * @return An ANSI color code for the given namespace
15
- */
16
- function selectColor(colors, namespace) {
17
- let hash = 0;
18
- for (let i = 0; i < namespace.length; i++) {
19
- hash = (hash << 5) - hash + namespace.charCodeAt(i);
20
- hash |= 0;
21
- }
22
- return colors[Math.abs(hash) % colors.length];
23
- }
24
- /**
25
- * Checks if the given string matches a namespace template, honoring
26
- * asterisks as wildcards.
27
- */
28
- function matchesTemplate(search, template) {
29
- let searchIndex = 0;
30
- let templateIndex = 0;
31
- let starIndex = -1;
32
- let matchIndex = 0;
33
- while (searchIndex < search.length) if (templateIndex < template.length && (template[templateIndex] === search[searchIndex] || template[templateIndex] === "*")) {
34
- if (template[templateIndex] === "*") {
35
- starIndex = templateIndex;
36
- matchIndex = searchIndex;
37
- templateIndex++;
38
- } else {
39
- searchIndex++;
40
- templateIndex++;
41
- }
42
- } else if (starIndex !== -1) {
43
- templateIndex = starIndex + 1;
44
- matchIndex++;
45
- searchIndex = matchIndex;
46
- } else return false;
47
- while (templateIndex < template.length && template[templateIndex] === "*") templateIndex++;
48
- return templateIndex === template.length;
49
- }
50
- function humanize(value) {
51
- if (value >= 1e3) return `${(value / 1e3).toFixed(1)}s`;
52
- return `${value}ms`;
53
- }
54
- let globalNamespaces = "";
55
- function createDebug$1(namespace, options) {
56
- let prevTime;
57
- let enableOverride;
58
- let namespacesCache;
59
- let enabledCache;
60
- const debug = ((...args) => {
61
- if (!debug.enabled) return;
62
- const curr = Date.now();
63
- const diff = curr - (prevTime || curr);
64
- prevTime = curr;
65
- args[0] = coerce(args[0]);
66
- if (typeof args[0] !== "string") args.unshift("%O");
67
- let index = 0;
68
- args[0] = args[0].replace(/%([a-z%])/gi, (match, format) => {
69
- if (match === "%%") return "%";
70
- index++;
71
- const formatter = options.formatters[format];
72
- if (typeof formatter === "function") {
73
- const value = args[index];
74
- match = formatter.call(debug, value);
75
- args.splice(index, 1);
76
- index--;
77
- }
78
- return match;
79
- });
80
- options.formatArgs.call(debug, diff, args);
81
- debug.log(...args);
82
- });
83
- debug.extend = function(namespace, delimiter = ":") {
84
- return createDebug$1(this.namespace + delimiter + namespace, {
85
- useColors: this.useColors,
86
- color: this.color,
87
- formatArgs: this.formatArgs,
88
- formatters: this.formatters,
89
- inspectOpts: this.inspectOpts,
90
- log: this.log,
91
- humanize: this.humanize
92
- });
93
- };
94
- Object.assign(debug, options);
95
- debug.namespace = namespace;
96
- Object.defineProperty(debug, "enabled", {
97
- enumerable: true,
98
- configurable: false,
99
- get: () => {
100
- if (enableOverride != null) return enableOverride;
101
- if (namespacesCache !== globalNamespaces) {
102
- namespacesCache = globalNamespaces;
103
- enabledCache = enabled(namespace);
104
- }
105
- return enabledCache;
106
- },
107
- set: (v) => {
108
- enableOverride = v;
109
- }
110
- });
111
- return debug;
112
- }
113
- let names = [];
114
- let skips = [];
115
- function enable(namespaces) {
116
- globalNamespaces = namespaces;
117
- names = [];
118
- skips = [];
119
- const split = globalNamespaces.trim().replace(/\s+/g, ",").split(",").filter(Boolean);
120
- for (const ns of split) if (ns[0] === "-") skips.push(ns.slice(1));
121
- else names.push(ns);
122
- }
123
- /**
124
- * Returns true if the given mode name is enabled, false otherwise.
125
- */
126
- function enabled(name) {
127
- for (const skip of skips) if (matchesTemplate(name, skip)) return false;
128
- for (const ns of names) if (matchesTemplate(name, ns)) return true;
129
- return false;
130
- }
131
- //#endregion
132
- //#region ../../node_modules/.pnpm/obug@3.0.0/node_modules/obug/dist/ansi.js
133
- let env = {};
134
- try {
135
- process.env.DEBUG;
136
- env = process.env;
137
- } catch (_unused) {}
138
- const colors = process.stderr.getColorDepth && process.stderr.getColorDepth(env) > 2 ? [
139
- 20,
140
- 21,
141
- 26,
142
- 27,
143
- 32,
144
- 33,
145
- 38,
146
- 39,
147
- 40,
148
- 41,
149
- 42,
150
- 43,
151
- 44,
152
- 45,
153
- 56,
154
- 57,
155
- 62,
156
- 63,
157
- 68,
158
- 69,
159
- 74,
160
- 75,
161
- 76,
162
- 77,
163
- 78,
164
- 79,
165
- 80,
166
- 81,
167
- 92,
168
- 93,
169
- 98,
170
- 99,
171
- 112,
172
- 113,
173
- 128,
174
- 129,
175
- 134,
176
- 135,
177
- 148,
178
- 149,
179
- 160,
180
- 161,
181
- 162,
182
- 163,
183
- 164,
184
- 165,
185
- 166,
186
- 167,
187
- 168,
188
- 169,
189
- 170,
190
- 171,
191
- 172,
192
- 173,
193
- 178,
194
- 179,
195
- 184,
196
- 185,
197
- 196,
198
- 197,
199
- 198,
200
- 199,
201
- 200,
202
- 201,
203
- 202,
204
- 203,
205
- 204,
206
- 205,
207
- 206,
208
- 207,
209
- 208,
210
- 209,
211
- 214,
212
- 215,
213
- 220,
214
- 221
215
- ] : [
216
- 6,
217
- 2,
218
- 3,
219
- 4,
220
- 5,
221
- 1
222
- ];
223
- const inspectOpts = Object.keys(env).filter((key) => /^debug_/i.test(key)).reduce((obj, key) => {
224
- const prop = key.slice(6).toLowerCase().replace(/_([a-z])/g, (_, k) => k.toUpperCase());
225
- let value = env[key];
226
- const lowerCase = typeof value === "string" && value.toLowerCase();
227
- if (value === "null") value = null;
228
- else if (lowerCase === "yes" || lowerCase === "on" || lowerCase === "true" || lowerCase === "enabled") value = true;
229
- else if (lowerCase === "no" || lowerCase === "off" || lowerCase === "false" || lowerCase === "disabled") value = false;
230
- else value = Number(value);
231
- obj[prop] = value;
232
- return obj;
233
- }, Object.create(null));
234
- /**
235
- * Is stdout a TTY? Colored output is enabled when `true`.
236
- */
237
- function useColors() {
238
- return "colors" in inspectOpts ? Boolean(inspectOpts.colors) : isatty(process.stderr.fd);
239
- }
240
- function getDate() {
241
- if (inspectOpts.hideDate) return "";
242
- return `${(/* @__PURE__ */ new Date()).toISOString()} `;
243
- }
244
- /**
245
- * Adds ANSI color escape codes if enabled.
246
- */
247
- function formatArgs(diff, args) {
248
- const { namespace: name, useColors } = this;
249
- if (useColors) {
250
- const c = this.color;
251
- const colorCode = `\u{1B}[3${c < 8 ? c : `8;5;${c}`}`;
252
- const prefix = ` ${colorCode};1m${name} \u{1B}[0m`;
253
- args[0] = prefix + args[0].split("\n").join(`\n${prefix}`);
254
- args.push(`${colorCode}m+${this.humanize(diff)}\u{1B}[0m`);
255
- } else args[0] = `${getDate()}${name} ${args[0]}`;
256
- }
257
- function log(...args) {
258
- process.stderr.write(`${formatWithOptions(this.inspectOpts, ...args)}\n`);
259
- }
260
- const defaultOptions = {
261
- useColors: useColors(),
262
- formatArgs,
263
- formatters: {
264
- /**
265
- * Map %o to `util.inspect()`, all on a single line.
266
- */
267
- o(v) {
268
- this.inspectOpts.colors = this.useColors;
269
- return inspect(v, this.inspectOpts).split("\n").map((str) => str.trim()).join(" ");
270
- },
271
- /**
272
- * Map %O to `util.inspect()`, allowing multiple lines if needed.
273
- */
274
- O(v) {
275
- this.inspectOpts.colors = this.useColors;
276
- return inspect(v, this.inspectOpts);
277
- }
278
- },
279
- inspectOpts,
280
- log,
281
- humanize
282
- };
283
- function createDebug(namespace, options) {
284
- var _ref;
285
- const color = (_ref = options && options.color) !== null && _ref !== void 0 ? _ref : selectColor(colors, namespace);
286
- return createDebug$1(namespace, Object.assign(defaultOptions, { color }, options));
287
- }
288
- enable(env.DEBUG || "");
289
- //#endregion
290
- //#region ../../node_modules/.pnpm/rolldown-plugin-dts@0.28.6_@typescript+native-preview@7.0.0-dev.20260605.1_@volar+types_969a2c93bc9b761d4191bb0e75b7732a/node_modules/rolldown-plugin-dts/dist/require-BbBF8Ii0.mjs
291
- const require = createRequire(import.meta.url);
292
- const debug = createDebug("rolldown-plugin-dts:utils");
293
- function tryRequire(moduleName) {
294
- try {
295
- return require(moduleName);
296
- } catch {}
297
- }
298
- function tryResolve(id) {
299
- try {
300
- return require.resolve(id);
301
- } catch {}
302
- }
303
- let _ts;
304
- function isTS70Installed() {
305
- return tryRequire("typescript/package.json")?.version.slice(0, 3) === "7.0";
306
- }
307
- function requireTSApi(mode = "tsc", message = ".") {
308
- if (_ts) return _ts;
309
- if (isTS70Installed()) throw new Error(`TypeScript 7.0 is not supported when using ${mode}. Please use TypeScript 6.0 or below${message}`);
310
- let ts;
311
- try {
312
- ts = require("typescript");
313
- } catch (cause) {
314
- throw new Error(`TypeScript is not installed. Please install the \`typescript\` package (v7.0 is not yet supported)${message}`, { cause });
315
- }
316
- if (debug.enabled) debug(`Loaded TypeScript version ${ts.version} from ${require.resolve("typescript")}`);
317
- return _ts = ts;
318
- }
319
- //#endregion
320
- export { createDebug as a, tryResolve as i, require as n, requireTSApi as r, isTS70Installed as t };
@@ -1,88 +0,0 @@
1
- import { createRequire } from "node:module";
2
- import process from "node:process";
3
- import { styleText } from "node:util";
4
- const picomatch = createRequire(import.meta.url)("./npm_entry_picomatch.cjs");
5
- function toArray(val, defaultValue) {
6
- if (Array.isArray(val)) return val;
7
- else if (val == null) {
8
- if (defaultValue) return [defaultValue];
9
- return [];
10
- } else return [val];
11
- }
12
- function resolveComma(arr) {
13
- return arr.flatMap((format) => format.split(","));
14
- }
15
- function resolveRegex(str) {
16
- if (typeof str === "string" && str.length > 2 && str[0] === "/" && str.at(-1) === "/") return new RegExp(str.slice(1, -1));
17
- return str;
18
- }
19
- function slash(string) {
20
- return string.replaceAll("\\", "/");
21
- }
22
- const noop = (v) => v;
23
- function matchPattern(id, patterns) {
24
- return patterns.some((pattern) => {
25
- if (pattern instanceof RegExp) {
26
- pattern.lastIndex = 0;
27
- return pattern.test(id);
28
- }
29
- return id === pattern || picomatch(pattern)(id);
30
- });
31
- }
32
- function pkgExists(moduleName) {
33
- try {
34
- import.meta.resolve(moduleName);
35
- return true;
36
- } catch {}
37
- return false;
38
- }
39
- async function importWithError(moduleName) {
40
- try {
41
- return await import(moduleName);
42
- } catch (error) {
43
- throw new Error(`Failed to import module "${moduleName}". Please ensure it is installed.`, { cause: error });
44
- }
45
- }
46
- function createConcurrencyExecutor(concurrency) {
47
- if (concurrency == null) return (task) => task();
48
- if (!Number.isInteger(concurrency) || concurrency < 1) throw new TypeError("`--concurrency` must be a positive integer");
49
- const queue = [];
50
- let active = 0;
51
- return async (task) => {
52
- if (active >= concurrency) await new Promise((resolve) => queue.push(resolve));
53
- else active++;
54
- try {
55
- return await task();
56
- } finally {
57
- const next = queue.shift();
58
- if (next) next();
59
- else active--;
60
- }
61
- };
62
- }
63
- function debounce(fn, delay) {
64
- let timer;
65
- const debounced = (...args) => {
66
- clearTimeout(timer);
67
- timer = setTimeout(() => fn(...args), delay);
68
- };
69
- debounced.cancel = () => clearTimeout(timer);
70
- return debounced;
71
- }
72
- let supportRGB = !!process.stdout.hasColors?.(2 ** 24);
73
- if (supportRGB) try {
74
- styleText("#000", "");
75
- } catch {
76
- supportRGB = false;
77
- }
78
- const factory = (...formats) => new Proxy(styleText.bind(void 0, formats), { get: (_, format) => {
79
- if (format[0] === "#") {
80
- const [color, fallback] = format.split(",", 2);
81
- if (!supportRGB) return fallback ? factory(...formats, fallback) : factory(...formats);
82
- return factory(...formats, color);
83
- }
84
- return factory(...formats, format);
85
- } });
86
- const styleText$1 = factory();
87
- //#endregion
88
- export { noop as a, resolveRegex as c, toArray as d, matchPattern as i, slash as l, debounce as n, pkgExists as o, importWithError as r, resolveComma as s, createConcurrencyExecutor as t, styleText$1 as u };
@@ -1,169 +0,0 @@
1
- import { RUNTIME_MODULE_ID } from "@voidzero-dev/vite-plus-core/rolldown";
2
- import { exactRegex } from "@voidzero-dev/vite-plus-core/rolldown/filter";
3
- //#region ../../node_modules/.pnpm/rolldown-plugin-dts@0.28.6_@typescript+native-preview@7.0.0-dev.20260605.1_@volar+types_969a2c93bc9b761d4191bb0e75b7732a/node_modules/rolldown-plugin-dts/dist/filename-BFg1q_t3.mjs
4
- const RE_JS = /\.([cm]?)jsx?$/;
5
- const RE_TS = /\.([cm]?)tsx?$/;
6
- const RE_DTS = /\.d\.([cm]?)ts$/;
7
- const RE_DTS_MAP = /\.d\.([cm]?)ts\.map$/;
8
- const RE_NODE_MODULES = /[\\/]node_modules[\\/]/;
9
- const RE_CSS = /\.(?:css|scss|sass|less|styl|stylus)$/;
10
- const RE_JSON = /\.json$/;
11
- const RE_ROLLDOWN_RUNTIME = exactRegex(RUNTIME_MODULE_ID);
12
- function filename_js_to_dts(id) {
13
- return id.replace(RE_JS, ".d.$1ts");
14
- }
15
- function filename_to_dts(id, languageContext) {
16
- id = languageContext?.toTsFilename?.(id) ?? id;
17
- return id.replace(RE_TS, ".d.$1ts").replace(RE_JS, ".d.$1ts").replace(RE_JSON, ".json.d.ts");
18
- }
19
- function filename_dts_to(id, ext) {
20
- return id.replace(RE_DTS, `.$1${ext}`);
21
- }
22
- function resolveTemplateFn(fn, chunk) {
23
- return typeof fn === "function" ? fn(chunk) : fn;
24
- }
25
- function replaceTemplateName(template, name) {
26
- return template.replaceAll("[name]", name);
27
- }
28
- //#endregion
29
- //#region ../../node_modules/.pnpm/verkit@0.4.0/node_modules/verkit/dist/comparison-DenM3wCn.js
30
- const LETTER_DASH_NUMBER = "[a-zA-Z0-9-]";
31
- const NUMERIC_IDENTIFIER = String.raw`0|[1-9]\d*`;
32
- const NUMERIC_IDENTIFIER_LOOSE = String.raw`\d+`;
33
- const NON_NUMERIC_IDENTIFIER = String.raw`\d*[a-zA-Z-]${LETTER_DASH_NUMBER}*`;
34
- const MAIN_VERSION = String.raw`(${NUMERIC_IDENTIFIER})\.(${NUMERIC_IDENTIFIER})\.(${NUMERIC_IDENTIFIER})`;
35
- const MAIN_VERSION_LOOSE = String.raw`(${NUMERIC_IDENTIFIER_LOOSE})\.(${NUMERIC_IDENTIFIER_LOOSE})\.(${NUMERIC_IDENTIFIER_LOOSE})`;
36
- const PRERELEASE_IDENTIFIER = `(?:${NON_NUMERIC_IDENTIFIER}|${NUMERIC_IDENTIFIER})`;
37
- const PRERELEASE_IDENTIFIER_LOOSE = `(?:${NON_NUMERIC_IDENTIFIER}|${NUMERIC_IDENTIFIER_LOOSE})`;
38
- const PRERELEASE = String.raw`(?:-(${PRERELEASE_IDENTIFIER}(?:\.${PRERELEASE_IDENTIFIER})*))`;
39
- const PRERELEASE_LOOSE = String.raw`(?:-?(${PRERELEASE_IDENTIFIER_LOOSE}(?:\.${PRERELEASE_IDENTIFIER_LOOSE})*))`;
40
- const BUILD_IDENTIFIER = `${LETTER_DASH_NUMBER}+`;
41
- const BUILD = String.raw`(?:\+(${BUILD_IDENTIFIER}(?:\.${BUILD_IDENTIFIER})*))`;
42
- const FULL_PLAIN = `v?${MAIN_VERSION}${PRERELEASE}?${BUILD}?`;
43
- const LOOSE_PLAIN = String.raw`[v=\s]*${MAIN_VERSION_LOOSE}${PRERELEASE_LOOSE}?${BUILD}?`;
44
- const GREATER_LESS_THAN = "((?:<|>)?=?)";
45
- const XRANGE_IDENTIFIER = String.raw`${NUMERIC_IDENTIFIER}|x|X|\*`;
46
- const XRANGE_IDENTIFIER_LOOSE = String.raw`${NUMERIC_IDENTIFIER_LOOSE}|x|X|\*`;
47
- const XRANGE_PLAIN = String.raw`[v=\s]*(${XRANGE_IDENTIFIER})(?:\.(${XRANGE_IDENTIFIER})(?:\.(${XRANGE_IDENTIFIER})(?:${PRERELEASE})?${BUILD}?)?)?`;
48
- const XRANGE_PLAIN_LOOSE = String.raw`[v=\s]*(${XRANGE_IDENTIFIER_LOOSE})(?:\.(${XRANGE_IDENTIFIER_LOOSE})(?:\.(${XRANGE_IDENTIFIER_LOOSE})(?:${PRERELEASE_LOOSE})?${BUILD}?)?)?`;
49
- const LONE_TILDE = "(?:~>?)";
50
- const LONE_CARET = String.raw`(?:\^)`;
51
- const COERCE_PLAIN = String.raw`(^|[^\d])(\d{1,${16}})(?:\.(\d{1,${16}}))?(?:\.(\d{1,${16}}))?`;
52
- const COERCE = String.raw`${COERCE_PLAIN}(?:$|[^\d])`;
53
- const COERCE_FULL = String.raw`${COERCE_PLAIN}(?:${PRERELEASE})?(?:${BUILD})?(?:$|[^\d])`;
54
- function makeSafeRegexSource(source) {
55
- const replacements = [
56
- [String.raw`\s`, 1],
57
- [String.raw`\d`, 256],
58
- [LETTER_DASH_NUMBER, 250]
59
- ];
60
- for (const [token, maximum] of replacements) source = source.split(`${token}*`).join(`${token}{0,${maximum}}`).split(`${token}+`).join(`${token}{1,${maximum}}`);
61
- return source;
62
- }
63
- function safeRegex(source, flags) {
64
- return new RegExp(makeSafeRegexSource(source), flags);
65
- }
66
- const FULL = safeRegex(`^${FULL_PLAIN}$`);
67
- const LOOSE = safeRegex(`^${LOOSE_PLAIN}$`);
68
- const NUMERIC$1 = /^\d+$/;
69
- function formatComparableVersion(version) {
70
- const base = `${version.major}.${version.minor}.${version.patch}`;
71
- return version.prerelease?.length ? `${base}-${version.prerelease.join(".")}` : base;
72
- }
73
- function parse(version, options = {}) {
74
- if (typeof version !== "string") return version;
75
- if (version.length > 256) throw new TypeError(`Version exceeds the maximum length of 256 characters`);
76
- const match = version.trim().match(options.loose ? LOOSE : FULL);
77
- if (!match) throw new TypeError(`Invalid version syntax: ${version}`);
78
- const major = Number(match[1]);
79
- const minor = Number(match[2]);
80
- const patch = Number(match[3]);
81
- if (major > Number.MAX_SAFE_INTEGER || major < 0) throw new TypeError(`Invalid major version: ${match[1]}`);
82
- if (minor > Number.MAX_SAFE_INTEGER || minor < 0) throw new TypeError(`Invalid minor version: ${match[2]}`);
83
- if (patch > Number.MAX_SAFE_INTEGER || patch < 0) throw new TypeError(`Invalid patch version: ${match[3]}`);
84
- const prerelease = match[4] ? match[4].split(".").map((identifier) => {
85
- if (NUMERIC$1.test(identifier)) {
86
- const numeric = Number(identifier);
87
- if (numeric >= 0 && numeric < Number.MAX_SAFE_INTEGER) return numeric;
88
- }
89
- return identifier;
90
- }) : void 0;
91
- return {
92
- build: match[5]?.split("."),
93
- major,
94
- minor,
95
- patch,
96
- prerelease
97
- };
98
- }
99
- function tryParse(version, options = {}) {
100
- try {
101
- return parse(version, options);
102
- } catch {
103
- return null;
104
- }
105
- }
106
- const NUMERIC = /^\d+$/;
107
- function compareIdentifiers(left, right) {
108
- if (typeof left === "number" && typeof right === "number") return left === right ? 0 : left < right ? -1 : 1;
109
- const leftNumeric = NUMERIC.test(String(left));
110
- const rightNumeric = NUMERIC.test(String(right));
111
- const normalizedLeft = leftNumeric ? Number(left) : left;
112
- const normalizedRight = rightNumeric ? Number(right) : right;
113
- return normalizedLeft === normalizedRight ? 0 : leftNumeric && !rightNumeric ? -1 : rightNumeric && !leftNumeric ? 1 : normalizedLeft < normalizedRight ? -1 : 1;
114
- }
115
- function compareMainParsed(left, right) {
116
- return left.major === right.major ? left.minor === right.minor ? left.patch === right.patch ? 0 : left.patch < right.patch ? -1 : 1 : left.minor < right.minor ? -1 : 1 : left.major < right.major ? -1 : 1;
117
- }
118
- function comparePrereleaseParsed(left, right) {
119
- const leftPrerelease = left.prerelease;
120
- const rightPrerelease = right.prerelease;
121
- if (leftPrerelease?.length && !rightPrerelease?.length) return -1;
122
- if (!leftPrerelease?.length && rightPrerelease?.length) return 1;
123
- if (!leftPrerelease?.length && !rightPrerelease?.length) return 0;
124
- for (let index = 0;; index++) {
125
- const leftIdentifier = leftPrerelease?.[index];
126
- const rightIdentifier = rightPrerelease?.[index];
127
- if (leftIdentifier === void 0 && rightIdentifier === void 0) return 0;
128
- if (rightIdentifier === void 0) return 1;
129
- if (leftIdentifier === void 0) return -1;
130
- if (leftIdentifier !== rightIdentifier) return compareIdentifiers(leftIdentifier, rightIdentifier);
131
- }
132
- }
133
- function compareParsed(left, right) {
134
- return compareMainParsed(left, right) || comparePrereleaseParsed(left, right);
135
- }
136
- function compare(left, right, options = {}) {
137
- return compareParsed(parse(left, options), parse(right, options));
138
- }
139
- function isGreaterOrEqual(left, right, options = {}) {
140
- return compare(left, right, options) >= 0;
141
- }
142
- //#endregion
143
- //#region ../../node_modules/.pnpm/verkit@0.4.0/node_modules/verkit/dist/version-CQ98ZBpL.js
144
- const COERCE_EXACT = safeRegex(COERCE);
145
- const COERCE_FULL_EXACT = safeRegex(COERCE_FULL);
146
- safeRegex(`^${PRERELEASE}$`);
147
- safeRegex(`^${PRERELEASE_LOOSE}$`);
148
- function normalize(version, options = {}) {
149
- const parsed = tryParse(version, options);
150
- return parsed ? formatComparableVersion(parsed) : null;
151
- }
152
- function coerce(value, options = {}) {
153
- if (typeof value === "object") return value;
154
- const input = typeof value === "number" ? String(value) : value;
155
- let match = null;
156
- if (options.rtl) {
157
- const expression = safeRegex(options.includePrerelease ? COERCE_FULL : COERCE, "g");
158
- let next;
159
- while ((next = expression.exec(input)) && (!match || match.index + match[0].length !== input.length)) {
160
- if (!match || next.index + next[0].length !== match.index + match[0].length) match = next;
161
- expression.lastIndex = next.index + next[1].length + next[2].length;
162
- }
163
- } else match = (options.includePrerelease ? COERCE_FULL_EXACT : COERCE_EXACT).exec(input);
164
- if (!match) return null;
165
- const major = match[2];
166
- return tryParse(`${major}.${match[3] || "0"}.${match[4] || "0"}${options.includePrerelease && match[5] ? `-${match[5]}` : ""}${options.includePrerelease && match[6] ? `+${match[6]}` : ""}`, options);
167
- }
168
- //#endregion
169
- export { RE_ROLLDOWN_RUNTIME as C, filename_to_dts as D, filename_js_to_dts as E, replaceTemplateName as O, RE_NODE_MODULES as S, filename_dts_to as T, RE_CSS as _, GREATER_LESS_THAN as a, RE_JS as b, LOOSE_PLAIN as c, compareParsed as d, formatComparableVersion as f, tryParse as g, safeRegex as h, FULL_PLAIN as i, resolveTemplateFn as k, XRANGE_PLAIN as l, parse as m, normalize as n, LONE_CARET as o, isGreaterOrEqual as p, BUILD as r, LONE_TILDE as s, coerce as t, XRANGE_PLAIN_LOOSE as u, RE_DTS as v, RE_TS as w, RE_JSON as x, RE_DTS_MAP as y };