UNPKG

@nodesecure/js-x-ray

Version:
29 lines 927 B
// Import Internal Dependencies import { Inlined } from "./Inlined.js"; import { isCallExpression, isMemberExpression } from "./estree/index.js"; export class InlinedNew { static split(node) { if (!isCallExpression(node) && !isMemberExpression(node)) { return null; } const newExpression = InlinedNew.#findNewCall(node); if (!newExpression) { return null; } return Inlined.buildSplitResult(node, newExpression, "new"); } static #findNewCall(node) { if (isCallExpression(node)) { const callee = node.callee; return InlinedNew.#findNewCall(callee); } if (isMemberExpression(node)) { return InlinedNew.#findNewCall(node.object); } if (node.type === "NewExpression") { return node; } return null; } } //# sourceMappingURL=InlinedNew.js.map