From 7a0059e9f4883ab650d4855e47455af47c26bd5d Mon Sep 17 00:00:00 2001 From: calebboyd Date: Thu, 22 Feb 2024 15:47:40 -0600 Subject: [PATCH] feat(esm): initialize hook - register(_,[_,tsNodeOptions]) --- esm.mjs | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/esm.mjs b/esm.mjs index c09e49095..e69dc681c 100644 --- a/esm.mjs +++ b/esm.mjs @@ -4,4 +4,26 @@ const require = createRequire(fileURLToPath(import.meta.url)); /** @type {import('./dist/esm')} */ const esm = require('./dist/esm'); -export const { resolve, load, getFormat, transformSource } = esm.registerAndCreateEsmHooks(); + +/** @type {ReturnType | undefined} */ +let loader = undefined; + +export function resolve(...args) { + return loader.resolve.apply(this, args); +} + +export function load(...args) { + return loader.load.apply(this, args); +} + +export function getFormat(...args) { + return loader.getFormat.apply(this, args); +} + +export function transformSource(...args) { + return loader.transformSource.apply(this, args); +} + +export function initialize(tsNodeOptions) { + loader = esm.registerAndCreateEsmHooks(tsNodeOptions); +}