1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- 'use strict';
- Object.defineProperty(exports, '__esModule', { value: true });
- var helperPluginUtils = require('@babel/helper-plugin-utils');
- function shouldTransform(path) {
- const {
- node
- } = path;
- const functionId = node.id;
- if (!functionId) return false;
- const name = functionId.name;
- const paramNameBinding = path.scope.getOwnBinding(name);
- if (paramNameBinding === undefined) {
- return false;
- }
- if (paramNameBinding.kind !== "param") {
- return false;
- }
- if (paramNameBinding.identifier === paramNameBinding.path.node) {
- return false;
- }
- return name;
- }
- var index = helperPluginUtils.declare(api => {
- api.assertVersion("^7.16.0");
- return {
- name: "plugin-bugfix-safari-id-destructuring-collision-in-function-expression",
- visitor: {
- FunctionExpression(path) {
- const name = shouldTransform(path);
- if (name) {
- const {
- scope
- } = path;
- const newParamName = scope.generateUid(name);
- scope.rename(name, newParamName);
- }
- }
- }
- };
- });
- exports.default = index;
- //# sourceMappingURL=index.js.map
|