fluidd

Форк
0
/
main.ts 
90 строк · 2.2 Кб
1
// Styles
2
import '@/scss/global.scss'
3
import 'vue-virtual-scroller/dist/vue-virtual-scroller.css'
4

5
// Global Registrations
6
import './registerComponentHooks'
7
import './setupConsola'
8

9
// Common, 1st party.
10
import Vue from 'vue'
11
import { Globals } from './globals'
12
import i18n from '@/plugins/i18n'
13
import router from './router'
14
import store from './store'
15
import { consola } from 'consola'
16

17
// 3rd party.
18
import vuetify from './plugins/vuetify'
19
import VueVirtualScroller from 'vue-virtual-scroller'
20
import VueMeta from 'vue-meta'
21
import VuetifyConfirm from 'vuetify-confirm'
22
import Vue2TouchEvents from 'vue2-touch-events'
23
import { InlineSvgPlugin } from 'vue-inline-svg'
24

25
// Init.
26
import { appInit } from './init'
27
import type { InitConfig } from './store/config/types'
28

29
// Import plugins
30
import { HttpClientPlugin } from './plugins/httpClient'
31
import { FiltersPlugin } from './plugins/filters'
32
import { SocketPlugin } from './plugins/socketClient'
33
import { ColorSetPlugin } from './plugins/colorSet'
34

35
// Main App component
36
import App from './App.vue'
37

38
// Register global directives.
39
import Blur from '@/directives/blur'
40

41
// Directives...
42
Vue.directive('blur', Blur)
43

44
// v-chart component asynchronously loaded from a split chunk
45
Vue.component('EChart', () => import('./vue-echarts-chunk'))
46

47
// Use any Plugins
48
Vue.use(VueVirtualScroller)
49
Vue.use(FiltersPlugin)
50
Vue.use(VueMeta)
51
Vue.use(ColorSetPlugin, {})
52
Vue.use(VuetifyConfirm, {
53
  vuetify
54
})
55
Vue.use(InlineSvgPlugin)
56
Vue.use(Vue2TouchEvents)
57

58
Vue.use(HttpClientPlugin, {
59
  store
60
})
61

62
appInit()
63
  .then((config: InitConfig) => {
64
    consola.debug('Loaded App Configuration', config)
65

66
    // Init the socket plugin
67
    Vue.use(SocketPlugin, {
68
      url: config.apiConfig.socketUrl,
69
      reconnectEnabled: true,
70
      reconnectInterval: Globals.SOCKET_RETRY_DELAY,
71
      store
72
    })
73

74
    if (config.apiConfig.socketUrl && config.apiConnected && config.apiAuthenticated) {
75
      Vue.$socket.connect(config.apiConfig.socketUrl)
76
    }
77

78
    // Init Vue
79
    Vue.config.productionTip = false
80
    new Vue({
81
      i18n,
82
      router,
83
      store,
84
      vuetify,
85
      render: (h) => h(App)
86
    }).$mount('#app')
87
  })
88
  .catch((e) => {
89
    consola.debug('Error attempting to init App:', e)
90
  })
91

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.