rspack_plugin_mf 0.7.11

rspack module federation plugin
Documentation
var mfStartupBase = <%- REQUIRE %>.mfStartupBase = (function () {
	var hasRun = false;
	var result;
	return function __webpack_require__mfStartupBase() {
		if (hasRun) return result;
		hasRun = true;
		result = (function () {
<%- _module_executions %>		})();
		return result;
	};
})();

var mfAsyncStartup = <%- REQUIRE %>.mfAsyncStartup = (function () {
	var hasRun = false;
	var result;
	return function __webpack_require__mfAsyncStartup() {
		if (hasRun) return result;
		hasRun = true;
		var base = mfStartupBase && mfStartupBase();
		var promises = base && base.then ? [base] : [];
		var handlers = <%- REQUIRE %>.f;
		if (handlers) {
			var startupChunkIds = <%- _entry_chunk_ids %>;
			for (var i = 0; i < startupChunkIds.length; i++) {
				handlers.consumes && handlers.consumes(startupChunkIds[i], promises);
				handlers.remotes && handlers.remotes(startupChunkIds[i], promises);
			}
		}
		result = promises.length ? Promise.all(promises) : base;
		return result;
	};
})();

<%- REQUIRE %>.mfStartup = <%- STARTUP %>;

var wrapStartup = function (prev, isEntry) {
	prev = typeof prev === "function" ? prev : function () {};
	return function (result, chunkIds, cb) {
		var res = mfAsyncStartup();
		if (isEntry && chunkIds === undefined && result === undefined) {
			return res && res.then ? res.then(function () {}) : Promise.resolve();
		}
		if (isEntry && chunkIds === undefined) chunkIds = [];
		var _this = this;
		var _args = arguments;
		var run = function () {
			return isEntry ? prev.call(_this, result, chunkIds, cb) : prev.apply(_this, _args);
		};
		return res && res.then ? res.then(run) : run();
	};
};

<%- STARTUP %> = wrapStartup(<%- STARTUP %>);
<%- STARTUP_ENTRYPOINT %> = wrapStartup(<%- STARTUP_ENTRYPOINT %>, 1);