2018-02-01 12:17:04 +00:00
|
|
|
import Vue from 'vue'
|
|
|
|
import VueI18n from 'vue-i18n'
|
2019-01-05 16:12:09 +00:00
|
|
|
|
|
|
|
import ar from './ar.json'
|
|
|
|
import de from './de.json'
|
|
|
|
import en from './en.json'
|
|
|
|
import es from './es.json'
|
|
|
|
import fr from './fr.json'
|
2019-06-09 12:31:57 +00:00
|
|
|
import is from './is.json'
|
2019-01-05 16:12:09 +00:00
|
|
|
import it from './it.json'
|
|
|
|
import ja from './ja.json'
|
|
|
|
import ko from './ko.json'
|
2019-06-09 12:31:57 +00:00
|
|
|
import nlBE from './nl-be.json'
|
|
|
|
import pl from './pl.json'
|
2019-01-05 16:12:09 +00:00
|
|
|
import pt from './pt.json'
|
|
|
|
import ptBR from './pt-br.json'
|
2019-06-09 12:31:57 +00:00
|
|
|
import ro from './ro.json'
|
2019-01-05 16:12:09 +00:00
|
|
|
import ru from './ru.json'
|
2019-06-09 12:31:57 +00:00
|
|
|
import svSE from './sv-se.json'
|
2019-01-05 16:12:09 +00:00
|
|
|
import zhCN from './zh-cn.json'
|
|
|
|
import zhTW from './zh-tw.json'
|
2018-02-01 12:17:04 +00:00
|
|
|
|
|
|
|
Vue.use(VueI18n)
|
|
|
|
|
|
|
|
export function detectLocale () {
|
|
|
|
let locale = (navigator.language || navigator.browserLangugae).toLowerCase()
|
|
|
|
switch (true) {
|
2019-06-09 12:31:57 +00:00
|
|
|
case /^ar.*/i.test(locale):
|
|
|
|
locale = 'ar'
|
|
|
|
break
|
|
|
|
case /^es.*/i.test(locale):
|
|
|
|
locale = 'es'
|
|
|
|
break
|
2018-02-01 12:17:04 +00:00
|
|
|
case /^en.*/i.test(locale):
|
|
|
|
locale = 'en'
|
|
|
|
break
|
2018-07-01 20:40:23 +00:00
|
|
|
case /^it.*/i.test(locale):
|
|
|
|
locale = 'it'
|
|
|
|
break
|
2018-02-01 12:17:04 +00:00
|
|
|
case /^fr.*/i.test(locale):
|
|
|
|
locale = 'fr'
|
|
|
|
break
|
|
|
|
case /^pt.*/i.test(locale):
|
|
|
|
locale = 'pt'
|
|
|
|
break
|
2018-06-27 16:37:13 +00:00
|
|
|
case /^pt-BR.*/i.test(locale):
|
|
|
|
locale = 'pt-br'
|
|
|
|
break
|
2018-02-01 12:17:04 +00:00
|
|
|
case /^ja.*/i.test(locale):
|
|
|
|
locale = 'ja'
|
|
|
|
break
|
|
|
|
case /^zh-CN/i.test(locale):
|
|
|
|
locale = 'zh-cn'
|
|
|
|
break
|
|
|
|
case /^zh-TW/i.test(locale):
|
|
|
|
locale = 'zh-tw'
|
|
|
|
break
|
|
|
|
case /^zh.*/i.test(locale):
|
|
|
|
locale = 'zh-cn'
|
|
|
|
break
|
2018-02-02 23:11:19 +00:00
|
|
|
case /^de.*/i.test(locale):
|
|
|
|
locale = 'de'
|
|
|
|
break
|
2018-06-28 08:57:06 +00:00
|
|
|
case /^ru.*/i.test(locale):
|
|
|
|
locale = 'ru'
|
|
|
|
break
|
2018-07-12 08:41:52 +00:00
|
|
|
case /^pl.*/i.test(locale):
|
|
|
|
locale = 'pl'
|
|
|
|
break
|
2018-10-08 22:42:21 +00:00
|
|
|
case /^ko.*/i.test(locale):
|
|
|
|
locale = 'ko'
|
|
|
|
break
|
2018-02-01 12:17:04 +00:00
|
|
|
default:
|
|
|
|
locale = 'en'
|
|
|
|
}
|
|
|
|
|
|
|
|
return locale
|
|
|
|
}
|
|
|
|
|
|
|
|
const i18n = new VueI18n({
|
|
|
|
locale: detectLocale(),
|
|
|
|
fallbackLocale: 'en',
|
|
|
|
messages: {
|
2019-01-05 16:12:09 +00:00
|
|
|
'ar': ar,
|
|
|
|
'de': de,
|
2018-02-01 12:17:04 +00:00
|
|
|
'en': en,
|
2019-01-05 16:12:09 +00:00
|
|
|
'es': es,
|
2018-02-01 12:17:04 +00:00
|
|
|
'fr': fr,
|
2019-06-09 12:31:57 +00:00
|
|
|
'is': is,
|
2019-01-05 16:12:09 +00:00
|
|
|
'it': it,
|
2018-02-01 12:17:04 +00:00
|
|
|
'ja': ja,
|
2019-01-05 16:12:09 +00:00
|
|
|
'ko': ko,
|
2019-06-09 12:31:57 +00:00
|
|
|
'nl-be': nlBE,
|
2018-10-08 22:42:21 +00:00
|
|
|
'pl': pl,
|
2019-01-05 16:12:09 +00:00
|
|
|
'pt-br': ptBR,
|
|
|
|
'pt': pt,
|
|
|
|
'ru': ru,
|
2019-06-09 12:31:57 +00:00
|
|
|
'ro': ro,
|
|
|
|
'sv-se': svSE,
|
2019-01-05 16:12:09 +00:00
|
|
|
'zh-cn': zhCN,
|
|
|
|
'zh-tw': zhTW
|
2018-02-01 12:17:04 +00:00
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
export default i18n
|