filebrowser/frontend/src/main.js

52 lines
960 B
JavaScript
Raw Normal View History

2021-04-15 12:28:19 +00:00
import "whatwg-fetch";
import cssVars from "css-vars-ponyfill";
2021-03-21 11:51:58 +00:00
import { sync } from "vuex-router-sync";
import store from "@/store";
import router from "@/router";
import i18n from "@/i18n";
import Vue from "@/utils/vue";
import { recaptcha, loginPage } from "@/utils/constants";
import { login, validateLogin } from "@/utils/auth";
import App from "@/App.vue";
2021-04-15 12:28:19 +00:00
cssVars();
2021-03-21 11:51:58 +00:00
sync(store, router);
2021-03-21 11:51:58 +00:00
async function start() {
try {
if (loginPage) {
await validateLogin();
} else {
await login("", "", "");
}
} catch (e) {
console.log(e);
}
2018-02-01 12:17:04 +00:00
if (recaptcha) {
2021-03-21 11:51:58 +00:00
await new Promise((resolve) => {
const check = () => {
2021-03-21 11:51:58 +00:00
if (typeof window.grecaptcha === "undefined") {
setTimeout(check, 100);
} else {
2021-03-21 11:51:58 +00:00
resolve();
}
2021-03-21 11:51:58 +00:00
};
2021-03-21 11:51:58 +00:00
check();
});
}
2018-02-01 12:17:04 +00:00
new Vue({
2021-03-21 11:51:58 +00:00
el: "#app",
store,
router,
i18n,
2021-03-21 11:51:58 +00:00
template: "<App/>",
components: { App },
});
2018-02-01 12:17:04 +00:00
}
2021-03-21 11:51:58 +00:00
start();