{"version":3,"sources":["jsdelivr-header.js","/npm/eslint-plugin-formatjs@6.6.1/index.js"],"names":[],"mappings":"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","file":"/npm/eslint-plugin-formatjs@6.6.1/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.48.0.\n * Original file: /npm/eslint-plugin-formatjs@6.6.1/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","import { TYPE, isArgumentElement, isDateElement, isLiteralElement, isNumberElement, isPluralElement, isSelectElement, isTagElement, isTimeElement, parse } from \"@formatjs/icu-messageformat-parser\";\nimport { interpolateName } from \"@formatjs/ts-transformer\";\nimport * as emojiPresentationRegex from \"@unicode/unicode-17.0.0/Binary_Property/Emoji_Presentation/regex.js\";\nimport * as emojiPropertyRegex from \"@unicode/unicode-17.0.0/Binary_Property/Emoji/regex.js\";\nimport * as picomatchNs from \"picomatch\";\nimport MagicString from \"magic-string\";\n//#region \\0rolldown/runtime.js\nvar __defProp = Object.defineProperty;\nvar __exportAll = (all, no_symbols) => {\n\tlet target = {};\n\tfor (var name in all) __defProp(target, name, {\n\t\tget: all[name],\n\t\tenumerable: true\n\t});\n\tif (!no_symbols) __defProp(target, Symbol.toStringTag, { value: \"Module\" });\n\treturn target;\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/util.ts\nconst FORMAT_FUNCTION_NAMES = /* @__PURE__ */ new Set([\n\t\"$formatMessage\",\n\t\"formatMessage\",\n\t\"$t\"\n]);\nconst COMPONENT_NAMES = /* @__PURE__ */ new Set([\"FormattedMessage\"]);\nconst DECLARATION_FUNCTION_NAMES = /* @__PURE__ */ new Set([\"defineMessage\"]);\nfunction getSettings({ settings }) {\n\treturn settings.formatjs ?? settings;\n}\nfunction isTemplateLiteralWithoutVar(node) {\n\treturn node.type === \"TemplateLiteral\" && node.quasis.length === 1;\n}\nfunction getStaticStringFromTemplateLiteral(node) {\n\treturn node.quasis.length === 1 ? node.quasis[0].value.cooked ?? void 0 : void 0;\n}\nfunction isStaticMessageExpression(node) {\n\tswitch (node.type) {\n\t\tcase \"ArrayPattern\":\n\t\tcase \"AssignmentPattern\":\n\t\tcase \"ObjectPattern\": return false;\n\t\tdefault: return true;\n\t}\n}\nfunction getStaticStringFromMessageExpression(node) {\n\tswitch (node.type) {\n\t\tcase \"TSAsExpression\":\n\t\tcase \"TSSatisfiesExpression\":\n\t\tcase \"TSNonNullExpression\":\n\t\tcase \"TSTypeAssertion\": return getStaticStringFromMessageExpression(node.expression);\n\t\tcase \"Literal\": return typeof node.value === \"string\" ? node.value : void 0;\n\t\tcase \"TemplateLiteral\": return getStaticStringFromTemplateLiteral(node);\n\t\tcase \"TaggedTemplateExpression\":\n\t\t\tif (!isTemplateLiteralWithoutVar(node.quasi)) throw new Error(\"Tagged template expression must be no substitution\");\n\t\t\treturn getStaticStringFromTemplateLiteral(node.quasi);\n\t\tcase \"BinaryExpression\": {\n\t\t\tconst [result, isStaticallyEvaluatable] = staticallyEvaluateStringConcat(node);\n\t\t\treturn isStaticallyEvaluatable ? result : void 0;\n\t\t}\n\t}\n}\nfunction getStaticStringFromBinaryExpressionOperand(node) {\n\tswitch (node.type) {\n\t\tcase \"TSAsExpression\":\n\t\tcase \"TSSatisfiesExpression\":\n\t\tcase \"TSNonNullExpression\":\n\t\tcase \"TSTypeAssertion\": return getStaticStringFromBinaryExpressionOperand(node.expression);\n\t\tcase \"Literal\": return typeof node.value === \"string\" ? node.value : void 0;\n\t\tcase \"BinaryExpression\": {\n\t\t\tconst [result, isStaticallyEvaluatable] = staticallyEvaluateStringConcat(node);\n\t\t\treturn isStaticallyEvaluatable ? result : void 0;\n\t\t}\n\t}\n}\nfunction staticallyEvaluateStringConcat(node) {\n\tconst right = getStaticStringFromBinaryExpressionOperand(node.right);\n\tconst left = getStaticStringFromBinaryExpressionOperand(node.left);\n\treturn left !== void 0 && right !== void 0 ? [left + right, true] : [\"\", false];\n}\nfunction isIntlFormatMessageCall(node) {\n\tif (node.type !== \"CallExpression\") return false;\n\tif (node.arguments.length < 1 || node.arguments[0].type !== \"ObjectExpression\") return false;\n\tif (node.callee.type === \"MemberExpression\") return (node.callee.object.type === \"Identifier\" && node.callee.object.name === \"intl\" || node.callee.object.type === \"MemberExpression\" && node.callee.object.property.type === \"Identifier\" && node.callee.object.property.name === \"intl\") && node.callee.property.type === \"Identifier\" && (node.callee.property.name === \"formatMessage\" || node.callee.property.name === \"$t\");\n\tif (node.callee.type === \"Identifier\") return FORMAT_FUNCTION_NAMES.has(node.callee.name);\n\treturn false;\n}\nfunction isSingleMessageDescriptorDeclaration(node, functionNames) {\n\treturn node.type === \"CallExpression\" && node.callee.type === \"Identifier\" && functionNames.has(node.callee.name);\n}\nfunction isMultipleMessageDescriptorDeclaration(node) {\n\treturn node.type === \"CallExpression\" && node.callee.type === \"Identifier\" && node.callee.name === \"defineMessages\";\n}\nfunction extractMessageDescriptor(node) {\n\tif (!node || node.type !== \"ObjectExpression\") return;\n\tconst result = {\n\t\tmessageDescriptorNode: node,\n\t\tmessage: {},\n\t\tmessageNode: void 0,\n\t\tmessagePropNode: void 0,\n\t\tdescriptionNode: void 0,\n\t\tidValueNode: void 0\n\t};\n\tfor (const prop of node.properties) {\n\t\tif (prop.type !== \"Property\" || prop.key.type !== \"Identifier\") continue;\n\t\tconst propName = prop.key.name;\n\t\tif (propName !== \"id\" && propName !== \"defaultMessage\" && propName !== \"description\") continue;\n\t\tconst valueNode = prop.value;\n\t\tconst value = isStaticMessageExpression(valueNode) ? getStaticStringFromMessageExpression(valueNode) : void 0;\n\t\tswitch (propName) {\n\t\t\tcase \"defaultMessage\":\n\t\t\t\tresult.messagePropNode = prop;\n\t\t\t\tresult.messageNode = valueNode;\n\t\t\t\tresult.message.defaultMessage = value;\n\t\t\t\tbreak;\n\t\t\tcase \"description\":\n\t\t\t\tresult.descriptionNode = valueNode;\n\t\t\t\tresult.message.description = value;\n\t\t\t\tbreak;\n\t\t\tcase \"id\":\n\t\t\t\tresult.message.id = value;\n\t\t\t\tresult.idValueNode = valueNode;\n\t\t\t\tresult.idPropNode = prop;\n\t\t}\n\t}\n\treturn result;\n}\nfunction extractMessageDescriptorFromJSXElement(node) {\n\tif (!node || !node.attributes) return;\n\tlet values;\n\tconst result = {\n\t\tmessageDescriptorNode: node,\n\t\tmessage: {},\n\t\tmessageNode: void 0,\n\t\tmessagePropNode: void 0,\n\t\tdescriptionNode: void 0,\n\t\tidValueNode: void 0,\n\t\tidPropNode: void 0\n\t};\n\tlet hasSpreadAttribute = false;\n\tfor (const prop of node.attributes) {\n\t\tif (prop.type === \"JSXSpreadAttribute\") hasSpreadAttribute = true;\n\t\tif (prop.type !== \"JSXAttribute\" || prop.name.type !== \"JSXIdentifier\") continue;\n\t\tconst keyName = prop.name.name;\n\t\tconst isMessageProp = keyName === \"id\" || keyName === \"defaultMessage\" || keyName === \"description\";\n\t\tlet valueNode = prop.value;\n\t\tlet value = void 0;\n\t\tif (valueNode && isMessageProp) {\n\t\t\tif (valueNode.type === \"Literal\" && typeof valueNode.value === \"string\") value = valueNode.value;\n\t\t\telse if (valueNode?.type === \"JSXExpressionContainer\") {\n\t\t\t\tconst { expression } = valueNode;\n\t\t\t\tif (expression.type !== \"JSXEmptyExpression\") value = getStaticStringFromMessageExpression(expression);\n\t\t\t}\n\t\t}\n\t\tswitch (keyName) {\n\t\t\tcase \"defaultMessage\":\n\t\t\t\tresult.messagePropNode = prop;\n\t\t\t\tresult.messageNode = valueNode;\n\t\t\t\tif (value) result.message.defaultMessage = value;\n\t\t\t\tbreak;\n\t\t\tcase \"description\":\n\t\t\t\tresult.descriptionNode = valueNode;\n\t\t\t\tif (value) result.message.description = value;\n\t\t\t\tbreak;\n\t\t\tcase \"id\":\n\t\t\t\tresult.idValueNode = valueNode;\n\t\t\t\tresult.idPropNode = prop;\n\t\t\t\tif (value) result.message.id = value;\n\t\t\t\tbreak;\n\t\t\tcase \"values\": if (valueNode?.type === \"JSXExpressionContainer\" && valueNode.expression.type === \"ObjectExpression\") values = valueNode.expression;\n\t\t}\n\t}\n\tif (!result.messagePropNode && !result.descriptionNode && !result.idPropNode && hasSpreadAttribute) return;\n\treturn [result, values];\n}\nfunction extractMessageDescriptors(node) {\n\tif (!node || node.type !== \"ObjectExpression\" || !node.properties.length) return [];\n\tconst msgs = [];\n\tfor (const prop of node.properties) {\n\t\tif (prop.type !== \"Property\") continue;\n\t\tconst msg = prop.value;\n\t\tif (msg.type !== \"ObjectExpression\") continue;\n\t\tconst nodeInfo = extractMessageDescriptor(msg);\n\t\tif (nodeInfo) msgs.push(nodeInfo);\n\t}\n\treturn msgs;\n}\nfunction extractMessages(node, { additionalComponentNames, additionalFunctionNames, excludeMessageDeclCalls } = {}) {\n\tconst allFormatFunctionNames = Array.isArray(additionalFunctionNames) ? /* @__PURE__ */ new Set([...Array.from(FORMAT_FUNCTION_NAMES), ...additionalFunctionNames]) : FORMAT_FUNCTION_NAMES;\n\tconst allComponentNames = Array.isArray(additionalComponentNames) ? /* @__PURE__ */ new Set([...Array.from(COMPONENT_NAMES), ...additionalComponentNames]) : COMPONENT_NAMES;\n\tif (node.type === \"CallExpression\") {\n\t\tconst args0 = node.arguments[0];\n\t\tconst args1 = node.arguments[1];\n\t\tif (!args0 || args0.type === \"SpreadElement\") return [];\n\t\tif (!excludeMessageDeclCalls && isSingleMessageDescriptorDeclaration(node, DECLARATION_FUNCTION_NAMES) || isIntlFormatMessageCall(node) || isSingleMessageDescriptorDeclaration(node, allFormatFunctionNames)) {\n\t\t\tconst msgDescriptorNodeInfo = extractMessageDescriptor(args0);\n\t\t\tif (msgDescriptorNodeInfo && (!args1 || args1.type !== \"SpreadElement\")) return [[msgDescriptorNodeInfo, args1]];\n\t\t} else if (!excludeMessageDeclCalls && isMultipleMessageDescriptorDeclaration(node)) return extractMessageDescriptors(args0).map((msg) => [msg, void 0]);\n\t} else if (node.type === \"JSXOpeningElement\" && node.name && node.name.type === \"JSXIdentifier\" && allComponentNames.has(node.name.name)) {\n\t\tconst msgDescriptorNodeInfo = extractMessageDescriptorFromJSXElement(node);\n\t\tif (msgDescriptorNodeInfo) return [msgDescriptorNodeInfo];\n\t}\n\treturn [];\n}\n/**\n* Apply changes to the ICU message in code. The return value can be used in\n* `fixer.replaceText(messageNode, <return value>)`. If the return value is null,\n* it means that the patch cannot be applied.\n*/\nfunction patchMessage(messageNode, ast, patcher) {\n\tif (messageNode.type === \"Literal\" && messageNode.value && typeof messageNode.value === \"string\") return \"\\\"\" + patcher(messageNode.value, ast).replace(\"\\\"\", \"\\\\\\\"\") + \"\\\"\";\n\telse if (messageNode.type === \"TemplateLiteral\" && messageNode.quasis.length === 1 && messageNode.expressions.length === 0) return \"`\" + patcher(messageNode.quasis[0].value.cooked, ast).replace(/\\\\/g, \"\\\\\\\\\").replace(/`/g, \"\\\\`\") + \"`\";\n\treturn null;\n}\n//#endregion\n//#region packages/eslint-plugin-formatjs/messages.ts\nconst CORE_MESSAGES = { parseError: `Failed to parse message string {{error}}` };\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/blocklist-elements.ts\nconst name$22 = \"blocklist-elements\";\nfunction getMessage(type) {\n\treturn {\n\t\tmessageId: \"blocklist\",\n\t\tdata: { type }\n\t};\n}\nlet Element = /* @__PURE__ */ function(Element) {\n\tElement[\"literal\"] = \"literal\";\n\tElement[\"argument\"] = \"argument\";\n\tElement[\"number\"] = \"number\";\n\tElement[\"date\"] = \"date\";\n\tElement[\"time\"] = \"time\";\n\tElement[\"select\"] = \"select\";\n\tElement[\"selectordinal\"] = \"selectordinal\";\n\tElement[\"plural\"] = \"plural\";\n\tElement[\"tag\"] = \"tag\";\n\treturn Element;\n}({});\nfunction isBlocklisted(blocklist, type, element) {\n\treturn blocklist.some((entry) => {\n\t\tif (typeof entry === \"string\") return entry === type;\n\t\tif (entry.type !== type) return false;\n\t\tif (!(\"value\" in element) || element.value !== entry.allow.variable) return true;\n\t\tconst allowedOptions = entry.allow.options;\n\t\tif (!allowedOptions) return false;\n\t\tif (!isSelectElement(element) && !isPluralElement(element)) return true;\n\t\tconst options = Object.keys(element.options);\n\t\treturn options.length !== allowedOptions.length || options.some((option) => !allowedOptions.includes(option));\n\t});\n}\nfunction verifyAst$7(blocklist, ast) {\n\tconst errors = [];\n\tfor (const el of ast) {\n\t\tif (isLiteralElement(el) && isBlocklisted(blocklist, \"literal\", el)) errors.push(getMessage(\"literal\"));\n\t\tif (isArgumentElement(el) && isBlocklisted(blocklist, \"argument\", el)) errors.push(getMessage(\"argument\"));\n\t\tif (isNumberElement(el) && isBlocklisted(blocklist, \"number\", el)) errors.push(getMessage(\"number\"));\n\t\tif (isDateElement(el) && isBlocklisted(blocklist, \"date\", el)) errors.push(getMessage(\"date\"));\n\t\tif (isTimeElement(el) && isBlocklisted(blocklist, \"time\", el)) errors.push(getMessage(\"time\"));\n\t\tif (isSelectElement(el) && isBlocklisted(blocklist, \"select\", el)) errors.push(getMessage(\"select\"));\n\t\tif (isTagElement(el) && isBlocklisted(blocklist, \"tag\", el)) errors.push(getMessage(\"tag\"));\n\t\tif (isTagElement(el)) errors.push(...verifyAst$7(blocklist, el.children));\n\t\tif (isPluralElement(el)) {\n\t\t\tif (isBlocklisted(blocklist, \"plural\", el)) errors.push(getMessage(\"argument\"));\n\t\t\tif (el.pluralType === \"ordinal\" && isBlocklisted(blocklist, \"selectordinal\", el)) errors.push(getMessage(\"selectordinal\"));\n\t\t}\n\t\tif (isSelectElement(el) || isPluralElement(el)) {\n\t\t\tconst { options } = el;\n\t\t\tfor (const selector of Object.keys(options)) errors.push(...verifyAst$7(blocklist, options[selector].value));\n\t\t}\n\t}\n\treturn errors;\n}\nfunction checkNode$17(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, settings);\n\tif (!msgs.length) return;\n\tconst blocklist = context.options[0];\n\tif (!Array.isArray(blocklist) || !blocklist.length) return;\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tconst errors = verifyAst$7(blocklist, ast);\n\t\tfor (const error of errors) context.report({\n\t\t\tnode: messageNode,\n\t\t\t...error\n\t\t});\n\t}\n}\nconst rule$20 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Disallow specific elements in ICU message format\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#blocklist-elements\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [{\n\t\t\ttype: \"array\",\n\t\t\titems: { oneOf: [{\n\t\t\t\ttype: \"string\",\n\t\t\t\tenum: Object.keys(Element)\n\t\t\t}, {\n\t\t\t\ttype: \"object\",\n\t\t\t\tadditionalProperties: false,\n\t\t\t\trequired: [\"type\", \"allow\"],\n\t\t\t\tproperties: {\n\t\t\t\t\ttype: {\n\t\t\t\t\t\ttype: \"string\",\n\t\t\t\t\t\tenum: Object.keys(Element)\n\t\t\t\t\t},\n\t\t\t\t\tallow: {\n\t\t\t\t\t\ttype: \"object\",\n\t\t\t\t\t\tadditionalProperties: false,\n\t\t\t\t\t\trequired: [\"variable\"],\n\t\t\t\t\t\tproperties: {\n\t\t\t\t\t\t\tvariable: { type: \"string\" },\n\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\ttype: \"array\",\n\t\t\t\t\t\t\t\tuniqueItems: true,\n\t\t\t\t\t\t\t\titems: { type: \"string\" }\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}] }\n\t\t}],\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tblocklist: `{{type}} element is blocklisted`\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$17(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$17(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/enforce-default-message.ts\nlet Option$1 = /* @__PURE__ */ function(Option) {\n\tOption[\"literal\"] = \"literal\";\n\tOption[\"anything\"] = \"anything\";\n\treturn Option;\n}({});\nconst name$21 = \"enforce-default-message\";\nfunction checkNode$16(context, node) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tconst { options: [type] } = context;\n\tfor (const [{ message: { defaultMessage }, messageNode, messageDescriptorNode }] of msgs) if (!defaultMessage) {\n\t\tif (type === \"literal\" && messageNode) context.report({\n\t\t\tnode: messageNode,\n\t\t\tmessageId: \"defaultMessageLiteral\"\n\t\t});\n\t\telse if (!messageNode) context.report({\n\t\t\tnode: messageDescriptorNode,\n\t\t\tmessageId: \"defaultMessage\"\n\t\t});\n\t}\n}\nconst rule$19 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Enforce defaultMessage in message descriptor\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#enforce-default-message\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [{\n\t\t\ttype: \"string\",\n\t\t\tenum: Object.keys(Option$1)\n\t\t}],\n\t\tmessages: {\n\t\t\tdefaultMessageLiteral: `\"defaultMessage\" must be:\n- a string literal or\n- template literal without variable`,\n\t\t\tdefaultMessage: \"`defaultMessage` has to be specified in message descriptor\"\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$16(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$16(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/enforce-description.ts\nlet Option = /* @__PURE__ */ function(Option) {\n\tOption[\"literal\"] = \"literal\";\n\tOption[\"anything\"] = \"anything\";\n\treturn Option;\n}({});\nfunction normalizeOptions(raw) {\n\tif (typeof raw === \"string\") return {\n\t\tmode: raw,\n\t\tminLength: void 0\n\t};\n\tif (typeof raw === \"object\" && raw !== null) return {\n\t\tmode: raw.mode,\n\t\tminLength: raw.minLength\n\t};\n\treturn {\n\t\tmode: void 0,\n\t\tminLength: void 0\n\t};\n}\nfunction checkNode$15(context, node) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tconst { mode: type, minLength } = normalizeOptions(context.options[0]);\n\tfor (const [{ message: { description }, descriptionNode, messageDescriptorNode }] of msgs) if (!description) {\n\t\tif (type === \"literal\" && descriptionNode) context.report({\n\t\t\tnode: descriptionNode,\n\t\t\tmessageId: \"enforceDescriptionLiteral\"\n\t\t});\n\t\telse if (!descriptionNode) context.report({\n\t\t\tnode: messageDescriptorNode,\n\t\t\tmessageId: \"enforceDescription\"\n\t\t});\n\t} else if (typeof minLength === \"number\" && typeof description === \"string\" && description.length < minLength) context.report({\n\t\tnode: descriptionNode ?? messageDescriptorNode,\n\t\tmessageId: \"enforceDescriptionMinLength\",\n\t\tdata: {\n\t\t\tminLength: String(minLength),\n\t\t\tlength: String(description.length)\n\t\t}\n\t});\n}\nconst name$20 = \"enforce-description\";\nconst rule$18 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Enforce description in message descriptor\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#enforce-description\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [{ oneOf: [{\n\t\t\ttype: \"string\",\n\t\t\tenum: Object.keys(Option)\n\t\t}, {\n\t\t\ttype: \"object\",\n\t\t\tproperties: {\n\t\t\t\tmode: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tenum: Object.keys(Option)\n\t\t\t\t},\n\t\t\t\tminLength: {\n\t\t\t\t\ttype: \"integer\",\n\t\t\t\t\tminimum: 1\n\t\t\t\t}\n\t\t\t},\n\t\t\tadditionalProperties: false,\n\t\t\tminProperties: 1\n\t\t}] }],\n\t\tmessages: {\n\t\t\tenforceDescription: \"`description` has to be specified in message descriptor\",\n\t\t\tenforceDescriptionLiteral: \"`description` has to be a string literal (not function call or variable)\",\n\t\t\tenforceDescriptionMinLength: \"`description` must be at least {{minLength}} characters long (currently {{length}})\"\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$15(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$15(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/enforce-id.ts\nfunction checkNode$14(context, node, { idInterpolationPattern, idWhitelistRegexps, quoteStyle }) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tfor (const [{ message: { defaultMessage, description, id }, idPropNode, descriptionNode, messagePropNode, messageDescriptorNode }] of msgs) {\n\t\tif (!idInterpolationPattern && !idPropNode) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageDescriptorNode ?? node,\n\t\t\t\tmessageId: \"enforceId\"\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (idInterpolationPattern) {\n\t\t\tif (!defaultMessage) context.report({\n\t\t\t\tnode: messageDescriptorNode ?? node,\n\t\t\t\tmessageId: \"enforceIdDefaultMessage\"\n\t\t\t});\n\t\t\telse if (!description && descriptionNode) context.report({\n\t\t\t\tnode: messageDescriptorNode ?? node,\n\t\t\t\tmessageId: \"enforceIdDescription\"\n\t\t\t});\n\t\t\telse {\n\t\t\t\tif (idWhitelistRegexps && id && idWhitelistRegexps.some((r) => r.test(id))) continue;\n\t\t\t\tconst correctId = interpolateName({ resourcePath: context.filename }, idInterpolationPattern, { content: description ? `${defaultMessage}#${description}` : defaultMessage });\n\t\t\t\tif (id !== correctId) {\n\t\t\t\t\tlet messageId = \"enforceIdMatching\";\n\t\t\t\t\tlet messageData = {\n\t\t\t\t\t\tidInterpolationPattern,\n\t\t\t\t\t\texpected: correctId,\n\t\t\t\t\t\tactual: id\n\t\t\t\t\t};\n\t\t\t\t\tif (idWhitelistRegexps) {\n\t\t\t\t\t\tmessageId = \"enforceIdMatchingAllowlisted\";\n\t\t\t\t\t\tmessageData = {\n\t\t\t\t\t\t\t...messageData,\n\t\t\t\t\t\t\tidWhitelist: idWhitelistRegexps.map((r) => `\"${r.toString()}\"`).join(\", \")\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tconst quote = quoteStyle === \"double\" ? \"\\\"\" : \"'\";\n\t\t\t\t\tcontext.report({\n\t\t\t\t\t\tnode: idPropNode ?? messageDescriptorNode ?? node,\n\t\t\t\t\t\tmessageId,\n\t\t\t\t\t\tdata: messageData,\n\t\t\t\t\t\tfix(fixer) {\n\t\t\t\t\t\t\tif (idPropNode) {\n\t\t\t\t\t\t\t\tif (idPropNode.type === \"JSXAttribute\") return fixer.replaceText(idPropNode, `id=\"${correctId}\"`);\n\t\t\t\t\t\t\t\treturn fixer.replaceText(idPropNode, `id: ${quote}${correctId}${quote}`);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (messagePropNode) {\n\t\t\t\t\t\t\t\tif (messagePropNode.type === \"JSXAttribute\") return fixer.insertTextAfter(messagePropNode, ` id=\"${correctId}\"`);\n\t\t\t\t\t\t\t\treturn fixer.insertTextAfter(messagePropNode, `, id: ${quote}${correctId}${quote}`);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\nconst name$19 = \"enforce-id\";\nconst rule$17 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Enforce (generated) ID in message descriptor\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#enforce-id\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [{\n\t\t\ttype: \"object\",\n\t\t\tproperties: {\n\t\t\t\tidInterpolationPattern: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tdescription: \"Pattern to verify ID against. Recommended value: [sha512:contenthash:base64:6]\"\n\t\t\t\t},\n\t\t\t\tidWhitelist: {\n\t\t\t\t\ttype: \"array\",\n\t\t\t\t\tdescription: \"An array of strings with regular expressions. This array allows allowlist custom ids for messages. For example '`\\\\\\\\.`' allows any id which has dot; `'^payment_.*'` - allows any custom id which has prefix `payment_`. Be aware that any backslash \\\\ provided via string must be escaped with an additional backslash.\",\n\t\t\t\t\titems: { type: \"string\" }\n\t\t\t\t},\n\t\t\t\tquoteStyle: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tenum: [\"single\", \"double\"],\n\t\t\t\t\tdescription: \"Quote style for generated IDs. Defaults to single quotes.\"\n\t\t\t\t}\n\t\t\t},\n\t\t\trequired: [\"idInterpolationPattern\"],\n\t\t\tadditionalProperties: false\n\t\t}],\n\t\tmessages: {\n\t\t\tenforceId: `id must be specified`,\n\t\t\tenforceIdDefaultMessage: `defaultMessage must be a string literal to calculate generated IDs`,\n\t\t\tenforceIdDescription: `description must be a string literal to calculate generated IDs`,\n\t\t\tenforceIdMatching: `\"id\" does not match with hash pattern {{idInterpolationPattern}}.\nExpected: {{expected}}\nActual: {{actual}}`,\n\t\t\tenforceIdMatchingAllowlisted: `\"id\" does not match with hash pattern {{idInterpolationPattern}} or allowlisted patterns {{idWhitelist}}.\nExpected: {{expected}}\nActual: {{actual}}`\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst tmp = context.options[0];\n\t\tlet opts = {\n\t\t\tidInterpolationPattern: tmp?.idInterpolationPattern,\n\t\t\tquoteStyle: tmp?.quoteStyle || \"single\"\n\t\t};\n\t\tif (Array.isArray(tmp?.idWhitelist)) {\n\t\t\tconst { idWhitelist } = tmp;\n\t\t\topts.idWhitelistRegexps = idWhitelist.map((str) => new RegExp(str, \"i\"));\n\t\t}\n\t\tconst callExpressionVisitor = (node) => checkNode$14(context, node, opts);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$14(context, node, opts),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/enforce-placeholders.ts\nfunction collectPlaceholderNames(ast) {\n\tconst placeholderNames = /* @__PURE__ */ new Set();\n\t_traverse(ast);\n\treturn placeholderNames;\n\tfunction _traverse(ast) {\n\t\tfor (const element of ast) switch (element.type) {\n\t\t\tcase TYPE.literal:\n\t\t\tcase TYPE.pound: break;\n\t\t\tcase TYPE.tag:\n\t\t\t\tplaceholderNames.add(element.value);\n\t\t\t\t_traverse(element.children);\n\t\t\t\tbreak;\n\t\t\tcase TYPE.plural:\n\t\t\tcase TYPE.select:\n\t\t\t\tplaceholderNames.add(element.value);\n\t\t\t\tfor (const { value } of Object.values(element.options)) _traverse(value);\n\t\t\t\tbreak;\n\t\t\tdefault: placeholderNames.add(element.value);\n\t\t}\n\t}\n}\nfunction checkNode$13(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, {\n\t\texcludeMessageDeclCalls: true,\n\t\t...settings\n\t});\n\tconst { options: [opt] } = context;\n\tconst ignoreList = new Set(opt?.ignoreList || []);\n\tfor (const [{ message: { defaultMessage }, messageNode }, values] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tif (values && values.type !== \"ObjectExpression\") continue;\n\t\tif (values?.properties.find((prop) => prop.type === \"SpreadElement\")) continue;\n\t\tconst literalElementByLiteralKey = /* @__PURE__ */ new Map();\n\t\tif (values) {\n\t\t\tfor (const prop of values.properties) if (prop.type === \"Property\" && !prop.computed) {\n\t\t\t\tconst name = prop.key.type === \"Identifier\" ? prop.key.name : String(prop.key.value);\n\t\t\t\tliteralElementByLiteralKey.set(name, prop);\n\t\t\t}\n\t\t}\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e instanceof Error ? e.message : String(e) }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tconst placeholderNames = collectPlaceholderNames(ast);\n\t\tconst missingPlaceholders = [];\n\t\tplaceholderNames.forEach((name) => {\n\t\t\tif (!ignoreList.has(name) && !literalElementByLiteralKey.has(name)) missingPlaceholders.push(name);\n\t\t});\n\t\tif (missingPlaceholders.length > 0) context.report({\n\t\t\tnode: messageNode,\n\t\t\tmessageId: \"missingValue\",\n\t\t\tdata: { list: missingPlaceholders.join(\", \") }\n\t\t});\n\t\tliteralElementByLiteralKey.forEach((element, key) => {\n\t\t\tif (!ignoreList.has(key) && !placeholderNames.has(key)) context.report({\n\t\t\t\tnode: element,\n\t\t\t\tmessageId: \"unusedValue\"\n\t\t\t});\n\t\t});\n\t}\n}\nconst name$18 = \"enforce-placeholders\";\nconst rule$16 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Enforce that all messages with placeholders have enough passed-in values\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#enforce-placeholders\"\n\t\t},\n\t\tschema: [{\n\t\t\ttype: \"object\",\n\t\t\tproperties: { ignoreList: {\n\t\t\t\ttype: \"array\",\n\t\t\t\titems: { type: \"string\" }\n\t\t\t} },\n\t\t\tadditionalProperties: false\n\t\t}],\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tmissingValue: \"Missing value(s) for the following placeholder(s): {{list}}.\",\n\t\t\tunusedValue: \"Value not used by the message.\"\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$13(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$13(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/enforce-plural-rules.ts\nvar LDML = /* @__PURE__ */ function(LDML) {\n\tLDML[\"zero\"] = \"zero\";\n\tLDML[\"one\"] = \"one\";\n\tLDML[\"two\"] = \"two\";\n\tLDML[\"few\"] = \"few\";\n\tLDML[\"many\"] = \"many\";\n\tLDML[\"other\"] = \"other\";\n\treturn LDML;\n}(LDML || {});\nfunction verifyAst$6(plConfig, ast) {\n\tconst errors = [];\n\tfor (const el of ast) if (isPluralElement(el)) {\n\t\tconst rules = Object.keys(plConfig);\n\t\tfor (const rule of rules) {\n\t\t\tif (plConfig[rule] && !el.options[rule]) errors.push({\n\t\t\t\tmessageId: \"missingPlural\",\n\t\t\t\tdata: { rule }\n\t\t\t});\n\t\t\tif (!plConfig[rule] && el.options[rule]) errors.push({\n\t\t\t\tmessageId: \"forbidden\",\n\t\t\t\tdata: { rule }\n\t\t\t});\n\t\t}\n\t\tconst { options } = el;\n\t\tfor (const selector of Object.keys(options)) errors.push(...verifyAst$6(plConfig, options[selector].value));\n\t}\n\treturn errors;\n}\nfunction checkNode$12(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, settings);\n\tif (!msgs.length) return;\n\tconst plConfig = context.options[0];\n\tif (!plConfig) return;\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tconst errors = verifyAst$6(plConfig, ast);\n\t\tfor (const error of errors) context.report({\n\t\t\tnode: messageNode,\n\t\t\t...error\n\t\t});\n\t}\n}\nconst name$17 = \"enforce-plural-rules\";\nconst rule$15 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Enforce plural rules to always specify certain categories like `one`/`other`\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#enforce-plural-rules\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [{\n\t\t\ttype: \"object\",\n\t\t\tproperties: Object.keys(LDML).reduce((schema, k) => {\n\t\t\t\tschema[k] = { type: \"boolean\" };\n\t\t\t\treturn schema;\n\t\t\t}, {}),\n\t\t\tadditionalProperties: false\n\t\t}],\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tmissingPlural: `Missing plural rule \"{{rule}}\"`,\n\t\t\tforbidden: `Plural rule \"{{rule}}\" is forbidden`\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$12(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$12(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-camel-case.ts\nconst name$16 = \"no-camel-case\";\nconst CAMEL_CASE_REGEX = /[A-Z]/;\nfunction verifyAst$5(ast) {\n\tconst errors = [];\n\tfor (const el of ast) {\n\t\tif (isArgumentElement(el)) {\n\t\t\tif (CAMEL_CASE_REGEX.test(el.value)) errors.push({\n\t\t\t\tmessageId: \"camelcase\",\n\t\t\t\tdata: {}\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tif (isPluralElement(el)) {\n\t\t\tif (CAMEL_CASE_REGEX.test(el.value)) errors.push({\n\t\t\t\tmessageId: \"camelcase\",\n\t\t\t\tdata: {}\n\t\t\t});\n\t\t\tconst { options } = el;\n\t\t\tfor (const selector of Object.keys(options)) errors.push(...verifyAst$5(options[selector].value));\n\t\t}\n\t}\n\treturn errors;\n}\nfunction checkNode$11(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, settings);\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tconst errors = verifyAst$5(ast);\n\t\tfor (const error of errors) context.report({\n\t\t\tnode: messageNode,\n\t\t\t...error\n\t\t});\n\t}\n}\nconst rule$14 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Disallow camel case placeholders in message\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-camel-case\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [],\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tcamelcase: \"Camel case arguments are not allowed\"\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$11(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$11(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-complex-selectors.ts\nfunction calculateComplexity(ast) {\n\tconst complexityByNode = /* @__PURE__ */ new Map();\n\treturn _calculate(ast, 0);\n\tfunction _calculate(ast, index) {\n\t\tconst element = ast[index];\n\t\tif (!element) return 1;\n\t\tconst cachedComplexity = complexityByNode.get(element);\n\t\tif (cachedComplexity !== void 0) return cachedComplexity;\n\t\tlet complexity;\n\t\tswitch (element.type) {\n\t\t\tcase TYPE.plural:\n\t\t\tcase TYPE.select: {\n\t\t\t\tlet sumOfOptions = 0;\n\t\t\t\tfor (const { value } of Object.values(element.options)) sumOfOptions += _calculate(value, 0);\n\t\t\t\tcomplexity = sumOfOptions * _calculate(ast, index + 1);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase TYPE.tag:\n\t\t\t\tcomplexity = _calculate(element.children, 0) * _calculate(ast, index + 1);\n\t\t\t\tbreak;\n\t\t\tdefault: complexity = _calculate(ast, index + 1);\n\t\t}\n\t\tcomplexityByNode.set(element, complexity);\n\t\treturn complexity;\n\t}\n}\nfunction checkNode$10(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, settings);\n\tif (!msgs.length) return;\n\tconst config = {\n\t\tlimit: 20,\n\t\t...context.options[0]\n\t};\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e instanceof Error ? e.message : String(e) }\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst complexity = calculateComplexity(ast);\n\t\tif (complexity > config.limit) context.report({\n\t\t\tnode: messageNode,\n\t\t\tmessageId: \"tooComplex\",\n\t\t\tdata: {\n\t\t\t\tcomplexity,\n\t\t\t\tlimit: config.limit\n\t\t\t}\n\t\t});\n\t}\n}\nconst name$15 = \"no-complex-selectors\";\nconst rule$13 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: `Make sure a sentence is not too complex.\nComplexity is determined by how many strings are produced when we try to\nflatten the sentence given its selectors. For example:\n\"I have {count, plural, one{a dog} other{many dogs}}\"\nhas the complexity of 2 because flattening the plural selector\nresults in 2 sentences: \"I have a dog\" & \"I have many dogs\".\nDefault complexity limit is 20\n(using Smartling as a reference: https://help.smartling.com/hc/en-us/articles/360008030994-ICU-MessageFormat)\n`,\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-complex-selectors\"\n\t\t},\n\t\tschema: [{\n\t\t\ttype: \"object\",\n\t\t\tproperties: { limit: { type: \"number\" } },\n\t\t\tadditionalProperties: false\n\t\t}],\n\t\tfixable: \"code\",\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\ttooComplex: `Message complexity is too high ({{complexity}} vs limit at {{limit}})`\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$10(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$10(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region node_modules/.aspect_rules_js/@formatjs_generated+unicode@0.0.0/node_modules/@formatjs_generated/unicode/emoji-data.js\nconst EMOJI_VERSIONS = [\n\t\"0.0\",\n\t\"0.6\",\n\t\"0.7\",\n\t\"1.0\",\n\t\"2.0\",\n\t\"3.0\",\n\t\"4.0\",\n\t\"5.0\",\n\t\"11.0\",\n\t\"12.0\",\n\t\"13.0\",\n\t\"14.0\",\n\t\"15.0\",\n\t\"16.0\",\n\t\"17.0\"\n];\n/**\n* Emoji codepoint ranges with their Unicode versions\n* Total ranges: 418\n*\n* To check if a codepoint belongs to a version, iterate through ranges\n* and check if codepoint >= start && codepoint <= end\n*/\nconst EMOJI_RANGES = [\n\t{\n\t\tstart: 35,\n\t\tend: 35,\n\t\tversion: \"0.0\",\n\t\tname: \"hash sign\"\n\t},\n\t{\n\t\tstart: 42,\n\t\tend: 42,\n\t\tversion: \"0.0\",\n\t\tname: \"asterisk\"\n\t},\n\t{\n\t\tstart: 48,\n\t\tend: 57,\n\t\tversion: \"0.0\",\n\t\tname: \"digit zero..digit nine\"\n\t},\n\t{\n\t\tstart: 127462,\n\t\tend: 127487,\n\t\tversion: \"0.0\",\n\t\tname: \"regional indicator symbol letter a..regional indicator symbol letter z\"\n\t},\n\t{\n\t\tstart: 169,\n\t\tend: 169,\n\t\tversion: \"0.6\",\n\t\tname: \"copyright\"\n\t},\n\t{\n\t\tstart: 174,\n\t\tend: 174,\n\t\tversion: \"0.6\",\n\t\tname: \"registered\"\n\t},\n\t{\n\t\tstart: 8252,\n\t\tend: 8252,\n\t\tversion: \"0.6\",\n\t\tname: \"double exclamation mark\"\n\t},\n\t{\n\t\tstart: 8265,\n\t\tend: 8265,\n\t\tversion: \"0.6\",\n\t\tname: \"exclamation question mark\"\n\t},\n\t{\n\t\tstart: 8482,\n\t\tend: 8482,\n\t\tversion: \"0.6\",\n\t\tname: \"trade mark\"\n\t},\n\t{\n\t\tstart: 8505,\n\t\tend: 8505,\n\t\tversion: \"0.6\",\n\t\tname: \"information\"\n\t},\n\t{\n\t\tstart: 8596,\n\t\tend: 8601,\n\t\tversion: \"0.6\",\n\t\tname: \"left-right arrow..down-left arrow\"\n\t},\n\t{\n\t\tstart: 8617,\n\t\tend: 8618,\n\t\tversion: \"0.6\",\n\t\tname: \"right arrow curving left..left arrow curving right\"\n\t},\n\t{\n\t\tstart: 8986,\n\t\tend: 8987,\n\t\tversion: \"0.6\",\n\t\tname: \"watch..hourglass done\"\n\t},\n\t{\n\t\tstart: 9193,\n\t\tend: 9196,\n\t\tversion: \"0.6\",\n\t\tname: \"fast-forward button..fast down button\"\n\t},\n\t{\n\t\tstart: 9200,\n\t\tend: 9200,\n\t\tversion: \"0.6\",\n\t\tname: \"alarm clock\"\n\t},\n\t{\n\t\tstart: 9203,\n\t\tend: 9203,\n\t\tversion: \"0.6\",\n\t\tname: \"hourglass not done\"\n\t},\n\t{\n\t\tstart: 9410,\n\t\tend: 9410,\n\t\tversion: \"0.6\",\n\t\tname: \"circled M\"\n\t},\n\t{\n\t\tstart: 9642,\n\t\tend: 9643,\n\t\tversion: \"0.6\",\n\t\tname: \"black small square..white small square\"\n\t},\n\t{\n\t\tstart: 9654,\n\t\tend: 9654,\n\t\tversion: \"0.6\",\n\t\tname: \"play button\"\n\t},\n\t{\n\t\tstart: 9664,\n\t\tend: 9664,\n\t\tversion: \"0.6\",\n\t\tname: \"reverse button\"\n\t},\n\t{\n\t\tstart: 9723,\n\t\tend: 9726,\n\t\tversion: \"0.6\",\n\t\tname: \"white medium square..black medium-small square\"\n\t},\n\t{\n\t\tstart: 9728,\n\t\tend: 9729,\n\t\tversion: \"0.6\",\n\t\tname: \"sun..cloud\"\n\t},\n\t{\n\t\tstart: 9742,\n\t\tend: 9742,\n\t\tversion: \"0.6\",\n\t\tname: \"telephone\"\n\t},\n\t{\n\t\tstart: 9745,\n\t\tend: 9745,\n\t\tversion: \"0.6\",\n\t\tname: \"check box with check\"\n\t},\n\t{\n\t\tstart: 9748,\n\t\tend: 9749,\n\t\tversion: \"0.6\",\n\t\tname: \"umbrella with rain drops..hot beverage\"\n\t},\n\t{\n\t\tstart: 9757,\n\t\tend: 9757,\n\t\tversion: \"0.6\",\n\t\tname: \"index pointing up\"\n\t},\n\t{\n\t\tstart: 9786,\n\t\tend: 9786,\n\t\tversion: \"0.6\",\n\t\tname: \"smiling face\"\n\t},\n\t{\n\t\tstart: 9800,\n\t\tend: 9811,\n\t\tversion: \"0.6\",\n\t\tname: \"Aries..Pisces\"\n\t},\n\t{\n\t\tstart: 9824,\n\t\tend: 9824,\n\t\tversion: \"0.6\",\n\t\tname: \"spade suit\"\n\t},\n\t{\n\t\tstart: 9827,\n\t\tend: 9827,\n\t\tversion: \"0.6\",\n\t\tname: \"club suit\"\n\t},\n\t{\n\t\tstart: 9829,\n\t\tend: 9830,\n\t\tversion: \"0.6\",\n\t\tname: \"heart suit..diamond suit\"\n\t},\n\t{\n\t\tstart: 9832,\n\t\tend: 9832,\n\t\tversion: \"0.6\",\n\t\tname: \"hot springs\"\n\t},\n\t{\n\t\tstart: 9851,\n\t\tend: 9851,\n\t\tversion: \"0.6\",\n\t\tname: \"recycling symbol\"\n\t},\n\t{\n\t\tstart: 9855,\n\t\tend: 9855,\n\t\tversion: \"0.6\",\n\t\tname: \"wheelchair symbol\"\n\t},\n\t{\n\t\tstart: 9875,\n\t\tend: 9875,\n\t\tversion: \"0.6\",\n\t\tname: \"anchor\"\n\t},\n\t{\n\t\tstart: 9888,\n\t\tend: 9889,\n\t\tversion: \"0.6\",\n\t\tname: \"warning..high voltage\"\n\t},\n\t{\n\t\tstart: 9898,\n\t\tend: 9899,\n\t\tversion: \"0.6\",\n\t\tname: \"white circle..black circle\"\n\t},\n\t{\n\t\tstart: 9917,\n\t\tend: 9918,\n\t\tversion: \"0.6\",\n\t\tname: \"soccer ball..baseball\"\n\t},\n\t{\n\t\tstart: 9924,\n\t\tend: 9925,\n\t\tversion: \"0.6\",\n\t\tname: \"snowman without snow..sun behind cloud\"\n\t},\n\t{\n\t\tstart: 9934,\n\t\tend: 9934,\n\t\tversion: \"0.6\",\n\t\tname: \"Ophiuchus\"\n\t},\n\t{\n\t\tstart: 9940,\n\t\tend: 9940,\n\t\tversion: \"0.6\",\n\t\tname: \"no entry\"\n\t},\n\t{\n\t\tstart: 9962,\n\t\tend: 9962,\n\t\tversion: \"0.6\",\n\t\tname: \"church\"\n\t},\n\t{\n\t\tstart: 9970,\n\t\tend: 9971,\n\t\tversion: \"0.6\",\n\t\tname: \"fountain..flag in hole\"\n\t},\n\t{\n\t\tstart: 9973,\n\t\tend: 9973,\n\t\tversion: \"0.6\",\n\t\tname: \"sailboat\"\n\t},\n\t{\n\t\tstart: 9978,\n\t\tend: 9978,\n\t\tversion: \"0.6\",\n\t\tname: \"tent\"\n\t},\n\t{\n\t\tstart: 9981,\n\t\tend: 9981,\n\t\tversion: \"0.6\",\n\t\tname: \"fuel pump\"\n\t},\n\t{\n\t\tstart: 9986,\n\t\tend: 9986,\n\t\tversion: \"0.6\",\n\t\tname: \"scissors\"\n\t},\n\t{\n\t\tstart: 9989,\n\t\tend: 9989,\n\t\tversion: \"0.6\",\n\t\tname: \"check mark button\"\n\t},\n\t{\n\t\tstart: 9992,\n\t\tend: 9996,\n\t\tversion: \"0.6\",\n\t\tname: \"airplane..victory hand\"\n\t},\n\t{\n\t\tstart: 9999,\n\t\tend: 9999,\n\t\tversion: \"0.6\",\n\t\tname: \"pencil\"\n\t},\n\t{\n\t\tstart: 10002,\n\t\tend: 10002,\n\t\tversion: \"0.6\",\n\t\tname: \"black nib\"\n\t},\n\t{\n\t\tstart: 10004,\n\t\tend: 10004,\n\t\tversion: \"0.6\",\n\t\tname: \"check mark\"\n\t},\n\t{\n\t\tstart: 10006,\n\t\tend: 10006,\n\t\tversion: \"0.6\",\n\t\tname: \"multiply\"\n\t},\n\t{\n\t\tstart: 10024,\n\t\tend: 10024,\n\t\tversion: \"0.6\",\n\t\tname: \"sparkles\"\n\t},\n\t{\n\t\tstart: 10035,\n\t\tend: 10036,\n\t\tversion: \"0.6\",\n\t\tname: \"eight-spoked asterisk..eight-pointed star\"\n\t},\n\t{\n\t\tstart: 10052,\n\t\tend: 10052,\n\t\tversion: \"0.6\",\n\t\tname: \"snowflake\"\n\t},\n\t{\n\t\tstart: 10055,\n\t\tend: 10055,\n\t\tversion: \"0.6\",\n\t\tname: \"sparkle\"\n\t},\n\t{\n\t\tstart: 10060,\n\t\tend: 10060,\n\t\tversion: \"0.6\",\n\t\tname: \"cross mark\"\n\t},\n\t{\n\t\tstart: 10062,\n\t\tend: 10062,\n\t\tversion: \"0.6\",\n\t\tname: \"cross mark button\"\n\t},\n\t{\n\t\tstart: 10067,\n\t\tend: 10069,\n\t\tversion: \"0.6\",\n\t\tname: \"red question mark..white exclamation mark\"\n\t},\n\t{\n\t\tstart: 10071,\n\t\tend: 10071,\n\t\tversion: \"0.6\",\n\t\tname: \"red exclamation mark\"\n\t},\n\t{\n\t\tstart: 10084,\n\t\tend: 10084,\n\t\tversion: \"0.6\",\n\t\tname: \"red heart\"\n\t},\n\t{\n\t\tstart: 10133,\n\t\tend: 10135,\n\t\tversion: \"0.6\",\n\t\tname: \"plus..divide\"\n\t},\n\t{\n\t\tstart: 10145,\n\t\tend: 10145,\n\t\tversion: \"0.6\",\n\t\tname: \"right arrow\"\n\t},\n\t{\n\t\tstart: 10160,\n\t\tend: 10160,\n\t\tversion: \"0.6\",\n\t\tname: \"curly loop\"\n\t},\n\t{\n\t\tstart: 10548,\n\t\tend: 10549,\n\t\tversion: \"0.6\",\n\t\tname: \"right arrow curving up..right arrow curving down\"\n\t},\n\t{\n\t\tstart: 11013,\n\t\tend: 11015,\n\t\tversion: \"0.6\",\n\t\tname: \"left arrow..down arrow\"\n\t},\n\t{\n\t\tstart: 11035,\n\t\tend: 11036,\n\t\tversion: \"0.6\",\n\t\tname: \"black large square..white large square\"\n\t},\n\t{\n\t\tstart: 11088,\n\t\tend: 11088,\n\t\tversion: \"0.6\",\n\t\tname: \"star\"\n\t},\n\t{\n\t\tstart: 11093,\n\t\tend: 11093,\n\t\tversion: \"0.6\",\n\t\tname: \"hollow red circle\"\n\t},\n\t{\n\t\tstart: 12336,\n\t\tend: 12336,\n\t\tversion: \"0.6\",\n\t\tname: \"wavy dash\"\n\t},\n\t{\n\t\tstart: 12349,\n\t\tend: 12349,\n\t\tversion: \"0.6\",\n\t\tname: \"part alternation mark\"\n\t},\n\t{\n\t\tstart: 12951,\n\t\tend: 12951,\n\t\tversion: \"0.6\",\n\t\tname: \"Japanese “congratulations” button\"\n\t},\n\t{\n\t\tstart: 12953,\n\t\tend: 12953,\n\t\tversion: \"0.6\",\n\t\tname: \"Japanese “secret” button\"\n\t},\n\t{\n\t\tstart: 126980,\n\t\tend: 126980,\n\t\tversion: \"0.6\",\n\t\tname: \"mahjong red dragon\"\n\t},\n\t{\n\t\tstart: 127183,\n\t\tend: 127183,\n\t\tversion: \"0.6\",\n\t\tname: \"joker\"\n\t},\n\t{\n\t\tstart: 127344,\n\t\tend: 127345,\n\t\tversion: \"0.6\",\n\t\tname: \"A button (blood type)..B button (blood type)\"\n\t},\n\t{\n\t\tstart: 127358,\n\t\tend: 127359,\n\t\tversion: \"0.6\",\n\t\tname: \"O button (blood type)..P button\"\n\t},\n\t{\n\t\tstart: 127374,\n\t\tend: 127374,\n\t\tversion: \"0.6\",\n\t\tname: \"AB button (blood type)\"\n\t},\n\t{\n\t\tstart: 127377,\n\t\tend: 127386,\n\t\tversion: \"0.6\",\n\t\tname: \"CL button..VS button\"\n\t},\n\t{\n\t\tstart: 127489,\n\t\tend: 127490,\n\t\tversion: \"0.6\",\n\t\tname: \"Japanese “here” button..Japanese “service charge” button\"\n\t},\n\t{\n\t\tstart: 127514,\n\t\tend: 127514,\n\t\tversion: \"0.6\",\n\t\tname: \"Japanese “free of charge” button\"\n\t},\n\t{\n\t\tstart: 127535,\n\t\tend: 127535,\n\t\tversion: \"0.6\",\n\t\tname: \"Japanese “reserved” button\"\n\t},\n\t{\n\t\tstart: 127538,\n\t\tend: 127546,\n\t\tversion: \"0.6\",\n\t\tname: \"Japanese “prohibited” button..Japanese “open for business” button\"\n\t},\n\t{\n\t\tstart: 127568,\n\t\tend: 127569,\n\t\tversion: \"0.6\",\n\t\tname: \"Japanese “bargain” button..Japanese “acceptable” button\"\n\t},\n\t{\n\t\tstart: 127744,\n\t\tend: 127756,\n\t\tversion: \"0.6\",\n\t\tname: \"cyclone..milky way\"\n\t},\n\t{\n\t\tstart: 127759,\n\t\tend: 127759,\n\t\tversion: \"0.6\",\n\t\tname: \"globe showing Asia-Australia\"\n\t},\n\t{\n\t\tstart: 127761,\n\t\tend: 127761,\n\t\tversion: \"0.6\",\n\t\tname: \"new moon\"\n\t},\n\t{\n\t\tstart: 127763,\n\t\tend: 127765,\n\t\tversion: \"0.6\",\n\t\tname: \"first quarter moon..full moon\"\n\t},\n\t{\n\t\tstart: 127769,\n\t\tend: 127769,\n\t\tversion: \"0.6\",\n\t\tname: \"crescent moon\"\n\t},\n\t{\n\t\tstart: 127771,\n\t\tend: 127771,\n\t\tversion: \"0.6\",\n\t\tname: \"first quarter moon face\"\n\t},\n\t{\n\t\tstart: 127775,\n\t\tend: 127776,\n\t\tversion: \"0.6\",\n\t\tname: \"glowing star..shooting star\"\n\t},\n\t{\n\t\tstart: 127792,\n\t\tend: 127793,\n\t\tversion: \"0.6\",\n\t\tname: \"chestnut..seedling\"\n\t},\n\t{\n\t\tstart: 127796,\n\t\tend: 127797,\n\t\tversion: \"0.6\",\n\t\tname: \"palm tree..cactus\"\n\t},\n\t{\n\t\tstart: 127799,\n\t\tend: 127818,\n\t\tversion: \"0.6\",\n\t\tname: \"tulip..tangerine\"\n\t},\n\t{\n\t\tstart: 127820,\n\t\tend: 127823,\n\t\tversion: \"0.6\",\n\t\tname: \"banana..green apple\"\n\t},\n\t{\n\t\tstart: 127825,\n\t\tend: 127867,\n\t\tversion: \"0.6\",\n\t\tname: \"peach..clinking beer mugs\"\n\t},\n\t{\n\t\tstart: 127872,\n\t\tend: 127891,\n\t\tversion: \"0.6\",\n\t\tname: \"ribbon..graduation cap\"\n\t},\n\t{\n\t\tstart: 127904,\n\t\tend: 127940,\n\t\tversion: \"0.6\",\n\t\tname: \"carousel horse..person surfing\"\n\t},\n\t{\n\t\tstart: 127942,\n\t\tend: 127942,\n\t\tversion: \"0.6\",\n\t\tname: \"trophy\"\n\t},\n\t{\n\t\tstart: 127944,\n\t\tend: 127944,\n\t\tversion: \"0.6\",\n\t\tname: \"american football\"\n\t},\n\t{\n\t\tstart: 127946,\n\t\tend: 127946,\n\t\tversion: \"0.6\",\n\t\tname: \"person swimming\"\n\t},\n\t{\n\t\tstart: 127968,\n\t\tend: 127971,\n\t\tversion: \"0.6\",\n\t\tname: \"house..Japanese post office\"\n\t},\n\t{\n\t\tstart: 127973,\n\t\tend: 127984,\n\t\tversion: \"0.6\",\n\t\tname: \"hospital..castle\"\n\t},\n\t{\n\t\tstart: 128012,\n\t\tend: 128014,\n\t\tversion: \"0.6\",\n\t\tname: \"snail..horse\"\n\t},\n\t{\n\t\tstart: 128017,\n\t\tend: 128018,\n\t\tversion: \"0.6\",\n\t\tname: \"ewe..monkey\"\n\t},\n\t{\n\t\tstart: 128020,\n\t\tend: 128020,\n\t\tversion: \"0.6\",\n\t\tname: \"chicken\"\n\t},\n\t{\n\t\tstart: 128023,\n\t\tend: 128041,\n\t\tversion: \"0.6\",\n\t\tname: \"boar..poodle\"\n\t},\n\t{\n\t\tstart: 128043,\n\t\tend: 128062,\n\t\tversion: \"0.6\",\n\t\tname: \"two-hump camel..paw prints\"\n\t},\n\t{\n\t\tstart: 128064,\n\t\tend: 128064,\n\t\tversion: \"0.6\",\n\t\tname: \"eyes\"\n\t},\n\t{\n\t\tstart: 128066,\n\t\tend: 128100,\n\t\tversion: \"0.6\",\n\t\tname: \"ear..bust in silhouette\"\n\t},\n\t{\n\t\tstart: 128102,\n\t\tend: 128107,\n\t\tversion: \"0.6\",\n\t\tname: \"boy..woman and man holding hands\"\n\t},\n\t{\n\t\tstart: 128110,\n\t\tend: 128172,\n\t\tversion: \"0.6\",\n\t\tname: \"police officer..speech balloon\"\n\t},\n\t{\n\t\tstart: 128174,\n\t\tend: 128181,\n\t\tversion: \"0.6\",\n\t\tname: \"white flower..dollar banknote\"\n\t},\n\t{\n\t\tstart: 128184,\n\t\tend: 128235,\n\t\tversion: \"0.6\",\n\t\tname: \"money with wings..closed mailbox with raised flag\"\n\t},\n\t{\n\t\tstart: 128238,\n\t\tend: 128238,\n\t\tversion: \"0.6\",\n\t\tname: \"postbox\"\n\t},\n\t{\n\t\tstart: 128240,\n\t\tend: 128244,\n\t\tversion: \"0.6\",\n\t\tname: \"newspaper..mobile phone off\"\n\t},\n\t{\n\t\tstart: 128246,\n\t\tend: 128247,\n\t\tversion: \"0.6\",\n\t\tname: \"antenna bars..camera\"\n\t},\n\t{\n\t\tstart: 128249,\n\t\tend: 128252,\n\t\tversion: \"0.6\",\n\t\tname: \"video camera..videocassette\"\n\t},\n\t{\n\t\tstart: 128259,\n\t\tend: 128259,\n\t\tversion: \"0.6\",\n\t\tname: \"clockwise vertical arrows\"\n\t},\n\t{\n\t\tstart: 128266,\n\t\tend: 128276,\n\t\tversion: \"0.6\",\n\t\tname: \"speaker high volume..bell\"\n\t},\n\t{\n\t\tstart: 128278,\n\t\tend: 128299,\n\t\tversion: \"0.6\",\n\t\tname: \"bookmark..water pistol\"\n\t},\n\t{\n\t\tstart: 128302,\n\t\tend: 128317,\n\t\tversion: \"0.6\",\n\t\tname: \"crystal ball..downwards button\"\n\t},\n\t{\n\t\tstart: 128336,\n\t\tend: 128347,\n\t\tversion: \"0.6\",\n\t\tname: \"one o’clock..twelve o’clock\"\n\t},\n\t{\n\t\tstart: 128507,\n\t\tend: 128511,\n\t\tversion: \"0.6\",\n\t\tname: \"mount fuji..moai\"\n\t},\n\t{\n\t\tstart: 128513,\n\t\tend: 128518,\n\t\tversion: \"0.6\",\n\t\tname: \"beaming face with smiling eyes..grinning squinting face\"\n\t},\n\t{\n\t\tstart: 128521,\n\t\tend: 128525,\n\t\tversion: \"0.6\",\n\t\tname: \"winking face..smiling face with heart-eyes\"\n\t},\n\t{\n\t\tstart: 128527,\n\t\tend: 128527,\n\t\tversion: \"0.6\",\n\t\tname: \"smirking face\"\n\t},\n\t{\n\t\tstart: 128530,\n\t\tend: 128532,\n\t\tversion: \"0.6\",\n\t\tname: \"unamused face..pensive face\"\n\t},\n\t{\n\t\tstart: 128534,\n\t\tend: 128534,\n\t\tversion: \"0.6\",\n\t\tname: \"confounded face\"\n\t},\n\t{\n\t\tstart: 128536,\n\t\tend: 128536,\n\t\tversion: \"0.6\",\n\t\tname: \"face blowing a kiss\"\n\t},\n\t{\n\t\tstart: 128538,\n\t\tend: 128538,\n\t\tversion: \"0.6\",\n\t\tname: \"kissing face with closed eyes\"\n\t},\n\t{\n\t\tstart: 128540,\n\t\tend: 128542,\n\t\tversion: \"0.6\",\n\t\tname: \"winking face with tongue..disappointed face\"\n\t},\n\t{\n\t\tstart: 128544,\n\t\tend: 128549,\n\t\tversion: \"0.6\",\n\t\tname: \"angry face..sad but relieved face\"\n\t},\n\t{\n\t\tstart: 128552,\n\t\tend: 128555,\n\t\tversion: \"0.6\",\n\t\tname: \"fearful face..tired face\"\n\t},\n\t{\n\t\tstart: 128557,\n\t\tend: 128557,\n\t\tversion: \"0.6\",\n\t\tname: \"loudly crying face\"\n\t},\n\t{\n\t\tstart: 128560,\n\t\tend: 128563,\n\t\tversion: \"0.6\",\n\t\tname: \"anxious face with sweat..flushed face\"\n\t},\n\t{\n\t\tstart: 128565,\n\t\tend: 128565,\n\t\tversion: \"0.6\",\n\t\tname: \"face with crossed-out eyes\"\n\t},\n\t{\n\t\tstart: 128567,\n\t\tend: 128576,\n\t\tversion: \"0.6\",\n\t\tname: \"face with medical mask..weary cat\"\n\t},\n\t{\n\t\tstart: 128581,\n\t\tend: 128591,\n\t\tversion: \"0.6\",\n\t\tname: \"person gesturing NO..folded hands\"\n\t},\n\t{\n\t\tstart: 128640,\n\t\tend: 128640,\n\t\tversion: \"0.6\",\n\t\tname: \"rocket\"\n\t},\n\t{\n\t\tstart: 128643,\n\t\tend: 128645,\n\t\tversion: \"0.6\",\n\t\tname: \"railway car..bullet train\"\n\t},\n\t{\n\t\tstart: 128647,\n\t\tend: 128647,\n\t\tversion: \"0.6\",\n\t\tname: \"metro\"\n\t},\n\t{\n\t\tstart: 128649,\n\t\tend: 128649,\n\t\tversion: \"0.6\",\n\t\tname: \"station\"\n\t},\n\t{\n\t\tstart: 128652,\n\t\tend: 128652,\n\t\tversion: \"0.6\",\n\t\tname: \"bus\"\n\t},\n\t{\n\t\tstart: 128655,\n\t\tend: 128655,\n\t\tversion: \"0.6\",\n\t\tname: \"bus stop\"\n\t},\n\t{\n\t\tstart: 128657,\n\t\tend: 128659,\n\t\tversion: \"0.6\",\n\t\tname: \"ambulance..police car\"\n\t},\n\t{\n\t\tstart: 128661,\n\t\tend: 128661,\n\t\tversion: \"0.6\",\n\t\tname: \"taxi\"\n\t},\n\t{\n\t\tstart: 128663,\n\t\tend: 128663,\n\t\tversion: \"0.6\",\n\t\tname: \"automobile\"\n\t},\n\t{\n\t\tstart: 128665,\n\t\tend: 128666,\n\t\tversion: \"0.6\",\n\t\tname: \"sport utility vehicle..delivery truck\"\n\t},\n\t{\n\t\tstart: 128674,\n\t\tend: 128674,\n\t\tversion: \"0.6\",\n\t\tname: \"ship\"\n\t},\n\t{\n\t\tstart: 128676,\n\t\tend: 128677,\n\t\tversion: \"0.6\",\n\t\tname: \"speedboat..horizontal traffic light\"\n\t},\n\t{\n\t\tstart: 128679,\n\t\tend: 128685,\n\t\tversion: \"0.6\",\n\t\tname: \"construction..no smoking\"\n\t},\n\t{\n\t\tstart: 128690,\n\t\tend: 128690,\n\t\tversion: \"0.6\",\n\t\tname: \"bicycle\"\n\t},\n\t{\n\t\tstart: 128694,\n\t\tend: 128694,\n\t\tversion: \"0.6\",\n\t\tname: \"person walking\"\n\t},\n\t{\n\t\tstart: 128697,\n\t\tend: 128702,\n\t\tversion: \"0.6\",\n\t\tname: \"men’s room..water closet\"\n\t},\n\t{\n\t\tstart: 128704,\n\t\tend: 128704,\n\t\tversion: \"0.6\",\n\t\tname: \"person taking bath\"\n\t},\n\t{\n\t\tstart: 9197,\n\t\tend: 9198,\n\t\tversion: \"0.7\",\n\t\tname: \"next track button..last track button\"\n\t},\n\t{\n\t\tstart: 9208,\n\t\tend: 9210,\n\t\tversion: \"0.7\",\n\t\tname: \"pause button..record button\"\n\t},\n\t{\n\t\tstart: 9730,\n\t\tend: 9731,\n\t\tversion: \"0.7\",\n\t\tname: \"umbrella..snowman\"\n\t},\n\t{\n\t\tstart: 9770,\n\t\tend: 9770,\n\t\tversion: \"0.7\",\n\t\tname: \"star and crescent\"\n\t},\n\t{\n\t\tstart: 9775,\n\t\tend: 9775,\n\t\tversion: \"0.7\",\n\t\tname: \"yin yang\"\n\t},\n\t{\n\t\tstart: 9784,\n\t\tend: 9785,\n\t\tversion: \"0.7\",\n\t\tname: \"wheel of dharma..frowning face\"\n\t},\n\t{\n\t\tstart: 9928,\n\t\tend: 9928,\n\t\tversion: \"0.7\",\n\t\tname: \"cloud with lightning and rain\"\n\t},\n\t{\n\t\tstart: 9935,\n\t\tend: 9935,\n\t\tversion: \"0.7\",\n\t\tname: \"pick\"\n\t},\n\t{\n\t\tstart: 9937,\n\t\tend: 9937,\n\t\tversion: \"0.7\",\n\t\tname: \"rescue worker’s helmet\"\n\t},\n\t{\n\t\tstart: 9939,\n\t\tend: 9939,\n\t\tversion: \"0.7\",\n\t\tname: \"chains\"\n\t},\n\t{\n\t\tstart: 9961,\n\t\tend: 9961,\n\t\tversion: \"0.7\",\n\t\tname: \"shinto shrine\"\n\t},\n\t{\n\t\tstart: 9968,\n\t\tend: 9969,\n\t\tversion: \"0.7\",\n\t\tname: \"mountain..umbrella on ground\"\n\t},\n\t{\n\t\tstart: 9972,\n\t\tend: 9972,\n\t\tversion: \"0.7\",\n\t\tname: \"ferry\"\n\t},\n\t{\n\t\tstart: 9975,\n\t\tend: 9977,\n\t\tversion: \"0.7\",\n\t\tname: \"skier..person bouncing ball\"\n\t},\n\t{\n\t\tstart: 9997,\n\t\tend: 9997,\n\t\tversion: \"0.7\",\n\t\tname: \"writing hand\"\n\t},\n\t{\n\t\tstart: 10013,\n\t\tend: 10013,\n\t\tversion: \"0.7\",\n\t\tname: \"latin cross\"\n\t},\n\t{\n\t\tstart: 10017,\n\t\tend: 10017,\n\t\tversion: \"0.7\",\n\t\tname: \"star of David\"\n\t},\n\t{\n\t\tstart: 127757,\n\t\tend: 127758,\n\t\tversion: \"0.7\",\n\t\tname: \"globe showing Europe-Africa..globe showing Americas\"\n\t},\n\t{\n\t\tstart: 127772,\n\t\tend: 127772,\n\t\tversion: \"0.7\",\n\t\tname: \"last quarter moon face\"\n\t},\n\t{\n\t\tstart: 127777,\n\t\tend: 127777,\n\t\tversion: \"0.7\",\n\t\tname: \"thermometer\"\n\t},\n\t{\n\t\tstart: 127780,\n\t\tend: 127788,\n\t\tversion: \"0.7\",\n\t\tname: \"sun behind small cloud..wind face\"\n\t},\n\t{\n\t\tstart: 127798,\n\t\tend: 127798,\n\t\tversion: \"0.7\",\n\t\tname: \"hot pepper\"\n\t},\n\t{\n\t\tstart: 127869,\n\t\tend: 127869,\n\t\tversion: \"0.7\",\n\t\tname: \"fork and knife with plate\"\n\t},\n\t{\n\t\tstart: 127894,\n\t\tend: 127895,\n\t\tversion: \"0.7\",\n\t\tname: \"military medal..reminder ribbon\"\n\t},\n\t{\n\t\tstart: 127897,\n\t\tend: 127899,\n\t\tversion: \"0.7\",\n\t\tname: \"studio microphone..control knobs\"\n\t},\n\t{\n\t\tstart: 127902,\n\t\tend: 127903,\n\t\tversion: \"0.7\",\n\t\tname: \"film frames..admission tickets\"\n\t},\n\t{\n\t\tstart: 127947,\n\t\tend: 127950,\n\t\tversion: \"0.7\",\n\t\tname: \"person lifting weights..racing car\"\n\t},\n\t{\n\t\tstart: 127956,\n\t\tend: 127967,\n\t\tversion: \"0.7\",\n\t\tname: \"snow-capped mountain..stadium\"\n\t},\n\t{\n\t\tstart: 127987,\n\t\tend: 127987,\n\t\tversion: \"0.7\",\n\t\tname: \"white flag\"\n\t},\n\t{\n\t\tstart: 127989,\n\t\tend: 127989,\n\t\tversion: \"0.7\",\n\t\tname: \"rosette\"\n\t},\n\t{\n\t\tstart: 127991,\n\t\tend: 127991,\n\t\tversion: \"0.7\",\n\t\tname: \"label\"\n\t},\n\t{\n\t\tstart: 128008,\n\t\tend: 128008,\n\t\tversion: \"0.7\",\n\t\tname: \"cat\"\n\t},\n\t{\n\t\tstart: 128021,\n\t\tend: 128021,\n\t\tversion: \"0.7\",\n\t\tname: \"dog\"\n\t},\n\t{\n\t\tstart: 128063,\n\t\tend: 128063,\n\t\tversion: \"0.7\",\n\t\tname: \"chipmunk\"\n\t},\n\t{\n\t\tstart: 128065,\n\t\tend: 128065,\n\t\tversion: \"0.7\",\n\t\tname: \"eye\"\n\t},\n\t{\n\t\tstart: 128236,\n\t\tend: 128237,\n\t\tversion: \"0.7\",\n\t\tname: \"open mailbox with raised flag..open mailbox with lowered flag\"\n\t},\n\t{\n\t\tstart: 128253,\n\t\tend: 128253,\n\t\tversion: \"0.7\",\n\t\tname: \"film projector\"\n\t},\n\t{\n\t\tstart: 128264,\n\t\tend: 128264,\n\t\tversion: \"0.7\",\n\t\tname: \"speaker low volume\"\n\t},\n\t{\n\t\tstart: 128329,\n\t\tend: 128330,\n\t\tversion: \"0.7\",\n\t\tname: \"om..dove\"\n\t},\n\t{\n\t\tstart: 128348,\n\t\tend: 128359,\n\t\tversion: \"0.7\",\n\t\tname: \"one-thirty..twelve-thirty\"\n\t},\n\t{\n\t\tstart: 128367,\n\t\tend: 128368,\n\t\tversion: \"0.7\",\n\t\tname: \"candle..mantelpiece clock\"\n\t},\n\t{\n\t\tstart: 128371,\n\t\tend: 128377,\n\t\tversion: \"0.7\",\n\t\tname: \"hole..joystick\"\n\t},\n\t{\n\t\tstart: 128391,\n\t\tend: 128391,\n\t\tversion: \"0.7\",\n\t\tname: \"linked paperclips\"\n\t},\n\t{\n\t\tstart: 128394,\n\t\tend: 128397,\n\t\tversion: \"0.7\",\n\t\tname: \"pen..crayon\"\n\t},\n\t{\n\t\tstart: 128400,\n\t\tend: 128400,\n\t\tversion: \"0.7\",\n\t\tname: \"hand with fingers splayed\"\n\t},\n\t{\n\t\tstart: 128421,\n\t\tend: 128421,\n\t\tversion: \"0.7\",\n\t\tname: \"desktop computer\"\n\t},\n\t{\n\t\tstart: 128424,\n\t\tend: 128424,\n\t\tversion: \"0.7\",\n\t\tname: \"printer\"\n\t},\n\t{\n\t\tstart: 128433,\n\t\tend: 128434,\n\t\tversion: \"0.7\",\n\t\tname: \"computer mouse..trackball\"\n\t},\n\t{\n\t\tstart: 128444,\n\t\tend: 128444,\n\t\tversion: \"0.7\",\n\t\tname: \"framed picture\"\n\t},\n\t{\n\t\tstart: 128450,\n\t\tend: 128452,\n\t\tversion: \"0.7\",\n\t\tname: \"card index dividers..file cabinet\"\n\t},\n\t{\n\t\tstart: 128465,\n\t\tend: 128467,\n\t\tversion: \"0.7\",\n\t\tname: \"wastebasket..spiral calendar\"\n\t},\n\t{\n\t\tstart: 128476,\n\t\tend: 128478,\n\t\tversion: \"0.7\",\n\t\tname: \"clamp..rolled-up newspaper\"\n\t},\n\t{\n\t\tstart: 128481,\n\t\tend: 128481,\n\t\tversion: \"0.7\",\n\t\tname: \"dagger\"\n\t},\n\t{\n\t\tstart: 128483,\n\t\tend: 128483,\n\t\tversion: \"0.7\",\n\t\tname: \"speaking head\"\n\t},\n\t{\n\t\tstart: 128495,\n\t\tend: 128495,\n\t\tversion: \"0.7\",\n\t\tname: \"right anger bubble\"\n\t},\n\t{\n\t\tstart: 128499,\n\t\tend: 128499,\n\t\tversion: \"0.7\",\n\t\tname: \"ballot box with ballot\"\n\t},\n\t{\n\t\tstart: 128506,\n\t\tend: 128506,\n\t\tversion: \"0.7\",\n\t\tname: \"world map\"\n\t},\n\t{\n\t\tstart: 128528,\n\t\tend: 128528,\n\t\tversion: \"0.7\",\n\t\tname: \"neutral face\"\n\t},\n\t{\n\t\tstart: 128653,\n\t\tend: 128653,\n\t\tversion: \"0.7\",\n\t\tname: \"oncoming bus\"\n\t},\n\t{\n\t\tstart: 128660,\n\t\tend: 128660,\n\t\tversion: \"0.7\",\n\t\tname: \"oncoming police car\"\n\t},\n\t{\n\t\tstart: 128664,\n\t\tend: 128664,\n\t\tversion: \"0.7\",\n\t\tname: \"oncoming automobile\"\n\t},\n\t{\n\t\tstart: 128715,\n\t\tend: 128715,\n\t\tversion: \"0.7\",\n\t\tname: \"couch and lamp\"\n\t},\n\t{\n\t\tstart: 128717,\n\t\tend: 128719,\n\t\tversion: \"0.7\",\n\t\tname: \"shopping bags..bed\"\n\t},\n\t{\n\t\tstart: 128736,\n\t\tend: 128741,\n\t\tversion: \"0.7\",\n\t\tname: \"hammer and wrench..motor boat\"\n\t},\n\t{\n\t\tstart: 128745,\n\t\tend: 128745,\n\t\tversion: \"0.7\",\n\t\tname: \"small airplane\"\n\t},\n\t{\n\t\tstart: 128752,\n\t\tend: 128752,\n\t\tversion: \"0.7\",\n\t\tname: \"satellite\"\n\t},\n\t{\n\t\tstart: 128755,\n\t\tend: 128755,\n\t\tversion: \"0.7\",\n\t\tname: \"passenger ship\"\n\t},\n\t{\n\t\tstart: 9e3,\n\t\tend: 9e3,\n\t\tversion: \"1.0\",\n\t\tname: \"keyboard\"\n\t},\n\t{\n\t\tstart: 9167,\n\t\tend: 9167,\n\t\tversion: \"1.0\",\n\t\tname: \"eject button\"\n\t},\n\t{\n\t\tstart: 9199,\n\t\tend: 9199,\n\t\tversion: \"1.0\",\n\t\tname: \"play or pause button\"\n\t},\n\t{\n\t\tstart: 9201,\n\t\tend: 9202,\n\t\tversion: \"1.0\",\n\t\tname: \"stopwatch..timer clock\"\n\t},\n\t{\n\t\tstart: 9732,\n\t\tend: 9732,\n\t\tversion: \"1.0\",\n\t\tname: \"comet\"\n\t},\n\t{\n\t\tstart: 9752,\n\t\tend: 9752,\n\t\tversion: \"1.0\",\n\t\tname: \"shamrock\"\n\t},\n\t{\n\t\tstart: 9760,\n\t\tend: 9760,\n\t\tversion: \"1.0\",\n\t\tname: \"skull and crossbones\"\n\t},\n\t{\n\t\tstart: 9762,\n\t\tend: 9763,\n\t\tversion: \"1.0\",\n\t\tname: \"radioactive..biohazard\"\n\t},\n\t{\n\t\tstart: 9766,\n\t\tend: 9766,\n\t\tversion: \"1.0\",\n\t\tname: \"orthodox cross\"\n\t},\n\t{\n\t\tstart: 9774,\n\t\tend: 9774,\n\t\tversion: \"1.0\",\n\t\tname: \"peace symbol\"\n\t},\n\t{\n\t\tstart: 9874,\n\t\tend: 9874,\n\t\tversion: \"1.0\",\n\t\tname: \"hammer and pick\"\n\t},\n\t{\n\t\tstart: 9876,\n\t\tend: 9876,\n\t\tversion: \"1.0\",\n\t\tname: \"crossed swords\"\n\t},\n\t{\n\t\tstart: 9878,\n\t\tend: 9879,\n\t\tversion: \"1.0\",\n\t\tname: \"balance scale..alembic\"\n\t},\n\t{\n\t\tstart: 9881,\n\t\tend: 9881,\n\t\tversion: \"1.0\",\n\t\tname: \"gear\"\n\t},\n\t{\n\t\tstart: 9883,\n\t\tend: 9884,\n\t\tversion: \"1.0\",\n\t\tname: \"atom symbol..fleur-de-lis\"\n\t},\n\t{\n\t\tstart: 9904,\n\t\tend: 9905,\n\t\tversion: \"1.0\",\n\t\tname: \"coffin..funeral urn\"\n\t},\n\t{\n\t\tstart: 10083,\n\t\tend: 10083,\n\t\tversion: \"1.0\",\n\t\tname: \"heart exclamation\"\n\t},\n\t{\n\t\tstart: 10175,\n\t\tend: 10175,\n\t\tversion: \"1.0\",\n\t\tname: \"double curly loop\"\n\t},\n\t{\n\t\tstart: 127760,\n\t\tend: 127760,\n\t\tversion: \"1.0\",\n\t\tname: \"globe with meridians\"\n\t},\n\t{\n\t\tstart: 127762,\n\t\tend: 127762,\n\t\tversion: \"1.0\",\n\t\tname: \"waxing crescent moon\"\n\t},\n\t{\n\t\tstart: 127766,\n\t\tend: 127768,\n\t\tversion: \"1.0\",\n\t\tname: \"waning gibbous moon..waning crescent moon\"\n\t},\n\t{\n\t\tstart: 127770,\n\t\tend: 127770,\n\t\tversion: \"1.0\",\n\t\tname: \"new moon face\"\n\t},\n\t{\n\t\tstart: 127773,\n\t\tend: 127774,\n\t\tversion: \"1.0\",\n\t\tname: \"full moon face..sun with face\"\n\t},\n\t{\n\t\tstart: 127789,\n\t\tend: 127791,\n\t\tversion: \"1.0\",\n\t\tname: \"hot dog..burrito\"\n\t},\n\t{\n\t\tstart: 127794,\n\t\tend: 127795,\n\t\tversion: \"1.0\",\n\t\tname: \"evergreen tree..deciduous tree\"\n\t},\n\t{\n\t\tstart: 127819,\n\t\tend: 127819,\n\t\tversion: \"1.0\",\n\t\tname: \"lemon\"\n\t},\n\t{\n\t\tstart: 127824,\n\t\tend: 127824,\n\t\tversion: \"1.0\",\n\t\tname: \"pear\"\n\t},\n\t{\n\t\tstart: 127868,\n\t\tend: 127868,\n\t\tversion: \"1.0\",\n\t\tname: \"baby bottle\"\n\t},\n\t{\n\t\tstart: 127870,\n\t\tend: 127871,\n\t\tversion: \"1.0\",\n\t\tname: \"bottle with popping cork..popcorn\"\n\t},\n\t{\n\t\tstart: 127941,\n\t\tend: 127941,\n\t\tversion: \"1.0\",\n\t\tname: \"sports medal\"\n\t},\n\t{\n\t\tstart: 127943,\n\t\tend: 127943,\n\t\tversion: \"1.0\",\n\t\tname: \"horse racing\"\n\t},\n\t{\n\t\tstart: 127945,\n\t\tend: 127945,\n\t\tversion: \"1.0\",\n\t\tname: \"rugby football\"\n\t},\n\t{\n\t\tstart: 127951,\n\t\tend: 127955,\n\t\tversion: \"1.0\",\n\t\tname: \"cricket game..ping pong\"\n\t},\n\t{\n\t\tstart: 127972,\n\t\tend: 127972,\n\t\tversion: \"1.0\",\n\t\tname: \"post office\"\n\t},\n\t{\n\t\tstart: 127988,\n\t\tend: 127988,\n\t\tversion: \"1.0\",\n\t\tname: \"black flag\"\n\t},\n\t{\n\t\tstart: 127992,\n\t\tend: 128007,\n\t\tversion: \"1.0\",\n\t\tname: \"badminton..rabbit\"\n\t},\n\t{\n\t\tstart: 128009,\n\t\tend: 128011,\n\t\tversion: \"1.0\",\n\t\tname: \"dragon..whale\"\n\t},\n\t{\n\t\tstart: 128015,\n\t\tend: 128016,\n\t\tversion: \"1.0\",\n\t\tname: \"ram..goat\"\n\t},\n\t{\n\t\tstart: 128019,\n\t\tend: 128019,\n\t\tversion: \"1.0\",\n\t\tname: \"rooster\"\n\t},\n\t{\n\t\tstart: 128022,\n\t\tend: 128022,\n\t\tversion: \"1.0\",\n\t\tname: \"pig\"\n\t},\n\t{\n\t\tstart: 128042,\n\t\tend: 128042,\n\t\tversion: \"1.0\",\n\t\tname: \"camel\"\n\t},\n\t{\n\t\tstart: 128101,\n\t\tend: 128101,\n\t\tversion: \"1.0\",\n\t\tname: \"busts in silhouette\"\n\t},\n\t{\n\t\tstart: 128108,\n\t\tend: 128109,\n\t\tversion: \"1.0\",\n\t\tname: \"men holding hands..women holding hands\"\n\t},\n\t{\n\t\tstart: 128173,\n\t\tend: 128173,\n\t\tversion: \"1.0\",\n\t\tname: \"thought balloon\"\n\t},\n\t{\n\t\tstart: 128182,\n\t\tend: 128183,\n\t\tversion: \"1.0\",\n\t\tname: \"euro banknote..pound banknote\"\n\t},\n\t{\n\t\tstart: 128239,\n\t\tend: 128239,\n\t\tversion: \"1.0\",\n\t\tname: \"postal horn\"\n\t},\n\t{\n\t\tstart: 128245,\n\t\tend: 128245,\n\t\tversion: \"1.0\",\n\t\tname: \"no mobile phones\"\n\t},\n\t{\n\t\tstart: 128248,\n\t\tend: 128248,\n\t\tversion: \"1.0\",\n\t\tname: \"camera with flash\"\n\t},\n\t{\n\t\tstart: 128255,\n\t\tend: 128258,\n\t\tversion: \"1.0\",\n\t\tname: \"prayer beads..repeat single button\"\n\t},\n\t{\n\t\tstart: 128260,\n\t\tend: 128263,\n\t\tversion: \"1.0\",\n\t\tname: \"counterclockwise arrows button..muted speaker\"\n\t},\n\t{\n\t\tstart: 128265,\n\t\tend: 128265,\n\t\tversion: \"1.0\",\n\t\tname: \"speaker medium volume\"\n\t},\n\t{\n\t\tstart: 128277,\n\t\tend: 128277,\n\t\tversion: \"1.0\",\n\t\tname: \"bell with slash\"\n\t},\n\t{\n\t\tstart: 128300,\n\t\tend: 128301,\n\t\tversion: \"1.0\",\n\t\tname: \"microscope..telescope\"\n\t},\n\t{\n\t\tstart: 128331,\n\t\tend: 128334,\n\t\tversion: \"1.0\",\n\t\tname: \"kaaba..menorah\"\n\t},\n\t{\n\t\tstart: 128405,\n\t\tend: 128406,\n\t\tversion: \"1.0\",\n\t\tname: \"middle finger..vulcan salute\"\n\t},\n\t{\n\t\tstart: 128512,\n\t\tend: 128512,\n\t\tversion: \"1.0\",\n\t\tname: \"grinning face\"\n\t},\n\t{\n\t\tstart: 128519,\n\t\tend: 128520,\n\t\tversion: \"1.0\",\n\t\tname: \"smiling face with halo..smiling face with horns\"\n\t},\n\t{\n\t\tstart: 128526,\n\t\tend: 128526,\n\t\tversion: \"1.0\",\n\t\tname: \"smiling face with sunglasses\"\n\t},\n\t{\n\t\tstart: 128529,\n\t\tend: 128529,\n\t\tversion: \"1.0\",\n\t\tname: \"expressionless face\"\n\t},\n\t{\n\t\tstart: 128533,\n\t\tend: 128533,\n\t\tversion: \"1.0\",\n\t\tname: \"confused face\"\n\t},\n\t{\n\t\tstart: 128535,\n\t\tend: 128535,\n\t\tversion: \"1.0\",\n\t\tname: \"kissing face\"\n\t},\n\t{\n\t\tstart: 128537,\n\t\tend: 128537,\n\t\tversion: \"1.0\",\n\t\tname: \"kissing face with smiling eyes\"\n\t},\n\t{\n\t\tstart: 128539,\n\t\tend: 128539,\n\t\tversion: \"1.0\",\n\t\tname: \"face with tongue\"\n\t},\n\t{\n\t\tstart: 128543,\n\t\tend: 128543,\n\t\tversion: \"1.0\",\n\t\tname: \"worried face\"\n\t},\n\t{\n\t\tstart: 128550,\n\t\tend: 128551,\n\t\tversion: \"1.0\",\n\t\tname: \"frowning face with open mouth..anguished face\"\n\t},\n\t{\n\t\tstart: 128556,\n\t\tend: 128556,\n\t\tversion: \"1.0\",\n\t\tname: \"grimacing face\"\n\t},\n\t{\n\t\tstart: 128558,\n\t\tend: 128559,\n\t\tversion: \"1.0\",\n\t\tname: \"face with open mouth..hushed face\"\n\t},\n\t{\n\t\tstart: 128564,\n\t\tend: 128564,\n\t\tversion: \"1.0\",\n\t\tname: \"sleeping face\"\n\t},\n\t{\n\t\tstart: 128566,\n\t\tend: 128566,\n\t\tversion: \"1.0\",\n\t\tname: \"face without mouth\"\n\t},\n\t{\n\t\tstart: 128577,\n\t\tend: 128580,\n\t\tversion: \"1.0\",\n\t\tname: \"slightly frowning face..face with rolling eyes\"\n\t},\n\t{\n\t\tstart: 128641,\n\t\tend: 128642,\n\t\tversion: \"1.0\",\n\t\tname: \"helicopter..locomotive\"\n\t},\n\t{\n\t\tstart: 128646,\n\t\tend: 128646,\n\t\tversion: \"1.0\",\n\t\tname: \"train\"\n\t},\n\t{\n\t\tstart: 128648,\n\t\tend: 128648,\n\t\tversion: \"1.0\",\n\t\tname: \"light rail\"\n\t},\n\t{\n\t\tstart: 128650,\n\t\tend: 128651,\n\t\tversion: \"1.0\",\n\t\tname: \"tram..tram car\"\n\t},\n\t{\n\t\tstart: 128654,\n\t\tend: 128654,\n\t\tversion: \"1.0\",\n\t\tname: \"trolleybus\"\n\t},\n\t{\n\t\tstart: 128656,\n\t\tend: 128656,\n\t\tversion: \"1.0\",\n\t\tname: \"minibus\"\n\t},\n\t{\n\t\tstart: 128662,\n\t\tend: 128662,\n\t\tversion: \"1.0\",\n\t\tname: \"oncoming taxi\"\n\t},\n\t{\n\t\tstart: 128667,\n\t\tend: 128673,\n\t\tversion: \"1.0\",\n\t\tname: \"articulated lorry..aerial tramway\"\n\t},\n\t{\n\t\tstart: 128675,\n\t\tend: 128675,\n\t\tversion: \"1.0\",\n\t\tname: \"person rowing boat\"\n\t},\n\t{\n\t\tstart: 128678,\n\t\tend: 128678,\n\t\tversion: \"1.0\",\n\t\tname: \"vertical traffic light\"\n\t},\n\t{\n\t\tstart: 128686,\n\t\tend: 128689,\n\t\tversion: \"1.0\",\n\t\tname: \"litter in bin sign..non-potable water\"\n\t},\n\t{\n\t\tstart: 128691,\n\t\tend: 128693,\n\t\tversion: \"1.0\",\n\t\tname: \"no bicycles..person mountain biking\"\n\t},\n\t{\n\t\tstart: 128695,\n\t\tend: 128696,\n\t\tversion: \"1.0\",\n\t\tname: \"no pedestrians..children crossing\"\n\t},\n\t{\n\t\tstart: 128703,\n\t\tend: 128703,\n\t\tversion: \"1.0\",\n\t\tname: \"shower\"\n\t},\n\t{\n\t\tstart: 128705,\n\t\tend: 128709,\n\t\tversion: \"1.0\",\n\t\tname: \"bathtub..left luggage\"\n\t},\n\t{\n\t\tstart: 128716,\n\t\tend: 128716,\n\t\tversion: \"1.0\",\n\t\tname: \"person in bed\"\n\t},\n\t{\n\t\tstart: 128720,\n\t\tend: 128720,\n\t\tversion: \"1.0\",\n\t\tname: \"place of worship\"\n\t},\n\t{\n\t\tstart: 128747,\n\t\tend: 128748,\n\t\tversion: \"1.0\",\n\t\tname: \"airplane departure..airplane arrival\"\n\t},\n\t{\n\t\tstart: 129296,\n\t\tend: 129304,\n\t\tversion: \"1.0\",\n\t\tname: \"zipper-mouth face..sign of the horns\"\n\t},\n\t{\n\t\tstart: 129408,\n\t\tend: 129412,\n\t\tversion: \"1.0\",\n\t\tname: \"crab..unicorn\"\n\t},\n\t{\n\t\tstart: 129472,\n\t\tend: 129472,\n\t\tversion: \"1.0\",\n\t\tname: \"cheese wedge\"\n\t},\n\t{\n\t\tstart: 128488,\n\t\tend: 128488,\n\t\tversion: \"2.0\",\n\t\tname: \"left speech bubble\"\n\t},\n\t{\n\t\tstart: 128378,\n\t\tend: 128378,\n\t\tversion: \"3.0\",\n\t\tname: \"man dancing\"\n\t},\n\t{\n\t\tstart: 128420,\n\t\tend: 128420,\n\t\tversion: \"3.0\",\n\t\tname: \"black heart\"\n\t},\n\t{\n\t\tstart: 128721,\n\t\tend: 128722,\n\t\tversion: \"3.0\",\n\t\tname: \"stop sign..shopping cart\"\n\t},\n\t{\n\t\tstart: 128756,\n\t\tend: 128758,\n\t\tversion: \"3.0\",\n\t\tname: \"kick scooter..canoe\"\n\t},\n\t{\n\t\tstart: 129305,\n\t\tend: 129310,\n\t\tversion: \"3.0\",\n\t\tname: \"call me hand..crossed fingers\"\n\t},\n\t{\n\t\tstart: 129312,\n\t\tend: 129319,\n\t\tversion: \"3.0\",\n\t\tname: \"cowboy hat face..sneezing face\"\n\t},\n\t{\n\t\tstart: 129328,\n\t\tend: 129328,\n\t\tversion: \"3.0\",\n\t\tname: \"pregnant woman\"\n\t},\n\t{\n\t\tstart: 129331,\n\t\tend: 129338,\n\t\tversion: \"3.0\",\n\t\tname: \"selfie..person fencing\"\n\t},\n\t{\n\t\tstart: 129340,\n\t\tend: 129342,\n\t\tversion: \"3.0\",\n\t\tname: \"people wrestling..person playing handball\"\n\t},\n\t{\n\t\tstart: 129344,\n\t\tend: 129349,\n\t\tversion: \"3.0\",\n\t\tname: \"wilted flower..goal net\"\n\t},\n\t{\n\t\tstart: 129351,\n\t\tend: 129355,\n\t\tversion: \"3.0\",\n\t\tname: \"1st place medal..martial arts uniform\"\n\t},\n\t{\n\t\tstart: 129360,\n\t\tend: 129374,\n\t\tversion: \"3.0\",\n\t\tname: \"croissant..pancakes\"\n\t},\n\t{\n\t\tstart: 129413,\n\t\tend: 129425,\n\t\tversion: \"3.0\",\n\t\tname: \"eagle..squid\"\n\t},\n\t{\n\t\tstart: 9792,\n\t\tend: 9792,\n\t\tversion: \"4.0\",\n\t\tname: \"female sign\"\n\t},\n\t{\n\t\tstart: 9794,\n\t\tend: 9794,\n\t\tversion: \"4.0\",\n\t\tname: \"male sign\"\n\t},\n\t{\n\t\tstart: 9877,\n\t\tend: 9877,\n\t\tversion: \"4.0\",\n\t\tname: \"medical symbol\"\n\t},\n\t{\n\t\tstart: 128759,\n\t\tend: 128760,\n\t\tversion: \"5.0\",\n\t\tname: \"sled..flying saucer\"\n\t},\n\t{\n\t\tstart: 129311,\n\t\tend: 129311,\n\t\tversion: \"5.0\",\n\t\tname: \"love-you gesture\"\n\t},\n\t{\n\t\tstart: 129320,\n\t\tend: 129327,\n\t\tversion: \"5.0\",\n\t\tname: \"face with raised eyebrow..exploding head\"\n\t},\n\t{\n\t\tstart: 129329,\n\t\tend: 129330,\n\t\tversion: \"5.0\",\n\t\tname: \"breast-feeding..palms up together\"\n\t},\n\t{\n\t\tstart: 129356,\n\t\tend: 129356,\n\t\tversion: \"5.0\",\n\t\tname: \"curling stone\"\n\t},\n\t{\n\t\tstart: 129375,\n\t\tend: 129387,\n\t\tversion: \"5.0\",\n\t\tname: \"dumpling..canned food\"\n\t},\n\t{\n\t\tstart: 129426,\n\t\tend: 129431,\n\t\tversion: \"5.0\",\n\t\tname: \"giraffe..cricket\"\n\t},\n\t{\n\t\tstart: 129488,\n\t\tend: 129510,\n\t\tversion: \"5.0\",\n\t\tname: \"face with monocle..socks\"\n\t},\n\t{\n\t\tstart: 9823,\n\t\tend: 9823,\n\t\tversion: \"11.0\",\n\t\tname: \"chess pawn\"\n\t},\n\t{\n\t\tstart: 9854,\n\t\tend: 9854,\n\t\tversion: \"11.0\",\n\t\tname: \"infinity\"\n\t},\n\t{\n\t\tstart: 128761,\n\t\tend: 128761,\n\t\tversion: \"11.0\",\n\t\tname: \"skateboard\"\n\t},\n\t{\n\t\tstart: 129357,\n\t\tend: 129359,\n\t\tversion: \"11.0\",\n\t\tname: \"lacrosse..flying disc\"\n\t},\n\t{\n\t\tstart: 129388,\n\t\tend: 129392,\n\t\tversion: \"11.0\",\n\t\tname: \"leafy green..smiling face with hearts\"\n\t},\n\t{\n\t\tstart: 129395,\n\t\tend: 129398,\n\t\tversion: \"11.0\",\n\t\tname: \"partying face..cold face\"\n\t},\n\t{\n\t\tstart: 129402,\n\t\tend: 129402,\n\t\tversion: \"11.0\",\n\t\tname: \"pleading face\"\n\t},\n\t{\n\t\tstart: 129404,\n\t\tend: 129407,\n\t\tversion: \"11.0\",\n\t\tname: \"lab coat..flat shoe\"\n\t},\n\t{\n\t\tstart: 129432,\n\t\tend: 129442,\n\t\tversion: \"11.0\",\n\t\tname: \"kangaroo..swan\"\n\t},\n\t{\n\t\tstart: 129456,\n\t\tend: 129465,\n\t\tversion: \"11.0\",\n\t\tname: \"red hair..supervillain\"\n\t},\n\t{\n\t\tstart: 129473,\n\t\tend: 129474,\n\t\tversion: \"11.0\",\n\t\tname: \"cupcake..salt\"\n\t},\n\t{\n\t\tstart: 129511,\n\t\tend: 129535,\n\t\tversion: \"11.0\",\n\t\tname: \"red envelope..nazar amulet\"\n\t},\n\t{\n\t\tstart: 128725,\n\t\tend: 128725,\n\t\tversion: \"12.0\",\n\t\tname: \"hindu temple\"\n\t},\n\t{\n\t\tstart: 128762,\n\t\tend: 128762,\n\t\tversion: \"12.0\",\n\t\tname: \"auto rickshaw\"\n\t},\n\t{\n\t\tstart: 128992,\n\t\tend: 129003,\n\t\tversion: \"12.0\",\n\t\tname: \"orange circle..brown square\"\n\t},\n\t{\n\t\tstart: 129293,\n\t\tend: 129295,\n\t\tversion: \"12.0\",\n\t\tname: \"white heart..pinching hand\"\n\t},\n\t{\n\t\tstart: 129343,\n\t\tend: 129343,\n\t\tversion: \"12.0\",\n\t\tname: \"diving mask\"\n\t},\n\t{\n\t\tstart: 129393,\n\t\tend: 129393,\n\t\tversion: \"12.0\",\n\t\tname: \"yawning face\"\n\t},\n\t{\n\t\tstart: 129403,\n\t\tend: 129403,\n\t\tversion: \"12.0\",\n\t\tname: \"sari\"\n\t},\n\t{\n\t\tstart: 129445,\n\t\tend: 129450,\n\t\tversion: \"12.0\",\n\t\tname: \"sloth..oyster\"\n\t},\n\t{\n\t\tstart: 129454,\n\t\tend: 129455,\n\t\tversion: \"12.0\",\n\t\tname: \"guide dog..white cane\"\n\t},\n\t{\n\t\tstart: 129466,\n\t\tend: 129471,\n\t\tversion: \"12.0\",\n\t\tname: \"safety vest..mechanical leg\"\n\t},\n\t{\n\t\tstart: 129475,\n\t\tend: 129482,\n\t\tversion: \"12.0\",\n\t\tname: \"beverage box..ice\"\n\t},\n\t{\n\t\tstart: 129485,\n\t\tend: 129487,\n\t\tversion: \"12.0\",\n\t\tname: \"person standing..deaf person\"\n\t},\n\t{\n\t\tstart: 129648,\n\t\tend: 129651,\n\t\tversion: \"12.0\",\n\t\tname: \"ballet shoes..shorts\"\n\t},\n\t{\n\t\tstart: 129656,\n\t\tend: 129658,\n\t\tversion: \"12.0\",\n\t\tname: \"drop of blood..stethoscope\"\n\t},\n\t{\n\t\tstart: 129664,\n\t\tend: 129666,\n\t\tversion: \"12.0\",\n\t\tname: \"yo-yo..parachute\"\n\t},\n\t{\n\t\tstart: 129680,\n\t\tend: 129685,\n\t\tversion: \"12.0\",\n\t\tname: \"ringed planet..banjo\"\n\t},\n\t{\n\t\tstart: 9895,\n\t\tend: 9895,\n\t\tversion: \"13.0\",\n\t\tname: \"transgender symbol\"\n\t},\n\t{\n\t\tstart: 128726,\n\t\tend: 128727,\n\t\tversion: \"13.0\",\n\t\tname: \"hut..elevator\"\n\t},\n\t{\n\t\tstart: 128763,\n\t\tend: 128764,\n\t\tversion: \"13.0\",\n\t\tname: \"pickup truck..roller skate\"\n\t},\n\t{\n\t\tstart: 129292,\n\t\tend: 129292,\n\t\tversion: \"13.0\",\n\t\tname: \"pinched fingers\"\n\t},\n\t{\n\t\tstart: 129394,\n\t\tend: 129394,\n\t\tversion: \"13.0\",\n\t\tname: \"smiling face with tear\"\n\t},\n\t{\n\t\tstart: 129399,\n\t\tend: 129400,\n\t\tversion: \"13.0\",\n\t\tname: \"ninja..disguised face\"\n\t},\n\t{\n\t\tstart: 129443,\n\t\tend: 129444,\n\t\tversion: \"13.0\",\n\t\tname: \"mammoth..dodo\"\n\t},\n\t{\n\t\tstart: 129451,\n\t\tend: 129453,\n\t\tversion: \"13.0\",\n\t\tname: \"beaver..seal\"\n\t},\n\t{\n\t\tstart: 129483,\n\t\tend: 129483,\n\t\tversion: \"13.0\",\n\t\tname: \"bubble tea\"\n\t},\n\t{\n\t\tstart: 129652,\n\t\tend: 129652,\n\t\tversion: \"13.0\",\n\t\tname: \"thong sandal\"\n\t},\n\t{\n\t\tstart: 129667,\n\t\tend: 129670,\n\t\tversion: \"13.0\",\n\t\tname: \"boomerang..nesting dolls\"\n\t},\n\t{\n\t\tstart: 129686,\n\t\tend: 129704,\n\t\tversion: \"13.0\",\n\t\tname: \"military helmet..rock\"\n\t},\n\t{\n\t\tstart: 129712,\n\t\tend: 129718,\n\t\tversion: \"13.0\",\n\t\tname: \"fly..feather\"\n\t},\n\t{\n\t\tstart: 129728,\n\t\tend: 129730,\n\t\tversion: \"13.0\",\n\t\tname: \"anatomical heart..people hugging\"\n\t},\n\t{\n\t\tstart: 129744,\n\t\tend: 129750,\n\t\tversion: \"13.0\",\n\t\tname: \"blueberries..teapot\"\n\t},\n\t{\n\t\tstart: 128733,\n\t\tend: 128735,\n\t\tversion: \"14.0\",\n\t\tname: \"playground slide..ring buoy\"\n\t},\n\t{\n\t\tstart: 129008,\n\t\tend: 129008,\n\t\tversion: \"14.0\",\n\t\tname: \"heavy equals sign\"\n\t},\n\t{\n\t\tstart: 129401,\n\t\tend: 129401,\n\t\tversion: \"14.0\",\n\t\tname: \"face holding back tears\"\n\t},\n\t{\n\t\tstart: 129484,\n\t\tend: 129484,\n\t\tversion: \"14.0\",\n\t\tname: \"troll\"\n\t},\n\t{\n\t\tstart: 129659,\n\t\tend: 129660,\n\t\tversion: \"14.0\",\n\t\tname: \"x-ray..crutch\"\n\t},\n\t{\n\t\tstart: 129705,\n\t\tend: 129708,\n\t\tversion: \"14.0\",\n\t\tname: \"mirror ball..hamsa\"\n\t},\n\t{\n\t\tstart: 129719,\n\t\tend: 129722,\n\t\tversion: \"14.0\",\n\t\tname: \"lotus..nest with eggs\"\n\t},\n\t{\n\t\tstart: 129731,\n\t\tend: 129733,\n\t\tversion: \"14.0\",\n\t\tname: \"pregnant man..person with crown\"\n\t},\n\t{\n\t\tstart: 129751,\n\t\tend: 129753,\n\t\tversion: \"14.0\",\n\t\tname: \"pouring liquid..jar\"\n\t},\n\t{\n\t\tstart: 129760,\n\t\tend: 129767,\n\t\tversion: \"14.0\",\n\t\tname: \"melting face..bubbles\"\n\t},\n\t{\n\t\tstart: 129776,\n\t\tend: 129782,\n\t\tversion: \"14.0\",\n\t\tname: \"hand with index finger and thumb crossed..heart hands\"\n\t},\n\t{\n\t\tstart: 128732,\n\t\tend: 128732,\n\t\tversion: \"15.0\",\n\t\tname: \"wireless\"\n\t},\n\t{\n\t\tstart: 129653,\n\t\tend: 129655,\n\t\tversion: \"15.0\",\n\t\tname: \"light blue heart..pink heart\"\n\t},\n\t{\n\t\tstart: 129671,\n\t\tend: 129672,\n\t\tversion: \"15.0\",\n\t\tname: \"maracas..flute\"\n\t},\n\t{\n\t\tstart: 129709,\n\t\tend: 129711,\n\t\tversion: \"15.0\",\n\t\tname: \"folding hand fan..khanda\"\n\t},\n\t{\n\t\tstart: 129723,\n\t\tend: 129725,\n\t\tversion: \"15.0\",\n\t\tname: \"hyacinth..wing\"\n\t},\n\t{\n\t\tstart: 129727,\n\t\tend: 129727,\n\t\tversion: \"15.0\",\n\t\tname: \"goose\"\n\t},\n\t{\n\t\tstart: 129742,\n\t\tend: 129743,\n\t\tversion: \"15.0\",\n\t\tname: \"moose..donkey\"\n\t},\n\t{\n\t\tstart: 129754,\n\t\tend: 129755,\n\t\tversion: \"15.0\",\n\t\tname: \"ginger root..pea pod\"\n\t},\n\t{\n\t\tstart: 129768,\n\t\tend: 129768,\n\t\tversion: \"15.0\",\n\t\tname: \"shaking face\"\n\t},\n\t{\n\t\tstart: 129783,\n\t\tend: 129784,\n\t\tversion: \"15.0\",\n\t\tname: \"leftwards pushing hand..rightwards pushing hand\"\n\t},\n\t{\n\t\tstart: 129673,\n\t\tend: 129673,\n\t\tversion: \"16.0\",\n\t\tname: \"harp\"\n\t},\n\t{\n\t\tstart: 129679,\n\t\tend: 129679,\n\t\tversion: \"16.0\",\n\t\tname: \"shovel\"\n\t},\n\t{\n\t\tstart: 129726,\n\t\tend: 129726,\n\t\tversion: \"16.0\",\n\t\tname: \"leafless tree\"\n\t},\n\t{\n\t\tstart: 129734,\n\t\tend: 129734,\n\t\tversion: \"16.0\",\n\t\tname: \"fingerprint\"\n\t},\n\t{\n\t\tstart: 129756,\n\t\tend: 129756,\n\t\tversion: \"16.0\",\n\t\tname: \"root vegetable\"\n\t},\n\t{\n\t\tstart: 129759,\n\t\tend: 129759,\n\t\tversion: \"16.0\",\n\t\tname: \"splatter\"\n\t},\n\t{\n\t\tstart: 129769,\n\t\tend: 129769,\n\t\tversion: \"16.0\",\n\t\tname: \"face with bags under eyes\"\n\t},\n\t{\n\t\tstart: 128728,\n\t\tend: 128728,\n\t\tversion: \"17.0\",\n\t\tname: \"landslide\"\n\t},\n\t{\n\t\tstart: 129674,\n\t\tend: 129674,\n\t\tversion: \"17.0\",\n\t\tname: \"trombone\"\n\t},\n\t{\n\t\tstart: 129678,\n\t\tend: 129678,\n\t\tversion: \"17.0\",\n\t\tname: \"treasure chest\"\n\t},\n\t{\n\t\tstart: 129736,\n\t\tend: 129736,\n\t\tversion: \"17.0\",\n\t\tname: \"hairy creature\"\n\t},\n\t{\n\t\tstart: 129741,\n\t\tend: 129741,\n\t\tversion: \"17.0\",\n\t\tname: \"orca\"\n\t},\n\t{\n\t\tstart: 129770,\n\t\tend: 129770,\n\t\tversion: \"17.0\",\n\t\tname: \"distorted face\"\n\t},\n\t{\n\t\tstart: 129775,\n\t\tend: 129775,\n\t\tversion: \"17.0\",\n\t\tname: \"fight cloud\"\n\t}\n];\n//#endregion\n//#region packages/eslint-plugin-formatjs/emoji-utils.ts\n/**\n* Emoji detection utilities using Intl.Segmenter\n*/\n/**\n* Cached Intl.Segmenter instance for emoji extraction\n* Reused across all extractEmojis calls for better performance\n*/\nconst graphemeSegmenter = new Intl.Segmenter(\"en\", { granularity: \"grapheme\" });\n/**\n* Regex for detecting emoji using Unicode 17.0.0 Emoji_Presentation data\n* Generated from @unicode/unicode-17.0.0/Binary_Property/Emoji_Presentation\n* This avoids false positives from #, *, digits, and text symbols like ©\n*/\nconst emojiPresentationRegexCompiled = emojiPresentationRegex.default ?? emojiPresentationRegex;\n/**\n* Regex for detecting emoji-capable characters using Unicode 17.0.0 Emoji property\n* This includes characters that can have emoji presentation (like ❤, ☀)\n*/\nconst emojiPropertyRegexCompiled = emojiPropertyRegex.default ?? emojiPropertyRegex;\n/**\n* Check if a string contains any emoji\n* Uses Unicode 17.0.0 Emoji_Presentation data and variation selector (U+FE0F)\n* to properly detect emoji while avoiding false positives from characters like\n* #, *, digits 0-9, and text symbols like © which have \\p{Emoji} but are not visual emoji\n*/\nfunction hasEmoji(text) {\n\tif (emojiPresentationRegexCompiled.test(text)) return true;\n\tif (text.includes(\"️\")) {\n\t\tconst segments = graphemeSegmenter.segment(text);\n\t\tfor (const { segment } of segments) if (segment.includes(\"️\")) {\n\t\t\tconst beforeVS = segment.replace(/\\uFE0F/g, \"\");\n\t\t\tif (emojiPropertyRegexCompiled.test(beforeVS)) return true;\n\t\t}\n\t}\n\treturn false;\n}\n/**\n* Extract all emoji from a string using Intl.Segmenter\n* Returns an array of emoji characters (including multi-codepoint sequences)\n*\n* Uses grapheme segmentation to properly handle:\n* - Emoji with skin tone modifiers (🙋🏻)\n* - ZWJ sequences (👨‍👩‍👧‍👦)\n* - Flag sequences (🇺🇸)\n* - Regional indicator sequences\n* - Any other complex emoji grapheme clusters\n*/\nfunction extractEmojis(text) {\n\tconst segments = graphemeSegmenter.segment(text);\n\tconst emojis = [];\n\tfor (const { segment } of segments) {\n\t\tif (emojiPresentationRegexCompiled.test(segment)) {\n\t\t\temojis.push(segment);\n\t\t\tcontinue;\n\t\t}\n\t\tif (segment.includes(\"️\")) {\n\t\t\tconst beforeVS = segment.replace(/\\uFE0F/g, \"\");\n\t\t\tif (emojiPropertyRegexCompiled.test(beforeVS)) emojis.push(segment);\n\t\t}\n\t}\n\treturn emojis;\n}\n/**\n* Check if a version string is a valid emoji version\n*/\nfunction isValidEmojiVersion(version) {\n\treturn EMOJI_VERSIONS.includes(version);\n}\n/**\n* Get the Unicode version for a given emoji character\n* Returns undefined if the emoji is not found in our data\n*/\nfunction getEmojiVersion(emoji) {\n\tconst codepoint = emoji.codePointAt(0);\n\tif (codepoint === void 0) return;\n\tfor (const range of EMOJI_RANGES) if (codepoint >= range.start && codepoint <= range.end) return range.version;\n}\n/**\n* Filter function for emoji versions\n* Returns a filter function that checks if an emoji is from version or below\n*/\nfunction filterEmojis(version) {\n\tconst maxVersion = parseVersion(version);\n\treturn (emoji) => {\n\t\tconst emojiVersion = getEmojiVersion(emoji);\n\t\tif (!emojiVersion) return true;\n\t\treturn parseVersion(emojiVersion) <= maxVersion;\n\t};\n}\n/**\n* Parse version string to comparable number\n* e.g., \"12.0\" -> 12.0, \"13.1\" -> 13.1\n*/\nfunction parseVersion(version) {\n\treturn parseFloat(version);\n}\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-emoji.ts\nconst name$14 = \"no-emoji\";\nfunction checkNode$9(context, node) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tlet versionAbove;\n\tconst [emojiConfig] = context.options;\n\tif (emojiConfig?.versionAbove && isValidEmojiVersion(emojiConfig.versionAbove)) versionAbove = emojiConfig.versionAbove;\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tif (hasEmoji(defaultMessage)) {\n\t\t\tif (versionAbove) {\n\t\t\t\tconst filter = filterEmojis(versionAbove);\n\t\t\t\tfor (const emoji of extractEmojis(defaultMessage)) if (!filter(emoji)) context.report({\n\t\t\t\t\tnode: messageNode,\n\t\t\t\t\tmessageId: \"notAllowedAboveVersion\",\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tversionAbove,\n\t\t\t\t\t\temoji\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else context.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"notAllowed\"\n\t\t\t});\n\t\t}\n\t}\n}\nconst rule$12 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Disallow emojis in message\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-emoji\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [{\n\t\t\ttype: \"object\",\n\t\t\tproperties: { versionAbove: {\n\t\t\t\ttype: \"string\",\n\t\t\t\tenum: [\n\t\t\t\t\t\"0.6\",\n\t\t\t\t\t\"0.7\",\n\t\t\t\t\t\"1.0\",\n\t\t\t\t\t\"2.0\",\n\t\t\t\t\t\"3.0\",\n\t\t\t\t\t\"4.0\",\n\t\t\t\t\t\"5.0\",\n\t\t\t\t\t\"11.0\",\n\t\t\t\t\t\"12.0\",\n\t\t\t\t\t\"13.0\",\n\t\t\t\t\t\"14.0\",\n\t\t\t\t\t\"15.0\",\n\t\t\t\t\t\"16.0\",\n\t\t\t\t\t\"17.0\"\n\t\t\t\t]\n\t\t\t} },\n\t\t\tadditionalProperties: false\n\t\t}],\n\t\tmessages: {\n\t\t\tnotAllowed: \"Emojis are not allowed\",\n\t\t\tnotAllowedAboveVersion: \"Emojis above version {{versionAbove}} are not allowed - Emoji: {{emoji}}\"\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$9(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$9(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-id.ts\nfunction isComment(token) {\n\treturn !!token && (token.type === \"Block\" || token.type === \"Line\");\n}\nconst name$13 = \"no-id\";\nfunction checkNode$8(context, node) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tfor (const [{ idPropNode }] of msgs) if (idPropNode) context.report({\n\t\tnode: idPropNode,\n\t\tmessageId: \"noId\",\n\t\tfix(fixer) {\n\t\t\tconst token = context.sourceCode.getTokenAfter(idPropNode);\n\t\t\tconst fixes = [fixer.remove(idPropNode)];\n\t\t\tif (token && !isComment(token) && token?.value === \",\") fixes.push(fixer.remove(token));\n\t\t\treturn fixes;\n\t\t}\n\t});\n}\nconst rule$11 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Ban explicit ID from MessageDescriptor\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-id\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [],\n\t\tmessages: { noId: \"Manual `id` are not allowed in message descriptor\" }\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$8(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$8(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-invalid-icu.ts\nconst name$12 = \"no-invalid-icu\";\nfunction checkNode$7(context, node) {\n\tconst settings = getSettings(context);\n\tlet msgs;\n\ttry {\n\t\tmsgs = extractMessages(node, settings);\n\t} catch (e) {\n\t\tcontext.report({\n\t\t\tnode,\n\t\t\tmessageId: \"parseError\",\n\t\t\tdata: { error: e.message }\n\t\t});\n\t\treturn;\n\t}\n\tif (!msgs.length) return;\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\ttry {\n\t\t\tparse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t}\n\t}\n}\nconst rule$10 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: { description: `Make sure ICU messages are formatted correctly with no bad select statements, plurals, etc.` },\n\t\tfixable: \"code\",\n\t\tschema: [],\n\t\tmessages: CORE_MESSAGES\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$7(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$7(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-literal-string-in-jsx.ts\nconst picomatch = picomatchNs.default ?? picomatchNs;\nconst propMatcherSchema = {\n\ttype: \"array\",\n\titems: {\n\t\ttype: \"array\",\n\t\titems: [{ type: \"string\" }, { type: \"string\" }]\n\t}\n};\nconst defaultPropIncludePattern = [\n\t[\"*\", \"aria-{label,description,details,errormessage}\"],\n\t[\"[a-z]*([a-z0-9])\", \"(placeholder|title)\"],\n\t[\"img\", \"alt\"]\n];\nconst defaultPropExcludePattern = [];\nfunction stringifyJsxTagName(tagName) {\n\tswitch (tagName.type) {\n\t\tcase \"JSXIdentifier\": return tagName.name;\n\t\tcase \"JSXMemberExpression\": return `${stringifyJsxTagName(tagName.object)}.${tagName.property.name}`;\n\t\tcase \"JSXNamespacedName\": return `${tagName.namespace.name}:${tagName.name.name}`;\n\t}\n}\nfunction compilePropMatcher(propMatcher) {\n\treturn propMatcher.map(([tagNamePattern, propNamePattern]) => {\n\t\treturn [picomatch.makeRe(tagNamePattern, { contains: false }), picomatch.makeRe(propNamePattern, { contains: false })];\n\t});\n}\nconst name$11 = \"no-literal-string-in-jsx\";\nconst rule$9 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Disallow untranslated literal strings without translation.\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-literal-string-in-jsx\"\n\t\t},\n\t\tschema: [{\n\t\t\ttype: \"object\",\n\t\t\tadditionalProperties: false,\n\t\t\tproperties: { props: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tadditionalProperties: false,\n\t\t\t\tproperties: {\n\t\t\t\t\tinclude: { ...propMatcherSchema },\n\t\t\t\t\texclude: { ...propMatcherSchema }\n\t\t\t\t}\n\t\t\t} }\n\t\t}],\n\t\tmessages: { noLiteralStringInJsx: \"Cannot have untranslated text in JSX\" }\n\t},\n\tcreate(context) {\n\t\tconst userConfig = context.options[0] || {};\n\t\tconst propIncludePattern = compilePropMatcher([...defaultPropIncludePattern, ...userConfig.props?.include ?? []]);\n\t\tconst propExcludePattern = compilePropMatcher([...defaultPropExcludePattern, ...userConfig.props?.exclude ?? []]);\n\t\tconst lexicalJsxStack = [];\n\t\tconst shouldSkipCurrentJsxElement = () => {\n\t\t\tconst currentJsxNode = lexicalJsxStack[lexicalJsxStack.length - 1];\n\t\t\tif (currentJsxNode.type === \"JSXFragment\") return false;\n\t\t\tconst nameString = stringifyJsxTagName(currentJsxNode.openingElement.name);\n\t\t\tfor (const [tagNamePattern, propNamePattern] of propExcludePattern) if (tagNamePattern.test(nameString) && propNamePattern.test(\"children\")) return true;\n\t\t\treturn false;\n\t\t};\n\t\tconst shouldSkipCurrentJsxAttribute = (node) => {\n\t\t\tconst currentJsxNode = lexicalJsxStack[lexicalJsxStack.length - 1];\n\t\t\tif (currentJsxNode.type === \"JSXFragment\") return false;\n\t\t\tconst nameString = stringifyJsxTagName(currentJsxNode.openingElement.name);\n\t\t\tconst attributeName = typeof node.name.name === \"string\" ? node.name.name : node.name.name.name;\n\t\t\tfor (const [tagNamePattern, propNamePattern] of propExcludePattern) if (tagNamePattern.test(nameString) && propNamePattern.test(attributeName)) return true;\n\t\t\tfor (const [tagNamePattern, propNamePattern] of propIncludePattern) if (tagNamePattern.test(nameString) && propNamePattern.test(attributeName)) return false;\n\t\t\treturn true;\n\t\t};\n\t\tconst checkJSXExpression = (node) => {\n\t\t\tif (node.type === \"Literal\" && typeof node.value === \"string\" && node.value.length > 0 || node.type === \"TemplateLiteral\" && (node.quasis.length > 1 || node.quasis[0].value.raw.length > 0)) context.report({\n\t\t\t\tnode,\n\t\t\t\tmessageId: \"noLiteralStringInJsx\"\n\t\t\t});\n\t\t\telse if (node.type === \"BinaryExpression\" && node.operator === \"+\") {\n\t\t\t\tcheckJSXExpression(node.left);\n\t\t\t\tcheckJSXExpression(node.right);\n\t\t\t} else if (node.type === \"ConditionalExpression\") {\n\t\t\t\tcheckJSXExpression(node.consequent);\n\t\t\t\tcheckJSXExpression(node.alternate);\n\t\t\t} else if (node.type === \"LogicalExpression\") {\n\t\t\t\tcheckJSXExpression(node.left);\n\t\t\t\tcheckJSXExpression(node.right);\n\t\t\t}\n\t\t};\n\t\treturn {\n\t\t\tJSXElement: (node) => {\n\t\t\t\tlexicalJsxStack.push(node);\n\t\t\t},\n\t\t\t\"JSXElement:exit\": () => {\n\t\t\t\tlexicalJsxStack.pop();\n\t\t\t},\n\t\t\tJSXFragment: (node) => {\n\t\t\t\tlexicalJsxStack.push(node);\n\t\t\t},\n\t\t\t\"JSXFragment:exit\": () => {\n\t\t\t\tlexicalJsxStack.pop();\n\t\t\t},\n\t\t\tJSXAttribute: (node) => {\n\t\t\t\tif (shouldSkipCurrentJsxAttribute(node)) return;\n\t\t\t\tif (!node.value) return;\n\t\t\t\tif (node.value.type === \"Literal\" && typeof node.value.value === \"string\" && node.value.value.length > 0) context.report({\n\t\t\t\t\tnode,\n\t\t\t\t\tmessageId: \"noLiteralStringInJsx\"\n\t\t\t\t});\n\t\t\t\telse if (node.value.type === \"JSXExpressionContainer\" && node.value.expression.type !== \"JSXEmptyExpression\") checkJSXExpression(node.value.expression);\n\t\t\t},\n\t\t\tJSXText: (node) => {\n\t\t\t\tif (!node.value.replace(/\\s*/gm, \"\")) return;\n\t\t\t\tif (shouldSkipCurrentJsxElement()) return;\n\t\t\t\tcontext.report({\n\t\t\t\t\tnode,\n\t\t\t\t\tmessageId: \"noLiteralStringInJsx\"\n\t\t\t\t});\n\t\t\t},\n\t\t\t\"JSXElement > JSXExpressionContainer\": (node) => {\n\t\t\t\tif (shouldSkipCurrentJsxElement()) return;\n\t\t\t\tif (node.expression.type !== \"JSXEmptyExpression\") checkJSXExpression(node.expression);\n\t\t\t}\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-missing-icu-plural-one-placeholders.ts\nconst name$10 = \"no-missing-icu-plural-one-placeholders\";\nfunction verifyAst$4(context, messageNode, ast) {\n\tconst patches = [];\n\t_verifyAstAndReplace(ast);\n\tif (patches.length > 0) {\n\t\tconst patchedMessage = patchMessage(messageNode, ast, (content) => {\n\t\t\treturn patches.reduce((magicString, patch) => {\n\t\t\t\tswitch (patch.type) {\n\t\t\t\t\tcase \"prependLeft\": return magicString.prependLeft(patch.index, patch.content);\n\t\t\t\t\tcase \"remove\": return magicString.remove(patch.start, patch.end);\n\t\t\t\t\tcase \"update\": return magicString.update(patch.start, patch.end, patch.content);\n\t\t\t\t}\n\t\t\t}, new MagicString(content)).toString();\n\t\t});\n\t\tcontext.report({\n\t\t\tnode: messageNode,\n\t\t\tmessageId: \"noMissingIcuPluralOnePlaceholders\",\n\t\t\tfix: patchedMessage !== null ? (fixer) => fixer.replaceText(messageNode, patchedMessage) : null\n\t\t});\n\t}\n\tfunction _verifyAstAndReplace(ast, root = true) {\n\t\tfor (const el of ast) if (isPluralElement(el) && el.options[\"one\"]) _verifyAstAndReplace(el.options[\"one\"].value, false);\n\t\telse if (isSelectElement(el)) for (const { value } of Object.values(el.options)) _verifyAstAndReplace(value, root);\n\t\telse if (isTagElement(el)) _verifyAstAndReplace(el.children, root);\n\t\telse if (!root && isLiteralElement(el)) {\n\t\t\tconst match = el.value.match(/\\b1\\b/);\n\t\t\tif (match && el.location) patches.push({\n\t\t\t\ttype: \"update\",\n\t\t\t\tstart: el.location.start.offset,\n\t\t\t\tend: el.location.end.offset,\n\t\t\t\tcontent: el.value.replace(match[0], \"#\")\n\t\t\t});\n\t\t}\n\t}\n}\nfunction checkNode$6(context, node) {\n\tconst msgs = extractMessages(node);\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { captureLocation: true });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tverifyAst$4(context, messageNode, ast);\n\t}\n}\nconst rule$8 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"We use `one {# item}` instead of `one {1 item}` in ICU messages as some locales use the `one` formatting for other similar numbers.\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-explicit-icu-plural\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tnoMissingIcuPluralOnePlaceholders: \"Use `one {# item}` instead of `one {1 item}` in ICU messages.\"\n\t\t},\n\t\tschema: []\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$6(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$6(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-multiple-plurals.ts\nfunction verifyAst$3(ast, pluralCount = { count: 0 }) {\n\tconst errors = [];\n\tfor (const el of ast) if (isPluralElement(el)) {\n\t\tpluralCount.count++;\n\t\tif (pluralCount.count > 1) errors.push({\n\t\t\tmessageId: \"noMultiplePlurals\",\n\t\t\tdata: {}\n\t\t});\n\t\tconst { options } = el;\n\t\tfor (const selector of Object.keys(options)) errors.push(...verifyAst$3(options[selector].value, pluralCount));\n\t}\n\treturn errors;\n}\nfunction checkNode$5(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, settings);\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tconst errors = verifyAst$3(ast);\n\t\tfor (const error of errors) context.report({\n\t\t\tnode,\n\t\t\t...error\n\t\t});\n\t}\n}\nconst name$9 = \"no-multiple-plurals\";\nconst rule$7 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Disallow multiple plural rules in the same message\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-multiple-plurals\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [],\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tnoMultiplePlurals: \"Multiple plural rules in the same message\"\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$5(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$5(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-multiple-whitespaces.ts\nfunction isAstValid(ast) {\n\tfor (const element of ast) switch (element.type) {\n\t\tcase TYPE.literal:\n\t\t\tif (/\\s{2,}/gm.test(element.value)) return false;\n\t\t\tbreak;\n\t\tcase TYPE.argument:\n\t\tcase TYPE.date:\n\t\tcase TYPE.number:\n\t\tcase TYPE.pound:\n\t\tcase TYPE.time: break;\n\t\tcase TYPE.plural:\n\t\tcase TYPE.select:\n\t\t\tfor (const option of Object.values(element.options)) if (!isAstValid(option.value)) return false;\n\t\t\tbreak;\n\t\tcase TYPE.tag: return isAstValid(element.children);\n\t}\n\treturn true;\n}\nfunction trimMultiWhitespaces(message, ast) {\n\tconst literalElements = [];\n\tconst collectLiteralElements = (elements) => {\n\t\tfor (const element of elements) switch (element.type) {\n\t\t\tcase TYPE.literal:\n\t\t\t\tliteralElements.push(element);\n\t\t\t\tbreak;\n\t\t\tcase TYPE.argument:\n\t\t\tcase TYPE.date:\n\t\t\tcase TYPE.number:\n\t\t\tcase TYPE.pound:\n\t\t\tcase TYPE.time: break;\n\t\t\tcase TYPE.plural:\n\t\t\tcase TYPE.select:\n\t\t\t\tfor (const option of Object.values(element.options)) collectLiteralElements(option.value);\n\t\t\t\tbreak;\n\t\t\tcase TYPE.tag: collectLiteralElements(element.children);\n\t\t}\n\t};\n\tcollectLiteralElements(ast);\n\tlet trimmedFragments = [];\n\tlet currentOffset = 0;\n\tfor (const literal of literalElements) {\n\t\tconst { start, end } = literal.location;\n\t\tconst startOffset = start.offset;\n\t\tconst endOffset = end.offset;\n\t\ttrimmedFragments.push(message.slice(currentOffset, startOffset));\n\t\ttrimmedFragments.push(message.slice(startOffset, endOffset).replace(/\\s{2,}/gm, \" \"));\n\t\tcurrentOffset = endOffset;\n\t}\n\ttrimmedFragments.push(message.slice(currentOffset));\n\treturn trimmedFragments.join(\"\");\n}\nfunction checkNode$4(context, node) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { captureLocation: true });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e instanceof Error ? e.message : String(e) }\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (!isAstValid(ast)) {\n\t\t\tconst newMessage = patchMessage(messageNode, ast, trimMultiWhitespaces);\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"noMultipleWhitespaces\",\n\t\t\t\tfix: newMessage !== null ? (fixer) => fixer.replaceText(messageNode, newMessage) : null\n\t\t\t});\n\t\t}\n\t}\n}\nconst name$8 = \"no-multiple-whitespaces\";\nconst rule$6 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Prevents usage of multiple consecutive whitespaces in message\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-multiple-whitespaces\"\n\t\t},\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tnoMultipleWhitespaces: \"Multiple consecutive whitespaces are not allowed\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: []\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$4(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$4(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-offset.ts\nfunction verifyAst$2(ast) {\n\tconst errors = [];\n\tfor (const el of ast) if (isPluralElement(el)) {\n\t\tif (el.offset) errors.push({\n\t\t\tmessageId: \"noOffset\",\n\t\t\tdata: {}\n\t\t});\n\t\tconst { options } = el;\n\t\tfor (const selector of Object.keys(options)) errors.push(...verifyAst$2(options[selector].value));\n\t}\n\treturn errors;\n}\nfunction checkNode$3(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, settings);\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tconst errors = verifyAst$2(ast);\n\t\tfor (const error of errors) context.report({\n\t\t\tnode: messageNode,\n\t\t\t...error\n\t\t});\n\t}\n}\nconst name$7 = \"no-offset\";\nconst rule$5 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Disallow offset in plural rules\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-offset\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tnoOffset: \"offset is not allowed\"\n\t\t},\n\t\tschema: []\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$3(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$3(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-useless-message.ts\nfunction verifyAst$1(ast) {\n\tif (ast.length !== 1) return;\n\tswitch (ast[0].type) {\n\t\tcase TYPE.argument: return \"unnecessaryFormat\";\n\t\tcase TYPE.number: return \"unnecessaryFormatNumber\";\n\t\tcase TYPE.date: return \"unnecessaryFormatDate\";\n\t\tcase TYPE.time: return \"unnecessaryFormatTime\";\n\t}\n}\nfunction checkNode$2(context, node) {\n\tconst settings = getSettings(context);\n\tconst msgs = extractMessages(node, settings);\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { ignoreTag: settings.ignoreTag });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e.message }\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tconst messageId = verifyAst$1(ast);\n\t\tif (messageId) context.report({\n\t\t\tnode: messageNode,\n\t\t\tmessageId\n\t\t});\n\t}\n}\nconst name$6 = \"no-useless-message\";\nconst rule$4 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Disallow unnecessary formatted message\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-useless-message\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: [],\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tunnecessaryFormat: \"Unnecessary formatted message.\",\n\t\t\tunnecessaryFormatNumber: \"Unnecessary formatted message: just use FormattedNumber or intl.formatNumber.\",\n\t\t\tunnecessaryFormatDate: \"Unnecessary formatted message: just use FormattedDate or intl.formatDate.\",\n\t\t\tunnecessaryFormatTime: \"Unnecessary formatted message: just use FormattedTime or intl.formatTime.\"\n\t\t}\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$2(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$2(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/prefer-formatted-message.ts\nconst name$5 = \"prefer-formatted-message\";\nconst rule$3 = {\n\tmeta: {\n\t\ttype: \"suggestion\",\n\t\tdocs: {\n\t\t\tdescription: \"Prefer `FormattedMessage` component over `intl.formatMessage` if applicable.\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#prefer-formatted-message\"\n\t\t},\n\t\tmessages: { jsxChildren: \"Prefer `FormattedMessage` over `intl.formatMessage` in the JSX children expression.\" },\n\t\tschema: []\n\t},\n\tcreate(context) {\n\t\treturn { JSXElement: (node) => {\n\t\t\tnode.children.forEach((child) => {\n\t\t\t\tif (child.type !== \"JSXExpressionContainer\" || !isIntlFormatMessageCall(child.expression)) return;\n\t\t\t\tcontext.report({\n\t\t\t\t\tnode: child,\n\t\t\t\t\tmessageId: \"jsxChildren\"\n\t\t\t\t});\n\t\t\t});\n\t\t} };\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/prefer-pound-in-plural.ts\nfunction verifyAst(context, messageNode, ast) {\n\tconst patches = [];\n\t_verifyAst(ast);\n\tif (patches.length > 0) {\n\t\tconst patchedMessage = patchMessage(messageNode, ast, (content) => {\n\t\t\treturn patches.reduce((magicString, patch) => {\n\t\t\t\tswitch (patch.type) {\n\t\t\t\t\tcase \"prependLeft\": return magicString.prependLeft(patch.index, patch.content);\n\t\t\t\t\tcase \"remove\": return magicString.remove(patch.start, patch.end);\n\t\t\t\t\tcase \"update\": return magicString.update(patch.start, patch.end, patch.content);\n\t\t\t\t}\n\t\t\t}, new MagicString(content)).toString();\n\t\t});\n\t\tcontext.report({\n\t\t\tnode: messageNode,\n\t\t\tmessageId: \"preferPoundInPlurals\",\n\t\t\tfix: patchedMessage !== null ? (fixer) => fixer.replaceText(messageNode, patchedMessage) : null\n\t\t});\n\t}\n\tfunction _verifyAst(ast) {\n\t\tfor (let i = 0; i < ast.length; i++) {\n\t\t\tconst current = ast[i];\n\t\t\tswitch (current.type) {\n\t\t\t\tcase TYPE.argument:\n\t\t\t\tcase TYPE.number: {\n\t\t\t\t\tif (current.type === TYPE.number && current.style) break;\n\t\t\t\t\tconst next = ast[i + 1];\n\t\t\t\t\tconst nextNext = ast[i + 2];\n\t\t\t\t\tif (next && nextNext && next.type === TYPE.literal && next.value === \" \" && nextNext.type === TYPE.plural && nextNext.value === current.value) _removeRangeAndPrependPluralClauses(current.location.start.offset, next.location.end.offset, nextNext, \"# \");\n\t\t\t\t\telse if (next && next.type === TYPE.plural && next.value === current.value) _removeRangeAndPrependPluralClauses(current.location.start.offset, current.location.end.offset, next, \"#\");\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase TYPE.plural: {\n\t\t\t\t\tconst name = current.value;\n\t\t\t\t\tfor (const { value } of Object.values(current.options)) _replacementArgumentWithPound(name, value);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase TYPE.select:\n\t\t\t\t\tfor (const { value } of Object.values(current.options)) _verifyAst(value);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TYPE.tag: _verifyAst(current.children);\n\t\t\t}\n\t\t}\n\t}\n\tfunction _replacementArgumentWithPound(name, ast) {\n\t\tfor (const element of ast) switch (element.type) {\n\t\t\tcase TYPE.argument:\n\t\t\tcase TYPE.number:\n\t\t\t\tif (element.value === name && (element.type !== TYPE.number || !element.style)) patches.push({\n\t\t\t\t\ttype: \"update\",\n\t\t\t\t\tstart: element.location.start.offset,\n\t\t\t\t\tend: element.location.end.offset,\n\t\t\t\t\tcontent: \"#\"\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tcase TYPE.tag:\n\t\t\t\t_replacementArgumentWithPound(name, element.children);\n\t\t\t\tbreak;\n\t\t\tcase TYPE.select: for (const { value } of Object.values(element.options)) _replacementArgumentWithPound(name, value);\n\t\t}\n\t}\n\tfunction _removeRangeAndPrependPluralClauses(rangeToRemoveStart, rangeToRemoveEnd, pluralElement, prependText) {\n\t\tpatches.push({\n\t\t\ttype: \"remove\",\n\t\t\tstart: rangeToRemoveStart,\n\t\t\tend: rangeToRemoveEnd\n\t\t});\n\t\tfor (const { location } of Object.values(pluralElement.options)) patches.push({\n\t\t\ttype: \"prependLeft\",\n\t\t\tindex: location.start.offset + 1,\n\t\t\tcontent: prependText\n\t\t});\n\t}\n}\nfunction checkNode$1(context, node) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage, { captureLocation: true });\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e instanceof Error ? e.message : String(e) }\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tverifyAst(context, messageNode, ast);\n\t}\n}\nconst name$4 = \"prefer-pound-in-plural\";\nconst rule$2 = {\n\tmeta: {\n\t\ttype: \"suggestion\",\n\t\tdocs: {\n\t\t\tdescription: \"Prefer using # to reference the count in the plural argument.\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#prefer-pound-in-plurals\"\n\t\t},\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tpreferPoundInPlurals: \"Prefer using # to reference the count in the plural argument instead of repeating the argument.\"\n\t\t},\n\t\tfixable: \"code\",\n\t\tschema: []\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode$1(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode$1(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/no-literal-string-in-object.ts\nconst name$3 = \"no-literal-string-in-object\";\nconst rule$1 = {\n\tmeta: {\n\t\ttype: \"problem\",\n\t\tdocs: {\n\t\t\tdescription: \"Enforce translation of specific object properties\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#no-literal-string-in-object\"\n\t\t},\n\t\tschema: [{\n\t\t\ttype: \"object\",\n\t\t\tproperties: { include: {\n\t\t\t\ttype: \"array\",\n\t\t\t\titems: { type: \"string\" },\n\t\t\t\tdefault: [\"label\"]\n\t\t\t} },\n\t\t\tadditionalProperties: false\n\t\t}],\n\t\tmessages: { untranslatedProperty: \"Object property: `{{propertyKey}}` might contain an untranslated literal string\" }\n\t},\n\tcreate(context) {\n\t\tconst propertyVisitor = (node) => {\n\t\t\tcheckProperty(context, node);\n\t\t};\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ Property: propertyVisitor }, { Property: propertyVisitor });\n\t\treturn { Property: propertyVisitor };\n\t}\n};\nfunction checkProperty(context, node) {\n\tconst config = {\n\t\tinclude: [\"label\"],\n\t\t...context.options[0]\n\t};\n\tconst propertyKey = node.key.type === \"Identifier\" ? node.key.name : node.key.type === \"Literal\" && typeof node.key.value === \"string\" ? node.key.value : null;\n\tif (!propertyKey || !config.include.includes(propertyKey)) return;\n\tcheckPropertyValue(context, node.value, propertyKey);\n}\nfunction checkPropertyValue(context, node, propertyKey) {\n\tif (node.type === \"Literal\" && typeof node.value === \"string\" && node.value.length > 0 || node.type === \"TemplateLiteral\" && (node.quasis.length > 1 || node.quasis[0].value.raw.length > 0)) context.report({\n\t\tnode,\n\t\tmessageId: \"untranslatedProperty\",\n\t\tdata: { propertyKey }\n\t});\n\telse if (node.type === \"BinaryExpression\" && node.operator === \"+\") {\n\t\tcheckPropertyValue(context, node.left, propertyKey);\n\t\tcheckPropertyValue(context, node.right, propertyKey);\n\t} else if (node.type === \"ConditionalExpression\") {\n\t\tcheckPropertyValue(context, node.consequent, propertyKey);\n\t\tcheckPropertyValue(context, node.alternate, propertyKey);\n\t} else if (node.type === \"LogicalExpression\") {\n\t\tcheckPropertyValue(context, node.left, propertyKey);\n\t\tcheckPropertyValue(context, node.right, propertyKey);\n\t}\n}\n//#endregion\n//#region packages/eslint-plugin-formatjs/rules/prefer-full-sentence.ts\n/**\n* Get the first boundary element, recursing into tags since\n* <b>hello</b> starts with the literal \"hello\".\n*/\nfunction getFirstBoundaryElement(ast) {\n\tif (ast.length === 0) return null;\n\tconst first = ast[0];\n\tif (first.type === TYPE.tag) return getFirstBoundaryElement(first.children);\n\treturn first;\n}\n/**\n* Get the last boundary element, recursing into tags.\n*/\nfunction getLastBoundaryElement(ast) {\n\tif (ast.length === 0) return null;\n\tconst last = ast[ast.length - 1];\n\tif (last.type === TYPE.tag) return getLastBoundaryElement(last.children);\n\treturn last;\n}\nfunction isPlaceholder(element) {\n\treturn element.type !== TYPE.literal && element.type !== TYPE.tag;\n}\nfunction findMessageIssues(ast) {\n\tconst issues = [];\n\tconst first = getFirstBoundaryElement(ast);\n\tconst last = getLastBoundaryElement(ast);\n\tif (first === last && first?.type === TYPE.literal && ast.length === 1 && first.value.trim() === \"\") return issues;\n\tif (first?.type === TYPE.literal && /^\\s/.test(first.value)) issues.push(\"leadingWhitespace\");\n\tif (last?.type === TYPE.literal && /\\s$/.test(last.value)) issues.push(\"trailingWhitespace\");\n\tfor (let index = 0; index < ast.length - 1; index++) {\n\t\tconst current = ast[index];\n\t\tconst next = ast[index + 1];\n\t\tif (current.type === TYPE.literal && /\\p{L}$/u.test(current.value) && isPlaceholder(next) || isPlaceholder(current) && next.type === TYPE.literal && /^\\p{L}/u.test(next.value)) issues.push(\"placeholderAdjacentToWord\");\n\t}\n\tfor (const element of ast) switch (element.type) {\n\t\tcase TYPE.plural:\n\t\tcase TYPE.select:\n\t\t\tfor (const option of Object.values(element.options)) issues.push(...findMessageIssues(option.value));\n\t\t\tbreak;\n\t\tcase TYPE.tag: issues.push(...findMessageIssues(element.children));\n\t}\n\treturn issues;\n}\nfunction checkNode(context, node) {\n\tconst msgs = extractMessages(node, getSettings(context));\n\tfor (const [{ message: { defaultMessage }, messageNode }] of msgs) {\n\t\tif (!defaultMessage || !messageNode) continue;\n\t\tlet ast;\n\t\ttry {\n\t\t\tast = parse(defaultMessage);\n\t\t} catch (e) {\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: \"parseError\",\n\t\t\t\tdata: { error: e instanceof Error ? e.message : String(e) }\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst issues = findMessageIssues(ast);\n\t\tconst seen = /* @__PURE__ */ new Set();\n\t\tfor (const issue of issues) {\n\t\t\tif (seen.has(issue)) continue;\n\t\t\tseen.add(issue);\n\t\t\tcontext.report({\n\t\t\t\tnode: messageNode,\n\t\t\t\tmessageId: issue\n\t\t\t});\n\t\t}\n\t}\n}\nconst name$2 = \"prefer-full-sentence\";\nconst rule = {\n\tmeta: {\n\t\ttype: \"suggestion\",\n\t\tdocs: {\n\t\t\tdescription: \"Detects messages with leading/trailing whitespace, which suggests string concatenation instead of full sentences\",\n\t\t\turl: \"https://formatjs.github.io/docs/tooling/linter#prefer-full-sentence\"\n\t\t},\n\t\tmessages: {\n\t\t\t...CORE_MESSAGES,\n\t\t\tleadingWhitespace: \"Messages should be full sentences — leading whitespace suggests string concatenation\",\n\t\t\ttrailingWhitespace: \"Messages should be full sentences — trailing whitespace suggests string concatenation\",\n\t\t\tplaceholderAdjacentToWord: \"Placeholders should not be joined directly to words or units — use ICU syntax or an Intl formatter\"\n\t\t},\n\t\tschema: []\n\t},\n\tcreate(context) {\n\t\tconst callExpressionVisitor = (node) => checkNode(context, node);\n\t\tconst parserServices = context.sourceCode.parserServices;\n\t\tif (parserServices?.defineTemplateBodyVisitor) return parserServices.defineTemplateBodyVisitor({ CallExpression: callExpressionVisitor }, { CallExpression: callExpressionVisitor });\n\t\treturn {\n\t\t\tJSXOpeningElement: (node) => checkNode(context, node),\n\t\t\tCallExpression: callExpressionVisitor\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/package.json\nvar package_exports = /* @__PURE__ */ __exportAll({\n\tauthor: () => author,\n\tbugs: () => bugs,\n\tdefault: () => package_default,\n\tdependencies: () => dependencies,\n\tdescription: () => description,\n\texports: () => exports,\n\thomepage: () => homepage,\n\tkeywords: () => keywords,\n\tlicense: () => license,\n\tmain: () => main,\n\tname: () => name$1,\n\tpeerDependencies: () => peerDependencies,\n\trepository: () => repository,\n\ttype: () => type,\n\ttypes: () => types,\n\tversion: () => version$1\n});\nvar name$1 = \"eslint-plugin-formatjs\";\nvar version$1 = \"6.6.1\";\nvar description = \"ESLint plugin for formatjs\";\nvar keywords = [\n\t\"eslint\",\n\t\"eslintplugin\",\n\t\"formatjs\",\n\t\"i18n\"\n];\nvar homepage = \"https://github.com/formatjs/formatjs#readme\";\nvar bugs = \"https://github.com/formatjs/formatjs/issues\";\nvar license = \"MIT\";\nvar author = \"Long Ho <holevietlong@gmail.com>\";\nvar repository = \"formatjs/formatjs.git\";\nvar type = \"module\";\nvar main = \"index.js\";\nvar types = \"index.d.ts\";\nvar exports = {\n\t\".\": \"./index.js\",\n\t\"./util\": \"./util.js\"\n};\nvar dependencies = {\n\t\"@formatjs/icu-messageformat-parser\": \"workspace:*\",\n\t\"@formatjs/ts-transformer\": \"workspace:*\",\n\t\"@types/estree-jsx\": \"1\",\n\t\"@types/picomatch\": \"4\",\n\t\"@unicode/unicode-17.0.0\": \"1\",\n\t\"magic-string\": \"1\",\n\t\"picomatch\": \"2 || 3 || 4\"\n};\nvar peerDependencies = { \"eslint\": \"9 || 10\" };\nvar package_default = {\n\tname: name$1,\n\tversion: version$1,\n\tdescription,\n\tkeywords,\n\thomepage,\n\tbugs,\n\tlicense,\n\tauthor,\n\trepository,\n\ttype,\n\tmain,\n\ttypes,\n\texports,\n\tdependencies,\n\tpeerDependencies\n};\n//#endregion\n//#region packages/eslint-plugin-formatjs/index.ts\nconst { name, version } = package_default ?? package_exports;\nconst plugin = {\n\tmeta: {\n\t\tname,\n\t\tversion\n\t},\n\trules: {\n\t\t[name$22]: rule$20,\n\t\t[name$21]: rule$19,\n\t\t[name$20]: rule$18,\n\t\t[name$19]: rule$17,\n\t\t[name$18]: rule$16,\n\t\t[name$17]: rule$15,\n\t\t[name$16]: rule$14,\n\t\t[name$15]: rule$13,\n\t\t[name$14]: rule$12,\n\t\t[name$13]: rule$11,\n\t\t[name$12]: rule$10,\n\t\t[name$11]: rule$9,\n\t\t[name$9]: rule$7,\n\t\t[name$8]: rule$6,\n\t\t[name$7]: rule$5,\n\t\t[name$6]: rule$4,\n\t\t[name$5]: rule$3,\n\t\t[name$4]: rule$2,\n\t\t[name$10]: rule$8,\n\t\t[name$3]: rule$1,\n\t\t[name$2]: rule\n\t},\n\tconfigs: {}\n};\nplugin.configs = {\n\tstrict: {\n\t\tname: \"formatjs/strict\",\n\t\tplugins: { formatjs: plugin },\n\t\trules: {\n\t\t\t\"formatjs/no-offset\": \"error\",\n\t\t\t\"formatjs/enforce-default-message\": [\"error\", \"literal\"],\n\t\t\t\"formatjs/enforce-description\": [\"error\", \"literal\"],\n\t\t\t\"formatjs/enforce-placeholders\": \"error\",\n\t\t\t\"formatjs/no-emoji\": \"error\",\n\t\t\t\"formatjs/no-multiple-whitespaces\": \"error\",\n\t\t\t\"formatjs/no-multiple-plurals\": \"error\",\n\t\t\t\"formatjs/no-complex-selectors\": [\"error\", { limit: 20 }],\n\t\t\t\"formatjs/no-useless-message\": \"error\",\n\t\t\t\"formatjs/prefer-pound-in-plural\": \"error\",\n\t\t\t\"formatjs/no-missing-icu-plural-one-placeholders\": \"error\",\n\t\t\t\"formatjs/enforce-id\": [\"error\", { idInterpolationPattern: \"[sha512:contenthash:base64:10]\" }],\n\t\t\t\"formatjs/enforce-plural-rules\": [\"error\", {\n\t\t\t\tone: true,\n\t\t\t\tother: true\n\t\t\t}],\n\t\t\t\"formatjs/no-literal-string-in-jsx\": [\"error\", { props: { include: [[\"*\", \"{label,placeholder,title}\"]] } }],\n\t\t\t\"formatjs/blocklist-elements\": [\"error\", [\"selectordinal\", {\n\t\t\t\ttype: \"select\",\n\t\t\t\tallow: {\n\t\t\t\t\tvariable: \"gender\",\n\t\t\t\t\toptions: [\n\t\t\t\t\t\t\"male\",\n\t\t\t\t\t\t\"female\",\n\t\t\t\t\t\t\"other\"\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}]],\n\t\t\t\"formatjs/prefer-full-sentence\": \"error\"\n\t\t}\n\t},\n\trecommended: {\n\t\tname: \"formatjs/recommended\",\n\t\tplugins: { formatjs: plugin },\n\t\trules: {\n\t\t\t\"formatjs/no-offset\": \"error\",\n\t\t\t\"formatjs/enforce-default-message\": [\"error\", \"literal\"],\n\t\t\t\"formatjs/enforce-description\": [\"error\", \"literal\"],\n\t\t\t\"formatjs/enforce-placeholders\": \"error\",\n\t\t\t\"formatjs/no-emoji\": \"error\",\n\t\t\t\"formatjs/no-multiple-whitespaces\": \"error\",\n\t\t\t\"formatjs/no-multiple-plurals\": \"error\",\n\t\t\t\"formatjs/no-complex-selectors\": [\"error\", { limit: 20 }],\n\t\t\t\"formatjs/no-useless-message\": \"error\",\n\t\t\t\"formatjs/prefer-pound-in-plural\": \"error\",\n\t\t\t\"formatjs/no-missing-icu-plural-one-placeholders\": \"error\",\n\t\t\t\"formatjs/enforce-plural-rules\": [\"error\", {\n\t\t\t\tone: true,\n\t\t\t\tother: true\n\t\t\t}],\n\t\t\t\"formatjs/no-literal-string-in-jsx\": [\"warn\", { props: { include: [[\"*\", \"{label,placeholder,title}\"]] } }],\n\t\t\t\"formatjs/blocklist-elements\": [\"error\", [\"selectordinal\", {\n\t\t\t\ttype: \"select\",\n\t\t\t\tallow: {\n\t\t\t\t\tvariable: \"gender\",\n\t\t\t\t\toptions: [\n\t\t\t\t\t\t\"male\",\n\t\t\t\t\t\t\"female\",\n\t\t\t\t\t\t\"other\"\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}]],\n\t\t\t\"formatjs/prefer-full-sentence\": \"error\"\n\t\t}\n\t}\n};\n//#endregion\nexport { plugin as default };\n\n"]}