felicity-lims/webapp/main.ts

47 lines
1.4 KiB
TypeScript
Raw Normal View History

2022-04-04 02:54:31 +08:00
import { createApp, markRaw } from 'vue'
2022-12-22 22:42:05 +08:00
import urql from '@urql/vue'
2022-08-19 22:40:02 +08:00
import { MotionPlugin } from '@vueuse/motion'
2022-12-22 22:42:05 +08:00
import VueSweetalert2 from 'vue-sweetalert2'
import FloatingVue from 'floating-vue'
2021-01-16 00:54:31 +08:00
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
import { library, dom } from '@fortawesome/fontawesome-svg-core'
import { fas } from '@fortawesome/free-solid-svg-icons'
import { fab } from '@fortawesome/free-brands-svg-icons'
2022-12-22 22:42:05 +08:00
import LayoutDashboard from './views/layouts/LayoutDashboard.vue'
import LayoutEmpty from './views/layouts/LayoutEmpty.vue'
2021-01-16 00:54:31 +08:00
2022-12-22 22:42:05 +08:00
import 'floating-vue/dist/style.css'
import 'sweetalert2/dist/sweetalert2.min.css'
import 'notyf/notyf.min.css'
import './index.css'
import './assets/css/style.css'
import App from './App.vue'
import router from './router'
2022-04-01 04:29:09 +08:00
import { createPinia } from 'pinia'
import { urqlClient } from './urql'
library.add(fas, fab)
dom.watch()
2022-04-04 02:54:31 +08:00
const pinia = createPinia();
pinia.use(({ store }) => {
store.$router = markRaw(router)
});
const app = createApp(App)
app.use(pinia)
app.component('font-awesome-icon', FontAwesomeIcon)
app.component('default-layout', LayoutDashboard)
app.component('empty-layout', LayoutEmpty)
2022-04-01 04:29:09 +08:00
app.use(urql, urqlClient)
2021-05-07 01:32:14 +08:00
app.use(VueSweetalert2)
2022-12-22 22:42:05 +08:00
app.use(FloatingVue)
2022-08-19 22:40:02 +08:00
app.use(MotionPlugin)
app.use(router)
const isMobile = (navigator as any)?.userAgentData?.mobile ?? false;
if(!isMobile) {
app.mount('#felicityApp')
}