-
Notifications
You must be signed in to change notification settings - Fork 64
Expand file tree
/
Copy pathmain.ts
More file actions
59 lines (47 loc) · 2.48 KB
/
main.ts
File metadata and controls
59 lines (47 loc) · 2.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import { createApp } from 'vue';
import { createHead, VueHeadMixin } from '@unhead/vue';
import { createPinia } from 'pinia';
import VueGtag from 'vue-gtag';
import LoadScript from 'vue-plugin-load-script';
import App from './App.vue';
import router from './router/index.js';
import ExternalLinkMessage from '@/components/ExternalLinkMessage.vue';
import SurveyLinkComponent from '@/components/SurveyLinkComponent.vue';
import { usePartnerStore } from '@/stores/partners';
import { useGenericGlobalsStore } from '@/stores/genericGlobals.ts';
// Import and add icons to library
import { library } from '@fortawesome/fontawesome-svg-core';
import { fab } from '@fortawesome/free-brands-svg-icons';
import {
faAngleDoubleLeft, faAngleDoubleRight, faAngleLeft, faAngleRight, faArrowRight, faBlog, faBook, faCaretDown, faCaretUp, faInfoCircle, faCheckCircle,
faExclamationCircle, faFileCode, faTriangleExclamation, faUpRightFromSquare, faLightbulb, faLink, faMinus, faPassport, faPlus, faPodcast, faIdCard,
faSearch, faHandshake, faUsersCog, faLaptopCode, faPoll, faTimes, faToolbox, faSitemap, faUser, faUserShield, faBullhorn, faWindowMaximize,
} from '@fortawesome/free-solid-svg-icons';
import { faArrowAltCircleRight, faClipboard, faNewspaper } from '@fortawesome/free-regular-svg-icons';
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
library.add(
faAngleDoubleLeft, faAngleDoubleRight, faAngleLeft, faAngleRight, faArrowRight, faBlog, faBook, faCaretDown, faCaretUp, faInfoCircle, faCheckCircle,
faExclamationCircle, faFileCode, faTriangleExclamation, faUpRightFromSquare, faLightbulb, faLink, faMinus, faPassport, faPlus, faPodcast, faIdCard,
faSearch, faHandshake, faUsersCog, faLaptopCode, faPoll, faTimes, faToolbox, faSitemap, faUser, faUserShield, faBullhorn, faWindowMaximize,
faArrowAltCircleRight, faClipboard, faNewspaper, fab,);
const app = createApp(App);
const head = createHead();
const pinia = createPinia();
pinia.use(({ store }) => {
store.router = router;
});
app.use(pinia);
app.use(head);
app.mixin(VueHeadMixin);
usePartnerStore().initialize();
app.use(VueGtag, {
config: { id: import.meta.env.VITE_GOOGLE_ANALYTICS_PROPERTY_ID },
appName: 'CVE Website',
}, router);
app.use(LoadScript);
app.use(router);
app.config.globalProperties.GenericGlobalsStore = useGenericGlobalsStore();
app.component('font-awesome-icon', FontAwesomeIcon);
app.component('ExternalLinkMessage', ExternalLinkMessage);
app.component('SurveyLinkComponent', SurveyLinkComponent);
app.mount('#app');