bare-module 2.0.0 → 2.0.2
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 +28 -12
- package/package.json +1 -1
- package/prebuilds/darwin-arm64/bare_module.bare +0 -0
package/index.js
CHANGED
|
@@ -6,7 +6,6 @@ const Protocol = require('./lib/protocol')
|
|
|
6
6
|
const constants = require('./lib/constants')
|
|
7
7
|
const errors = require('./lib/errors')
|
|
8
8
|
const binding = require('./binding')
|
|
9
|
-
const addon = require.addon.bind(require)
|
|
10
9
|
|
|
11
10
|
const Module = module.exports = exports = class Module {
|
|
12
11
|
constructor (filename) {
|
|
@@ -186,9 +185,10 @@ const Module = module.exports = exports = class Module {
|
|
|
186
185
|
module._protocol = protocol
|
|
187
186
|
|
|
188
187
|
const referrer = module
|
|
188
|
+
const dirname = path.dirname(module._filename)
|
|
189
189
|
|
|
190
190
|
const resolve = (specifier) => {
|
|
191
|
-
return this.resolve(specifier,
|
|
191
|
+
return this.resolve(specifier, dirname, {
|
|
192
192
|
protocol: this._protocolFor(specifier, protocol),
|
|
193
193
|
imports,
|
|
194
194
|
referrer
|
|
@@ -205,10 +205,16 @@ const Module = module.exports = exports = class Module {
|
|
|
205
205
|
return module._exports
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
+
const addon = (specifier = '.') => {
|
|
209
|
+
return Bare.Addon.load(Bare.Addon.resolve(specifier, dirname, {
|
|
210
|
+
referrer
|
|
211
|
+
}))
|
|
212
|
+
}
|
|
213
|
+
|
|
208
214
|
require.main = module._main
|
|
209
215
|
require.cache = this._cache
|
|
210
216
|
require.resolve = resolve
|
|
211
|
-
require.addon =
|
|
217
|
+
require.addon = addon
|
|
212
218
|
|
|
213
219
|
return require
|
|
214
220
|
}
|
|
@@ -395,8 +401,10 @@ const Module = module.exports = exports = class Module {
|
|
|
395
401
|
}
|
|
396
402
|
|
|
397
403
|
static * _resolveNodeModules (specifier, dirname, protocol) {
|
|
404
|
+
const [, name, expansion = '.'] = /^((?:@[^/\\%]+\/)?[^./\\%][^/\\%]*)(\/.*)?$/.exec(specifier) || []
|
|
405
|
+
|
|
398
406
|
for (const nodeModules of this._resolveNodeModulesPaths(dirname)) {
|
|
399
|
-
|
|
407
|
+
let resolved = specifier
|
|
400
408
|
|
|
401
409
|
if (name) {
|
|
402
410
|
const pkg = path.join(nodeModules, name, 'package.json')
|
|
@@ -409,16 +417,16 @@ const Module = module.exports = exports = class Module {
|
|
|
409
417
|
|
|
410
418
|
if (info) {
|
|
411
419
|
if (info.exports) {
|
|
412
|
-
|
|
420
|
+
resolved = this._mapConditionalExport(expansion, dirname, info.exports)
|
|
413
421
|
|
|
414
|
-
if (
|
|
422
|
+
if (resolved) resolved = path.join(name, resolved)
|
|
415
423
|
else return
|
|
416
424
|
}
|
|
417
425
|
}
|
|
418
426
|
}
|
|
419
427
|
}
|
|
420
428
|
|
|
421
|
-
const filename = path.join(nodeModules,
|
|
429
|
+
const filename = path.join(nodeModules, resolved)
|
|
422
430
|
|
|
423
431
|
yield * this._resolveFile(filename, protocol)
|
|
424
432
|
yield * this._resolveDirectory(filename, protocol)
|
|
@@ -622,8 +630,10 @@ Module._extensions['.cjs'] = function (module, source, referrer, protocol, impor
|
|
|
622
630
|
|
|
623
631
|
referrer = module
|
|
624
632
|
|
|
633
|
+
const dirname = path.dirname(module._filename)
|
|
634
|
+
|
|
625
635
|
const resolve = (specifier) => {
|
|
626
|
-
return this.resolve(specifier,
|
|
636
|
+
return this.resolve(specifier, dirname, {
|
|
627
637
|
protocol: this._protocolFor(specifier, protocol),
|
|
628
638
|
imports,
|
|
629
639
|
referrer
|
|
@@ -640,12 +650,18 @@ Module._extensions['.cjs'] = function (module, source, referrer, protocol, impor
|
|
|
640
650
|
return module._exports
|
|
641
651
|
}
|
|
642
652
|
|
|
643
|
-
|
|
653
|
+
const addon = (specifier = '.') => {
|
|
654
|
+
return Bare.Addon.load(Bare.Addon.resolve(specifier, dirname, {
|
|
655
|
+
referrer
|
|
656
|
+
}))
|
|
657
|
+
}
|
|
644
658
|
|
|
645
659
|
require.main = module._main
|
|
646
660
|
require.cache = this._cache
|
|
647
661
|
require.resolve = resolve
|
|
648
|
-
require.addon =
|
|
662
|
+
require.addon = addon
|
|
663
|
+
|
|
664
|
+
module._exports = {}
|
|
649
665
|
|
|
650
666
|
binding.createFunction(module._filename, ['require', 'module', 'exports', '__filename', '__dirname'], source, 0)(
|
|
651
667
|
require,
|
|
@@ -694,7 +710,7 @@ Module._extensions['.bare'] = function (module, source, referrer, protocol, impo
|
|
|
694
710
|
module._protocol = protocol
|
|
695
711
|
module._imports = imports
|
|
696
712
|
|
|
697
|
-
module._exports =
|
|
713
|
+
module._exports = Bare.Addon.load(module._filename)
|
|
698
714
|
}
|
|
699
715
|
|
|
700
716
|
Module._extensions['.node'] = function (module, source, referrer, protocol, imports) {
|
|
@@ -702,7 +718,7 @@ Module._extensions['.node'] = function (module, source, referrer, protocol, impo
|
|
|
702
718
|
module._protocol = protocol
|
|
703
719
|
module._imports = imports
|
|
704
720
|
|
|
705
|
-
module._exports =
|
|
721
|
+
module._exports = Bare.Addon.load(module._filename)
|
|
706
722
|
}
|
|
707
723
|
|
|
708
724
|
Module._extensions['.bundle'] = function (module, source, referrer, protocol, imports) {
|
package/package.json
CHANGED
|
Binary file
|