zephyr-rsbuild-plugin
Version:
Rsbuild plugin for Zephyr
86 lines (85 loc) • 3.68 kB
JavaScript
;
var __webpack_require__ = {};
(()=>{
__webpack_require__.d = (exports1, getters, values)=>{
var define = (defs, kind)=>{
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
enumerable: true,
[kind]: defs[key]
});
};
define(getters, "get");
define(values, "value");
};
})();
(()=>{
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
})();
(()=>{
__webpack_require__.r = (exports1)=>{
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
value: 'Module'
});
Object.defineProperty(exports1, '__esModule', {
value: true
});
};
})();
var __webpack_exports__ = {};
__webpack_require__.r(__webpack_exports__);
__webpack_require__.d(__webpack_exports__, {
withZephyr: ()=>withZephyr
});
const external_zephyr_agent_namespaceObject = require("zephyr-agent");
const external_zephyr_rspack_plugin_namespaceObject = require("zephyr-rspack-plugin");
const external_zephyr_xpack_internal_namespaceObject = require("zephyr-xpack-internal");
function withZephyr(options) {
const target = options?.target;
if (void 0 !== target) (0, external_zephyr_agent_namespaceObject.assertZephyrBuildTarget)(target, 'withZephyr({ target })');
return {
name: 'zephyr-rsbuild-plugin',
setup (api) {
api.onBeforeCreateCompiler({
order: 'post',
handler: async ({ bundlerConfigs })=>{
if (0 === bundlerConfigs.length) return;
const engine = await external_zephyr_agent_namespaceObject.ZephyrEngine.create({
builder: 'rspack',
context: bundlerConfigs[0]?.context,
target
});
if (void 0 !== target) engine.env.target = target;
try {
const { coordinator, compilers } = (0, external_zephyr_xpack_internal_namespaceObject.coordinateXPackCompilers)(engine, bundlerConfigs, {
snapshotType: options?.snapshotType,
entrypoint: options?.entrypoint
});
for (const [index, config] of bundlerConfigs.entries()){
const rspackConfig = config;
const result = await (0, external_zephyr_rspack_plugin_namespaceObject.withZephyr)({
...options,
target,
__engine: engine,
__coordinator: coordinator,
__participant: compilers[index]?.participant,
__assetPrefix: compilers[index]?.assetPrefix
})(rspackConfig);
if (result) Object.assign(config, result);
}
} catch (error) {
if (engine.hasActiveBuild) engine.build_failed();
throw error;
}
}
});
}
};
}
exports.withZephyr = __webpack_exports__.withZephyr;
for(var __rspack_i in __webpack_exports__)if (-1 === [
"withZephyr"
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
Object.defineProperty(exports, '__esModule', {
value: true
});
//# sourceMappingURL=with-zephyr.js.map