cjs-module-lexer
Advanced tools
Comparing version 0.4.2 to 0.4.3
@@ -1,1 +0,1 @@ | ||
"use strict";exports.parse=parse;exports.init=init;const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let B;const Q=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse(I,C="@"){if(!B)throw new Error("Not initialized");const k=I.length+1,S=(B.__heap_base.value||B.__heap_base)+4*k-B.memory.buffer.byteLength;S>0&&B.memory.grow(Math.ceil(S/65536));const a=B.sa(k);if((Q?g:E)(I,new Uint16Array(B.memory.buffer,a,k)),!B.parseCJS(a,I.length,0,0))throw Object.assign(new Error(`Parse error ${C}${B.e()}:${I.slice(0,B.e()).split("\n").length}:${B.e()-I.lastIndexOf("\n",B.e()-1)}`),{idx:B.e()});let D=new Set,w=new Set;for(;B.rre();)w.add(I.slice(B.res(),B.ree()));for(;B.re();){let Q=I.slice(B.es(),B.ee());A.has(Q)||D.add(Q)}return{exports:[...D],reexports:[...w]}}function E(A,B){const Q=A.length;let E=0;for(;E<Q;){const Q=A.charCodeAt(E);B[E++]=(255&Q)<<8|Q>>>8}}function g(A,B){const Q=A.length;let E=0;for(;E<Q;)B[E]=A.charCodeAt(E++)}let I;function init(){return I||(I=(async()=>{const A=await WebAssembly.compile((Q="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","function"==typeof atob?Uint8Array.from(atob(Q),A=>A.charCodeAt(0)):Buffer.from(Q,"base64")));var Q;const{exports:E}=await WebAssembly.instantiate(A);B=E})())} | ||
"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,k=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;k>0&&Q.memory.grow(Math.ceil(k/65536));const N=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,N,D)),!Q.parseCJS(N,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="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I0HbAEcNA0EAQQAoApygAUECajYCnKABECMaQQAoApygASIAIAQgAxA7DQNBACAAIAZBAXRqNgKcoAEQI0HdAEcNA0EAQQAoApygAUECajYCnKABECNBPUcNA0EAQQAoApygAUECajYCnKABECMaQQAoApygASIAIAIgBRA7DQNBACAAIAdBAXRqNgKcoAEQI0HbAEcNA0EAQQAoApygAUECajYCnKABECMaQQAoApygASIAIAQgAxA7DQNBACAAIAZBAXRqNgKcoAEQI0HdAEcNA0EAQQAoApygAUECajYCnKABECMiAEE7Rw0CQQBBACgCnKABQQJqNgKcoAEMAQsgAEHPAEcNAkEAKAKcoAEiAEECakHiAEHqAEHlAEHjAEH0ABAPRQ0CQQAgAEEMajYCnKABECNBLkcNAkEAQQAoApygAUECajYCnKABECNB5ABHDQJBACgCnKABIgBBAmpB5QBB5gBB6QBB7gBB5QBB0ABB8gBB7wBB8ABB5QBB8gBB9ABB+QAQK0UNAkEAIABBHGo2ApygARAjQShHDQJBAEEAKAKcoAFBAmo2ApygARAjECxFDQIQI0EsRw0CQQBBACgCnKABQQJqNgKcoAEQIxpBACgCnKABIgAgBCADEDsNAkEAIAAgBkEBdGo2ApygARAjQSxHDQJBAEEAKAKcoAFBAmo2ApygARAjQfsARw0CQQBBACgCnKABQQJqNgKcoAEQI0HlAEcNAkEAKAKcoAEiAEECakHuAEH1AEHtAEHlAEHyAEHhAEHiAEHsAEHlABAuRQ0CQQAgAEEUajYCnKABECNBOkcNAkEAQQAoApygAUECajYCnKABECMhCEEAKAKcoAEhAAJAIAhB9ABGDQAgAC8BAkHyAEcNAyAALwEEQfUARw0DIAAvAQZB5QBHDQMLQQAgAEEIajYCnKABECNBLEcNAkEAQQAoApygAUECajYCnKABECNB5wBHDQJBACgCnKABIgAvAQJB5QBHDQIgAC8BBEH0AEcNAkEAIABBBmo2ApygARAjQTpHDQJBAEEAKAKcoAFBAmo2ApygARAjQeYARw0CQQAoApygASIAQQJqQfUAQe4AQeMAQfQAQekAQe8AQe4AEB9FDQJBACAAQRBqNgKcoAEQI0EoRw0CQQBBACgCnKABQQJqNgKcoAEQI0EpRw0CQQBBACgCnKAB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fGovAQAQISEDCyADC2YBA39BACEFAkAgAEF6aiIGQQAoApgfIgdJDQAgBi8BACABRw0AIABBfGovAQAgAkcNACAAQX5qLwEAIANHDQAgAC8BACAERw0AAkAgBiAHRw0AQQEPCyAAQXhqLwEAECEhBQsgBQuFAQECfyAAEDgiABAmIQECQAJAIABB3ABGDQBBACECIAFFDQELQQAoApygAUECQQQgAEGAgARJG2ohAAJAA0BBACAANgKcoAEgAC8BABA4IgFFDQECQCABECVFDQAgAEECQQQgAUGAgARJG2ohAAwBCwtBACECIAFB3ABGDQELQQEhAgsgAgv2AwEEf0EAKAKcoAEiAEF+aiEBA0BBACAAQQJqNgKcoAECQAJAAkAgAEEAKAKgoAFPDQAQIyEAQQAoApygASECAkACQCAAEClFDQBBACgCnKABIQMCQAJAECMiAEE6Rw0AQQBBACgCnKABQQJqNgKcoAEQIxApRQ0BQQAoApygAS8BACEACyACIANBACgCnB8RAAAMAgtBACABNgKcoAEPCwJAAkAgAEEiRg0AIABBLkYNASAAQSdHDQQLQQBBACgCnKABIgJBAmoiAzYCnKABIAIvAQIQKUUNAUEAKAKcoAEiAi8BACAARw0BQQAgAkECajYCnKABECMiAEE6Rw0BQQBBACgCnKABQQJqNgKcoAECQBAjEClFDQBBACgCnKABLwEAIQAgAyACQQAoApwfEQAADAILQQAgATYCnKABDwtBACgCnKABIgAvAQJBLkcNAiAALwEEQS5HDQJBACAAQQZqNgKcoAECQAJAAkAgAC8BBiIAQfIARw0AQQEQDCEAQQAoApygASECIAANASACLwEAIQALIABB//8DcRApDQFBACABNgKcoAEPC0EAIAJBAmo2ApygAQsQIyEACyAAQf//A3EiAEEsRg0CIABB/QBGDQBBACABNgKcoAELDwtBACABNgKcoAEPC0EAKAKcoAEhAAwACwuPAQEBf0EAIQ4CQCAALwEAIAFHDQAgAC8BAiACRw0AIAAvAQQgA0cNACAALwEGIARHDQAgAC8BCCAFRw0AIAAvAQogBkcNACAALwEMIAdHDQAgAC8BDiAIRw0AIAAvARAgCUcNACAALwESIApHDQAgAC8BFCALRw0AIAAvARYgDEcNACAALwEYIA1GIQ4LIA4L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","function"==typeof atob?Uint8Array.from(atob(B),A=>A.charCodeAt(0)):Buffer.from(B,"base64")));var B;const{exports:E}=await WebAssembly.instantiate(A);Q=E})())} |
82
lexer.js
@@ -13,3 +13,2 @@ let source, pos, end; | ||
lastStarExportSpecifier, | ||
lastExportsAssignSpecifier, | ||
_exports, | ||
@@ -30,3 +29,2 @@ reexports; | ||
lastStarExportSpecifier = null; | ||
lastExportsAssignSpecifier = null; | ||
@@ -54,4 +52,2 @@ _exports = new Set(); | ||
} | ||
if (lastExportsAssignSpecifier) | ||
reexports.add(lastExportsAssignSpecifier); | ||
const result = { exports: [..._exports], reexports: [...reexports] }; | ||
@@ -336,4 +332,4 @@ resetState(); | ||
ch = commentWhitespace(); | ||
if (ch !== 105/*i*/ || !source.startsWith('f ', pos + 1)) break; | ||
pos += 3; | ||
if (ch !== 105/*i*/ || source.charCodeAt(pos + 1) !== 102/*f*/) break; | ||
pos += 2; | ||
ch = commentWhitespace(); | ||
@@ -405,2 +401,57 @@ if (ch !== 40/*(*/) break; | ||
// `if (` IDENTIFIER$2 `in` EXPORTS_IDENTIFIER `&&` EXPORTS_IDENTIFIER `[` IDENTIFIER$2 `] ===` IDENTIFIER$1 `[` IDENTIFIER$2 `]) return` `;`? | ||
if (ch === 105/*i*/ && source.charCodeAt(pos + 1) === 102/*f*/) { | ||
pos += 2; | ||
ch = commentWhitespace(); | ||
if (ch !== 40/*(*/) break; | ||
pos++; | ||
ch = commentWhitespace(); | ||
if (!source.startsWith(it_id, pos)) break; | ||
pos += it_id.length; | ||
ch = commentWhitespace(); | ||
if (ch !== 105/*i*/ || !source.startsWith('n ', pos + 1)) break; | ||
pos += 3; | ||
ch = commentWhitespace(); | ||
if (!readExportsOrModuleDotExports(ch)) break; | ||
ch = commentWhitespace(); | ||
if (ch !== 38/*&*/ || source.charCodeAt(pos + 1) !== 38/*&*/) break; | ||
pos += 2; | ||
ch = commentWhitespace(); | ||
if (!readExportsOrModuleDotExports(ch)) break; | ||
ch = commentWhitespace(); | ||
if (ch !== 91/*[*/) break; | ||
pos++; | ||
ch = commentWhitespace(); | ||
if (!source.startsWith(it_id, pos)) break; | ||
pos += it_id.length; | ||
ch = commentWhitespace(); | ||
if (ch !== 93/*]*/) break; | ||
pos++; | ||
ch = commentWhitespace(); | ||
if (ch !== 61/*=*/ || !source.startsWith('==', pos + 1)) break; | ||
pos += 3; | ||
ch = commentWhitespace(); | ||
if (!source.startsWith(id, pos)) break; | ||
pos += id.length; | ||
ch = commentWhitespace(); | ||
if (ch !== 91/*[*/) break; | ||
pos++; | ||
ch = commentWhitespace(); | ||
if (!source.startsWith(it_id, pos)) break; | ||
pos += it_id.length; | ||
ch = commentWhitespace(); | ||
if (ch !== 93/*]*/) break; | ||
pos++; | ||
ch = commentWhitespace(); | ||
if (ch !== 41/*)*/) break; | ||
pos++; | ||
ch = commentWhitespace(); | ||
if (ch !== 114/*r*/ || !source.startsWith('eturn', pos + 1)) break; | ||
pos += 6; | ||
ch = commentWhitespace(); | ||
if (ch === 59/*;*/) | ||
pos++; | ||
ch = commentWhitespace(); | ||
} | ||
// EXPORTS_IDENTIFIER `[` IDENTIFIER$2 `] =` IDENTIFIER$1 `[` IDENTIFIER$2 `]` | ||
@@ -630,2 +681,4 @@ if (readExportsOrModuleDotExports(ch)) { | ||
if (assign) { | ||
if (reexports.size) | ||
reexports = new Set(); | ||
pos++; | ||
@@ -650,5 +703,5 @@ ch = commentWhitespace(); | ||
// require('...') | ||
const revertPos = pos; | ||
if (source.startsWith('equire', pos + 1)) { | ||
pos += 7; | ||
const revertPos = pos - 1; | ||
let ch = commentWhitespace(); | ||
@@ -666,3 +719,3 @@ if (ch === 40/*(*/) { | ||
case ExportAssign: | ||
lastExportsAssignSpecifier = source.slice(reexportStart, reexportEnd); | ||
reexports.add(source.slice(reexportStart, reexportEnd)); | ||
return true; | ||
@@ -685,3 +738,3 @@ case ExportStar: | ||
case ExportAssign: | ||
lastExportsAssignSpecifier = source.slice(reexportStart, reexportEnd); | ||
reexports.add(source.slice(reexportStart, reexportEnd)); | ||
return true; | ||
@@ -723,2 +776,13 @@ case ExportStar: | ||
} | ||
else if (ch === 46/*.*/ && source.startsWith('..', pos + 1)) { | ||
pos += 3; | ||
if (source.charCodeAt(pos) === 114/*r*/ && tryParseRequire(ExportAssign)) { | ||
pos++; | ||
} | ||
else if (!identifier()) { | ||
pos = revertPos; | ||
return; | ||
} | ||
ch = commentWhitespace(); | ||
} | ||
else if (ch === 39/*'*/ || ch === 34/*"*/) { | ||
@@ -725,0 +789,0 @@ const startPos = ++pos; |
{ | ||
"name": "cjs-module-lexer", | ||
"version": "0.4.2", | ||
"version": "0.4.3", | ||
"description": "Lexes CommonJS modules, returning their named exports metadata", | ||
@@ -17,4 +17,4 @@ "main": "lexer.js", | ||
"build-wasm": "make lib/lexer.wasm && node build.js", | ||
"prepublishOnly": "make optimize && npm run build", | ||
"footprint": "make optimize && npm run build && cat dist/lexer.js | gzip -9f | wc -c" | ||
"prepublishOnly": "make && npm run build", | ||
"footprint": "npm run build && cat dist/lexer.js | gzip -9f | wc -c" | ||
}, | ||
@@ -21,0 +21,0 @@ "author": "Guy Bedford", |
@@ -85,2 +85,4 @@ # CJS Module Lexer | ||
EXPORTS_SPREAD: `...` COMMENT_SPACE (IDENTIFIER | REQUIRE) | ||
EXPORTS_MEMBER: EXPORTS_DOT_ASSIGN | EXPORTS_LITERAL_COMPUTED_ASSIGN | ||
@@ -90,3 +92,3 @@ | ||
EXPORTS_LITERAL: MODULE_EXPORTS COMMENT_SPACE `=` COMMENT_SPACE `{` COMMENT_SPACE (EXPORTS_LITERAL_PROP COMMENT_SPACE `,` COMMENT_SPACE)+ `}` | ||
EXPORTS_LITERAL: MODULE_EXPORTS COMMENT_SPACE `=` COMMENT_SPACE `{` COMMENT_SPACE (EXPORTS_LITERAL_PROP | EXPORTS_SPREAD) COMMENT_SPACE `,` COMMENT_SPACE)+ `}` | ||
@@ -107,2 +109,5 @@ REQUIRE: `require` COMMENT_SPACE `(` COMMENT_SPACE STRING_LITERAL COMMENT_SPACE `)` | ||
( | ||
`if (` IDENTIFIER$2 `in` EXPORTS_IDENTIFIER `&&` EXPORTS_IDENTIFIER `[` IDENTIFIER$2 `] ===` IDENTIFIER$1 `[` IDENTIFIER$2 `]) return` `;`? | ||
)? | ||
( | ||
EXPORTS_IDENTIFIER `[` IDENTIFIER$2 `] =` IDENTIFIER$1 `[` IDENTIFIER$2 `]` `;`? | | ||
@@ -115,3 +120,5 @@ `Object.defineProperty(` EXPORTS_IDENTIFIER `, ` IDENTIFIER$2 `, { enumerable: true, get: function () { return ` IDENTIFIER$1 `[` IDENTIFIER$2 `]` `;`? } })` `;`? | ||
* The returned export names are the matched `IDENTIFIER` and `IDENTIFIER_STRING` slots for all `EXPORTS_MEMBER`, `EXPORTS_DEFINE` and `EXPORTS_LITERAL` matches. | ||
* The reexport specifiers are taken to be the `STRING_LITERAL` slot of the last `MODULE_EXPORTS_ASSIGN` as well as all _top-level_ `EXPORT_STAR` `REQUIRE` matches and `EXPORTS_ASSIGN` matches whose `IDENTIFIER` also matches the first `IDENTIFIER` in `EXPORT_STAR_LIB`. | ||
* 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`. | ||
@@ -168,7 +175,8 @@ ### Parsing Examples | ||
'b': b, | ||
c: c | ||
c: c, | ||
...d | ||
}; | ||
``` | ||
Object properties that are not identifiers or string expressions will bail out of the object detection: | ||
Object properties that are not identifiers or string expressions will bail out of the object detection, while spreads are ignored: | ||
@@ -179,2 +187,3 @@ ```js | ||
a, | ||
...d, | ||
b: require('c'), | ||
@@ -198,4 +207,15 @@ c: "not detected since require('c') above bails the object detection" | ||
This is to avoid overclassification in Webpack bundles with externals which include `module.exports = require('external')` in their source for every external dependency. | ||
This is to avoid over-classification in Webpack bundles with externals which include `module.exports = require('external')` in their source for every external dependency. | ||
In exports object assignment, any spread of `require()` are detected as multiple separate reexports: | ||
```js | ||
// DETECTS REEXPORTS: a, b | ||
module.exports = require('ignored'); | ||
module.exports = { | ||
...require('a'), | ||
...require('b') | ||
}; | ||
``` | ||
#### Transpiler Re-exports | ||
@@ -324,3 +344,3 @@ | ||
The Makefile assumes the existence of "wasi-sdk-10.0", "binaryen" and "wabt" (both optional) as sibling folders to this project. | ||
The Makefile assumes the existence of "wasi-sdk-11.0" and "wabt" (optional) as sibling folders to this project. | ||
@@ -327,0 +347,0 @@ The build through the Makefile is then run via `make lib/lexer.wasm`, which can also be triggered via `npm run build-wasm` to create `dist/lexer.js`. |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
120428
7
1196
353