Sha256: 7c95c12d3d5c44bb66c7ffd733782fc9f2b887a6be7ece5d9ad28365028443fe
Contents?: true
Size: 1.36 KB
Versions: 45
Compression:
Stored size: 1.36 KB
Contents
/** * @fileoverview Rule to flag when using multiline strings * @author Ilya Volodin */ "use strict"; //------------------------------------------------------------------------------ // Rule Definition //------------------------------------------------------------------------------ module.exports = { meta: { docs: { description: "disallow multiline strings", category: "Best Practices", recommended: false }, schema: [] }, create: function(context) { /** * Determines if a given node is part of JSX syntax. * @param {ASTNode} node The node to check. * @returns {boolean} True if the node is a JSX node, false if not. * @private */ function isJSXElement(node) { return node.type.indexOf("JSX") === 0; } //-------------------------------------------------------------------------- // Public API //-------------------------------------------------------------------------- return { Literal: function(node) { var lineBreak = /\n/; if (lineBreak.test(node.raw) && !isJSXElement(node.parent)) { context.report(node, "Multiline support is limited to browsers supporting ES5 only."); } } }; } };
Version data entries
45 entries across 45 versions & 2 rubygems