typed-locales 1.0.68 → 1.0.70

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.
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { getTranslate, type ExtraFormatters, type Locales } from '../index.js';
2
+ import { getTranslate, type ExtraFormatters, type Locales, type TranslationType } from '../index.js';
3
3
  export interface TranslationContextType {
4
4
  isLoading: boolean;
5
5
  locale?: Locales;
@@ -7,6 +7,7 @@ export interface TranslationContextType {
7
7
  t: ReturnType<typeof getTranslate>;
8
8
  setShowKeys: (showKeys: boolean) => void;
9
9
  showKeys: boolean;
10
+ translations: TranslationType;
10
11
  }
11
12
  type ExtraTranslation = {
12
13
  [locale in Locales]?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/adapters/react.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAEf,OAAO,EACN,YAAY,EACZ,KAAK,eAAe,EACpB,KAAK,OAAO,EAEZ,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,sBAAsB;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACnC,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,QAAQ,EAAE,OAAO,CAAC;CAClB;AAMD,KAAK,gBAAgB,GAAG;KACtB,MAAM,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM;CAC5B,GAAG;IACH,GAAG,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,KAAK,iBAAiB,GAAG,gBAAgB,EAAE,CAAC;AA0B5C,eAAO,MAAM,SAAS,GACrB,qBAAqB,MAAM,EAC3B,iBAAiB,MAAM,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,EACpE,iBAAiB,eAAe,EAChC,eAAe,OAAO,EACtB,oBAAoB,iBAAiB,oBAEM;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,4CAoFxE,CAAC;AAEF,eAAO,MAAM,cAAc,8BAM1B,CAAC"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/adapters/react.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAEf,OAAO,EACN,YAAY,EACZ,KAAK,eAAe,EACpB,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,sBAAsB;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACnC,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,eAAe,CAAC;CAC9B;AAMD,KAAK,gBAAgB,GAAG;KACtB,MAAM,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM;CAC5B,GAAG;IACH,GAAG,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,KAAK,iBAAiB,GAAG,gBAAgB,EAAE,CAAC;AA0B5C,eAAO,MAAM,SAAS,GACrB,qBAAqB,MAAM,EAC3B,iBAAiB,MAAM,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,EACpE,iBAAiB,eAAe,EAChC,eAAe,OAAO,EACtB,oBAAoB,iBAAiB,oBAEM;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,4CAwFxE,CAAC;AAEF,eAAO,MAAM,cAAc,8BAM1B,CAAC"}
@@ -29,6 +29,7 @@ export const initReact = (defaultTranslations, allTranslations, extraFormatters,
29
29
  isLoading: false,
30
30
  locale: defaultLocale,
31
31
  translate: defaultTranslate,
32
+ translations: defaultTranslations,
32
33
  });
33
34
  const setLocale = useCallback(async (targetLocale) => {
34
35
  if (state.locale === targetLocale) {
@@ -44,6 +45,7 @@ export const initReact = (defaultTranslations, allTranslations, extraFormatters,
44
45
  isLoading: false,
45
46
  locale: targetLocale,
46
47
  translate: getTranslate(addExtraTranslations(translationData, extraTranslations ?? [], targetLocale), targetLocale, extraFormatters),
48
+ translations: translationData,
47
49
  });
48
50
  }
49
51
  catch (error) {
@@ -59,6 +61,7 @@ export const initReact = (defaultTranslations, allTranslations, extraFormatters,
59
61
  t: showKeys ? ((key) => key) : state.translate,
60
62
  setShowKeys,
61
63
  showKeys,
64
+ translations: state.translations,
62
65
  }, children: children }));
63
66
  };
64
67
  return TranslationProvider;
package/dist/index.d.ts CHANGED
@@ -77,7 +77,10 @@ type GetValue<S extends PossibleTranslationKeys> = Exclude<InternalGetValue<Tran
77
77
  export type DeepResolve<T> = T extends (...args: any[]) => any ? T : T extends object ? {
78
78
  -readonly [K in keyof T]: DeepResolve<T[K]>;
79
79
  } : T;
