mirror of
https://github.com/nodejs/node.git
synced 2026-10-28 18:25:13 +08:00
deps: upgrade to cjs-module-lexer@1.0.0
PR-URL: https://github.com/nodejs/node/pull/35928 Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Bradley Farias <bradley.meck@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com>
This commit is contained in:
1 parent
b600b9a903
commit
a5f99b8d20
8 files changed
+85
-39
No files matched your search
Vendored
+7
@@ -1,3 +1,10 @@
|
||||
1.0.0
|
||||
- Unsafe getter tracking (https://github.com/guybedford/cjs-module-lexer/pull/29)
|
||||
|
||||
0.6.0
|
||||
- API-only breaking change: Unify JS and Wasm interfaces (https://github.com/guybedford/cjs-module-lexer/pull/27)
|
||||
- Add type definitions (https://github.com/guybedford/cjs-module-lexer/pull/28)
|
||||
|
||||
0.5.2
|
||||
- Support named getter functions (https://github.com/guybedford/cjs-module-lexer/pull/26)
|
||||
|
||||
|
||||
Vendored
+49
-23
@@ -19,7 +19,9 @@ npm install cjs-module-lexer
|
||||
For use in CommonJS:
|
||||
|
||||
```js
|
||||
const parse = require('cjs-module-lexer');
|
||||
const { parse } = require('cjs-module-lexer');
|
||||
|
||||
// `init` return a promise for parity with the ESM API, but you do not have to call it
|
||||
|
||||
const { exports, reexports } = parse(`
|
||||
// named exports detection
|
||||
@@ -84,7 +86,9 @@ EXPORTS_SPREAD: `...` (IDENTIFIER | REQUIRE)
|
||||
|
||||
EXPORTS_MEMBER: EXPORTS_DOT_ASSIGN | EXPORTS_LITERAL_COMPUTED_ASSIGN
|
||||
|
||||
EXPORTS_DEFINE: `Object` `.` `defineProperty `(` IDENTIFIER_STRING `, {`
|
||||
EXPORTS_DEFINE: `Object` `.` `defineProperty `(` EXPORTS_IDENFITIER `,` IDENTIFIER_STRING
|
||||
|
||||
EXPORTS_DEFINE_VALUE: EXPORTS_DEFINE `, {`
|
||||
(`enumerable: true,`)?
|
||||
(
|
||||
`value:` |
|
||||
@@ -119,7 +123,9 @@ EXPORT_STAR_LIB: `Object.keys(` IDENTIFIER$1 `).forEach(function (` IDENTIFIER$2
|
||||
|
||||
Spacing between tokens is taken to be any ECMA-262 whitespace, ECMA-262 block comment or ECMA-262 line comment.
|
||||
|
||||
* The returned export names are taken to be the combination of the `IDENTIFIER` and `IDENTIFIER_STRING` slots for all `EXPORTS_MEMBER`, `EXPORTS_LITERAL` and `EXPORTS_DEFINE` matches.
|
||||
* The returned export names are taken to be the combination of:
|
||||
1. All `IDENTIFIER` and `IDENTIFIER_STRING` slots for `EXPORTS_MEMBER` and `EXPORTS_LITERAL` matches.
|
||||
2. The first `IDENTIFIER_STRING` slot for all `EXPORTS_DEFINE_VALUE` matches where that same string is not an `EXPORTS_DEFINE` match that is not also an `EXPORTS_DEFINE_VALUE` match.
|
||||
* The reexport specifiers are taken to be the the combination of:
|
||||
1. The `REQUIRE` matches of the last matched of either `MODULE_EXPORTS_ASSIGN` or `EXPORTS_LITERAL`.
|
||||
2. All _top-level_ `EXPORT_STAR` `REQUIRE` matches and `EXPORTS_ASSIGN` matches whose `IDENTIFIER` also matches the first `IDENTIFIER` in `EXPORT_STAR_LIB`.
|
||||
@@ -160,6 +166,8 @@ It will in turn underclassify in cases where the identifiers are renamed:
|
||||
})(exports);
|
||||
```
|
||||
|
||||
#### Getter Exports Parsing
|
||||
|
||||
`Object.defineProperty` is detected for specifically value and getter forms returning an identifier or member expression:
|
||||
|
||||
```js
|
||||
@@ -186,6 +194,24 @@ Object.defineProperty(exports, 'd', { value: 'd' });
|
||||
Object.defineProperty(exports, '__esModule', { value: true });
|
||||
```
|
||||
|
||||
To avoid matching getters that have side effects, any getter for an export name that does not support the forms above will
|
||||
opt-out of the getter matching:
|
||||
|
||||
```js
|
||||
// DETECTS: NO EXPORTS
|
||||
Object.defineProperty(exports, 'a', {
|
||||
value: 'no problem'
|
||||
});
|
||||
|
||||
if (false) {
|
||||
Object.defineProperty(module.exports, 'a', {
|
||||
get () {
|
||||
return dynamic();
|
||||
}
|
||||
})
|
||||
}
|
||||
```
|
||||
|
||||
Alternative object definition structures or getter function bodies are not detected:
|
||||
|
||||
```js
|
||||
@@ -335,63 +361,63 @@ JS Build:
|
||||
|
||||
```
|
||||
Module load time
|
||||
> 5ms
|
||||
> 4ms
|
||||
Cold Run, All Samples
|
||||
test/samples/*.js (3635 KiB)
|
||||
> 323ms
|
||||
> 299ms
|
||||
|
||||
Warm Runs (average of 25 runs)
|
||||
test/samples/angular.js (1410 KiB)
|
||||
> 14.84ms
|
||||
> 13.96ms
|
||||
test/samples/angular.min.js (303 KiB)
|
||||
> 4.8ms
|
||||
> 4.72ms
|
||||
test/samples/d3.js (553 KiB)
|
||||
> 7.84ms
|
||||
> 6.76ms
|
||||
test/samples/d3.min.js (250 KiB)
|
||||
> 4ms
|
||||
test/samples/magic-string.js (34 KiB)
|
||||
> 0.72ms
|
||||
> 0.64ms
|
||||
test/samples/magic-string.min.js (20 KiB)
|
||||
> 0.4ms
|
||||
> 0ms
|
||||
test/samples/rollup.js (698 KiB)
|
||||
> 9.32ms
|
||||
> 8.48ms
|
||||
test/samples/rollup.min.js (367 KiB)
|
||||
> 6.52ms
|
||||
> 5.36ms
|
||||
|
||||
Warm Runs, All Samples (average of 25 runs)
|
||||
test/samples/*.js (3635 KiB)
|
||||
> 44ms
|
||||
> 40.28ms
|
||||
```
|
||||
|
||||
Wasm Build:
|
||||
```
|
||||
Module load time
|
||||
> 11ms
|
||||
> 10ms
|
||||
Cold Run, All Samples
|
||||
test/samples/*.js (3635 KiB)
|
||||
> 42ms
|
||||
> 43ms
|
||||
|
||||
Warm Runs (average of 25 runs)
|
||||
test/samples/angular.js (1410 KiB)
|
||||
> 9.92ms
|
||||
> 9.32ms
|
||||
test/samples/angular.min.js (303 KiB)
|
||||
> 3.2ms
|
||||
> 3.16ms
|
||||
test/samples/d3.js (553 KiB)
|
||||
> 5.2ms
|
||||
> 5ms
|
||||
test/samples/d3.min.js (250 KiB)
|
||||
> 2.52ms
|
||||
> 2.32ms
|
||||
test/samples/magic-string.js (34 KiB)
|
||||
> 0.16ms
|
||||
test/samples/magic-string.min.js (20 KiB)
|
||||
> 0.04ms
|
||||
> 0ms
|
||||
test/samples/rollup.js (698 KiB)
|
||||
> 6.44ms
|
||||
> 6.28ms
|
||||
test/samples/rollup.min.js (367 KiB)
|
||||
> 3.96ms
|
||||
> 3.6ms
|
||||
|
||||
Warm Runs, All Samples (average of 25 runs)
|
||||
test/samples/*.js (3635 KiB)
|
||||
> 30.48ms
|
||||
> 27.76ms
|
||||
```
|
||||
|
||||
### Wasm Build Steps
|
||||
|
||||
Vendored
+1
-1
@@ -1 +1 @@
|
||||
"use strict";exports.parse=parse;exports.init=init;const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,N=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;N>0&&Q.memory.grow(Math.ceil(N/65536));const k=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,k,D)),!Q.parseCJS(k,g.length,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,o=new Set;for(;Q.rre();)o.add(g.slice(Q.res(),Q.ree()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||w.add(B)}return{exports:[...w],reexports:[...o]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="AGFzbQEAAAABhAEPYAJ/fwBgAABgAX8Bf2AAAX9gBX9/f39/AX9gAX8AYAZ/f39/f38Bf2AIf39/f39/f38Bf2AHf39/f39/fwF/YAN/f38Bf2AOf39/f39/f39/f39/f38Bf2AKf39/f39/f39/fwF/YAt/f39/f39/f39/fwF/YAR/f39/AX9gAn9/AX8DPTwCAwMDAwMDAwAAAQQCAgUGBQEBAQICAgIBAQEBBQEBBwECCAMCAgIJBAIBCgILDAYNCA4HAgICAgICAwkEBQFwAQQEBQMBAAEGDwJ/AUGwmAILfwBBsJgCCwdNCwZtZW1vcnkCAAJzYQAAAWUAAQJlcwACAmVlAAMDcmVzAAQDcmVlAAUCcmUABgNycmUABwhwYXJzZUNKUwALC19faGVhcF9iYXNlAwEJCQEAQQELAwgJCgqElgE8YAEBf0EAKAKYHyIBIABBAXRqIgBBADsBAEEAIABBAmoiADYCyB9BACAANgLMH0EAQQA2ArAfQQBBADYCuB9BAEEANgK0H0EAQQA2ArwfQQBBADYCxB9BAEEANgLAHyABCwgAQQAoAtAfCxUAQQAoArQfKAIAQQAoApgfa0EBdQsVAEEAKAK0HygCBEEAKAKYH2tBAXULFQBBACgCwB8oAgBBACgCmB9rQQF1CxUAQQAoAsAfKAIEQQAoApgfa0EBdQslAQF/QQBBACgCtB8iAEEIakGwHyAAGygCACIANgK0HyAAQQBHCyUBAX9BAEEAKALAHyIAQQhqQbwfIAAbKAIAIgA2AsAfIABBAEcLSAEBf0EAKAK4HyICQQhqQbAfIAIbQQAoAswfIgI2AgBBACACNgK4H0EAIAJBDGo2AswfIAJBADYCCCACIAE2AgQgAiAANgIAC0gBAX9BACgCxB8iAkEIakG8HyACG0EAKALMHyICNgIAQQAgAjYCxB9BACACQQxqNgLMHyACQQA2AgggAiABNgIEIAIgADYCAAsSAEEAQQA2ArwfQQBBADYCxB8L5A0BAX9BACABNgLgP0EAIAA2ApgfAkAgAkUNAEEAIAI2ApwfCwJAIANFDQBBACADNgKgHwtBAEH//wM7Aeg/QQBBgMAANgKAYEEAQZDgADYCkKABQQBB4B82ApSgAUEAQQAoAqgfNgLsP0EAIABBfmoiAjYCnKABQQAgAiABQQF0aiIDNgKgoAFBAEEAOwHmP0EAQQA7AeQ/QQBBADoA8D9BAEEANgLQH0EAQQA6ANQfQQBBADoAmKABAkACQCAALwEAQSNHDQAgAC8BAkEhRw0AQQEhAiABQQJGDQFBACAAQQJqNgKcoAEgAEEEaiEAAkADQCAAIgJBfmogA08NASACQQJqIQAgAi8BAEF2aiIBQQNLDQAgAQ4EAQAAAQELC0EAIAI2ApygAQsDQEEAIAJBAmoiADYCnKABAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAiADTw0AAkAgAC8BACIBQXdqIgNBF0sNAEEBIAN0QZ+AgARxDRkLAkACQAJAQQAvAeY/IgMNACABQaF/aiIFQQ5NDQQgAUFZaiIFQQhNDQUgAUGFf2oiBUECTQ0GIAFBIkYNAiABQc8ARg0BIAFB8gBHDRYCQEEAEAxFDQAgABANRQ0AIAIQDgtBAEEAKAKcoAE2Auw/DBsLIAFBWWoiBUEITQ0GIAFBoH9qIgVBBU0NByABQYV/aiIFQQJNDQggAUEiRg0BIAFBzwBGDQAgAUHtAEcNFQwUCyACQQRqQeIAQeoAQeUAQeMAQfQAEA9FDRQgABANRQ0UIANFEBAMFAsQEQwTC0EALwHoP0H//wNGQQAvAeY/RXFBAC0A1B9FcQ8LIAUODxIFEREOEQ8RERETEREREBILIAUOCQYMCBAQEBAQBQYLIAUOAwkPBwkLIAUOCQQKCQ4ODg4OAwQLIAUOBgENDQoNCwELIAUOAwYMAwYLQQAvAeg/Qf7/A0YNAwwECwJAAkAgAi8BBCICQSpGDQAgAkEvRw0BEBIMEQsQEwwQCwJAAkACQAJAQQAoAuw/IgAvAQAiAhAURQ0AIAJBVWoiA0EDSw0CAkACQAJAIAMOBAEFAgABCyAAQX5qLwEAQVBqQf//A3FBCkkNAwwECyAAQX5qLwEAQStGDQIMAwsgAEF+ai8BAEEtRg0BDAILAkACQCACQf0ARg0AIAJBL0YNASACQSlHDQJBACgCkKABIANBAnRqKAIAEBVFDQIMAwtBACgCkKABIANBAnRqKAIAEBYNAiADQbCgAWotAABFDQEMAgtBAC0A8D8NAQsgABAXIQMgAkUNAEEBIQIgA0UNAQsQGEEAIQILQQAgAjoA8D8MCgsQGQwJC0EAIANBf2oiADsB5j8CQCADQQAvAeg/IgJHDQBBAEEALwHkP0F/aiICOwHkP0EAQQAoAoBgIAJB//8DcUEBdGovAQA7Aeg/DAILIAJB//8DRg0IIABB//8DcSACTw0ICxAaQQAhAgwOCxAbDAYLIANBsKABakEALQCYoAE6AABBACADQQFqOwHmP0EAKAKQoAEgA0ECdGpBACgC7D82AgBBAEEAOgCYoAEMBQtBACADQX9qOwHmPwwEC0EAIANBAWo7AeY/QQAoApCgASADQQJ0akEAKALsPzYCAAwDCyAAEA1FDQIgAi8BBEHsAEcNAiACLwEGQeEARw0CIAIvAQhB8wBHDQIgAi8BCkHzAEcNAgJAAkAgAi8BDCIDQXdqIgJBF0sNAEEBIAJ0QZ+AgARxDQELIANBoAFHDQMLQQBBAToAmKABDAILIAJBBGpB+ABB8ABB7wBB8gBB9AAQD0UNASAAEA1FDQECQCACLwEOQfMARw0AQQAQHAwCCyADDQEQHQwBCyACQQRqQe8AQeQAQfUAQewAQeUAEA9FDQAgABANRQ0AEB4LQQBBACgCnKABNgLsPwwECyACQQRqQd8AQeUAQfgAQfAAQe8AQfIAQfQAEB9FDQICQCAAEA0NACACLwEAQS5HDQMLQQAgAkESaiIANgKcoAECQCACLwESIgNB0wBHDQAgAi8BFEH0AEcNAyACLwEWQeEARw0DIAIvARhB8gBHDQNBACACQRpqIgA2ApygASACLwEaIQMLIANB//8DcUEoRw0CQQAoApCgAUEAKALsPzYCAEEAQQE7AeY/QQBBACgCnKABIgJBAmoiADYCnKABIAIvAQJB8gBHDQJBAhAMGgwBCyACQQRqQe0AQfAAQe8AQfIAQfQAEA9FDQEgABANRQ0BECALQQAoApygASEAC0EAIAA2Auw/C0EAKAKgoAEhA0EAKAKcoAEhAgwACwsgAgvrAgEEf0EAIQECQEEAKAKcoAEiAkECakHlAEHxAEH1AEHpAEHyAEHlABAiRQ0AQQAhAUEAIAJBDmo2ApygAQJAECNBKEcNAEEAQQAoApygAUECajYCnKABECMhA0EAKAKcoAFBAmohBAJAIANBIkYNACADQSdHDQEQGUEAQQAoApygASIDQQJqNgKcoAEQI0EpRw0BAkAgAEF/aiIBQQFLDQACQAJAIAEOAgEAAQsgBCADQQAoAqAfEQAAQQEPCyAEIANBACgCoB8RAABBAQ8LQQAoApSgASAENgIAQQAoApSgASADNgIEQQEPCxARQQBBACgCnKABIgNBAmo2ApygARAjQSlHDQACQCAAQX9qIgFBAUsNAAJAAkAgAQ4CAQABCyAEIANBACgCoB8RAABBAQ8LIAQgA0EAKAKgHxEAAEEBDwtBACgClKABIAQ2AgBBACgClKABIAM2AgRBAQ8LQQAgAjYCnKABCyABCx0AAkBBACgCmB8gAEcNAEEBDwsgAEF+ai8BABAhC/
Line truncated
|
||||
"use strict";exports.parse=parse;exports.init=init;const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,N=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;N>0&&Q.memory.grow(Math.ceil(N/65536));const k=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,k,D)),!Q.parseCJS(k,g.length,0,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,J=new Set,H=new Set;for(;Q.rre();)J.add(g.slice(Q.res(),Q.ree()));for(;Q.ru();)H.add(g.slice(Q.us(),Q.ue()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||H.has(B)||w.add(B)}return{exports:[...w],reexports:[...J]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="AGFzbQEAAAABhAEPYAJ/fwBgAABgAX8Bf2AAAX9gBn9/f39/fwF/YAF/AGAIf39/f39/f38Bf2AHf39/f39/fwF/YAN/f38Bf2AFf39/f38Bf2AOf39/f39/f39/f39/f38Bf2AKf39/f39/f39/fwF/YAt/f39/f39/f39/fwF/YAR/f39/AX9gAn9/AX8DQUACAwMDAwMDAwMDAwAAAAEEAgIFBAUBAQECAgICAQEBAQUBAQYBAgcDAgICCAkCAQoCCwwEDQcOBgICAgICAgMIBAUBcAEFBQUDAQABBg8CfwFB0JgCC38AQdCYAgsHXA4GbWVtb3J5AgACc2EAAAFlAAECZXMAAgJlZQADA3JlcwAEA3JlZQAFAnVzAAYCdWUABwJyZQAIA3JyZQAJAnJ1AAoIcGFyc2VDSlMADwtfX2hlYXBfYmFzZQMBCQoBAEEBCwQLDA0OCsyXAUB4AQF/QQAoApgfIgEgAEEBdGoiAEEAOwEAQQAgAEECaiIANgLkH0EAIAA2AugfQQBBADYCwB9BAEEANgLIH0EAQQA2AsQfQQBBADYCzB9BAEEANgLUH0EAQQA2AtAfQQBBADYC2B9BAEEANgLgH0EAQQA2AtwfIAELCABBACgC7B8LFQBBACgCxB8oAgBBACgCmB9rQQF1CxUAQQAoAsQfKAIEQQAoApgfa0EBdQsVAEEAKALQHygCAEEAKAKYH2tBAXULFQBBACgC0B8oAgRBACgCmB9rQQF1CxUAQQAoAtwfKAIAQQAoApgfa0EBdQsVAEEAKALcHygCBEEAKAKYH2tBAXULJQEBf0EAQQAoAsQfIgBBCGpBwB8gABsoAgAiADYCxB8gAEEARwslAQF/QQBBACgC0B8iAEEIakHMHyAAGygCACIANgLQHyAAQQBHCyUBAX9BAEEAKALcHyIAQQhqQdgfIAAbKAIAIgA2AtwfIABBAEcLSAEBf0EAKALIHyICQQhqQcAfIAIbQQAoAugfIgI2AgBBACACNgLIH0EAIAJBDGo2AugfIAJBADYCCCACIAE2AgQgAiAANgIAC0gBAX9BACgC1B8iAkEIakHMHyACG0EAKALoHyICNgIAQQAgAjYC1B9BACACQQxqNgLoHyACQQA2AgggAiABNgIEIAIgADYCAAtIAQF/QQAoAuAfIgJBCGpB2B8gAhtBACgC6B8iAjYCAEEAIAI2AuAfQQAgAkEMajYC6B8gAkEANgIIIAIgATYCBCACIAA2AgALEgBBAEEANgLMH0EAQQA2AtQfC/INAEEAIAE2AoBAQQAgADYCmB8CQCACRQ0AQQAgAjYCnB8LAkAgA0UNAEEAIAM2AqAfCwJAIARFDQBBACAENgKkHwtBAEH//wM7AYhAQQBBoMAANgKgYEEAQbDgADYCsKABQQBBgCA2ArSgAUEAQQAoAqwfNgKMQEEAIABBfmoiAjYCvKABQQAgAiABQQF0aiIDNgLAoAFBAEEAOwGGQEEAQQA7AYRAQQBBADoAkEBBAEEANgLsH0EAQQA6APAfQQBBADoAuKABAkACQCAALwEAQSNHDQAgAC8BAkEhRw0AQQEhAiABQQJGDQFBACAAQQJqNgK8oAEgAEEEaiEAAkADQCAAIgJBfmogA08NASACQQJqIQAgAi8BAEF2aiIBQQNLDQAgAQ4EAQAAAQELC0EAIAI2ArygAQsDQEEAIAJBAmoiADYCvKABAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAiADTw0AAkAgAC8BACIBQXdqIgNBF0sNAEEBIAN0QZ+AgARxDRkLAkACQAJAQQAvAYZAIgMNACABQaF/aiIEQQ5NDQQgAUFZaiIEQQhNDQUgAUGFf2oiBEECTQ0GIAFBIkYNAiABQc8ARg0BIAFB8gBHDRYCQEEAEBBFDQAgABARRQ0AIAIQEgtBAEEAKAK8oAE2AoxADBsLIAFBWWoiBEEITQ0GIAFBoH9qIgRBBU0NByABQYV/aiIEQQJNDQggAUEiRg0BIAFBzwBGDQAgAUHtAEcNFQwUCyACQQRqQeIAQeoAQeUAQeMAQfQAEBNFDRQgABARRQ0UIANFEBQMFAsQFQwTC0EALwGIQEH//wNGQQAvAYZARXFBAC0A8B9FcQ8LIAQODxIFEREOEQ8RERETEREREBILIAQOCQYMCBAQEBAQBQYLIAQOAwkPBwkLIAQOCQQKCQ4ODg4OAwQLIAQOBgENDQoNCwELIAQOAwYMAwYLQQAvAYhAQf7/A0YNAwwECwJAAkAgAi8BBCICQSpGDQAgAkEvRw0BEBYMEQsQFwwQCwJAAkACQAJAQQAoAoxAIgAvAQAiAhAYRQ0AIAJBVWoiA0EDSw0CAkACQAJAIAMOBAEFAgABCyAAQX5qLwEAQVBqQf//A3FBCkkNAwwECyAAQX5qLwEAQStGDQIMAwsgAEF+ai8BAEEtRg0BDAILAkACQCACQf0ARg0AIAJBL0YNASACQSlHDQJBACgCsKABIANBAnRqKAIAEBlFDQIMAwtBACgCsKABIANBAnRqKAIAEBoNAiADQdCgAWotAABFDQEMAgtBAC0AkEANAQsgABAbIQMgAkUNAEEBIQIgA0UNAQsQHEEAIQILQQAgAjoAkEAMCgsQHQwJC0EAIANBf2oiADsBhkACQCADQQAvAYhAIgJHDQBBAEEALwGEQEF/aiICOwGEQEEAQQAoAqBgIAJB//8DcUEBdGovAQA7AYhADAILIAJB//8DRg0IIABB//8DcSACTw0ICxAeQQAhAgwOCxAfDAYLIANB0KABakEALQC4oAE6AABBACADQQFqOwGGQEEAKAKwoAEgA0ECdGpBACgCjEA2AgBBAEEAOgC4oAEMBQtBACADQX9qOwGGQAwEC0EAIANBAWo7AYZAQQAoArCgASADQQJ0akEAKAKMQDYCAAwDCyAAEBFFDQIgAi8BBEHsAEcNAiACLwEGQeEARw0CIAIvAQhB8wBHDQIgAi8BCkHzAEcNAgJAAkAgAi8BDCIDQXdqIgJBF0sNAEEBIAJ0QZ+AgARxDQELIANBoAFHDQMLQQBBAToAuKABDAILIAJBBGpB+ABB8ABB7wBB8gBB9AAQE0UNASAAEBFFDQECQCACLwEOQfMARw0AQQAQIAwCCyADDQEQIQwBCyACQQRqQe8AQeQAQfUAQewAQeUAEBNFDQAgABARRQ0AECILQQBBACgCvKABNgKMQAwECyACQQRqQd8AQeUAQfgAQfAAQe8AQfIAQfQAECNFDQICQCAAEBENACACLwEAQS5HDQMLQQAgAkESaiIANgK8oAECQCACLwESIgNB0wBHDQAgAi8BFEH0AEcNAyACLwEWQeEARw0DIAIvARhB8gBHDQNBACACQRpqIgA2ArygASACLwEaIQMLIANB//8DcUEoRw0CQQAoArCgAUEAKAKMQDYCAEEAQQE7AYZAQQBBACgCvKABIgJBAmoiADYCvKABIAIvAQJB8gBHDQJBAhAQGgwBCyACQQRqQe0AQfAAQe8AQfIAQfQAEBNFDQEgABARRQ0BECQLQQAoArygASEAC0EAIAA2AoxAC0EAKALAoAEhA0EAKAK8oAEhAgwACwsgAgvrAgEEf0EAIQECQEEAKAK8oAEiAkECakHlAEHxAEH1AEHpAEHyAEHlABAmRQ0AQQAhAUEAIAJBDmo2ArygAQJAECdBKEcNAEEAQQAoArygAUECajYCvKABECchA0EAKAK8oAFBAmohBAJAIANBIkYNACADQSdHDQEQHUEAQQAoArygASIDQ
Line truncated
|
||||
Vendored
+2
-2
@@ -1,2 +1,2 @@
|
||||
/* cjs-module-lexer 0.5.2 */
|
||||
const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];export function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,N=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;N>0&&Q.memory.grow(Math.ceil(N/65536));const k=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,k,D)),!Q.parseCJS(k,g.length,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,o=new Set;for(;Q.rre();)o.add(g.slice(Q.res(),Q.ree()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||w.add(B)}return{exports:[...w],reexports:[...o]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;export function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="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
Line truncated
|
||||
/* cjs-module-lexer 1.0.0 */
|
||||
const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];export function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,N=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;N>0&&Q.memory.grow(Math.ceil(N/65536));const k=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,k,D)),!Q.parseCJS(k,g.length,0,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,J=new Set,H=new Set;for(;Q.rre();)J.add(g.slice(Q.res(),Q.ree()));for(;Q.ru();)H.add(g.slice(Q.us(),Q.ue()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||H.has(B)||w.add(B)}return{exports:[...w],reexports:[...J]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;export function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="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
Line truncated
|
||||
Vendored
+20
-9
@@ -11,6 +11,7 @@ let openTokenDepth,
|
||||
starExportMap,
|
||||
lastStarExportSpecifier,
|
||||
_exports,
|
||||
unsafeGetters,
|
||||
reexports;
|
||||
|
||||
function resetState () {
|
||||
@@ -27,6 +28,7 @@ function resetState () {
|
||||
lastStarExportSpecifier = null;
|
||||
|
||||
_exports = new Set();
|
||||
unsafeGetters = new Set();
|
||||
reexports = new Set();
|
||||
}
|
||||
|
||||
@@ -37,7 +39,7 @@ const ExportStar = 2;
|
||||
|
||||
const strictReserved = new Set(['implements', 'interface', 'let', 'package', 'private', 'protected', 'public', 'static', 'yield', 'enum']);
|
||||
|
||||
module.exports = function parseCJS (source, name = '@') {
|
||||
function parseCJS (source, name = '@') {
|
||||
resetState();
|
||||
try {
|
||||
parseSource(source);
|
||||
@@ -47,7 +49,7 @@ module.exports = function parseCJS (source, name = '@') {
|
||||
e.loc = pos;
|
||||
throw e;
|
||||
}
|
||||
const result = { exports: [..._exports], reexports: [...reexports] };
|
||||
const result = { exports: [..._exports].filter(expt => !unsafeGetters.has(expt)), reexports: [...reexports] };
|
||||
resetState();
|
||||
return result;
|
||||
}
|
||||
@@ -260,6 +262,7 @@ function tryParseObjectDefineOrKeys (keys) {
|
||||
pos++;
|
||||
ch = commentWhitespace();
|
||||
if (ch === 100/*d*/ && source.startsWith('efineProperty', pos + 1)) {
|
||||
let expt;
|
||||
while (true) {
|
||||
pos += 14;
|
||||
revertPos = pos - 1;
|
||||
@@ -276,7 +279,7 @@ function tryParseObjectDefineOrKeys (keys) {
|
||||
let quot = ch;
|
||||
const exportPos = ++pos;
|
||||
if (!identifier() || source.charCodeAt(pos) !== quot) break;
|
||||
const expt = source.slice(exportPos, pos);
|
||||
expt = source.slice(exportPos, pos);
|
||||
pos++;
|
||||
ch = commentWhitespace();
|
||||
if (ch !== 44/*,*/) break;
|
||||
@@ -304,9 +307,9 @@ function tryParseObjectDefineOrKeys (keys) {
|
||||
pos += 5;
|
||||
ch = commentWhitespace();
|
||||
if (ch !== 58/*:*/) break;
|
||||
pos++;
|
||||
addExport(expt);
|
||||
break;
|
||||
pos = revertPos;
|
||||
return;
|
||||
}
|
||||
else if (ch === 103/*g*/) {
|
||||
if (!source.startsWith('et', pos + 1)) break;
|
||||
@@ -372,6 +375,9 @@ function tryParseObjectDefineOrKeys (keys) {
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (expt) {
|
||||
unsafeGetters.add(expt);
|
||||
}
|
||||
}
|
||||
else if (keys && ch === 107/*k*/ && source.startsWith('eys', pos + 1)) {
|
||||
while (true) {
|
||||
@@ -899,7 +905,7 @@ function tryParseLiteralExports () {
|
||||
|
||||
// --- Extracted from AcornJS ---
|
||||
//(https://github.com/acornjs/acorn/blob/master/acorn/src/identifier.js#L23
|
||||
//
|
||||
//
|
||||
// MIT License
|
||||
|
||||
// Copyright (C) 2012-2018 by various contributors (see AUTHORS)
|
||||
@@ -1034,7 +1040,7 @@ function throwIfImportStatement () {
|
||||
case 46/*.*/:
|
||||
throw new Error('Unexpected import.meta in CJS module.');
|
||||
return;
|
||||
|
||||
|
||||
default:
|
||||
// no space after "import" -> not an import keyword
|
||||
if (pos === startPos + 6)
|
||||
@@ -1203,7 +1209,7 @@ function readPrecedingKeyword (pos, match) {
|
||||
}
|
||||
|
||||
function readPrecedingKeyword1 (pos, ch) {
|
||||
return source.charCodeAt(pos) === ch && (pos === 0 || isBrOrWsOrPunctuatorNotDot(source.charCodeAt(pos - 1)));
|
||||
return source.charCodeAt(pos) === ch && (pos === 0 || isBrOrWsOrPunctuatorNotDot(source.charCodeAt(pos - 1)));
|
||||
}
|
||||
|
||||
// Detects one of case, debugger, delete, do, else, in, instanceof, new,
|
||||
@@ -1274,7 +1280,7 @@ function isExpressionKeyword (pos) {
|
||||
// throw
|
||||
return readPrecedingKeyword(pos - 2, 'thr');
|
||||
default:
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
@@ -1320,3 +1326,8 @@ function isExpressionTerminator (curPos) {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
const initPromise = Promise.resolve();
|
||||
|
||||
module.exports.init = () => initPromise;
|
||||
module.exports.parse = parseCJS;
|
||||
Vendored
+4
-2
@@ -1,12 +1,13 @@
|
||||
{
|
||||
"name": "cjs-module-lexer",
|
||||
"version": "0.5.2",
|
||||
"version": "1.0.0",
|
||||
"description": "Lexes CommonJS modules, returning their named exports metadata",
|
||||
"main": "lexer.js",
|
||||
"exports": {
|
||||
"import": "./dist/lexer.mjs",
|
||||
"default": "./lexer.js"
|
||||
},
|
||||
"types": "lexer.d.ts",
|
||||
"scripts": {
|
||||
"test-js": "mocha -b -u tdd test/*.js",
|
||||
"test-wasm": "WASM=1 mocha -b -u tdd test/*.js",
|
||||
@@ -28,7 +29,8 @@
|
||||
"terser": "^4.1.4"
|
||||
},
|
||||
"files": [
|
||||
"dist"
|
||||
"dist",
|
||||
"lexer.d.ts"
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
||||
+1
-1
@@ -1287,7 +1287,7 @@ success!
|
||||
[`transformSource` hook]: #esm_transformsource_source_context_defaulttransformsource
|
||||
[`string`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String
|
||||
[`util.TextDecoder`]: util.md#util_class_util_textdecoder
|
||||
[cjs-module-lexer]: https://github.com/guybedford/cjs-module-lexer/tree/0.5.2
|
||||
[cjs-module-lexer]: https://github.com/guybedford/cjs-module-lexer/tree/1.0.0
|
||||
[special scheme]: https://url.spec.whatwg.org/#special-scheme
|
||||
[the official standard format]: https://tc39.github.io/ecma262/#sec-modules
|
||||
[transpiler loader example]: #esm_transpiler_loader
|
||||
@@ -63,7 +63,7 @@ const { emitWarningSync } = require('internal/process/warning');
|
||||
let cjsParse;
|
||||
async function initCJSParse() {
|
||||
if (typeof WebAssembly === 'undefined') {
|
||||
cjsParse = require('internal/deps/cjs-module-lexer/lexer');
|
||||
cjsParse = require('internal/deps/cjs-module-lexer/lexer').parse;
|
||||
} else {
|
||||
const { parse, init } =
|
||||
require('internal/deps/cjs-module-lexer/dist/lexer');
|
||||
|
||||
Reference in new issue
Block a user