@lynx-js/rspeedy
Version:
A webpack/rspack-based frontend toolchain for Lynx
24 lines (23 loc) • 753 B
JavaScript
import node_module from "node:module";
function register(options) {
if (!node_module.register) throw new Error([
`This version of Node.js (${process.version}) does not support module.register(). You can either:`,
" - Upgrade to Node.js v18.19 or v20.6 and above",
" - Use `lynx.config.js` instead of `lynx.config.ts`"
].join('\n'));
const { port1, port2 } = new MessageChannel();
node_module.register(`./hooks.js?${Date.now()}`, import.meta.url, {
parentURL: import.meta.url,
data: {
options,
port: port2
},
transferList: [
port2
]
});
return function() {
port1.postMessage('deactivate');
};
}
export { register };