aboutsummaryrefslogtreecommitdiff
path: root/viewer/src/plugins
diff options
context:
space:
mode:
authorZero~Informatique2019-12-20 17:47:04 +0100
committerZero~Informatique2019-12-20 23:22:56 +0100
commit7ae68f079ddfb74c9a1b17c4f30dfe4c258d4a9f (patch)
treecb5e30534d9e564c311d626bba7e8d9ec0ea0f60 /viewer/src/plugins
parentc9264b0a0a7e1cb92ef7d9a391cee2c94376cff3 (diff)
downloadldgallery-7ae68f079ddfb74c9a1b17c4f30dfe4c258d4a9f.tar.gz
Viewer project foundations
Diffstat (limited to 'viewer/src/plugins')
-rw-r--r--viewer/src/plugins/buefy.ts9
-rw-r--r--viewer/src/plugins/fontawesome.js9
-rw-r--r--viewer/src/plugins/i18n.ts23
3 files changed, 41 insertions, 0 deletions
diff --git a/viewer/src/plugins/buefy.ts b/viewer/src/plugins/buefy.ts
new file mode 100644
index 0000000..a880cee
--- /dev/null
+++ b/viewer/src/plugins/buefy.ts
@@ -0,0 +1,9 @@
1import Vue from "vue";
2
3import Buefy from "buefy";
4import "@/assets/scss/buefy.scss";
5
6Vue.use(Buefy, {
7 defaultIconComponent: 'fa-icon',
8 defaultIconPack: 'fas',
9});
diff --git a/viewer/src/plugins/fontawesome.js b/viewer/src/plugins/fontawesome.js
new file mode 100644
index 0000000..9bf4dba
--- /dev/null
+++ b/viewer/src/plugins/fontawesome.js
@@ -0,0 +1,9 @@
1import Vue from "vue";
2
3import { library } from "@fortawesome/fontawesome-svg-core";
4import { faExpandArrowsAlt } from "@fortawesome/free-solid-svg-icons";
5import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";
6
7library.add(faExpandArrowsAlt);
8
9Vue.component("fa-icon", FontAwesomeIcon);
diff --git a/viewer/src/plugins/i18n.ts b/viewer/src/plugins/i18n.ts
new file mode 100644
index 0000000..da2cd87
--- /dev/null
+++ b/viewer/src/plugins/i18n.ts
@@ -0,0 +1,23 @@
1import Vue from "vue";
2import VueI18n, { LocaleMessages } from "vue-i18n";
3
4Vue.use(VueI18n);
5
6function loadLocaleMessages(): LocaleMessages {
7 const locales = require.context("@/locales", true, /[A-Za-z0-9-_,\s]+\.json$/i);
8 const messages: LocaleMessages = {};
9 locales.keys().forEach(key => {
10 const matched = key.match(/([A-Za-z0-9-_]+)\./i);
11 if (matched && matched.length > 1) {
12 const locale = matched[1];
13 messages[locale] = locales(key);
14 }
15 });
16 return messages;
17}
18
19export default new VueI18n({
20 locale: process.env.VUE_APP_I18N_LOCALE || "en",
21 fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || "en",
22 messages: loadLocaleMessages(),
23});