UNPKG

react-native-decompiler

Version:

react native decompile apk and ipa(soon)

39 lines 4.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const types_1 = require("@babel/types"); const plugin_1 = require("../../plugin"); class DefaultInteropEvaluator extends plugin_1.Plugin { constructor() { super(...arguments); this.pass = 1; } getVisitor() { return { VariableDeclarator: (path) => { if (!types_1.isIdentifier(path.node.id)) return; if (this.variableIsForDependency(path, ['@babel/runtime/helpers/interopRequireDefault', '@babel/runtime/helpers/interopRequireWildcard'])) { const interopVarName = path.node.id.name; this.bindingTraverse(path.scope.bindings[interopVarName], interopVarName, { CallExpression: (bindingPath) => { if (!types_1.isIdentifier(bindingPath.node.callee) || bindingPath.node.callee.name !== interopVarName) return; if (types_1.isCallExpression(bindingPath.node.arguments[0])) { bindingPath.replaceWith(bindingPath.node.arguments[0]); } else if (types_1.isIdentifier(bindingPath.node.arguments[0])) { const parent = bindingPath.find((p) => p.isVariableDeclarator()); if (!(parent === null || parent === void 0 ? void 0 : parent.isVariableDeclarator()) || !types_1.isIdentifier(parent.node.id)) throw new Error('Failed assertion'); this.mergeBindings(parent, parent.node.id.name, bindingPath.node.arguments[0].name); } }, }); path.remove(); } }, }; } } exports.default = DefaultInteropEvaluator; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdEludGVyb3BFdmFsdWF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGVjb21waWxlcnMvZXZhbHVhdG9ycy9kZWZhdWx0SW50ZXJvcEV2YWx1YXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWdCQSx3Q0FHc0I7QUFDdEIseUNBQXNDO0FBS3RDLE1BQXFCLHVCQUF3QixTQUFRLGVBQU07SUFBM0Q7O1FBQ1csU0FBSSxHQUFHLENBQUMsQ0FBQztJQXlCcEIsQ0FBQztJQXZCQyxVQUFVO1FBQ1IsT0FBTztZQUNMLGtCQUFrQixFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxvQkFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUFFLE9BQU87Z0JBQ3hDLElBQUksSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxDQUFDLDhDQUE4QyxFQUFFLCtDQUErQyxDQUFDLENBQUMsRUFBRTtvQkFDekksTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO29CQUN6QyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLGNBQWMsRUFBRTt3QkFDeEUsY0FBYyxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUU7NEJBQzlCLElBQUksQ0FBQyxvQkFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLGNBQWM7Z0NBQUUsT0FBTzs0QkFDdEcsSUFBSSx3QkFBZ0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dDQUNuRCxXQUFXLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7NkJBQ3hEO2lDQUFNLElBQUksb0JBQVksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dDQUN0RCxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO2dDQUNqRSxJQUFJLEVBQUMsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLG9CQUFvQixHQUFFLElBQUksQ0FBQyxvQkFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29DQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztnQ0FDMUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDOzZCQUNyRjt3QkFDSCxDQUFDO3FCQUNGLENBQUMsQ0FBQztvQkFDSCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7aUJBQ2Y7WUFDSCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTFCRCwwQ0EwQkMifQ==