| Server IP : 217.160.0.135 / Your IP : 216.73.216.73 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1074145052 ( 1074145052) PHP Version : 8.3.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/node_modules/acorn-dynamic-import/src/ |
Upload File : |
/* eslint-disable no-underscore-dangle */
import { tokTypes as tt } from 'acorn';
export const DynamicImportKey = 'Import';
// NOTE: This allows `yield import()` to parse correctly.
tt._import.startsExpr = true;
function parseDynamicImport() {
const node = this.startNode();
this.next();
if (this.type !== tt.parenL) {
this.unexpected();
}
return this.finishNode(node, DynamicImportKey);
}
function parenAfter() {
return /^(\s|\/\/.*|\/\*[^]*?\*\/)*\(/.test(this.input.slice(this.pos));
}
export default function dynamicImport(Parser) {
return class extends Parser {
parseStatement(context, topLevel, exports) {
if (this.type === tt._import && parenAfter.call(this)) {
return this.parseExpressionStatement(this.startNode(), this.parseExpression());
}
return super.parseStatement(context, topLevel, exports);
}
parseExprAtom(refDestructuringErrors) {
if (this.type === tt._import) {
return parseDynamicImport.call(this);
}
return super.parseExprAtom(refDestructuringErrors);
}
};
}