diff options
Diffstat (limited to 'lib/vm.js')
-rw-r--r-- | lib/vm.js | 20 |
1 files changed, 5 insertions, 15 deletions
@@ -31,10 +31,8 @@ const { } = internalBinding('contextify'); const { ERR_INVALID_ARG_TYPE, - ERR_VM_MODULE_NOT_MODULE, } = require('internal/errors').codes; const { - isModuleNamespaceObject, isArrayBufferView, } = require('internal/util/types'); const { @@ -100,21 +98,13 @@ class Script extends ContextifyScript { 'function', importModuleDynamically); } - const { wrapMap, linkingStatusMap } = + const { importModuleDynamicallyWrap } = require('internal/vm/source_text_module'); const { callbackMap } = internalBinding('module_wrap'); - callbackMap.set(this, { importModuleDynamically: async (...args) => { - const m = await importModuleDynamically(...args); - if (isModuleNamespaceObject(m)) { - return m; - } - if (!m || !wrapMap.has(m)) - throw new ERR_VM_MODULE_NOT_MODULE(); - const childLinkingStatus = linkingStatusMap.get(m); - if (childLinkingStatus === 'errored') - throw m.error; - return m.namespace; - } }); + callbackMap.set(this, { + importModuleDynamically: + importModuleDynamicallyWrap(importModuleDynamically), + }); } } |