babel/eslint/babel-eslint-plugin/rules/object-curly-spacing.js
Brian Ng b41b3af879 Merge pull request babel/eslint-plugin-babel#138 from babel/composer
Refactor rules to use eslint-rule-composer
2018-03-30 08:34:43 -05:00

26 lines
747 B
JavaScript

"use strict";
const ruleComposer = require('eslint-rule-composer');
const eslint = require('eslint');
const objectCurlySpacingRule = new eslint.Linter().getRules().get('object-curly-spacing');
module.exports = ruleComposer.filterReports(
objectCurlySpacingRule,
(problem, metadata) => {
const node = problem.node;
// Allow `exportNamespaceFrom` and `exportDefaultFrom` syntax:
// export * as x from '...';
// export x from '...';
if (
node.type === 'ExportNamedDeclaration' &&
node.specifiers.length > 0 &&
metadata.sourceCode.getTokenBefore(node.specifiers[0]).value === "export"
) {
return false;
}
return true;
}
);