bare-module 4.6.2 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -245,20 +245,16 @@ const Module = module.exports = exports = class Module {
245
245
 
246
246
  static _handle = binding.init(this, this._onimport, this._onevaluate, this._onmeta)
247
247
 
248
- static _onimport (href, attributes, referrerHref, isDynamicImport) {
248
+ static _onimport (specifier, attributes, referrerHref, isDynamicImport) {
249
249
  const referrer = this._cache[referrerHref] || null
250
250
 
251
251
  if (referrer === null) {
252
- let msg = `Cannot find referrer for module '${href}'`
253
-
254
- if (referrerHref) msg += ` imported from '${referrerHref}'`
255
-
256
- throw errors.MODULE_NOT_FOUND(msg)
252
+ throw errors.MODULE_NOT_FOUND(`Cannot find referrer for module '${specifier}' imported from '${referrerHref}'`)
257
253
  }
258
254
 
259
- const url = this.resolve(href, referrer._url, { isImport: true, referrer, attributes })
255
+ const resolved = this.resolve(specifier, referrer._url, { isImport: true, referrer, attributes })
260
256
 
261
- const module = this.load(url, { isImport: true, isDynamicImport, referrer, attributes })
257
+ const module = this.load(resolved, { isImport: true, isDynamicImport, referrer, attributes })
262
258
 
263
259
  return module._handle
264
260
  }
@@ -302,25 +298,15 @@ const Module = module.exports = exports = class Module {
302
298
 
303
299
  const referrer = module
304
300
 
305
- addon.host = Bare.Addon.host
306
-
307
301
  meta.url = module._url.href
308
302
  meta.main = module._main === module
309
303
  meta.cache = module._cache
310
- meta.resolve = resolve
311
- meta.addon = addon
312
- meta.asset = asset
313
-
314
- function resolve (specifier, parentURL = referrer._url) {
315
- const resolved = self.resolve(specifier, toURL(parentURL, referrer._url), { referrer })
316
304
 
317
- switch (resolved.protocol) {
318
- case 'builtin:': return resolved.pathname
319
- default: return resolved.href
320
- }
305
+ meta.resolve = function resolve (specifier, parentURL = referrer._url) {
306
+ return self.resolve(specifier, toURL(parentURL, referrer._url), { referrer }).href
321
307
  }
322
308
 
323
- function addon (specifier = '.', parentURL = referrer._url) {
309
+ meta.addon = function addon (specifier = '.', parentURL = referrer._url) {
324
310
  const resolved = Bare.Addon.resolve(specifier, toURL(parentURL, referrer._url), { referrer })
325
311
 
326
312
  const addon = Bare.Addon.load(resolved, { referrer })
@@ -328,7 +314,13 @@ const Module = module.exports = exports = class Module {
328
314
  return addon._exports
329
315
  }
330
316
 
331
- function asset (specifier, parentURL = referrer._url) {
317
+ meta.addon.resolve = function resolve (specifier = '.', parentURL = referrer._url) {
318
+ return Bare.Addon.resolve(specifier, toURL(parentURL, referrer._url), { referrer }).href
319
+ }
320
+
321
+ meta.addon.host = Bare.Addon.host
322
+
323
+ meta.asset = function asset (specifier, parentURL = referrer._url) {
332
324
  return self.asset(specifier, toURL(parentURL, referrer._url), { referrer }).href
333
325
  }
334
326
  }
@@ -469,11 +461,7 @@ const Module = module.exports = exports = class Module {
469
461
  }
470
462
  }
471
463
 
472
- let msg = `Cannot find module '${specifier}'`
473
-
474
- if (referrer) msg += ` imported from '${parentURL.href}'`
475
-
476
- throw errors.MODULE_NOT_FOUND(msg)
464
+ throw errors.MODULE_NOT_FOUND(`Cannot find module '${specifier}' imported from '${parentURL.href}'`)
477
465
 
478
466
  function readPackage (packageURL) {
479
467
  if (protocol.exists(packageURL)) {
@@ -515,11 +503,7 @@ const Module = module.exports = exports = class Module {
515
503
  }
516
504
  }
517
505
 
518
- let msg = `Cannot find asset '${specifier}'`
519
-
520
- if (referrer) msg += ` imported from '${parentURL.href}'`
521
-
522
- throw errors.ASSET_NOT_FOUND(msg)
506
+ throw errors.ASSET_NOT_FOUND(`Cannot find asset '${specifier}' imported from '${parentURL.href}'`)
523
507
 
524
508
  function readPackage (packageURL) {
525
509
  if (protocol.exists(packageURL)) {
@@ -664,16 +648,6 @@ const createRequire = exports.createRequire = function createRequire (parentURL,
664
648
 
665
649
  referrer = module
666
650
 
667
- addon.host = Bare.Addon.host
668
-
669
- require.main = module._main
670
- require.cache = module._cache
671
- require.resolve = resolve
672
- require.addon = addon
673
- require.asset = asset
674
-
675
- return require
676
-
677
651
  function require (specifier, opts = {}) {
678
652
  const attributes = opts && opts.with
679
653
 
@@ -684,16 +658,14 @@ const createRequire = exports.createRequire = function createRequire (parentURL,
684
658
  return module._exports
685
659
  }
686
660
 
687
- function resolve (specifier, parentURL = referrer._url) {
688
- const resolved = self.resolve(specifier, toURL(parentURL, referrer._url), { referrer })
661
+ require.main = module._main
662
+ require.cache = module._cache
689
663
 
690
- switch (resolved.protocol) {
691
- case 'builtin:': return resolved.pathname
692
- default: return urlToPath(resolved)
693
- }
664
+ require.resolve = function resolve (specifier, parentURL = referrer._url) {
665
+ return urlToPath(self.resolve(specifier, toURL(parentURL, referrer._url), { referrer }))
694
666
  }
695
667
 
696
- function addon (specifier = '.', parentURL = referrer._url) {
668
+ require.addon = function addon (specifier = '.', parentURL = referrer._url) {
697
669
  const resolved = Bare.Addon.resolve(specifier, toURL(parentURL, referrer._url), { referrer })
698
670
 
699
671
  const addon = Bare.Addon.load(resolved, { referrer })
@@ -701,9 +673,17 @@ const createRequire = exports.createRequire = function createRequire (parentURL,
701
673
  return addon._exports
702
674
  }
703
675
 
704
- function asset (specifier, parentURL = referrer._url) {
676
+ require.addon.host = Bare.Addon.host
677
+
678
+ require.addon.resolve = function resolve (specifier = '.', parentURL = referrer._url) {
679
+ return urlToPath(Bare.Addon.resolve(specifier, toURL(parentURL, referrer._url), { referrer }))
680
+ }
681
+
682
+ require.asset = function asset (specifier, parentURL = referrer._url) {
705
683
  return urlToPath(self.asset(specifier, toURL(parentURL, referrer._url), { referrer }))
706
684
  }
685
+
686
+ return require
707
687
  }
708
688
 
709
689
  if (Bare.simulator) Module._conditions.push('simulator')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bare-module",
3
- "version": "4.6.2",
3
+ "version": "4.7.0",
4
4
  "description": "Module support for JavaScript",
5
5
  "main": "index.js",
6
6
  "files": [