UNPKG

eslint-plugin-playlyfe

Version:
62 lines (47 loc) 1.43 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var icu = _interopRequireWildcard(require("./utils/icu")); var astUtils = _interopRequireWildcard(require("./utils/astUtils")); var _reactIntlVisitor = _interopRequireDefault(require("./utils/reactIntlVisitor")); const Rule = { meta: { docs: { description: 'report invalid icu message' } }, create(context) { return (0, _reactIntlVisitor.default)({ defaultMessageJSXAttr(node) { const valueNode = astUtils.getJSXAttributeValue(node); try { const message = astUtils.getStringNodeValue(valueNode); if (!message) { return; } icu.parse(message.value); } catch (err) { context.report({ node: valueNode, message: `Invalid message: ${err.message}` }); } }, defaultMessageProperty(node) { try { const message = astUtils.getStringNodeValue(node.value); if (!message) { return; } icu.parse(message.value); } catch (err) { context.report({ node: node.value, message: `Invalid message: ${err.message}` }); } } }); } }; module.exports = Rule;