rolldown 1.2.0 → 1.2.2
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/THIRD-PARTY-LICENSE +33 -0
- package/dist/cli.d.mts +1 -1
- package/dist/cli.mjs +9 -10
- package/dist/config.d.mts +1 -1
- package/dist/config.mjs +2 -2
- package/dist/experimental-default-runtime.mjs +116 -0
- package/dist/experimental-index.d.mts +10 -4
- package/dist/experimental-index.mjs +32 -16
- package/dist/experimental-runtime-base.mjs +95 -0
- package/dist/experimental-runtime.d.ts +177 -0
- package/dist/experimental-runtime.mjs +257 -0
- package/dist/filter-index.d.mts +1 -1
- package/dist/filter-index.mjs +1 -3
- package/dist/index.d.mts +3 -3
- package/dist/index.mjs +4 -4
- package/dist/parallel-plugin-worker.d.mts +1 -1
- package/dist/parallel-plugin-worker.mjs +3 -3
- package/dist/parallel-plugin.d.mts +1 -1
- package/dist/parse-ast-index.d.mts +1 -1
- package/dist/parse-ast-index.mjs +2 -2
- package/dist/plugins-index.d.mts +3 -3
- package/dist/plugins-index.mjs +2 -2
- package/dist/shared/{binding-Dbbi0RbO.d.mts → binding-CVtkJvyl.d.mts} +11 -0
- package/dist/shared/{binding-Dby9rwGk.mjs → binding-DwUQWZOo.mjs} +124 -50
- package/dist/shared/{bindingify-input-options-_ppP73I9.mjs → bindingify-input-options-BHixd47T.mjs} +448 -268
- package/dist/shared/{constructors-CSWbNgBZ.d.mts → constructors-ALilxAii.d.mts} +2 -2
- package/dist/shared/{constructors-CuGa75s-.mjs → constructors-COwFYQna.mjs} +10 -6
- package/dist/shared/{rolldown-build-CdF8HAHX.mjs → create-bundler-option-LuUKlAT7.mjs} +72 -179
- package/dist/shared/{define-config-B-IDOhDz.d.mts → define-config-DSMNXceb.d.mts} +85 -22
- package/dist/shared/{error-DFGNOCle.mjs → error-nLggAzpQ.mjs} +1 -1
- package/dist/shared/{load-config-C6UyiS41.mjs → load-config-cRWJAHTc.mjs} +2 -2
- package/dist/shared/{logs-ZGEh6uhb.mjs → logs-DmYCAKcW.mjs} +8 -1
- package/dist/shared/{misc-CoQm4NHO.mjs → misc-DOSKtd97.mjs} +9 -1
- package/dist/shared/{normalize-string-or-regex-SiXbePVH.mjs → normalize-string-or-regex-Cj-DgIV1.mjs} +2 -2
- package/dist/shared/{parse-BFj5G_7i.mjs → parse-C17W7W5g.mjs} +2 -2
- package/dist/shared/{prompt--dNycKSZ.mjs → prompt-CH6TK0bC.mjs} +2 -6
- package/dist/shared/{resolve-tsconfig-2TXRF_zr.mjs → resolve-tsconfig-CE3HNSOK.mjs} +2 -2
- package/dist/shared/rolldown-D23fYgSS.mjs +178 -0
- package/dist/shared/{transform-Cs2bUDRH.d.mts → transform-WmU_cI8e.d.mts} +1 -1
- package/dist/shared/{watch-WnrlHRS0.mjs → watch-DcgK_L55.mjs} +16 -13
- package/dist/utils-index.d.mts +3 -3
- package/dist/utils-index.mjs +6 -8
- package/package.json +32 -25
- package/dist/shared/rolldown-951h_1lf.mjs +0 -40
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as RolldownLog, i as RolldownError, n as LogLevelOption, o as RolldownLogWithString, r as LogOrStringHandler, t as LogLevel } from "./logging-xuHO4mAy.mjs";
|
|
2
|
-
import { A as BindingWatcherBundler, B as PreRenderedChunk, F as MinifyOptions$1, P as JsxOptions, W as TransformOptions$1, c as BindingHookResolveIdExtraArgs, d as BindingMagicString, f as BindingPluginContextResolveOptions, g as BindingTransformHookExtraArgs, j as ExternalMemoryStatus, m as BindingRenderedChunk, t as BindingBuiltinPluginName, z as ParserOptions } from "./binding-
|
|
2
|
+
import { A as BindingWatcherBundler, B as PreRenderedChunk, F as MinifyOptions$1, P as JsxOptions, W as TransformOptions$1, c as BindingHookResolveIdExtraArgs, d as BindingMagicString, f as BindingPluginContextResolveOptions, g as BindingTransformHookExtraArgs, j as ExternalMemoryStatus, m as BindingRenderedChunk, t as BindingBuiltinPluginName, z as ParserOptions } from "./binding-CVtkJvyl.mjs";
|
|
3
3
|
import { TopLevelFilterExpression } from "@rolldown/pluginutils";
|
|
4
4
|
import { Program } from "@oxc-project/types";
|
|
5
5
|
//#region src/types/misc.d.ts
|
|
@@ -330,9 +330,9 @@ type ManualChunksFunction = (moduleId: string, meta: {
|
|
|
330
330
|
}) => string | NullValue;
|
|
331
331
|
/** @inline */
|
|
332
332
|
type GlobalsFunction = (name: string) => string;
|
|
333
|
-
/** @category
|
|
333
|
+
/** @category Code Splitting */
|
|
334
334
|
type CodeSplittingNameFunction = (moduleId: string, ctx: ChunkingContext) => string | NullValue;
|
|
335
|
-
/** @inline */
|
|
335
|
+
/** @inline @category Code Splitting */
|
|
336
336
|
type CodeSplittingTestFunction = (id: string) => boolean | undefined | void;
|
|
337
337
|
type MinifyOptions = Omit<MinifyOptions$1, "module" | "sourcemap">;
|
|
338
338
|
interface CommentsOptions {
|
|
@@ -349,7 +349,7 @@ interface CommentsOptions {
|
|
|
349
349
|
*/
|
|
350
350
|
jsdoc?: boolean;
|
|
351
351
|
}
|
|
352
|
-
/** @inline */
|
|
352
|
+
/** @inline @category Code Splitting */
|
|
353
353
|
interface ChunkingContext {
|
|
354
354
|
getModuleInfo(moduleId: string): ModuleInfo | null;
|
|
355
355
|
}
|
|
@@ -967,12 +967,12 @@ interface OutputOptions {
|
|
|
967
967
|
*/
|
|
968
968
|
keepNames?: boolean;
|
|
969
969
|
/**
|
|
970
|
-
*
|
|
970
|
+
* Preserve source module execution order across generated chunks.
|
|
971
971
|
*
|
|
972
|
-
*
|
|
972
|
+
* When enabled, Rolldown wraps ESM modules so their bodies run in source order regardless of chunk placement. Interop wrappers for CommonJS and require-of-ESM modules are unchanged, and external modules are not affected. `experimental.onDemandWrapping` replaces wrap-all with a conservative plan derived from predicted chunk execution hazards.
|
|
973
973
|
*
|
|
974
974
|
* > [!WARNING]
|
|
975
|
-
* > Enabling this option
|
|
975
|
+
* > Enabling this option increases bundle size because wrapped modules need runtime init helpers.
|
|
976
976
|
* @default false
|
|
977
977
|
*/
|
|
978
978
|
strictExecutionOrder?: boolean;
|
|
@@ -993,8 +993,11 @@ interface OutputOptions {
|
|
|
993
993
|
* Built-in module tag names computed by rolldown.
|
|
994
994
|
*
|
|
995
995
|
* - `'$initial'` — the module is statically imported by at least one user-defined entry point, or is part of its static dependency chain.
|
|
996
|
+
*
|
|
997
|
+
* @category Code Splitting
|
|
996
998
|
*/
|
|
997
999
|
type BuiltinModuleTag = "$initial";
|
|
1000
|
+
/** @category Code Splitting */
|
|
998
1001
|
type CodeSplittingGroup = {
|
|
999
1002
|
/**
|
|
1000
1003
|
* Name of the group. It will be also used as the name of the chunk and replace the `[name]` placeholder in the {@linkcode OutputOptions.chunkFileNames | output.chunkFileNames} option.
|
|
@@ -1192,10 +1195,14 @@ type CodeSplittingGroup = {
|
|
|
1192
1195
|
* Alias for {@linkcode CodeSplittingGroup}. Use this type for the `codeSplitting.groups` option.
|
|
1193
1196
|
*
|
|
1194
1197
|
* @deprecated Please use {@linkcode CodeSplittingGroup} instead.
|
|
1198
|
+
*
|
|
1199
|
+
* @category Code Splitting
|
|
1195
1200
|
*/
|
|
1196
1201
|
type AdvancedChunksGroup = CodeSplittingGroup;
|
|
1197
1202
|
/**
|
|
1198
1203
|
* Configuration options for advanced code splitting.
|
|
1204
|
+
*
|
|
1205
|
+
* @category Code Splitting
|
|
1199
1206
|
*/
|
|
1200
1207
|
type CodeSplittingOptions = {
|
|
1201
1208
|
/**
|
|
@@ -1231,6 +1238,8 @@ type CodeSplittingOptions = {
|
|
|
1231
1238
|
* Alias for {@linkcode CodeSplittingOptions}. Use this type for the `codeSplitting` option.
|
|
1232
1239
|
*
|
|
1233
1240
|
* @deprecated Please use {@linkcode CodeSplittingOptions} instead.
|
|
1241
|
+
*
|
|
1242
|
+
* @category Code Splitting
|
|
1234
1243
|
*/
|
|
1235
1244
|
type AdvancedChunksOptions = CodeSplittingOptions;
|
|
1236
1245
|
//#endregion
|
|
@@ -1273,8 +1282,6 @@ declare function build(options: BuildOptions[]): Promise<RolldownOutput[]>;
|
|
|
1273
1282
|
*/
|
|
1274
1283
|
declare class RolldownBuild {
|
|
1275
1284
|
#private;
|
|
1276
|
-
/** @internal */
|
|
1277
|
-
static asyncRuntimeShutdown: boolean;
|
|
1278
1285
|
/** @hidden should not be used directly */
|
|
1279
1286
|
constructor(inputOptions: InputOptions);
|
|
1280
1287
|
/**
|
|
@@ -1988,6 +1995,9 @@ interface HookFilter {
|
|
|
1988
1995
|
* If the value is a string, it is treated as a glob pattern.
|
|
1989
1996
|
* The string type is not available for {@linkcode Plugin.resolveId | resolveId} hook.
|
|
1990
1997
|
*
|
|
1998
|
+
* If the value is a regular expression, it is tested after the `id`'s path separators are normalized to forward slashes (`/`).
|
|
1999
|
+
* This keeps the filter portable across operating systems without requiring the regular expression to match both `/` and `\`.
|
|
2000
|
+
*
|
|
1991
2001
|
* @example
|
|
1992
2002
|
* Include all `id`s that contain `node_modules` in the path.
|
|
1993
2003
|
* ```js
|
|
@@ -2555,14 +2565,14 @@ interface OutputBundle {
|
|
|
2555
2565
|
//#region src/types/sourcemap.d.ts
|
|
2556
2566
|
/** @category Plugin APIs */
|
|
2557
2567
|
interface ExistingRawSourceMap {
|
|
2558
|
-
file?: string | null;
|
|
2568
|
+
file?: string | null | undefined;
|
|
2559
2569
|
mappings: string;
|
|
2560
|
-
names?: string[];
|
|
2561
|
-
sources?: (string | null)[];
|
|
2562
|
-
sourcesContent?: (string | null | undefined)[];
|
|
2563
|
-
sourceRoot?: string;
|
|
2564
|
-
version?: number;
|
|
2565
|
-
x_google_ignoreList?: number[];
|
|
2570
|
+
names?: string[] | undefined;
|
|
2571
|
+
sources?: (string | null)[] | undefined;
|
|
2572
|
+
sourcesContent?: (string | null | undefined)[] | undefined;
|
|
2573
|
+
sourceRoot?: string | undefined;
|
|
2574
|
+
version?: number | undefined;
|
|
2575
|
+
x_google_ignoreList?: number[] | undefined;
|
|
2566
2576
|
}
|
|
2567
2577
|
/** @inline @category Plugin APIs */
|
|
2568
2578
|
type SourceMapInput = ExistingRawSourceMap | string | null;
|
|
@@ -2606,7 +2616,7 @@ declare class BuiltinPlugin {
|
|
|
2606
2616
|
//#endregion
|
|
2607
2617
|
//#region src/constants/plugin.d.ts
|
|
2608
2618
|
declare const ENUMERATED_INPUT_PLUGIN_HOOK_NAMES: readonly ["options", "buildStart", "resolveId", "load", "transform", "moduleParsed", "buildEnd", "onLog", "resolveDynamicImport", "closeBundle", "closeWatcher", "watchChange"];
|
|
2609
|
-
declare const ENUMERATED_OUTPUT_PLUGIN_HOOK_NAMES: readonly ["augmentChunkHash", "outputOptions", "renderChunk", "renderStart", "renderError", "writeBundle", "generateBundle"];
|
|
2619
|
+
declare const ENUMERATED_OUTPUT_PLUGIN_HOOK_NAMES: readonly ["augmentChunkHash", "outputOptions", "renderChunk", "renderStart", "renderError", "writeBundle", "generateBundle", "resolveFileUrl"];
|
|
2610
2620
|
declare const ENUMERATED_PLUGIN_HOOK_NAMES: [...typeof ENUMERATED_INPUT_PLUGIN_HOOK_NAMES, ...typeof ENUMERATED_OUTPUT_PLUGIN_HOOK_NAMES, "footer", "banner", "intro", "outro"];
|
|
2611
2621
|
/**
|
|
2612
2622
|
* Names of all defined hooks. It's like
|
|
@@ -2782,6 +2792,45 @@ interface SourceDescription extends SpecifiedModuleOptions, Partial<PartialNull<
|
|
|
2782
2792
|
map?: SourceMapInput;
|
|
2783
2793
|
moduleType?: ModuleType;
|
|
2784
2794
|
}
|
|
2795
|
+
/**
|
|
2796
|
+
* Argument passed to the {@linkcode FunctionPluginHooks.resolveFileUrl | resolveFileUrl} hook.
|
|
2797
|
+
*
|
|
2798
|
+
* @category Plugin APIs
|
|
2799
|
+
*/
|
|
2800
|
+
interface ResolveFileUrlArgs {
|
|
2801
|
+
/**
|
|
2802
|
+
* The preliminary filename of the chunk containing the reference with hash placeholders.
|
|
2803
|
+
* Similar to {@linkcode RenderedChunk.fileName | chunk.fileName}.
|
|
2804
|
+
*/
|
|
2805
|
+
chunkId: string;
|
|
2806
|
+
/** The filename of the emitted file, relative to the output directory. */
|
|
2807
|
+
fileName: string;
|
|
2808
|
+
/** The rendered output format. */
|
|
2809
|
+
format: InternalModuleFormat;
|
|
2810
|
+
/**
|
|
2811
|
+
* The id of the original module this file was referenced by
|
|
2812
|
+
* using the `import.meta.ROLLDOWN_FILE_URL_*` reference.
|
|
2813
|
+
*/
|
|
2814
|
+
moduleId: string;
|
|
2815
|
+
/** The reference id of this file. */
|
|
2816
|
+
referenceId: string;
|
|
2817
|
+
/**
|
|
2818
|
+
* The path of the emitted file, relative to the chunk the file is referenced from.
|
|
2819
|
+
*
|
|
2820
|
+
* This path will contain no leading `./`, but may contain a leading `../`.
|
|
2821
|
+
*/
|
|
2822
|
+
relativePath: string;
|
|
2823
|
+
/**
|
|
2824
|
+
* The `urlId` of an `import.meta.ROLLDOWN_FILE_URL_<referenceId>_<urlId>` reference,
|
|
2825
|
+
* or `undefined` when the reference has no `urlId`.
|
|
2826
|
+
*
|
|
2827
|
+
* This is a rolldown-specific extension: the Rollup-compatible
|
|
2828
|
+
* `import.meta.ROLLUP_FILE_URL_<referenceId>` form never carries a `urlId`.
|
|
2829
|
+
*
|
|
2830
|
+
* @experimental This API may change in minor versions.
|
|
2831
|
+
*/
|
|
2832
|
+
urlId?: string | undefined;
|
|
2833
|
+
}
|
|
2785
2834
|
/** @inline */
|
|
2786
2835
|
interface ResolveIdExtraOptions {
|
|
2787
2836
|
/**
|
|
@@ -3016,6 +3065,12 @@ interface FunctionPluginHooks {
|
|
|
3016
3065
|
* @group Output Generation Hooks
|
|
3017
3066
|
*/
|
|
3018
3067
|
[DEFINED_HOOK_NAMES.augmentChunkHash]: (this: PluginContext, chunk: RenderedChunk) => string | void;
|
|
3068
|
+
/**
|
|
3069
|
+
*
|
|
3070
|
+
*
|
|
3071
|
+
* @group Output Generation Hooks
|
|
3072
|
+
*/
|
|
3073
|
+
[DEFINED_HOOK_NAMES.resolveFileUrl]: (this: PluginContext, args: ResolveFileUrlArgs) => string | NullValue;
|
|
3019
3074
|
/**
|
|
3020
3075
|
* Called when Rolldown encounters an error during
|
|
3021
3076
|
* {@linkcode RolldownBuild.generate | bundle.generate()} or
|
|
@@ -3111,10 +3166,10 @@ type ObjectHookMeta = {
|
|
|
3111
3166
|
type ObjectHook<T, O = {}> = T | ({
|
|
3112
3167
|
handler: T;
|
|
3113
3168
|
} & ObjectHookMeta & O);
|
|
3114
|
-
type SyncPluginHooks = DefinedHookNames["augmentChunkHash" | "onLog" | "outputOptions"];
|
|
3169
|
+
type SyncPluginHooks = DefinedHookNames["augmentChunkHash" | "onLog" | "outputOptions" | "resolveFileUrl"];
|
|
3115
3170
|
/** @category Plugin APIs */
|
|
3116
3171
|
type AsyncPluginHooks = Exclude<keyof FunctionPluginHooks, SyncPluginHooks>;
|
|
3117
|
-
type FirstPluginHooks = DefinedHookNames["load" | "resolveDynamicImport" | "resolveId"];
|
|
3172
|
+
type FirstPluginHooks = DefinedHookNames["load" | "resolveDynamicImport" | "resolveFileUrl" | "resolveId"];
|
|
3118
3173
|
type SequentialPluginHooks = DefinedHookNames["augmentChunkHash" | "generateBundle" | "onLog" | "options" | "outputOptions" | "renderChunk" | "transform"];
|
|
3119
3174
|
interface AddonHooks {
|
|
3120
3175
|
/**
|
|
@@ -3146,7 +3201,7 @@ interface AddonHooks {
|
|
|
3146
3201
|
*/
|
|
3147
3202
|
[DEFINED_HOOK_NAMES.outro]: AddonHook;
|
|
3148
3203
|
}
|
|
3149
|
-
type OutputPluginHooks = DefinedHookNames["augmentChunkHash" | "generateBundle" | "outputOptions" | "renderChunk" | "renderError" | "renderStart" | "writeBundle"];
|
|
3204
|
+
type OutputPluginHooks = DefinedHookNames["augmentChunkHash" | "generateBundle" | "outputOptions" | "renderChunk" | "renderError" | "renderStart" | "resolveFileUrl" | "writeBundle"];
|
|
3150
3205
|
/** @internal */
|
|
3151
3206
|
type ParallelPluginHooks = Exclude<keyof FunctionPluginHooks | keyof AddonHooks, FirstPluginHooks | SequentialPluginHooks>;
|
|
3152
3207
|
/** @category Plugin APIs */
|
|
@@ -3385,6 +3440,13 @@ type DevModeOptions = boolean | {
|
|
|
3385
3440
|
host?: string;
|
|
3386
3441
|
port?: number;
|
|
3387
3442
|
implement?: string;
|
|
3443
|
+
/**
|
|
3444
|
+
* Prevent Rolldown from prepending its common dev runtime to {@link implement}.
|
|
3445
|
+
* @deprecated Common runtime injection will be disabled by default in the future.
|
|
3446
|
+
* Include the common runtime in {@link implement} instead.
|
|
3447
|
+
* @default false
|
|
3448
|
+
*/
|
|
3449
|
+
skipCommonRuntimeInjection?: boolean;
|
|
3388
3450
|
lazy?: boolean;
|
|
3389
3451
|
};
|
|
3390
3452
|
type OptimizationOptions = {
|
|
@@ -3802,7 +3864,8 @@ interface InputOptions {
|
|
|
3802
3864
|
fileName?: string;
|
|
3803
3865
|
};
|
|
3804
3866
|
/**
|
|
3805
|
-
*
|
|
3867
|
+
* Under `output.strictExecutionOrder`, derive a conservative wrapping plan from predicted
|
|
3868
|
+
* chunk execution hazards instead of wrapping every eligible module.
|
|
3806
3869
|
* @default false
|
|
3807
3870
|
* @hidden not ready for public usage yet
|
|
3808
3871
|
*/
|
|
@@ -4000,4 +4063,4 @@ declare function defineConfig(config: RolldownOptions[]): RolldownOptions[];
|
|
|
4000
4063
|
declare function defineConfig(config: RolldownOptionsFunction): RolldownOptionsFunction;
|
|
4001
4064
|
declare function defineConfig(config: ConfigExport): ConfigExport;
|
|
4002
4065
|
//#endregion
|
|
4003
|
-
export {
|
|
4066
|
+
export { defineParallelPlugin as $, ModuleInfo as $t, ResolvedId as A, ChunkFileNamesFunction as At, ExistingRawSourceMap as B, ModuleFormat as Bt, ParallelPluginHooks as C, RolldownBuild as Ct, ResolveFileUrlArgs as D, AdvancedChunksGroup as Dt, PluginMeta as E, AddonFunction as Et, withFilter as F, CommentsOptions as Ft, EmittedAsset as G, StringOrRegExp as Gt, OutputBundle as H, PreRenderedAsset as Ht, BuiltinPlugin as I, GeneratedCodeOptions as It, EmittedPrebuiltChunk as J, RenderedChunk as Jt, EmittedChunk as K, OutputAsset as Kt, RUNTIME_MODULE_ID as L, GeneratedCodePreset as Lt, RolldownPluginOption as M, CodeSplittingGroup as Mt, SourceDescription as N, CodeSplittingNameFunction as Nt, ResolveIdExtraOptions as O, AdvancedChunksOptions as Ot, TransformResult as P, CodeSplittingOptions as Pt, DefineParallelPluginResult as Q, freeExternalMemory as Qt, VERSION as R, GlobalsFunction as Rt, ObjectHook as S, rolldown as St, Plugin as T, build as Tt, TreeshakingOptions as U, MaybePromise as Ut, SourceMapInput as V, OutputOptions as Vt, TransformPluginContext as W, PartialNull as Wt, PluginContext as X, RolldownOutput as Xt, GetModuleInfo as Y, RenderedModule as Yt, PluginContextResolveOptions as Z, SourceMap as Zt, HookFilterExtension as _, watch as _t, ChunkOptimizationOptions as a, BufferEncoding as at, ModuleOptions as b, RolldownWatcherWatcherEventMap as bt, InputOption as c, RolldownFsModule as ct, OptimizationOptions as d, NormalizedInputOptions as dt, SourcemapIgnoreListOption as en, MinimalPluginContext as et, WatcherFileWatcherOptions as f, TransformOptions as ft, FunctionPluginHooks as g, RolldownMagicString as gt, CustomPluginOptions as h, WarningHandlerWithDefault as ht, RolldownOptions as i, ModuleTypeFilter as it, RolldownPlugin as j, ChunkingContext as jt, ResolveIdResult as k, BuiltinModuleTag as kt, InputOptions as l, InternalModuleFormat as lt, AsyncPluginHooks as m, LoggingFunction as mt, RolldownOptionsFunction as n, GeneralHookFilter as nt, ExternalOption as o, RolldownDirectoryEntry as ot, WatcherOptions as p, ChecksOptions as pt, EmittedFile as q, OutputChunk as qt, defineConfig as r, HookFilter as rt, ExternalOptionFunction as s, RolldownFileStats as st, ConfigExport as t, PluginContextMeta as tt, ModuleTypes as u, NormalizedOutputOptions as ut, ImportKind as v, RolldownWatcher as vt, PartialResolvedId as w, BuildOptions as wt, ModuleType as x, WatchOptions as xt, LoadResult as y, RolldownWatcherEvent as yt, BundleError as z, MinifyOptions as zt };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { t as rolldown } from "./rolldown-
|
|
1
|
+
import { t as rolldown } from "./rolldown-D23fYgSS.mjs";
|
|
2
2
|
import fs from "node:fs";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { readdir } from "node:fs/promises";
|
|
5
|
-
import { cwd } from "node:process";
|
|
6
5
|
import { pathToFileURL } from "node:url";
|
|
6
|
+
import { cwd } from "node:process";
|
|
7
7
|
//#region src/utils/load-config.ts
|
|
8
8
|
async function bundleTsConfig(configFile, isEsm) {
|
|
9
9
|
const dirnameVarName = "injected_original_dirname";
|
|
@@ -103,6 +103,7 @@ const INPUT_HOOK_IN_OUTPUT_PLUGIN = "INPUT_HOOK_IN_OUTPUT_PLUGIN";
|
|
|
103
103
|
const CYCLE_LOADING = "CYCLE_LOADING";
|
|
104
104
|
const MULTIPLE_WATCHER_OPTION = "MULTIPLE_WATCHER_OPTION";
|
|
105
105
|
const PARSE_ERROR = "PARSE_ERROR";
|
|
106
|
+
const VALIDATION_ERROR = "VALIDATION_ERROR";
|
|
106
107
|
function logParseError(message, id, pos) {
|
|
107
108
|
return {
|
|
108
109
|
code: PARSE_ERROR,
|
|
@@ -111,6 +112,12 @@ function logParseError(message, id, pos) {
|
|
|
111
112
|
pos
|
|
112
113
|
};
|
|
113
114
|
}
|
|
115
|
+
function logFailedValidation(message) {
|
|
116
|
+
return {
|
|
117
|
+
code: VALIDATION_ERROR,
|
|
118
|
+
message
|
|
119
|
+
};
|
|
120
|
+
}
|
|
114
121
|
function logInvalidLogPosition(pluginName) {
|
|
115
122
|
return {
|
|
116
123
|
code: INVALID_LOG_POSITION,
|
|
@@ -182,4 +189,4 @@ function augmentCodeLocation(properties, pos, source, id) {
|
|
|
182
189
|
}
|
|
183
190
|
}
|
|
184
191
|
//#endregion
|
|
185
|
-
export {
|
|
192
|
+
export { logInputHookInOutputPlugin as a, logParseError as c, getCodeFrame as d, logFailedValidation as i, logPluginError as l, error as n, logInvalidLogPosition as o, logCycleLoading as r, logMultipleWatcherOption as s, augmentCodeLocation as t, locate as u };
|
|
@@ -17,5 +17,13 @@ function unsupported(info) {
|
|
|
17
17
|
throw new Error(`UNSUPPORTED: ${info}`);
|
|
18
18
|
}
|
|
19
19
|
function noop(..._args) {}
|
|
20
|
+
const ABSOLUTE_PATH_REGEX = /^(?:\/|(?:[A-Za-z]:)?[/\\|])/;
|
|
21
|
+
/**
|
|
22
|
+
* Whether `name` is a path fragment — an absolute or relative path. Emitted file
|
|
23
|
+
* names, `[name]` substitutions and file-name patterns can be neither.
|
|
24
|
+
*/
|
|
25
|
+
function isPathFragment(name) {
|
|
26
|
+
return name[0] === "/" || name[0] === "." && (name[1] === "/" || name[1] === ".") || ABSOLUTE_PATH_REGEX.test(name);
|
|
27
|
+
}
|
|
20
28
|
//#endregion
|
|
21
|
-
export {
|
|
29
|
+
export { unimplemented as a, noop as i, isPathFragment as n, unreachable as o, isPromiseLike as r, unsupported as s, arraify as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { n as __toESM, t as require_binding } from "./binding-
|
|
2
|
-
import {
|
|
1
|
+
import { n as __toESM, t as require_binding } from "./binding-DwUQWZOo.mjs";
|
|
2
|
+
import { l as logPluginError, n as error } from "./logs-DmYCAKcW.mjs";
|
|
3
3
|
//#region src/builtin-plugin/utils.ts
|
|
4
4
|
var import_binding = /* @__PURE__ */ __toESM(require_binding(), 1);
|
|
5
5
|
var BuiltinPlugin = class {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { n as __toESM, t as require_binding } from "./binding-
|
|
2
|
-
//#region ../../node_modules/.pnpm/oxc-parser@0.
|
|
1
|
+
import { n as __toESM, t as require_binding } from "./binding-DwUQWZOo.mjs";
|
|
2
|
+
//#region ../../node_modules/.pnpm/oxc-parser@0.142.0/node_modules/oxc-parser/src-js/wrap.js
|
|
3
3
|
var import_binding = /* @__PURE__ */ __toESM(require_binding(), 1);
|
|
4
4
|
function wrap(result) {
|
|
5
5
|
let program, module, comments, errors;
|
|
@@ -604,9 +604,7 @@ let wD = class extends x {
|
|
|
604
604
|
case "right":
|
|
605
605
|
this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
|
|
606
606
|
break;
|
|
607
|
-
case "space":
|
|
608
|
-
this.toggleValue();
|
|
609
|
-
break;
|
|
607
|
+
case "space": this.toggleValue();
|
|
610
608
|
}
|
|
611
609
|
});
|
|
612
610
|
}
|
|
@@ -639,9 +637,7 @@ var jD = class extends x {
|
|
|
639
637
|
this.cursor = this.cursor === 0 ? this.options.length - 1 : this.cursor - 1;
|
|
640
638
|
break;
|
|
641
639
|
case "down":
|
|
642
|
-
case "right":
|
|
643
|
-
this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
|
|
644
|
-
break;
|
|
640
|
+
case "right": this.cursor = this.cursor === this.options.length - 1 ? 0 : this.cursor + 1;
|
|
645
641
|
}
|
|
646
642
|
this.changeValue();
|
|
647
643
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { n as __toESM, t as require_binding } from "./binding-
|
|
2
|
-
import { a as bindingifySourcemap, n as normalizeBindingError } from "./error-
|
|
1
|
+
import { n as __toESM, t as require_binding } from "./binding-DwUQWZOo.mjs";
|
|
2
|
+
import { a as bindingifySourcemap, n as normalizeBindingError } from "./error-nLggAzpQ.mjs";
|
|
3
3
|
//#region src/utils/minify.ts
|
|
4
4
|
var import_binding = /* @__PURE__ */ __toESM(require_binding(), 1);
|
|
5
5
|
/**
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import { n as __toESM, t as require_binding } from "./binding-DwUQWZOo.mjs";
|
|
2
|
+
import { f as __decorate, h as PlainObjectLike, m as lazyProp, u as transformToRollupOutput } from "./bindingify-input-options-BHixd47T.mjs";
|
|
3
|
+
import { l as PluginDriver, s as validateOption, t as createBundlerOptions } from "./create-bundler-option-LuUKlAT7.mjs";
|
|
4
|
+
import { i as unwrapBindingResult } from "./error-nLggAzpQ.mjs";
|
|
5
|
+
//#region src/types/rolldown-output-impl.ts
|
|
6
|
+
var import_binding = /* @__PURE__ */ __toESM(require_binding(), 1);
|
|
7
|
+
var RolldownOutputImpl = class extends PlainObjectLike {
|
|
8
|
+
bindingOutputs;
|
|
9
|
+
constructor(bindingOutputs) {
|
|
10
|
+
super();
|
|
11
|
+
this.bindingOutputs = bindingOutputs;
|
|
12
|
+
}
|
|
13
|
+
get output() {
|
|
14
|
+
return transformToRollupOutput(this.bindingOutputs).output;
|
|
15
|
+
}
|
|
16
|
+
__rolldown_external_memory_handle__(keepDataAlive) {
|
|
17
|
+
const results = this.output.map((item) => item.__rolldown_external_memory_handle__(keepDataAlive));
|
|
18
|
+
if (!results.every((r) => r.freed)) {
|
|
19
|
+
const reasons = results.filter((r) => !r.freed).map((r) => r.reason).filter(Boolean);
|
|
20
|
+
return {
|
|
21
|
+
freed: false,
|
|
22
|
+
reason: `Failed to free ${reasons.length} item(s): ${reasons.join("; ")}`
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
return { freed: true };
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
__decorate([lazyProp], RolldownOutputImpl.prototype, "output", null);
|
|
29
|
+
//#endregion
|
|
30
|
+
//#region src/api/rolldown/rolldown-build.ts
|
|
31
|
+
Symbol.asyncDispose ??= Symbol("Symbol.asyncDispose");
|
|
32
|
+
/**
|
|
33
|
+
* The bundle object returned by {@linkcode rolldown} function.
|
|
34
|
+
*
|
|
35
|
+
* @category Programmatic APIs
|
|
36
|
+
*/
|
|
37
|
+
var RolldownBuild = class {
|
|
38
|
+
#inputOptions;
|
|
39
|
+
#bundler;
|
|
40
|
+
#stopWorkers;
|
|
41
|
+
#asyncRuntimeReleased = false;
|
|
42
|
+
/** @hidden should not be used directly */
|
|
43
|
+
constructor(inputOptions) {
|
|
44
|
+
this.#inputOptions = inputOptions;
|
|
45
|
+
this.#bundler = new import_binding.BindingBundler();
|
|
46
|
+
(0, import_binding.startAsyncRuntime)();
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Whether the bundle has been closed.
|
|
50
|
+
*
|
|
51
|
+
* If the bundle is closed, calling other methods will throw an error.
|
|
52
|
+
*/
|
|
53
|
+
get closed() {
|
|
54
|
+
return this.#bundler.closed;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Generate bundles in-memory.
|
|
58
|
+
*
|
|
59
|
+
* If you directly want to write bundles to disk, use the {@linkcode write} method instead.
|
|
60
|
+
*
|
|
61
|
+
* @param outputOptions The output options.
|
|
62
|
+
* @returns The generated bundle.
|
|
63
|
+
* @throws {@linkcode BundleError} When an error occurs during the build.
|
|
64
|
+
*/
|
|
65
|
+
async generate(outputOptions = {}) {
|
|
66
|
+
return this.#build(false, outputOptions);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Generate and write bundles to disk.
|
|
70
|
+
*
|
|
71
|
+
* If you want to generate bundles in-memory, use the {@linkcode generate} method instead.
|
|
72
|
+
*
|
|
73
|
+
* @param outputOptions The output options.
|
|
74
|
+
* @returns The generated bundle.
|
|
75
|
+
* @throws {@linkcode BundleError} When an error occurs during the build.
|
|
76
|
+
*/
|
|
77
|
+
async write(outputOptions = {}) {
|
|
78
|
+
return this.#build(true, outputOptions);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Close the bundle and free resources.
|
|
82
|
+
*
|
|
83
|
+
* This method should be called even if the {@linkcode generate} method
|
|
84
|
+
* or the {@linkcode write} method threw an error. It should be called
|
|
85
|
+
* even if neither of the methods are called.
|
|
86
|
+
*
|
|
87
|
+
* This method is called automatically when using `using` syntax.
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```js
|
|
91
|
+
* import { rolldown } from 'rolldown';
|
|
92
|
+
*
|
|
93
|
+
* {
|
|
94
|
+
* using bundle = await rolldown({ input: 'src/main.js' });
|
|
95
|
+
* const output = await bundle.generate({ format: 'esm' });
|
|
96
|
+
* console.log(output);
|
|
97
|
+
* // bundle.close() is called automatically here
|
|
98
|
+
* }
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
async close() {
|
|
102
|
+
const shouldRelease = !this.#asyncRuntimeReleased;
|
|
103
|
+
this.#asyncRuntimeReleased = true;
|
|
104
|
+
try {
|
|
105
|
+
await this.#stopWorkers?.();
|
|
106
|
+
await this.#bundler.close();
|
|
107
|
+
this.#stopWorkers = void 0;
|
|
108
|
+
} finally {
|
|
109
|
+
if (shouldRelease) (0, import_binding.shutdownAsyncRuntime)();
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/** @hidden documented in close method */
|
|
113
|
+
async [Symbol.asyncDispose]() {
|
|
114
|
+
await this.close();
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* @experimental
|
|
118
|
+
* @hidden not ready for public usage yet
|
|
119
|
+
*/
|
|
120
|
+
get watchFiles() {
|
|
121
|
+
return Promise.resolve(this.#bundler.getWatchFiles());
|
|
122
|
+
}
|
|
123
|
+
async #build(isWrite, outputOptions) {
|
|
124
|
+
validateOption("output", outputOptions);
|
|
125
|
+
await this.#stopWorkers?.();
|
|
126
|
+
const option = await createBundlerOptions(this.#inputOptions, outputOptions, false, true);
|
|
127
|
+
try {
|
|
128
|
+
this.#stopWorkers = option.stopWorkers;
|
|
129
|
+
let output;
|
|
130
|
+
if (isWrite) output = await this.#bundler.write(option.bundlerOptions);
|
|
131
|
+
else output = await this.#bundler.generate(option.bundlerOptions);
|
|
132
|
+
return new RolldownOutputImpl(unwrapBindingResult(output));
|
|
133
|
+
} catch (e) {
|
|
134
|
+
await option.stopWorkers?.();
|
|
135
|
+
throw e;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
//#endregion
|
|
140
|
+
//#region src/api/rolldown/index.ts
|
|
141
|
+
/**
|
|
142
|
+
* The API compatible with Rollup's `rollup` function.
|
|
143
|
+
*
|
|
144
|
+
* Unlike Rollup, the module graph is not built until the methods of the bundle object are called.
|
|
145
|
+
*
|
|
146
|
+
* @param input The input options object.
|
|
147
|
+
* @returns A Promise that resolves to a bundle object.
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* ```js
|
|
151
|
+
* import { rolldown } from 'rolldown';
|
|
152
|
+
*
|
|
153
|
+
* let bundle, failed = false;
|
|
154
|
+
* try {
|
|
155
|
+
* bundle = await rolldown({
|
|
156
|
+
* input: 'src/main.js',
|
|
157
|
+
* });
|
|
158
|
+
* await bundle.write({
|
|
159
|
+
* format: 'esm',
|
|
160
|
+
* });
|
|
161
|
+
* } catch (e) {
|
|
162
|
+
* console.error(e);
|
|
163
|
+
* failed = true;
|
|
164
|
+
* }
|
|
165
|
+
* if (bundle) {
|
|
166
|
+
* await bundle.close();
|
|
167
|
+
* }
|
|
168
|
+
* process.exitCode = failed ? 1 : 0;
|
|
169
|
+
* ```
|
|
170
|
+
*
|
|
171
|
+
* @category Programmatic APIs
|
|
172
|
+
*/
|
|
173
|
+
const rolldown = async (input) => {
|
|
174
|
+
validateOption("input", input);
|
|
175
|
+
return new RolldownBuild(await PluginDriver.callOptionsHook(input));
|
|
176
|
+
};
|
|
177
|
+
//#endregion
|
|
178
|
+
export { rolldown as t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as RolldownLog } from "./logging-xuHO4mAy.mjs";
|
|
2
|
-
import { F as MinifyOptions$1, G as TsconfigCache$1, I as MinifyResult$1, R as ParseResult$1, U as SourceMap, a as BindingEnhancedTransformOptions, o as BindingEnhancedTransformResult, y as BindingTsconfigResult, z as ParserOptions$1 } from "./binding-
|
|
2
|
+
import { F as MinifyOptions$1, G as TsconfigCache$1, I as MinifyResult$1, R as ParseResult$1, U as SourceMap, a as BindingEnhancedTransformOptions, o as BindingEnhancedTransformResult, y as BindingTsconfigResult, z as ParserOptions$1 } from "./binding-CVtkJvyl.mjs";
|
|
3
3
|
//#region src/utils/resolve-tsconfig.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* Cache for tsconfig resolution to avoid redundant file system operations.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { n as __toESM, t as require_binding } from "./binding-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { t as arraify } from "./misc-
|
|
5
|
-
import {
|
|
6
|
-
import { t as aggregateBindingErrorsIntoJsError } from "./error-
|
|
1
|
+
import { n as __toESM, t as require_binding } from "./binding-DwUQWZOo.mjs";
|
|
2
|
+
import { s as logMultipleWatcherOption } from "./logs-DmYCAKcW.mjs";
|
|
3
|
+
import { C as LOG_LEVEL_WARN } from "./bindingify-input-options-BHixd47T.mjs";
|
|
4
|
+
import { t as arraify } from "./misc-DOSKtd97.mjs";
|
|
5
|
+
import { l as PluginDriver, t as createBundlerOptions } from "./create-bundler-option-LuUKlAT7.mjs";
|
|
6
|
+
import { t as aggregateBindingErrorsIntoJsError } from "./error-nLggAzpQ.mjs";
|
|
7
7
|
//#region ../../node_modules/.pnpm/signal-exit@4.1.0/node_modules/signal-exit/dist/mjs/signals.js
|
|
8
8
|
/**
|
|
9
9
|
* This is not the set of all possible signals.
|
|
@@ -276,9 +276,7 @@ function createEventCallback(emitter) {
|
|
|
276
276
|
case "restart":
|
|
277
277
|
await emitter.emit("restart");
|
|
278
278
|
break;
|
|
279
|
-
case "close":
|
|
280
|
-
await emitter.emit("close");
|
|
281
|
-
break;
|
|
279
|
+
case "close": await emitter.emit("close");
|
|
282
280
|
}
|
|
283
281
|
};
|
|
284
282
|
}
|
|
@@ -291,6 +289,7 @@ var Watcher = class {
|
|
|
291
289
|
this.closed = false;
|
|
292
290
|
this.inner = inner;
|
|
293
291
|
this.emitter = emitter;
|
|
292
|
+
(0, import_binding.startAsyncRuntime)();
|
|
294
293
|
const originClose = emitter.close.bind(emitter);
|
|
295
294
|
emitter.close = async () => {
|
|
296
295
|
await this.close();
|
|
@@ -302,9 +301,12 @@ var Watcher = class {
|
|
|
302
301
|
async close() {
|
|
303
302
|
if (this.closed) return;
|
|
304
303
|
this.closed = true;
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
304
|
+
try {
|
|
305
|
+
for (const stop of this.stopWorkers) await stop?.();
|
|
306
|
+
await this.inner.close();
|
|
307
|
+
} finally {
|
|
308
|
+
(0, import_binding.shutdownAsyncRuntime)();
|
|
309
|
+
}
|
|
308
310
|
}
|
|
309
311
|
async run() {
|
|
310
312
|
await this.inner.run();
|
|
@@ -314,7 +316,8 @@ var Watcher = class {
|
|
|
314
316
|
async function createWatcher(emitter, input) {
|
|
315
317
|
const options = arraify(input);
|
|
316
318
|
const bundlerOptions = await Promise.all(options.map((option) => arraify(option.output || {}).map(async (output) => {
|
|
317
|
-
|
|
319
|
+
const inputOptions = await PluginDriver.callOptionsHook(option, true);
|
|
320
|
+
return createBundlerOptions(inputOptions, output, true);
|
|
318
321
|
})).flat());
|
|
319
322
|
warnMultiplePollingOptions(bundlerOptions);
|
|
320
323
|
const callback = createEventCallback(emitter);
|
package/dist/utils-index.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { _ as BindingTsconfigCompilerOptions, v as BindingTsconfigRawOptions } from "./shared/binding-
|
|
2
|
-
import { a as MinifyOptions, c as minifySync, d as parse, f as parseSync, i as transformSync, l as ParseResult, n as TransformResult, o as MinifyResult, p as TsconfigCache, r as transform, s as minify, t as TransformOptions, u as ParserOptions } from "./shared/transform-
|
|
1
|
+
import { _ as BindingTsconfigCompilerOptions, v as BindingTsconfigRawOptions } from "./shared/binding-CVtkJvyl.mjs";
|
|
2
|
+
import { a as MinifyOptions, c as minifySync, d as parse, f as parseSync, i as transformSync, l as ParseResult, n as TransformResult, o as MinifyResult, p as TsconfigCache, r as transform, s as minify, t as TransformOptions, u as ParserOptions } from "./shared/transform-WmU_cI8e.mjs";
|
|
3
3
|
import * as ESTree from "@oxc-project/types";
|
|
4
4
|
import { Program } from "@oxc-project/types";
|
|
5
|
-
//#region ../../node_modules/.pnpm/oxc-parser@0.
|
|
5
|
+
//#region ../../node_modules/.pnpm/oxc-parser@0.142.0/node_modules/oxc-parser/src-js/generated/visit/visitor.d.ts
|
|
6
6
|
interface VisitorObject$1 {
|
|
7
7
|
DebuggerStatement?: (node: ESTree.DebuggerStatement) => void;
|
|
8
8
|
"DebuggerStatement:exit"?: (node: ESTree.DebuggerStatement) => void;
|