From 337ca8c555f188d64c9f065972d443377adf042f Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Tue, 19 Dec 2023 12:43:16 -0800 Subject: node 21 --- loader.js | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'loader.js') diff --git a/loader.js b/loader.js index 7deda005..e8f5036e 100644 --- a/loader.js +++ b/loader.js @@ -1,8 +1,22 @@ import path from 'path' import fs from 'fs' -export function resolve (specifier, parentModuleURL, defaultResolver) { - specifier = specifier.replace(/^\$/, path.resolve('.') + "/") - specifier = fs.existsSync(specifier) && fs.lstatSync(specifier).isDirectory() ? `${specifier}/index` : specifier - return defaultResolver(specifier, parentModuleURL) +export function resolve (specifier, context, nextResolve) { + const { parentURL = null } = context; + + if (specifier.startsWith('$')) { + if (specifier.startsWith('$config')) { + specifier = 'file://' + path.resolve('.') + "/config.js"; + } + else if (specifier.startsWith('$')) { + specifier = specifier.replace(/^\$/, 'file://' + path.resolve('.') + '/') + '.js'; + } + + return { + shortCircuit: true, + url: new URL(specifier).href + }; + } + + return nextResolve(specifier, context) } -- cgit v1.2.3