Skip to content
Snippets Groups Projects
main.js 1.26 KiB
Newer Older
  • Learn to ignore specific revisions
  • import { defineDefaultAPIStoreOptions } from '@rokoli/bnb/drf'
    
    import BootstrapVue from 'bootstrap-vue'
    
    import { merge } from 'lodash'
    
    import { createPinia } from 'pinia'
    
    import { createApp } from 'vue'
    
    import VueToast from 'vue-toast-notification'
    
    
    import { TranslationPlugin } from './i18n'
    
    import router from './router'
    
    import store from './store'
    
    import App from './App.vue'
    
    Richard Blechinger's avatar
    Richard Blechinger committed
    import 'vue-toast-notification/dist/theme-default.css'
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
    import '../node_modules/bootstrap-vue/dist/bootstrap-vue.css'
    import '../node_modules/bootstrap/scss/bootstrap.scss'
    
    import './assets/custom.scss'
    import './assets/styles/tailwind.css'
    
    import { shouldLog } from '@/utilities'
    
    import { useAuthStore } from '@/stores/auth'
    
    defineDefaultAPIStoreOptions({ mergeDriver: merge })
    
    
    const pinia = createPinia()
    
    const app = createApp(App)
    
    app.config.warnHandler = (message, instance, trace) => {
      if (shouldLog(message, instance, trace)) {
        console.warn(`[Vue warn]: ${message}`, trace)
      }
    }
    
    app.use(pinia)
    
    app.use(router)
    app.use(BootstrapVue)
    
    app.use(TranslationPlugin)
    
    Konrad Mohrfeldt's avatar
    Konrad Mohrfeldt committed
    app.use(VueToast, { position: 'bottom-left' })
    
    store.$log = window.console
    app.use({
      install(Vue) {
        Vue.prototype.$log = window.console
      },
    })
    
    const authStore = useAuthStore()
    
    void authStore.init()