aboutsummaryrefslogtreecommitdiff
path: root/modern/src/LocalizationProvider.js
diff options
context:
space:
mode:
Diffstat (limited to 'modern/src/LocalizationProvider.js')
-rw-r--r--modern/src/LocalizationProvider.js14
1 files changed, 13 insertions, 1 deletions
diff --git a/modern/src/LocalizationProvider.js b/modern/src/LocalizationProvider.js
index 6d8605b..9b91509 100644
--- a/modern/src/LocalizationProvider.js
+++ b/modern/src/LocalizationProvider.js
@@ -48,10 +48,22 @@ export const LocalizationProvider = ({ children }) => {
export const useLocalization = () => useContext(LocalizationContext);
+
export const useTranslation = () => {
const context = useContext(LocalizationContext);
const { data } = context.languages[context.language];
- return (key) => data[key];
+ return (key, args = {}) => {
+ if (Object.keys(args).length) {
+ let str = data[key];
+ Object.keys(args).forEach(k => {
+ console.log (`Replacement for ${k} in ${str} is: `, args[k])
+ str = str.replace(new RegExp(`\\{${k}\\}`, 'gi'), args[k].toString());
+ });
+ return str;
+ } else {
+ return data[key];
+ }
+ }
};
export const useTranslationKeys = (predicate) => {