diff options
author | Sam Potts <sam@potts.es> | 2018-08-14 00:00:24 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-14 00:00:24 +1000 |
commit | 48bf36831611a854f24f8bc9f40d0944c381bd29 (patch) | |
tree | 165ac6d7b4dbd93f9459e195eaa6c5ba2c411005 /src/js/utils/i18n.js | |
parent | a8f8486cf49aebc09c8f57bec2f8172970974536 (diff) | |
parent | 8f94ce86a04c1b8f7cc17e7d578c6b8c76572319 (diff) | |
download | plyr-48bf36831611a854f24f8bc9f40d0944c381bd29.tar.lz plyr-48bf36831611a854f24f8bc9f40d0944c381bd29.tar.xz plyr-48bf36831611a854f24f8bc9f40d0944c381bd29.zip |
Merge pull request #1160 from sampotts/develop
v3.4.0
Diffstat (limited to 'src/js/utils/i18n.js')
-rw-r--r-- | src/js/utils/i18n.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/js/utils/i18n.js b/src/js/utils/i18n.js new file mode 100644 index 00000000..f71e1a42 --- /dev/null +++ b/src/js/utils/i18n.js @@ -0,0 +1,34 @@ +// ========================================================================== +// Plyr internationalization +// ========================================================================== + +import is from './is'; +import { getDeep } from './objects'; +import { replaceAll } from './strings'; + +const i18n = { + get(key = '', config = {}) { + if (is.empty(key) || is.empty(config)) { + return ''; + } + + let string = getDeep(config.i18n, key); + + if (is.empty(string)) { + return ''; + } + + const replace = { + '{seektime}': config.seekTime, + '{title}': config.title, + }; + + Object.entries(replace).forEach(([key, value]) => { + string = replaceAll(string, key, value); + }); + + return string; + }, +}; + +export default i18n; |