@intlify/core-base 9.14.4 → 9.14.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core-base.cjs +7 -3
- package/dist/core-base.d.ts +10 -1
- package/dist/core-base.esm-browser.js +64 -21
- package/dist/core-base.esm-browser.prod.js +2 -2
- package/dist/core-base.global.js +57 -14
- package/dist/core-base.global.prod.js +2 -2
- package/dist/core-base.mjs +8 -4
- package/dist/core-base.prod.cjs +7 -3
- package/package.json +5 -5
package/dist/core-base.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* core-base v9.14.
|
|
2
|
+
* core-base v9.14.5
|
|
3
3
|
* (c) 2025 kazuya kawaguchi
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -718,7 +718,7 @@ function appendItemToChain(chain, target, blocks) {
|
|
|
718
718
|
* Intlify core-base version
|
|
719
719
|
* @internal
|
|
720
720
|
*/
|
|
721
|
-
const VERSION = '9.14.
|
|
721
|
+
const VERSION = '9.14.5';
|
|
722
722
|
const NOT_REOSLVED = -1;
|
|
723
723
|
const DEFAULT_LOCALE = 'en-US';
|
|
724
724
|
const MISSING_RESOLVE_VALUE = '';
|
|
@@ -1251,9 +1251,13 @@ function translate(context, ...args) {
|
|
|
1251
1251
|
const msgContext = createMessageContext(ctxOptions);
|
|
1252
1252
|
const messaged = evaluateMessage(context, msg, msgContext);
|
|
1253
1253
|
// if use post translation option, proceed it with handler
|
|
1254
|
-
|
|
1254
|
+
let ret = postTranslation
|
|
1255
1255
|
? postTranslation(messaged, key)
|
|
1256
1256
|
: messaged;
|
|
1257
|
+
// apply HTML sanitization for security
|
|
1258
|
+
if (escapeParameter && shared.isString(ret)) {
|
|
1259
|
+
ret = shared.sanitizeTranslatedHtml(ret);
|
|
1260
|
+
}
|
|
1257
1261
|
// NOTE: experimental !!
|
|
1258
1262
|
{
|
|
1259
1263
|
// prettier-ignore
|
package/dist/core-base.d.ts
CHANGED
|
@@ -1182,7 +1182,16 @@ export declare interface TranslateOptions<Locales = Locale> extends LocaleOption
|
|
|
1182
1182
|
fallbackWarn?: boolean;
|
|
1183
1183
|
/**
|
|
1184
1184
|
* @remarks
|
|
1185
|
-
* Whether
|
|
1185
|
+
* Whether to escape parameters for list or named interpolation values.
|
|
1186
|
+
* When enabled, this option:
|
|
1187
|
+
* - Escapes HTML special characters (`<`, `>`, `"`, `'`, `&`, `/`, `=`) in interpolation parameters
|
|
1188
|
+
* - Sanitizes the final translated HTML to prevent XSS attacks by:
|
|
1189
|
+
* - Escaping dangerous characters in HTML attribute values
|
|
1190
|
+
* - Neutralizing event handler attributes (onclick, onerror, etc.)
|
|
1191
|
+
* - Disabling javascript: URLs in href, src, action, formaction, and style attributes
|
|
1192
|
+
*
|
|
1193
|
+
* @defaultValue false
|
|
1194
|
+
* @see [HTML Message - Using the escapeParameter option](https://vue-i18n.intlify.dev/guide/essentials/syntax.html#using-the-escapeparameter-option)
|
|
1186
1195
|
*/
|
|
1187
1196
|
escapeParameter?: boolean;
|
|
1188
1197
|
/**
|
|
@@ -1,8 +1,25 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* core-base v9.14.
|
|
2
|
+
* core-base v9.14.5
|
|
3
3
|
* (c) 2025 kazuya kawaguchi
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
|
+
function warn(msg, err) {
|
|
7
|
+
if (typeof console !== 'undefined') {
|
|
8
|
+
console.warn(`[intlify] ` + msg);
|
|
9
|
+
/* istanbul ignore if */
|
|
10
|
+
if (err) {
|
|
11
|
+
console.warn(err.stack);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
const hasWarned = {};
|
|
16
|
+
function warnOnce(msg) {
|
|
17
|
+
if (!hasWarned[msg]) {
|
|
18
|
+
hasWarned[msg] = true;
|
|
19
|
+
warn(msg);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
6
23
|
/**
|
|
7
24
|
* Original Utilities
|
|
8
25
|
* written by kazuya kawaguchi
|
|
@@ -55,10 +72,49 @@ const _create = Object.create;
|
|
|
55
72
|
const create = (obj = null) => _create(obj);
|
|
56
73
|
function escapeHtml(rawText) {
|
|
57
74
|
return rawText
|
|
75
|
+
.replace(/&/g, '&') // escape `&` first to avoid double escaping
|
|
58
76
|
.replace(/</g, '<')
|
|
59
77
|
.replace(/>/g, '>')
|
|
60
78
|
.replace(/"/g, '"')
|
|
61
|
-
.replace(/'/g, ''')
|
|
79
|
+
.replace(/'/g, ''')
|
|
80
|
+
.replace(/\//g, '/') // escape `/` to prevent closing tags or JavaScript URLs
|
|
81
|
+
.replace(/=/g, '='); // escape `=` to prevent attribute injection
|
|
82
|
+
}
|
|
83
|
+
function escapeAttributeValue(value) {
|
|
84
|
+
return value
|
|
85
|
+
.replace(/&(?![a-zA-Z0-9#]{2,6};)/g, '&') // escape unescaped `&`
|
|
86
|
+
.replace(/"/g, '"')
|
|
87
|
+
.replace(/'/g, ''')
|
|
88
|
+
.replace(/</g, '<')
|
|
89
|
+
.replace(/>/g, '>');
|
|
90
|
+
}
|
|
91
|
+
function sanitizeTranslatedHtml(html) {
|
|
92
|
+
// Escape dangerous characters in attribute values
|
|
93
|
+
// Process attributes with double quotes
|
|
94
|
+
html = html.replace(/(\w+)\s*=\s*"([^"]*)"/g, (_, attrName, attrValue) => `${attrName}="${escapeAttributeValue(attrValue)}"`);
|
|
95
|
+
// Process attributes with single quotes
|
|
96
|
+
html = html.replace(/(\w+)\s*=\s*'([^']*)'/g, (_, attrName, attrValue) => `${attrName}='${escapeAttributeValue(attrValue)}'`);
|
|
97
|
+
// Detect and neutralize event handler attributes
|
|
98
|
+
const eventHandlerPattern = /\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi;
|
|
99
|
+
if (eventHandlerPattern.test(html)) {
|
|
100
|
+
{
|
|
101
|
+
warn('Potentially dangerous event handlers detected in translation. ' +
|
|
102
|
+
'Consider removing onclick, onerror, etc. from your translation messages.');
|
|
103
|
+
}
|
|
104
|
+
// Neutralize event handler attributes by escaping 'on'
|
|
105
|
+
html = html.replace(/(\s+)(on)(\w+\s*=)/gi, '$1on$3');
|
|
106
|
+
}
|
|
107
|
+
// Disable javascript: URLs in various contexts
|
|
108
|
+
const javascriptUrlPattern = [
|
|
109
|
+
// In href, src, action, formaction attributes
|
|
110
|
+
/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,
|
|
111
|
+
// In style attributes within url()
|
|
112
|
+
/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi
|
|
113
|
+
];
|
|
114
|
+
javascriptUrlPattern.forEach(pattern => {
|
|
115
|
+
html = html.replace(pattern, '$1javascript:');
|
|
116
|
+
});
|
|
117
|
+
return html;
|
|
62
118
|
}
|
|
63
119
|
const hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
64
120
|
function hasOwn(obj, key) {
|
|
@@ -139,23 +195,6 @@ function incrementer(code) {
|
|
|
139
195
|
return () => ++current;
|
|
140
196
|
}
|
|
141
197
|
|
|
142
|
-
function warn(msg, err) {
|
|
143
|
-
if (typeof console !== 'undefined') {
|
|
144
|
-
console.warn(`[intlify] ` + msg);
|
|
145
|
-
/* istanbul ignore if */
|
|
146
|
-
if (err) {
|
|
147
|
-
console.warn(err.stack);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
const hasWarned = {};
|
|
152
|
-
function warnOnce(msg) {
|
|
153
|
-
if (!hasWarned[msg]) {
|
|
154
|
-
hasWarned[msg] = true;
|
|
155
|
-
warn(msg);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
|
|
159
198
|
function createPosition(line, column, offset) {
|
|
160
199
|
return { line, column, offset };
|
|
161
200
|
}
|
|
@@ -2456,7 +2495,7 @@ function appendItemToChain(chain, target, blocks) {
|
|
|
2456
2495
|
* Intlify core-base version
|
|
2457
2496
|
* @internal
|
|
2458
2497
|
*/
|
|
2459
|
-
const VERSION = '9.14.
|
|
2498
|
+
const VERSION = '9.14.5';
|
|
2460
2499
|
const NOT_REOSLVED = -1;
|
|
2461
2500
|
const DEFAULT_LOCALE = 'en-US';
|
|
2462
2501
|
const MISSING_RESOLVE_VALUE = '';
|
|
@@ -2989,9 +3028,13 @@ function translate(context, ...args) {
|
|
|
2989
3028
|
const msgContext = createMessageContext(ctxOptions);
|
|
2990
3029
|
const messaged = evaluateMessage(context, msg, msgContext);
|
|
2991
3030
|
// if use post translation option, proceed it with handler
|
|
2992
|
-
|
|
3031
|
+
let ret = postTranslation
|
|
2993
3032
|
? postTranslation(messaged, key)
|
|
2994
3033
|
: messaged;
|
|
3034
|
+
// apply HTML sanitization for security
|
|
3035
|
+
if (escapeParameter && isString(ret)) {
|
|
3036
|
+
ret = sanitizeTranslatedHtml(ret);
|
|
3037
|
+
}
|
|
2995
3038
|
// NOTE: experimental !!
|
|
2996
3039
|
{
|
|
2997
3040
|
// prettier-ignore
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* core-base v9.14.
|
|
2
|
+
* core-base v9.14.5
|
|
3
3
|
* (c) 2025 kazuya kawaguchi
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
|
-
const RE_ARGS=/\{([0-9a-zA-Z]+)\}/g;function format$1(e,...t){return 1===t.length&&isObject(t[0])&&(t=t[0]),t&&t.hasOwnProperty||(t={}),e.replace(RE_ARGS,((e,r)=>t.hasOwnProperty(r)?t[r]:""))}const generateFormatCacheKey=(e,t,r)=>friendlyJSONstringify({l:e,k:t,s:r}),friendlyJSONstringify=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),isNumber=e=>"number"==typeof e&&isFinite(e),isDate=e=>"[object Date]"===toTypeString(e),isRegExp=e=>"[object RegExp]"===toTypeString(e),isEmptyObject=e=>isPlainObject(e)&&0===Object.keys(e).length,assign=Object.assign,_create=Object.create,create=(e=null)=>_create(e);function escapeHtml(e){return e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}const hasOwnProperty=Object.prototype.hasOwnProperty;function hasOwn(e,t){return hasOwnProperty.call(e,t)}const isArray=Array.isArray,isFunction=e=>"function"==typeof e,isString=e=>"string"==typeof e,isBoolean=e=>"boolean"==typeof e,isObject=e=>null!==e&&"object"==typeof e,isPromise=e=>isObject(e)&&isFunction(e.then)&&isFunction(e.catch),objectToString=Object.prototype.toString,toTypeString=e=>objectToString.call(e),isPlainObject=e=>{if(!isObject(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t.constructor===Object},toDisplayString=e=>null==e?"":isArray(e)||isPlainObject(e)&&e.toString===objectToString?JSON.stringify(e,null,2):String(e);function join(e,t=""){return e.reduce(((e,r,n)=>0===n?e+r:e+t+r),"")}function incrementer(e){let t=e;return()=>++t}function warn(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}function createPosition(e,t,r){return{line:e,column:t,offset:r}}function createLocation(e,t,r){const n={start:e,end:t};return null!=r&&(n.source=r),n}const CompileWarnCodes={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2};function createCompileWarn(e,t,...r){const n={message:String(e),code:e};return t&&(n.location=t),n}const CompileErrorCodes={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17};function createCompileError(e,t,r={}){const{domain:n,messages:o,args:s}=r,a=new SyntaxError(String(e));return a.code=e,t&&(a.location=t),a.domain=n,a}function defaultOnError(e){throw e}CompileErrorCodes.EXPECTED_TOKEN,CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER,CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE,CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE,CompileErrorCodes.UNBALANCED_CLOSING_BRACE,CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,CompileErrorCodes.EMPTY_PLACEHOLDER,CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER,CompileErrorCodes.INVALID_LINKED_FORMAT,CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL,CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER,CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,CompileErrorCodes.UNHANDLED_CODEGEN_NODE_TYPE,CompileErrorCodes.UNHANDLED_MINIFIER_NODE_TYPE;const CHAR_SP=" ",CHAR_CR="\r",CHAR_LF="\n",CHAR_LS=String.fromCharCode(8232),CHAR_PS=String.fromCharCode(8233);function createScanner(e){const t=e;let r=0,n=1,o=1,s=0;const a=e=>t[e]===CHAR_CR&&t[e+1]===CHAR_LF,i=e=>t[e]===CHAR_PS,c=e=>t[e]===CHAR_LS,l=e=>a(e)||(e=>t[e]===CHAR_LF)(e)||i(e)||c(e),u=e=>a(e)||i(e)||c(e)?CHAR_LF:t[e];function E(){return s=0,l(r)&&(n++,o=0),a(r)&&r++,r++,o++,t[r]}return{index:()=>r,line:()=>n,column:()=>o,peekOffset:()=>s,charAt:u,currentChar:()=>u(r),currentPeek:()=>u(r+s),next:E,peek:function(){return a(r+s)&&s++,s++,t[r+s]},reset:function(){r=0,n=1,o=1,s=0},resetPeek:function(e=0){s=e},skipToPeek:function(){const e=r+s;for(;e!==r;)E();s=0}}}const EOF=void 0,DOT=".",LITERAL_DELIMITER="'",ERROR_DOMAIN$1="tokenizer";function createTokenizer(e,t={}){const r=!1!==t.location,n=createScanner(e),o=()=>n.index(),s=()=>createPosition(n.line(),n.column(),n.index()),a=s(),i=o(),c={currentType:14,offset:i,startLoc:a,endLoc:a,lastType:14,lastOffset:i,lastStartLoc:a,lastEndLoc:a,braceNest:0,inLinked:!1,text:""},l=()=>c,{onError:u}=t;function E(e,t,n){e.endLoc=s(),e.currentType=t;const o={type:t};return r&&(o.loc=createLocation(e.startLoc,e.endLoc)),null!=n&&(o.value=n),o}const f=e=>E(e,14);function _(e,t){return e.currentChar()===t?(e.next(),t):(CompileErrorCodes.EXPECTED_TOKEN,s(),"")}function m(e){let t="";for(;e.currentPeek()===CHAR_SP||e.currentPeek()===CHAR_LF;)t+=e.currentPeek(),e.peek();return t}function C(e){const t=m(e);return e.skipToPeek(),t}function d(e){if(e===EOF)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function p(e,t){const{currentType:r}=t;if(2!==r)return!1;m(e);const n=function(e){if(e===EOF)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),n}function T(e){m(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function N(e,t=!0){const r=(t=!1,n="",o=!1)=>{const s=e.currentPeek();return"{"===s?"%"!==n&&t:"@"!==s&&s?"%"===s?(e.peek(),r(t,"%",!0)):"|"===s?!("%"!==n&&!o)||!(n===CHAR_SP||n===CHAR_LF):s===CHAR_SP?(e.peek(),r(!0,CHAR_SP,o)):s!==CHAR_LF||(e.peek(),r(!0,CHAR_LF,o)):"%"===n||t},n=r();return t&&e.resetPeek(),n}function A(e,t){const r=e.currentChar();return r===EOF?EOF:t(r)?(e.next(),r):null}function O(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function g(e){return A(e,O)}function S(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function L(e){return A(e,S)}function P(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function h(e){return A(e,P)}function b(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function k(e){return A(e,b)}function I(e){let t="",r="";for(;t=h(e);)r+=t;return r}function R(e){let t="";for(;;){const r=e.currentChar();if("{"===r||"}"===r||"@"===r||"|"===r||!r)break;if("%"===r){if(!N(e))break;t+=r,e.next()}else if(r===CHAR_SP||r===CHAR_LF)if(N(e))t+=r,e.next();else{if(T(e))break;t+=r,e.next()}else t+=r,e.next()}return t}function M(e){return e!==LITERAL_DELIMITER&&e!==CHAR_LF}function y(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return D(e,t,4);case"U":return D(e,t,6);default:return CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE,s(),""}}function D(e,t,r){_(e,t);let n="";for(let o=0;o<r;o++){const t=k(e);if(!t){CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE,s(),e.currentChar();break}n+=t}return`\\${t}${n}`}function F(e){return"{"!==e&&"}"!==e&&e!==CHAR_SP&&e!==CHAR_LF}function v(e){C(e);const t=_(e,"|");return C(e),t}function U(e,t){let r=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&(CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER,s()),e.next(),r=E(t,2,"{"),C(e),t.braceNest++,r;case"}":return t.braceNest>0&&2===t.currentType&&(CompileErrorCodes.EMPTY_PLACEHOLDER,s()),e.next(),r=E(t,3,"}"),t.braceNest--,t.braceNest>0&&C(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),r;case"@":return t.braceNest>0&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),r=x(e,t)||f(t),t.braceNest=0,r;default:{let n=!0,o=!0,a=!0;if(T(e))return t.braceNest>0&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),r=E(t,1,v(e)),t.braceNest=0,t.inLinked=!1,r;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s(),t.braceNest=0,w(e,t);if(n=function(e,t){const{currentType:r}=t;if(2!==r)return!1;m(e);const n=d(e.currentPeek());return e.resetPeek(),n}(e,t))return r=E(t,5,function(e){C(e);let t="",r="";for(;t=L(e);)r+=t;return e.currentChar()===EOF&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),r}(e)),C(e),r;if(o=p(e,t))return r=E(t,6,function(e){C(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${I(e)}`):t+=I(e),e.currentChar()===EOF&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),t}(e)),C(e),r;if(a=function(e,t){const{currentType:r}=t;if(2!==r)return!1;m(e);const n=e.currentPeek()===LITERAL_DELIMITER;return e.resetPeek(),n}(e,t))return r=E(t,7,function(e){C(e),_(e,"'");let t="",r="";for(;t=A(e,M);)r+="\\"===t?y(e):t;const n=e.currentChar();return n===CHAR_LF||n===EOF?(CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),n===CHAR_LF&&(e.next(),_(e,"'")),r):(_(e,"'"),r)}(e)),C(e),r;if(!n&&!o&&!a)return r=E(t,13,function(e){C(e);let t="",r="";for(;t=A(e,F);)r+=t;return r}(e)),CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER,s(),r.value,C(e),r;break}}return r}function x(e,t){const{currentType:r}=t;let n=null;const o=e.currentChar();switch(8!==r&&9!==r&&12!==r&&10!==r||o!==CHAR_LF&&o!==CHAR_SP||(CompileErrorCodes.INVALID_LINKED_FORMAT,s()),o){case"@":return e.next(),n=E(t,8,"@"),t.inLinked=!0,n;case".":return C(e),e.next(),E(t,9,".");case":":return C(e),e.next(),E(t,10,":");default:return T(e)?(n=E(t,1,v(e)),t.braceNest=0,t.inLinked=!1,n):function(e,t){const{currentType:r}=t;if(8!==r)return!1;m(e);const n="."===e.currentPeek();return e.resetPeek(),n}(e,t)||function(e,t){const{currentType:r}=t;if(8!==r&&12!==r)return!1;m(e);const n=":"===e.currentPeek();return e.resetPeek(),n}(e,t)?(C(e),x(e,t)):function(e,t){const{currentType:r}=t;if(9!==r)return!1;m(e);const n=d(e.currentPeek());return e.resetPeek(),n}(e,t)?(C(e),E(t,12,function(e){let t="",r="";for(;t=g(e);)r+=t;return r}(e))):function(e,t){const{currentType:r}=t;if(10!==r)return!1;const n=()=>{const t=e.currentPeek();return"{"===t?d(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||t===CHAR_SP||!t)&&(t===CHAR_LF?(e.peek(),n()):N(e,!1))},o=n();return e.resetPeek(),o}(e,t)?(C(e),"{"===o?U(e,t)||n:E(t,11,function(e){const t=r=>{const n=e.currentChar();return"{"!==n&&"%"!==n&&"@"!==n&&"|"!==n&&"("!==n&&")"!==n&&n?n===CHAR_SP?r:(r+=n,e.next(),t(r)):r};return t("")}(e))):(8===r&&(CompileErrorCodes.INVALID_LINKED_FORMAT,s()),t.braceNest=0,t.inLinked=!1,w(e,t))}}function w(e,t){let r={type:14};if(t.braceNest>0)return U(e,t)||f(t);if(t.inLinked)return x(e,t)||f(t);switch(e.currentChar()){case"{":return U(e,t)||f(t);case"}":return CompileErrorCodes.UNBALANCED_CLOSING_BRACE,s(),e.next(),E(t,3,"}");case"@":return x(e,t)||f(t);default:{if(T(e))return r=E(t,1,v(e)),t.braceNest=0,t.inLinked=!1,r;const{isModulo:n,hasSpace:o}=function(e){const t=m(e),r="%"===e.currentPeek()&&"{"===e.peek();return e.resetPeek(),{isModulo:r,hasSpace:t.length>0}}(e);if(n)return o?E(t,0,R(e)):E(t,4,function(e){C(e);const t=e.currentChar();return"%"!==t&&(CompileErrorCodes.EXPECTED_TOKEN,s()),e.next(),"%"}(e));if(N(e))return E(t,0,R(e));break}}return r}return{nextToken:function(){const{currentType:e,offset:t,startLoc:r,endLoc:a}=c;return c.lastType=e,c.lastOffset=t,c.lastStartLoc=r,c.lastEndLoc=a,c.offset=o(),c.startLoc=s(),n.currentChar()===EOF?E(c,14):w(n,c)},currentOffset:o,currentPosition:s,context:l}}const ERROR_DOMAIN="parser",KNOWN_ESCAPES=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function fromEscapeSequence(e,t,r){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||r,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function createParser(e={}){const t=!1!==e.location,{onError:r,onWarn:n}=e;function o(e,r,n){const o={type:e};return t&&(o.start=r,o.end=r,o.loc={start:n,end:n}),o}function s(e,r,n,o){o&&(e.type=o),t&&(e.end=r,e.loc&&(e.loc.end=n))}function a(e,t){const r=e.context(),n=o(3,r.offset,r.startLoc);return n.value=t,s(n,e.currentOffset(),e.currentPosition()),n}function i(e,t){const r=e.context(),{lastOffset:n,lastStartLoc:a}=r,i=o(5,n,a);return i.index=parseInt(t,10),e.nextToken(),s(i,e.currentOffset(),e.currentPosition()),i}function c(e,t,r){const n=e.context(),{lastOffset:a,lastStartLoc:i}=n,c=o(4,a,i);return c.key=t,!0===r&&(c.modulo=!0),e.nextToken(),s(c,e.currentOffset(),e.currentPosition()),c}function l(e,t){const r=e.context(),{lastOffset:n,lastStartLoc:a}=r,i=o(9,n,a);return i.value=t.replace(KNOWN_ESCAPES,fromEscapeSequence),e.nextToken(),s(i,e.currentOffset(),e.currentPosition()),i}function u(e){const t=e.context(),r=o(6,t.offset,t.startLoc);let n=e.nextToken();if(9===n.type){const t=function(e){const t=e.nextToken(),r=e.context(),{lastOffset:n,lastStartLoc:a}=r,i=o(8,n,a);return 12!==t.type?(CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER,r.lastStartLoc,i.value="",s(i,n,a),{nextConsumeToken:t,node:i}):(null==t.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,r.lastStartLoc,getTokenCaption(t)),i.value=t.value||"",s(i,e.currentOffset(),e.currentPosition()),{node:i})}(e);r.modifier=t.node,n=t.nextConsumeToken||e.nextToken()}switch(10!==n.type&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),n=e.nextToken(),2===n.type&&(n=e.nextToken()),n.type){case 11:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=function(e,t){const r=e.context(),n=o(7,r.offset,r.startLoc);return n.value=t,s(n,e.currentOffset(),e.currentPosition()),n}(e,n.value||"");break;case 5:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=c(e,n.value||"");break;case 6:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=i(e,n.value||"");break;case 7:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=l(e,n.value||"");break;default:{CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc;const a=e.context(),i=o(7,a.offset,a.startLoc);return i.value="",s(i,a.offset,a.startLoc),r.key=i,s(r,a.offset,a.startLoc),{nextConsumeToken:n,node:r}}}return s(r,e.currentOffset(),e.currentPosition()),{node:r}}function E(e){const t=e.context(),r=o(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);r.items=[];let n=null,E=null;do{const o=n||e.nextToken();switch(n=null,o.type){case 0:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(a(e,o.value||""));break;case 6:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(i(e,o.value||""));break;case 4:E=!0;break;case 5:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(c(e,o.value||"",!!E)),E&&(CompileWarnCodes.USE_MODULO_SYNTAX,t.lastStartLoc,getTokenCaption(o),E=null);break;case 7:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(l(e,o.value||""));break;case 8:{const t=u(e);r.items.push(t.node),n=t.nextConsumeToken||null;break}}}while(14!==t.currentType&&1!==t.currentType);return s(r,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),r}function f(e){const t=e.context(),{offset:r,startLoc:n}=t,a=E(e);return 14===t.currentType?a:function(e,t,r,n){const a=e.context();let i=0===n.items.length;const c=o(1,t,r);c.cases=[],c.cases.push(n);do{const t=E(e);i||(i=0===t.items.length),c.cases.push(t)}while(14!==a.currentType);return i&&CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL,s(c,e.currentOffset(),e.currentPosition()),c}(e,r,n,a)}return{parse:function(r){const n=createTokenizer(r,assign({},e)),a=n.context(),i=o(0,a.offset,a.startLoc);return t&&i.loc&&(i.loc.source=r),i.body=f(n),e.onCacheKey&&(i.cacheKey=e.onCacheKey(r)),14!==a.currentType&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,a.lastStartLoc,r[a.offset]),s(i,n.currentOffset(),n.currentPosition()),i}}}function getTokenCaption(e){if(14===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function createTransformer(e,t={}){const r={ast:e,helpers:new Set};return{context:()=>r,helper:e=>(r.helpers.add(e),e)}}function traverseNodes(e,t){for(let r=0;r<e.length;r++)traverseNode(e[r],t)}function traverseNode(e,t){switch(e.type){case 1:traverseNodes(e.cases,t),t.helper("plural");break;case 2:traverseNodes(e.items,t);break;case 6:traverseNode(e.key,t),t.helper("linked"),t.helper("type");break;case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named")}}function transform(e,t={}){const r=createTransformer(e);r.helper("normalize"),e.body&&traverseNode(e.body,r);const n=r.context();e.helpers=Array.from(n.helpers)}function optimize(e){const t=e.body;return 2===t.type?optimizeMessageNode(t):t.cases.forEach((e=>optimizeMessageNode(e))),e}function optimizeMessageNode(e){if(1===e.items.length){const t=e.items[0];3!==t.type&&9!==t.type||(e.static=t.value,delete t.value)}else{const t=[];for(let r=0;r<e.items.length;r++){const n=e.items[r];if(3!==n.type&&9!==n.type)break;if(null==n.value)break;t.push(n.value)}if(t.length===e.items.length){e.static=join(t);for(let t=0;t<e.items.length;t++){const r=e.items[t];3!==r.type&&9!==r.type||delete r.value}}}}function minify(e){switch(e.t=e.type,e.type){case 0:{const t=e;minify(t.body),t.b=t.body,delete t.body;break}case 1:{const t=e,r=t.cases;for(let e=0;e<r.length;e++)minify(r[e]);t.c=r,delete t.cases;break}case 2:{const t=e,r=t.items;for(let e=0;e<r.length;e++)minify(r[e]);t.i=r,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{const t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{const t=e;minify(t.key),t.k=t.key,delete t.key,t.modifier&&(minify(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{const t=e;t.i=t.index,delete t.index;break}case 4:{const t=e;t.k=t.key,delete t.key;break}}delete e.type}function createCodeGenerator(e,t){const{sourceMap:r,filename:n,breakLineCode:o,needIndent:s}=t,a=!1!==t.location,i={filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:o,needIndent:s,indentLevel:0};a&&e.loc&&(i.source=e.loc.source);function c(e,t){i.code+=e}function l(e,t=!0){const r=t?o:"";c(s?r+" ".repeat(e):r)}return{context:()=>i,push:c,indent:function(e=!0){const t=++i.indentLevel;e&&l(t)},deindent:function(e=!0){const t=--i.indentLevel;e&&l(t)},newline:function(){l(i.indentLevel)},helper:e=>`_${e}`,needIndent:()=>i.needIndent}}function generateLinkedNode(e,t){const{helper:r}=e;e.push(`${r("linked")}(`),generateNode(e,t.key),t.modifier?(e.push(", "),generateNode(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function generateMessageNode(e,t){const{helper:r,needIndent:n}=e;e.push(`${r("normalize")}([`),e.indent(n());const o=t.items.length;for(let s=0;s<o&&(generateNode(e,t.items[s]),s!==o-1);s++)e.push(", ");e.deindent(n()),e.push("])")}function generatePluralNode(e,t){const{helper:r,needIndent:n}=e;if(t.cases.length>1){e.push(`${r("plural")}([`),e.indent(n());const o=t.cases.length;for(let r=0;r<o&&(generateNode(e,t.cases[r]),r!==o-1);r++)e.push(", ");e.deindent(n()),e.push("])")}}function generateResource(e,t){t.body?generateNode(e,t.body):e.push("null")}function generateNode(e,t){const{helper:r}=e;switch(t.type){case 0:generateResource(e,t);break;case 1:generatePluralNode(e,t);break;case 2:generateMessageNode(e,t);break;case 6:generateLinkedNode(e,t);break;case 8:case 7:case 9:case 3:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${r("interpolate")}(${r("list")}(${t.index}))`,t);break;case 4:e.push(`${r("interpolate")}(${r("named")}(${JSON.stringify(t.key)}))`,t)}}const generate=(e,t={})=>{const r=isString(t.mode)?t.mode:"normal",n=isString(t.filename)?t.filename:"message.intl",o=!!t.sourceMap,s=null!=t.breakLineCode?t.breakLineCode:"arrow"===r?";":"\n",a=t.needIndent?t.needIndent:"arrow"!==r,i=e.helpers||[],c=createCodeGenerator(e,{mode:r,filename:n,sourceMap:o,breakLineCode:s,needIndent:a});c.push("normal"===r?"function __msg__ (ctx) {":"(ctx) => {"),c.indent(a),i.length>0&&(c.push(`const { ${join(i.map((e=>`${e}: _${e}`)),", ")} } = ctx`),c.newline()),c.push("return "),generateNode(c,e),c.deindent(a),c.push("}"),delete e.helpers;const{code:l,map:u}=c.context();return{ast:e,code:l,map:u?u.toJSON():void 0}};function baseCompile$1(e,t={}){const r=assign({},t),n=!!r.jit,o=!!r.minify,s=null==r.optimize||r.optimize,a=createParser(r).parse(e);return n?(s&&optimize(a),o&&minify(a),{ast:a,code:""}):(transform(a,r),generate(a,r))}function isMessageAST(e){return isObject(e)&&0===resolveType(e)&&(hasOwn(e,"b")||hasOwn(e,"body"))}const PROPS_BODY=["b","body"];function resolveBody(e){return resolveProps(e,PROPS_BODY)}const PROPS_CASES=["c","cases"];function resolveCases(e){return resolveProps(e,PROPS_CASES,[])}const PROPS_STATIC=["s","static"];function resolveStatic(e){return resolveProps(e,PROPS_STATIC)}const PROPS_ITEMS=["i","items"];function resolveItems(e){return resolveProps(e,PROPS_ITEMS,[])}const PROPS_TYPE=["t","type"];function resolveType(e){return resolveProps(e,PROPS_TYPE)}const PROPS_VALUE=["v","value"];function resolveValue$1(e,t){const r=resolveProps(e,PROPS_VALUE);if(null!=r)return r;throw createUnhandleNodeError(t)}const PROPS_MODIFIER=["m","modifier"];function resolveLinkedModifier(e){return resolveProps(e,PROPS_MODIFIER)}const PROPS_KEY=["k","key"];function resolveLinkedKey(e){const t=resolveProps(e,PROPS_KEY);if(t)return t;throw createUnhandleNodeError(6)}function resolveProps(e,t,r){for(let n=0;n<t.length;n++){const r=t[n];if(hasOwn(e,r)&&null!=e[r])return e[r]}return r}const AST_NODE_PROPS_KEYS=[...PROPS_BODY,...PROPS_CASES,...PROPS_STATIC,...PROPS_ITEMS,...PROPS_KEY,...PROPS_MODIFIER,...PROPS_VALUE,...PROPS_TYPE];function createUnhandleNodeError(e){return new Error(`unhandled node type: ${e}`)}const pathStateMachine=[];pathStateMachine[0]={w:[0],i:[3,0],"[":[4],o:[7]},pathStateMachine[1]={w:[1],".":[2],"[":[4],o:[7]},pathStateMachine[2]={w:[2],i:[3,0],0:[3,0]},pathStateMachine[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},pathStateMachine[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},pathStateMachine[5]={"'":[4,0],o:8,l:[5,0]},pathStateMachine[6]={'"':[4,0],o:8,l:[6,0]};const literalValueRE=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function isLiteral(e){return literalValueRE.test(e)}function stripQuotes(e){const t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}function getPathCharType(e){if(null==e)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function formatSubPath(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(isLiteral(t)?stripQuotes(t):"*"+t)}function parse(e){const t=[];let r,n,o,s,a,i,c,l=-1,u=0,E=0;const f=[];function _(){const t=e[l+1];if(5===u&&"'"===t||6===u&&'"'===t)return l++,o="\\"+t,f[0](),!0}for(f[0]=()=>{void 0===n?n=o:n+=o},f[1]=()=>{void 0!==n&&(t.push(n),n=void 0)},f[2]=()=>{f[0](),E++},f[3]=()=>{if(E>0)E--,u=4,f[0]();else{if(E=0,void 0===n)return!1;if(n=formatSubPath(n),!1===n)return!1;f[1]()}};null!==u;)if(l++,r=e[l],"\\"!==r||!_()){if(s=getPathCharType(r),c=pathStateMachine[u],a=c[s]||c.l||8,8===a)return;if(u=a[0],void 0!==a[1]&&(i=f[a[1]],i&&(o=r,!1===i())))return;if(7===u)return t}}const cache=new Map;function resolveWithKeyValue(e,t){return isObject(e)?e[t]:null}function resolveValue(e,t){if(!isObject(e))return null;let r=cache.get(t);if(r||(r=parse(t),r&&cache.set(t,r)),!r)return null;const n=r.length;let o=e,s=0;for(;s<n;){const e=r[s];if(AST_NODE_PROPS_KEYS.includes(e)&&isMessageAST(o))return null;const t=o[e];if(void 0===t)return null;if(isFunction(o))return null;o=t,s++}return o}const DEFAULT_MODIFIER=e=>e,DEFAULT_MESSAGE=e=>"",DEFAULT_MESSAGE_DATA_TYPE="text",DEFAULT_NORMALIZE=e=>0===e.length?"":join(e),DEFAULT_INTERPOLATE=toDisplayString;function pluralDefault(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function getPluralIndex(e){const t=isNumber(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(isNumber(e.named.count)||isNumber(e.named.n))?isNumber(e.named.count)?e.named.count:isNumber(e.named.n)?e.named.n:t:t}function normalizeNamed(e,t){t.count||(t.count=e),t.n||(t.n=e)}function createMessageContext(e={}){const t=e.locale,r=getPluralIndex(e),n=isObject(e.pluralRules)&&isString(t)&&isFunction(e.pluralRules[t])?e.pluralRules[t]:pluralDefault,o=isObject(e.pluralRules)&&isString(t)&&isFunction(e.pluralRules[t])?pluralDefault:void 0,s=e.list||[],a=e.named||create();isNumber(e.pluralIndex)&&normalizeNamed(r,a);function i(t){const r=isFunction(e.messages)?e.messages(t):!!isObject(e.messages)&&e.messages[t];return r||(e.parent?e.parent.message(t):DEFAULT_MESSAGE)}const c=isPlainObject(e.processor)&&isFunction(e.processor.normalize)?e.processor.normalize:DEFAULT_NORMALIZE,l=isPlainObject(e.processor)&&isFunction(e.processor.interpolate)?e.processor.interpolate:DEFAULT_INTERPOLATE,u={list:e=>s[e],named:e=>a[e],plural:e=>e[n(r,e.length,o)],linked:(t,...r)=>{const[n,o]=r;let s="text",a="";1===r.length?isObject(n)?(a=n.modifier||a,s=n.type||s):isString(n)&&(a=n||a):2===r.length&&(isString(n)&&(a=n||a),isString(o)&&(s=o||s));const c=i(t)(u),l="vnode"===s&&isArray(c)&&a?c[0]:c;return a?(E=a,e.modifiers?e.modifiers[E]:DEFAULT_MODIFIER)(l,s):l;var E},message:i,type:isPlainObject(e.processor)&&isString(e.processor.type)?e.processor.type:DEFAULT_MESSAGE_DATA_TYPE,interpolate:l,normalize:c,values:assign(create(),s,a)};return u}let devtools=null;function setDevToolsHook(e){devtools=e}function getDevToolsHook(){return devtools}function initI18nDevTools(e,t,r){devtools&&devtools.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:r})}const translateDevTools=createDevToolsHook("function:translate");function createDevToolsHook(e){return t=>devtools&&devtools.emit(e,t)}const code$1=CompileWarnCodes.__EXTEND_POINT__,inc$1=incrementer(code$1),CoreWarnCodes={NOT_FOUND_KEY:code$1,FALLBACK_TO_TRANSLATE:inc$1(),CANNOT_FORMAT_NUMBER:inc$1(),FALLBACK_TO_NUMBER_FORMAT:inc$1(),CANNOT_FORMAT_DATE:inc$1(),FALLBACK_TO_DATE_FORMAT:inc$1(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:inc$1(),__EXTEND_POINT__:inc$1()},warnMessages={[CoreWarnCodes.NOT_FOUND_KEY]:"Not found '{key}' key in '{locale}' locale messages.",[CoreWarnCodes.FALLBACK_TO_TRANSLATE]:"Fall back to translate '{key}' key with '{target}' locale.",[CoreWarnCodes.CANNOT_FORMAT_NUMBER]:"Cannot format a number value due to not supported Intl.NumberFormat.",[CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT]:"Fall back to number format '{key}' key with '{target}' locale.",[CoreWarnCodes.CANNOT_FORMAT_DATE]:"Cannot format a date value due to not supported Intl.DateTimeFormat.",[CoreWarnCodes.FALLBACK_TO_DATE_FORMAT]:"Fall back to datetime format '{key}' key with '{target}' locale.",[CoreWarnCodes.EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER]:"This project is using Custom Message Compiler, which is an experimental feature. It may receive breaking changes or be removed in the future."};function getWarnMessage(e,...t){return format$1(warnMessages[e],...t)}const code=CompileErrorCodes.__EXTEND_POINT__,inc=incrementer(code),CoreErrorCodes={INVALID_ARGUMENT:code,INVALID_DATE_ARGUMENT:inc(),INVALID_ISO_DATE_ARGUMENT:inc(),NOT_SUPPORT_NON_STRING_MESSAGE:inc(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:inc(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:inc(),NOT_SUPPORT_LOCALE_TYPE:inc(),__EXTEND_POINT__:inc()};function createCoreError(e){return createCompileError(e,null,void 0)}function getLocale(e,t){return null!=t.locale?resolveLocale(t.locale):resolveLocale(e.locale)}let _resolveLocale;function resolveLocale(e){if(isString(e))return e;if(isFunction(e)){if(e.resolvedOnce&&null!=_resolveLocale)return _resolveLocale;if("Function"===e.constructor.name){const t=e();if(isPromise(t))throw Error(CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return _resolveLocale=t}throw Error(CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}throw Error(CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE)}function fallbackWithSimple(e,t,r){return[...new Set([r,...isArray(t)?t:isObject(t)?Object.keys(t):isString(t)?[t]:[r]])]}function fallbackWithLocaleChain(e,t,r){const n=isString(r)?r:DEFAULT_LOCALE,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let s=o.__localeChainCache.get(n);if(!s){s=[];let e=[r];for(;isArray(e);)e=appendBlockToChain(s,e,t);const a=isArray(t)||!isPlainObject(t)?t:t.default?t.default:null;e=isString(a)?[a]:a,isArray(e)&&appendBlockToChain(s,e,!1),o.__localeChainCache.set(n,s)}return s}function appendBlockToChain(e,t,r){let n=!0;for(let o=0;o<t.length&&isBoolean(n);o++){const s=t[o];isString(s)&&(n=appendLocaleToChain(e,t[o],r))}return n}function appendLocaleToChain(e,t,r){let n;const o=t.split("-");do{n=appendItemToChain(e,o.join("-"),r),o.splice(-1,1)}while(o.length&&!0===n);return n}function appendItemToChain(e,t,r){let n=!1;if(!e.includes(t)&&(n=!0,t)){n="!"!==t[t.length-1];const o=t.replace(/!/g,"");e.push(o),(isArray(r)||isPlainObject(r))&&r[o]&&(n=r[o])}return n}CoreErrorCodes.INVALID_ARGUMENT,CoreErrorCodes.INVALID_DATE_ARGUMENT,CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT,CoreErrorCodes.NOT_SUPPORT_NON_STRING_MESSAGE,CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE,CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION,CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE;const VERSION="9.14.4",NOT_REOSLVED=-1,DEFAULT_LOCALE="en-US",MISSING_RESOLVE_VALUE="",capitalize=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function getDefaultLinkedModifiers(){return{upper:(e,t)=>"text"===t&&isString(e)?e.toUpperCase():"vnode"===t&&isObject(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&isString(e)?e.toLowerCase():"vnode"===t&&isObject(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&isString(e)?capitalize(e):"vnode"===t&&isObject(e)&&"__v_isVNode"in e?capitalize(e.children):e}}let _compiler,_resolver,_fallbacker;function registerMessageCompiler(e){_compiler=e}function registerMessageResolver(e){_resolver=e}function registerLocaleFallbacker(e){_fallbacker=e}let _additionalMeta=null;const setAdditionalMeta=e=>{_additionalMeta=e},getAdditionalMeta=()=>_additionalMeta;let _fallbackContext=null;const setFallbackContext=e=>{_fallbackContext=e},getFallbackContext=()=>_fallbackContext;let _cid=0;function createCoreContext(e={}){const t=isFunction(e.onWarn)?e.onWarn:warn,r=isString(e.version)?e.version:VERSION,n=isString(e.locale)||isFunction(e.locale)?e.locale:DEFAULT_LOCALE,o=isFunction(n)?DEFAULT_LOCALE:n,s=isArray(e.fallbackLocale)||isPlainObject(e.fallbackLocale)||isString(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:o,a=isPlainObject(e.messages)?e.messages:createResources(o),i=isPlainObject(e.datetimeFormats)?e.datetimeFormats:createResources(o),c=isPlainObject(e.numberFormats)?e.numberFormats:createResources(o),l=assign(create(),e.modifiers,getDefaultLinkedModifiers()),u=e.pluralRules||create(),E=isFunction(e.missing)?e.missing:null,f=!isBoolean(e.missingWarn)&&!isRegExp(e.missingWarn)||e.missingWarn,_=!isBoolean(e.fallbackWarn)&&!isRegExp(e.fallbackWarn)||e.fallbackWarn,m=!!e.fallbackFormat,C=!!e.unresolving,d=isFunction(e.postTranslation)?e.postTranslation:null,p=isPlainObject(e.processor)?e.processor:null,T=!isBoolean(e.warnHtmlMessage)||e.warnHtmlMessage,N=!!e.escapeParameter,A=isFunction(e.messageCompiler)?e.messageCompiler:_compiler,O=isFunction(e.messageResolver)?e.messageResolver:_resolver||resolveWithKeyValue,g=isFunction(e.localeFallbacker)?e.localeFallbacker:_fallbacker||fallbackWithSimple,S=isObject(e.fallbackContext)?e.fallbackContext:void 0,L=e,P=isObject(L.__datetimeFormatters)?L.__datetimeFormatters:new Map,h=isObject(L.__numberFormatters)?L.__numberFormatters:new Map,b=isObject(L.__meta)?L.__meta:{};_cid++;const k={version:r,cid:_cid,locale:n,fallbackLocale:s,messages:a,modifiers:l,pluralRules:u,missing:E,missingWarn:f,fallbackWarn:_,fallbackFormat:m,unresolving:C,postTranslation:d,processor:p,warnHtmlMessage:T,escapeParameter:N,messageCompiler:A,messageResolver:O,localeFallbacker:g,fallbackContext:S,onWarn:t,__meta:b};return k.datetimeFormats=i,k.numberFormats=c,k.__datetimeFormatters=P,k.__numberFormatters=h,k}const createResources=e=>({[e]:create()});function isTranslateFallbackWarn(e,t){return e instanceof RegExp?e.test(t):e}function isTranslateMissingWarn(e,t){return e instanceof RegExp?e.test(t):e}function handleMissing(e,t,r,n,o){const{missing:s,onWarn:a}=e;if(null!==s){const n=s(e,r,t,o);return isString(n)?n:t}return t}function updateFallbackLocale(e,t,r){e.__localeChainCache=new Map,e.localeFallbacker(e,r,t)}function isAlmostSameLocale(e,t){return e!==t&&e.split("-")[0]===t.split("-")[0]}function isImplicitFallback(e,t){const r=t.indexOf(e);if(-1===r)return!1;for(let n=r+1;n<t.length;n++)if(isAlmostSameLocale(e,t[n]))return!0;return!1}function format(e){return t=>formatParts(t,e)}function formatParts(e,t){const r=resolveBody(t);if(null==r)throw createUnhandleNodeError(0);if(1===resolveType(r)){const t=resolveCases(r);return e.plural(t.reduce(((t,r)=>[...t,formatMessageParts(e,r)]),[]))}return formatMessageParts(e,r)}function formatMessageParts(e,t){const r=resolveStatic(t);if(null!=r)return"text"===e.type?r:e.normalize([r]);{const r=resolveItems(t).reduce(((t,r)=>[...t,formatMessagePart(e,r)]),[]);return e.normalize(r)}}function formatMessagePart(e,t){const r=resolveType(t);switch(r){case 3:case 9:case 7:case 8:return resolveValue$1(t,r);case 4:{const n=t;if(hasOwn(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(hasOwn(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw createUnhandleNodeError(r)}case 5:{const n=t;if(hasOwn(n,"i")&&isNumber(n.i))return e.interpolate(e.list(n.i));if(hasOwn(n,"index")&&isNumber(n.index))return e.interpolate(e.list(n.index));throw createUnhandleNodeError(r)}case 6:{const r=t,n=resolveLinkedModifier(r),o=resolveLinkedKey(r);return e.linked(formatMessagePart(e,o),n?formatMessagePart(e,n):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${r}`)}}const defaultOnCacheKey=e=>e;let compileCache=create();function clearCompileCache(){compileCache=create()}function baseCompile(e,t={}){let r=!1;const n=t.onError||defaultOnError;return t.onError=e=>{r=!0,n(e)},{...baseCompile$1(e,t),detectError:r}}const compileToFunction=(e,t)=>{if(!isString(e))throw Error(CoreErrorCodes.NOT_SUPPORT_NON_STRING_MESSAGE);{!isBoolean(t.warnHtmlMessage)||t.warnHtmlMessage;const r=(t.onCacheKey||defaultOnCacheKey)(e),n=compileCache[r];if(n)return n;const{code:o,detectError:s}=baseCompile(e,t),a=new Function(`return ${o}`)();return s?a:compileCache[r]=a}};function compile(e,t){if(isString(e)){!isBoolean(t.warnHtmlMessage)||t.warnHtmlMessage;const r=(t.onCacheKey||defaultOnCacheKey)(e),n=compileCache[r];if(n)return n;const{ast:o,detectError:s}=baseCompile(e,{...t,location:!1,jit:!0}),a=format(o);return s?a:compileCache[r]=a}{const t=e.cacheKey;if(t){const r=compileCache[t];return r||(compileCache[t]=format(e))}return format(e)}}const NOOP_MESSAGE_FUNCTION=()=>"",isMessageFunction=e=>isFunction(e);function translate(e,...t){const{fallbackFormat:r,postTranslation:n,unresolving:o,messageCompiler:s,fallbackLocale:a,messages:i}=e,[c,l]=parseTranslateArgs(...t),u=isBoolean(l.missingWarn)?l.missingWarn:e.missingWarn,E=isBoolean(l.fallbackWarn)?l.fallbackWarn:e.fallbackWarn,f=isBoolean(l.escapeParameter)?l.escapeParameter:e.escapeParameter,_=!!l.resolvedMessage,m=isString(l.default)||isBoolean(l.default)?isBoolean(l.default)?s?c:()=>c:l.default:r?s?c:()=>c:"",C=r||""!==m,d=getLocale(e,l);f&&escapeParams(l);let[p,T,N]=_?[c,d,i[d]||create()]:resolveMessageFormat(e,c,d,a,E,u),A=p,O=c;if(_||isString(A)||isMessageAST(A)||isMessageFunction(A)||C&&(A=m,O=A),!(_||(isString(A)||isMessageAST(A)||isMessageFunction(A))&&isString(T)))return o?-1:c;let g=!1;const S=isMessageFunction(A)?A:compileMessageFormat(e,c,T,A,O,(()=>{g=!0}));if(g)return A;const L=evaluateMessage(e,S,createMessageContext(getMessageContextOptions(e,T,N,l)));return n?n(L,c):L}function escapeParams(e){isArray(e.list)?e.list=e.list.map((e=>isString(e)?escapeHtml(e):e)):isObject(e.named)&&Object.keys(e.named).forEach((t=>{isString(e.named[t])&&(e.named[t]=escapeHtml(e.named[t]))}))}function resolveMessageFormat(e,t,r,n,o,s){const{messages:a,onWarn:i,messageResolver:c,localeFallbacker:l}=e,u=l(e,n,r);let E,f=create(),_=null;for(let m=0;m<u.length&&(E=u[m],f=a[E]||create(),null===(_=c(f,t))&&(_=f[t]),!(isString(_)||isMessageAST(_)||isMessageFunction(_)));m++)if(!isImplicitFallback(E,u)){const r=handleMissing(e,t,E,s,"translate");r!==t&&(_=r)}return[_,E,f]}function compileMessageFormat(e,t,r,n,o,s){const{messageCompiler:a,warnHtmlMessage:i}=e;if(isMessageFunction(n)){const e=n;return e.locale=e.locale||r,e.key=e.key||t,e}if(null==a){const e=()=>n;return e.locale=r,e.key=t,e}const c=a(n,getCompileContext(e,r,o,n,i,s));return c.locale=r,c.key=t,c.source=n,c}function evaluateMessage(e,t,r){return t(r)}function parseTranslateArgs(...e){const[t,r,n]=e,o=create();if(!(isString(t)||isNumber(t)||isMessageFunction(t)||isMessageAST(t)))throw Error(CoreErrorCodes.INVALID_ARGUMENT);const s=isNumber(t)?String(t):(isMessageFunction(t),t);return isNumber(r)?o.plural=r:isString(r)?o.default=r:isPlainObject(r)&&!isEmptyObject(r)?o.named=r:isArray(r)&&(o.list=r),isNumber(n)?o.plural=n:isString(n)?o.default=n:isPlainObject(n)&&assign(o,n),[s,o]}function getCompileContext(e,t,r,n,o,s){return{locale:t,key:r,warnHtmlMessage:o,onError:e=>{throw s&&s(e),e},onCacheKey:e=>generateFormatCacheKey(t,r,e)}}function getMessageContextOptions(e,t,r,n){const{modifiers:o,pluralRules:s,messageResolver:a,fallbackLocale:i,fallbackWarn:c,missingWarn:l,fallbackContext:u}=e,E={locale:t,modifiers:o,pluralRules:s,messages:n=>{let o=a(r,n);if(null==o&&u){const[,,e]=resolveMessageFormat(u,n,t,i,c,l);o=a(e,n)}if(isString(o)||isMessageAST(o)){let r=!1;const s=compileMessageFormat(e,n,t,o,n,(()=>{r=!0}));return r?NOOP_MESSAGE_FUNCTION:s}return isMessageFunction(o)?o:NOOP_MESSAGE_FUNCTION}};return e.processor&&(E.processor=e.processor),n.list&&(E.list=n.list),n.named&&(E.named=n.named),isNumber(n.plural)&&(E.pluralIndex=n.plural),E}function datetime(e,...t){const{datetimeFormats:r,unresolving:n,fallbackLocale:o,onWarn:s,localeFallbacker:a}=e,{__datetimeFormatters:i}=e,[c,l,u,E]=parseDateTimeArgs(...t),f=isBoolean(u.missingWarn)?u.missingWarn:e.missingWarn;isBoolean(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,m=getLocale(e,u),C=a(e,o,m);if(!isString(c)||""===c)return new Intl.DateTimeFormat(m,E).format(l);let d,p={},T=null;for(let O=0;O<C.length&&(d=C[O],p=r[d]||{},T=p[c],!isPlainObject(T));O++)handleMissing(e,c,d,f,"datetime format");if(!isPlainObject(T)||!isString(d))return n?-1:c;let N=`${d}__${c}`;isEmptyObject(E)||(N=`${N}__${JSON.stringify(E)}`);let A=i.get(N);return A||(A=new Intl.DateTimeFormat(d,assign({},T,E)),i.set(N,A)),_?A.formatToParts(l):A.format(l)}const DATETIME_FORMAT_OPTIONS_KEYS=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function parseDateTimeArgs(...e){const[t,r,n,o]=e,s=create();let a,i=create();if(isString(t)){const e=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!e)throw Error(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT);const r=e[3]?e[3].trim().startsWith("T")?`${e[1].trim()}${e[3].trim()}`:`${e[1].trim()}T${e[3].trim()}`:e[1].trim();a=new Date(r);try{a.toISOString()}catch(c){throw Error(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT)}}else if(isDate(t)){if(isNaN(t.getTime()))throw Error(CoreErrorCodes.INVALID_DATE_ARGUMENT);a=t}else{if(!isNumber(t))throw Error(CoreErrorCodes.INVALID_ARGUMENT);a=t}return isString(r)?s.key=r:isPlainObject(r)&&Object.keys(r).forEach((e=>{DATETIME_FORMAT_OPTIONS_KEYS.includes(e)?i[e]=r[e]:s[e]=r[e]})),isString(n)?s.locale=n:isPlainObject(n)&&(i=n),isPlainObject(o)&&(i=o),[s.key||"",a,s,i]}function clearDateTimeFormat(e,t,r){const n=e;for(const o in r){const e=`${t}__${o}`;n.__datetimeFormatters.has(e)&&n.__datetimeFormatters.delete(e)}}function number(e,...t){const{numberFormats:r,unresolving:n,fallbackLocale:o,onWarn:s,localeFallbacker:a}=e,{__numberFormatters:i}=e,[c,l,u,E]=parseNumberArgs(...t),f=isBoolean(u.missingWarn)?u.missingWarn:e.missingWarn;isBoolean(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,m=getLocale(e,u),C=a(e,o,m);if(!isString(c)||""===c)return new Intl.NumberFormat(m,E).format(l);let d,p={},T=null;for(let O=0;O<C.length&&(d=C[O],p=r[d]||{},T=p[c],!isPlainObject(T));O++)handleMissing(e,c,d,f,"number format");if(!isPlainObject(T)||!isString(d))return n?-1:c;let N=`${d}__${c}`;isEmptyObject(E)||(N=`${N}__${JSON.stringify(E)}`);let A=i.get(N);return A||(A=new Intl.NumberFormat(d,assign({},T,E)),i.set(N,A)),_?A.formatToParts(l):A.format(l)}const NUMBER_FORMAT_OPTIONS_KEYS=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function parseNumberArgs(...e){const[t,r,n,o]=e,s=create();let a=create();if(!isNumber(t))throw Error(CoreErrorCodes.INVALID_ARGUMENT);const i=t;return isString(r)?s.key=r:isPlainObject(r)&&Object.keys(r).forEach((e=>{NUMBER_FORMAT_OPTIONS_KEYS.includes(e)?a[e]=r[e]:s[e]=r[e]})),isString(n)?s.locale=n:isPlainObject(n)&&(a=n),isPlainObject(o)&&(a=o),[s.key||"",i,s,a]}function clearNumberFormat(e,t,r){const n=e;for(const o in r){const e=`${t}__${o}`;n.__numberFormatters.has(e)&&n.__numberFormatters.delete(e)}}export{AST_NODE_PROPS_KEYS,CompileErrorCodes,CoreErrorCodes,CoreWarnCodes,DATETIME_FORMAT_OPTIONS_KEYS,DEFAULT_LOCALE,DEFAULT_MESSAGE_DATA_TYPE,MISSING_RESOLVE_VALUE,NOT_REOSLVED,NUMBER_FORMAT_OPTIONS_KEYS,VERSION,clearCompileCache,clearDateTimeFormat,clearNumberFormat,compile,compileToFunction,createCompileError,createCoreContext,createCoreError,createMessageContext,datetime,fallbackWithLocaleChain,fallbackWithSimple,getAdditionalMeta,getDevToolsHook,getFallbackContext,getLocale,getWarnMessage,handleMissing,initI18nDevTools,isAlmostSameLocale,isImplicitFallback,isMessageAST,isMessageFunction,isTranslateFallbackWarn,isTranslateMissingWarn,number,parse,parseDateTimeArgs,parseNumberArgs,parseTranslateArgs,registerLocaleFallbacker,registerMessageCompiler,registerMessageResolver,resolveLocale,resolveValue,resolveWithKeyValue,setAdditionalMeta,setDevToolsHook,setFallbackContext,translate,translateDevTools,updateFallbackLocale};
|
|
6
|
+
function warn(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const RE_ARGS=/\{([0-9a-zA-Z]+)\}/g;function format$1(e,...t){return 1===t.length&&isObject(t[0])&&(t=t[0]),t&&t.hasOwnProperty||(t={}),e.replace(RE_ARGS,((e,r)=>t.hasOwnProperty(r)?t[r]:""))}const generateFormatCacheKey=(e,t,r)=>friendlyJSONstringify({l:e,k:t,s:r}),friendlyJSONstringify=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),isNumber=e=>"number"==typeof e&&isFinite(e),isDate=e=>"[object Date]"===toTypeString(e),isRegExp=e=>"[object RegExp]"===toTypeString(e),isEmptyObject=e=>isPlainObject(e)&&0===Object.keys(e).length,assign=Object.assign,_create=Object.create,create=(e=null)=>_create(e);function escapeHtml(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function escapeAttributeValue(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}function sanitizeTranslatedHtml(e){e=(e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,((e,t,r)=>`${t}="${escapeAttributeValue(r)}"`))).replace(/(\w+)\s*=\s*'([^']*)'/g,((e,t,r)=>`${t}='${escapeAttributeValue(r)}'`));/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3"));return[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach((t=>{e=e.replace(t,"$1javascript:")})),e}const hasOwnProperty=Object.prototype.hasOwnProperty;function hasOwn(e,t){return hasOwnProperty.call(e,t)}const isArray=Array.isArray,isFunction=e=>"function"==typeof e,isString=e=>"string"==typeof e,isBoolean=e=>"boolean"==typeof e,isObject=e=>null!==e&&"object"==typeof e,isPromise=e=>isObject(e)&&isFunction(e.then)&&isFunction(e.catch),objectToString=Object.prototype.toString,toTypeString=e=>objectToString.call(e),isPlainObject=e=>{if(!isObject(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t.constructor===Object},toDisplayString=e=>null==e?"":isArray(e)||isPlainObject(e)&&e.toString===objectToString?JSON.stringify(e,null,2):String(e);function join(e,t=""){return e.reduce(((e,r,n)=>0===n?e+r:e+t+r),"")}function incrementer(e){let t=e;return()=>++t}function createPosition(e,t,r){return{line:e,column:t,offset:r}}function createLocation(e,t,r){const n={start:e,end:t};return null!=r&&(n.source=r),n}const CompileWarnCodes={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2};function createCompileWarn(e,t,...r){const n={message:String(e),code:e};return t&&(n.location=t),n}const CompileErrorCodes={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17};function createCompileError(e,t,r={}){const{domain:n,messages:o,args:s}=r,a=new SyntaxError(String(e));return a.code=e,t&&(a.location=t),a.domain=n,a}function defaultOnError(e){throw e}CompileErrorCodes.EXPECTED_TOKEN,CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER,CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE,CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE,CompileErrorCodes.UNBALANCED_CLOSING_BRACE,CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,CompileErrorCodes.EMPTY_PLACEHOLDER,CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER,CompileErrorCodes.INVALID_LINKED_FORMAT,CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL,CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER,CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY,CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,CompileErrorCodes.UNHANDLED_CODEGEN_NODE_TYPE,CompileErrorCodes.UNHANDLED_MINIFIER_NODE_TYPE;const CHAR_SP=" ",CHAR_CR="\r",CHAR_LF="\n",CHAR_LS=String.fromCharCode(8232),CHAR_PS=String.fromCharCode(8233);function createScanner(e){const t=e;let r=0,n=1,o=1,s=0;const a=e=>t[e]===CHAR_CR&&t[e+1]===CHAR_LF,i=e=>t[e]===CHAR_PS,c=e=>t[e]===CHAR_LS,l=e=>a(e)||(e=>t[e]===CHAR_LF)(e)||i(e)||c(e),u=e=>a(e)||i(e)||c(e)?CHAR_LF:t[e];function E(){return s=0,l(r)&&(n++,o=0),a(r)&&r++,r++,o++,t[r]}return{index:()=>r,line:()=>n,column:()=>o,peekOffset:()=>s,charAt:u,currentChar:()=>u(r),currentPeek:()=>u(r+s),next:E,peek:function(){return a(r+s)&&s++,s++,t[r+s]},reset:function(){r=0,n=1,o=1,s=0},resetPeek:function(e=0){s=e},skipToPeek:function(){const e=r+s;for(;e!==r;)E();s=0}}}const EOF=void 0,DOT=".",LITERAL_DELIMITER="'",ERROR_DOMAIN$1="tokenizer";function createTokenizer(e,t={}){const r=!1!==t.location,n=createScanner(e),o=()=>n.index(),s=()=>createPosition(n.line(),n.column(),n.index()),a=s(),i=o(),c={currentType:14,offset:i,startLoc:a,endLoc:a,lastType:14,lastOffset:i,lastStartLoc:a,lastEndLoc:a,braceNest:0,inLinked:!1,text:""},l=()=>c,{onError:u}=t;function E(e,t,n){e.endLoc=s(),e.currentType=t;const o={type:t};return r&&(o.loc=createLocation(e.startLoc,e.endLoc)),null!=n&&(o.value=n),o}const f=e=>E(e,14);function _(e,t){return e.currentChar()===t?(e.next(),t):(CompileErrorCodes.EXPECTED_TOKEN,s(),"")}function m(e){let t="";for(;e.currentPeek()===CHAR_SP||e.currentPeek()===CHAR_LF;)t+=e.currentPeek(),e.peek();return t}function p(e){const t=m(e);return e.skipToPeek(),t}function C(e){if(e===EOF)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function d(e,t){const{currentType:r}=t;if(2!==r)return!1;m(e);const n=function(e){if(e===EOF)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),n}function T(e){m(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function g(e,t=!0){const r=(t=!1,n="",o=!1)=>{const s=e.currentPeek();return"{"===s?"%"!==n&&t:"@"!==s&&s?"%"===s?(e.peek(),r(t,"%",!0)):"|"===s?!("%"!==n&&!o)||!(n===CHAR_SP||n===CHAR_LF):s===CHAR_SP?(e.peek(),r(!0,CHAR_SP,o)):s!==CHAR_LF||(e.peek(),r(!0,CHAR_LF,o)):"%"===n||t},n=r();return t&&e.resetPeek(),n}function N(e,t){const r=e.currentChar();return r===EOF?EOF:t(r)?(e.next(),r):null}function A(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function O(e){return N(e,A)}function S(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function L(e){return N(e,S)}function P(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function h(e){return N(e,P)}function b(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function k(e){return N(e,b)}function I(e){let t="",r="";for(;t=h(e);)r+=t;return r}function R(e){let t="";for(;;){const r=e.currentChar();if("{"===r||"}"===r||"@"===r||"|"===r||!r)break;if("%"===r){if(!g(e))break;t+=r,e.next()}else if(r===CHAR_SP||r===CHAR_LF)if(g(e))t+=r,e.next();else{if(T(e))break;t+=r,e.next()}else t+=r,e.next()}return t}function M(e){return e!==LITERAL_DELIMITER&&e!==CHAR_LF}function y(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return D(e,t,4);case"U":return D(e,t,6);default:return CompileErrorCodes.UNKNOWN_ESCAPE_SEQUENCE,s(),""}}function D(e,t,r){_(e,t);let n="";for(let o=0;o<r;o++){const t=k(e);if(!t){CompileErrorCodes.INVALID_UNICODE_ESCAPE_SEQUENCE,s(),e.currentChar();break}n+=t}return`\\${t}${n}`}function F(e){return"{"!==e&&"}"!==e&&e!==CHAR_SP&&e!==CHAR_LF}function v(e){p(e);const t=_(e,"|");return p(e),t}function U(e,t){let r=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&(CompileErrorCodes.NOT_ALLOW_NEST_PLACEHOLDER,s()),e.next(),r=E(t,2,"{"),p(e),t.braceNest++,r;case"}":return t.braceNest>0&&2===t.currentType&&(CompileErrorCodes.EMPTY_PLACEHOLDER,s()),e.next(),r=E(t,3,"}"),t.braceNest--,t.braceNest>0&&p(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),r;case"@":return t.braceNest>0&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),r=x(e,t)||f(t),t.braceNest=0,r;default:{let n=!0,o=!0,a=!0;if(T(e))return t.braceNest>0&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),r=E(t,1,v(e)),t.braceNest=0,t.inLinked=!1,r;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s(),t.braceNest=0,w(e,t);if(n=function(e,t){const{currentType:r}=t;if(2!==r)return!1;m(e);const n=C(e.currentPeek());return e.resetPeek(),n}(e,t))return r=E(t,5,function(e){p(e);let t="",r="";for(;t=L(e);)r+=t;return e.currentChar()===EOF&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),r}(e)),p(e),r;if(o=d(e,t))return r=E(t,6,function(e){p(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${I(e)}`):t+=I(e),e.currentChar()===EOF&&(CompileErrorCodes.UNTERMINATED_CLOSING_BRACE,s()),t}(e)),p(e),r;if(a=function(e,t){const{currentType:r}=t;if(2!==r)return!1;m(e);const n=e.currentPeek()===LITERAL_DELIMITER;return e.resetPeek(),n}(e,t))return r=E(t,7,function(e){p(e),_(e,"'");let t="",r="";for(;t=N(e,M);)r+="\\"===t?y(e):t;const n=e.currentChar();return n===CHAR_LF||n===EOF?(CompileErrorCodes.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),n===CHAR_LF&&(e.next(),_(e,"'")),r):(_(e,"'"),r)}(e)),p(e),r;if(!n&&!o&&!a)return r=E(t,13,function(e){p(e);let t="",r="";for(;t=N(e,F);)r+=t;return r}(e)),CompileErrorCodes.INVALID_TOKEN_IN_PLACEHOLDER,s(),r.value,p(e),r;break}}return r}function x(e,t){const{currentType:r}=t;let n=null;const o=e.currentChar();switch(8!==r&&9!==r&&12!==r&&10!==r||o!==CHAR_LF&&o!==CHAR_SP||(CompileErrorCodes.INVALID_LINKED_FORMAT,s()),o){case"@":return e.next(),n=E(t,8,"@"),t.inLinked=!0,n;case".":return p(e),e.next(),E(t,9,".");case":":return p(e),e.next(),E(t,10,":");default:return T(e)?(n=E(t,1,v(e)),t.braceNest=0,t.inLinked=!1,n):function(e,t){const{currentType:r}=t;if(8!==r)return!1;m(e);const n="."===e.currentPeek();return e.resetPeek(),n}(e,t)||function(e,t){const{currentType:r}=t;if(8!==r&&12!==r)return!1;m(e);const n=":"===e.currentPeek();return e.resetPeek(),n}(e,t)?(p(e),x(e,t)):function(e,t){const{currentType:r}=t;if(9!==r)return!1;m(e);const n=C(e.currentPeek());return e.resetPeek(),n}(e,t)?(p(e),E(t,12,function(e){let t="",r="";for(;t=O(e);)r+=t;return r}(e))):function(e,t){const{currentType:r}=t;if(10!==r)return!1;const n=()=>{const t=e.currentPeek();return"{"===t?C(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||t===CHAR_SP||!t)&&(t===CHAR_LF?(e.peek(),n()):g(e,!1))},o=n();return e.resetPeek(),o}(e,t)?(p(e),"{"===o?U(e,t)||n:E(t,11,function(e){const t=r=>{const n=e.currentChar();return"{"!==n&&"%"!==n&&"@"!==n&&"|"!==n&&"("!==n&&")"!==n&&n?n===CHAR_SP?r:(r+=n,e.next(),t(r)):r};return t("")}(e))):(8===r&&(CompileErrorCodes.INVALID_LINKED_FORMAT,s()),t.braceNest=0,t.inLinked=!1,w(e,t))}}function w(e,t){let r={type:14};if(t.braceNest>0)return U(e,t)||f(t);if(t.inLinked)return x(e,t)||f(t);switch(e.currentChar()){case"{":return U(e,t)||f(t);case"}":return CompileErrorCodes.UNBALANCED_CLOSING_BRACE,s(),e.next(),E(t,3,"}");case"@":return x(e,t)||f(t);default:{if(T(e))return r=E(t,1,v(e)),t.braceNest=0,t.inLinked=!1,r;const{isModulo:n,hasSpace:o}=function(e){const t=m(e),r="%"===e.currentPeek()&&"{"===e.peek();return e.resetPeek(),{isModulo:r,hasSpace:t.length>0}}(e);if(n)return o?E(t,0,R(e)):E(t,4,function(e){p(e);const t=e.currentChar();return"%"!==t&&(CompileErrorCodes.EXPECTED_TOKEN,s()),e.next(),"%"}(e));if(g(e))return E(t,0,R(e));break}}return r}return{nextToken:function(){const{currentType:e,offset:t,startLoc:r,endLoc:a}=c;return c.lastType=e,c.lastOffset=t,c.lastStartLoc=r,c.lastEndLoc=a,c.offset=o(),c.startLoc=s(),n.currentChar()===EOF?E(c,14):w(n,c)},currentOffset:o,currentPosition:s,context:l}}const ERROR_DOMAIN="parser",KNOWN_ESCAPES=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function fromEscapeSequence(e,t,r){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||r,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function createParser(e={}){const t=!1!==e.location,{onError:r,onWarn:n}=e;function o(e,r,n){const o={type:e};return t&&(o.start=r,o.end=r,o.loc={start:n,end:n}),o}function s(e,r,n,o){o&&(e.type=o),t&&(e.end=r,e.loc&&(e.loc.end=n))}function a(e,t){const r=e.context(),n=o(3,r.offset,r.startLoc);return n.value=t,s(n,e.currentOffset(),e.currentPosition()),n}function i(e,t){const r=e.context(),{lastOffset:n,lastStartLoc:a}=r,i=o(5,n,a);return i.index=parseInt(t,10),e.nextToken(),s(i,e.currentOffset(),e.currentPosition()),i}function c(e,t,r){const n=e.context(),{lastOffset:a,lastStartLoc:i}=n,c=o(4,a,i);return c.key=t,!0===r&&(c.modulo=!0),e.nextToken(),s(c,e.currentOffset(),e.currentPosition()),c}function l(e,t){const r=e.context(),{lastOffset:n,lastStartLoc:a}=r,i=o(9,n,a);return i.value=t.replace(KNOWN_ESCAPES,fromEscapeSequence),e.nextToken(),s(i,e.currentOffset(),e.currentPosition()),i}function u(e){const t=e.context(),r=o(6,t.offset,t.startLoc);let n=e.nextToken();if(9===n.type){const t=function(e){const t=e.nextToken(),r=e.context(),{lastOffset:n,lastStartLoc:a}=r,i=o(8,n,a);return 12!==t.type?(CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_MODIFIER,r.lastStartLoc,i.value="",s(i,n,a),{nextConsumeToken:t,node:i}):(null==t.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,r.lastStartLoc,getTokenCaption(t)),i.value=t.value||"",s(i,e.currentOffset(),e.currentPosition()),{node:i})}(e);r.modifier=t.node,n=t.nextConsumeToken||e.nextToken()}switch(10!==n.type&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),n=e.nextToken(),2===n.type&&(n=e.nextToken()),n.type){case 11:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=function(e,t){const r=e.context(),n=o(7,r.offset,r.startLoc);return n.value=t,s(n,e.currentOffset(),e.currentPosition()),n}(e,n.value||"");break;case 5:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=c(e,n.value||"");break;case 6:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=i(e,n.value||"");break;case 7:null==n.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(n)),r.key=l(e,n.value||"");break;default:{CompileErrorCodes.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc;const a=e.context(),i=o(7,a.offset,a.startLoc);return i.value="",s(i,a.offset,a.startLoc),r.key=i,s(r,a.offset,a.startLoc),{nextConsumeToken:n,node:r}}}return s(r,e.currentOffset(),e.currentPosition()),{node:r}}function E(e){const t=e.context(),r=o(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);r.items=[];let n=null,E=null;do{const o=n||e.nextToken();switch(n=null,o.type){case 0:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(a(e,o.value||""));break;case 6:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(i(e,o.value||""));break;case 4:E=!0;break;case 5:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(c(e,o.value||"",!!E)),E&&(CompileWarnCodes.USE_MODULO_SYNTAX,t.lastStartLoc,getTokenCaption(o),E=null);break;case 7:null==o.value&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,getTokenCaption(o)),r.items.push(l(e,o.value||""));break;case 8:{const t=u(e);r.items.push(t.node),n=t.nextConsumeToken||null;break}}}while(14!==t.currentType&&1!==t.currentType);return s(r,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),r}function f(e){const t=e.context(),{offset:r,startLoc:n}=t,a=E(e);return 14===t.currentType?a:function(e,t,r,n){const a=e.context();let i=0===n.items.length;const c=o(1,t,r);c.cases=[],c.cases.push(n);do{const t=E(e);i||(i=0===t.items.length),c.cases.push(t)}while(14!==a.currentType);return i&&CompileErrorCodes.MUST_HAVE_MESSAGES_IN_PLURAL,s(c,e.currentOffset(),e.currentPosition()),c}(e,r,n,a)}return{parse:function(r){const n=createTokenizer(r,assign({},e)),a=n.context(),i=o(0,a.offset,a.startLoc);return t&&i.loc&&(i.loc.source=r),i.body=f(n),e.onCacheKey&&(i.cacheKey=e.onCacheKey(r)),14!==a.currentType&&(CompileErrorCodes.UNEXPECTED_LEXICAL_ANALYSIS,a.lastStartLoc,r[a.offset]),s(i,n.currentOffset(),n.currentPosition()),i}}}function getTokenCaption(e){if(14===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function createTransformer(e,t={}){const r={ast:e,helpers:new Set};return{context:()=>r,helper:e=>(r.helpers.add(e),e)}}function traverseNodes(e,t){for(let r=0;r<e.length;r++)traverseNode(e[r],t)}function traverseNode(e,t){switch(e.type){case 1:traverseNodes(e.cases,t),t.helper("plural");break;case 2:traverseNodes(e.items,t);break;case 6:traverseNode(e.key,t),t.helper("linked"),t.helper("type");break;case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named")}}function transform(e,t={}){const r=createTransformer(e);r.helper("normalize"),e.body&&traverseNode(e.body,r);const n=r.context();e.helpers=Array.from(n.helpers)}function optimize(e){const t=e.body;return 2===t.type?optimizeMessageNode(t):t.cases.forEach((e=>optimizeMessageNode(e))),e}function optimizeMessageNode(e){if(1===e.items.length){const t=e.items[0];3!==t.type&&9!==t.type||(e.static=t.value,delete t.value)}else{const t=[];for(let r=0;r<e.items.length;r++){const n=e.items[r];if(3!==n.type&&9!==n.type)break;if(null==n.value)break;t.push(n.value)}if(t.length===e.items.length){e.static=join(t);for(let t=0;t<e.items.length;t++){const r=e.items[t];3!==r.type&&9!==r.type||delete r.value}}}}function minify(e){switch(e.t=e.type,e.type){case 0:{const t=e;minify(t.body),t.b=t.body,delete t.body;break}case 1:{const t=e,r=t.cases;for(let e=0;e<r.length;e++)minify(r[e]);t.c=r,delete t.cases;break}case 2:{const t=e,r=t.items;for(let e=0;e<r.length;e++)minify(r[e]);t.i=r,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{const t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{const t=e;minify(t.key),t.k=t.key,delete t.key,t.modifier&&(minify(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{const t=e;t.i=t.index,delete t.index;break}case 4:{const t=e;t.k=t.key,delete t.key;break}}delete e.type}function createCodeGenerator(e,t){const{sourceMap:r,filename:n,breakLineCode:o,needIndent:s}=t,a=!1!==t.location,i={filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:o,needIndent:s,indentLevel:0};a&&e.loc&&(i.source=e.loc.source);function c(e,t){i.code+=e}function l(e,t=!0){const r=t?o:"";c(s?r+" ".repeat(e):r)}return{context:()=>i,push:c,indent:function(e=!0){const t=++i.indentLevel;e&&l(t)},deindent:function(e=!0){const t=--i.indentLevel;e&&l(t)},newline:function(){l(i.indentLevel)},helper:e=>`_${e}`,needIndent:()=>i.needIndent}}function generateLinkedNode(e,t){const{helper:r}=e;e.push(`${r("linked")}(`),generateNode(e,t.key),t.modifier?(e.push(", "),generateNode(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function generateMessageNode(e,t){const{helper:r,needIndent:n}=e;e.push(`${r("normalize")}([`),e.indent(n());const o=t.items.length;for(let s=0;s<o&&(generateNode(e,t.items[s]),s!==o-1);s++)e.push(", ");e.deindent(n()),e.push("])")}function generatePluralNode(e,t){const{helper:r,needIndent:n}=e;if(t.cases.length>1){e.push(`${r("plural")}([`),e.indent(n());const o=t.cases.length;for(let r=0;r<o&&(generateNode(e,t.cases[r]),r!==o-1);r++)e.push(", ");e.deindent(n()),e.push("])")}}function generateResource(e,t){t.body?generateNode(e,t.body):e.push("null")}function generateNode(e,t){const{helper:r}=e;switch(t.type){case 0:generateResource(e,t);break;case 1:generatePluralNode(e,t);break;case 2:generateMessageNode(e,t);break;case 6:generateLinkedNode(e,t);break;case 8:case 7:case 9:case 3:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${r("interpolate")}(${r("list")}(${t.index}))`,t);break;case 4:e.push(`${r("interpolate")}(${r("named")}(${JSON.stringify(t.key)}))`,t)}}const generate=(e,t={})=>{const r=isString(t.mode)?t.mode:"normal",n=isString(t.filename)?t.filename:"message.intl",o=!!t.sourceMap,s=null!=t.breakLineCode?t.breakLineCode:"arrow"===r?";":"\n",a=t.needIndent?t.needIndent:"arrow"!==r,i=e.helpers||[],c=createCodeGenerator(e,{mode:r,filename:n,sourceMap:o,breakLineCode:s,needIndent:a});c.push("normal"===r?"function __msg__ (ctx) {":"(ctx) => {"),c.indent(a),i.length>0&&(c.push(`const { ${join(i.map((e=>`${e}: _${e}`)),", ")} } = ctx`),c.newline()),c.push("return "),generateNode(c,e),c.deindent(a),c.push("}"),delete e.helpers;const{code:l,map:u}=c.context();return{ast:e,code:l,map:u?u.toJSON():void 0}};function baseCompile$1(e,t={}){const r=assign({},t),n=!!r.jit,o=!!r.minify,s=null==r.optimize||r.optimize,a=createParser(r).parse(e);return n?(s&&optimize(a),o&&minify(a),{ast:a,code:""}):(transform(a,r),generate(a,r))}function isMessageAST(e){return isObject(e)&&0===resolveType(e)&&(hasOwn(e,"b")||hasOwn(e,"body"))}const PROPS_BODY=["b","body"];function resolveBody(e){return resolveProps(e,PROPS_BODY)}const PROPS_CASES=["c","cases"];function resolveCases(e){return resolveProps(e,PROPS_CASES,[])}const PROPS_STATIC=["s","static"];function resolveStatic(e){return resolveProps(e,PROPS_STATIC)}const PROPS_ITEMS=["i","items"];function resolveItems(e){return resolveProps(e,PROPS_ITEMS,[])}const PROPS_TYPE=["t","type"];function resolveType(e){return resolveProps(e,PROPS_TYPE)}const PROPS_VALUE=["v","value"];function resolveValue$1(e,t){const r=resolveProps(e,PROPS_VALUE);if(null!=r)return r;throw createUnhandleNodeError(t)}const PROPS_MODIFIER=["m","modifier"];function resolveLinkedModifier(e){return resolveProps(e,PROPS_MODIFIER)}const PROPS_KEY=["k","key"];function resolveLinkedKey(e){const t=resolveProps(e,PROPS_KEY);if(t)return t;throw createUnhandleNodeError(6)}function resolveProps(e,t,r){for(let n=0;n<t.length;n++){const r=t[n];if(hasOwn(e,r)&&null!=e[r])return e[r]}return r}const AST_NODE_PROPS_KEYS=[...PROPS_BODY,...PROPS_CASES,...PROPS_STATIC,...PROPS_ITEMS,...PROPS_KEY,...PROPS_MODIFIER,...PROPS_VALUE,...PROPS_TYPE];function createUnhandleNodeError(e){return new Error(`unhandled node type: ${e}`)}const pathStateMachine=[];pathStateMachine[0]={w:[0],i:[3,0],"[":[4],o:[7]},pathStateMachine[1]={w:[1],".":[2],"[":[4],o:[7]},pathStateMachine[2]={w:[2],i:[3,0],0:[3,0]},pathStateMachine[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},pathStateMachine[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},pathStateMachine[5]={"'":[4,0],o:8,l:[5,0]},pathStateMachine[6]={'"':[4,0],o:8,l:[6,0]};const literalValueRE=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function isLiteral(e){return literalValueRE.test(e)}function stripQuotes(e){const t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}function getPathCharType(e){if(null==e)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function formatSubPath(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(isLiteral(t)?stripQuotes(t):"*"+t)}function parse(e){const t=[];let r,n,o,s,a,i,c,l=-1,u=0,E=0;const f=[];function _(){const t=e[l+1];if(5===u&&"'"===t||6===u&&'"'===t)return l++,o="\\"+t,f[0](),!0}for(f[0]=()=>{void 0===n?n=o:n+=o},f[1]=()=>{void 0!==n&&(t.push(n),n=void 0)},f[2]=()=>{f[0](),E++},f[3]=()=>{if(E>0)E--,u=4,f[0]();else{if(E=0,void 0===n)return!1;if(n=formatSubPath(n),!1===n)return!1;f[1]()}};null!==u;)if(l++,r=e[l],"\\"!==r||!_()){if(s=getPathCharType(r),c=pathStateMachine[u],a=c[s]||c.l||8,8===a)return;if(u=a[0],void 0!==a[1]&&(i=f[a[1]],i&&(o=r,!1===i())))return;if(7===u)return t}}const cache=new Map;function resolveWithKeyValue(e,t){return isObject(e)?e[t]:null}function resolveValue(e,t){if(!isObject(e))return null;let r=cache.get(t);if(r||(r=parse(t),r&&cache.set(t,r)),!r)return null;const n=r.length;let o=e,s=0;for(;s<n;){const e=r[s];if(AST_NODE_PROPS_KEYS.includes(e)&&isMessageAST(o))return null;const t=o[e];if(void 0===t)return null;if(isFunction(o))return null;o=t,s++}return o}const DEFAULT_MODIFIER=e=>e,DEFAULT_MESSAGE=e=>"",DEFAULT_MESSAGE_DATA_TYPE="text",DEFAULT_NORMALIZE=e=>0===e.length?"":join(e),DEFAULT_INTERPOLATE=toDisplayString;function pluralDefault(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function getPluralIndex(e){const t=isNumber(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(isNumber(e.named.count)||isNumber(e.named.n))?isNumber(e.named.count)?e.named.count:isNumber(e.named.n)?e.named.n:t:t}function normalizeNamed(e,t){t.count||(t.count=e),t.n||(t.n=e)}function createMessageContext(e={}){const t=e.locale,r=getPluralIndex(e),n=isObject(e.pluralRules)&&isString(t)&&isFunction(e.pluralRules[t])?e.pluralRules[t]:pluralDefault,o=isObject(e.pluralRules)&&isString(t)&&isFunction(e.pluralRules[t])?pluralDefault:void 0,s=e.list||[],a=e.named||create();isNumber(e.pluralIndex)&&normalizeNamed(r,a);function i(t){const r=isFunction(e.messages)?e.messages(t):!!isObject(e.messages)&&e.messages[t];return r||(e.parent?e.parent.message(t):DEFAULT_MESSAGE)}const c=isPlainObject(e.processor)&&isFunction(e.processor.normalize)?e.processor.normalize:DEFAULT_NORMALIZE,l=isPlainObject(e.processor)&&isFunction(e.processor.interpolate)?e.processor.interpolate:DEFAULT_INTERPOLATE,u={list:e=>s[e],named:e=>a[e],plural:e=>e[n(r,e.length,o)],linked:(t,...r)=>{const[n,o]=r;let s="text",a="";1===r.length?isObject(n)?(a=n.modifier||a,s=n.type||s):isString(n)&&(a=n||a):2===r.length&&(isString(n)&&(a=n||a),isString(o)&&(s=o||s));const c=i(t)(u),l="vnode"===s&&isArray(c)&&a?c[0]:c;return a?(E=a,e.modifiers?e.modifiers[E]:DEFAULT_MODIFIER)(l,s):l;var E},message:i,type:isPlainObject(e.processor)&&isString(e.processor.type)?e.processor.type:DEFAULT_MESSAGE_DATA_TYPE,interpolate:l,normalize:c,values:assign(create(),s,a)};return u}let devtools=null;function setDevToolsHook(e){devtools=e}function getDevToolsHook(){return devtools}function initI18nDevTools(e,t,r){devtools&&devtools.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:r})}const translateDevTools=createDevToolsHook("function:translate");function createDevToolsHook(e){return t=>devtools&&devtools.emit(e,t)}const code$1=CompileWarnCodes.__EXTEND_POINT__,inc$1=incrementer(code$1),CoreWarnCodes={NOT_FOUND_KEY:code$1,FALLBACK_TO_TRANSLATE:inc$1(),CANNOT_FORMAT_NUMBER:inc$1(),FALLBACK_TO_NUMBER_FORMAT:inc$1(),CANNOT_FORMAT_DATE:inc$1(),FALLBACK_TO_DATE_FORMAT:inc$1(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:inc$1(),__EXTEND_POINT__:inc$1()},warnMessages={[CoreWarnCodes.NOT_FOUND_KEY]:"Not found '{key}' key in '{locale}' locale messages.",[CoreWarnCodes.FALLBACK_TO_TRANSLATE]:"Fall back to translate '{key}' key with '{target}' locale.",[CoreWarnCodes.CANNOT_FORMAT_NUMBER]:"Cannot format a number value due to not supported Intl.NumberFormat.",[CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT]:"Fall back to number format '{key}' key with '{target}' locale.",[CoreWarnCodes.CANNOT_FORMAT_DATE]:"Cannot format a date value due to not supported Intl.DateTimeFormat.",[CoreWarnCodes.FALLBACK_TO_DATE_FORMAT]:"Fall back to datetime format '{key}' key with '{target}' locale.",[CoreWarnCodes.EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER]:"This project is using Custom Message Compiler, which is an experimental feature. It may receive breaking changes or be removed in the future."};function getWarnMessage(e,...t){return format$1(warnMessages[e],...t)}const code=CompileErrorCodes.__EXTEND_POINT__,inc=incrementer(code),CoreErrorCodes={INVALID_ARGUMENT:code,INVALID_DATE_ARGUMENT:inc(),INVALID_ISO_DATE_ARGUMENT:inc(),NOT_SUPPORT_NON_STRING_MESSAGE:inc(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:inc(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:inc(),NOT_SUPPORT_LOCALE_TYPE:inc(),__EXTEND_POINT__:inc()};function createCoreError(e){return createCompileError(e,null,void 0)}function getLocale(e,t){return null!=t.locale?resolveLocale(t.locale):resolveLocale(e.locale)}let _resolveLocale;function resolveLocale(e){if(isString(e))return e;if(isFunction(e)){if(e.resolvedOnce&&null!=_resolveLocale)return _resolveLocale;if("Function"===e.constructor.name){const t=e();if(isPromise(t))throw Error(CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return _resolveLocale=t}throw Error(CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}throw Error(CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE)}function fallbackWithSimple(e,t,r){return[...new Set([r,...isArray(t)?t:isObject(t)?Object.keys(t):isString(t)?[t]:[r]])]}function fallbackWithLocaleChain(e,t,r){const n=isString(r)?r:DEFAULT_LOCALE,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let s=o.__localeChainCache.get(n);if(!s){s=[];let e=[r];for(;isArray(e);)e=appendBlockToChain(s,e,t);const a=isArray(t)||!isPlainObject(t)?t:t.default?t.default:null;e=isString(a)?[a]:a,isArray(e)&&appendBlockToChain(s,e,!1),o.__localeChainCache.set(n,s)}return s}function appendBlockToChain(e,t,r){let n=!0;for(let o=0;o<t.length&&isBoolean(n);o++){const s=t[o];isString(s)&&(n=appendLocaleToChain(e,t[o],r))}return n}function appendLocaleToChain(e,t,r){let n;const o=t.split("-");do{n=appendItemToChain(e,o.join("-"),r),o.splice(-1,1)}while(o.length&&!0===n);return n}function appendItemToChain(e,t,r){let n=!1;if(!e.includes(t)&&(n=!0,t)){n="!"!==t[t.length-1];const o=t.replace(/!/g,"");e.push(o),(isArray(r)||isPlainObject(r))&&r[o]&&(n=r[o])}return n}CoreErrorCodes.INVALID_ARGUMENT,CoreErrorCodes.INVALID_DATE_ARGUMENT,CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT,CoreErrorCodes.NOT_SUPPORT_NON_STRING_MESSAGE,CoreErrorCodes.NOT_SUPPORT_LOCALE_PROMISE_VALUE,CoreErrorCodes.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION,CoreErrorCodes.NOT_SUPPORT_LOCALE_TYPE;const VERSION="9.14.5",NOT_REOSLVED=-1,DEFAULT_LOCALE="en-US",MISSING_RESOLVE_VALUE="",capitalize=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function getDefaultLinkedModifiers(){return{upper:(e,t)=>"text"===t&&isString(e)?e.toUpperCase():"vnode"===t&&isObject(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&isString(e)?e.toLowerCase():"vnode"===t&&isObject(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&isString(e)?capitalize(e):"vnode"===t&&isObject(e)&&"__v_isVNode"in e?capitalize(e.children):e}}let _compiler,_resolver,_fallbacker;function registerMessageCompiler(e){_compiler=e}function registerMessageResolver(e){_resolver=e}function registerLocaleFallbacker(e){_fallbacker=e}let _additionalMeta=null;const setAdditionalMeta=e=>{_additionalMeta=e},getAdditionalMeta=()=>_additionalMeta;let _fallbackContext=null;const setFallbackContext=e=>{_fallbackContext=e},getFallbackContext=()=>_fallbackContext;let _cid=0;function createCoreContext(e={}){const t=isFunction(e.onWarn)?e.onWarn:warn,r=isString(e.version)?e.version:VERSION,n=isString(e.locale)||isFunction(e.locale)?e.locale:DEFAULT_LOCALE,o=isFunction(n)?DEFAULT_LOCALE:n,s=isArray(e.fallbackLocale)||isPlainObject(e.fallbackLocale)||isString(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:o,a=isPlainObject(e.messages)?e.messages:createResources(o),i=isPlainObject(e.datetimeFormats)?e.datetimeFormats:createResources(o),c=isPlainObject(e.numberFormats)?e.numberFormats:createResources(o),l=assign(create(),e.modifiers,getDefaultLinkedModifiers()),u=e.pluralRules||create(),E=isFunction(e.missing)?e.missing:null,f=!isBoolean(e.missingWarn)&&!isRegExp(e.missingWarn)||e.missingWarn,_=!isBoolean(e.fallbackWarn)&&!isRegExp(e.fallbackWarn)||e.fallbackWarn,m=!!e.fallbackFormat,p=!!e.unresolving,C=isFunction(e.postTranslation)?e.postTranslation:null,d=isPlainObject(e.processor)?e.processor:null,T=!isBoolean(e.warnHtmlMessage)||e.warnHtmlMessage,g=!!e.escapeParameter,N=isFunction(e.messageCompiler)?e.messageCompiler:_compiler,A=isFunction(e.messageResolver)?e.messageResolver:_resolver||resolveWithKeyValue,O=isFunction(e.localeFallbacker)?e.localeFallbacker:_fallbacker||fallbackWithSimple,S=isObject(e.fallbackContext)?e.fallbackContext:void 0,L=e,P=isObject(L.__datetimeFormatters)?L.__datetimeFormatters:new Map,h=isObject(L.__numberFormatters)?L.__numberFormatters:new Map,b=isObject(L.__meta)?L.__meta:{};_cid++;const k={version:r,cid:_cid,locale:n,fallbackLocale:s,messages:a,modifiers:l,pluralRules:u,missing:E,missingWarn:f,fallbackWarn:_,fallbackFormat:m,unresolving:p,postTranslation:C,processor:d,warnHtmlMessage:T,escapeParameter:g,messageCompiler:N,messageResolver:A,localeFallbacker:O,fallbackContext:S,onWarn:t,__meta:b};return k.datetimeFormats=i,k.numberFormats=c,k.__datetimeFormatters=P,k.__numberFormatters=h,k}const createResources=e=>({[e]:create()});function isTranslateFallbackWarn(e,t){return e instanceof RegExp?e.test(t):e}function isTranslateMissingWarn(e,t){return e instanceof RegExp?e.test(t):e}function handleMissing(e,t,r,n,o){const{missing:s,onWarn:a}=e;if(null!==s){const n=s(e,r,t,o);return isString(n)?n:t}return t}function updateFallbackLocale(e,t,r){e.__localeChainCache=new Map,e.localeFallbacker(e,r,t)}function isAlmostSameLocale(e,t){return e!==t&&e.split("-")[0]===t.split("-")[0]}function isImplicitFallback(e,t){const r=t.indexOf(e);if(-1===r)return!1;for(let n=r+1;n<t.length;n++)if(isAlmostSameLocale(e,t[n]))return!0;return!1}function format(e){return t=>formatParts(t,e)}function formatParts(e,t){const r=resolveBody(t);if(null==r)throw createUnhandleNodeError(0);if(1===resolveType(r)){const t=resolveCases(r);return e.plural(t.reduce(((t,r)=>[...t,formatMessageParts(e,r)]),[]))}return formatMessageParts(e,r)}function formatMessageParts(e,t){const r=resolveStatic(t);if(null!=r)return"text"===e.type?r:e.normalize([r]);{const r=resolveItems(t).reduce(((t,r)=>[...t,formatMessagePart(e,r)]),[]);return e.normalize(r)}}function formatMessagePart(e,t){const r=resolveType(t);switch(r){case 3:case 9:case 7:case 8:return resolveValue$1(t,r);case 4:{const n=t;if(hasOwn(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(hasOwn(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw createUnhandleNodeError(r)}case 5:{const n=t;if(hasOwn(n,"i")&&isNumber(n.i))return e.interpolate(e.list(n.i));if(hasOwn(n,"index")&&isNumber(n.index))return e.interpolate(e.list(n.index));throw createUnhandleNodeError(r)}case 6:{const r=t,n=resolveLinkedModifier(r),o=resolveLinkedKey(r);return e.linked(formatMessagePart(e,o),n?formatMessagePart(e,n):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${r}`)}}const defaultOnCacheKey=e=>e;let compileCache=create();function clearCompileCache(){compileCache=create()}function baseCompile(e,t={}){let r=!1;const n=t.onError||defaultOnError;return t.onError=e=>{r=!0,n(e)},{...baseCompile$1(e,t),detectError:r}}const compileToFunction=(e,t)=>{if(!isString(e))throw Error(CoreErrorCodes.NOT_SUPPORT_NON_STRING_MESSAGE);{!isBoolean(t.warnHtmlMessage)||t.warnHtmlMessage;const r=(t.onCacheKey||defaultOnCacheKey)(e),n=compileCache[r];if(n)return n;const{code:o,detectError:s}=baseCompile(e,t),a=new Function(`return ${o}`)();return s?a:compileCache[r]=a}};function compile(e,t){if(isString(e)){!isBoolean(t.warnHtmlMessage)||t.warnHtmlMessage;const r=(t.onCacheKey||defaultOnCacheKey)(e),n=compileCache[r];if(n)return n;const{ast:o,detectError:s}=baseCompile(e,{...t,location:!1,jit:!0}),a=format(o);return s?a:compileCache[r]=a}{const t=e.cacheKey;if(t){const r=compileCache[t];return r||(compileCache[t]=format(e))}return format(e)}}const NOOP_MESSAGE_FUNCTION=()=>"",isMessageFunction=e=>isFunction(e);function translate(e,...t){const{fallbackFormat:r,postTranslation:n,unresolving:o,messageCompiler:s,fallbackLocale:a,messages:i}=e,[c,l]=parseTranslateArgs(...t),u=isBoolean(l.missingWarn)?l.missingWarn:e.missingWarn,E=isBoolean(l.fallbackWarn)?l.fallbackWarn:e.fallbackWarn,f=isBoolean(l.escapeParameter)?l.escapeParameter:e.escapeParameter,_=!!l.resolvedMessage,m=isString(l.default)||isBoolean(l.default)?isBoolean(l.default)?s?c:()=>c:l.default:r?s?c:()=>c:"",p=r||""!==m,C=getLocale(e,l);f&&escapeParams(l);let[d,T,g]=_?[c,C,i[C]||create()]:resolveMessageFormat(e,c,C,a,E,u),N=d,A=c;if(_||isString(N)||isMessageAST(N)||isMessageFunction(N)||p&&(N=m,A=N),!(_||(isString(N)||isMessageAST(N)||isMessageFunction(N))&&isString(T)))return o?-1:c;let O=!1;const S=isMessageFunction(N)?N:compileMessageFormat(e,c,T,N,A,(()=>{O=!0}));if(O)return N;const L=evaluateMessage(e,S,createMessageContext(getMessageContextOptions(e,T,g,l)));let P=n?n(L,c):L;return f&&isString(P)&&(P=sanitizeTranslatedHtml(P)),P}function escapeParams(e){isArray(e.list)?e.list=e.list.map((e=>isString(e)?escapeHtml(e):e)):isObject(e.named)&&Object.keys(e.named).forEach((t=>{isString(e.named[t])&&(e.named[t]=escapeHtml(e.named[t]))}))}function resolveMessageFormat(e,t,r,n,o,s){const{messages:a,onWarn:i,messageResolver:c,localeFallbacker:l}=e,u=l(e,n,r);let E,f=create(),_=null;for(let m=0;m<u.length&&(E=u[m],f=a[E]||create(),null===(_=c(f,t))&&(_=f[t]),!(isString(_)||isMessageAST(_)||isMessageFunction(_)));m++)if(!isImplicitFallback(E,u)){const r=handleMissing(e,t,E,s,"translate");r!==t&&(_=r)}return[_,E,f]}function compileMessageFormat(e,t,r,n,o,s){const{messageCompiler:a,warnHtmlMessage:i}=e;if(isMessageFunction(n)){const e=n;return e.locale=e.locale||r,e.key=e.key||t,e}if(null==a){const e=()=>n;return e.locale=r,e.key=t,e}const c=a(n,getCompileContext(e,r,o,n,i,s));return c.locale=r,c.key=t,c.source=n,c}function evaluateMessage(e,t,r){return t(r)}function parseTranslateArgs(...e){const[t,r,n]=e,o=create();if(!(isString(t)||isNumber(t)||isMessageFunction(t)||isMessageAST(t)))throw Error(CoreErrorCodes.INVALID_ARGUMENT);const s=isNumber(t)?String(t):(isMessageFunction(t),t);return isNumber(r)?o.plural=r:isString(r)?o.default=r:isPlainObject(r)&&!isEmptyObject(r)?o.named=r:isArray(r)&&(o.list=r),isNumber(n)?o.plural=n:isString(n)?o.default=n:isPlainObject(n)&&assign(o,n),[s,o]}function getCompileContext(e,t,r,n,o,s){return{locale:t,key:r,warnHtmlMessage:o,onError:e=>{throw s&&s(e),e},onCacheKey:e=>generateFormatCacheKey(t,r,e)}}function getMessageContextOptions(e,t,r,n){const{modifiers:o,pluralRules:s,messageResolver:a,fallbackLocale:i,fallbackWarn:c,missingWarn:l,fallbackContext:u}=e,E={locale:t,modifiers:o,pluralRules:s,messages:n=>{let o=a(r,n);if(null==o&&u){const[,,e]=resolveMessageFormat(u,n,t,i,c,l);o=a(e,n)}if(isString(o)||isMessageAST(o)){let r=!1;const s=compileMessageFormat(e,n,t,o,n,(()=>{r=!0}));return r?NOOP_MESSAGE_FUNCTION:s}return isMessageFunction(o)?o:NOOP_MESSAGE_FUNCTION}};return e.processor&&(E.processor=e.processor),n.list&&(E.list=n.list),n.named&&(E.named=n.named),isNumber(n.plural)&&(E.pluralIndex=n.plural),E}function datetime(e,...t){const{datetimeFormats:r,unresolving:n,fallbackLocale:o,onWarn:s,localeFallbacker:a}=e,{__datetimeFormatters:i}=e,[c,l,u,E]=parseDateTimeArgs(...t),f=isBoolean(u.missingWarn)?u.missingWarn:e.missingWarn;isBoolean(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,m=getLocale(e,u),p=a(e,o,m);if(!isString(c)||""===c)return new Intl.DateTimeFormat(m,E).format(l);let C,d={},T=null;for(let A=0;A<p.length&&(C=p[A],d=r[C]||{},T=d[c],!isPlainObject(T));A++)handleMissing(e,c,C,f,"datetime format");if(!isPlainObject(T)||!isString(C))return n?-1:c;let g=`${C}__${c}`;isEmptyObject(E)||(g=`${g}__${JSON.stringify(E)}`);let N=i.get(g);return N||(N=new Intl.DateTimeFormat(C,assign({},T,E)),i.set(g,N)),_?N.formatToParts(l):N.format(l)}const DATETIME_FORMAT_OPTIONS_KEYS=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function parseDateTimeArgs(...e){const[t,r,n,o]=e,s=create();let a,i=create();if(isString(t)){const e=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!e)throw Error(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT);const r=e[3]?e[3].trim().startsWith("T")?`${e[1].trim()}${e[3].trim()}`:`${e[1].trim()}T${e[3].trim()}`:e[1].trim();a=new Date(r);try{a.toISOString()}catch(c){throw Error(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT)}}else if(isDate(t)){if(isNaN(t.getTime()))throw Error(CoreErrorCodes.INVALID_DATE_ARGUMENT);a=t}else{if(!isNumber(t))throw Error(CoreErrorCodes.INVALID_ARGUMENT);a=t}return isString(r)?s.key=r:isPlainObject(r)&&Object.keys(r).forEach((e=>{DATETIME_FORMAT_OPTIONS_KEYS.includes(e)?i[e]=r[e]:s[e]=r[e]})),isString(n)?s.locale=n:isPlainObject(n)&&(i=n),isPlainObject(o)&&(i=o),[s.key||"",a,s,i]}function clearDateTimeFormat(e,t,r){const n=e;for(const o in r){const e=`${t}__${o}`;n.__datetimeFormatters.has(e)&&n.__datetimeFormatters.delete(e)}}function number(e,...t){const{numberFormats:r,unresolving:n,fallbackLocale:o,onWarn:s,localeFallbacker:a}=e,{__numberFormatters:i}=e,[c,l,u,E]=parseNumberArgs(...t),f=isBoolean(u.missingWarn)?u.missingWarn:e.missingWarn;isBoolean(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const _=!!u.part,m=getLocale(e,u),p=a(e,o,m);if(!isString(c)||""===c)return new Intl.NumberFormat(m,E).format(l);let C,d={},T=null;for(let A=0;A<p.length&&(C=p[A],d=r[C]||{},T=d[c],!isPlainObject(T));A++)handleMissing(e,c,C,f,"number format");if(!isPlainObject(T)||!isString(C))return n?-1:c;let g=`${C}__${c}`;isEmptyObject(E)||(g=`${g}__${JSON.stringify(E)}`);let N=i.get(g);return N||(N=new Intl.NumberFormat(C,assign({},T,E)),i.set(g,N)),_?N.formatToParts(l):N.format(l)}const NUMBER_FORMAT_OPTIONS_KEYS=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function parseNumberArgs(...e){const[t,r,n,o]=e,s=create();let a=create();if(!isNumber(t))throw Error(CoreErrorCodes.INVALID_ARGUMENT);const i=t;return isString(r)?s.key=r:isPlainObject(r)&&Object.keys(r).forEach((e=>{NUMBER_FORMAT_OPTIONS_KEYS.includes(e)?a[e]=r[e]:s[e]=r[e]})),isString(n)?s.locale=n:isPlainObject(n)&&(a=n),isPlainObject(o)&&(a=o),[s.key||"",i,s,a]}function clearNumberFormat(e,t,r){const n=e;for(const o in r){const e=`${t}__${o}`;n.__numberFormatters.has(e)&&n.__numberFormatters.delete(e)}}export{AST_NODE_PROPS_KEYS,CompileErrorCodes,CoreErrorCodes,CoreWarnCodes,DATETIME_FORMAT_OPTIONS_KEYS,DEFAULT_LOCALE,DEFAULT_MESSAGE_DATA_TYPE,MISSING_RESOLVE_VALUE,NOT_REOSLVED,NUMBER_FORMAT_OPTIONS_KEYS,VERSION,clearCompileCache,clearDateTimeFormat,clearNumberFormat,compile,compileToFunction,createCompileError,createCoreContext,createCoreError,createMessageContext,datetime,fallbackWithLocaleChain,fallbackWithSimple,getAdditionalMeta,getDevToolsHook,getFallbackContext,getLocale,getWarnMessage,handleMissing,initI18nDevTools,isAlmostSameLocale,isImplicitFallback,isMessageAST,isMessageFunction,isTranslateFallbackWarn,isTranslateMissingWarn,number,parse,parseDateTimeArgs,parseNumberArgs,parseTranslateArgs,registerLocaleFallbacker,registerMessageCompiler,registerMessageResolver,resolveLocale,resolveValue,resolveWithKeyValue,setAdditionalMeta,setDevToolsHook,setFallbackContext,translate,translateDevTools,updateFallbackLocale};
|
package/dist/core-base.global.js
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* core-base v9.14.
|
|
2
|
+
* core-base v9.14.5
|
|
3
3
|
* (c) 2025 kazuya kawaguchi
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
6
|
var IntlifyCoreBase = (function (exports) {
|
|
7
7
|
'use strict';
|
|
8
8
|
|
|
9
|
+
function warn(msg, err) {
|
|
10
|
+
if (typeof console !== 'undefined') {
|
|
11
|
+
console.warn(`[intlify] ` + msg);
|
|
12
|
+
/* istanbul ignore if */
|
|
13
|
+
if (err) {
|
|
14
|
+
console.warn(err.stack);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
9
19
|
/**
|
|
10
20
|
* Original Utilities
|
|
11
21
|
* written by kazuya kawaguchi
|
|
@@ -58,10 +68,49 @@ var IntlifyCoreBase = (function (exports) {
|
|
|
58
68
|
const create = (obj = null) => _create(obj);
|
|
59
69
|
function escapeHtml(rawText) {
|
|
60
70
|
return rawText
|
|
71
|
+
.replace(/&/g, '&') // escape `&` first to avoid double escaping
|
|
61
72
|
.replace(/</g, '<')
|
|
62
73
|
.replace(/>/g, '>')
|
|
63
74
|
.replace(/"/g, '"')
|
|
64
|
-
.replace(/'/g, ''')
|
|
75
|
+
.replace(/'/g, ''')
|
|
76
|
+
.replace(/\//g, '/') // escape `/` to prevent closing tags or JavaScript URLs
|
|
77
|
+
.replace(/=/g, '='); // escape `=` to prevent attribute injection
|
|
78
|
+
}
|
|
79
|
+
function escapeAttributeValue(value) {
|
|
80
|
+
return value
|
|
81
|
+
.replace(/&(?![a-zA-Z0-9#]{2,6};)/g, '&') // escape unescaped `&`
|
|
82
|
+
.replace(/"/g, '"')
|
|
83
|
+
.replace(/'/g, ''')
|
|
84
|
+
.replace(/</g, '<')
|
|
85
|
+
.replace(/>/g, '>');
|
|
86
|
+
}
|
|
87
|
+
function sanitizeTranslatedHtml(html) {
|
|
88
|
+
// Escape dangerous characters in attribute values
|
|
89
|
+
// Process attributes with double quotes
|
|
90
|
+
html = html.replace(/(\w+)\s*=\s*"([^"]*)"/g, (_, attrName, attrValue) => `${attrName}="${escapeAttributeValue(attrValue)}"`);
|
|
91
|
+
// Process attributes with single quotes
|
|
92
|
+
html = html.replace(/(\w+)\s*=\s*'([^']*)'/g, (_, attrName, attrValue) => `${attrName}='${escapeAttributeValue(attrValue)}'`);
|
|
93
|
+
// Detect and neutralize event handler attributes
|
|
94
|
+
const eventHandlerPattern = /\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi;
|
|
95
|
+
if (eventHandlerPattern.test(html)) {
|
|
96
|
+
{
|
|
97
|
+
warn('Potentially dangerous event handlers detected in translation. ' +
|
|
98
|
+
'Consider removing onclick, onerror, etc. from your translation messages.');
|
|
99
|
+
}
|
|
100
|
+
// Neutralize event handler attributes by escaping 'on'
|
|
101
|
+
html = html.replace(/(\s+)(on)(\w+\s*=)/gi, '$1on$3');
|
|
102
|
+
}
|
|
103
|
+
// Disable javascript: URLs in various contexts
|
|
104
|
+
const javascriptUrlPattern = [
|
|
105
|
+
// In href, src, action, formaction attributes
|
|
106
|
+
/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,
|
|
107
|
+
// In style attributes within url()
|
|
108
|
+
/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi
|
|
109
|
+
];
|
|
110
|
+
javascriptUrlPattern.forEach(pattern => {
|
|
111
|
+
html = html.replace(pattern, '$1javascript:');
|
|
112
|
+
});
|
|
113
|
+
return html;
|
|
65
114
|
}
|
|
66
115
|
const hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
67
116
|
function hasOwn(obj, key) {
|
|
@@ -142,16 +191,6 @@ var IntlifyCoreBase = (function (exports) {
|
|
|
142
191
|
return () => ++current;
|
|
143
192
|
}
|
|
144
193
|
|
|
145
|
-
function warn(msg, err) {
|
|
146
|
-
if (typeof console !== 'undefined') {
|
|
147
|
-
console.warn(`[intlify] ` + msg);
|
|
148
|
-
/* istanbul ignore if */
|
|
149
|
-
if (err) {
|
|
150
|
-
console.warn(err.stack);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
|
|
155
194
|
function createPosition(line, column, offset) {
|
|
156
195
|
return { line, column, offset };
|
|
157
196
|
}
|
|
@@ -2452,7 +2491,7 @@ var IntlifyCoreBase = (function (exports) {
|
|
|
2452
2491
|
* Intlify core-base version
|
|
2453
2492
|
* @internal
|
|
2454
2493
|
*/
|
|
2455
|
-
const VERSION = '9.14.
|
|
2494
|
+
const VERSION = '9.14.5';
|
|
2456
2495
|
const NOT_REOSLVED = -1;
|
|
2457
2496
|
const DEFAULT_LOCALE = 'en-US';
|
|
2458
2497
|
const MISSING_RESOLVE_VALUE = '';
|
|
@@ -2982,9 +3021,13 @@ var IntlifyCoreBase = (function (exports) {
|
|
|
2982
3021
|
const msgContext = createMessageContext(ctxOptions);
|
|
2983
3022
|
const messaged = evaluateMessage(context, msg, msgContext);
|
|
2984
3023
|
// if use post translation option, proceed it with handler
|
|
2985
|
-
|
|
3024
|
+
let ret = postTranslation
|
|
2986
3025
|
? postTranslation(messaged, key)
|
|
2987
3026
|
: messaged;
|
|
3027
|
+
// apply HTML sanitization for security
|
|
3028
|
+
if (escapeParameter && isString(ret)) {
|
|
3029
|
+
ret = sanitizeTranslatedHtml(ret);
|
|
3030
|
+
}
|
|
2988
3031
|
// NOTE: experimental !!
|
|
2989
3032
|
{
|
|
2990
3033
|
// prettier-ignore
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* core-base v9.14.
|
|
2
|
+
* core-base v9.14.5
|
|
3
3
|
* (c) 2025 kazuya kawaguchi
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
|
-
var IntlifyCoreBase=function(e){"use strict";const t=/\{([0-9a-zA-Z]+)\}/g;const n=(e,t,n)=>r({l:e,k:t,s:n}),r=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),o=e=>"number"==typeof e&&isFinite(e),c=e=>"[object Date]"===C(e),s=e=>"[object RegExp]"===C(e),a=e=>k(e)&&0===Object.keys(e).length,l=Object.assign,i=Object.create,u=(e=null)=>i(e);function f(e){return e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}const E=Object.prototype.hasOwnProperty;function _(e,t){return E.call(e,t)}const m=Array.isArray,d=e=>"function"==typeof e,p=e=>"string"==typeof e,N=e=>"boolean"==typeof e,T=e=>null!==e&&"object"==typeof e,L=e=>T(e)&&d(e.then)&&d(e.catch),A=Object.prototype.toString,C=e=>A.call(e),k=e=>{if(!T(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t.constructor===Object};function h(e,t=""){return e.reduce(((e,n,r)=>0===r?e+n:e+t+n),"")}function O(e){let t=e;return()=>++t}function I(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}function S(e,t,n){const r={start:e,end:t};return null!=n&&(r.source=n),r}const g={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2};const y={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17};function b(e,t,n={}){const{domain:r,messages:o,args:c}=n,s=new SyntaxError(String(e));return s.code=e,t&&(s.location=t),s.domain=r,s}function P(e){throw e}y.EXPECTED_TOKEN,y.INVALID_TOKEN_IN_PLACEHOLDER,y.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,y.UNKNOWN_ESCAPE_SEQUENCE,y.INVALID_UNICODE_ESCAPE_SEQUENCE,y.UNBALANCED_CLOSING_BRACE,y.UNTERMINATED_CLOSING_BRACE,y.EMPTY_PLACEHOLDER,y.NOT_ALLOW_NEST_PLACEHOLDER,y.INVALID_LINKED_FORMAT,y.MUST_HAVE_MESSAGES_IN_PLURAL,y.UNEXPECTED_EMPTY_LINKED_MODIFIER,y.UNEXPECTED_EMPTY_LINKED_KEY,y.UNEXPECTED_LEXICAL_ANALYSIS,y.UNHANDLED_CODEGEN_NODE_TYPE,y.UNHANDLED_MINIFIER_NODE_TYPE;const D=" ",M="\r",R="\n",U=String.fromCharCode(8232),v=String.fromCharCode(8233);function x(e){const t=e;let n=0,r=1,o=1,c=0;const s=e=>t[e]===M&&t[e+1]===R,a=e=>t[e]===v,l=e=>t[e]===U,i=e=>s(e)||(e=>t[e]===R)(e)||a(e)||l(e),u=e=>s(e)||a(e)||l(e)?R:t[e];function f(){return c=0,i(n)&&(r++,o=0),s(n)&&n++,n++,o++,t[n]}return{index:()=>n,line:()=>r,column:()=>o,peekOffset:()=>c,charAt:u,currentChar:()=>u(n),currentPeek:()=>u(n+c),next:f,peek:function(){return s(n+c)&&c++,c++,t[n+c]},reset:function(){n=0,r=1,o=1,c=0},resetPeek:function(e=0){c=e},skipToPeek:function(){const e=n+c;for(;e!==n;)f();c=0}}}const F=void 0,w="'";function W(e,t={}){const n=!1!==t.location,r=x(e),o=()=>r.index(),c=()=>{return e=r.line(),t=r.column(),n=r.index(),{line:e,column:t,offset:n};var e,t,n},s=c(),a=o(),l={currentType:14,offset:a,startLoc:s,endLoc:s,lastType:14,lastOffset:a,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},i=()=>l,{onError:u}=t;function f(e,t,r){e.endLoc=c(),e.currentType=t;const o={type:t};return n&&(o.loc=S(e.startLoc,e.endLoc)),null!=r&&(o.value=r),o}const E=e=>f(e,14);function _(e,t){return e.currentChar()===t?(e.next(),t):(y.EXPECTED_TOKEN,c(),"")}function m(e){let t="";for(;e.currentPeek()===D||e.currentPeek()===R;)t+=e.currentPeek(),e.peek();return t}function d(e){const t=m(e);return e.skipToPeek(),t}function p(e){if(e===F)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function N(e,t){const{currentType:n}=t;if(2!==n)return!1;m(e);const r=function(e){if(e===F)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),r}function T(e){m(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function L(e,t=!0){const n=(t=!1,r="",o=!1)=>{const c=e.currentPeek();return"{"===c?"%"!==r&&t:"@"!==c&&c?"%"===c?(e.peek(),n(t,"%",!0)):"|"===c?!("%"!==r&&!o)||!(r===D||r===R):c===D?(e.peek(),n(!0,D,o)):c!==R||(e.peek(),n(!0,R,o)):"%"===r||t},r=n();return t&&e.resetPeek(),r}function A(e,t){const n=e.currentChar();return n===F?F:t(n)?(e.next(),n):null}function C(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function k(e){return A(e,C)}function h(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function O(e){return A(e,h)}function I(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function g(e){return A(e,I)}function b(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function P(e){return A(e,b)}function M(e){let t="",n="";for(;t=g(e);)n+=t;return n}function U(e){let t="";for(;;){const n=e.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if("%"===n){if(!L(e))break;t+=n,e.next()}else if(n===D||n===R)if(L(e))t+=n,e.next();else{if(T(e))break;t+=n,e.next()}else t+=n,e.next()}return t}function v(e){return e!==w&&e!==R}function W(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return X(e,t,4);case"U":return X(e,t,6);default:return y.UNKNOWN_ESCAPE_SEQUENCE,c(),""}}function X(e,t,n){_(e,t);let r="";for(let o=0;o<n;o++){const t=P(e);if(!t){y.INVALID_UNICODE_ESCAPE_SEQUENCE,c(),e.currentChar();break}r+=t}return`\\${t}${r}`}function Y(e){return"{"!==e&&"}"!==e&&e!==D&&e!==R}function K(e){d(e);const t=_(e,"|");return d(e),t}function G(e,t){let n=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&(y.NOT_ALLOW_NEST_PLACEHOLDER,c()),e.next(),n=f(t,2,"{"),d(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&(y.EMPTY_PLACEHOLDER,c()),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&d(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&(y.UNTERMINATED_CLOSING_BRACE,c()),n=$(e,t)||E(t),t.braceNest=0,n;default:{let r=!0,o=!0,s=!0;if(T(e))return t.braceNest>0&&(y.UNTERMINATED_CLOSING_BRACE,c()),n=f(t,1,K(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return y.UNTERMINATED_CLOSING_BRACE,c(),t.braceNest=0,V(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;m(e);const r=p(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,5,function(e){d(e);let t="",n="";for(;t=O(e);)n+=t;return e.currentChar()===F&&(y.UNTERMINATED_CLOSING_BRACE,c()),n}(e)),d(e),n;if(o=N(e,t))return n=f(t,6,function(e){d(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${M(e)}`):t+=M(e),e.currentChar()===F&&(y.UNTERMINATED_CLOSING_BRACE,c()),t}(e)),d(e),n;if(s=function(e,t){const{currentType:n}=t;if(2!==n)return!1;m(e);const r=e.currentPeek()===w;return e.resetPeek(),r}(e,t))return n=f(t,7,function(e){d(e),_(e,"'");let t="",n="";for(;t=A(e,v);)n+="\\"===t?W(e):t;const r=e.currentChar();return r===R||r===F?(y.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,c(),r===R&&(e.next(),_(e,"'")),n):(_(e,"'"),n)}(e)),d(e),n;if(!r&&!o&&!s)return n=f(t,13,function(e){d(e);let t="",n="";for(;t=A(e,Y);)n+=t;return n}(e)),y.INVALID_TOKEN_IN_PLACEHOLDER,c(),n.value,d(e),n;break}}return n}function $(e,t){const{currentType:n}=t;let r=null;const o=e.currentChar();switch(8!==n&&9!==n&&12!==n&&10!==n||o!==R&&o!==D||(y.INVALID_LINKED_FORMAT,c()),o){case"@":return e.next(),r=f(t,8,"@"),t.inLinked=!0,r;case".":return d(e),e.next(),f(t,9,".");case":":return d(e),e.next(),f(t,10,":");default:return T(e)?(r=f(t,1,K(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(8!==n)return!1;m(e);const r="."===e.currentPeek();return e.resetPeek(),r}(e,t)||function(e,t){const{currentType:n}=t;if(8!==n&&12!==n)return!1;m(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(d(e),$(e,t)):function(e,t){const{currentType:n}=t;if(9!==n)return!1;m(e);const r=p(e.currentPeek());return e.resetPeek(),r}(e,t)?(d(e),f(t,12,function(e){let t="",n="";for(;t=k(e);)n+=t;return n}(e))):function(e,t){const{currentType:n}=t;if(10!==n)return!1;const r=()=>{const t=e.currentPeek();return"{"===t?p(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||t===D||!t)&&(t===R?(e.peek(),r()):L(e,!1))},o=r();return e.resetPeek(),o}(e,t)?(d(e),"{"===o?G(e,t)||r:f(t,11,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"%"!==r&&"@"!==r&&"|"!==r&&"("!==r&&")"!==r&&r?r===D?n:(n+=r,e.next(),t(n)):n};return t("")}(e))):(8===n&&(y.INVALID_LINKED_FORMAT,c()),t.braceNest=0,t.inLinked=!1,V(e,t))}}function V(e,t){let n={type:14};if(t.braceNest>0)return G(e,t)||E(t);if(t.inLinked)return $(e,t)||E(t);switch(e.currentChar()){case"{":return G(e,t)||E(t);case"}":return y.UNBALANCED_CLOSING_BRACE,c(),e.next(),f(t,3,"}");case"@":return $(e,t)||E(t);default:{if(T(e))return n=f(t,1,K(e)),t.braceNest=0,t.inLinked=!1,n;const{isModulo:r,hasSpace:o}=function(e){const t=m(e),n="%"===e.currentPeek()&&"{"===e.peek();return e.resetPeek(),{isModulo:n,hasSpace:t.length>0}}(e);if(r)return o?f(t,0,U(e)):f(t,4,function(e){d(e);const t=e.currentChar();return"%"!==t&&(y.EXPECTED_TOKEN,c()),e.next(),"%"}(e));if(L(e))return f(t,0,U(e));break}}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:s}=l;return l.lastType=e,l.lastOffset=t,l.lastStartLoc=n,l.lastEndLoc=s,l.offset=o(),l.startLoc=c(),r.currentChar()===F?f(l,14):V(r,l)},currentOffset:o,currentPosition:c,context:i}}const X=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Y(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function K(e={}){const t=!1!==e.location,{onError:n,onWarn:r}=e;function o(e,n,r){const o={type:e};return t&&(o.start=n,o.end=n,o.loc={start:r,end:r}),o}function c(e,n,r,o){o&&(e.type=o),t&&(e.end=n,e.loc&&(e.loc.end=r))}function s(e,t){const n=e.context(),r=o(3,n.offset,n.startLoc);return r.value=t,c(r,e.currentOffset(),e.currentPosition()),r}function a(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:s}=n,a=o(5,r,s);return a.index=parseInt(t,10),e.nextToken(),c(a,e.currentOffset(),e.currentPosition()),a}function i(e,t,n){const r=e.context(),{lastOffset:s,lastStartLoc:a}=r,l=o(4,s,a);return l.key=t,!0===n&&(l.modulo=!0),e.nextToken(),c(l,e.currentOffset(),e.currentPosition()),l}function u(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:s}=n,a=o(9,r,s);return a.value=t.replace(X,Y),e.nextToken(),c(a,e.currentOffset(),e.currentPosition()),a}function f(e){const t=e.context(),n=o(6,t.offset,t.startLoc);let r=e.nextToken();if(9===r.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:r,lastStartLoc:s}=n,a=o(8,r,s);return 12!==t.type?(y.UNEXPECTED_EMPTY_LINKED_MODIFIER,n.lastStartLoc,a.value="",c(a,r,s),{nextConsumeToken:t,node:a}):(null==t.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,n.lastStartLoc,G(t)),a.value=t.value||"",c(a,e.currentOffset(),e.currentPosition()),{node:a})}(e);n.modifier=t.node,r=t.nextConsumeToken||e.nextToken()}switch(10!==r.type&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),r=e.nextToken(),2===r.type&&(r=e.nextToken()),r.type){case 11:null==r.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=function(e,t){const n=e.context(),r=o(7,n.offset,n.startLoc);return r.value=t,c(r,e.currentOffset(),e.currentPosition()),r}(e,r.value||"");break;case 5:null==r.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=i(e,r.value||"");break;case 6:null==r.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=a(e,r.value||"");break;case 7:null==r.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=u(e,r.value||"");break;default:{y.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc;const s=e.context(),a=o(7,s.offset,s.startLoc);return a.value="",c(a,s.offset,s.startLoc),n.key=a,c(n,s.offset,s.startLoc),{nextConsumeToken:r,node:n}}}return c(n,e.currentOffset(),e.currentPosition()),{node:n}}function E(e){const t=e.context(),n=o(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let r=null,l=null;do{const o=r||e.nextToken();switch(r=null,o.type){case 0:null==o.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(s(e,o.value||""));break;case 6:null==o.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(a(e,o.value||""));break;case 4:l=!0;break;case 5:null==o.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(i(e,o.value||"",!!l)),l&&(g.USE_MODULO_SYNTAX,t.lastStartLoc,G(o),l=null);break;case 7:null==o.value&&(y.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(u(e,o.value||""));break;case 8:{const t=f(e);n.items.push(t.node),r=t.nextConsumeToken||null;break}}}while(14!==t.currentType&&1!==t.currentType);return c(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function _(e){const t=e.context(),{offset:n,startLoc:r}=t,s=E(e);return 14===t.currentType?s:function(e,t,n,r){const s=e.context();let a=0===r.items.length;const l=o(1,t,n);l.cases=[],l.cases.push(r);do{const t=E(e);a||(a=0===t.items.length),l.cases.push(t)}while(14!==s.currentType);return a&&y.MUST_HAVE_MESSAGES_IN_PLURAL,c(l,e.currentOffset(),e.currentPosition()),l}(e,n,r,s)}return{parse:function(n){const r=W(n,l({},e)),s=r.context(),a=o(0,s.offset,s.startLoc);return t&&a.loc&&(a.loc.source=n),a.body=_(r),e.onCacheKey&&(a.cacheKey=e.onCacheKey(n)),14!==s.currentType&&(y.UNEXPECTED_LEXICAL_ANALYSIS,s.lastStartLoc,n[s.offset]),c(a,r.currentOffset(),r.currentPosition()),a}}}function G(e){if(14===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function $(e,t){for(let n=0;n<e.length;n++)V(e[n],t)}function V(e,t){switch(e.type){case 1:$(e.cases,t),t.helper("plural");break;case 2:$(e.items,t);break;case 6:V(e.key,t),t.helper("linked"),t.helper("type");break;case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named")}}function H(e,t={}){const n=function(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:e=>(n.helpers.add(e),e)}}(e);n.helper("normalize"),e.body&&V(e.body,n);const r=n.context();e.helpers=Array.from(r.helpers)}function B(e){if(1===e.items.length){const t=e.items[0];3!==t.type&&9!==t.type||(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;n<e.items.length;n++){const r=e.items[n];if(3!==r.type&&9!==r.type)break;if(null==r.value)break;t.push(r.value)}if(t.length===e.items.length){e.static=h(t);for(let t=0;t<e.items.length;t++){const n=e.items[t];3!==n.type&&9!==n.type||delete n.value}}}}function j(e){switch(e.t=e.type,e.type){case 0:{const t=e;j(t.body),t.b=t.body,delete t.body;break}case 1:{const t=e,n=t.cases;for(let e=0;e<n.length;e++)j(n[e]);t.c=n,delete t.cases;break}case 2:{const t=e,n=t.items;for(let e=0;e<n.length;e++)j(n[e]);t.i=n,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{const t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{const t=e;j(t.key),t.k=t.key,delete t.key,t.modifier&&(j(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{const t=e;t.i=t.index,delete t.index;break}case 4:{const t=e;t.k=t.key,delete t.key;break}}delete e.type}function z(e,t){const{helper:n}=e;switch(t.type){case 0:!function(e,t){t.body?z(e,t.body):e.push("null")}(e,t);break;case 1:!function(e,t){const{helper:n,needIndent:r}=e;if(t.cases.length>1){e.push(`${n("plural")}([`),e.indent(r());const o=t.cases.length;for(let n=0;n<o&&(z(e,t.cases[n]),n!==o-1);n++)e.push(", ");e.deindent(r()),e.push("])")}}(e,t);break;case 2:!function(e,t){const{helper:n,needIndent:r}=e;e.push(`${n("normalize")}([`),e.indent(r());const o=t.items.length;for(let c=0;c<o&&(z(e,t.items[c]),c!==o-1);c++)e.push(", ");e.deindent(r()),e.push("])")}(e,t);break;case 6:!function(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),z(e,t.key),t.modifier?(e.push(", "),z(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}(e,t);break;case 8:case 7:case 9:case 3:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${n("interpolate")}(${n("list")}(${t.index}))`,t);break;case 4:e.push(`${n("interpolate")}(${n("named")}(${JSON.stringify(t.key)}))`,t)}}const Q=(e,t={})=>{const n=p(t.mode)?t.mode:"normal",r=p(t.filename)?t.filename:"message.intl",o=!!t.sourceMap,c=null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",s=t.needIndent?t.needIndent:"arrow"!==n,a=e.helpers||[],l=function(e,t){const{sourceMap:n,filename:r,breakLineCode:o,needIndent:c}=t,s=!1!==t.location,a={filename:r,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:o,needIndent:c,indentLevel:0};function l(e,t){a.code+=e}function i(e,t=!0){const n=t?o:"";l(c?n+" ".repeat(e):n)}return s&&e.loc&&(a.source=e.loc.source),{context:()=>a,push:l,indent:function(e=!0){const t=++a.indentLevel;e&&i(t)},deindent:function(e=!0){const t=--a.indentLevel;e&&i(t)},newline:function(){i(a.indentLevel)},helper:e=>`_${e}`,needIndent:()=>a.needIndent}}(e,{mode:n,filename:r,sourceMap:o,breakLineCode:c,needIndent:s});l.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),l.indent(s),a.length>0&&(l.push(`const { ${h(a.map((e=>`${e}: _${e}`)),", ")} } = ctx`),l.newline()),l.push("return "),z(l,e),l.deindent(s),l.push("}"),delete e.helpers;const{code:i,map:u}=l.context();return{ast:e,code:i,map:u?u.toJSON():void 0}};function J(e,t={}){const n=l({},t),r=!!n.jit,o=!!n.minify,c=null==n.optimize||n.optimize,s=K(n).parse(e);return r?(c&&function(e){const t=e.body;2===t.type?B(t):t.cases.forEach((e=>B(e)))}(s),o&&j(s),{ast:s,code:""}):(H(s,n),Q(s,n))}function Z(e){return T(e)&&0===oe(e)&&(_(e,"b")||_(e,"body"))}const q=["b","body"];const ee=["c","cases"];const te=["s","static"];const ne=["i","items"];const re=["t","type"];function oe(e){return ie(e,re)}const ce=["v","value"];function se(e,t){const n=ie(e,ce);if(null!=n)return n;throw fe(t)}const ae=["m","modifier"];const le=["k","key"];function ie(e,t,n){for(let r=0;r<t.length;r++){const n=t[r];if(_(e,n)&&null!=e[n])return e[n]}return n}const ue=[...q,...ee,...te,...ne,...le,...ae,...ce,...re];function fe(e){return new Error(`unhandled node type: ${e}`)}const Ee=[];Ee[0]={w:[0],i:[3,0],"[":[4],o:[7]},Ee[1]={w:[1],".":[2],"[":[4],o:[7]},Ee[2]={w:[2],i:[3,0],0:[3,0]},Ee[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},Ee[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},Ee[5]={"'":[4,0],o:8,l:[5,0]},Ee[6]={'"':[4,0],o:8,l:[6,0]};const _e=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function me(e){if(null==e)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function de(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(n=t,_e.test(n)?function(e){const t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}(t):"*"+t);var n}function pe(e){const t=[];let n,r,o,c,s,a,l,i=-1,u=0,f=0;const E=[];function _(){const t=e[i+1];if(5===u&&"'"===t||6===u&&'"'===t)return i++,o="\\"+t,E[0](),!0}for(E[0]=()=>{void 0===r?r=o:r+=o},E[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},E[2]=()=>{E[0](),f++},E[3]=()=>{if(f>0)f--,u=4,E[0]();else{if(f=0,void 0===r)return!1;if(r=de(r),!1===r)return!1;E[1]()}};null!==u;)if(i++,n=e[i],"\\"!==n||!_()){if(c=me(n),l=Ee[u],s=l[c]||l.l||8,8===s)return;if(u=s[0],void 0!==s[1]&&(a=E[s[1]],a&&(o=n,!1===a())))return;if(7===u)return t}}const Ne=new Map;function Te(e,t){return T(e)?e[t]:null}const Le=e=>e,Ae=e=>"",Ce="text",ke=e=>0===e.length?"":h(e),he=e=>null==e?"":m(e)||k(e)&&e.toString===A?JSON.stringify(e,null,2):String(e);function Oe(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function Ie(e={}){const t=e.locale,n=function(e){const t=o(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(o(e.named.count)||o(e.named.n))?o(e.named.count)?e.named.count:o(e.named.n)?e.named.n:t:t}(e),r=T(e.pluralRules)&&p(t)&&d(e.pluralRules[t])?e.pluralRules[t]:Oe,c=T(e.pluralRules)&&p(t)&&d(e.pluralRules[t])?Oe:void 0,s=e.list||[],a=e.named||u();o(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,a);function i(t){const n=d(e.messages)?e.messages(t):!!T(e.messages)&&e.messages[t];return n||(e.parent?e.parent.message(t):Ae)}const f=k(e.processor)&&d(e.processor.normalize)?e.processor.normalize:ke,E=k(e.processor)&&d(e.processor.interpolate)?e.processor.interpolate:he,_={list:e=>s[e],named:e=>a[e],plural:e=>e[r(n,e.length,c)],linked:(t,...n)=>{const[r,o]=n;let c="text",s="";1===n.length?T(r)?(s=r.modifier||s,c=r.type||c):p(r)&&(s=r||s):2===n.length&&(p(r)&&(s=r||s),p(o)&&(c=o||c));const a=i(t)(_),l="vnode"===c&&m(a)&&s?a[0]:a;return s?(u=s,e.modifiers?e.modifiers[u]:Le)(l,c):l;var u},message:i,type:k(e.processor)&&p(e.processor.type)?e.processor.type:Ce,interpolate:E,normalize:f,values:l(u(),s,a)};return _}let Se=null;const ge=ye("function:translate");function ye(e){return t=>Se&&Se.emit(e,t)}const be=g.__EXTEND_POINT__,Pe=O(be),De={NOT_FOUND_KEY:be,FALLBACK_TO_TRANSLATE:Pe(),CANNOT_FORMAT_NUMBER:Pe(),FALLBACK_TO_NUMBER_FORMAT:Pe(),CANNOT_FORMAT_DATE:Pe(),FALLBACK_TO_DATE_FORMAT:Pe(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:Pe(),__EXTEND_POINT__:Pe()},Me={[De.NOT_FOUND_KEY]:"Not found '{key}' key in '{locale}' locale messages.",[De.FALLBACK_TO_TRANSLATE]:"Fall back to translate '{key}' key with '{target}' locale.",[De.CANNOT_FORMAT_NUMBER]:"Cannot format a number value due to not supported Intl.NumberFormat.",[De.FALLBACK_TO_NUMBER_FORMAT]:"Fall back to number format '{key}' key with '{target}' locale.",[De.CANNOT_FORMAT_DATE]:"Cannot format a date value due to not supported Intl.DateTimeFormat.",[De.FALLBACK_TO_DATE_FORMAT]:"Fall back to datetime format '{key}' key with '{target}' locale.",[De.EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER]:"This project is using Custom Message Compiler, which is an experimental feature. It may receive breaking changes or be removed in the future."};const Re=y.__EXTEND_POINT__,Ue=O(Re),ve={INVALID_ARGUMENT:Re,INVALID_DATE_ARGUMENT:Ue(),INVALID_ISO_DATE_ARGUMENT:Ue(),NOT_SUPPORT_NON_STRING_MESSAGE:Ue(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:Ue(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:Ue(),NOT_SUPPORT_LOCALE_TYPE:Ue(),__EXTEND_POINT__:Ue()};function xe(e,t){return null!=t.locale?we(t.locale):we(e.locale)}let Fe;function we(e){if(p(e))return e;if(d(e)){if(e.resolvedOnce&&null!=Fe)return Fe;if("Function"===e.constructor.name){const t=e();if(L(t))throw Error(ve.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Fe=t}throw Error(ve.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}throw Error(ve.NOT_SUPPORT_LOCALE_TYPE)}function We(e,t,n){return[...new Set([n,...m(t)?t:T(t)?Object.keys(t):p(t)?[t]:[n]])]}function Xe(e,t,n){let r=!0;for(let o=0;o<t.length&&N(r);o++){const c=t[o];p(c)&&(r=Ye(e,t[o],n))}return r}function Ye(e,t,n){let r;const o=t.split("-");do{r=Ke(e,o.join("-"),n),o.splice(-1,1)}while(o.length&&!0===r);return r}function Ke(e,t,n){let r=!1;if(!e.includes(t)&&(r=!0,t)){r="!"!==t[t.length-1];const o=t.replace(/!/g,"");e.push(o),(m(n)||k(n))&&n[o]&&(r=n[o])}return r}ve.INVALID_ARGUMENT,ve.INVALID_DATE_ARGUMENT,ve.INVALID_ISO_DATE_ARGUMENT,ve.NOT_SUPPORT_NON_STRING_MESSAGE,ve.NOT_SUPPORT_LOCALE_PROMISE_VALUE,ve.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION,ve.NOT_SUPPORT_LOCALE_TYPE;const Ge="9.14.4",$e="en-US",Ve=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;let He,Be,je;let ze=null;let Qe=null;let Je=0;const Ze=e=>({[e]:u()});function qe(e,t,n,r,o){const{missing:c,onWarn:s}=e;if(null!==c){const r=c(e,n,t,o);return p(r)?r:t}return t}function et(e,t){return e!==t&&e.split("-")[0]===t.split("-")[0]}function tt(e,t){const n=t.indexOf(e);if(-1===n)return!1;for(let r=n+1;r<t.length;r++)if(et(e,t[r]))return!0;return!1}function nt(e){return t=>function(e,t){const n=(r=t,ie(r,q));var r;if(null==n)throw fe(0);if(1===oe(n)){const t=function(e){return ie(e,ee,[])}(n);return e.plural(t.reduce(((t,n)=>[...t,rt(e,n)]),[]))}return rt(e,n)}(t,e)}function rt(e,t){const n=function(e){return ie(e,te)}(t);if(null!=n)return"text"===e.type?n:e.normalize([n]);{const n=function(e){return ie(e,ne,[])}(t).reduce(((t,n)=>[...t,ot(e,n)]),[]);return e.normalize(n)}}function ot(e,t){const n=oe(t);switch(n){case 3:case 9:case 7:case 8:return se(t,n);case 4:{const r=t;if(_(r,"k")&&r.k)return e.interpolate(e.named(r.k));if(_(r,"key")&&r.key)return e.interpolate(e.named(r.key));throw fe(n)}case 5:{const r=t;if(_(r,"i")&&o(r.i))return e.interpolate(e.list(r.i));if(_(r,"index")&&o(r.index))return e.interpolate(e.list(r.index));throw fe(n)}case 6:{const n=t,r=function(e){return ie(e,ae)}(n),o=function(e){const t=ie(e,le);if(t)return t;throw fe(6)}(n);return e.linked(ot(e,o),r?ot(e,r):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${n}`)}}const ct=e=>e;let st=u();function at(e,t={}){let n=!1;const r=t.onError||P;return t.onError=e=>{n=!0,r(e)},{...J(e,t),detectError:n}}const lt=()=>"",it=e=>d(e);function ut(e,t,n,r,o,c){const{messages:s,onWarn:a,messageResolver:l,localeFallbacker:i}=e,f=i(e,r,n);let E,_=u(),m=null;for(let d=0;d<f.length&&(E=f[d],_=s[E]||u(),null===(m=l(_,t))&&(m=_[t]),!(p(m)||Z(m)||it(m)));d++)if(!tt(E,f)){const n=qe(e,t,E,0,"translate");n!==t&&(m=n)}return[m,E,_]}function ft(e,t,r,o,c,s){const{messageCompiler:a,warnHtmlMessage:l}=e;if(it(o)){const e=o;return e.locale=e.locale||r,e.key=e.key||t,e}if(null==a){const e=()=>o;return e.locale=r,e.key=t,e}const i=a(o,function(e,t,r,o,c,s){return{locale:t,key:r,warnHtmlMessage:c,onError:e=>{throw s&&s(e),e},onCacheKey:e=>n(t,r,e)}}(0,r,c,0,l,s));return i.locale=r,i.key=t,i.source=o,i}function Et(...e){const[t,n,r]=e,c=u();if(!(p(t)||o(t)||it(t)||Z(t)))throw Error(ve.INVALID_ARGUMENT);const s=o(t)?String(t):(it(t),t);return o(n)?c.plural=n:p(n)?c.default=n:k(n)&&!a(n)?c.named=n:m(n)&&(c.list=n),o(r)?c.plural=r:p(r)?c.default=r:k(r)&&l(c,r),[s,c]}const _t=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function mt(...e){const[t,n,r,s]=e,a=u();let l,i=u();if(p(t)){const e=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!e)throw Error(ve.INVALID_ISO_DATE_ARGUMENT);const n=e[3]?e[3].trim().startsWith("T")?`${e[1].trim()}${e[3].trim()}`:`${e[1].trim()}T${e[3].trim()}`:e[1].trim();l=new Date(n);try{l.toISOString()}catch(f){throw Error(ve.INVALID_ISO_DATE_ARGUMENT)}}else if(c(t)){if(isNaN(t.getTime()))throw Error(ve.INVALID_DATE_ARGUMENT);l=t}else{if(!o(t))throw Error(ve.INVALID_ARGUMENT);l=t}return p(n)?a.key=n:k(n)&&Object.keys(n).forEach((e=>{_t.includes(e)?i[e]=n[e]:a[e]=n[e]})),p(r)?a.locale=r:k(r)&&(i=r),k(s)&&(i=s),[a.key||"",l,a,i]}const dt=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function pt(...e){const[t,n,r,c]=e,s=u();let a=u();if(!o(t))throw Error(ve.INVALID_ARGUMENT);const l=t;return p(n)?s.key=n:k(n)&&Object.keys(n).forEach((e=>{dt.includes(e)?a[e]=n[e]:s[e]=n[e]})),p(r)?s.locale=r:k(r)&&(a=r),k(c)&&(a=c),[s.key||"",l,s,a]}return e.AST_NODE_PROPS_KEYS=ue,e.CompileErrorCodes=y,e.CoreErrorCodes=ve,e.CoreWarnCodes=De,e.DATETIME_FORMAT_OPTIONS_KEYS=_t,e.DEFAULT_LOCALE=$e,e.DEFAULT_MESSAGE_DATA_TYPE=Ce,e.MISSING_RESOLVE_VALUE="",e.NOT_REOSLVED=-1,e.NUMBER_FORMAT_OPTIONS_KEYS=dt,e.VERSION=Ge,e.clearCompileCache=function(){st=u()},e.clearDateTimeFormat=function(e,t,n){const r=e;for(const o in n){const e=`${t}__${o}`;r.__datetimeFormatters.has(e)&&r.__datetimeFormatters.delete(e)}},e.clearNumberFormat=function(e,t,n){const r=e;for(const o in n){const e=`${t}__${o}`;r.__numberFormatters.has(e)&&r.__numberFormatters.delete(e)}},e.compile=function(e,t){if(p(e)){!N(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||ct)(e),r=st[n];if(r)return r;const{ast:o,detectError:c}=at(e,{...t,location:!1,jit:!0}),s=nt(o);return c?s:st[n]=s}{const t=e.cacheKey;if(t){const n=st[t];return n||(st[t]=nt(e))}return nt(e)}},e.compileToFunction=(e,t)=>{if(!p(e))throw Error(ve.NOT_SUPPORT_NON_STRING_MESSAGE);{!N(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||ct)(e),r=st[n];if(r)return r;const{code:o,detectError:c}=at(e,t),s=new Function(`return ${o}`)();return c?s:st[n]=s}},e.createCompileError=b,e.createCoreContext=function(e={}){const t=d(e.onWarn)?e.onWarn:I,n=p(e.version)?e.version:Ge,r=p(e.locale)||d(e.locale)?e.locale:$e,o=d(r)?$e:r,c=m(e.fallbackLocale)||k(e.fallbackLocale)||p(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:o,a=k(e.messages)?e.messages:Ze(o),i=k(e.datetimeFormats)?e.datetimeFormats:Ze(o),f=k(e.numberFormats)?e.numberFormats:Ze(o),E=l(u(),e.modifiers,{upper:(e,t)=>"text"===t&&p(e)?e.toUpperCase():"vnode"===t&&T(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&p(e)?e.toLowerCase():"vnode"===t&&T(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&p(e)?Ve(e):"vnode"===t&&T(e)&&"__v_isVNode"in e?Ve(e.children):e}),_=e.pluralRules||u(),L=d(e.missing)?e.missing:null,A=!N(e.missingWarn)&&!s(e.missingWarn)||e.missingWarn,C=!N(e.fallbackWarn)&&!s(e.fallbackWarn)||e.fallbackWarn,h=!!e.fallbackFormat,O=!!e.unresolving,S=d(e.postTranslation)?e.postTranslation:null,g=k(e.processor)?e.processor:null,y=!N(e.warnHtmlMessage)||e.warnHtmlMessage,b=!!e.escapeParameter,P=d(e.messageCompiler)?e.messageCompiler:He,D=d(e.messageResolver)?e.messageResolver:Be||Te,M=d(e.localeFallbacker)?e.localeFallbacker:je||We,R=T(e.fallbackContext)?e.fallbackContext:void 0,U=e,v=T(U.__datetimeFormatters)?U.__datetimeFormatters:new Map,x=T(U.__numberFormatters)?U.__numberFormatters:new Map,F=T(U.__meta)?U.__meta:{};Je++;const w={version:n,cid:Je,locale:r,fallbackLocale:c,messages:a,modifiers:E,pluralRules:_,missing:L,missingWarn:A,fallbackWarn:C,fallbackFormat:h,unresolving:O,postTranslation:S,processor:g,warnHtmlMessage:y,escapeParameter:b,messageCompiler:P,messageResolver:D,localeFallbacker:M,fallbackContext:R,onWarn:t,__meta:F};return w.datetimeFormats=i,w.numberFormats=f,w.__datetimeFormatters=v,w.__numberFormatters=x,w},e.createCoreError=function(e){return b(e,null,void 0)},e.createMessageContext=Ie,e.datetime=function(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:o,onWarn:c,localeFallbacker:s}=e,{__datetimeFormatters:i}=e,[u,f,E,_]=mt(...t);N(E.missingWarn)?E.missingWarn:e.missingWarn,N(E.fallbackWarn)?E.fallbackWarn:e.fallbackWarn;const m=!!E.part,d=xe(e,E),T=s(e,o,d);if(!p(u)||""===u)return new Intl.DateTimeFormat(d,_).format(f);let L,A={},C=null;for(let a=0;a<T.length&&(L=T[a],A=n[L]||{},C=A[u],!k(C));a++)qe(e,u,L,0,"datetime format");if(!k(C)||!p(L))return r?-1:u;let h=`${L}__${u}`;a(_)||(h=`${h}__${JSON.stringify(_)}`);let O=i.get(h);return O||(O=new Intl.DateTimeFormat(L,l({},C,_)),i.set(h,O)),m?O.formatToParts(f):O.format(f)},e.fallbackWithLocaleChain=function(e,t,n){const r=p(n)?n:$e,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let c=o.__localeChainCache.get(r);if(!c){c=[];let e=[n];for(;m(e);)e=Xe(c,e,t);const s=m(t)||!k(t)?t:t.default?t.default:null;e=p(s)?[s]:s,m(e)&&Xe(c,e,!1),o.__localeChainCache.set(r,c)}return c},e.fallbackWithSimple=We,e.getAdditionalMeta=()=>ze,e.getDevToolsHook=function(){return Se},e.getFallbackContext=()=>Qe,e.getLocale=xe,e.getWarnMessage=function(e,...n){return function(e,...n){return 1===n.length&&T(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),e.replace(t,((e,t)=>n.hasOwnProperty(t)?n[t]:""))}(Me[e],...n)},e.handleMissing=qe,e.initI18nDevTools=function(e,t,n){Se&&Se.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})},e.isAlmostSameLocale=et,e.isImplicitFallback=tt,e.isMessageAST=Z,e.isMessageFunction=it,e.isTranslateFallbackWarn=function(e,t){return e instanceof RegExp?e.test(t):e},e.isTranslateMissingWarn=function(e,t){return e instanceof RegExp?e.test(t):e},e.number=function(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:o,onWarn:c,localeFallbacker:s}=e,{__numberFormatters:i}=e,[u,f,E,_]=pt(...t);N(E.missingWarn)?E.missingWarn:e.missingWarn,N(E.fallbackWarn)?E.fallbackWarn:e.fallbackWarn;const m=!!E.part,d=xe(e,E),T=s(e,o,d);if(!p(u)||""===u)return new Intl.NumberFormat(d,_).format(f);let L,A={},C=null;for(let a=0;a<T.length&&(L=T[a],A=n[L]||{},C=A[u],!k(C));a++)qe(e,u,L,0,"number format");if(!k(C)||!p(L))return r?-1:u;let h=`${L}__${u}`;a(_)||(h=`${h}__${JSON.stringify(_)}`);let O=i.get(h);return O||(O=new Intl.NumberFormat(L,l({},C,_)),i.set(h,O)),m?O.formatToParts(f):O.format(f)},e.parse=pe,e.parseDateTimeArgs=mt,e.parseNumberArgs=pt,e.parseTranslateArgs=Et,e.registerLocaleFallbacker=function(e){je=e},e.registerMessageCompiler=function(e){He=e},e.registerMessageResolver=function(e){Be=e},e.resolveLocale=we,e.resolveValue=function(e,t){if(!T(e))return null;let n=Ne.get(t);if(n||(n=pe(t),n&&Ne.set(t,n)),!n)return null;const r=n.length;let o=e,c=0;for(;c<r;){const e=n[c];if(ue.includes(e)&&Z(o))return null;const t=o[e];if(void 0===t)return null;if(d(o))return null;o=t,c++}return o},e.resolveWithKeyValue=Te,e.setAdditionalMeta=e=>{ze=e},e.setDevToolsHook=function(e){Se=e},e.setFallbackContext=e=>{Qe=e},e.translate=function(e,...t){const{fallbackFormat:n,postTranslation:r,unresolving:c,messageCompiler:s,fallbackLocale:a,messages:l}=e,[i,E]=Et(...t),_=N(E.missingWarn)?E.missingWarn:e.missingWarn,d=N(E.fallbackWarn)?E.fallbackWarn:e.fallbackWarn,L=N(E.escapeParameter)?E.escapeParameter:e.escapeParameter,A=!!E.resolvedMessage,C=p(E.default)||N(E.default)?N(E.default)?s?i:()=>i:E.default:n?s?i:()=>i:"",k=n||""!==C,h=xe(e,E);L&&function(e){m(e.list)?e.list=e.list.map((e=>p(e)?f(e):e)):T(e.named)&&Object.keys(e.named).forEach((t=>{p(e.named[t])&&(e.named[t]=f(e.named[t]))}))}(E);let[O,I,S]=A?[i,h,l[h]||u()]:ut(e,i,h,a,d,_),g=O,y=i;if(A||p(g)||Z(g)||it(g)||k&&(g=C,y=g),!(A||(p(g)||Z(g)||it(g))&&p(I)))return c?-1:i;let b=!1;const P=it(g)?g:ft(e,i,I,g,y,(()=>{b=!0}));if(b)return g;const D=function(e,t,n,r){const{modifiers:c,pluralRules:s,messageResolver:a,fallbackLocale:l,fallbackWarn:i,missingWarn:u,fallbackContext:f}=e,E=r=>{let o=a(n,r);if(null==o&&f){const[,,e]=ut(f,r,t,l,i,u);o=a(e,r)}if(p(o)||Z(o)){let n=!1;const c=ft(e,r,t,o,r,(()=>{n=!0}));return n?lt:c}return it(o)?o:lt},_={locale:t,modifiers:c,pluralRules:s,messages:E};e.processor&&(_.processor=e.processor);r.list&&(_.list=r.list);r.named&&(_.named=r.named);o(r.plural)&&(_.pluralIndex=r.plural);return _}(e,I,S,E),M=function(e,t,n){const r=t(n);return r}(0,P,Ie(D));return r?r(M,i):M},e.translateDevTools=ge,e.updateFallbackLocale=function(e,t,n){e.__localeChainCache=new Map,e.localeFallbacker(e,n,t)},e}({});
|
|
6
|
+
var IntlifyCoreBase=function(e){"use strict";function t(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const n=/\{([0-9a-zA-Z]+)\}/g;const r=(e,t,n)=>o({l:e,k:t,s:n}),o=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),c=e=>"number"==typeof e&&isFinite(e),s=e=>"[object Date]"===k(e),a=e=>"[object RegExp]"===k(e),l=e=>O(e)&&0===Object.keys(e).length,i=Object.assign,u=Object.create,f=(e=null)=>u(e);function E(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function _(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")}const m=Object.prototype.hasOwnProperty;function p(e,t){return m.call(e,t)}const d=Array.isArray,N=e=>"function"==typeof e,T=e=>"string"==typeof e,L=e=>"boolean"==typeof e,A=e=>null!==e&&"object"==typeof e,C=e=>A(e)&&N(e.then)&&N(e.catch),h=Object.prototype.toString,k=e=>h.call(e),O=e=>{if(!A(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t.constructor===Object};function g(e,t=""){return e.reduce(((e,n,r)=>0===r?e+n:e+t+n),"")}function I(e){let t=e;return()=>++t}function S(e,t,n){const r={start:e,end:t};return null!=n&&(r.source=n),r}const y={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2};const b={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17};function P(e,t,n={}){const{domain:r,messages:o,args:c}=n,s=new SyntaxError(String(e));return s.code=e,t&&(s.location=t),s.domain=r,s}function D(e){throw e}b.EXPECTED_TOKEN,b.INVALID_TOKEN_IN_PLACEHOLDER,b.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,b.UNKNOWN_ESCAPE_SEQUENCE,b.INVALID_UNICODE_ESCAPE_SEQUENCE,b.UNBALANCED_CLOSING_BRACE,b.UNTERMINATED_CLOSING_BRACE,b.EMPTY_PLACEHOLDER,b.NOT_ALLOW_NEST_PLACEHOLDER,b.INVALID_LINKED_FORMAT,b.MUST_HAVE_MESSAGES_IN_PLURAL,b.UNEXPECTED_EMPTY_LINKED_MODIFIER,b.UNEXPECTED_EMPTY_LINKED_KEY,b.UNEXPECTED_LEXICAL_ANALYSIS,b.UNHANDLED_CODEGEN_NODE_TYPE,b.UNHANDLED_MINIFIER_NODE_TYPE;const M=" ",R="\r",U="\n",v=String.fromCharCode(8232),x=String.fromCharCode(8233);function F(e){const t=e;let n=0,r=1,o=1,c=0;const s=e=>t[e]===R&&t[e+1]===U,a=e=>t[e]===x,l=e=>t[e]===v,i=e=>s(e)||(e=>t[e]===U)(e)||a(e)||l(e),u=e=>s(e)||a(e)||l(e)?U:t[e];function f(){return c=0,i(n)&&(r++,o=0),s(n)&&n++,n++,o++,t[n]}return{index:()=>n,line:()=>r,column:()=>o,peekOffset:()=>c,charAt:u,currentChar:()=>u(n),currentPeek:()=>u(n+c),next:f,peek:function(){return s(n+c)&&c++,c++,t[n+c]},reset:function(){n=0,r=1,o=1,c=0},resetPeek:function(e=0){c=e},skipToPeek:function(){const e=n+c;for(;e!==n;)f();c=0}}}const w=void 0,W="'";function X(e,t={}){const n=!1!==t.location,r=F(e),o=()=>r.index(),c=()=>{return e=r.line(),t=r.column(),n=r.index(),{line:e,column:t,offset:n};var e,t,n},s=c(),a=o(),l={currentType:14,offset:a,startLoc:s,endLoc:s,lastType:14,lastOffset:a,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},i=()=>l,{onError:u}=t;function f(e,t,r){e.endLoc=c(),e.currentType=t;const o={type:t};return n&&(o.loc=S(e.startLoc,e.endLoc)),null!=r&&(o.value=r),o}const E=e=>f(e,14);function _(e,t){return e.currentChar()===t?(e.next(),t):(b.EXPECTED_TOKEN,c(),"")}function m(e){let t="";for(;e.currentPeek()===M||e.currentPeek()===U;)t+=e.currentPeek(),e.peek();return t}function p(e){const t=m(e);return e.skipToPeek(),t}function d(e){if(e===w)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function N(e,t){const{currentType:n}=t;if(2!==n)return!1;m(e);const r=function(e){if(e===w)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),r}function T(e){m(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function L(e,t=!0){const n=(t=!1,r="",o=!1)=>{const c=e.currentPeek();return"{"===c?"%"!==r&&t:"@"!==c&&c?"%"===c?(e.peek(),n(t,"%",!0)):"|"===c?!("%"!==r&&!o)||!(r===M||r===U):c===M?(e.peek(),n(!0,M,o)):c!==U||(e.peek(),n(!0,U,o)):"%"===r||t},r=n();return t&&e.resetPeek(),r}function A(e,t){const n=e.currentChar();return n===w?w:t(n)?(e.next(),n):null}function C(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}function h(e){return A(e,C)}function k(e){const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t||45===t}function O(e){return A(e,k)}function g(e){const t=e.charCodeAt(0);return t>=48&&t<=57}function I(e){return A(e,g)}function y(e){const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function P(e){return A(e,y)}function D(e){let t="",n="";for(;t=I(e);)n+=t;return n}function R(e){let t="";for(;;){const n=e.currentChar();if("{"===n||"}"===n||"@"===n||"|"===n||!n)break;if("%"===n){if(!L(e))break;t+=n,e.next()}else if(n===M||n===U)if(L(e))t+=n,e.next();else{if(T(e))break;t+=n,e.next()}else t+=n,e.next()}return t}function v(e){return e!==W&&e!==U}function x(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return X(e,t,4);case"U":return X(e,t,6);default:return b.UNKNOWN_ESCAPE_SEQUENCE,c(),""}}function X(e,t,n){_(e,t);let r="";for(let o=0;o<n;o++){const t=P(e);if(!t){b.INVALID_UNICODE_ESCAPE_SEQUENCE,c(),e.currentChar();break}r+=t}return`\\${t}${r}`}function $(e){return"{"!==e&&"}"!==e&&e!==M&&e!==U}function Y(e){p(e);const t=_(e,"|");return p(e),t}function K(e,t){let n=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&(b.NOT_ALLOW_NEST_PLACEHOLDER,c()),e.next(),n=f(t,2,"{"),p(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&(b.EMPTY_PLACEHOLDER,c()),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&p(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&(b.UNTERMINATED_CLOSING_BRACE,c()),n=G(e,t)||E(t),t.braceNest=0,n;default:{let r=!0,o=!0,s=!0;if(T(e))return t.braceNest>0&&(b.UNTERMINATED_CLOSING_BRACE,c()),n=f(t,1,Y(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return b.UNTERMINATED_CLOSING_BRACE,c(),t.braceNest=0,V(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;m(e);const r=d(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,5,function(e){p(e);let t="",n="";for(;t=O(e);)n+=t;return e.currentChar()===w&&(b.UNTERMINATED_CLOSING_BRACE,c()),n}(e)),p(e),n;if(o=N(e,t))return n=f(t,6,function(e){p(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${D(e)}`):t+=D(e),e.currentChar()===w&&(b.UNTERMINATED_CLOSING_BRACE,c()),t}(e)),p(e),n;if(s=function(e,t){const{currentType:n}=t;if(2!==n)return!1;m(e);const r=e.currentPeek()===W;return e.resetPeek(),r}(e,t))return n=f(t,7,function(e){p(e),_(e,"'");let t="",n="";for(;t=A(e,v);)n+="\\"===t?x(e):t;const r=e.currentChar();return r===U||r===w?(b.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,c(),r===U&&(e.next(),_(e,"'")),n):(_(e,"'"),n)}(e)),p(e),n;if(!r&&!o&&!s)return n=f(t,13,function(e){p(e);let t="",n="";for(;t=A(e,$);)n+=t;return n}(e)),b.INVALID_TOKEN_IN_PLACEHOLDER,c(),n.value,p(e),n;break}}return n}function G(e,t){const{currentType:n}=t;let r=null;const o=e.currentChar();switch(8!==n&&9!==n&&12!==n&&10!==n||o!==U&&o!==M||(b.INVALID_LINKED_FORMAT,c()),o){case"@":return e.next(),r=f(t,8,"@"),t.inLinked=!0,r;case".":return p(e),e.next(),f(t,9,".");case":":return p(e),e.next(),f(t,10,":");default:return T(e)?(r=f(t,1,Y(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(8!==n)return!1;m(e);const r="."===e.currentPeek();return e.resetPeek(),r}(e,t)||function(e,t){const{currentType:n}=t;if(8!==n&&12!==n)return!1;m(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(p(e),G(e,t)):function(e,t){const{currentType:n}=t;if(9!==n)return!1;m(e);const r=d(e.currentPeek());return e.resetPeek(),r}(e,t)?(p(e),f(t,12,function(e){let t="",n="";for(;t=h(e);)n+=t;return n}(e))):function(e,t){const{currentType:n}=t;if(10!==n)return!1;const r=()=>{const t=e.currentPeek();return"{"===t?d(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||t===M||!t)&&(t===U?(e.peek(),r()):L(e,!1))},o=r();return e.resetPeek(),o}(e,t)?(p(e),"{"===o?K(e,t)||r:f(t,11,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"%"!==r&&"@"!==r&&"|"!==r&&"("!==r&&")"!==r&&r?r===M?n:(n+=r,e.next(),t(n)):n};return t("")}(e))):(8===n&&(b.INVALID_LINKED_FORMAT,c()),t.braceNest=0,t.inLinked=!1,V(e,t))}}function V(e,t){let n={type:14};if(t.braceNest>0)return K(e,t)||E(t);if(t.inLinked)return G(e,t)||E(t);switch(e.currentChar()){case"{":return K(e,t)||E(t);case"}":return b.UNBALANCED_CLOSING_BRACE,c(),e.next(),f(t,3,"}");case"@":return G(e,t)||E(t);default:{if(T(e))return n=f(t,1,Y(e)),t.braceNest=0,t.inLinked=!1,n;const{isModulo:r,hasSpace:o}=function(e){const t=m(e),n="%"===e.currentPeek()&&"{"===e.peek();return e.resetPeek(),{isModulo:n,hasSpace:t.length>0}}(e);if(r)return o?f(t,0,R(e)):f(t,4,function(e){p(e);const t=e.currentChar();return"%"!==t&&(b.EXPECTED_TOKEN,c()),e.next(),"%"}(e));if(L(e))return f(t,0,R(e));break}}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:s}=l;return l.lastType=e,l.lastOffset=t,l.lastStartLoc=n,l.lastEndLoc=s,l.offset=o(),l.startLoc=c(),r.currentChar()===w?f(l,14):V(r,l)},currentOffset:o,currentPosition:c,context:i}}const $=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Y(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const e=parseInt(t||n,16);return e<=55295||e>=57344?String.fromCodePoint(e):"�"}}}function K(e={}){const t=!1!==e.location,{onError:n,onWarn:r}=e;function o(e,n,r){const o={type:e};return t&&(o.start=n,o.end=n,o.loc={start:r,end:r}),o}function c(e,n,r,o){o&&(e.type=o),t&&(e.end=n,e.loc&&(e.loc.end=r))}function s(e,t){const n=e.context(),r=o(3,n.offset,n.startLoc);return r.value=t,c(r,e.currentOffset(),e.currentPosition()),r}function a(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:s}=n,a=o(5,r,s);return a.index=parseInt(t,10),e.nextToken(),c(a,e.currentOffset(),e.currentPosition()),a}function l(e,t,n){const r=e.context(),{lastOffset:s,lastStartLoc:a}=r,l=o(4,s,a);return l.key=t,!0===n&&(l.modulo=!0),e.nextToken(),c(l,e.currentOffset(),e.currentPosition()),l}function u(e,t){const n=e.context(),{lastOffset:r,lastStartLoc:s}=n,a=o(9,r,s);return a.value=t.replace($,Y),e.nextToken(),c(a,e.currentOffset(),e.currentPosition()),a}function f(e){const t=e.context(),n=o(6,t.offset,t.startLoc);let r=e.nextToken();if(9===r.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:r,lastStartLoc:s}=n,a=o(8,r,s);return 12!==t.type?(b.UNEXPECTED_EMPTY_LINKED_MODIFIER,n.lastStartLoc,a.value="",c(a,r,s),{nextConsumeToken:t,node:a}):(null==t.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,n.lastStartLoc,G(t)),a.value=t.value||"",c(a,e.currentOffset(),e.currentPosition()),{node:a})}(e);n.modifier=t.node,r=t.nextConsumeToken||e.nextToken()}switch(10!==r.type&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),r=e.nextToken(),2===r.type&&(r=e.nextToken()),r.type){case 11:null==r.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=function(e,t){const n=e.context(),r=o(7,n.offset,n.startLoc);return r.value=t,c(r,e.currentOffset(),e.currentPosition()),r}(e,r.value||"");break;case 5:null==r.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=l(e,r.value||"");break;case 6:null==r.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=a(e,r.value||"");break;case 7:null==r.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(r)),n.key=u(e,r.value||"");break;default:{b.UNEXPECTED_EMPTY_LINKED_KEY,t.lastStartLoc;const s=e.context(),a=o(7,s.offset,s.startLoc);return a.value="",c(a,s.offset,s.startLoc),n.key=a,c(n,s.offset,s.startLoc),{nextConsumeToken:r,node:n}}}return c(n,e.currentOffset(),e.currentPosition()),{node:n}}function E(e){const t=e.context(),n=o(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let r=null,i=null;do{const o=r||e.nextToken();switch(r=null,o.type){case 0:null==o.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(s(e,o.value||""));break;case 6:null==o.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(a(e,o.value||""));break;case 4:i=!0;break;case 5:null==o.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(l(e,o.value||"",!!i)),i&&(y.USE_MODULO_SYNTAX,t.lastStartLoc,G(o),i=null);break;case 7:null==o.value&&(b.UNEXPECTED_LEXICAL_ANALYSIS,t.lastStartLoc,G(o)),n.items.push(u(e,o.value||""));break;case 8:{const t=f(e);n.items.push(t.node),r=t.nextConsumeToken||null;break}}}while(14!==t.currentType&&1!==t.currentType);return c(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function _(e){const t=e.context(),{offset:n,startLoc:r}=t,s=E(e);return 14===t.currentType?s:function(e,t,n,r){const s=e.context();let a=0===r.items.length;const l=o(1,t,n);l.cases=[],l.cases.push(r);do{const t=E(e);a||(a=0===t.items.length),l.cases.push(t)}while(14!==s.currentType);return a&&b.MUST_HAVE_MESSAGES_IN_PLURAL,c(l,e.currentOffset(),e.currentPosition()),l}(e,n,r,s)}return{parse:function(n){const r=X(n,i({},e)),s=r.context(),a=o(0,s.offset,s.startLoc);return t&&a.loc&&(a.loc.source=n),a.body=_(r),e.onCacheKey&&(a.cacheKey=e.onCacheKey(n)),14!==s.currentType&&(b.UNEXPECTED_LEXICAL_ANALYSIS,s.lastStartLoc,n[s.offset]),c(a,r.currentOffset(),r.currentPosition()),a}}}function G(e){if(14===e.type)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function V(e,t){for(let n=0;n<e.length;n++)H(e[n],t)}function H(e,t){switch(e.type){case 1:V(e.cases,t),t.helper("plural");break;case 2:V(e.items,t);break;case 6:H(e.key,t),t.helper("linked"),t.helper("type");break;case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named")}}function B(e,t={}){const n=function(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:e=>(n.helpers.add(e),e)}}(e);n.helper("normalize"),e.body&&H(e.body,n);const r=n.context();e.helpers=Array.from(r.helpers)}function j(e){if(1===e.items.length){const t=e.items[0];3!==t.type&&9!==t.type||(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;n<e.items.length;n++){const r=e.items[n];if(3!==r.type&&9!==r.type)break;if(null==r.value)break;t.push(r.value)}if(t.length===e.items.length){e.static=g(t);for(let t=0;t<e.items.length;t++){const n=e.items[t];3!==n.type&&9!==n.type||delete n.value}}}}function z(e){switch(e.t=e.type,e.type){case 0:{const t=e;z(t.body),t.b=t.body,delete t.body;break}case 1:{const t=e,n=t.cases;for(let e=0;e<n.length;e++)z(n[e]);t.c=n,delete t.cases;break}case 2:{const t=e,n=t.items;for(let e=0;e<n.length;e++)z(n[e]);t.i=n,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{const t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{const t=e;z(t.key),t.k=t.key,delete t.key,t.modifier&&(z(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{const t=e;t.i=t.index,delete t.index;break}case 4:{const t=e;t.k=t.key,delete t.key;break}}delete e.type}function Q(e,t){const{helper:n}=e;switch(t.type){case 0:!function(e,t){t.body?Q(e,t.body):e.push("null")}(e,t);break;case 1:!function(e,t){const{helper:n,needIndent:r}=e;if(t.cases.length>1){e.push(`${n("plural")}([`),e.indent(r());const o=t.cases.length;for(let n=0;n<o&&(Q(e,t.cases[n]),n!==o-1);n++)e.push(", ");e.deindent(r()),e.push("])")}}(e,t);break;case 2:!function(e,t){const{helper:n,needIndent:r}=e;e.push(`${n("normalize")}([`),e.indent(r());const o=t.items.length;for(let c=0;c<o&&(Q(e,t.items[c]),c!==o-1);c++)e.push(", ");e.deindent(r()),e.push("])")}(e,t);break;case 6:!function(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),Q(e,t.key),t.modifier?(e.push(", "),Q(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}(e,t);break;case 8:case 7:case 9:case 3:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${n("interpolate")}(${n("list")}(${t.index}))`,t);break;case 4:e.push(`${n("interpolate")}(${n("named")}(${JSON.stringify(t.key)}))`,t)}}const J=(e,t={})=>{const n=T(t.mode)?t.mode:"normal",r=T(t.filename)?t.filename:"message.intl",o=!!t.sourceMap,c=null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",s=t.needIndent?t.needIndent:"arrow"!==n,a=e.helpers||[],l=function(e,t){const{sourceMap:n,filename:r,breakLineCode:o,needIndent:c}=t,s=!1!==t.location,a={filename:r,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:o,needIndent:c,indentLevel:0};function l(e,t){a.code+=e}function i(e,t=!0){const n=t?o:"";l(c?n+" ".repeat(e):n)}return s&&e.loc&&(a.source=e.loc.source),{context:()=>a,push:l,indent:function(e=!0){const t=++a.indentLevel;e&&i(t)},deindent:function(e=!0){const t=--a.indentLevel;e&&i(t)},newline:function(){i(a.indentLevel)},helper:e=>`_${e}`,needIndent:()=>a.needIndent}}(e,{mode:n,filename:r,sourceMap:o,breakLineCode:c,needIndent:s});l.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),l.indent(s),a.length>0&&(l.push(`const { ${g(a.map((e=>`${e}: _${e}`)),", ")} } = ctx`),l.newline()),l.push("return "),Q(l,e),l.deindent(s),l.push("}"),delete e.helpers;const{code:i,map:u}=l.context();return{ast:e,code:i,map:u?u.toJSON():void 0}};function Z(e,t={}){const n=i({},t),r=!!n.jit,o=!!n.minify,c=null==n.optimize||n.optimize,s=K(n).parse(e);return r?(c&&function(e){const t=e.body;2===t.type?j(t):t.cases.forEach((e=>j(e)))}(s),o&&z(s),{ast:s,code:""}):(B(s,n),J(s,n))}function q(e){return A(e)&&0===ce(e)&&(p(e,"b")||p(e,"body"))}const ee=["b","body"];const te=["c","cases"];const ne=["s","static"];const re=["i","items"];const oe=["t","type"];function ce(e){return ue(e,oe)}const se=["v","value"];function ae(e,t){const n=ue(e,se);if(null!=n)return n;throw Ee(t)}const le=["m","modifier"];const ie=["k","key"];function ue(e,t,n){for(let r=0;r<t.length;r++){const n=t[r];if(p(e,n)&&null!=e[n])return e[n]}return n}const fe=[...ee,...te,...ne,...re,...ie,...le,...se,...oe];function Ee(e){return new Error(`unhandled node type: ${e}`)}const _e=[];_e[0]={w:[0],i:[3,0],"[":[4],o:[7]},_e[1]={w:[1],".":[2],"[":[4],o:[7]},_e[2]={w:[2],i:[3,0],0:[3,0]},_e[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},_e[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},_e[5]={"'":[4,0],o:8,l:[5,0]},_e[6]={'"':[4,0],o:8,l:[6,0]};const me=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function pe(e){if(null==e)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function de(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(n=t,me.test(n)?function(e){const t=e.charCodeAt(0);return t!==e.charCodeAt(e.length-1)||34!==t&&39!==t?e:e.slice(1,-1)}(t):"*"+t);var n}function Ne(e){const t=[];let n,r,o,c,s,a,l,i=-1,u=0,f=0;const E=[];function _(){const t=e[i+1];if(5===u&&"'"===t||6===u&&'"'===t)return i++,o="\\"+t,E[0](),!0}for(E[0]=()=>{void 0===r?r=o:r+=o},E[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},E[2]=()=>{E[0](),f++},E[3]=()=>{if(f>0)f--,u=4,E[0]();else{if(f=0,void 0===r)return!1;if(r=de(r),!1===r)return!1;E[1]()}};null!==u;)if(i++,n=e[i],"\\"!==n||!_()){if(c=pe(n),l=_e[u],s=l[c]||l.l||8,8===s)return;if(u=s[0],void 0!==s[1]&&(a=E[s[1]],a&&(o=n,!1===a())))return;if(7===u)return t}}const Te=new Map;function Le(e,t){return A(e)?e[t]:null}const Ae=e=>e,Ce=e=>"",he="text",ke=e=>0===e.length?"":g(e),Oe=e=>null==e?"":d(e)||O(e)&&e.toString===h?JSON.stringify(e,null,2):String(e);function ge(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function Ie(e={}){const t=e.locale,n=function(e){const t=c(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(c(e.named.count)||c(e.named.n))?c(e.named.count)?e.named.count:c(e.named.n)?e.named.n:t:t}(e),r=A(e.pluralRules)&&T(t)&&N(e.pluralRules[t])?e.pluralRules[t]:ge,o=A(e.pluralRules)&&T(t)&&N(e.pluralRules[t])?ge:void 0,s=e.list||[],a=e.named||f();c(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,a);function l(t){const n=N(e.messages)?e.messages(t):!!A(e.messages)&&e.messages[t];return n||(e.parent?e.parent.message(t):Ce)}const u=O(e.processor)&&N(e.processor.normalize)?e.processor.normalize:ke,E=O(e.processor)&&N(e.processor.interpolate)?e.processor.interpolate:Oe,_={list:e=>s[e],named:e=>a[e],plural:e=>e[r(n,e.length,o)],linked:(t,...n)=>{const[r,o]=n;let c="text",s="";1===n.length?A(r)?(s=r.modifier||s,c=r.type||c):T(r)&&(s=r||s):2===n.length&&(T(r)&&(s=r||s),T(o)&&(c=o||c));const a=l(t)(_),i="vnode"===c&&d(a)&&s?a[0]:a;return s?(u=s,e.modifiers?e.modifiers[u]:Ae)(i,c):i;var u},message:l,type:O(e.processor)&&T(e.processor.type)?e.processor.type:he,interpolate:E,normalize:u,values:i(f(),s,a)};return _}let Se=null;const ye=be("function:translate");function be(e){return t=>Se&&Se.emit(e,t)}const Pe=y.__EXTEND_POINT__,De=I(Pe),Me={NOT_FOUND_KEY:Pe,FALLBACK_TO_TRANSLATE:De(),CANNOT_FORMAT_NUMBER:De(),FALLBACK_TO_NUMBER_FORMAT:De(),CANNOT_FORMAT_DATE:De(),FALLBACK_TO_DATE_FORMAT:De(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:De(),__EXTEND_POINT__:De()},Re={[Me.NOT_FOUND_KEY]:"Not found '{key}' key in '{locale}' locale messages.",[Me.FALLBACK_TO_TRANSLATE]:"Fall back to translate '{key}' key with '{target}' locale.",[Me.CANNOT_FORMAT_NUMBER]:"Cannot format a number value due to not supported Intl.NumberFormat.",[Me.FALLBACK_TO_NUMBER_FORMAT]:"Fall back to number format '{key}' key with '{target}' locale.",[Me.CANNOT_FORMAT_DATE]:"Cannot format a date value due to not supported Intl.DateTimeFormat.",[Me.FALLBACK_TO_DATE_FORMAT]:"Fall back to datetime format '{key}' key with '{target}' locale.",[Me.EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER]:"This project is using Custom Message Compiler, which is an experimental feature. It may receive breaking changes or be removed in the future."};const Ue=b.__EXTEND_POINT__,ve=I(Ue),xe={INVALID_ARGUMENT:Ue,INVALID_DATE_ARGUMENT:ve(),INVALID_ISO_DATE_ARGUMENT:ve(),NOT_SUPPORT_NON_STRING_MESSAGE:ve(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:ve(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:ve(),NOT_SUPPORT_LOCALE_TYPE:ve(),__EXTEND_POINT__:ve()};function Fe(e,t){return null!=t.locale?We(t.locale):We(e.locale)}let we;function We(e){if(T(e))return e;if(N(e)){if(e.resolvedOnce&&null!=we)return we;if("Function"===e.constructor.name){const t=e();if(C(t))throw Error(xe.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return we=t}throw Error(xe.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}throw Error(xe.NOT_SUPPORT_LOCALE_TYPE)}function Xe(e,t,n){return[...new Set([n,...d(t)?t:A(t)?Object.keys(t):T(t)?[t]:[n]])]}function $e(e,t,n){let r=!0;for(let o=0;o<t.length&&L(r);o++){const c=t[o];T(c)&&(r=Ye(e,t[o],n))}return r}function Ye(e,t,n){let r;const o=t.split("-");do{r=Ke(e,o.join("-"),n),o.splice(-1,1)}while(o.length&&!0===r);return r}function Ke(e,t,n){let r=!1;if(!e.includes(t)&&(r=!0,t)){r="!"!==t[t.length-1];const o=t.replace(/!/g,"");e.push(o),(d(n)||O(n))&&n[o]&&(r=n[o])}return r}xe.INVALID_ARGUMENT,xe.INVALID_DATE_ARGUMENT,xe.INVALID_ISO_DATE_ARGUMENT,xe.NOT_SUPPORT_NON_STRING_MESSAGE,xe.NOT_SUPPORT_LOCALE_PROMISE_VALUE,xe.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION,xe.NOT_SUPPORT_LOCALE_TYPE;const Ge="9.14.5",Ve="en-US",He=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;let Be,je,ze;let Qe=null;let Je=null;let Ze=0;const qe=e=>({[e]:f()});function et(e,t,n,r,o){const{missing:c,onWarn:s}=e;if(null!==c){const r=c(e,n,t,o);return T(r)?r:t}return t}function tt(e,t){return e!==t&&e.split("-")[0]===t.split("-")[0]}function nt(e,t){const n=t.indexOf(e);if(-1===n)return!1;for(let r=n+1;r<t.length;r++)if(tt(e,t[r]))return!0;return!1}function rt(e){return t=>function(e,t){const n=(r=t,ue(r,ee));var r;if(null==n)throw Ee(0);if(1===ce(n)){const t=function(e){return ue(e,te,[])}(n);return e.plural(t.reduce(((t,n)=>[...t,ot(e,n)]),[]))}return ot(e,n)}(t,e)}function ot(e,t){const n=function(e){return ue(e,ne)}(t);if(null!=n)return"text"===e.type?n:e.normalize([n]);{const n=function(e){return ue(e,re,[])}(t).reduce(((t,n)=>[...t,ct(e,n)]),[]);return e.normalize(n)}}function ct(e,t){const n=ce(t);switch(n){case 3:case 9:case 7:case 8:return ae(t,n);case 4:{const r=t;if(p(r,"k")&&r.k)return e.interpolate(e.named(r.k));if(p(r,"key")&&r.key)return e.interpolate(e.named(r.key));throw Ee(n)}case 5:{const r=t;if(p(r,"i")&&c(r.i))return e.interpolate(e.list(r.i));if(p(r,"index")&&c(r.index))return e.interpolate(e.list(r.index));throw Ee(n)}case 6:{const n=t,r=function(e){return ue(e,le)}(n),o=function(e){const t=ue(e,ie);if(t)return t;throw Ee(6)}(n);return e.linked(ct(e,o),r?ct(e,r):void 0,e.type)}default:throw new Error(`unhandled node on format message part: ${n}`)}}const st=e=>e;let at=f();function lt(e,t={}){let n=!1;const r=t.onError||D;return t.onError=e=>{n=!0,r(e)},{...Z(e,t),detectError:n}}const it=()=>"",ut=e=>N(e);function ft(e,t,n,r,o,c){const{messages:s,onWarn:a,messageResolver:l,localeFallbacker:i}=e,u=i(e,r,n);let E,_=f(),m=null;for(let p=0;p<u.length&&(E=u[p],_=s[E]||f(),null===(m=l(_,t))&&(m=_[t]),!(T(m)||q(m)||ut(m)));p++)if(!nt(E,u)){const n=et(e,t,E,0,"translate");n!==t&&(m=n)}return[m,E,_]}function Et(e,t,n,o,c,s){const{messageCompiler:a,warnHtmlMessage:l}=e;if(ut(o)){const e=o;return e.locale=e.locale||n,e.key=e.key||t,e}if(null==a){const e=()=>o;return e.locale=n,e.key=t,e}const i=a(o,function(e,t,n,o,c,s){return{locale:t,key:n,warnHtmlMessage:c,onError:e=>{throw s&&s(e),e},onCacheKey:e=>r(t,n,e)}}(0,n,c,0,l,s));return i.locale=n,i.key=t,i.source=o,i}function _t(...e){const[t,n,r]=e,o=f();if(!(T(t)||c(t)||ut(t)||q(t)))throw Error(xe.INVALID_ARGUMENT);const s=c(t)?String(t):(ut(t),t);return c(n)?o.plural=n:T(n)?o.default=n:O(n)&&!l(n)?o.named=n:d(n)&&(o.list=n),c(r)?o.plural=r:T(r)?o.default=r:O(r)&&i(o,r),[s,o]}const mt=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function pt(...e){const[t,n,r,o]=e,a=f();let l,i=f();if(T(t)){const e=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!e)throw Error(xe.INVALID_ISO_DATE_ARGUMENT);const n=e[3]?e[3].trim().startsWith("T")?`${e[1].trim()}${e[3].trim()}`:`${e[1].trim()}T${e[3].trim()}`:e[1].trim();l=new Date(n);try{l.toISOString()}catch(u){throw Error(xe.INVALID_ISO_DATE_ARGUMENT)}}else if(s(t)){if(isNaN(t.getTime()))throw Error(xe.INVALID_DATE_ARGUMENT);l=t}else{if(!c(t))throw Error(xe.INVALID_ARGUMENT);l=t}return T(n)?a.key=n:O(n)&&Object.keys(n).forEach((e=>{mt.includes(e)?i[e]=n[e]:a[e]=n[e]})),T(r)?a.locale=r:O(r)&&(i=r),O(o)&&(i=o),[a.key||"",l,a,i]}const dt=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function Nt(...e){const[t,n,r,o]=e,s=f();let a=f();if(!c(t))throw Error(xe.INVALID_ARGUMENT);const l=t;return T(n)?s.key=n:O(n)&&Object.keys(n).forEach((e=>{dt.includes(e)?a[e]=n[e]:s[e]=n[e]})),T(r)?s.locale=r:O(r)&&(a=r),O(o)&&(a=o),[s.key||"",l,s,a]}return e.AST_NODE_PROPS_KEYS=fe,e.CompileErrorCodes=b,e.CoreErrorCodes=xe,e.CoreWarnCodes=Me,e.DATETIME_FORMAT_OPTIONS_KEYS=mt,e.DEFAULT_LOCALE=Ve,e.DEFAULT_MESSAGE_DATA_TYPE=he,e.MISSING_RESOLVE_VALUE="",e.NOT_REOSLVED=-1,e.NUMBER_FORMAT_OPTIONS_KEYS=dt,e.VERSION=Ge,e.clearCompileCache=function(){at=f()},e.clearDateTimeFormat=function(e,t,n){const r=e;for(const o in n){const e=`${t}__${o}`;r.__datetimeFormatters.has(e)&&r.__datetimeFormatters.delete(e)}},e.clearNumberFormat=function(e,t,n){const r=e;for(const o in n){const e=`${t}__${o}`;r.__numberFormatters.has(e)&&r.__numberFormatters.delete(e)}},e.compile=function(e,t){if(T(e)){!L(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||st)(e),r=at[n];if(r)return r;const{ast:o,detectError:c}=lt(e,{...t,location:!1,jit:!0}),s=rt(o);return c?s:at[n]=s}{const t=e.cacheKey;if(t){const n=at[t];return n||(at[t]=rt(e))}return rt(e)}},e.compileToFunction=(e,t)=>{if(!T(e))throw Error(xe.NOT_SUPPORT_NON_STRING_MESSAGE);{!L(t.warnHtmlMessage)||t.warnHtmlMessage;const n=(t.onCacheKey||st)(e),r=at[n];if(r)return r;const{code:o,detectError:c}=lt(e,t),s=new Function(`return ${o}`)();return c?s:at[n]=s}},e.createCompileError=P,e.createCoreContext=function(e={}){const n=N(e.onWarn)?e.onWarn:t,r=T(e.version)?e.version:Ge,o=T(e.locale)||N(e.locale)?e.locale:Ve,c=N(o)?Ve:o,s=d(e.fallbackLocale)||O(e.fallbackLocale)||T(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:c,l=O(e.messages)?e.messages:qe(c),u=O(e.datetimeFormats)?e.datetimeFormats:qe(c),E=O(e.numberFormats)?e.numberFormats:qe(c),_=i(f(),e.modifiers,{upper:(e,t)=>"text"===t&&T(e)?e.toUpperCase():"vnode"===t&&A(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>"text"===t&&T(e)?e.toLowerCase():"vnode"===t&&A(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>"text"===t&&T(e)?He(e):"vnode"===t&&A(e)&&"__v_isVNode"in e?He(e.children):e}),m=e.pluralRules||f(),p=N(e.missing)?e.missing:null,C=!L(e.missingWarn)&&!a(e.missingWarn)||e.missingWarn,h=!L(e.fallbackWarn)&&!a(e.fallbackWarn)||e.fallbackWarn,k=!!e.fallbackFormat,g=!!e.unresolving,I=N(e.postTranslation)?e.postTranslation:null,S=O(e.processor)?e.processor:null,y=!L(e.warnHtmlMessage)||e.warnHtmlMessage,b=!!e.escapeParameter,P=N(e.messageCompiler)?e.messageCompiler:Be,D=N(e.messageResolver)?e.messageResolver:je||Le,M=N(e.localeFallbacker)?e.localeFallbacker:ze||Xe,R=A(e.fallbackContext)?e.fallbackContext:void 0,U=e,v=A(U.__datetimeFormatters)?U.__datetimeFormatters:new Map,x=A(U.__numberFormatters)?U.__numberFormatters:new Map,F=A(U.__meta)?U.__meta:{};Ze++;const w={version:r,cid:Ze,locale:o,fallbackLocale:s,messages:l,modifiers:_,pluralRules:m,missing:p,missingWarn:C,fallbackWarn:h,fallbackFormat:k,unresolving:g,postTranslation:I,processor:S,warnHtmlMessage:y,escapeParameter:b,messageCompiler:P,messageResolver:D,localeFallbacker:M,fallbackContext:R,onWarn:n,__meta:F};return w.datetimeFormats=u,w.numberFormats=E,w.__datetimeFormatters=v,w.__numberFormatters=x,w},e.createCoreError=function(e){return P(e,null,void 0)},e.createMessageContext=Ie,e.datetime=function(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:o,onWarn:c,localeFallbacker:s}=e,{__datetimeFormatters:a}=e,[u,f,E,_]=pt(...t);L(E.missingWarn)?E.missingWarn:e.missingWarn,L(E.fallbackWarn)?E.fallbackWarn:e.fallbackWarn;const m=!!E.part,p=Fe(e,E),d=s(e,o,p);if(!T(u)||""===u)return new Intl.DateTimeFormat(p,_).format(f);let N,A={},C=null;for(let l=0;l<d.length&&(N=d[l],A=n[N]||{},C=A[u],!O(C));l++)et(e,u,N,0,"datetime format");if(!O(C)||!T(N))return r?-1:u;let h=`${N}__${u}`;l(_)||(h=`${h}__${JSON.stringify(_)}`);let k=a.get(h);return k||(k=new Intl.DateTimeFormat(N,i({},C,_)),a.set(h,k)),m?k.formatToParts(f):k.format(f)},e.fallbackWithLocaleChain=function(e,t,n){const r=T(n)?n:Ve,o=e;o.__localeChainCache||(o.__localeChainCache=new Map);let c=o.__localeChainCache.get(r);if(!c){c=[];let e=[n];for(;d(e);)e=$e(c,e,t);const s=d(t)||!O(t)?t:t.default?t.default:null;e=T(s)?[s]:s,d(e)&&$e(c,e,!1),o.__localeChainCache.set(r,c)}return c},e.fallbackWithSimple=Xe,e.getAdditionalMeta=()=>Qe,e.getDevToolsHook=function(){return Se},e.getFallbackContext=()=>Je,e.getLocale=Fe,e.getWarnMessage=function(e,...t){return function(e,...t){return 1===t.length&&A(t[0])&&(t=t[0]),t&&t.hasOwnProperty||(t={}),e.replace(n,((e,n)=>t.hasOwnProperty(n)?t[n]:""))}(Re[e],...t)},e.handleMissing=et,e.initI18nDevTools=function(e,t,n){Se&&Se.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})},e.isAlmostSameLocale=tt,e.isImplicitFallback=nt,e.isMessageAST=q,e.isMessageFunction=ut,e.isTranslateFallbackWarn=function(e,t){return e instanceof RegExp?e.test(t):e},e.isTranslateMissingWarn=function(e,t){return e instanceof RegExp?e.test(t):e},e.number=function(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:o,onWarn:c,localeFallbacker:s}=e,{__numberFormatters:a}=e,[u,f,E,_]=Nt(...t);L(E.missingWarn)?E.missingWarn:e.missingWarn,L(E.fallbackWarn)?E.fallbackWarn:e.fallbackWarn;const m=!!E.part,p=Fe(e,E),d=s(e,o,p);if(!T(u)||""===u)return new Intl.NumberFormat(p,_).format(f);let N,A={},C=null;for(let l=0;l<d.length&&(N=d[l],A=n[N]||{},C=A[u],!O(C));l++)et(e,u,N,0,"number format");if(!O(C)||!T(N))return r?-1:u;let h=`${N}__${u}`;l(_)||(h=`${h}__${JSON.stringify(_)}`);let k=a.get(h);return k||(k=new Intl.NumberFormat(N,i({},C,_)),a.set(h,k)),m?k.formatToParts(f):k.format(f)},e.parse=Ne,e.parseDateTimeArgs=pt,e.parseNumberArgs=Nt,e.parseTranslateArgs=_t,e.registerLocaleFallbacker=function(e){ze=e},e.registerMessageCompiler=function(e){Be=e},e.registerMessageResolver=function(e){je=e},e.resolveLocale=We,e.resolveValue=function(e,t){if(!A(e))return null;let n=Te.get(t);if(n||(n=Ne(t),n&&Te.set(t,n)),!n)return null;const r=n.length;let o=e,c=0;for(;c<r;){const e=n[c];if(fe.includes(e)&&q(o))return null;const t=o[e];if(void 0===t)return null;if(N(o))return null;o=t,c++}return o},e.resolveWithKeyValue=Le,e.setAdditionalMeta=e=>{Qe=e},e.setDevToolsHook=function(e){Se=e},e.setFallbackContext=e=>{Je=e},e.translate=function(e,...t){const{fallbackFormat:n,postTranslation:r,unresolving:o,messageCompiler:s,fallbackLocale:a,messages:l}=e,[i,u]=_t(...t),m=L(u.missingWarn)?u.missingWarn:e.missingWarn,p=L(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,N=L(u.escapeParameter)?u.escapeParameter:e.escapeParameter,C=!!u.resolvedMessage,h=T(u.default)||L(u.default)?L(u.default)?s?i:()=>i:u.default:n?s?i:()=>i:"",k=n||""!==h,O=Fe(e,u);N&&function(e){d(e.list)?e.list=e.list.map((e=>T(e)?E(e):e)):A(e.named)&&Object.keys(e.named).forEach((t=>{T(e.named[t])&&(e.named[t]=E(e.named[t]))}))}(u);let[g,I,S]=C?[i,O,l[O]||f()]:ft(e,i,O,a,p,m),y=g,b=i;if(C||T(y)||q(y)||ut(y)||k&&(y=h,b=y),!(C||(T(y)||q(y)||ut(y))&&T(I)))return o?-1:i;let P=!1;const D=ut(y)?y:Et(e,i,I,y,b,(()=>{P=!0}));if(P)return y;const M=function(e,t,n,r){const{modifiers:o,pluralRules:s,messageResolver:a,fallbackLocale:l,fallbackWarn:i,missingWarn:u,fallbackContext:f}=e,E=r=>{let o=a(n,r);if(null==o&&f){const[,,e]=ft(f,r,t,l,i,u);o=a(e,r)}if(T(o)||q(o)){let n=!1;const c=Et(e,r,t,o,r,(()=>{n=!0}));return n?it:c}return ut(o)?o:it},_={locale:t,modifiers:o,pluralRules:s,messages:E};e.processor&&(_.processor=e.processor);r.list&&(_.list=r.list);r.named&&(_.named=r.named);c(r.plural)&&(_.pluralIndex=r.plural);return _}(e,I,S,u),R=function(e,t,n){const r=t(n);return r}(0,D,Ie(M));let U=r?r(R,i):R;var v;return N&&T(U)&&(v=(v=(v=U).replace(/(\w+)\s*=\s*"([^"]*)"/g,((e,t,n)=>`${t}="${_(n)}"`))).replace(/(\w+)\s*=\s*'([^']*)'/g,((e,t,n)=>`${t}='${_(n)}'`)),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(v)&&(v=v.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach((e=>{v=v.replace(e,"$1javascript:")})),U=v),U},e.translateDevTools=ye,e.updateFallbackLocale=function(e,t,n){e.__localeChainCache=new Map,e.localeFallbacker(e,n,t)},e}({});
|
package/dist/core-base.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* core-base v9.14.
|
|
2
|
+
* core-base v9.14.5
|
|
3
3
|
* (c) 2025 kazuya kawaguchi
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
|
-
import { getGlobalThis, isObject, hasOwn, isFunction, isString, create, isNumber, isPlainObject, assign, join, toDisplayString, isArray, incrementer, format as format$1, isPromise, isBoolean, warn, isRegExp, warnOnce, escapeHtml, inBrowser, mark, measure, isEmptyObject, generateCodeFrame, generateFormatCacheKey, isDate } from '@intlify/shared';
|
|
6
|
+
import { getGlobalThis, isObject, hasOwn, isFunction, isString, create, isNumber, isPlainObject, assign, join, toDisplayString, isArray, incrementer, format as format$1, isPromise, isBoolean, warn, isRegExp, warnOnce, sanitizeTranslatedHtml, escapeHtml, inBrowser, mark, measure, isEmptyObject, generateCodeFrame, generateFormatCacheKey, isDate } from '@intlify/shared';
|
|
7
7
|
import { CompileWarnCodes, CompileErrorCodes, createCompileError, detectHtmlTag, defaultOnError, baseCompile as baseCompile$1 } from '@intlify/message-compiler';
|
|
8
8
|
export { CompileErrorCodes, createCompileError } from '@intlify/message-compiler';
|
|
9
9
|
|
|
@@ -733,7 +733,7 @@ function appendItemToChain(chain, target, blocks) {
|
|
|
733
733
|
* Intlify core-base version
|
|
734
734
|
* @internal
|
|
735
735
|
*/
|
|
736
|
-
const VERSION = '9.14.
|
|
736
|
+
const VERSION = '9.14.5';
|
|
737
737
|
const NOT_REOSLVED = -1;
|
|
738
738
|
const DEFAULT_LOCALE = 'en-US';
|
|
739
739
|
const MISSING_RESOLVE_VALUE = '';
|
|
@@ -1270,9 +1270,13 @@ function translate(context, ...args) {
|
|
|
1270
1270
|
const msgContext = createMessageContext(ctxOptions);
|
|
1271
1271
|
const messaged = evaluateMessage(context, msg, msgContext);
|
|
1272
1272
|
// if use post translation option, proceed it with handler
|
|
1273
|
-
|
|
1273
|
+
let ret = postTranslation
|
|
1274
1274
|
? postTranslation(messaged, key)
|
|
1275
1275
|
: messaged;
|
|
1276
|
+
// apply HTML sanitization for security
|
|
1277
|
+
if (escapeParameter && isString(ret)) {
|
|
1278
|
+
ret = sanitizeTranslatedHtml(ret);
|
|
1279
|
+
}
|
|
1276
1280
|
// NOTE: experimental !!
|
|
1277
1281
|
if ((process.env.NODE_ENV !== 'production') || __INTLIFY_PROD_DEVTOOLS__) {
|
|
1278
1282
|
// prettier-ignore
|
package/dist/core-base.prod.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* core-base v9.14.
|
|
2
|
+
* core-base v9.14.5
|
|
3
3
|
* (c) 2025 kazuya kawaguchi
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -718,7 +718,7 @@ function appendItemToChain(chain, target, blocks) {
|
|
|
718
718
|
* Intlify core-base version
|
|
719
719
|
* @internal
|
|
720
720
|
*/
|
|
721
|
-
const VERSION = '9.14.
|
|
721
|
+
const VERSION = '9.14.5';
|
|
722
722
|
const NOT_REOSLVED = -1;
|
|
723
723
|
const DEFAULT_LOCALE = 'en-US';
|
|
724
724
|
const MISSING_RESOLVE_VALUE = '';
|
|
@@ -1186,9 +1186,13 @@ function translate(context, ...args) {
|
|
|
1186
1186
|
const msgContext = createMessageContext(ctxOptions);
|
|
1187
1187
|
const messaged = evaluateMessage(context, msg, msgContext);
|
|
1188
1188
|
// if use post translation option, proceed it with handler
|
|
1189
|
-
|
|
1189
|
+
let ret = postTranslation
|
|
1190
1190
|
? postTranslation(messaged, key)
|
|
1191
1191
|
: messaged;
|
|
1192
|
+
// apply HTML sanitization for security
|
|
1193
|
+
if (escapeParameter && shared.isString(ret)) {
|
|
1194
|
+
ret = shared.sanitizeTranslatedHtml(ret);
|
|
1195
|
+
}
|
|
1192
1196
|
return ret;
|
|
1193
1197
|
}
|
|
1194
1198
|
function escapeParams(options) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intlify/core-base",
|
|
3
|
-
"version": "9.14.
|
|
3
|
+
"version": "9.14.5",
|
|
4
4
|
"description": "@intlify/core-base",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"core",
|
|
@@ -33,12 +33,12 @@
|
|
|
33
33
|
"jsdelivr": "dist/core-base.global.js",
|
|
34
34
|
"types": "dist/core-base.d.ts",
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@intlify/
|
|
37
|
-
"@intlify/
|
|
36
|
+
"@intlify/shared": "9.14.5",
|
|
37
|
+
"@intlify/message-compiler": "9.14.5"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@intlify/
|
|
41
|
-
"@intlify/devtools
|
|
40
|
+
"@intlify/devtools-if": "9.14.5",
|
|
41
|
+
"@intlify/vue-devtools": "9.14.5"
|
|
42
42
|
},
|
|
43
43
|
"engines": {
|
|
44
44
|
"node": ">= 16"
|