@intlify/core-base
Advanced tools
Comparing version 9.1.6 to 9.2.0-alpha.1
/*! | ||
* @intlify/core-base v9.1.6 | ||
* @intlify/core-base v9.2.0-alpha.1 | ||
* (c) 2021 kazuya kawaguchi | ||
@@ -38,10 +38,19 @@ * Released under the MIT License. | ||
const CoreWarnCodes = { | ||
NOT_FOUND_KEY: 1, | ||
FALLBACK_TO_TRANSLATE: 2, | ||
CANNOT_FORMAT_NUMBER: 3, | ||
FALLBACK_TO_NUMBER_FORMAT: 4, | ||
CANNOT_FORMAT_DATE: 5, | ||
FALLBACK_TO_DATE_FORMAT: 6, | ||
__EXTEND_POINT__: 7 | ||
}; | ||
/** @internal */ | ||
const warnMessages = { | ||
[0 /* NOT_FOUND_KEY */]: `Not found '{key}' key in '{locale}' locale messages.`, | ||
[1 /* FALLBACK_TO_TRANSLATE */]: `Fall back to translate '{key}' key with '{target}' locale.`, | ||
[2 /* CANNOT_FORMAT_NUMBER */]: `Cannot format a number value due to not supported Intl.NumberFormat.`, | ||
[3 /* FALLBACK_TO_NUMBER_FORMAT */]: `Fall back to number format '{key}' key with '{target}' locale.`, | ||
[4 /* CANNOT_FORMAT_DATE */]: `Cannot format a date value due to not supported Intl.DateTimeFormat.`, | ||
[5 /* FALLBACK_TO_DATE_FORMAT */]: `Fall back to datetime format '{key}' key with '{target}' locale.` | ||
[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.` | ||
}; | ||
@@ -52,2 +61,3 @@ function getWarnMessage(code, ...args) { | ||
/* eslint-disable @typescript-eslint/no-explicit-any */ | ||
/** | ||
@@ -57,3 +67,3 @@ * Intlify core-base version | ||
*/ | ||
const VERSION = '9.1.6'; | ||
const VERSION = '9.2.0-alpha.1'; | ||
const NOT_REOSLVED = -1; | ||
@@ -124,2 +134,5 @@ const MISSING_RESOLVE_VALUE = ''; | ||
: _compiler; | ||
const messageResolver$1 = shared.isFunction(options.messageResolver) | ||
? options.messageResolver | ||
: messageResolver.resolveValue; | ||
const onWarn = shared.isFunction(options.onWarn) ? options.onWarn : shared.warn; | ||
@@ -156,2 +169,3 @@ // setup internal options | ||
messageCompiler, | ||
messageResolver: messageResolver$1, | ||
onWarn, | ||
@@ -204,3 +218,3 @@ __datetimeFormatters, | ||
if (isTranslateMissingWarn(missingWarn, key)) { | ||
onWarn(getWarnMessage(0 /* NOT_FOUND_KEY */, { key, locale })); | ||
onWarn(getWarnMessage(CoreWarnCodes.NOT_FOUND_KEY, { key, locale })); | ||
} | ||
@@ -227,9 +241,7 @@ return key; | ||
// last block defined by default | ||
const defaults = shared.isArray(fallback) | ||
const defaults = shared.isArray(fallback) || !shared.isPlainObject(fallback) | ||
? fallback | ||
: shared.isPlainObject(fallback) | ||
: fallback['default'] | ||
? fallback['default'] | ||
? fallback['default'] | ||
: null | ||
: fallback; | ||
: null; | ||
// convert defaults to array | ||
@@ -288,2 +300,3 @@ block = shared.isString(defaults) ? [defaults] : defaults; | ||
} | ||
/* eslint-enable @typescript-eslint/no-explicit-any */ | ||
@@ -332,2 +345,8 @@ const RE_HTML_TAG = /<\/?[\w\s="/.':;#-\/]+>/; | ||
const CoreErrorCodes = { | ||
INVALID_ARGUMENT: messageCompiler.CompileErrorCodes.__EXTEND_POINT__, | ||
INVALID_DATE_ARGUMENT: messageCompiler.CompileErrorCodes.__EXTEND_POINT__ + 1, | ||
INVALID_ISO_DATE_ARGUMENT: messageCompiler.CompileErrorCodes.__EXTEND_POINT__ + 2, | ||
__EXTEND_POINT__: messageCompiler.CompileErrorCodes.__EXTEND_POINT__ + 3 | ||
}; | ||
function createCoreError(code) { | ||
@@ -338,6 +357,6 @@ return messageCompiler.createCompileError(code, null, { messages: errorMessages } ); | ||
const errorMessages = { | ||
[14 /* INVALID_ARGUMENT */]: 'Invalid arguments', | ||
[15 /* INVALID_DATE_ARGUMENT */]: 'The date provided is an invalid Date object.' + | ||
[CoreErrorCodes.INVALID_ARGUMENT]: 'Invalid arguments', | ||
[CoreErrorCodes.INVALID_DATE_ARGUMENT]: 'The date provided is an invalid Date object.' + | ||
'Make sure your Date represents a valid date.', | ||
[16 /* INVALID_ISO_DATE_ARGUMENT */]: 'The argument provided is not a valid ISO date string' | ||
[CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT]: 'The argument provided is not a valid ISO date string' | ||
}; | ||
@@ -461,4 +480,4 @@ | ||
function resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn) { | ||
const { messages, onWarn } = context; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const { messages, onWarn, messageResolver: resolveValue } = context; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
let message = {}; | ||
@@ -474,3 +493,3 @@ let targetLocale; | ||
isTranslateFallbackWarn(fallbackWarn, key)) { | ||
onWarn(getWarnMessage(1 /* FALLBACK_TO_TRANSLATE */, { | ||
onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_TRANSLATE, { | ||
key, | ||
@@ -505,3 +524,3 @@ target: targetLocale | ||
} | ||
if ((format = messageResolver.resolveValue(message, key)) === null) { | ||
if ((format = resolveValue(message, key)) === null) { | ||
// if null, resolve with object key path | ||
@@ -530,3 +549,4 @@ format = message[key]; // eslint-disable-line @typescript-eslint/no-explicit-any | ||
break; | ||
const missingRet = handleMissing(context, key, targetLocale, missingWarn, type); | ||
const missingRet = handleMissing(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
key, targetLocale, missingWarn, type); | ||
if (missingRet !== key) { | ||
@@ -616,3 +636,3 @@ format = missingRet; | ||
if (!shared.isString(arg1) && !shared.isNumber(arg1) && !isMessageFunction(arg1)) { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -675,5 +695,5 @@ // prettier-ignore | ||
function getMessageContextOptions(context, locale, message, options) { | ||
const { modifiers, pluralRules } = context; | ||
const { modifiers, pluralRules, messageResolver: resolveValue } = context; | ||
const resolveMessage = (key) => { | ||
const val = messageResolver.resolveValue(message, key); | ||
const val = resolveValue(message, key); | ||
if (shared.isString(val)) { | ||
@@ -729,3 +749,3 @@ let occurred = false; | ||
if (!Availabilities.dateTimeFormat) { | ||
onWarn(getWarnMessage(4 /* CANNOT_FORMAT_DATE */)); | ||
onWarn(getWarnMessage(CoreWarnCodes.CANNOT_FORMAT_DATE)); | ||
return MISSING_RESOLVE_VALUE; | ||
@@ -742,3 +762,4 @@ } | ||
const locale = shared.isString(options.locale) ? options.locale : context.locale; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const locales = getLocaleChain(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
fallbackLocale, locale); | ||
if (!shared.isString(key) || key === '') { | ||
@@ -758,3 +779,3 @@ return new Intl.DateTimeFormat(locale).format(value); | ||
isTranslateFallbackWarn(fallbackWarn, key)) { | ||
onWarn(getWarnMessage(5 /* FALLBACK_TO_DATE_FORMAT */, { | ||
onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_DATE_FORMAT, { | ||
key, | ||
@@ -782,3 +803,3 @@ target: targetLocale | ||
break; | ||
handleMissing(context, key, targetLocale, missingWarn, type); | ||
handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
from = to; | ||
@@ -811,3 +832,3 @@ } | ||
if (!/\d{4}-\d{2}-\d{2}(T.*)?/.test(arg1)) { | ||
throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT); | ||
} | ||
@@ -820,3 +841,3 @@ value = new Date(arg1); | ||
catch (e) { | ||
throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT); | ||
} | ||
@@ -826,3 +847,3 @@ } | ||
if (isNaN(arg1.getTime())) { | ||
throw createCoreError(15 /* INVALID_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_DATE_ARGUMENT); | ||
} | ||
@@ -835,3 +856,3 @@ value = arg1; | ||
else { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -872,3 +893,3 @@ if (shared.isString(arg2)) { | ||
if (!Availabilities.numberFormat) { | ||
onWarn(getWarnMessage(2 /* CANNOT_FORMAT_NUMBER */)); | ||
onWarn(getWarnMessage(CoreWarnCodes.CANNOT_FORMAT_NUMBER)); | ||
return MISSING_RESOLVE_VALUE; | ||
@@ -885,3 +906,4 @@ } | ||
const locale = shared.isString(options.locale) ? options.locale : context.locale; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const locales = getLocaleChain(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
fallbackLocale, locale); | ||
if (!shared.isString(key) || key === '') { | ||
@@ -901,3 +923,3 @@ return new Intl.NumberFormat(locale).format(value); | ||
isTranslateFallbackWarn(fallbackWarn, key)) { | ||
onWarn(getWarnMessage(3 /* FALLBACK_TO_NUMBER_FORMAT */, { | ||
onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT, { | ||
key, | ||
@@ -925,3 +947,3 @@ target: targetLocale | ||
break; | ||
handleMissing(context, key, targetLocale, missingWarn, type); | ||
handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
from = to; | ||
@@ -950,3 +972,3 @@ } | ||
if (!shared.isNumber(arg1)) { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -983,3 +1005,6 @@ const value = arg1; | ||
exports.CompileErrorCodes = messageCompiler.CompileErrorCodes; | ||
exports.createCompileError = messageCompiler.createCompileError; | ||
exports.CoreErrorCodes = CoreErrorCodes; | ||
exports.CoreWarnCodes = CoreWarnCodes; | ||
exports.MISSING_RESOLVE_VALUE = MISSING_RESOLVE_VALUE; | ||
@@ -986,0 +1011,0 @@ exports.NOT_REOSLVED = NOT_REOSLVED; |
/*! | ||
* @intlify/core-base v9.1.6 | ||
* @intlify/core-base v9.2.0-alpha.1 | ||
* (c) 2021 kazuya kawaguchi | ||
@@ -38,10 +38,19 @@ * Released under the MIT License. | ||
const CoreWarnCodes = { | ||
NOT_FOUND_KEY: 1, | ||
FALLBACK_TO_TRANSLATE: 2, | ||
CANNOT_FORMAT_NUMBER: 3, | ||
FALLBACK_TO_NUMBER_FORMAT: 4, | ||
CANNOT_FORMAT_DATE: 5, | ||
FALLBACK_TO_DATE_FORMAT: 6, | ||
__EXTEND_POINT__: 7 | ||
}; | ||
/** @internal */ | ||
const warnMessages = { | ||
[0 /* NOT_FOUND_KEY */]: `Not found '{key}' key in '{locale}' locale messages.`, | ||
[1 /* FALLBACK_TO_TRANSLATE */]: `Fall back to translate '{key}' key with '{target}' locale.`, | ||
[2 /* CANNOT_FORMAT_NUMBER */]: `Cannot format a number value due to not supported Intl.NumberFormat.`, | ||
[3 /* FALLBACK_TO_NUMBER_FORMAT */]: `Fall back to number format '{key}' key with '{target}' locale.`, | ||
[4 /* CANNOT_FORMAT_DATE */]: `Cannot format a date value due to not supported Intl.DateTimeFormat.`, | ||
[5 /* FALLBACK_TO_DATE_FORMAT */]: `Fall back to datetime format '{key}' key with '{target}' locale.` | ||
[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.` | ||
}; | ||
@@ -52,2 +61,3 @@ function getWarnMessage(code, ...args) { | ||
/* eslint-disable @typescript-eslint/no-explicit-any */ | ||
/** | ||
@@ -57,3 +67,3 @@ * Intlify core-base version | ||
*/ | ||
const VERSION = '9.1.6'; | ||
const VERSION = '9.2.0-alpha.1'; | ||
const NOT_REOSLVED = -1; | ||
@@ -124,2 +134,5 @@ const MISSING_RESOLVE_VALUE = ''; | ||
: _compiler; | ||
const messageResolver$1 = shared.isFunction(options.messageResolver) | ||
? options.messageResolver | ||
: messageResolver.resolveValue; | ||
const onWarn = shared.isFunction(options.onWarn) ? options.onWarn : shared.warn; | ||
@@ -156,2 +169,3 @@ // setup internal options | ||
messageCompiler, | ||
messageResolver: messageResolver$1, | ||
onWarn, | ||
@@ -200,9 +214,7 @@ __datetimeFormatters, | ||
// last block defined by default | ||
const defaults = shared.isArray(fallback) | ||
const defaults = shared.isArray(fallback) || !shared.isPlainObject(fallback) | ||
? fallback | ||
: shared.isPlainObject(fallback) | ||
: fallback['default'] | ||
? fallback['default'] | ||
? fallback['default'] | ||
: null | ||
: fallback; | ||
: null; | ||
// convert defaults to array | ||
@@ -261,2 +273,3 @@ block = shared.isString(defaults) ? [defaults] : defaults; | ||
} | ||
/* eslint-enable @typescript-eslint/no-explicit-any */ | ||
@@ -293,2 +306,8 @@ const defaultOnCacheKey = (source) => source; | ||
const CoreErrorCodes = { | ||
INVALID_ARGUMENT: messageCompiler.CompileErrorCodes.__EXTEND_POINT__, | ||
INVALID_DATE_ARGUMENT: messageCompiler.CompileErrorCodes.__EXTEND_POINT__ + 1, | ||
INVALID_ISO_DATE_ARGUMENT: messageCompiler.CompileErrorCodes.__EXTEND_POINT__ + 2, | ||
__EXTEND_POINT__: messageCompiler.CompileErrorCodes.__EXTEND_POINT__ + 3 | ||
}; | ||
function createCoreError(code) { | ||
@@ -384,4 +403,4 @@ return messageCompiler.createCompileError(code, null, undefined); | ||
function resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn) { | ||
const { messages, onWarn } = context; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const { messages, onWarn, messageResolver: resolveValue } = context; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
let message = {}; | ||
@@ -395,3 +414,3 @@ let targetLocale; | ||
messages[targetLocale] || {}; | ||
if ((format = messageResolver.resolveValue(message, key)) === null) { | ||
if ((format = resolveValue(message, key)) === null) { | ||
// if null, resolve with object key path | ||
@@ -402,3 +421,4 @@ format = message[key]; // eslint-disable-line @typescript-eslint/no-explicit-any | ||
break; | ||
const missingRet = handleMissing(context, key, targetLocale, missingWarn, type); | ||
const missingRet = handleMissing(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
key, targetLocale, missingWarn, type); | ||
if (missingRet !== key) { | ||
@@ -433,3 +453,3 @@ format = missingRet; | ||
if (!shared.isString(arg1) && !shared.isNumber(arg1) && !isMessageFunction(arg1)) { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -478,5 +498,5 @@ // prettier-ignore | ||
function getMessageContextOptions(context, locale, message, options) { | ||
const { modifiers, pluralRules } = context; | ||
const { modifiers, pluralRules, messageResolver: resolveValue } = context; | ||
const resolveMessage = (key) => { | ||
const val = messageResolver.resolveValue(message, key); | ||
const val = resolveValue(message, key); | ||
if (shared.isString(val)) { | ||
@@ -534,3 +554,4 @@ let occurred = false; | ||
const locale = shared.isString(options.locale) ? options.locale : context.locale; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const locales = getLocaleChain(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
fallbackLocale, locale); | ||
if (!shared.isString(key) || key === '') { | ||
@@ -551,3 +572,3 @@ return new Intl.DateTimeFormat(locale).format(value); | ||
break; | ||
handleMissing(context, key, targetLocale, missingWarn, type); | ||
handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
} | ||
@@ -579,3 +600,3 @@ // checking format and target locale | ||
if (!/\d{4}-\d{2}-\d{2}(T.*)?/.test(arg1)) { | ||
throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT); | ||
} | ||
@@ -588,3 +609,3 @@ value = new Date(arg1); | ||
catch (e) { | ||
throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT); | ||
} | ||
@@ -594,3 +615,3 @@ } | ||
if (isNaN(arg1.getTime())) { | ||
throw createCoreError(15 /* INVALID_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_DATE_ARGUMENT); | ||
} | ||
@@ -603,3 +624,3 @@ value = arg1; | ||
else { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -648,3 +669,4 @@ if (shared.isString(arg2)) { | ||
const locale = shared.isString(options.locale) ? options.locale : context.locale; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const locales = getLocaleChain(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
fallbackLocale, locale); | ||
if (!shared.isString(key) || key === '') { | ||
@@ -665,3 +687,3 @@ return new Intl.NumberFormat(locale).format(value); | ||
break; | ||
handleMissing(context, key, targetLocale, missingWarn, type); | ||
handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
} | ||
@@ -689,3 +711,3 @@ // checking format and target locale | ||
if (!shared.isNumber(arg1)) { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -722,3 +744,6 @@ const value = arg1; | ||
exports.CompileErrorCodes = messageCompiler.CompileErrorCodes; | ||
exports.createCompileError = messageCompiler.createCompileError; | ||
exports.CoreErrorCodes = CoreErrorCodes; | ||
exports.CoreWarnCodes = CoreWarnCodes; | ||
exports.MISSING_RESOLVE_VALUE = MISSING_RESOLVE_VALUE; | ||
@@ -725,0 +750,0 @@ exports.NOT_REOSLVED = NOT_REOSLVED; |
@@ -14,2 +14,3 @@ import { CompileError } from '@intlify/message-compiler'; | ||
import type { MessageProcessor } from '@intlify/runtime'; | ||
import type { MessageResolver } from '@intlify/message-resolver'; | ||
import type { MessageType } from '@intlify/runtime'; | ||
@@ -21,2 +22,6 @@ import type { NamedValue } from '@intlify/runtime'; | ||
declare type __ResourceFormatPath<T, Key extends keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}` : never : never; | ||
declare type __ResourcePath<T, Key extends keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}.${__ResourcePath<T[Key], Exclude<keyof T[Key], keyof any[]>> & string}` | `${Key}.${Exclude<keyof T[Key], keyof any[]> & string}` : never : never; | ||
export declare function clearCompileCache(): void; | ||
@@ -32,7 +37,7 @@ | ||
export declare interface CoreCommonContext<Message = string> { | ||
export declare interface CoreCommonContext<Message = string, Locales = 'en-US'> { | ||
cid: number; | ||
version: string; | ||
locale: Locale; | ||
fallbackLocale: FallbackLocale; | ||
locale: Locales; | ||
fallbackLocale: FallbackLocales<Locales>; | ||
missing: CoreMissingHandler<Message> | null; | ||
@@ -46,7 +51,8 @@ missingWarn: boolean | RegExp; | ||
export declare interface CoreContext<Messages = {}, DateTimeFormats = {}, NumberFormats = {}, Message = string> extends CoreTranslationContext<Messages, Message>, CoreDateTimeContext<DateTimeFormats, Message>, CoreNumberContext<NumberFormats, Message> { | ||
} | ||
export declare type CoreContext<Message = string, Messages = {}, DateTimeFormats = {}, NumberFormats = {}, ResourceLocales = PickupLocales<NonNullable<Messages>> | PickupLocales<NonNullable<DateTimeFormats>> | PickupLocales<NonNullable<NumberFormats>>, Locales = [ResourceLocales] extends [never] ? Locale : ResourceLocales> = CoreCommonContext<Message, Locales> & CoreTranslationContext<NonNullable<Messages>, Message> & CoreDateTimeContext<NonNullable<DateTimeFormats>> & CoreNumberContext<NonNullable<NumberFormats>>; | ||
export declare interface CoreDateTimeContext<DateTimeFormats = {}, Message = string> extends CoreCommonContext<Message> { | ||
datetimeFormats: DateTimeFormats; | ||
export declare interface CoreDateTimeContext<DateTimeFormats = {}> { | ||
datetimeFormats: { | ||
[K in keyof DateTimeFormats]: DateTimeFormats[K]; | ||
}; | ||
} | ||
@@ -58,9 +64,11 @@ | ||
export declare const enum CoreErrorCodes { | ||
INVALID_ARGUMENT = 14, | ||
INVALID_DATE_ARGUMENT = 15, | ||
INVALID_ISO_DATE_ARGUMENT = 16, | ||
__EXTEND_POINT__ = 17 | ||
} | ||
export declare const CoreErrorCodes: { | ||
readonly INVALID_ARGUMENT: 15; | ||
readonly INVALID_DATE_ARGUMENT: number; | ||
readonly INVALID_ISO_DATE_ARGUMENT: number; | ||
readonly __EXTEND_POINT__: number; | ||
}; | ||
export declare type CoreErrorCodes = typeof CoreErrorCodes[keyof typeof CoreErrorCodes]; | ||
export declare interface CoreInternalContext { | ||
@@ -81,15 +89,47 @@ __datetimeFormatters: Map<string, Intl.DateTimeFormat>; | ||
export declare type CoreMissingHandler<Message = string> = (context: CoreCommonContext<Message>, locale: Locale, key: Path, type: CoreMissingType, ...values: unknown[]) => string | void; | ||
export declare type CoreMissingHandler<Message = string> = (context: CoreContext<Message>, locale: Locale, key: Path, type: CoreMissingType, ...values: unknown[]) => string | void; | ||
export declare interface CoreNumberContext<NumberFormats = {}, Message = string> extends CoreCommonContext<Message> { | ||
numberFormats: NumberFormats; | ||
export declare interface CoreNumberContext<NumberFormats = {}> { | ||
numberFormats: { | ||
[K in keyof NumberFormats]: NumberFormats[K]; | ||
}; | ||
} | ||
export declare interface CoreOptions<Message = string> { | ||
export declare interface CoreOptions<Message = string, Schema extends { | ||
message?: unknown; | ||
datetime?: unknown; | ||
number?: unknown; | ||
} = { | ||
message: LocaleMessage<Message>; | ||
datetime: DateTimeFormat; | ||
number: NumberFormat; | ||
}, Locales extends { | ||
messages: unknown; | ||
datetimeFormats: unknown; | ||
numberFormats: unknown; | ||
} | string = Locale, MessagesLocales = Locales extends { | ||
messages: infer M; | ||
} ? M : Locales extends string ? Locales : Locale, DateTimeFormatsLocales = Locales extends { | ||
datetimeFormats: infer D; | ||
} ? D : Locales extends string ? Locales : Locale, NumberFormatsLocales = Locales extends { | ||
numberFormats: infer N; | ||
} ? N : Locales extends string ? Locales : Locale, MessageSchema = Schema extends { | ||
message: infer M; | ||
} ? M : LocaleMessage<Message>, DateTimeSchema = Schema extends { | ||
datetime: infer D; | ||
} ? D : DateTimeFormat, NumberSchema = Schema extends { | ||
number: infer N; | ||
} ? N : NumberFormat, _Messages extends LocaleMessages<MessageSchema, MessagesLocales, Message> = LocaleMessages<MessageSchema, MessagesLocales, Message>, _DateTimeFormats extends DateTimeFormats<DateTimeSchema, DateTimeFormatsLocales> = DateTimeFormats<DateTimeSchema, DateTimeFormatsLocales>, _NumberFormats extends NumberFormats<NumberSchema, NumberFormatsLocales> = NumberFormats<NumberSchema, NumberFormatsLocales>> { | ||
version?: string; | ||
locale?: Locale; | ||
fallbackLocale?: FallbackLocale; | ||
messages?: LocaleMessages<Message>; | ||
datetimeFormats?: DateTimeFormats; | ||
numberFormats?: NumberFormats; | ||
messages?: { | ||
[K in keyof _Messages]: MessageSchema; | ||
}; | ||
datetimeFormats?: { | ||
[K in keyof _DateTimeFormats]: DateTimeSchema; | ||
}; | ||
numberFormats?: { | ||
[K in keyof _NumberFormats]: NumberSchema; | ||
}; | ||
modifiers?: LinkedModifiers<Message>; | ||
@@ -107,7 +147,10 @@ pluralRules?: PluralizationRules; | ||
messageCompiler?: MessageCompiler<Message>; | ||
messageResolver?: MessageResolver; | ||
onWarn?: (msg: string, err?: Error) => void; | ||
} | ||
export declare interface CoreTranslationContext<Messages = {}, Message = string> extends CoreCommonContext<Message> { | ||
messages: Messages; | ||
export declare interface CoreTranslationContext<Messages = {}, Message = string> { | ||
messages: { | ||
[K in keyof Messages]: Messages[K]; | ||
}; | ||
modifiers: LinkedModifiers<Message>; | ||
@@ -120,17 +163,22 @@ pluralRules?: PluralizationRules; | ||
messageCompiler: MessageCompiler<Message> | null; | ||
messageResolver: MessageResolver; | ||
} | ||
export declare const enum CoreWarnCodes { | ||
NOT_FOUND_KEY = 0, | ||
FALLBACK_TO_TRANSLATE = 1, | ||
CANNOT_FORMAT_NUMBER = 2, | ||
FALLBACK_TO_NUMBER_FORMAT = 3, | ||
CANNOT_FORMAT_DATE = 4, | ||
FALLBACK_TO_DATE_FORMAT = 5, | ||
__EXTEND_POINT__ = 6 | ||
} | ||
export declare const CoreWarnCodes: { | ||
readonly NOT_FOUND_KEY: 1; | ||
readonly FALLBACK_TO_TRANSLATE: 2; | ||
readonly CANNOT_FORMAT_NUMBER: 3; | ||
readonly FALLBACK_TO_NUMBER_FORMAT: 4; | ||
readonly CANNOT_FORMAT_DATE: 5; | ||
readonly FALLBACK_TO_DATE_FORMAT: 6; | ||
readonly __EXTEND_POINT__: 7; | ||
}; | ||
export declare type CoreWarnCodes = typeof CoreWarnCodes[keyof typeof CoreWarnCodes]; | ||
export { createCompileError } | ||
export declare function createCoreContext<Message = string, Options extends CoreOptions<Message> = object, Messages extends Record<keyof Options['messages'], LocaleMessageDictionary<Message>> = Record<keyof Options['messages'], LocaleMessageDictionary<Message>>, DateTimeFormats extends Record<keyof Options['datetimeFormats'], DateTimeFormat> = Record<keyof Options['datetimeFormats'], DateTimeFormat>, NumberFormats extends Record<keyof Options['numberFormats'], NumberFormat> = Record<keyof Options['numberFormats'], NumberFormat>>(options?: Options): CoreContext<Options['messages'], Options['datetimeFormats'], Options['numberFormats'], Message>; | ||
export declare function createCoreContext<Message = string, Options extends CoreOptions<Message> = CoreOptions<Message>, Messages = Options['messages'] extends object ? Options['messages'] : {}, DateTimeFormats = Options['datetimeFormats'] extends object ? Options['datetimeFormats'] : {}, NumberFormats = Options['numberFormats'] extends object ? Options['numberFormats'] : {}>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats>; | ||
export declare function createCoreContext<Schema = LocaleMessage, Locales = 'en-US', Message = string, Options extends CoreOptions<Message, SchemaParams<Schema, Message>, LocaleParams<Locales>> = CoreOptions<Message, SchemaParams<Schema, Message>, LocaleParams<Locales>>, Messages = Options['messages'] extends object ? Options['messages'] : {}, DateTimeFormats = Options['datetimeFormats'] extends object ? Options['datetimeFormats'] : {}, NumberFormats = Options['numberFormats'] extends object ? Options['numberFormats'] : {}>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats>; | ||
export declare function createCoreError(code: CoreErrorCodes): CoreError; | ||
@@ -151,11 +199,14 @@ | ||
export declare function datetime<DateTimeFormats, Message = string>(context: CoreDateTimeContext<DateTimeFormats, Message>, value: number | Date): string | number | Intl.DateTimeFormatPart[]; | ||
/** | ||
* `datetime` function overloads | ||
*/ | ||
export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, Message = string>(context: Context, value: number | string | Date): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<DateTimeFormats, Message = string>(context: CoreDateTimeContext<DateTimeFormats, Message>, value: number | Date, key: string): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<DateTimeFormats, Message = string>(context: CoreDateTimeContext<DateTimeFormats, Message>, value: number | Date, key: string, locale: Locale): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale']): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<DateTimeFormats, Message = string>(context: CoreDateTimeContext<DateTimeFormats, Message>, value: number | Date, options: DateTimeOptions): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>, override: Intl.DateTimeFormatOptions): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<DateTimeFormats, Message = string>(context: CoreDateTimeContext<DateTimeFormats, Message>, ...args: unknown[]): string | number | Intl.DateTimeFormatPart[]; | ||
export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale'], override: Intl.DateTimeFormatOptions): string | number | Intl.DateTimeFormatPart[]; | ||
@@ -170,5 +221,3 @@ export declare type DateTimeDigital = 'numeric' | '2-digit'; | ||
export declare type DateTimeFormats = { | ||
[locale: string]: DateTimeFormat; | ||
}; | ||
export declare type DateTimeFormats<Schema = DateTimeFormat, Locales = Locale> = LocaleRecord<UnionToTuple<Locales>, Schema>; | ||
@@ -227,3 +276,3 @@ /** | ||
*/ | ||
export declare interface DateTimeOptions { | ||
export declare interface DateTimeOptions<Key = string, Locales = Locale> { | ||
/** | ||
@@ -233,3 +282,3 @@ * @remarks | ||
*/ | ||
key?: string; | ||
key?: Key; | ||
/** | ||
@@ -239,3 +288,3 @@ * @remarks | ||
*/ | ||
locale?: Locale; | ||
locale?: Locales; | ||
/** | ||
@@ -258,2 +307,8 @@ * @remarks | ||
export declare type FallbackLocales<Locales = 'en-US'> = Locales | Array<Locales> | { | ||
[locale in string]: Array<PickupFallbackLocales<UnionToTuple<Locales>>>; | ||
} | false; | ||
export declare type First<T extends readonly any[]> = T[0]; | ||
export declare type FormatMatcher = 'basic' | 'best fit'; | ||
@@ -286,19 +341,55 @@ | ||
export declare type IsUnion<T, B = T> = T extends B ? [B] extends [T] ? false : true : never; | ||
export declare type LastInUnion<U> = UnionToIntersection<U extends unknown ? (x: U) => 0 : never> extends (x: infer L) => 0 ? L : never; | ||
export declare type LocaleMatcher = 'lookup' | 'best fit'; | ||
/** @VueI18nGeneral */ | ||
export declare interface LocaleMessageArray<Message = string> extends Array<LocaleMessageValue<Message>> { | ||
} | ||
export declare type LocaleMessage<Message = string> = Record<string, LocaleMessageValue<Message>>; | ||
/** @VueI18nGeneral */ | ||
export declare type LocaleMessageDictionary<Message = string> = { | ||
[property: string]: LocaleMessageValue<Message>; | ||
export declare type LocaleMessageDictionary<T, Message = string> = { | ||
[K in keyof T]: LocaleMessageType<T[K], Message>; | ||
}; | ||
/** @VueI18nGeneral */ | ||
export declare type LocaleMessages<Message = string> = Record<Locale, LocaleMessageDictionary<Message>>; | ||
export declare type LocaleMessages<Schema, Locales = Locale, Message = string> = LocaleRecord<UnionToTuple<Locales>, Schema>; | ||
/** @VueI18nGeneral */ | ||
export declare type LocaleMessageValue<Message = string> = string | MessageFunction<Message> | LocaleMessageDictionary<Message> | LocaleMessageArray<Message>; | ||
export declare type LocaleMessageType<T, Message = string> = T extends string ? string : T extends () => Promise<infer P> ? LocaleMessageDictionary<P, Message> : T extends (...args: infer Arguments) => any ? (...args: Arguments) => ReturnType<T> : T extends Record<string, any> ? LocaleMessageDictionary<T, Message> : T extends Array<T> ? { | ||
[K in keyof T]: T[K]; | ||
} : T; | ||
/** @VueI18nGeneral */ | ||
export declare type LocaleMessageValue<Message = string> = LocaleMessageDictionary<any, Message> | string; | ||
export declare type LocaleParams<T, Default = 'en-US'> = T extends IsUnion<T> ? { | ||
messages: T; | ||
datetimeFormats: T; | ||
numberFormats: T; | ||
} : T extends { | ||
messages?: infer M; | ||
datetimeFormats?: infer D; | ||
numberFormats?: infer N; | ||
} ? { | ||
messages: LocaleParamsType<M, Default>; | ||
datetimeFormats: LocaleParamsType<D, Default>; | ||
numberFormats: LocaleParamsType<N, Default>; | ||
} : T extends string ? { | ||
messages: T; | ||
datetimeFormats: T; | ||
numberFormats: T; | ||
} : { | ||
messages: Default; | ||
datetimeFormats: Default; | ||
numberFormats: Default; | ||
}; | ||
declare type LocaleParamsType<T, R> = T extends IsUnion<T> ? T : T extends string ? T : R; | ||
export declare type LocaleRecord<T extends any[], R> = { | ||
[K in T[number]]: R; | ||
}; | ||
export declare type MessageCompiler<Message = string> = (source: string, options?: CompileOptions) => MessageFunction<Message>; | ||
@@ -314,11 +405,14 @@ | ||
export declare function number<NumberFormats, Message = string>(context: CoreNumberContext<NumberFormats, Message>, value: number): string | number | Intl.NumberFormatPart[]; | ||
/** | ||
* `number` function overloads | ||
*/ | ||
export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, Message = string>(context: Context, value: number): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<NumberFormats, Message = string>(context: CoreNumberContext<NumberFormats, Message>, value: number, key: string): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<NumberFormats, Message = string>(context: CoreNumberContext<NumberFormats, Message>, value: number, key: string, locale: Locale): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale']): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<NumberFormats, Message = string>(context: CoreNumberContext<NumberFormats, Message>, value: number, options: NumberOptions): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>, override: Intl.NumberFormatOptions): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<NumberFormats, Message = string>(context: CoreNumberContext<NumberFormats, Message>, ...args: unknown[]): string | number | Intl.NumberFormatPart[]; | ||
export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale'], override: Intl.NumberFormatOptions): string | number | Intl.NumberFormatPart[]; | ||
@@ -331,5 +425,3 @@ export declare type NumberFormat = { | ||
export declare type NumberFormats = { | ||
[locale: string]: NumberFormat; | ||
}; | ||
export declare type NumberFormats<Schema = NumberFormat, Locales = Locale> = LocaleRecord<UnionToTuple<Locales>, Schema>; | ||
@@ -386,3 +478,3 @@ export declare type NumberFormatToPartsResult = { | ||
*/ | ||
export declare interface NumberOptions { | ||
export declare interface NumberOptions<Key = string, Locales = Locale> { | ||
/** | ||
@@ -392,3 +484,3 @@ * @remarks | ||
*/ | ||
key?: string; | ||
key?: Key; | ||
/** | ||
@@ -398,3 +490,3 @@ * @remarks | ||
*/ | ||
locale?: Locale; | ||
locale?: Locales; | ||
/** | ||
@@ -423,2 +515,10 @@ * @remarks | ||
export declare type PickupFallbackLocales<T extends any[]> = T[number] | `${T[number]}!`; | ||
export declare type PickupFormatKeys<T extends Record<string, any>, K = keyof T> = K extends string ? ResourceFormatPath<T[K]> : never; | ||
export declare type PickupKeys<T extends Record<string, any>, K = keyof T> = K extends string ? ResourcePath<T[K]> : never; | ||
export declare type PickupLocales<T extends Record<string, any>, K = keyof T> = K extends string ? K : never; | ||
/** @VueI18nGeneral */ | ||
@@ -429,2 +529,30 @@ export declare type PostTranslationHandler<Message = string> = (translated: MessageType<Message>) => MessageType<Message>; | ||
export declare type ResourceFormatPath<T> = _ResourceFormatPath<T> extends string | keyof T ? _ResourceFormatPath<T> : keyof T; | ||
declare type _ResourceFormatPath<T> = __ResourceFormatPath<T, keyof T> | keyof T; | ||
export declare type ResourcePath<T> = _ResourcePath<T> extends string | keyof T ? _ResourcePath<T> : keyof T; | ||
declare type _ResourcePath<T> = __ResourcePath<T, keyof T> | keyof T; | ||
export declare type ResourceValue<T, P extends ResourcePath<T>> = P extends `${infer Key}.${infer Rest}` ? Key extends keyof T ? Rest extends ResourcePath<T[Key]> ? ResourceValue<T[Key], Rest> : never : never : P extends keyof T ? T[P] : never; | ||
export declare type SchemaParams<T, Message = string> = T extends readonly any[] ? { | ||
message: First<T>; | ||
datetime: DateTimeFormat; | ||
number: NumberFormat; | ||
} : T extends { | ||
message?: infer M; | ||
datetime?: infer D; | ||
number?: infer N; | ||
} ? { | ||
message: M extends LocaleMessage<Message> ? M : LocaleMessage<Message>; | ||
datetime: D extends DateTimeFormat ? D : DateTimeFormat; | ||
number: N extends NumberFormat ? N : NumberFormat; | ||
} : { | ||
message: LocaleMessage<Message>; | ||
datetime: DateTimeFormat; | ||
number: NumberFormat; | ||
}; | ||
export declare const setAdditionalMeta: (meta: MetaInfo | null) => void; | ||
@@ -456,36 +584,31 @@ | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number): MessageType<Message> | number; | ||
/** | ||
* `translate` function overloads | ||
*/ | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, plural: number): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, plural: number, options: TranslateOptions): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number, options: TranslateOptions<Context['locale']>): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, message: MessageFunction<Message> | string, plural: number, options: TranslateOptions): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, defaultMsg: string): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string, options: TranslateOptions<Context['locale']>): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, defaultMsg: string, options: TranslateOptions): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[]): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, list: unknown[]): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], plural: number): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, list: unknown[], plural: number): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], defaultMsg: string): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, list: unknown[], defaultMsg: string): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], options: TranslateOptions<Context['locale']>): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, list: unknown[], options: TranslateOptions): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, message: MessageFunction<Message> | string, list: unknown[], options: TranslateOptions): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, plural: number): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, named: NamedValue): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, defaultMsg: string): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, named: NamedValue, plural: number): MessageType<Message> | number; | ||
export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, options: TranslateOptions<Context['locale']>): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, named: NamedValue, defaultMsg: string): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, key: Path | number, named: NamedValue, options: TranslateOptions): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, message: MessageFunction<Message> | string, named: NamedValue, options: TranslateOptions): MessageType<Message> | number; | ||
export declare function translate<Messages, Message = string>(context: CoreTranslationContext<Messages, Message>, ...args: unknown[]): MessageType<Message> | number; | ||
export declare const translateDevTools: (payloads: IntlifyDevToolsHookPayloads[IntlifyDevToolsHooks]) => void | null; | ||
@@ -544,3 +667,3 @@ | ||
*/ | ||
export declare interface TranslateOptions { | ||
export declare interface TranslateOptions<Locales = Locale> { | ||
/** | ||
@@ -570,3 +693,3 @@ * @remarks | ||
*/ | ||
locale?: Locale; | ||
locale?: Locales; | ||
/** | ||
@@ -594,2 +717,6 @@ * @remarks | ||
export declare type UnionToIntersection<U> = (U extends any ? (arg: U) => void : never) extends (arg: infer I) => void ? I : never; | ||
export declare type UnionToTuple<U, Last = LastInUnion<U>> = [U] extends [never] ? [] : [...UnionToTuple<Exclude<U, Last>>, Last]; | ||
/* Excluded from this release type: updateFallbackLocale */ | ||
@@ -596,0 +723,0 @@ |
/*! | ||
* @intlify/core-base v9.1.6 | ||
* @intlify/core-base v9.2.0-alpha.1 | ||
* (c) 2021 kazuya kawaguchi | ||
* Released under the MIT License. | ||
*/ | ||
const e=/\{([0-9a-zA-Z]+)\}/g;const t=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),n=e=>"number"==typeof e&&isFinite(e),r=e=>"[object RegExp]"===k(e),o=e=>g(e)&&0===Object.keys(e).length;function c(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const s=Object.assign;function a(e){return e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}const u=Object.prototype.hasOwnProperty;function l(e,t){return u.call(e,t)}const i=Array.isArray,f=e=>"function"==typeof e,p=e=>"string"==typeof e,m=e=>"boolean"==typeof e,d=e=>null!==e&&"object"==typeof e,h=Object.prototype.toString,k=e=>h.call(e),g=e=>"[object Object]"===k(e),b=[];b[0]={w:[0],i:[3,0],"[":[4],o:[7]},b[1]={w:[1],".":[2],"[":[4],o:[7]},b[2]={w:[2],i:[3,0],0:[3,0]},b[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},b[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},b[5]={"'":[4,0],o:8,l:[5,0]},b[6]={'"':[4,0],o:8,l:[6,0]};const y=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function x(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 w(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(y.test(t)?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)}function C(e){const t=[];let n,r,o,c,s,a,u,l=-1,i=0,f=0;const p=[];function m(){const t=e[l+1];if(5===i&&"'"===t||6===i&&'"'===t)return l++,o="\\"+t,p[0](),!0}for(p[0]=()=>{void 0===r?r=o:r+=o},p[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},p[2]=()=>{p[0](),f++},p[3]=()=>{if(f>0)f--,i=4,p[0]();else{if(f=0,void 0===r)return!1;if(r=w(r),!1===r)return!1;p[1]()}};null!==i;)if(l++,n=e[l],"\\"!==n||!m()){if(c=x(n),u=b[i],s=u[c]||u.l||8,8===s)return;if(i=s[0],void 0!==s[1]&&(a=p[s[1]],a&&(o=n,!1===a())))return;if(7===i)return t}}const _=new Map;function v(e,t){if(!d(e))return null;let n=_.get(t);if(n||(n=C(t),n&&_.set(t,n)),!n)return null;const r=n.length;let o=e,c=0;for(;c<r;){const e=o[n[c]];if(void 0===e)return null;o=e,c++}return o}function L(e){if(!d(e))return e;for(const t in e)if(l(e,t))if(t.includes(".")){const n=t.split("."),r=n.length-1;let o=e;for(let e=0;e<r;e++)n[e]in o||(o[n[e]]={}),o=o[n[e]];o[n[r]]=e[t],delete e[t],d(o[n[r]])&&L(o[n[r]])}else d(e[t])&&L(e[t]);return e}const T=e=>e,P=e=>"",O="text",F=e=>0===e.length?"":e.join(""),N=e=>null==e?"":i(e)||g(e)&&e.toString===h?JSON.stringify(e,null,2):String(e);function $(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function S(e={}){const t=e.locale,r=function(e){const t=n(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(n(e.named.count)||n(e.named.n))?n(e.named.count)?e.named.count:n(e.named.n)?e.named.n:t:t}(e),o=d(e.pluralRules)&&p(t)&&f(e.pluralRules[t])?e.pluralRules[t]:$,c=d(e.pluralRules)&&p(t)&&f(e.pluralRules[t])?$:void 0,s=e.list||[],a=e.named||{};n(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(r,a);function u(t){const n=f(e.messages)?e.messages(t):!!d(e.messages)&&e.messages[t];return n||(e.parent?e.parent.message(t):P)}const l=g(e.processor)&&f(e.processor.normalize)?e.processor.normalize:F,i=g(e.processor)&&f(e.processor.interpolate)?e.processor.interpolate:N,m={list:e=>s[e],named:e=>a[e],plural:e=>e[o(r,e.length,c)],linked:(t,n)=>{const r=u(t)(m);return p(n)?(o=n,e.modifiers?e.modifiers[o]:T)(r):r;var o},message:u,type:g(e.processor)&&p(e.processor.type)?e.processor.type:"text",interpolate:i,normalize:l};return m}function I(e,t,n={}){const{domain:r}=n,o=new SyntaxError(String(e));return o.code=e,t&&(o.location=t),o.domain=r,o}function E(e){throw e}function A(e,t,n){const r={start:e,end:t};return null!=n&&(r.source=n),r}const W=String.fromCharCode(8232),j=String.fromCharCode(8233);function M(e){const t=e;let n=0,r=1,o=1,c=0;const s=e=>"\r"===t[e]&&"\n"===t[e+1],a=e=>t[e]===j,u=e=>t[e]===W,l=e=>s(e)||(e=>"\n"===t[e])(e)||a(e)||u(e),i=e=>s(e)||a(e)||u(e)?"\n":t[e];function f(){return c=0,l(n)&&(r++,o=0),s(n)&&n++,n++,o++,t[n]}return{index:()=>n,line:()=>r,column:()=>o,peekOffset:()=>c,charAt:i,currentChar:()=>i(n),currentPeek:()=>i(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 R=void 0;function J(e,t={}){const n=!1!==t.location,r=M(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(),u={currentType:14,offset:a,startLoc:s,endLoc:s,lastType:14,lastOffset:a,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},l=()=>u,{onError:i}=t;function f(e,t,r){e.endLoc=c(),e.currentType=t;const o={type:t};return n&&(o.loc=A(e.startLoc,e.endLoc)),null!=r&&(o.value=r),o}const p=e=>f(e,14);function m(e,t){return e.currentChar()===t?(e.next(),t):(c(),"")}function d(e){let t="";for(;" "===e.currentPeek()||"\n"===e.currentPeek();)t+=e.currentPeek(),e.peek();return t}function h(e){const t=d(e);return e.skipToPeek(),t}function k(e){if(e===R)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function g(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r=function(e){if(e===R)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),r}function b(e){d(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function y(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||"\n"===r):" "===c?(e.peek(),n(!0," ",o)):"\n"!==c||(e.peek(),n(!0,"\n",o)):"%"===r||t},r=n();return t&&e.resetPeek(),r}function x(e,t){const n=e.currentChar();return n===R?R:t(n)?(e.next(),n):null}function w(e){return x(e,(e=>{const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}))}function C(e){return x(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57}))}function _(e){return x(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}))}function v(e){let t="",n="";for(;t=C(e);)n+=t;return n}function L(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return T(e,t,4);case"U":return T(e,t,6);default:return c(),""}}function T(e,t,n){m(e,t);let r="";for(let t=0;t<n;t++){const t=_(e);if(!t){c(),e.currentChar();break}r+=t}return`\\${t}${r}`}function P(e){h(e);const t=m(e,"|");return h(e),t}function O(e,t){let n=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&c(),e.next(),n=f(t,2,"{"),h(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&c(),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&h(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&c(),n=F(e,t)||p(t),t.braceNest=0,n;default:let r=!0,o=!0,s=!0;if(b(e))return t.braceNest>0&&c(),n=f(t,1,P(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return c(),t.braceNest=0,N(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r=k(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,5,function(e){h(e);let t="",n="";for(;t=w(e);)n+=t;return e.currentChar()===R&&c(),n}(e)),h(e),n;if(o=g(e,t))return n=f(t,6,function(e){h(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${v(e)}`):t+=v(e),e.currentChar()===R&&c(),t}(e)),h(e),n;if(s=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r="'"===e.currentPeek();return e.resetPeek(),r}(e,t))return n=f(t,7,function(e){h(e),m(e,"'");let t="",n="";const r=e=>"'"!==e&&"\n"!==e;for(;t=x(e,r);)n+="\\"===t?L(e):t;const o=e.currentChar();return"\n"===o||o===R?(c(),"\n"===o&&(e.next(),m(e,"'")),n):(m(e,"'"),n)}(e)),h(e),n;if(!r&&!o&&!s)return n=f(t,13,function(e){h(e);let t="",n="";const r=e=>"{"!==e&&"}"!==e&&" "!==e&&"\n"!==e;for(;t=x(e,r);)n+=t;return n}(e)),c(),h(e),n}return n}function F(e,t){const{currentType:n}=t;let r=null;const o=e.currentChar();switch(8!==n&&9!==n&&12!==n&&10!==n||"\n"!==o&&" "!==o||c(),o){case"@":return e.next(),r=f(t,8,"@"),t.inLinked=!0,r;case".":return h(e),e.next(),f(t,9,".");case":":return h(e),e.next(),f(t,10,":");default:return b(e)?(r=f(t,1,P(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(8!==n)return!1;d(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;d(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(h(e),F(e,t)):function(e,t){const{currentType:n}=t;if(9!==n)return!1;d(e);const r=k(e.currentPeek());return e.resetPeek(),r}(e,t)?(h(e),f(t,12,function(e){let t="",n="";for(;t=w(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?k(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||" "===t||!t)&&("\n"===t?(e.peek(),r()):k(t))},o=r();return e.resetPeek(),o}(e,t)?(h(e),"{"===o?O(e,t)||r:f(t,11,function(e){const t=(n=!1,r)=>{const o=e.currentChar();return"{"!==o&&"%"!==o&&"@"!==o&&"|"!==o&&o?" "===o?r:"\n"===o?(r+=o,e.next(),t(n,r)):(r+=o,e.next(),t(!0,r)):r};return t(!1,"")}(e))):(8===n&&c(),t.braceNest=0,t.inLinked=!1,N(e,t))}}function N(e,t){let n={type:14};if(t.braceNest>0)return O(e,t)||p(t);if(t.inLinked)return F(e,t)||p(t);const r=e.currentChar();switch(r){case"{":return O(e,t)||p(t);case"}":return c(),e.next(),f(t,3,"}");case"@":return F(e,t)||p(t);default:if(b(e))return n=f(t,1,P(e)),t.braceNest=0,t.inLinked=!1,n;if(y(e))return f(t,0,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"}"!==r&&"@"!==r&&r?"%"===r?y(e)?(n+=r,e.next(),t(n)):n:"|"===r?n:" "===r||"\n"===r?y(e)?(n+=r,e.next(),t(n)):b(e)?n:(n+=r,e.next(),t(n)):(n+=r,e.next(),t(n)):n};return t("")}(e));if("%"===r)return e.next(),f(t,4,"%")}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:s}=u;return u.lastType=e,u.lastOffset=t,u.lastStartLoc=n,u.lastEndLoc=s,u.offset=o(),u.startLoc=c(),r.currentChar()===R?f(u,14):N(r,u)},currentOffset:o,currentPosition:c,context:l}}const z=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function D(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 H(e={}){const t=!1!==e.location,{onError:n}=e;function r(e,n,r){const o={type:e,start:n,end:n};return t&&(o.loc={start:r,end:r}),o}function o(e,n,r,o){e.end=n,o&&(e.type=o),t&&e.loc&&(e.loc.end=r)}function c(e,t){const n=e.context(),c=r(3,n.offset,n.startLoc);return c.value=t,o(c,e.currentOffset(),e.currentPosition()),c}function a(e,t){const n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(5,c,s);return a.index=parseInt(t,10),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function u(e,t){const n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(4,c,s);return a.key=t,e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function l(e,t){const n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(9,c,s);return a.value=t.replace(z,D),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function i(e){const t=e.context(),n=r(6,t.offset,t.startLoc);let c=e.nextToken();if(9===c.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(8,c,s);return 12!==t.type?(a.value="",o(a,c,s),{nextConsumeToken:t,node:a}):(null==t.value&&U(t),a.value=t.value||"",o(a,e.currentOffset(),e.currentPosition()),{node:a})}(e);n.modifier=t.node,c=t.nextConsumeToken||e.nextToken()}switch(10!==c.type&&U(c),c=e.nextToken(),2===c.type&&(c=e.nextToken()),c.type){case 11:null==c.value&&U(c),n.key=function(e,t){const n=e.context(),c=r(7,n.offset,n.startLoc);return c.value=t,o(c,e.currentOffset(),e.currentPosition()),c}(e,c.value||"");break;case 5:null==c.value&&U(c),n.key=u(e,c.value||"");break;case 6:null==c.value&&U(c),n.key=a(e,c.value||"");break;case 7:null==c.value&&U(c),n.key=l(e,c.value||"");break;default:const t=e.context(),s=r(7,t.offset,t.startLoc);return s.value="",o(s,t.offset,t.startLoc),n.key=s,o(n,t.offset,t.startLoc),{nextConsumeToken:c,node:n}}return o(n,e.currentOffset(),e.currentPosition()),{node:n}}function f(e){const t=e.context(),n=r(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let s=null;do{const t=s||e.nextToken();switch(s=null,t.type){case 0:null==t.value&&U(t),n.items.push(c(e,t.value||""));break;case 6:null==t.value&&U(t),n.items.push(a(e,t.value||""));break;case 5:null==t.value&&U(t),n.items.push(u(e,t.value||""));break;case 7:null==t.value&&U(t),n.items.push(l(e,t.value||""));break;case 8:const r=i(e);n.items.push(r.node),s=r.nextConsumeToken||null}}while(14!==t.currentType&&1!==t.currentType);return o(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function p(e){const t=e.context(),{offset:n,startLoc:c}=t,s=f(e);return 14===t.currentType?s:function(e,t,n,c){const s=e.context();let a=0===c.items.length;const u=r(1,t,n);u.cases=[],u.cases.push(c);do{const t=f(e);a||(a=0===t.items.length),u.cases.push(t)}while(14!==s.currentType);return o(u,e.currentOffset(),e.currentPosition()),u}(e,n,c,s)}return{parse:function(n){const c=J(n,s({},e)),a=c.context(),u=r(0,a.offset,a.startLoc);return t&&u.loc&&(u.loc.source=n),u.body=p(c),o(u,c.currentOffset(),c.currentPosition()),u}}}function U(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 K(e,t){for(let n=0;n<e.length;n++)q(e[n],t)}function q(e,t){switch(e.type){case 1:K(e.cases,t),t.helper("plural");break;case 2:K(e.items,t);break;case 6:q(e.key,t),t.helper("linked");break;case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named")}}function Z(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&&q(e.body,n);const r=n.context();e.helpers=Array.from(r.helpers)}function B(e,t){const{helper:n}=e;switch(t.type){case 0:!function(e,t){t.body?B(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&&(B(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 n=0;n<o&&(B(e,t.items[n]),n!==o-1);n++)e.push(", ");e.deindent(r()),e.push("])")}(e,t);break;case 6:!function(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),B(e,t.key),t.modifier&&(e.push(", "),B(e,t.modifier)),e.push(")")}(e,t);break;case 8:case 7: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);break;case 9:case 3:e.push(JSON.stringify(t.value),t)}}function G(e,t={}){const n=s({},t),r=H(n).parse(e);return Z(r,n),((e,t={})=>{const n=p(t.mode)?t.mode:"normal",r=p(t.filename)?t.filename:"message.intl",o=t.needIndent?t.needIndent:"arrow"!==n,c=e.helpers||[],s=function(e,t){const{filename:n,breakLineCode:r,needIndent:o}=t,c={source:e.loc.source,filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:r,needIndent:o,indentLevel:0};function s(e,t){c.code+=e}function a(e,t=!0){const n=t?r:"";s(o?n+" ".repeat(e):n)}return{context:()=>c,push:s,indent:function(e=!0){const t=++c.indentLevel;e&&a(t)},deindent:function(e=!0){const t=--c.indentLevel;e&&a(t)},newline:function(){a(c.indentLevel)},helper:e=>`_${e}`,needIndent:()=>c.needIndent}}(e,{mode:n,filename:r,sourceMap:!!t.sourceMap,breakLineCode:null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",needIndent:o});s.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),s.indent(o),c.length>0&&(s.push(`const { ${c.map((e=>`${e}: _${e}`)).join(", ")} } = ctx`),s.newline()),s.push("return "),B(s,e),s.deindent(o),s.push("}");const{code:a,map:u}=s.context();return{ast:e,code:a,map:u?u.toJSON():void 0}})(r,n)}const Q="i18n:init";let V=null;function X(e){V=e}function Y(){return V}function ee(e,t,n){V&&V.emit(Q,{timestamp:Date.now(),i18n:e,version:t,meta:n})}const te=ne("function:translate");function ne(e){return t=>V&&V.emit(e,t)}const re={0:"Not found '{key}' key in '{locale}' locale messages.",1:"Fall back to translate '{key}' key with '{target}' locale.",2:"Cannot format a number value due to not supported Intl.NumberFormat.",3:"Fall back to number format '{key}' key with '{target}' locale.",4:"Cannot format a date value due to not supported Intl.DateTimeFormat.",5:"Fall back to datetime format '{key}' key with '{target}' locale."};function oe(t,...n){return function(t,...n){return 1===n.length&&d(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),t.replace(e,((e,t)=>n.hasOwnProperty(t)?n[t]:""))}(re[t],...n)}const ce="9.1.6",se=-1,ae="";let ue;function le(e){ue=e}let ie=null;const fe=e=>{ie=e},pe=()=>ie;let me=0;function de(e={}){const t=p(e.version)?e.version:"9.1.6",n=p(e.locale)?e.locale:"en-US",o=i(e.fallbackLocale)||g(e.fallbackLocale)||p(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:n,a=g(e.messages)?e.messages:{[n]:{}},u=g(e.datetimeFormats)?e.datetimeFormats:{[n]:{}},l=g(e.numberFormats)?e.numberFormats:{[n]:{}},h=s({},e.modifiers||{},{upper:e=>p(e)?e.toUpperCase():e,lower:e=>p(e)?e.toLowerCase():e,capitalize:e=>p(e)?`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`:e}),k=e.pluralRules||{},b=f(e.missing)?e.missing:null,y=!m(e.missingWarn)&&!r(e.missingWarn)||e.missingWarn,x=!m(e.fallbackWarn)&&!r(e.fallbackWarn)||e.fallbackWarn,w=!!e.fallbackFormat,C=!!e.unresolving,_=f(e.postTranslation)?e.postTranslation:null,v=g(e.processor)?e.processor:null,L=!m(e.warnHtmlMessage)||e.warnHtmlMessage,T=!!e.escapeParameter,P=f(e.messageCompiler)?e.messageCompiler:ue,O=f(e.onWarn)?e.onWarn:c,F=e,N=d(F.__datetimeFormatters)?F.__datetimeFormatters:new Map,$=d(F.__numberFormatters)?F.__numberFormatters:new Map,S=d(F.__meta)?F.__meta:{};me++;return{version:t,cid:me,locale:n,fallbackLocale:o,messages:a,datetimeFormats:u,numberFormats:l,modifiers:h,pluralRules:k,missing:b,missingWarn:y,fallbackWarn:x,fallbackFormat:w,unresolving:C,postTranslation:_,processor:v,warnHtmlMessage:L,escapeParameter:T,messageCompiler:P,onWarn:O,__datetimeFormatters:N,__numberFormatters:$,__meta:S}}function he(e,t){return e instanceof RegExp?e.test(t):e}function ke(e,t){return e instanceof RegExp?e.test(t):e}function ge(e,t,n,r,o){const{missing:c}=e;if(null!==c){const r=c(e,n,t,o);return p(r)?r:t}return t}function be(e,t,n){const r=e;r.__localeChainCache||(r.__localeChainCache=new Map);let o=r.__localeChainCache.get(n);if(!o){o=[];let e=[n];for(;i(e);)e=ye(o,e,t);const c=i(t)?t:g(t)?t.default?t.default:null:t;e=p(c)?[c]:c,i(e)&&ye(o,e,!1),r.__localeChainCache.set(n,o)}return o}function ye(e,t,n){let r=!0;for(let o=0;o<t.length&&m(r);o++){p(t[o])&&(r=xe(e,t[o],n))}return r}function xe(e,t,n){let r;const o=t.split("-");do{r=we(e,o.join("-"),n),o.splice(-1,1)}while(o.length&&!0===r);return r}function we(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),(i(n)||g(n))&&n[o]&&(r=n[o])}return r}function Ce(e,t,n){e.__localeChainCache=new Map,be(e,n,t)}const _e=e=>e;let ve=Object.create(null);function Le(){ve=Object.create(null)}function Te(e,t={}){{const n=(t.onCacheKey||_e)(e),r=ve[n];if(r)return r;let o=!1;const c=t.onError||E;t.onError=e=>{o=!0,c(e)};const{code:s}=G(e,t),a=new Function(`return ${s}`)();return o?a:ve[n]=a}}function Pe(e){return I(e,null,void 0)}const Oe=()=>"",Fe=e=>f(e);function Ne(e,...t){const{fallbackFormat:r,postTranslation:o,unresolving:c,fallbackLocale:s,messages:u}=e,[l,h]=Se(...t),k=(m(h.missingWarn),m(h.fallbackWarn),m(h.escapeParameter)?h.escapeParameter:e.escapeParameter),g=!!h.resolvedMessage,b=p(h.default)||m(h.default)?m(h.default)?l:h.default:r?l:"",y=r||""!==b,x=p(h.locale)?h.locale:e.locale;k&&function(e){i(e.list)?e.list=e.list.map((e=>p(e)?a(e):e)):d(e.named)&&Object.keys(e.named).forEach((t=>{p(e.named[t])&&(e.named[t]=a(e.named[t]))}))}(h);let[w,C,_]=g?[l,x,u[x]||{}]:function(e,t,n,r,o,c){const{messages:s}=e,a=be(e,r,n);let u,l={},i=null;const m="translate";for(let n=0;n<a.length&&(u=a[n],l=s[u]||{},null===(i=v(l,t))&&(i=l[t]),!p(i)&&!f(i));n++){const n=ge(e,t,u,0,m);n!==t&&(i=n)}return[i,u,l]}(e,l,x,s),L=l;if(g||p(w)||Fe(w)||y&&(w=b,L=w),!(g||(p(w)||Fe(w))&&p(C)))return c?-1:l;let T=!1;const P=Fe(w)?w:$e(e,l,C,w,L,(()=>{T=!0}));if(T)return w;const O=function(e,t,n){return t(n)}(0,P,S(function(e,t,r,o){const{modifiers:c,pluralRules:s}=e,a={locale:t,modifiers:c,pluralRules:s,messages:n=>{const o=v(r,n);if(p(o)){let r=!1;const c=$e(e,n,t,o,n,(()=>{r=!0}));return r?Oe:c}return Fe(o)?o:Oe}};e.processor&&(a.processor=e.processor);o.list&&(a.list=o.list);o.named&&(a.named=o.named);n(o.plural)&&(a.pluralIndex=o.plural);return a}(e,C,_,h)));return o?o(O):O}function $e(e,n,r,o,c,s){const{messageCompiler:a,warnHtmlMessage:u}=e;if(Fe(o)){const e=o;return e.locale=e.locale||r,e.key=e.key||n,e}const l=a(o,function(e,n,r,o,c,s){return{warnHtmlMessage:c,onError:e=>{throw s&&s(e),e},onCacheKey:e=>((e,n,r)=>t({l:e,k:n,s:r}))(n,r,e)}}(0,r,c,0,u,s));return l.locale=r,l.key=n,l.source=o,l}function Se(...e){const[t,r,c]=e,a={};if(!p(t)&&!n(t)&&!Fe(t))throw Error(14);const u=n(t)?String(t):(Fe(t),t);return n(r)?a.plural=r:p(r)?a.default=r:g(r)&&!o(r)?a.named=r:i(r)&&(a.list=r),n(c)?a.plural=c:p(c)?a.default=c:g(c)&&s(a,c),[u,a]}function Ie(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:c}=e,{__datetimeFormatters:a}=e,[u,l,i,f]=Ee(...t);m(i.missingWarn);m(i.fallbackWarn);const d=!!i.part,h=p(i.locale)?i.locale:e.locale,k=be(e,c,h);if(!p(u)||""===u)return new Intl.DateTimeFormat(h).format(l);let b,y={},x=null;for(let t=0;t<k.length&&(b=k[t],y=n[b]||{},x=y[u],!g(x));t++)ge(e,u,b,0,"datetime format");if(!g(x)||!p(b))return r?-1:u;let w=`${b}__${u}`;o(f)||(w=`${w}__${JSON.stringify(f)}`);let C=a.get(w);return C||(C=new Intl.DateTimeFormat(b,s({},x,f)),a.set(w,C)),d?C.formatToParts(l):C.format(l)}function Ee(...e){const[t,r,o,c]=e;let s,a={},u={};if(p(t)){if(!/\d{4}-\d{2}-\d{2}(T.*)?/.test(t))throw Error(16);s=new Date(t);try{s.toISOString()}catch(e){throw Error(16)}}else if("[object Date]"===k(t)){if(isNaN(t.getTime()))throw Error(15);s=t}else{if(!n(t))throw Error(14);s=t}return p(r)?a.key=r:g(r)&&(a=r),p(o)?a.locale=o:g(o)&&(u=o),g(c)&&(u=c),[a.key||"",s,a,u]}function Ae(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__datetimeFormatters.has(n)&&r.__datetimeFormatters.delete(n)}}function We(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:c}=e,{__numberFormatters:a}=e,[u,l,i,f]=je(...t);m(i.missingWarn);m(i.fallbackWarn);const d=!!i.part,h=p(i.locale)?i.locale:e.locale,k=be(e,c,h);if(!p(u)||""===u)return new Intl.NumberFormat(h).format(l);let b,y={},x=null;for(let t=0;t<k.length&&(b=k[t],y=n[b]||{},x=y[u],!g(x));t++)ge(e,u,b,0,"number format");if(!g(x)||!p(b))return r?-1:u;let w=`${b}__${u}`;o(f)||(w=`${w}__${JSON.stringify(f)}`);let C=a.get(w);return C||(C=new Intl.NumberFormat(b,s({},x,f)),a.set(w,C)),d?C.formatToParts(l):C.format(l)}function je(...e){const[t,r,o,c]=e;let s={},a={};if(!n(t))throw Error(14);const u=t;return p(r)?s.key=r:g(r)&&(s=r),p(o)?s.locale=o:g(o)&&(a=o),g(c)&&(a=c),[s.key||"",u,s,a]}function Me(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__numberFormatters.has(n)&&r.__numberFormatters.delete(n)}}export{O as DEFAULT_MESSAGE_DATA_TYPE,ae as MISSING_RESOLVE_VALUE,se as NOT_REOSLVED,ce as VERSION,Le as clearCompileCache,Ae as clearDateTimeFormat,Me as clearNumberFormat,Te as compileToFunction,I as createCompileError,de as createCoreContext,Pe as createCoreError,S as createMessageContext,Ie as datetime,pe as getAdditionalMeta,Y as getDevToolsHook,be as getLocaleChain,oe as getWarnMessage,L as handleFlatJson,ge as handleMissing,ee as initI18nDevTools,Fe as isMessageFunction,he as isTranslateFallbackWarn,ke as isTranslateMissingWarn,We as number,C as parse,Ee as parseDateTimeArgs,je as parseNumberArgs,Se as parseTranslateArgs,le as registerMessageCompiler,v as resolveValue,fe as setAdditionalMeta,X as setDevToolsHook,Ne as translate,te as translateDevTools,Ce as updateFallbackLocale}; | ||
const e=/\{([0-9a-zA-Z]+)\}/g;const t=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),n=e=>"number"==typeof e&&isFinite(e),r=e=>"[object RegExp]"===h(e),o=e=>k(e)&&0===Object.keys(e).length;function c(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const s=Object.assign;function a(e){return e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}const u=Object.prototype.hasOwnProperty;function l(e,t){return u.call(e,t)}const i=Array.isArray,f=e=>"function"==typeof e,p=e=>"string"==typeof e,m=e=>"boolean"==typeof e,d=e=>null!==e&&"object"==typeof e,_=Object.prototype.toString,h=e=>_.call(e),k=e=>"[object Object]"===h(e),T=[];T[0]={w:[0],i:[3,0],"[":[4],o:[7]},T[1]={w:[1],".":[2],"[":[4],o:[7]},T[2]={w:[2],i:[3,0],0:[3,0]},T[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},T[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},T[5]={"'":[4,0],o:8,l:[5,0]},T[6]={'"':[4,0],o:8,l:[6,0]};const E=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function N(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 g(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(E.test(t)?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)}function L(e){const t=[];let n,r,o,c,s,a,u,l=-1,i=0,f=0;const p=[];function m(){const t=e[l+1];if(5===i&&"'"===t||6===i&&'"'===t)return l++,o="\\"+t,p[0](),!0}for(p[0]=()=>{void 0===r?r=o:r+=o},p[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},p[2]=()=>{p[0](),f++},p[3]=()=>{if(f>0)f--,i=4,p[0]();else{if(f=0,void 0===r)return!1;if(r=g(r),!1===r)return!1;p[1]()}};null!==i;)if(l++,n=e[l],"\\"!==n||!m()){if(c=N(n),u=T[i],s=u[c]||u.l||8,8===s)return;if(i=s[0],void 0!==s[1]&&(a=p[s[1]],a&&(o=n,!1===a())))return;if(7===i)return t}}const b=new Map;function y(e,t){if(!d(e))return null;let n=b.get(t);if(n||(n=L(t),n&&b.set(t,n)),!n)return null;const r=n.length;let o=e,c=0;for(;c<r;){const e=o[n[c]];if(void 0===e)return null;o=e,c++}return o}function A(e){if(!d(e))return e;for(const t in e)if(l(e,t))if(t.includes(".")){const n=t.split("."),r=n.length-1;let o=e;for(let e=0;e<r;e++)n[e]in o||(o[n[e]]={}),o=o[n[e]];o[n[r]]=e[t],delete e[t],d(o[n[r]])&&A(o[n[r]])}else d(e[t])&&A(e[t]);return e}const O=e=>e,C=e=>"",I="text",x=e=>0===e.length?"":e.join(""),P=e=>null==e?"":i(e)||k(e)&&e.toString===_?JSON.stringify(e,null,2):String(e);function v(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function w(e={}){const t=e.locale,r=function(e){const t=n(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(n(e.named.count)||n(e.named.n))?n(e.named.count)?e.named.count:n(e.named.n)?e.named.n:t:t}(e),o=d(e.pluralRules)&&p(t)&&f(e.pluralRules[t])?e.pluralRules[t]:v,c=d(e.pluralRules)&&p(t)&&f(e.pluralRules[t])?v:void 0,s=e.list||[],a=e.named||{};n(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(r,a);function u(t){const n=f(e.messages)?e.messages(t):!!d(e.messages)&&e.messages[t];return n||(e.parent?e.parent.message(t):C)}const l=k(e.processor)&&f(e.processor.normalize)?e.processor.normalize:x,i=k(e.processor)&&f(e.processor.interpolate)?e.processor.interpolate:P,m={list:e=>s[e],named:e=>a[e],plural:e=>e[o(r,e.length,c)],linked:(t,n)=>{const r=u(t)(m);return p(n)?(o=n,e.modifiers?e.modifiers[o]:O)(r):r;var o},message:u,type:k(e.processor)&&p(e.processor.type)?e.processor.type:"text",interpolate:i,normalize:l};return m}const F={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,__EXTEND_POINT__:15};function D(e,t,n={}){const{domain:r}=n,o=new SyntaxError(String(e));return o.code=e,t&&(o.location=t),o.domain=r,o}function R(e){throw e}function S(e,t,n){const r={start:e,end:t};return null!=n&&(r.source=n),r}const M=String.fromCharCode(8232),U=String.fromCharCode(8233);function $(e){const t=e;let n=0,r=1,o=1,c=0;const s=e=>"\r"===t[e]&&"\n"===t[e+1],a=e=>t[e]===U,u=e=>t[e]===M,l=e=>s(e)||(e=>"\n"===t[e])(e)||a(e)||u(e),i=e=>s(e)||a(e)||u(e)?"\n":t[e];function f(){return c=0,l(n)&&(r++,o=0),s(n)&&n++,n++,o++,t[n]}return{index:()=>n,line:()=>r,column:()=>o,peekOffset:()=>c,charAt:i,currentChar:()=>i(n),currentPeek:()=>i(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;function K(e,t={}){const n=!1!==t.location,r=$(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(),u={currentType:14,offset:a,startLoc:s,endLoc:s,lastType:14,lastOffset:a,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},l=()=>u,{onError:i}=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 p=e=>f(e,14);function m(e,t){return e.currentChar()===t?(e.next(),t):(c(),"")}function d(e){let t="";for(;" "===e.currentPeek()||"\n"===e.currentPeek();)t+=e.currentPeek(),e.peek();return t}function _(e){const t=d(e);return e.skipToPeek(),t}function h(e){if(e===W)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function k(e,t){const{currentType:n}=t;if(2!==n)return!1;d(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){d(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function E(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||"\n"===r):" "===c?(e.peek(),n(!0," ",o)):"\n"!==c||(e.peek(),n(!0,"\n",o)):"%"===r||t},r=n();return t&&e.resetPeek(),r}function N(e,t){const n=e.currentChar();return n===W?W:t(n)?(e.next(),n):null}function g(e){return N(e,(e=>{const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}))}function L(e){return N(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57}))}function b(e){return N(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}))}function y(e){let t="",n="";for(;t=L(e);)n+=t;return n}function A(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return O(e,t,4);case"U":return O(e,t,6);default:return c(),""}}function O(e,t,n){m(e,t);let r="";for(let t=0;t<n;t++){const t=b(e);if(!t){c(),e.currentChar();break}r+=t}return`\\${t}${r}`}function C(e){_(e);const t=m(e,"|");return _(e),t}function I(e,t){let n=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&c(),e.next(),n=f(t,2,"{"),_(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&c(),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&_(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&c(),n=x(e,t)||p(t),t.braceNest=0,n;default:let r=!0,o=!0,s=!0;if(T(e))return t.braceNest>0&&c(),n=f(t,1,C(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return c(),t.braceNest=0,P(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r=h(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,5,function(e){_(e);let t="",n="";for(;t=g(e);)n+=t;return e.currentChar()===W&&c(),n}(e)),_(e),n;if(o=k(e,t))return n=f(t,6,function(e){_(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${y(e)}`):t+=y(e),e.currentChar()===W&&c(),t}(e)),_(e),n;if(s=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r="'"===e.currentPeek();return e.resetPeek(),r}(e,t))return n=f(t,7,function(e){_(e),m(e,"'");let t="",n="";const r=e=>"'"!==e&&"\n"!==e;for(;t=N(e,r);)n+="\\"===t?A(e):t;const o=e.currentChar();return"\n"===o||o===W?(c(),"\n"===o&&(e.next(),m(e,"'")),n):(m(e,"'"),n)}(e)),_(e),n;if(!r&&!o&&!s)return n=f(t,13,function(e){_(e);let t="",n="";const r=e=>"{"!==e&&"}"!==e&&" "!==e&&"\n"!==e;for(;t=N(e,r);)n+=t;return n}(e)),c(),_(e),n}return n}function x(e,t){const{currentType:n}=t;let r=null;const o=e.currentChar();switch(8!==n&&9!==n&&12!==n&&10!==n||"\n"!==o&&" "!==o||c(),o){case"@":return e.next(),r=f(t,8,"@"),t.inLinked=!0,r;case".":return _(e),e.next(),f(t,9,".");case":":return _(e),e.next(),f(t,10,":");default:return T(e)?(r=f(t,1,C(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(8!==n)return!1;d(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;d(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(_(e),x(e,t)):function(e,t){const{currentType:n}=t;if(9!==n)return!1;d(e);const r=h(e.currentPeek());return e.resetPeek(),r}(e,t)?(_(e),f(t,12,function(e){let t="",n="";for(;t=g(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?h(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||" "===t||!t)&&("\n"===t?(e.peek(),r()):h(t))},o=r();return e.resetPeek(),o}(e,t)?(_(e),"{"===o?I(e,t)||r:f(t,11,function(e){const t=(n=!1,r)=>{const o=e.currentChar();return"{"!==o&&"%"!==o&&"@"!==o&&"|"!==o&&o?" "===o?r:"\n"===o?(r+=o,e.next(),t(n,r)):(r+=o,e.next(),t(!0,r)):r};return t(!1,"")}(e))):(8===n&&c(),t.braceNest=0,t.inLinked=!1,P(e,t))}}function P(e,t){let n={type:14};if(t.braceNest>0)return I(e,t)||p(t);if(t.inLinked)return x(e,t)||p(t);const r=e.currentChar();switch(r){case"{":return I(e,t)||p(t);case"}":return c(),e.next(),f(t,3,"}");case"@":return x(e,t)||p(t);default:if(T(e))return n=f(t,1,C(e)),t.braceNest=0,t.inLinked=!1,n;if(E(e))return f(t,0,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"}"!==r&&"@"!==r&&r?"%"===r?E(e)?(n+=r,e.next(),t(n)):n:"|"===r?n:" "===r||"\n"===r?E(e)?(n+=r,e.next(),t(n)):T(e)?n:(n+=r,e.next(),t(n)):(n+=r,e.next(),t(n)):n};return t("")}(e));if("%"===r)return e.next(),f(t,4,"%")}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:s}=u;return u.lastType=e,u.lastOffset=t,u.lastStartLoc=n,u.lastEndLoc=s,u.offset=o(),u.startLoc=c(),r.currentChar()===W?f(u,14):P(r,u)},currentOffset:o,currentPosition:c,context:l}}const j=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function B(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 G(e={}){const t=!1!==e.location,{onError:n}=e;function r(e,n,r){const o={type:e,start:n,end:n};return t&&(o.loc={start:r,end:r}),o}function o(e,n,r,o){e.end=n,o&&(e.type=o),t&&e.loc&&(e.loc.end=r)}function c(e,t){const n=e.context(),c=r(3,n.offset,n.startLoc);return c.value=t,o(c,e.currentOffset(),e.currentPosition()),c}function a(e,t){const n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(5,c,s);return a.index=parseInt(t,10),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function u(e,t){const n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(4,c,s);return a.key=t,e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function l(e,t){const n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(9,c,s);return a.value=t.replace(j,B),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function i(e){const t=e.context(),n=r(6,t.offset,t.startLoc);let c=e.nextToken();if(9===c.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:c,lastStartLoc:s}=n,a=r(8,c,s);return 12!==t.type?(a.value="",o(a,c,s),{nextConsumeToken:t,node:a}):(null==t.value&&V(t),a.value=t.value||"",o(a,e.currentOffset(),e.currentPosition()),{node:a})}(e);n.modifier=t.node,c=t.nextConsumeToken||e.nextToken()}switch(10!==c.type&&V(c),c=e.nextToken(),2===c.type&&(c=e.nextToken()),c.type){case 11:null==c.value&&V(c),n.key=function(e,t){const n=e.context(),c=r(7,n.offset,n.startLoc);return c.value=t,o(c,e.currentOffset(),e.currentPosition()),c}(e,c.value||"");break;case 5:null==c.value&&V(c),n.key=u(e,c.value||"");break;case 6:null==c.value&&V(c),n.key=a(e,c.value||"");break;case 7:null==c.value&&V(c),n.key=l(e,c.value||"");break;default:const t=e.context(),s=r(7,t.offset,t.startLoc);return s.value="",o(s,t.offset,t.startLoc),n.key=s,o(n,t.offset,t.startLoc),{nextConsumeToken:c,node:n}}return o(n,e.currentOffset(),e.currentPosition()),{node:n}}function f(e){const t=e.context(),n=r(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let s=null;do{const t=s||e.nextToken();switch(s=null,t.type){case 0:null==t.value&&V(t),n.items.push(c(e,t.value||""));break;case 6:null==t.value&&V(t),n.items.push(a(e,t.value||""));break;case 5:null==t.value&&V(t),n.items.push(u(e,t.value||""));break;case 7:null==t.value&&V(t),n.items.push(l(e,t.value||""));break;case 8:const r=i(e);n.items.push(r.node),s=r.nextConsumeToken||null}}while(14!==t.currentType&&1!==t.currentType);return o(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function p(e){const t=e.context(),{offset:n,startLoc:c}=t,s=f(e);return 14===t.currentType?s:function(e,t,n,c){const s=e.context();let a=0===c.items.length;const u=r(1,t,n);u.cases=[],u.cases.push(c);do{const t=f(e);a||(a=0===t.items.length),u.cases.push(t)}while(14!==s.currentType);return o(u,e.currentOffset(),e.currentPosition()),u}(e,n,c,s)}return{parse:function(n){const c=K(n,s({},e)),a=c.context(),u=r(0,a.offset,a.startLoc);return t&&u.loc&&(u.loc.source=n),u.body=p(c),o(u,c.currentOffset(),c.currentPosition()),u}}}function V(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 X(e,t){for(let n=0;n<e.length;n++)H(e[n],t)}function H(e,t){switch(e.type){case 1:X(e.cases,t),t.helper("plural");break;case 2:X(e.items,t);break;case 6:H(e.key,t),t.helper("linked");break;case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named")}}function J(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 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 n=0;n<o&&(z(e,t.items[n]),n!==o-1);n++)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(")")}(e,t);break;case 8:case 7: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);break;case 9:case 3:e.push(JSON.stringify(t.value),t)}}function Y(e,t={}){const n=s({},t),r=G(n).parse(e);return J(r,n),((e,t={})=>{const n=p(t.mode)?t.mode:"normal",r=p(t.filename)?t.filename:"message.intl",o=t.needIndent?t.needIndent:"arrow"!==n,c=e.helpers||[],s=function(e,t){const{filename:n,breakLineCode:r,needIndent:o}=t,c={source:e.loc.source,filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:r,needIndent:o,indentLevel:0};function s(e,t){c.code+=e}function a(e,t=!0){const n=t?r:"";s(o?n+" ".repeat(e):n)}return{context:()=>c,push:s,indent:function(e=!0){const t=++c.indentLevel;e&&a(t)},deindent:function(e=!0){const t=--c.indentLevel;e&&a(t)},newline:function(){a(c.indentLevel)},helper:e=>`_${e}`,needIndent:()=>c.needIndent}}(e,{mode:n,filename:r,sourceMap:!!t.sourceMap,breakLineCode:null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",needIndent:o});s.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),s.indent(o),c.length>0&&(s.push(`const { ${c.map((e=>`${e}: _${e}`)).join(", ")} } = ctx`),s.newline()),s.push("return "),z(s,e),s.deindent(o),s.push("}");const{code:a,map:u}=s.context();return{ast:e,code:a,map:u?u.toJSON():void 0}})(r,n)}const Q="i18n:init";let q=null;function Z(e){q=e}function ee(){return q}function te(e,t,n){q&&q.emit(Q,{timestamp:Date.now(),i18n:e,version:t,meta:n})}const ne=re("function:translate");function re(e){return t=>q&&q.emit(e,t)}const oe={NOT_FOUND_KEY:1,FALLBACK_TO_TRANSLATE:2,CANNOT_FORMAT_NUMBER:3,FALLBACK_TO_NUMBER_FORMAT:4,CANNOT_FORMAT_DATE:5,FALLBACK_TO_DATE_FORMAT:6,__EXTEND_POINT__:7},ce={[oe.NOT_FOUND_KEY]:"Not found '{key}' key in '{locale}' locale messages.",[oe.FALLBACK_TO_TRANSLATE]:"Fall back to translate '{key}' key with '{target}' locale.",[oe.CANNOT_FORMAT_NUMBER]:"Cannot format a number value due to not supported Intl.NumberFormat.",[oe.FALLBACK_TO_NUMBER_FORMAT]:"Fall back to number format '{key}' key with '{target}' locale.",[oe.CANNOT_FORMAT_DATE]:"Cannot format a date value due to not supported Intl.DateTimeFormat.",[oe.FALLBACK_TO_DATE_FORMAT]:"Fall back to datetime format '{key}' key with '{target}' locale."};function se(t,...n){return function(t,...n){return 1===n.length&&d(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),t.replace(e,((e,t)=>n.hasOwnProperty(t)?n[t]:""))}(ce[t],...n)}const ae="9.2.0-alpha.1",ue=-1,le="";let ie;function fe(e){ie=e}let pe=null;const me=e=>{pe=e},de=()=>pe;let _e=0;function he(e={}){const t=p(e.version)?e.version:"9.2.0-alpha.1",n=p(e.locale)?e.locale:"en-US",o=i(e.fallbackLocale)||k(e.fallbackLocale)||p(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:n,a=k(e.messages)?e.messages:{[n]:{}},u=k(e.datetimeFormats)?e.datetimeFormats:{[n]:{}},l=k(e.numberFormats)?e.numberFormats:{[n]:{}},_=s({},e.modifiers||{},{upper:e=>p(e)?e.toUpperCase():e,lower:e=>p(e)?e.toLowerCase():e,capitalize:e=>p(e)?`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`:e}),h=e.pluralRules||{},T=f(e.missing)?e.missing:null,E=!m(e.missingWarn)&&!r(e.missingWarn)||e.missingWarn,N=!m(e.fallbackWarn)&&!r(e.fallbackWarn)||e.fallbackWarn,g=!!e.fallbackFormat,L=!!e.unresolving,b=f(e.postTranslation)?e.postTranslation:null,A=k(e.processor)?e.processor:null,O=!m(e.warnHtmlMessage)||e.warnHtmlMessage,C=!!e.escapeParameter,I=f(e.messageCompiler)?e.messageCompiler:ie,x=f(e.messageResolver)?e.messageResolver:y,P=f(e.onWarn)?e.onWarn:c,v=e,w=d(v.__datetimeFormatters)?v.__datetimeFormatters:new Map,F=d(v.__numberFormatters)?v.__numberFormatters:new Map,D=d(v.__meta)?v.__meta:{};_e++;return{version:t,cid:_e,locale:n,fallbackLocale:o,messages:a,datetimeFormats:u,numberFormats:l,modifiers:_,pluralRules:h,missing:T,missingWarn:E,fallbackWarn:N,fallbackFormat:g,unresolving:L,postTranslation:b,processor:A,warnHtmlMessage:O,escapeParameter:C,messageCompiler:I,messageResolver:x,onWarn:P,__datetimeFormatters:w,__numberFormatters:F,__meta:D}}function ke(e,t){return e instanceof RegExp?e.test(t):e}function Te(e,t){return e instanceof RegExp?e.test(t):e}function Ee(e,t,n,r,o){const{missing:c}=e;if(null!==c){const r=c(e,n,t,o);return p(r)?r:t}return t}function Ne(e,t,n){const r=e;r.__localeChainCache||(r.__localeChainCache=new Map);let o=r.__localeChainCache.get(n);if(!o){o=[];let e=[n];for(;i(e);)e=ge(o,e,t);const c=i(t)||!k(t)?t:t.default?t.default:null;e=p(c)?[c]:c,i(e)&&ge(o,e,!1),r.__localeChainCache.set(n,o)}return o}function ge(e,t,n){let r=!0;for(let o=0;o<t.length&&m(r);o++){p(t[o])&&(r=Le(e,t[o],n))}return r}function Le(e,t,n){let r;const o=t.split("-");do{r=be(e,o.join("-"),n),o.splice(-1,1)}while(o.length&&!0===r);return r}function be(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),(i(n)||k(n))&&n[o]&&(r=n[o])}return r}function ye(e,t,n){e.__localeChainCache=new Map,Ne(e,n,t)}const Ae=e=>e;let Oe=Object.create(null);function Ce(){Oe=Object.create(null)}function Ie(e,t={}){{const n=(t.onCacheKey||Ae)(e),r=Oe[n];if(r)return r;let o=!1;const c=t.onError||R;t.onError=e=>{o=!0,c(e)};const{code:s}=Y(e,t),a=new Function(`return ${s}`)();return o?a:Oe[n]=a}}const xe={INVALID_ARGUMENT:F.__EXTEND_POINT__,INVALID_DATE_ARGUMENT:F.__EXTEND_POINT__+1,INVALID_ISO_DATE_ARGUMENT:F.__EXTEND_POINT__+2,__EXTEND_POINT__:F.__EXTEND_POINT__+3};function Pe(e){return D(e,null,void 0)}const ve=()=>"",we=e=>f(e);function Fe(e,...t){const{fallbackFormat:r,postTranslation:o,unresolving:c,fallbackLocale:s,messages:u}=e,[l,_]=Re(...t),h=(m(_.missingWarn),m(_.fallbackWarn),m(_.escapeParameter)?_.escapeParameter:e.escapeParameter),k=!!_.resolvedMessage,T=p(_.default)||m(_.default)?m(_.default)?l:_.default:r?l:"",E=r||""!==T,N=p(_.locale)?_.locale:e.locale;h&&function(e){i(e.list)?e.list=e.list.map((e=>p(e)?a(e):e)):d(e.named)&&Object.keys(e.named).forEach((t=>{p(e.named[t])&&(e.named[t]=a(e.named[t]))}))}(_);let[g,L,b]=k?[l,N,u[N]||{}]:function(e,t,n,r,o,c){const{messages:s,messageResolver:a}=e,u=Ne(e,r,n);let l,i={},m=null;const d="translate";for(let n=0;n<u.length&&(l=u[n],i=s[l]||{},null===(m=a(i,t))&&(m=i[t]),!p(m)&&!f(m));n++){const n=Ee(e,t,l,0,d);n!==t&&(m=n)}return[m,l,i]}(e,l,N,s),y=l;if(k||p(g)||we(g)||E&&(g=T,y=g),!(k||(p(g)||we(g))&&p(L)))return c?-1:l;let A=!1;const O=we(g)?g:De(e,l,L,g,y,(()=>{A=!0}));if(A)return g;const C=function(e,t,n){return t(n)}(0,O,w(function(e,t,r,o){const{modifiers:c,pluralRules:s,messageResolver:a}=e,u={locale:t,modifiers:c,pluralRules:s,messages:n=>{const o=a(r,n);if(p(o)){let r=!1;const c=De(e,n,t,o,n,(()=>{r=!0}));return r?ve:c}return we(o)?o:ve}};e.processor&&(u.processor=e.processor);o.list&&(u.list=o.list);o.named&&(u.named=o.named);n(o.plural)&&(u.pluralIndex=o.plural);return u}(e,L,b,_)));return o?o(C):C}function De(e,n,r,o,c,s){const{messageCompiler:a,warnHtmlMessage:u}=e;if(we(o)){const e=o;return e.locale=e.locale||r,e.key=e.key||n,e}const l=a(o,function(e,n,r,o,c,s){return{warnHtmlMessage:c,onError:e=>{throw s&&s(e),e},onCacheKey:e=>((e,n,r)=>t({l:e,k:n,s:r}))(n,r,e)}}(0,r,c,0,u,s));return l.locale=r,l.key=n,l.source=o,l}function Re(...e){const[t,r,c]=e,a={};if(!p(t)&&!n(t)&&!we(t))throw Error(xe.INVALID_ARGUMENT);const u=n(t)?String(t):(we(t),t);return n(r)?a.plural=r:p(r)?a.default=r:k(r)&&!o(r)?a.named=r:i(r)&&(a.list=r),n(c)?a.plural=c:p(c)?a.default=c:k(c)&&s(a,c),[u,a]}function Se(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:c}=e,{__datetimeFormatters:a}=e,[u,l,i,f]=Me(...t);m(i.missingWarn);m(i.fallbackWarn);const d=!!i.part,_=p(i.locale)?i.locale:e.locale,h=Ne(e,c,_);if(!p(u)||""===u)return new Intl.DateTimeFormat(_).format(l);let T,E={},N=null;for(let t=0;t<h.length&&(T=h[t],E=n[T]||{},N=E[u],!k(N));t++)Ee(e,u,T,0,"datetime format");if(!k(N)||!p(T))return r?-1:u;let g=`${T}__${u}`;o(f)||(g=`${g}__${JSON.stringify(f)}`);let L=a.get(g);return L||(L=new Intl.DateTimeFormat(T,s({},N,f)),a.set(g,L)),d?L.formatToParts(l):L.format(l)}function Me(...e){const[t,r,o,c]=e;let s,a={},u={};if(p(t)){if(!/\d{4}-\d{2}-\d{2}(T.*)?/.test(t))throw Error(xe.INVALID_ISO_DATE_ARGUMENT);s=new Date(t);try{s.toISOString()}catch(e){throw Error(xe.INVALID_ISO_DATE_ARGUMENT)}}else if("[object Date]"===h(t)){if(isNaN(t.getTime()))throw Error(xe.INVALID_DATE_ARGUMENT);s=t}else{if(!n(t))throw Error(xe.INVALID_ARGUMENT);s=t}return p(r)?a.key=r:k(r)&&(a=r),p(o)?a.locale=o:k(o)&&(u=o),k(c)&&(u=c),[a.key||"",s,a,u]}function Ue(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__datetimeFormatters.has(n)&&r.__datetimeFormatters.delete(n)}}function $e(e,...t){const{numberFormats:n,unresolving:r,fallbackLocale:c}=e,{__numberFormatters:a}=e,[u,l,i,f]=We(...t);m(i.missingWarn);m(i.fallbackWarn);const d=!!i.part,_=p(i.locale)?i.locale:e.locale,h=Ne(e,c,_);if(!p(u)||""===u)return new Intl.NumberFormat(_).format(l);let T,E={},N=null;for(let t=0;t<h.length&&(T=h[t],E=n[T]||{},N=E[u],!k(N));t++)Ee(e,u,T,0,"number format");if(!k(N)||!p(T))return r?-1:u;let g=`${T}__${u}`;o(f)||(g=`${g}__${JSON.stringify(f)}`);let L=a.get(g);return L||(L=new Intl.NumberFormat(T,s({},N,f)),a.set(g,L)),d?L.formatToParts(l):L.format(l)}function We(...e){const[t,r,o,c]=e;let s={},a={};if(!n(t))throw Error(xe.INVALID_ARGUMENT);const u=t;return p(r)?s.key=r:k(r)&&(s=r),p(o)?s.locale=o:k(o)&&(a=o),k(c)&&(a=c),[s.key||"",u,s,a]}function Ke(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__numberFormatters.has(n)&&r.__numberFormatters.delete(n)}}export{F as CompileErrorCodes,xe as CoreErrorCodes,oe as CoreWarnCodes,I as DEFAULT_MESSAGE_DATA_TYPE,le as MISSING_RESOLVE_VALUE,ue as NOT_REOSLVED,ae as VERSION,Ce as clearCompileCache,Ue as clearDateTimeFormat,Ke as clearNumberFormat,Ie as compileToFunction,D as createCompileError,he as createCoreContext,Pe as createCoreError,w as createMessageContext,Se as datetime,de as getAdditionalMeta,ee as getDevToolsHook,Ne as getLocaleChain,se as getWarnMessage,A as handleFlatJson,Ee as handleMissing,te as initI18nDevTools,we as isMessageFunction,ke as isTranslateFallbackWarn,Te as isTranslateMissingWarn,$e as number,L as parse,Me as parseDateTimeArgs,We as parseNumberArgs,Re as parseTranslateArgs,fe as registerMessageCompiler,y as resolveValue,me as setAdditionalMeta,Z as setDevToolsHook,Fe as translate,ne as translateDevTools,ye as updateFallbackLocale}; |
/*! | ||
* @intlify/core-base v9.1.6 | ||
* @intlify/core-base v9.2.0-alpha.1 | ||
* (c) 2021 kazuya kawaguchi | ||
@@ -10,4 +10,4 @@ * Released under the MIT License. | ||
export * from '@intlify/runtime'; | ||
import { defaultOnError, baseCompile, createCompileError } from '@intlify/message-compiler'; | ||
export { createCompileError } from '@intlify/message-compiler'; | ||
import { defaultOnError, baseCompile, CompileErrorCodes, createCompileError } from '@intlify/message-compiler'; | ||
export { CompileErrorCodes, createCompileError } from '@intlify/message-compiler'; | ||
import { format, isString, isArray, isPlainObject, assign, isFunction, isBoolean, isRegExp, warn, isObject, escapeHtml, inBrowser, mark, measure, generateCodeFrame, generateFormatCacheKey, isNumber, isEmptyObject, isDate } from '@intlify/shared'; | ||
@@ -38,10 +38,19 @@ import { IntlifyDevToolsHooks } from '@intlify/devtools-if'; | ||
const CoreWarnCodes = { | ||
NOT_FOUND_KEY: 1, | ||
FALLBACK_TO_TRANSLATE: 2, | ||
CANNOT_FORMAT_NUMBER: 3, | ||
FALLBACK_TO_NUMBER_FORMAT: 4, | ||
CANNOT_FORMAT_DATE: 5, | ||
FALLBACK_TO_DATE_FORMAT: 6, | ||
__EXTEND_POINT__: 7 | ||
}; | ||
/** @internal */ | ||
const warnMessages = { | ||
[0 /* NOT_FOUND_KEY */]: `Not found '{key}' key in '{locale}' locale messages.`, | ||
[1 /* FALLBACK_TO_TRANSLATE */]: `Fall back to translate '{key}' key with '{target}' locale.`, | ||
[2 /* CANNOT_FORMAT_NUMBER */]: `Cannot format a number value due to not supported Intl.NumberFormat.`, | ||
[3 /* FALLBACK_TO_NUMBER_FORMAT */]: `Fall back to number format '{key}' key with '{target}' locale.`, | ||
[4 /* CANNOT_FORMAT_DATE */]: `Cannot format a date value due to not supported Intl.DateTimeFormat.`, | ||
[5 /* FALLBACK_TO_DATE_FORMAT */]: `Fall back to datetime format '{key}' key with '{target}' locale.` | ||
[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.` | ||
}; | ||
@@ -52,2 +61,3 @@ function getWarnMessage(code, ...args) { | ||
/* eslint-disable @typescript-eslint/no-explicit-any */ | ||
/** | ||
@@ -57,3 +67,3 @@ * Intlify core-base version | ||
*/ | ||
const VERSION = '9.1.6'; | ||
const VERSION = '9.2.0-alpha.1'; | ||
const NOT_REOSLVED = -1; | ||
@@ -124,2 +134,5 @@ const MISSING_RESOLVE_VALUE = ''; | ||
: _compiler; | ||
const messageResolver = isFunction(options.messageResolver) | ||
? options.messageResolver | ||
: resolveValue; | ||
const onWarn = isFunction(options.onWarn) ? options.onWarn : warn; | ||
@@ -156,2 +169,3 @@ // setup internal options | ||
messageCompiler, | ||
messageResolver, | ||
onWarn, | ||
@@ -204,3 +218,3 @@ __datetimeFormatters, | ||
if ((process.env.NODE_ENV !== 'production') && isTranslateMissingWarn(missingWarn, key)) { | ||
onWarn(getWarnMessage(0 /* NOT_FOUND_KEY */, { key, locale })); | ||
onWarn(getWarnMessage(CoreWarnCodes.NOT_FOUND_KEY, { key, locale })); | ||
} | ||
@@ -227,9 +241,7 @@ return key; | ||
// last block defined by default | ||
const defaults = isArray(fallback) | ||
const defaults = isArray(fallback) || !isPlainObject(fallback) | ||
? fallback | ||
: isPlainObject(fallback) | ||
: fallback['default'] | ||
? fallback['default'] | ||
? fallback['default'] | ||
: null | ||
: fallback; | ||
: null; | ||
// convert defaults to array | ||
@@ -288,2 +300,3 @@ block = isString(defaults) ? [defaults] : defaults; | ||
} | ||
/* eslint-enable @typescript-eslint/no-explicit-any */ | ||
@@ -332,2 +345,8 @@ const RE_HTML_TAG = /<\/?[\w\s="/.':;#-\/]+>/; | ||
const CoreErrorCodes = { | ||
INVALID_ARGUMENT: CompileErrorCodes.__EXTEND_POINT__, | ||
INVALID_DATE_ARGUMENT: CompileErrorCodes.__EXTEND_POINT__ + 1, | ||
INVALID_ISO_DATE_ARGUMENT: CompileErrorCodes.__EXTEND_POINT__ + 2, | ||
__EXTEND_POINT__: CompileErrorCodes.__EXTEND_POINT__ + 3 | ||
}; | ||
function createCoreError(code) { | ||
@@ -338,6 +357,6 @@ return createCompileError(code, null, (process.env.NODE_ENV !== 'production') ? { messages: errorMessages } : undefined); | ||
const errorMessages = { | ||
[14 /* INVALID_ARGUMENT */]: 'Invalid arguments', | ||
[15 /* INVALID_DATE_ARGUMENT */]: 'The date provided is an invalid Date object.' + | ||
[CoreErrorCodes.INVALID_ARGUMENT]: 'Invalid arguments', | ||
[CoreErrorCodes.INVALID_DATE_ARGUMENT]: 'The date provided is an invalid Date object.' + | ||
'Make sure your Date represents a valid date.', | ||
[16 /* INVALID_ISO_DATE_ARGUMENT */]: 'The argument provided is not a valid ISO date string' | ||
[CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT]: 'The argument provided is not a valid ISO date string' | ||
}; | ||
@@ -461,4 +480,4 @@ | ||
function resolveMessageFormat(context, key, locale, fallbackLocale, fallbackWarn, missingWarn) { | ||
const { messages, onWarn } = context; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const { messages, onWarn, messageResolver: resolveValue } = context; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
let message = {}; | ||
@@ -475,3 +494,3 @@ let targetLocale; | ||
isTranslateFallbackWarn(fallbackWarn, key)) { | ||
onWarn(getWarnMessage(1 /* FALLBACK_TO_TRANSLATE */, { | ||
onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_TRANSLATE, { | ||
key, | ||
@@ -530,3 +549,4 @@ target: targetLocale | ||
break; | ||
const missingRet = handleMissing(context, key, targetLocale, missingWarn, type); | ||
const missingRet = handleMissing(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
key, targetLocale, missingWarn, type); | ||
if (missingRet !== key) { | ||
@@ -616,3 +636,3 @@ format = missingRet; | ||
if (!isString(arg1) && !isNumber(arg1) && !isMessageFunction(arg1)) { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -678,3 +698,3 @@ // prettier-ignore | ||
function getMessageContextOptions(context, locale, message, options) { | ||
const { modifiers, pluralRules } = context; | ||
const { modifiers, pluralRules, messageResolver: resolveValue } = context; | ||
const resolveMessage = (key) => { | ||
@@ -732,3 +752,3 @@ const val = resolveValue(message, key); | ||
if ((process.env.NODE_ENV !== 'production') && !Availabilities.dateTimeFormat) { | ||
onWarn(getWarnMessage(4 /* CANNOT_FORMAT_DATE */)); | ||
onWarn(getWarnMessage(CoreWarnCodes.CANNOT_FORMAT_DATE)); | ||
return MISSING_RESOLVE_VALUE; | ||
@@ -745,3 +765,4 @@ } | ||
const locale = isString(options.locale) ? options.locale : context.locale; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const locales = getLocaleChain(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
fallbackLocale, locale); | ||
if (!isString(key) || key === '') { | ||
@@ -762,3 +783,3 @@ return new Intl.DateTimeFormat(locale).format(value); | ||
isTranslateFallbackWarn(fallbackWarn, key)) { | ||
onWarn(getWarnMessage(5 /* FALLBACK_TO_DATE_FORMAT */, { | ||
onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_DATE_FORMAT, { | ||
key, | ||
@@ -786,3 +807,3 @@ target: targetLocale | ||
break; | ||
handleMissing(context, key, targetLocale, missingWarn, type); | ||
handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
from = to; | ||
@@ -815,3 +836,3 @@ } | ||
if (!/\d{4}-\d{2}-\d{2}(T.*)?/.test(arg1)) { | ||
throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT); | ||
} | ||
@@ -824,3 +845,3 @@ value = new Date(arg1); | ||
catch (e) { | ||
throw createCoreError(16 /* INVALID_ISO_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ISO_DATE_ARGUMENT); | ||
} | ||
@@ -830,3 +851,3 @@ } | ||
if (isNaN(arg1.getTime())) { | ||
throw createCoreError(15 /* INVALID_DATE_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_DATE_ARGUMENT); | ||
} | ||
@@ -839,3 +860,3 @@ value = arg1; | ||
else { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -876,3 +897,3 @@ if (isString(arg2)) { | ||
if ((process.env.NODE_ENV !== 'production') && !Availabilities.numberFormat) { | ||
onWarn(getWarnMessage(2 /* CANNOT_FORMAT_NUMBER */)); | ||
onWarn(getWarnMessage(CoreWarnCodes.CANNOT_FORMAT_NUMBER)); | ||
return MISSING_RESOLVE_VALUE; | ||
@@ -889,3 +910,4 @@ } | ||
const locale = isString(options.locale) ? options.locale : context.locale; | ||
const locales = getLocaleChain(context, fallbackLocale, locale); | ||
const locales = getLocaleChain(context, // eslint-disable-line @typescript-eslint/no-explicit-any | ||
fallbackLocale, locale); | ||
if (!isString(key) || key === '') { | ||
@@ -906,3 +928,3 @@ return new Intl.NumberFormat(locale).format(value); | ||
isTranslateFallbackWarn(fallbackWarn, key)) { | ||
onWarn(getWarnMessage(3 /* FALLBACK_TO_NUMBER_FORMAT */, { | ||
onWarn(getWarnMessage(CoreWarnCodes.FALLBACK_TO_NUMBER_FORMAT, { | ||
key, | ||
@@ -930,3 +952,3 @@ target: targetLocale | ||
break; | ||
handleMissing(context, key, targetLocale, missingWarn, type); | ||
handleMissing(context, key, targetLocale, missingWarn, type); // eslint-disable-line @typescript-eslint/no-explicit-any | ||
from = to; | ||
@@ -955,3 +977,3 @@ } | ||
if (!isNumber(arg1)) { | ||
throw createCoreError(14 /* INVALID_ARGUMENT */); | ||
throw createCoreError(CoreErrorCodes.INVALID_ARGUMENT); | ||
} | ||
@@ -988,2 +1010,2 @@ const value = arg1; | ||
export { MISSING_RESOLVE_VALUE, NOT_REOSLVED, VERSION, clearCompileCache, clearDateTimeFormat, clearNumberFormat, compileToFunction, createCoreContext, createCoreError, datetime, getAdditionalMeta, getDevToolsHook, getLocaleChain, getWarnMessage, handleMissing, initI18nDevTools, isMessageFunction, isTranslateFallbackWarn, isTranslateMissingWarn, number, parseDateTimeArgs, parseNumberArgs, parseTranslateArgs, registerMessageCompiler, setAdditionalMeta, setDevToolsHook, translate, translateDevTools, updateFallbackLocale }; | ||
export { CoreErrorCodes, CoreWarnCodes, MISSING_RESOLVE_VALUE, NOT_REOSLVED, VERSION, clearCompileCache, clearDateTimeFormat, clearNumberFormat, compileToFunction, createCoreContext, createCoreError, datetime, getAdditionalMeta, getDevToolsHook, getLocaleChain, getWarnMessage, handleMissing, initI18nDevTools, isMessageFunction, isTranslateFallbackWarn, isTranslateMissingWarn, number, parseDateTimeArgs, parseNumberArgs, parseTranslateArgs, registerMessageCompiler, setAdditionalMeta, setDevToolsHook, translate, translateDevTools, updateFallbackLocale }; |
/*! | ||
* @intlify/core-base v9.1.6 | ||
* @intlify/core-base v9.2.0-alpha.1 | ||
* (c) 2021 kazuya kawaguchi | ||
* Released under the MIT License. | ||
*/ | ||
var IntlifyCoreBase=function(e){"use strict";const t=/\{([0-9a-zA-Z]+)\}/g;const n=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),r=e=>"number"==typeof e&&isFinite(e),o=e=>"[object RegExp]"===g(e),s=e=>b(e)&&0===Object.keys(e).length;function c(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const a=Object.assign;function u(e){return e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}const l=Object.prototype.hasOwnProperty;function i(e,t){return l.call(e,t)}const f=Array.isArray,p=e=>"function"==typeof e,m=e=>"string"==typeof e,d=e=>"boolean"==typeof e,h=e=>null!==e&&"object"==typeof e,k=Object.prototype.toString,g=e=>k.call(e),b=e=>"[object Object]"===g(e),y=[];y[0]={w:[0],i:[3,0],"[":[4],o:[7]},y[1]={w:[1],".":[2],"[":[4],o:[7]},y[2]={w:[2],i:[3,0],0:[3,0]},y[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]},y[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]},y[5]={"'":[4,0],o:8,l:[5,0]},y[6]={'"':[4,0],o:8,l:[6,0]};const x=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function C(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 T(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(x.test(t)?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)}function _(e){const t=[];let n,r,o,s,c,a,u,l=-1,i=0,f=0;const p=[];function m(){const t=e[l+1];if(5===i&&"'"===t||6===i&&'"'===t)return l++,o="\\"+t,p[0](),!0}for(p[0]=()=>{void 0===r?r=o:r+=o},p[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},p[2]=()=>{p[0](),f++},p[3]=()=>{if(f>0)f--,i=4,p[0]();else{if(f=0,void 0===r)return!1;if(r=T(r),!1===r)return!1;p[1]()}};null!==i;)if(l++,n=e[l],"\\"!==n||!m()){if(s=C(n),u=y[i],c=u[s]||u.l||8,8===c)return;if(i=c[0],void 0!==c[1]&&(a=p[c[1]],a&&(o=n,!1===a())))return;if(7===i)return t}}const v=new Map;function L(e,t){if(!h(e))return null;let n=v.get(t);if(n||(n=_(t),n&&v.set(t,n)),!n)return null;const r=n.length;let o=e,s=0;for(;s<r;){const e=o[n[s]];if(void 0===e)return null;o=e,s++}return o}const w=e=>e,P=e=>"",O="text",F=e=>0===e.length?"":e.join(""),N=e=>null==e?"":f(e)||b(e)&&e.toString===k?JSON.stringify(e,null,2):String(e);function S(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function $(e={}){const t=e.locale,n=function(e){const t=r(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(r(e.named.count)||r(e.named.n))?r(e.named.count)?e.named.count:r(e.named.n)?e.named.n:t:t}(e),o=h(e.pluralRules)&&m(t)&&p(e.pluralRules[t])?e.pluralRules[t]:S,s=h(e.pluralRules)&&m(t)&&p(e.pluralRules[t])?S:void 0,c=e.list||[],a=e.named||{};r(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,a);function u(t){const n=p(e.messages)?e.messages(t):!!h(e.messages)&&e.messages[t];return n||(e.parent?e.parent.message(t):P)}const l=b(e.processor)&&p(e.processor.normalize)?e.processor.normalize:F,i=b(e.processor)&&p(e.processor.interpolate)?e.processor.interpolate:N,f={list:e=>c[e],named:e=>a[e],plural:e=>e[o(n,e.length,s)],linked:(t,n)=>{const r=u(t)(f);return m(n)?(o=n,e.modifiers?e.modifiers[o]:w)(r):r;var o},message:u,type:b(e.processor)&&m(e.processor.type)?e.processor.type:O,interpolate:i,normalize:l};return f}function E(e,t,n={}){const{domain:r}=n,o=new SyntaxError(String(e));return o.code=e,t&&(o.location=t),o.domain=r,o}function I(e){throw e}function A(e,t,n){const r={start:e,end:t};return null!=n&&(r.source=n),r}const M=" ",W="\n",j=String.fromCharCode(8232),D=String.fromCharCode(8233);function R(e){const t=e;let n=0,r=1,o=1,s=0;const c=e=>"\r"===t[e]&&t[e+1]===W,a=e=>t[e]===D,u=e=>t[e]===j,l=e=>c(e)||(e=>t[e]===W)(e)||a(e)||u(e),i=e=>c(e)||a(e)||u(e)?W:t[e];function f(){return s=0,l(n)&&(r++,o=0),c(n)&&n++,n++,o++,t[n]}return{index:()=>n,line:()=>r,column:()=>o,peekOffset:()=>s,charAt:i,currentChar:()=>i(n),currentPeek:()=>i(n+s),next:f,peek:function(){return c(n+s)&&s++,s++,t[n+s]},reset:function(){n=0,r=1,o=1,s=0},resetPeek:function(e=0){s=e},skipToPeek:function(){const e=n+s;for(;e!==n;)f();s=0}}}const J=void 0;function z(e,t={}){const n=!1!==t.location,r=R(e),o=()=>r.index(),s=()=>{return e=r.line(),t=r.column(),n=r.index(),{line:e,column:t,offset:n};var e,t,n},c=s(),a=o(),u={currentType:14,offset:a,startLoc:c,endLoc:c,lastType:14,lastOffset:a,lastStartLoc:c,lastEndLoc:c,braceNest:0,inLinked:!1,text:""},l=()=>u,{onError:i}=t;function f(e,t,r){e.endLoc=s(),e.currentType=t;const o={type:t};return n&&(o.loc=A(e.startLoc,e.endLoc)),null!=r&&(o.value=r),o}const p=e=>f(e,14);function m(e,t){return e.currentChar()===t?(e.next(),t):(s(),"")}function d(e){let t="";for(;e.currentPeek()===M||e.currentPeek()===W;)t+=e.currentPeek(),e.peek();return t}function h(e){const t=d(e);return e.skipToPeek(),t}function k(e){if(e===J)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function g(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r=function(e){if(e===J)return!1;const t=e.charCodeAt(0);return t>=48&&t<=57}("-"===e.currentPeek()?e.peek():e.currentPeek());return e.resetPeek(),r}function b(e){d(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function y(e,t=!0){const n=(t=!1,r="",o=!1)=>{const s=e.currentPeek();return"{"===s?"%"!==r&&t:"@"!==s&&s?"%"===s?(e.peek(),n(t,"%",!0)):"|"===s?!("%"!==r&&!o)||!(r===M||r===W):s===M?(e.peek(),n(!0,M,o)):s!==W||(e.peek(),n(!0,W,o)):"%"===r||t},r=n();return t&&e.resetPeek(),r}function x(e,t){const n=e.currentChar();return n===J?J:t(n)?(e.next(),n):null}function C(e){return x(e,(e=>{const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}))}function T(e){return x(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57}))}function _(e){return x(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}))}function v(e){let t="",n="";for(;t=T(e);)n+=t;return n}function L(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return w(e,t,4);case"U":return w(e,t,6);default:return s(),""}}function w(e,t,n){m(e,t);let r="";for(let t=0;t<n;t++){const t=_(e);if(!t){s(),e.currentChar();break}r+=t}return`\\${t}${r}`}function P(e){h(e);const t=m(e,"|");return h(e),t}function O(e,t){let n=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&s(),e.next(),n=f(t,2,"{"),h(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&s(),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&h(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&s(),n=F(e,t)||p(t),t.braceNest=0,n;default:let r=!0,o=!0,c=!0;if(b(e))return t.braceNest>0&&s(),n=f(t,1,P(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return s(),t.braceNest=0,N(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r=k(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,5,function(e){h(e);let t="",n="";for(;t=C(e);)n+=t;return e.currentChar()===J&&s(),n}(e)),h(e),n;if(o=g(e,t))return n=f(t,6,function(e){h(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${v(e)}`):t+=v(e),e.currentChar()===J&&s(),t}(e)),h(e),n;if(c=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r="'"===e.currentPeek();return e.resetPeek(),r}(e,t))return n=f(t,7,function(e){h(e),m(e,"'");let t="",n="";const r=e=>"'"!==e&&e!==W;for(;t=x(e,r);)n+="\\"===t?L(e):t;const o=e.currentChar();return o===W||o===J?(s(),o===W&&(e.next(),m(e,"'")),n):(m(e,"'"),n)}(e)),h(e),n;if(!r&&!o&&!c)return n=f(t,13,function(e){h(e);let t="",n="";const r=e=>"{"!==e&&"}"!==e&&e!==M&&e!==W;for(;t=x(e,r);)n+=t;return n}(e)),s(),h(e),n}return n}function F(e,t){const{currentType:n}=t;let r=null;const o=e.currentChar();switch(8!==n&&9!==n&&12!==n&&10!==n||o!==W&&o!==M||s(),o){case"@":return e.next(),r=f(t,8,"@"),t.inLinked=!0,r;case".":return h(e),e.next(),f(t,9,".");case":":return h(e),e.next(),f(t,10,":");default:return b(e)?(r=f(t,1,P(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(8!==n)return!1;d(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;d(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(h(e),F(e,t)):function(e,t){const{currentType:n}=t;if(9!==n)return!1;d(e);const r=k(e.currentPeek());return e.resetPeek(),r}(e,t)?(h(e),f(t,12,function(e){let t="",n="";for(;t=C(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?k(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||t===M||!t)&&(t===W?(e.peek(),r()):k(t))},o=r();return e.resetPeek(),o}(e,t)?(h(e),"{"===o?O(e,t)||r:f(t,11,function(e){const t=(n=!1,r)=>{const o=e.currentChar();return"{"!==o&&"%"!==o&&"@"!==o&&"|"!==o&&o?o===M?r:o===W?(r+=o,e.next(),t(n,r)):(r+=o,e.next(),t(!0,r)):r};return t(!1,"")}(e))):(8===n&&s(),t.braceNest=0,t.inLinked=!1,N(e,t))}}function N(e,t){let n={type:14};if(t.braceNest>0)return O(e,t)||p(t);if(t.inLinked)return F(e,t)||p(t);const r=e.currentChar();switch(r){case"{":return O(e,t)||p(t);case"}":return s(),e.next(),f(t,3,"}");case"@":return F(e,t)||p(t);default:if(b(e))return n=f(t,1,P(e)),t.braceNest=0,t.inLinked=!1,n;if(y(e))return f(t,0,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"}"!==r&&"@"!==r&&r?"%"===r?y(e)?(n+=r,e.next(),t(n)):n:"|"===r?n:r===M||r===W?y(e)?(n+=r,e.next(),t(n)):b(e)?n:(n+=r,e.next(),t(n)):(n+=r,e.next(),t(n)):n};return t("")}(e));if("%"===r)return e.next(),f(t,4,"%")}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:c}=u;return u.lastType=e,u.lastOffset=t,u.lastStartLoc=n,u.lastEndLoc=c,u.offset=o(),u.startLoc=s(),r.currentChar()===J?f(u,14):N(r,u)},currentOffset:o,currentPosition:s,context:l}}const H=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function U(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 V(e={}){const t=!1!==e.location,{onError:n}=e;function r(e,n,r){const o={type:e,start:n,end:n};return t&&(o.loc={start:r,end:r}),o}function o(e,n,r,o){e.end=n,o&&(e.type=o),t&&e.loc&&(e.loc.end=r)}function s(e,t){const n=e.context(),s=r(3,n.offset,n.startLoc);return s.value=t,o(s,e.currentOffset(),e.currentPosition()),s}function c(e,t){const n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(5,s,c);return a.index=parseInt(t,10),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function u(e,t){const n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(4,s,c);return a.key=t,e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function l(e,t){const n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(9,s,c);return a.value=t.replace(H,U),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function i(e){const t=e.context(),n=r(6,t.offset,t.startLoc);let s=e.nextToken();if(9===s.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(8,s,c);return 12!==t.type?(a.value="",o(a,s,c),{nextConsumeToken:t,node:a}):(null==t.value&&G(t),a.value=t.value||"",o(a,e.currentOffset(),e.currentPosition()),{node:a})}(e);n.modifier=t.node,s=t.nextConsumeToken||e.nextToken()}switch(10!==s.type&&G(s),s=e.nextToken(),2===s.type&&(s=e.nextToken()),s.type){case 11:null==s.value&&G(s),n.key=function(e,t){const n=e.context(),s=r(7,n.offset,n.startLoc);return s.value=t,o(s,e.currentOffset(),e.currentPosition()),s}(e,s.value||"");break;case 5:null==s.value&&G(s),n.key=u(e,s.value||"");break;case 6:null==s.value&&G(s),n.key=c(e,s.value||"");break;case 7:null==s.value&&G(s),n.key=l(e,s.value||"");break;default:const t=e.context(),a=r(7,t.offset,t.startLoc);return a.value="",o(a,t.offset,t.startLoc),n.key=a,o(n,t.offset,t.startLoc),{nextConsumeToken:s,node:n}}return o(n,e.currentOffset(),e.currentPosition()),{node:n}}function f(e){const t=e.context(),n=r(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let a=null;do{const t=a||e.nextToken();switch(a=null,t.type){case 0:null==t.value&&G(t),n.items.push(s(e,t.value||""));break;case 6:null==t.value&&G(t),n.items.push(c(e,t.value||""));break;case 5:null==t.value&&G(t),n.items.push(u(e,t.value||""));break;case 7:null==t.value&&G(t),n.items.push(l(e,t.value||""));break;case 8:const r=i(e);n.items.push(r.node),a=r.nextConsumeToken||null}}while(14!==t.currentType&&1!==t.currentType);return o(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function p(e){const t=e.context(),{offset:n,startLoc:s}=t,c=f(e);return 14===t.currentType?c:function(e,t,n,s){const c=e.context();let a=0===s.items.length;const u=r(1,t,n);u.cases=[],u.cases.push(s);do{const t=f(e);a||(a=0===t.items.length),u.cases.push(t)}while(14!==c.currentType);return o(u,e.currentOffset(),e.currentPosition()),u}(e,n,s,c)}return{parse:function(n){const s=z(n,a({},e)),c=s.context(),u=r(0,c.offset,c.startLoc);return t&&u.loc&&(u.loc.source=n),u.body=p(s),o(u,s.currentOffset(),s.currentPosition()),u}}}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 K(e,t){for(let n=0;n<e.length;n++)q(e[n],t)}function q(e,t){switch(e.type){case 1:K(e.cases,t),t.helper("plural");break;case 2:K(e.items,t);break;case 6:q(e.key,t),t.helper("linked");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&&q(e.body,n);const r=n.context();e.helpers=Array.from(r.helpers)}function Y(e,t){const{helper:n}=e;switch(t.type){case 0:!function(e,t){t.body?Y(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&&(Y(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 n=0;n<o&&(Y(e,t.items[n]),n!==o-1);n++)e.push(", ");e.deindent(r()),e.push("])")}(e,t);break;case 6:!function(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),Y(e,t.key),t.modifier&&(e.push(", "),Y(e,t.modifier)),e.push(")")}(e,t);break;case 8:case 7: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);break;case 9:case 3:e.push(JSON.stringify(t.value),t)}}function Z(e,t={}){const n=a({},t),r=V(n).parse(e);return B(r,n),((e,t={})=>{const n=m(t.mode)?t.mode:"normal",r=m(t.filename)?t.filename:"message.intl",o=t.needIndent?t.needIndent:"arrow"!==n,s=e.helpers||[],c=function(e,t){const{filename:n,breakLineCode:r,needIndent:o}=t,s={source:e.loc.source,filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:r,needIndent:o,indentLevel:0};function c(e,t){s.code+=e}function a(e,t=!0){const n=t?r:"";c(o?n+" ".repeat(e):n)}return{context:()=>s,push:c,indent:function(e=!0){const t=++s.indentLevel;e&&a(t)},deindent:function(e=!0){const t=--s.indentLevel;e&&a(t)},newline:function(){a(s.indentLevel)},helper:e=>`_${e}`,needIndent:()=>s.needIndent}}(e,{mode:n,filename:r,sourceMap:!!t.sourceMap,breakLineCode:null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",needIndent:o});c.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),c.indent(o),s.length>0&&(c.push(`const { ${s.map((e=>`${e}: _${e}`)).join(", ")} } = ctx`),c.newline()),c.push("return "),Y(c,e),c.deindent(o),c.push("}");const{code:a,map:u}=c.context();return{ast:e,code:a,map:u?u.toJSON():void 0}})(r,n)}const Q="i18n:init";let X=null;const ee=te("function:translate");function te(e){return t=>X&&X.emit(e,t)}const ne={0:"Not found '{key}' key in '{locale}' locale messages.",1:"Fall back to translate '{key}' key with '{target}' locale.",2:"Cannot format a number value due to not supported Intl.NumberFormat.",3:"Fall back to number format '{key}' key with '{target}' locale.",4:"Cannot format a date value due to not supported Intl.DateTimeFormat.",5:"Fall back to datetime format '{key}' key with '{target}' locale."};const re="9.1.6";let oe;let se=null;let ce=0;function ae(e,t,n,r,o){const{missing:s}=e;if(null!==s){const r=s(e,n,t,o);return m(r)?r:t}return t}function ue(e,t,n){const r=e;r.__localeChainCache||(r.__localeChainCache=new Map);let o=r.__localeChainCache.get(n);if(!o){o=[];let e=[n];for(;f(e);)e=le(o,e,t);const s=f(t)?t:b(t)?t.default?t.default:null:t;e=m(s)?[s]:s,f(e)&&le(o,e,!1),r.__localeChainCache.set(n,o)}return o}function le(e,t,n){let r=!0;for(let o=0;o<t.length&&d(r);o++){m(t[o])&&(r=ie(e,t[o],n))}return r}function ie(e,t,n){let r;const o=t.split("-");do{r=fe(e,o.join("-"),n),o.splice(-1,1)}while(o.length&&!0===r);return r}function fe(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),(f(n)||b(n))&&n[o]&&(r=n[o])}return r}const pe=e=>e;let me=Object.create(null);const de=()=>"",he=e=>p(e);function ke(e,t,r,o,s,c){const{messageCompiler:a,warnHtmlMessage:u}=e;if(he(o)){const e=o;return e.locale=e.locale||r,e.key=e.key||t,e}const l=a(o,function(e,t,r,o,s,c){return{warnHtmlMessage:s,onError:e=>{throw c&&c(e),e},onCacheKey:e=>((e,t,r)=>n({l:e,k:t,s:r}))(t,r,e)}}(0,r,s,0,u,c));return l.locale=r,l.key=t,l.source=o,l}function ge(...e){const[t,n,o]=e,c={};if(!m(t)&&!r(t)&&!he(t))throw Error(14);const u=r(t)?String(t):(he(t),t);return r(n)?c.plural=n:m(n)?c.default=n:b(n)&&!s(n)?c.named=n:f(n)&&(c.list=n),r(o)?c.plural=o:m(o)?c.default=o:b(o)&&a(c,o),[u,c]}function be(...e){const[t,n,o,s]=e;let c,a={},u={};if(m(t)){if(!/\d{4}-\d{2}-\d{2}(T.*)?/.test(t))throw Error(16);c=new Date(t);try{c.toISOString()}catch(e){throw Error(16)}}else if("[object Date]"===g(t)){if(isNaN(t.getTime()))throw Error(15);c=t}else{if(!r(t))throw Error(14);c=t}return m(n)?a.key=n:b(n)&&(a=n),m(o)?a.locale=o:b(o)&&(u=o),b(s)&&(u=s),[a.key||"",c,a,u]}function ye(...e){const[t,n,o,s]=e;let c={},a={};if(!r(t))throw Error(14);const u=t;return m(n)?c.key=n:b(n)&&(c=n),m(o)?c.locale=o:b(o)&&(a=o),b(s)&&(a=s),[c.key||"",u,c,a]}return e.DEFAULT_MESSAGE_DATA_TYPE=O,e.MISSING_RESOLVE_VALUE="",e.NOT_REOSLVED=-1,e.VERSION=re,e.clearCompileCache=function(){me=Object.create(null)},e.clearDateTimeFormat=function(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__datetimeFormatters.has(n)&&r.__datetimeFormatters.delete(n)}},e.clearNumberFormat=function(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__numberFormatters.has(n)&&r.__numberFormatters.delete(n)}},e.compileToFunction=function(e,t={}){{const n=(t.onCacheKey||pe)(e),r=me[n];if(r)return r;let o=!1;const s=t.onError||I;t.onError=e=>{o=!0,s(e)};const{code:c}=Z(e,t),a=new Function(`return ${c}`)();return o?a:me[n]=a}},e.createCompileError=E,e.createCoreContext=function(e={}){const t=m(e.version)?e.version:re,n=m(e.locale)?e.locale:"en-US",r=f(e.fallbackLocale)||b(e.fallbackLocale)||m(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:n,s=b(e.messages)?e.messages:{[n]:{}},u=b(e.datetimeFormats)?e.datetimeFormats:{[n]:{}},l=b(e.numberFormats)?e.numberFormats:{[n]:{}},i=a({},e.modifiers||{},{upper:e=>m(e)?e.toUpperCase():e,lower:e=>m(e)?e.toLowerCase():e,capitalize:e=>m(e)?`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`:e}),k=e.pluralRules||{},g=p(e.missing)?e.missing:null,y=!d(e.missingWarn)&&!o(e.missingWarn)||e.missingWarn,x=!d(e.fallbackWarn)&&!o(e.fallbackWarn)||e.fallbackWarn,C=!!e.fallbackFormat,T=!!e.unresolving,_=p(e.postTranslation)?e.postTranslation:null,v=b(e.processor)?e.processor:null,L=!d(e.warnHtmlMessage)||e.warnHtmlMessage,w=!!e.escapeParameter,P=p(e.messageCompiler)?e.messageCompiler:oe,O=p(e.onWarn)?e.onWarn:c,F=e,N=h(F.__datetimeFormatters)?F.__datetimeFormatters:new Map,S=h(F.__numberFormatters)?F.__numberFormatters:new Map,$=h(F.__meta)?F.__meta:{};return ce++,{version:t,cid:ce,locale:n,fallbackLocale:r,messages:s,datetimeFormats:u,numberFormats:l,modifiers:i,pluralRules:k,missing:g,missingWarn:y,fallbackWarn:x,fallbackFormat:C,unresolving:T,postTranslation:_,processor:v,warnHtmlMessage:L,escapeParameter:w,messageCompiler:P,onWarn:O,__datetimeFormatters:N,__numberFormatters:S,__meta:$}},e.createCoreError=function(e){return E(e,null,void 0)},e.createMessageContext=$,e.datetime=function(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:o}=e,{__datetimeFormatters:c}=e,[u,l,i,f]=be(...t);d(i.missingWarn),d(i.fallbackWarn);const p=!!i.part,h=m(i.locale)?i.locale:e.locale,k=ue(e,o,h);if(!m(u)||""===u)return new Intl.DateTimeFormat(h).format(l);let g,y={},x=null;for(let t=0;t<k.length&&(g=k[t],y=n[g]||{},x=y[u],!b(x));t++)ae(e,u,g,0,"datetime format");if(!b(x)||!m(g))return r?-1:u;let C=`${g}__${u}`;s(f)||(C=`${C}__${JSON.stringify(f)}`);let T=c.get(C);return T||(T=new Intl.DateTimeFormat(g,a({},x,f)),c.set(C,T)),p?T.formatToParts(l):T.format(l)},e.getAdditionalMeta=()=>se,e.getDevToolsHook=function(){return X},e.getLocaleChain=ue,e.getWarnMessage=function(e,...n){return function(e,...n){return 1===n.length&&h(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),e.replace(t,((e,t)=>n.hasOwnProperty(t)?n[t]:""))}(ne[e],...n)},e.handleFlatJson=function e(t){if(!h(t))return t;for(const n in t)if(i(t,n))if(n.includes(".")){const r=n.split("."),o=r.length-1;let s=t;for(let e=0;e<o;e++)r[e]in s||(s[r[e]]={}),s=s[r[e]];s[r[o]]=t[n],delete t[n],h(s[r[o]])&&e(s[r[o]])}else h(t[n])&&e(t[n]);return t},e.handleMissing=ae,e.initI18nDevTools=function(e,t,n){X&&X.emit(Q,{timestamp:Date.now(),i18n:e,version:t,meta:n})},e.isMessageFunction=he,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}=e,{__numberFormatters:c}=e,[u,l,i,f]=ye(...t);d(i.missingWarn),d(i.fallbackWarn);const p=!!i.part,h=m(i.locale)?i.locale:e.locale,k=ue(e,o,h);if(!m(u)||""===u)return new Intl.NumberFormat(h).format(l);let g,y={},x=null;for(let t=0;t<k.length&&(g=k[t],y=n[g]||{},x=y[u],!b(x));t++)ae(e,u,g,0,"number format");if(!b(x)||!m(g))return r?-1:u;let C=`${g}__${u}`;s(f)||(C=`${C}__${JSON.stringify(f)}`);let T=c.get(C);return T||(T=new Intl.NumberFormat(g,a({},x,f)),c.set(C,T)),p?T.formatToParts(l):T.format(l)},e.parse=_,e.parseDateTimeArgs=be,e.parseNumberArgs=ye,e.parseTranslateArgs=ge,e.registerMessageCompiler=function(e){oe=e},e.resolveValue=L,e.setAdditionalMeta=e=>{se=e},e.setDevToolsHook=function(e){X=e},e.translate=function(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:s,fallbackLocale:c,messages:a}=e,[l,i]=ge(...t),k=(d(i.missingWarn),d(i.fallbackWarn),d(i.escapeParameter)?i.escapeParameter:e.escapeParameter),g=!!i.resolvedMessage,b=m(i.default)||d(i.default)?d(i.default)?l:i.default:n?l:"",y=n||""!==b,x=m(i.locale)?i.locale:e.locale;k&&function(e){f(e.list)?e.list=e.list.map((e=>m(e)?u(e):e)):h(e.named)&&Object.keys(e.named).forEach((t=>{m(e.named[t])&&(e.named[t]=u(e.named[t]))}))}(i);let[C,T,_]=g?[l,x,a[x]||{}]:function(e,t,n,r,o,s){const{messages:c}=e,a=ue(e,r,n);let u,l={},i=null;const f="translate";for(let n=0;n<a.length&&(u=a[n],l=c[u]||{},null===(i=L(l,t))&&(i=l[t]),!m(i)&&!p(i));n++){const n=ae(e,t,u,0,f);n!==t&&(i=n)}return[i,u,l]}(e,l,x,c),v=l;if(g||m(C)||he(C)||y&&(C=b,v=C),!(g||(m(C)||he(C))&&m(T)))return s?-1:l;let w=!1;const P=he(C)?C:ke(e,l,T,C,v,(()=>{w=!0}));if(w)return C;const O=function(e,t,n){return t(n)}(0,P,$(function(e,t,n,o){const{modifiers:s,pluralRules:c}=e,a={locale:t,modifiers:s,pluralRules:c,messages:r=>{const o=L(n,r);if(m(o)){let n=!1;const s=ke(e,r,t,o,r,(()=>{n=!0}));return n?de:s}return he(o)?o:de}};e.processor&&(a.processor=e.processor);o.list&&(a.list=o.list);o.named&&(a.named=o.named);r(o.plural)&&(a.pluralIndex=o.plural);return a}(e,T,_,i)));return o?o(O):O},e.translateDevTools=ee,e.updateFallbackLocale=function(e,t,n){e.__localeChainCache=new Map,ue(e,n,t)},Object.defineProperty(e,"__esModule",{value:!0}),e}({}); | ||
var IntlifyCoreBase=function(e){"use strict";const t=/\{([0-9a-zA-Z]+)\}/g;const n=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),r=e=>"number"==typeof e&&isFinite(e),o=e=>"[object RegExp]"===k(e),s=e=>T(e)&&0===Object.keys(e).length;function c(e,t){"undefined"!=typeof console&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const a=Object.assign;function u(e){return e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}const l=Object.prototype.hasOwnProperty;function i(e,t){return l.call(e,t)}const f=Array.isArray,p=e=>"function"==typeof e,m=e=>"string"==typeof e,d=e=>"boolean"==typeof e,_=e=>null!==e&&"object"==typeof e,h=Object.prototype.toString,k=e=>h.call(e),T=e=>"[object Object]"===k(e),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 g=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function N(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 L(e){const t=e.trim();return("0"!==e.charAt(0)||!isNaN(parseInt(e)))&&(g.test(t)?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)}function b(e){const t=[];let n,r,o,s,c,a,u,l=-1,i=0,f=0;const p=[];function m(){const t=e[l+1];if(5===i&&"'"===t||6===i&&'"'===t)return l++,o="\\"+t,p[0](),!0}for(p[0]=()=>{void 0===r?r=o:r+=o},p[1]=()=>{void 0!==r&&(t.push(r),r=void 0)},p[2]=()=>{p[0](),f++},p[3]=()=>{if(f>0)f--,i=4,p[0]();else{if(f=0,void 0===r)return!1;if(r=L(r),!1===r)return!1;p[1]()}};null!==i;)if(l++,n=e[l],"\\"!==n||!m()){if(s=N(n),u=E[i],c=u[s]||u.l||8,8===c)return;if(i=c[0],void 0!==c[1]&&(a=p[c[1]],a&&(o=n,!1===a())))return;if(7===i)return t}}const A=new Map;function C(e,t){if(!_(e))return null;let n=A.get(t);if(n||(n=b(t),n&&A.set(t,n)),!n)return null;const r=n.length;let o=e,s=0;for(;s<r;){const e=o[n[s]];if(void 0===e)return null;o=e,s++}return o}const y=e=>e,O=e=>"",I="text",P=e=>0===e.length?"":e.join(""),x=e=>null==e?"":f(e)||T(e)&&e.toString===h?JSON.stringify(e,null,2):String(e);function v(e,t){return e=Math.abs(e),2===t?e?e>1?1:0:1:e?Math.min(e,2):0}function F(e={}){const t=e.locale,n=function(e){const t=r(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(r(e.named.count)||r(e.named.n))?r(e.named.count)?e.named.count:r(e.named.n)?e.named.n:t:t}(e),o=_(e.pluralRules)&&m(t)&&p(e.pluralRules[t])?e.pluralRules[t]:v,s=_(e.pluralRules)&&m(t)&&p(e.pluralRules[t])?v:void 0,c=e.list||[],a=e.named||{};r(e.pluralIndex)&&function(e,t){t.count||(t.count=e),t.n||(t.n=e)}(n,a);function u(t){const n=p(e.messages)?e.messages(t):!!_(e.messages)&&e.messages[t];return n||(e.parent?e.parent.message(t):O)}const l=T(e.processor)&&p(e.processor.normalize)?e.processor.normalize:P,i=T(e.processor)&&p(e.processor.interpolate)?e.processor.interpolate:x,f={list:e=>c[e],named:e=>a[e],plural:e=>e[o(n,e.length,s)],linked:(t,n)=>{const r=u(t)(f);return m(n)?(o=n,e.modifiers?e.modifiers[o]:y)(r):r;var o},message:u,type:T(e.processor)&&m(e.processor.type)?e.processor.type:I,interpolate:i,normalize:l};return f}const D={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,__EXTEND_POINT__:15};function w(e,t,n={}){const{domain:r}=n,o=new SyntaxError(String(e));return o.code=e,t&&(o.location=t),o.domain=r,o}function M(e){throw e}function R(e,t,n){const r={start:e,end:t};return null!=n&&(r.source=n),r}const S=" ",U="\n",$=String.fromCharCode(8232),W=String.fromCharCode(8233);function V(e){const t=e;let n=0,r=1,o=1,s=0;const c=e=>"\r"===t[e]&&t[e+1]===U,a=e=>t[e]===W,u=e=>t[e]===$,l=e=>c(e)||(e=>t[e]===U)(e)||a(e)||u(e),i=e=>c(e)||a(e)||u(e)?U:t[e];function f(){return s=0,l(n)&&(r++,o=0),c(n)&&n++,n++,o++,t[n]}return{index:()=>n,line:()=>r,column:()=>o,peekOffset:()=>s,charAt:i,currentChar:()=>i(n),currentPeek:()=>i(n+s),next:f,peek:function(){return c(n+s)&&s++,s++,t[n+s]},reset:function(){n=0,r=1,o=1,s=0},resetPeek:function(e=0){s=e},skipToPeek:function(){const e=n+s;for(;e!==n;)f();s=0}}}const K=void 0;function j(e,t={}){const n=!1!==t.location,r=V(e),o=()=>r.index(),s=()=>{return e=r.line(),t=r.column(),n=r.index(),{line:e,column:t,offset:n};var e,t,n},c=s(),a=o(),u={currentType:14,offset:a,startLoc:c,endLoc:c,lastType:14,lastOffset:a,lastStartLoc:c,lastEndLoc:c,braceNest:0,inLinked:!1,text:""},l=()=>u,{onError:i}=t;function f(e,t,r){e.endLoc=s(),e.currentType=t;const o={type:t};return n&&(o.loc=R(e.startLoc,e.endLoc)),null!=r&&(o.value=r),o}const p=e=>f(e,14);function m(e,t){return e.currentChar()===t?(e.next(),t):(s(),"")}function d(e){let t="";for(;e.currentPeek()===S||e.currentPeek()===U;)t+=e.currentPeek(),e.peek();return t}function _(e){const t=d(e);return e.skipToPeek(),t}function h(e){if(e===K)return!1;const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||95===t}function k(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r=function(e){if(e===K)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){d(e);const t="|"===e.currentPeek();return e.resetPeek(),t}function E(e,t=!0){const n=(t=!1,r="",o=!1)=>{const s=e.currentPeek();return"{"===s?"%"!==r&&t:"@"!==s&&s?"%"===s?(e.peek(),n(t,"%",!0)):"|"===s?!("%"!==r&&!o)||!(r===S||r===U):s===S?(e.peek(),n(!0,S,o)):s!==U||(e.peek(),n(!0,U,o)):"%"===r||t},r=n();return t&&e.resetPeek(),r}function g(e,t){const n=e.currentChar();return n===K?K:t(n)?(e.next(),n):null}function N(e){return g(e,(e=>{const t=e.charCodeAt(0);return t>=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57||95===t||36===t}))}function L(e){return g(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57}))}function b(e){return g(e,(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}))}function A(e){let t="",n="";for(;t=L(e);)n+=t;return n}function C(e){const t=e.currentChar();switch(t){case"\\":case"'":return e.next(),`\\${t}`;case"u":return y(e,t,4);case"U":return y(e,t,6);default:return s(),""}}function y(e,t,n){m(e,t);let r="";for(let t=0;t<n;t++){const t=b(e);if(!t){s(),e.currentChar();break}r+=t}return`\\${t}${r}`}function O(e){_(e);const t=m(e,"|");return _(e),t}function I(e,t){let n=null;switch(e.currentChar()){case"{":return t.braceNest>=1&&s(),e.next(),n=f(t,2,"{"),_(e),t.braceNest++,n;case"}":return t.braceNest>0&&2===t.currentType&&s(),e.next(),n=f(t,3,"}"),t.braceNest--,t.braceNest>0&&_(e),t.inLinked&&0===t.braceNest&&(t.inLinked=!1),n;case"@":return t.braceNest>0&&s(),n=P(e,t)||p(t),t.braceNest=0,n;default:let r=!0,o=!0,c=!0;if(T(e))return t.braceNest>0&&s(),n=f(t,1,O(e)),t.braceNest=0,t.inLinked=!1,n;if(t.braceNest>0&&(5===t.currentType||6===t.currentType||7===t.currentType))return s(),t.braceNest=0,x(e,t);if(r=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r=h(e.currentPeek());return e.resetPeek(),r}(e,t))return n=f(t,5,function(e){_(e);let t="",n="";for(;t=N(e);)n+=t;return e.currentChar()===K&&s(),n}(e)),_(e),n;if(o=k(e,t))return n=f(t,6,function(e){_(e);let t="";return"-"===e.currentChar()?(e.next(),t+=`-${A(e)}`):t+=A(e),e.currentChar()===K&&s(),t}(e)),_(e),n;if(c=function(e,t){const{currentType:n}=t;if(2!==n)return!1;d(e);const r="'"===e.currentPeek();return e.resetPeek(),r}(e,t))return n=f(t,7,function(e){_(e),m(e,"'");let t="",n="";const r=e=>"'"!==e&&e!==U;for(;t=g(e,r);)n+="\\"===t?C(e):t;const o=e.currentChar();return o===U||o===K?(s(),o===U&&(e.next(),m(e,"'")),n):(m(e,"'"),n)}(e)),_(e),n;if(!r&&!o&&!c)return n=f(t,13,function(e){_(e);let t="",n="";const r=e=>"{"!==e&&"}"!==e&&e!==S&&e!==U;for(;t=g(e,r);)n+=t;return n}(e)),s(),_(e),n}return n}function P(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!==S||s(),o){case"@":return e.next(),r=f(t,8,"@"),t.inLinked=!0,r;case".":return _(e),e.next(),f(t,9,".");case":":return _(e),e.next(),f(t,10,":");default:return T(e)?(r=f(t,1,O(e)),t.braceNest=0,t.inLinked=!1,r):function(e,t){const{currentType:n}=t;if(8!==n)return!1;d(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;d(e);const r=":"===e.currentPeek();return e.resetPeek(),r}(e,t)?(_(e),P(e,t)):function(e,t){const{currentType:n}=t;if(9!==n)return!1;d(e);const r=h(e.currentPeek());return e.resetPeek(),r}(e,t)?(_(e),f(t,12,function(e){let t="",n="";for(;t=N(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?h(e.peek()):!("@"===t||"%"===t||"|"===t||":"===t||"."===t||t===S||!t)&&(t===U?(e.peek(),r()):h(t))},o=r();return e.resetPeek(),o}(e,t)?(_(e),"{"===o?I(e,t)||r:f(t,11,function(e){const t=(n=!1,r)=>{const o=e.currentChar();return"{"!==o&&"%"!==o&&"@"!==o&&"|"!==o&&o?o===S?r:o===U?(r+=o,e.next(),t(n,r)):(r+=o,e.next(),t(!0,r)):r};return t(!1,"")}(e))):(8===n&&s(),t.braceNest=0,t.inLinked=!1,x(e,t))}}function x(e,t){let n={type:14};if(t.braceNest>0)return I(e,t)||p(t);if(t.inLinked)return P(e,t)||p(t);const r=e.currentChar();switch(r){case"{":return I(e,t)||p(t);case"}":return s(),e.next(),f(t,3,"}");case"@":return P(e,t)||p(t);default:if(T(e))return n=f(t,1,O(e)),t.braceNest=0,t.inLinked=!1,n;if(E(e))return f(t,0,function(e){const t=n=>{const r=e.currentChar();return"{"!==r&&"}"!==r&&"@"!==r&&r?"%"===r?E(e)?(n+=r,e.next(),t(n)):n:"|"===r?n:r===S||r===U?E(e)?(n+=r,e.next(),t(n)):T(e)?n:(n+=r,e.next(),t(n)):(n+=r,e.next(),t(n)):n};return t("")}(e));if("%"===r)return e.next(),f(t,4,"%")}return n}return{nextToken:function(){const{currentType:e,offset:t,startLoc:n,endLoc:c}=u;return u.lastType=e,u.lastOffset=t,u.lastStartLoc=n,u.lastEndLoc=c,u.offset=o(),u.startLoc=s(),r.currentChar()===K?f(u,14):x(r,u)},currentOffset:o,currentPosition:s,context:l}}const G=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function B(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 H(e={}){const t=!1!==e.location,{onError:n}=e;function r(e,n,r){const o={type:e,start:n,end:n};return t&&(o.loc={start:r,end:r}),o}function o(e,n,r,o){e.end=n,o&&(e.type=o),t&&e.loc&&(e.loc.end=r)}function s(e,t){const n=e.context(),s=r(3,n.offset,n.startLoc);return s.value=t,o(s,e.currentOffset(),e.currentPosition()),s}function c(e,t){const n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(5,s,c);return a.index=parseInt(t,10),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function u(e,t){const n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(4,s,c);return a.key=t,e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function l(e,t){const n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(9,s,c);return a.value=t.replace(G,B),e.nextToken(),o(a,e.currentOffset(),e.currentPosition()),a}function i(e){const t=e.context(),n=r(6,t.offset,t.startLoc);let s=e.nextToken();if(9===s.type){const t=function(e){const t=e.nextToken(),n=e.context(),{lastOffset:s,lastStartLoc:c}=n,a=r(8,s,c);return 12!==t.type?(a.value="",o(a,s,c),{nextConsumeToken:t,node:a}):(null==t.value&&X(t),a.value=t.value||"",o(a,e.currentOffset(),e.currentPosition()),{node:a})}(e);n.modifier=t.node,s=t.nextConsumeToken||e.nextToken()}switch(10!==s.type&&X(s),s=e.nextToken(),2===s.type&&(s=e.nextToken()),s.type){case 11:null==s.value&&X(s),n.key=function(e,t){const n=e.context(),s=r(7,n.offset,n.startLoc);return s.value=t,o(s,e.currentOffset(),e.currentPosition()),s}(e,s.value||"");break;case 5:null==s.value&&X(s),n.key=u(e,s.value||"");break;case 6:null==s.value&&X(s),n.key=c(e,s.value||"");break;case 7:null==s.value&&X(s),n.key=l(e,s.value||"");break;default:const t=e.context(),a=r(7,t.offset,t.startLoc);return a.value="",o(a,t.offset,t.startLoc),n.key=a,o(n,t.offset,t.startLoc),{nextConsumeToken:s,node:n}}return o(n,e.currentOffset(),e.currentPosition()),{node:n}}function f(e){const t=e.context(),n=r(2,1===t.currentType?e.currentOffset():t.offset,1===t.currentType?t.endLoc:t.startLoc);n.items=[];let a=null;do{const t=a||e.nextToken();switch(a=null,t.type){case 0:null==t.value&&X(t),n.items.push(s(e,t.value||""));break;case 6:null==t.value&&X(t),n.items.push(c(e,t.value||""));break;case 5:null==t.value&&X(t),n.items.push(u(e,t.value||""));break;case 7:null==t.value&&X(t),n.items.push(l(e,t.value||""));break;case 8:const r=i(e);n.items.push(r.node),a=r.nextConsumeToken||null}}while(14!==t.currentType&&1!==t.currentType);return o(n,1===t.currentType?t.lastOffset:e.currentOffset(),1===t.currentType?t.lastEndLoc:e.currentPosition()),n}function p(e){const t=e.context(),{offset:n,startLoc:s}=t,c=f(e);return 14===t.currentType?c:function(e,t,n,s){const c=e.context();let a=0===s.items.length;const u=r(1,t,n);u.cases=[],u.cases.push(s);do{const t=f(e);a||(a=0===t.items.length),u.cases.push(t)}while(14!==c.currentType);return o(u,e.currentOffset(),e.currentPosition()),u}(e,n,s,c)}return{parse:function(n){const s=j(n,a({},e)),c=s.context(),u=r(0,c.offset,c.startLoc);return t&&u.loc&&(u.loc.source=n),u.body=p(s),o(u,s.currentOffset(),s.currentPosition()),u}}}function X(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 J(e,t){for(let n=0;n<e.length;n++)Y(e[n],t)}function Y(e,t){switch(e.type){case 1:J(e.cases,t),t.helper("plural");break;case 2:J(e.items,t);break;case 6:Y(e.key,t),t.helper("linked");break;case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named")}}function z(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&&Y(e.body,n);const r=n.context();e.helpers=Array.from(r.helpers)}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 n=0;n<o&&(Q(e,t.items[n]),n!==o-1);n++)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(")")}(e,t);break;case 8:case 7: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);break;case 9:case 3:e.push(JSON.stringify(t.value),t)}}function q(e,t={}){const n=a({},t),r=H(n).parse(e);return z(r,n),((e,t={})=>{const n=m(t.mode)?t.mode:"normal",r=m(t.filename)?t.filename:"message.intl",o=t.needIndent?t.needIndent:"arrow"!==n,s=e.helpers||[],c=function(e,t){const{filename:n,breakLineCode:r,needIndent:o}=t,s={source:e.loc.source,filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:r,needIndent:o,indentLevel:0};function c(e,t){s.code+=e}function a(e,t=!0){const n=t?r:"";c(o?n+" ".repeat(e):n)}return{context:()=>s,push:c,indent:function(e=!0){const t=++s.indentLevel;e&&a(t)},deindent:function(e=!0){const t=--s.indentLevel;e&&a(t)},newline:function(){a(s.indentLevel)},helper:e=>`_${e}`,needIndent:()=>s.needIndent}}(e,{mode:n,filename:r,sourceMap:!!t.sourceMap,breakLineCode:null!=t.breakLineCode?t.breakLineCode:"arrow"===n?";":"\n",needIndent:o});c.push("normal"===n?"function __msg__ (ctx) {":"(ctx) => {"),c.indent(o),s.length>0&&(c.push(`const { ${s.map((e=>`${e}: _${e}`)).join(", ")} } = ctx`),c.newline()),c.push("return "),Q(c,e),c.deindent(o),c.push("}");const{code:a,map:u}=c.context();return{ast:e,code:a,map:u?u.toJSON():void 0}})(r,n)}const Z="i18n:init";let ee=null;const te=ne("function:translate");function ne(e){return t=>ee&&ee.emit(e,t)}const re={NOT_FOUND_KEY:1,FALLBACK_TO_TRANSLATE:2,CANNOT_FORMAT_NUMBER:3,FALLBACK_TO_NUMBER_FORMAT:4,CANNOT_FORMAT_DATE:5,FALLBACK_TO_DATE_FORMAT:6,__EXTEND_POINT__:7},oe={[re.NOT_FOUND_KEY]:"Not found '{key}' key in '{locale}' locale messages.",[re.FALLBACK_TO_TRANSLATE]:"Fall back to translate '{key}' key with '{target}' locale.",[re.CANNOT_FORMAT_NUMBER]:"Cannot format a number value due to not supported Intl.NumberFormat.",[re.FALLBACK_TO_NUMBER_FORMAT]:"Fall back to number format '{key}' key with '{target}' locale.",[re.CANNOT_FORMAT_DATE]:"Cannot format a date value due to not supported Intl.DateTimeFormat.",[re.FALLBACK_TO_DATE_FORMAT]:"Fall back to datetime format '{key}' key with '{target}' locale."};const se="9.2.0-alpha.1";let ce;let ae=null;let ue=0;function le(e,t,n,r,o){const{missing:s}=e;if(null!==s){const r=s(e,n,t,o);return m(r)?r:t}return t}function ie(e,t,n){const r=e;r.__localeChainCache||(r.__localeChainCache=new Map);let o=r.__localeChainCache.get(n);if(!o){o=[];let e=[n];for(;f(e);)e=fe(o,e,t);const s=f(t)||!T(t)?t:t.default?t.default:null;e=m(s)?[s]:s,f(e)&&fe(o,e,!1),r.__localeChainCache.set(n,o)}return o}function fe(e,t,n){let r=!0;for(let o=0;o<t.length&&d(r);o++){m(t[o])&&(r=pe(e,t[o],n))}return r}function pe(e,t,n){let r;const o=t.split("-");do{r=me(e,o.join("-"),n),o.splice(-1,1)}while(o.length&&!0===r);return r}function me(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),(f(n)||T(n))&&n[o]&&(r=n[o])}return r}const de=e=>e;let _e=Object.create(null);const he={INVALID_ARGUMENT:D.__EXTEND_POINT__,INVALID_DATE_ARGUMENT:D.__EXTEND_POINT__+1,INVALID_ISO_DATE_ARGUMENT:D.__EXTEND_POINT__+2,__EXTEND_POINT__:D.__EXTEND_POINT__+3};const ke=()=>"",Te=e=>p(e);function Ee(e,t,r,o,s,c){const{messageCompiler:a,warnHtmlMessage:u}=e;if(Te(o)){const e=o;return e.locale=e.locale||r,e.key=e.key||t,e}const l=a(o,function(e,t,r,o,s,c){return{warnHtmlMessage:s,onError:e=>{throw c&&c(e),e},onCacheKey:e=>((e,t,r)=>n({l:e,k:t,s:r}))(t,r,e)}}(0,r,s,0,u,c));return l.locale=r,l.key=t,l.source=o,l}function ge(...e){const[t,n,o]=e,c={};if(!m(t)&&!r(t)&&!Te(t))throw Error(he.INVALID_ARGUMENT);const u=r(t)?String(t):(Te(t),t);return r(n)?c.plural=n:m(n)?c.default=n:T(n)&&!s(n)?c.named=n:f(n)&&(c.list=n),r(o)?c.plural=o:m(o)?c.default=o:T(o)&&a(c,o),[u,c]}function Ne(...e){const[t,n,o,s]=e;let c,a={},u={};if(m(t)){if(!/\d{4}-\d{2}-\d{2}(T.*)?/.test(t))throw Error(he.INVALID_ISO_DATE_ARGUMENT);c=new Date(t);try{c.toISOString()}catch(e){throw Error(he.INVALID_ISO_DATE_ARGUMENT)}}else if("[object Date]"===k(t)){if(isNaN(t.getTime()))throw Error(he.INVALID_DATE_ARGUMENT);c=t}else{if(!r(t))throw Error(he.INVALID_ARGUMENT);c=t}return m(n)?a.key=n:T(n)&&(a=n),m(o)?a.locale=o:T(o)&&(u=o),T(s)&&(u=s),[a.key||"",c,a,u]}function Le(...e){const[t,n,o,s]=e;let c={},a={};if(!r(t))throw Error(he.INVALID_ARGUMENT);const u=t;return m(n)?c.key=n:T(n)&&(c=n),m(o)?c.locale=o:T(o)&&(a=o),T(s)&&(a=s),[c.key||"",u,c,a]}return e.CompileErrorCodes=D,e.CoreErrorCodes=he,e.CoreWarnCodes=re,e.DEFAULT_MESSAGE_DATA_TYPE=I,e.MISSING_RESOLVE_VALUE="",e.NOT_REOSLVED=-1,e.VERSION=se,e.clearCompileCache=function(){_e=Object.create(null)},e.clearDateTimeFormat=function(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__datetimeFormatters.has(n)&&r.__datetimeFormatters.delete(n)}},e.clearNumberFormat=function(e,t,n){const r=e;for(const e in n){const n=`${t}__${e}`;r.__numberFormatters.has(n)&&r.__numberFormatters.delete(n)}},e.compileToFunction=function(e,t={}){{const n=(t.onCacheKey||de)(e),r=_e[n];if(r)return r;let o=!1;const s=t.onError||M;t.onError=e=>{o=!0,s(e)};const{code:c}=q(e,t),a=new Function(`return ${c}`)();return o?a:_e[n]=a}},e.createCompileError=w,e.createCoreContext=function(e={}){const t=m(e.version)?e.version:se,n=m(e.locale)?e.locale:"en-US",r=f(e.fallbackLocale)||T(e.fallbackLocale)||m(e.fallbackLocale)||!1===e.fallbackLocale?e.fallbackLocale:n,s=T(e.messages)?e.messages:{[n]:{}},u=T(e.datetimeFormats)?e.datetimeFormats:{[n]:{}},l=T(e.numberFormats)?e.numberFormats:{[n]:{}},i=a({},e.modifiers||{},{upper:e=>m(e)?e.toUpperCase():e,lower:e=>m(e)?e.toLowerCase():e,capitalize:e=>m(e)?`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`:e}),h=e.pluralRules||{},k=p(e.missing)?e.missing:null,E=!d(e.missingWarn)&&!o(e.missingWarn)||e.missingWarn,g=!d(e.fallbackWarn)&&!o(e.fallbackWarn)||e.fallbackWarn,N=!!e.fallbackFormat,L=!!e.unresolving,b=p(e.postTranslation)?e.postTranslation:null,A=T(e.processor)?e.processor:null,y=!d(e.warnHtmlMessage)||e.warnHtmlMessage,O=!!e.escapeParameter,I=p(e.messageCompiler)?e.messageCompiler:ce,P=p(e.messageResolver)?e.messageResolver:C,x=p(e.onWarn)?e.onWarn:c,v=e,F=_(v.__datetimeFormatters)?v.__datetimeFormatters:new Map,D=_(v.__numberFormatters)?v.__numberFormatters:new Map,w=_(v.__meta)?v.__meta:{};return ue++,{version:t,cid:ue,locale:n,fallbackLocale:r,messages:s,datetimeFormats:u,numberFormats:l,modifiers:i,pluralRules:h,missing:k,missingWarn:E,fallbackWarn:g,fallbackFormat:N,unresolving:L,postTranslation:b,processor:A,warnHtmlMessage:y,escapeParameter:O,messageCompiler:I,messageResolver:P,onWarn:x,__datetimeFormatters:F,__numberFormatters:D,__meta:w}},e.createCoreError=function(e){return w(e,null,void 0)},e.createMessageContext=F,e.datetime=function(e,...t){const{datetimeFormats:n,unresolving:r,fallbackLocale:o}=e,{__datetimeFormatters:c}=e,[u,l,i,f]=Ne(...t);d(i.missingWarn),d(i.fallbackWarn);const p=!!i.part,_=m(i.locale)?i.locale:e.locale,h=ie(e,o,_);if(!m(u)||""===u)return new Intl.DateTimeFormat(_).format(l);let k,E={},g=null;for(let t=0;t<h.length&&(k=h[t],E=n[k]||{},g=E[u],!T(g));t++)le(e,u,k,0,"datetime format");if(!T(g)||!m(k))return r?-1:u;let N=`${k}__${u}`;s(f)||(N=`${N}__${JSON.stringify(f)}`);let L=c.get(N);return L||(L=new Intl.DateTimeFormat(k,a({},g,f)),c.set(N,L)),p?L.formatToParts(l):L.format(l)},e.getAdditionalMeta=()=>ae,e.getDevToolsHook=function(){return ee},e.getLocaleChain=ie,e.getWarnMessage=function(e,...n){return function(e,...n){return 1===n.length&&_(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),e.replace(t,((e,t)=>n.hasOwnProperty(t)?n[t]:""))}(oe[e],...n)},e.handleFlatJson=function e(t){if(!_(t))return t;for(const n in t)if(i(t,n))if(n.includes(".")){const r=n.split("."),o=r.length-1;let s=t;for(let e=0;e<o;e++)r[e]in s||(s[r[e]]={}),s=s[r[e]];s[r[o]]=t[n],delete t[n],_(s[r[o]])&&e(s[r[o]])}else _(t[n])&&e(t[n]);return t},e.handleMissing=le,e.initI18nDevTools=function(e,t,n){ee&&ee.emit(Z,{timestamp:Date.now(),i18n:e,version:t,meta:n})},e.isMessageFunction=Te,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}=e,{__numberFormatters:c}=e,[u,l,i,f]=Le(...t);d(i.missingWarn),d(i.fallbackWarn);const p=!!i.part,_=m(i.locale)?i.locale:e.locale,h=ie(e,o,_);if(!m(u)||""===u)return new Intl.NumberFormat(_).format(l);let k,E={},g=null;for(let t=0;t<h.length&&(k=h[t],E=n[k]||{},g=E[u],!T(g));t++)le(e,u,k,0,"number format");if(!T(g)||!m(k))return r?-1:u;let N=`${k}__${u}`;s(f)||(N=`${N}__${JSON.stringify(f)}`);let L=c.get(N);return L||(L=new Intl.NumberFormat(k,a({},g,f)),c.set(N,L)),p?L.formatToParts(l):L.format(l)},e.parse=b,e.parseDateTimeArgs=Ne,e.parseNumberArgs=Le,e.parseTranslateArgs=ge,e.registerMessageCompiler=function(e){ce=e},e.resolveValue=C,e.setAdditionalMeta=e=>{ae=e},e.setDevToolsHook=function(e){ee=e},e.translate=function(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:s,fallbackLocale:c,messages:a}=e,[l,i]=ge(...t),h=(d(i.missingWarn),d(i.fallbackWarn),d(i.escapeParameter)?i.escapeParameter:e.escapeParameter),k=!!i.resolvedMessage,T=m(i.default)||d(i.default)?d(i.default)?l:i.default:n?l:"",E=n||""!==T,g=m(i.locale)?i.locale:e.locale;h&&function(e){f(e.list)?e.list=e.list.map((e=>m(e)?u(e):e)):_(e.named)&&Object.keys(e.named).forEach((t=>{m(e.named[t])&&(e.named[t]=u(e.named[t]))}))}(i);let[N,L,b]=k?[l,g,a[g]||{}]:function(e,t,n,r,o,s){const{messages:c,messageResolver:a}=e,u=ie(e,r,n);let l,i={},f=null;const d="translate";for(let n=0;n<u.length&&(l=u[n],i=c[l]||{},null===(f=a(i,t))&&(f=i[t]),!m(f)&&!p(f));n++){const n=le(e,t,l,0,d);n!==t&&(f=n)}return[f,l,i]}(e,l,g,c),A=l;if(k||m(N)||Te(N)||E&&(N=T,A=N),!(k||(m(N)||Te(N))&&m(L)))return s?-1:l;let C=!1;const y=Te(N)?N:Ee(e,l,L,N,A,(()=>{C=!0}));if(C)return N;const O=function(e,t,n){return t(n)}(0,y,F(function(e,t,n,o){const{modifiers:s,pluralRules:c,messageResolver:a}=e,u={locale:t,modifiers:s,pluralRules:c,messages:r=>{const o=a(n,r);if(m(o)){let n=!1;const s=Ee(e,r,t,o,r,(()=>{n=!0}));return n?ke:s}return Te(o)?o:ke}};e.processor&&(u.processor=e.processor);o.list&&(u.list=o.list);o.named&&(u.named=o.named);r(o.plural)&&(u.pluralIndex=o.plural);return u}(e,L,b,i)));return o?o(O):O},e.translateDevTools=te,e.updateFallbackLocale=function(e,t,n){e.__localeChainCache=new Map,ie(e,n,t)},Object.defineProperty(e,"__esModule",{value:!0}),e}({}); |
{ | ||
"name": "@intlify/core-base", | ||
"version": "9.1.6", | ||
"version": "9.2.0-alpha.1", | ||
"description": "@intlify/core-base", | ||
@@ -36,8 +36,8 @@ "keywords": [ | ||
"dependencies": { | ||
"@intlify/devtools-if": "9.1.6", | ||
"@intlify/message-compiler": "9.1.6", | ||
"@intlify/message-resolver": "9.1.6", | ||
"@intlify/runtime": "9.1.6", | ||
"@intlify/shared": "9.1.6", | ||
"@intlify/vue-devtools": "9.1.6" | ||
"@intlify/devtools-if": "9.2.0-alpha.1", | ||
"@intlify/message-compiler": "9.2.0-alpha.1", | ||
"@intlify/message-resolver": "9.2.0-alpha.1", | ||
"@intlify/runtime": "9.2.0-alpha.1", | ||
"@intlify/shared": "9.2.0-alpha.1", | ||
"@intlify/vue-devtools": "9.2.0-alpha.1" | ||
}, | ||
@@ -44,0 +44,0 @@ "engines": { |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
402076
9185
1
+ Added@intlify/devtools-if@9.2.0-alpha.1(transitive)
+ Added@intlify/message-compiler@9.2.0-alpha.1(transitive)
+ Added@intlify/message-resolver@9.2.0-alpha.1(transitive)
+ Added@intlify/runtime@9.2.0-alpha.1(transitive)
+ Added@intlify/shared@9.2.0-alpha.1(transitive)
+ Added@intlify/vue-devtools@9.2.0-alpha.1(transitive)
- Removed@intlify/devtools-if@9.1.6(transitive)
- Removed@intlify/message-compiler@9.1.6(transitive)
- Removed@intlify/message-resolver@9.1.6(transitive)
- Removed@intlify/runtime@9.1.6(transitive)
- Removed@intlify/shared@9.1.6(transitive)
- Removed@intlify/vue-devtools@9.1.6(transitive)