UNPKG

eslint-plugin-no-copy-paste-default-export

Version:
26 lines (19 loc) 719 B
'use strict'; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } var _path = require('path'); var _path2 = _interopRequireDefault(_path); var classNameMatch = /export[\s]+default[\s]+class[\s]+([\S]+)/i; module.exports = function (context) { return { 'ExportDefaultDeclaration': function ExportDefaultDeclaration(node) { var filename = _path2['default'].parse(context.getFilename()).name; var match = classNameMatch.exec(context.getSource(node)); if (match && match[1] !== filename) { context.report(node, '(class name) ' + match[1] + ' !== ' + filename + ' (file name)'); } } }; }; module.exports.meta = { config: 2 };