npm package diff
Package: @forge/bundler
Versions: 4.21.0-next.2 - 4.21.0-next.3
File: package/out/runtime.js
Index: package/out/runtime.js
===================================================================
--- package/out/runtime.js
+++ package/out/runtime.js
@@ -1,7 +1,7 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
-exports.NodeBundler = exports.SandboxBundler = void 0;
+exports.getNodeBundler = exports.SandboxBundler = void 0;
const tslib_1 = require("tslib");
const webpack_1 = tslib_1.__importDefault(require("webpack"));
var RawSource = webpack_1.default.sources.RawSource;
const common_1 = require("./config/common");
@@ -17,8 +17,24 @@
}
exports.SandboxBundler = SandboxBundler;
const NODE_RUNTIME_VERSION_FILE = 'runtime.json';
const NODE_WEBPACK_USER_CODE_DIR = 'bundled';
+async function emitWrapperFiles(provider, entrypoints, emit) {
+ const wrapper = await provider.getNodeRuntimeWrapper();
+ const loader = await provider.getNodeRuntimeLoader();
+ if (loader) {
+ for (const entrypoint of entrypoints) {
+ await emit(`${entrypoint.name}.cjs`, loader.script);
+ }
+ await emit('__forge_wrapper__.cjs', wrapper.script);
+ }
+ else {
+ for (const entrypoint of entrypoints) {
+ await emit(`${entrypoint.name}.cjs`, wrapper.script);
+ }
+ }
+ await emit(NODE_RUNTIME_VERSION_FILE, JSON.stringify({ version: loader ? loader.version : wrapper.version }, null, 2));
+}
class NodeBundler extends webpack_2.WebpackBundler {
wrapperProvider;
constructor(logger, wrapperProvider) {
super(logger);
@@ -41,34 +57,14 @@
}
});
webpackConfig.plugins.push({
apply: (compiler) => {
- compiler.hooks.make.tapPromise('AfterEmitPlugin', this.insertWrapperBundle(args.entryPoints));
+ compiler.hooks.make.tapPromise('AfterEmitPlugin', async (compilation) => await emitWrapperFiles(this.wrapperProvider, args.entryPoints, async (name, contents) => compilation.emitAsset(name, new RawSource(contents))));
}
});
return webpackConfig;
}
- insertWrapperBundle(entrypoints) {
- return async (compilation) => {
- const wrapper = await this.wrapperProvider.getNodeRuntimeWrapper();
- const loader = await this.wrapperProvider.getNodeRuntimeLoader();
- if (loader) {
- const loaderSource = new RawSource(loader.script);
- for (const entrypoint of entrypoints) {
- compilation.emitAsset(`${entrypoint.name}.cjs`, loaderSource);
- }
- const wrapperSource = new RawSource(wrapper.script);
- compilation.emitAsset('__forge_wrapper__.cjs', wrapperSource);
- }
- else {
- const source = new RawSource(wrapper.script);
- for (const entrypoint of entrypoints) {
- compilation.emitAsset(`${entrypoint.name}.cjs`, source);
- }
- }
- compilation.emitAsset(NODE_RUNTIME_VERSION_FILE, new RawSource(JSON.stringify({
- version: loader ? loader.version : wrapper.version
- }, null, 2)));
- };
- }
}
-exports.NodeBundler = NodeBundler;
+function getNodeBundler(logger, wrapperProvider, configReader) {
+ return new NodeBundler(logger, wrapperProvider);
+}
+exports.getNodeBundler = getNodeBundler;