canonical
Version:
Canonical code style linter and formatter for JavaScript, SCSS, CSS and JSON.
35 lines (24 loc) • 884 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _has2 = require('lodash/has');
var _has3 = _interopRequireDefault(_has2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = function (identifierNode, context) {
if ((0, _has3.default)(identifierNode, 'name')) {
return identifierNode.name;
}
if ((0, _has3.default)(identifierNode, 'left.name')) {
return identifierNode.left.name;
}
if (identifierNode.type === 'RestElement') {
return identifierNode.argument.name;
}
if (identifierNode.type === 'ObjectPattern') {
return context.getSourceCode().getText(identifierNode);
}
throw new Error('Unsupported function signature.');
};
module.exports = exports['default'];
//# sourceMappingURL=getParameterName.js.map