%PDF- %PDF-
Direktori : /usr/share/node_modules/acorn-dynamic-import/lib/ |
Current File : //usr/share/node_modules/acorn-dynamic-import/lib/index.js |
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DynamicImportKey = void 0; exports.default = dynamicImport; var _acorn = require("acorn"); /* eslint-disable no-underscore-dangle */ const DynamicImportKey = 'Import'; // NOTE: This allows `yield import()` to parse correctly. exports.DynamicImportKey = DynamicImportKey; _acorn.tokTypes._import.startsExpr = true; function parseDynamicImport() { const node = this.startNode(); this.next(); if (this.type !== _acorn.tokTypes.parenL) { this.unexpected(); } return this.finishNode(node, DynamicImportKey); } function parenAfter() { return /^(\s|\/\/.*|\/\*[^]*?\*\/)*\(/.test(this.input.slice(this.pos)); } function dynamicImport(Parser) { return class extends Parser { parseStatement(context, topLevel, exports) { if (this.type === _acorn.tokTypes._import && parenAfter.call(this)) { return this.parseExpressionStatement(this.startNode(), this.parseExpression()); } return super.parseStatement(context, topLevel, exports); } parseExprAtom(refDestructuringErrors) { if (this.type === _acorn.tokTypes._import) { return parseDynamicImport.call(this); } return super.parseExprAtom(refDestructuringErrors); } }; }