@digitaldefiance/express-suite-react-components 2.14.7 → 2.14.9

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digitaldefiance/express-suite-react-components",
3
- "version": "2.14.7",
3
+ "version": "2.14.9",
4
4
  "homepage": "https://github.com/Digital-Defiance/react-components",
5
5
  "description": "React MUI components for Digital Defiance Express Suite",
6
6
  "repository": {
@@ -31,8 +31,8 @@
31
31
  "react-router-dom": "6.29.0"
32
32
  },
33
33
  "dependencies": {
34
- "@digitaldefiance/i18n-lib": "4.6.3",
35
- "@digitaldefiance/suite-core-lib": "3.13.4",
34
+ "@digitaldefiance/i18n-lib": "4.6.4",
35
+ "@digitaldefiance/suite-core-lib": "3.13.5",
36
36
  "@emotion/react": "^11.14.0",
37
37
  "@emotion/styled": "^11.14.0",
38
38
  "@mui/icons-material": "^7.0.2",
@@ -7,6 +7,8 @@ export interface II18nEngineCompat {
7
7
  setLanguage(language: string): void;
8
8
  translate(componentId: string, stringKey: string, variables?: Record<string, string | number>, language?: string): string;
9
9
  translateStringKey?(key: string, vars?: Record<string, string | number>, language?: string): string;
10
+ /** Template processor that handles {{component.key}} and {variable} patterns */
11
+ t?(template: string, variables?: Record<string, string | number>, language?: string): string;
10
12
  }
11
13
  export interface I18nProviderProps {
12
14
  children: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"I18nProvider.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-express-suite-react-components/src/contexts/I18nProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,EAAE,EACF,SAAS,EAIV,MAAM,OAAO,CAAC;AAEf;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,CACP,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC;IACV,kBAAkB,CAAC,CACjB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC;CACX;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,EAAE,CACD,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,KACd,MAAM,CAAC;IACZ,QAAQ,EAAE,CAAC,UAAU,SAAS,MAAM,EAClC,SAAS,EAAE,UAAU,EACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,KACd,MAAM,CAAC;IACZ,UAAU,EAAE,CAAC,UAAU,SAAS,MAAM,EACpC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,UAAU,EACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,KACd,MAAM,CAAC;IACZ,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,eAAe,EAAE,MAAM,CAAC;CACzB;AAID,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAkF9C,CAAC;AAEF,eAAO,MAAM,OAAO,uBAMnB,CAAC"}
1
+ {"version":3,"file":"I18nProvider.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-express-suite-react-components/src/contexts/I18nProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,EAAE,EACF,SAAS,EAIV,MAAM,OAAO,CAAC;AAEf;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,CACP,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC;IACV,kBAAkB,CAAC,CACjB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC;IACV,gFAAgF;IAChF,CAAC,CAAC,CACA,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC;CACX;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,EAAE,CACD,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,KACd,MAAM,CAAC;IACZ,QAAQ,EAAE,CAAC,UAAU,SAAS,MAAM,EAClC,SAAS,EAAE,UAAU,EACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,KACd,MAAM,CAAC;IACZ,UAAU,EAAE,CAAC,UAAU,SAAS,MAAM,EACpC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,UAAU,EACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,MAAM,KACd,MAAM,CAAC;IACZ,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,eAAe,EAAE,MAAM,CAAC;CACzB;AAID,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAuF9C,CAAC;AAEF,eAAO,MAAM,OAAO,uBAMnB,CAAC"}
@@ -27,6 +27,11 @@ const I18nProvider = ({ children, i18nEngine, onLanguageChange, }) => {
27
27
  return i18nEngine.translateStringKey(key, vars, language ?? currentLanguage);
28
28
  }, [i18nEngine, currentLanguage]);
29
29
  const t = (0, react_1.useCallback)((key, vars, language) => {
30
+ // If the engine has a template processor and the key looks like a template
31
+ // (contains {{...}} or {variable} patterns), use t() for template resolution
32
+ if (i18nEngine.t && (/\{\{/.test(key) || /\{[A-Za-z]/.test(key))) {
33
+ return i18nEngine.t(key, vars, language ?? currentLanguage);
34
+ }
30
35
  if (i18nEngine.translateStringKey) {
31
36
  return i18nEngine.translateStringKey(key, vars, language ?? currentLanguage);
32
37
  }