Runtime
A plugin type: Programmatically insert assets out of thin air into bundles
Runtimes accept a bundle and return assets to be inserted into that bundle.
import { Runtime } from "@parcel/plugin";
export default new Runtime({
async apply({ bundle, bundleGraph }) {
// ...
return assets;
},
});
Relevant API
#RuntimeAsset parcel/packages/core/types/index.js:1619
A "synthetic" asset that will be inserted into the bundle graph.
type RuntimeAsset = {|
+filePath: FilePath,
+code: string,
+dependency?: Dependency,
+isEntry?: boolean,
+env?: EnvironmentOptions,
+priority?: RuntimeAssetPriority,
|}
Referenced by:
RuntimeRuntime parcel/packages/core/types/index.js:1631
type Runtime<ConfigType> = {|
loadConfig?: ({|
config: Config,
options: PluginOptions,
logger: PluginLogger,
|}) => Promise<ConfigType> | ConfigType,
apply({|
bundle: NamedBundle,
bundleGraph: BundleGraph<NamedBundle>,
config: ConfigType,
options: PluginOptions,
logger: PluginLogger,
|}): Async<void | RuntimeAsset | Array<RuntimeAsset>>,
|}