use-intl 3.25.0 → 4.0.0-beta-00a79d4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core.d.ts +2 -1
- package/dist/esm/development/core.js +82 -0
- package/dist/esm/development/index.js +7 -0
- package/dist/{development/createFormatter-D2v4ATzl.js → esm/development/initializeConfig-DSmAVNvj.js} +277 -129
- package/dist/esm/development/react.js +184 -0
- package/dist/esm/production/core.js +1 -0
- package/dist/esm/production/index.js +1 -0
- package/dist/esm/production/initializeConfig-BE7tJS3N.js +1 -0
- package/dist/esm/production/react.js +1 -0
- package/dist/types/{src/core → core}/AbstractIntlMessages.d.ts +3 -2
- package/dist/types/core/AppConfig.d.ts +25 -0
- package/dist/types/{src/core → core}/DateTimeFormatOptions.d.ts +1 -1
- package/dist/types/{src/core → core}/Formats.d.ts +2 -2
- package/dist/types/core/ICUArgs.d.ts +3 -0
- package/dist/types/core/ICUTags.d.ts +2 -0
- package/dist/types/{src/core → core}/IntlConfig.d.ts +6 -13
- package/dist/types/core/IntlError.d.ts +6 -0
- package/dist/types/{src/core/IntlError.d.ts → core/IntlErrorCode.d.ts} +2 -6
- package/dist/types/core/MessageKeys.d.ts +10 -0
- package/dist/types/core/TranslationValues.d.ts +9 -0
- package/dist/types/{src/core → core}/convertFormatsToIntlMessageFormat.d.ts +4 -4
- package/dist/types/{src/core → core}/createBaseTranslator.d.ts +9 -12
- package/dist/types/core/createFormatter.d.ts +28 -0
- package/dist/types/core/createTranslator.d.ts +52 -0
- package/dist/types/core/createTranslatorImpl.d.ts +17 -0
- package/dist/types/{src/core → core}/defaults.d.ts +1 -1
- package/dist/types/{src/core → core}/formatters.d.ts +1 -1
- package/dist/types/core/hasLocale.d.ts +10 -0
- package/dist/types/core/index.d.ts +20 -0
- package/dist/types/{src/core → core}/initializeConfig.d.ts +4 -4
- package/dist/types/core/types.d.ts +3 -0
- package/dist/types/{src/core → core}/validateMessages.d.ts +2 -2
- package/dist/types/core.d.ts +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/{src/react → react}/IntlContext.d.ts +2 -2
- package/dist/types/react/IntlProvider.d.ts +7 -0
- package/dist/types/react/index.d.ts +7 -0
- package/dist/types/{src/react → react}/useFormatter.d.ts +1 -1
- package/dist/types/{src/react → react}/useIntlContext.d.ts +1 -1
- package/dist/types/react/useLocale.d.ts +2 -0
- package/dist/types/react/useMessages.d.ts +2 -0
- package/dist/types/react/useNow.d.ts +8 -0
- package/dist/types/react/useTimeZone.d.ts +1 -0
- package/dist/types/react/useTranslations.d.ts +12 -0
- package/dist/types/react/useTranslationsImpl.d.ts +9 -0
- package/dist/types/react.d.ts +1 -0
- package/package.json +18 -24
- package/react.d.ts +2 -1
- package/_IntlProvider.d.ts +0 -1
- package/_useLocale.d.ts +0 -1
- package/dist/_IntlProvider.js +0 -7
- package/dist/_useLocale.js +0 -7
- package/dist/core.js +0 -7
- package/dist/development/IntlContext-BKfsnzBx.js +0 -7
- package/dist/development/_IntlProvider.js +0 -61
- package/dist/development/_useLocale-0Rl9uR82.js +0 -19
- package/dist/development/_useLocale.js +0 -11
- package/dist/development/core.js +0 -69
- package/dist/development/index.js +0 -31
- package/dist/development/initializeConfig-BhfMSHP7.js +0 -185
- package/dist/development/react.js +0 -151
- package/dist/esm/IntlContext-DoS4CDM3.js +0 -1
- package/dist/esm/_IntlProvider.js +0 -1
- package/dist/esm/_useLocale-v-ZT5JoE.js +0 -1
- package/dist/esm/_useLocale.js +0 -1
- package/dist/esm/core.js +0 -1
- package/dist/esm/createFormatter-zqPbsiYR.js +0 -1
- package/dist/esm/index.js +0 -1
- package/dist/esm/initializeConfig-D2A8plWf.js +0 -1
- package/dist/esm/react.js +0 -1
- package/dist/index.js +0 -7
- package/dist/production/IntlContext-DcFt0tgW.js +0 -1
- package/dist/production/_IntlProvider.js +0 -1
- package/dist/production/_useLocale-CpTrqBDt.js +0 -1
- package/dist/production/_useLocale.js +0 -1
- package/dist/production/core.js +0 -1
- package/dist/production/createFormatter-CZeYe_QF.js +0 -1
- package/dist/production/index.js +0 -1
- package/dist/production/initializeConfig-AbYTngyP.js +0 -1
- package/dist/production/react.js +0 -1
- package/dist/react.js +0 -7
- package/dist/types/src/_IntlProvider.d.ts +0 -1
- package/dist/types/src/_useLocale.d.ts +0 -1
- package/dist/types/src/core/TranslationValues.d.ts +0 -6
- package/dist/types/src/core/createFormatter.d.ts +0 -27
- package/dist/types/src/core/createFormatter.test.d.ts +0 -1
- package/dist/types/src/core/createTranslator.d.ts +0 -71
- package/dist/types/src/core/createTranslator.test.d.ts +0 -1
- package/dist/types/src/core/createTranslatorImpl.d.ts +0 -17
- package/dist/types/src/core/index.d.ts +0 -18
- package/dist/types/src/core/utils/MessageKeys.d.ts +0 -5
- package/dist/types/src/core/utils/NamespaceKeys.d.ts +0 -5
- package/dist/types/src/core/utils/NestedKeyOf.d.ts +0 -4
- package/dist/types/src/core/utils/NestedValueOf.d.ts +0 -2
- package/dist/types/src/core.d.ts +0 -1
- package/dist/types/src/index.d.ts +0 -2
- package/dist/types/src/react/IntlProvider.d.ts +0 -7
- package/dist/types/src/react/IntlProvider.test.d.ts +0 -1
- package/dist/types/src/react/index.d.ts +0 -7
- package/dist/types/src/react/index.test.d.ts +0 -1
- package/dist/types/src/react/useFormatter.test.d.ts +0 -1
- package/dist/types/src/react/useLocale.d.ts +0 -1
- package/dist/types/src/react/useLocale.test.d.ts +0 -1
- package/dist/types/src/react/useMessages.d.ts +0 -2
- package/dist/types/src/react/useMessages.test.d.ts +0 -1
- package/dist/types/src/react/useNow.d.ts +0 -23
- package/dist/types/src/react/useNow.test.d.ts +0 -1
- package/dist/types/src/react/useTimeZone.d.ts +0 -1
- package/dist/types/src/react/useTimeZone.test.d.ts +0 -1
- package/dist/types/src/react/useTranslations.d.ts +0 -62
- package/dist/types/src/react/useTranslations.test.d.ts +0 -1
- package/dist/types/src/react/useTranslationsImpl.d.ts +0 -9
- package/dist/types/src/react.d.ts +0 -1
- package/dist/types/test/setup.d.ts +0 -1
- /package/dist/types/{src/core → core}/NumberFormatOptions.d.ts +0 -0
- /package/dist/types/{src/core → core}/RelativeTimeFormatOptions.d.ts +0 -0
- /package/dist/types/{src/core → core}/TimeZone.d.ts +0 -0
- /package/dist/types/{src/core → core}/joinPath.d.ts +0 -0
- /package/dist/types/{src/core → core}/resolveNamespace.d.ts +0 -0
package/core.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
// Needed for projects with `moduleResolution: 'node'`
|
|
2
|
+
export * from './dist/types/core.d.ts';
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { r as resolveNamespace, e as createBaseTranslator, d as createCache, b as createIntlFormatters, f as defaultGetMessageFallback, g as defaultOnError } from './initializeConfig-DSmAVNvj.js';
|
|
2
|
+
export { I as IntlError, a as IntlErrorCode, c as createFormatter, i as initializeConfig } from './initializeConfig-DSmAVNvj.js';
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
function createTranslatorImpl({
|
|
8
|
+
messages,
|
|
9
|
+
namespace,
|
|
10
|
+
...rest
|
|
11
|
+
}, namespacePrefix) {
|
|
12
|
+
// The `namespacePrefix` is part of the type system.
|
|
13
|
+
// See the comment in the function invocation.
|
|
14
|
+
messages = messages[namespacePrefix];
|
|
15
|
+
namespace = resolveNamespace(namespace, namespacePrefix);
|
|
16
|
+
return createBaseTranslator({
|
|
17
|
+
...rest,
|
|
18
|
+
messages,
|
|
19
|
+
namespace
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Translates messages from the given namespace by using the ICU syntax.
|
|
25
|
+
* See https://formatjs.io/docs/core-concepts/icu-syntax.
|
|
26
|
+
*
|
|
27
|
+
* If no namespace is provided, all available messages are returned.
|
|
28
|
+
* The namespace can also indicate nesting by using a dot
|
|
29
|
+
* (e.g. `namespace.Component`).
|
|
30
|
+
*/
|
|
31
|
+
function createTranslator({
|
|
32
|
+
_cache = createCache(),
|
|
33
|
+
_formatters = createIntlFormatters(_cache),
|
|
34
|
+
getMessageFallback = defaultGetMessageFallback,
|
|
35
|
+
messages,
|
|
36
|
+
namespace,
|
|
37
|
+
onError = defaultOnError,
|
|
38
|
+
...rest
|
|
39
|
+
}) {
|
|
40
|
+
// We have to wrap the actual function so the type inference for the optional
|
|
41
|
+
// namespace works correctly. See https://stackoverflow.com/a/71529575/343045
|
|
42
|
+
// The prefix ("!") is arbitrary.
|
|
43
|
+
// @ts-expect-error Use the explicit annotation instead
|
|
44
|
+
return createTranslatorImpl({
|
|
45
|
+
...rest,
|
|
46
|
+
onError,
|
|
47
|
+
cache: _cache,
|
|
48
|
+
formatters: _formatters,
|
|
49
|
+
getMessageFallback,
|
|
50
|
+
// @ts-expect-error `messages` is allowed to be `undefined` here and will be handled internally
|
|
51
|
+
messages: {
|
|
52
|
+
'!': messages
|
|
53
|
+
},
|
|
54
|
+
namespace: namespace ? `!.${namespace}` : '!'
|
|
55
|
+
}, '!');
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Checks if a locale exists in a list of locales.
|
|
60
|
+
*
|
|
61
|
+
* Additionally, in development, the provided locales are validated to
|
|
62
|
+
* ensure they follow the Unicode language identifier standard.
|
|
63
|
+
*
|
|
64
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale
|
|
65
|
+
*/
|
|
66
|
+
function hasLocale(locales, candidate) {
|
|
67
|
+
{
|
|
68
|
+
for (const locale of locales) {
|
|
69
|
+
try {
|
|
70
|
+
const constructed = new Intl.Locale(locale);
|
|
71
|
+
if (!constructed.language) {
|
|
72
|
+
throw new Error('Language is required');
|
|
73
|
+
}
|
|
74
|
+
} catch {
|
|
75
|
+
console.error(`Found invalid locale within provided \`locales\`: "${locale}"\nPlease ensure you're using a valid Unicode locale identifier (e.g. "en-US").`);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return locales.includes(candidate);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export { createCache as _createCache, createIntlFormatters as _createIntlFormatters, createTranslator, hasLocale };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { I as IntlError, a as IntlErrorCode, d as _createCache, b as _createIntlFormatters, c as createFormatter, i as initializeConfig } from './initializeConfig-DSmAVNvj.js';
|
|
2
|
+
export { createTranslator, hasLocale } from './core.js';
|
|
3
|
+
export { IntlProvider, useFormatter, useLocale, useMessages, useNow, useTimeZone, useTranslations } from './react.js';
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|