80
- export declare const getTranslate: (translations: TranslationType, locale: Locales, extraFormatters: ExtraFormatters) => <Key extends PossibleTranslationKeys>(key: Key, ...arguments_: InterpolationProperties<Key> extends Record<string, never> ? [] : Key extends PossibleTranslationKeys ? [params: InterpolationProperties<Key>] : []) => GetValue<Key> & TranslatedMark;
80
+ type OptionsType = {
81
+ fallback?: string;
82
+ };
83
+ export declare const getTranslate: (translations: TranslationType, locale: Locales, extraFormatters: ExtraFormatters) => <Key extends PossibleTranslationKeys>(key: Key, ...arguments_: InterpolationProperties<Key> extends Record<string, never> ? [params?: undefined, options?: OptionsType] : Key extends PossibleTranslationKeys ? [params: InterpolationProperties<Key>, options?: OptionsType] : [params?: undefined, options?: OptionsType]) => GetValue<Key> & TranslatedMark;
81
84
  export { initReact, useTranslation } from './adapters/react.js';
82
85
  export { initZustand } from './adapters/zustand.js';
83
86
  export { type Formatter, default as defaultFormatters } from './formatters.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import baseFormatters from './formatters.js';
2
2
  const pluralSufixes = ['_none', '_one', '_other'];
3
- const getValue = (key, translations, parameters) => {
3
+ const getValue = (key, translations, parameters, silent) => {
4
4
  const parts = key.split('.');
5
5
  let current = translations;
6
6
  for (const [index, part] of parts.entries()) {
@@ -14,7 +14,7 @@ const getValue = (key, translations, parameters) => {
14
14
  // Handle plural keys
15
15
  if (pluralSufixes.some(sufix => current[part + sufix] !== undefined)) {
16
16
  const lastPart = parts.at(-1);
17
- const count = Number(parameters.count ?? 0);
17
+ const count = Number(parameters?.count ?? 0);
18
18
  const none = current[`${lastPart}_none`];
19
19
  const one = current[`${lastPart}_one`];
20
20
  const other = current[`${lastPart}_other`];
@@ -28,24 +28,31 @@ const getValue = (key, translations, parameters) => {
28
28
  return other;
29
29
  }
30
30
  else {
31
- console.warn(`'Missing plural translation for key "${key}" with count: ${count}`);
32
- return key;
31
+ if (!silent) {
32
+ console.warn(`'Missing plural translation for key "${key}" with count: ${count}`);
33
+ }
34
+ return undefined;
33
35
  }
34
36
  }
35
37
  }
36
38
  }
37
- console.error(`Missing translation for key "${key}"`);
38
- return key;
39
+ if (!silent) {
40
+ console.error(`Missing translation for key "${key}"`);
41
+ }
42
+ return undefined;
39
43
  };
40
44
  // Runtime implementation remains the same
41
45
  export const getTranslate = (translations, locale, extraFormatters) => {
42
46
  const formatters = { ...baseFormatters, ...extraFormatters };
43
47
  function translate(key, ...arguments_) {
48
+ const options = arguments_[1];
44
49
  const parameters = arguments_[0];
45
- let value = getValue(key, translations, parameters);
50
+ let value = getValue(key, translations, parameters, Boolean(options?.fallback)) ??
51
+ options?.fallback ??
52
+ key;
46
53
  if (parameters) {
47
54
  for (const [parameter, value_] of Object.entries(parameters)) {
48
- value = value.replaceAll(new RegExp(`{${parameter}(:\\w+)?(\\|[\\w|]+)?}`, 'g'), (match, _type, formatters_) => {
55
+ value = value?.replaceAll(new RegExp(`{${parameter}(:\\w+)?(\\|[\\w|]+)?}`, 'g'), (match, _type, formatters_) => {
49
56
  const parsedFormatters = (formatters_?.split('|').filter(Boolean) ??
50
57
  []);
51
58
  let formattedValue = value_;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typed-locales",
3
- "version": "1.0.68",
3
+ "version": "1.0.70",
4
4
  "description": "Type safe utilities for translating strings",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",