45 lines
1.2 KiB
TypeScript
45 lines
1.2 KiB
TypeScript
import { router } from '@/router';
|
|
import VueVimeoPlayer from 'vue-vimeo-player';
|
|
import { store } from '@/store';
|
|
import VueModal from '@/plugins/modal';
|
|
import VueRemoveEdges from '@/plugins/edges';
|
|
import { createApolloProvider } from '@vue/apollo-option';
|
|
import apolloClients from './apollo';
|
|
import flavorPlugin from '@/plugins/flavor';
|
|
import VueMatomo from 'vue-matomo';
|
|
import * as Sentry from '@sentry/vue';
|
|
|
|
const { publicApolloClient, privateApolloClient } = apolloClients;
|
|
|
|
const apolloProvider = createApolloProvider({
|
|
clients: {
|
|
publicClient: publicApolloClient,
|
|
},
|
|
defaultClient: privateApolloClient,
|
|
});
|
|
const registerPlugins = (app: any) => {
|
|
if (process.env.SENTRY_DSN) {
|
|
Sentry.init({
|
|
app,
|
|
dsn: process.env.SENTRY_DSN,
|
|
environment: process.env.SENTRY_ENVIRONMENT || 'localhost',
|
|
});
|
|
}
|
|
app.use(store);
|
|
app.use(VueModal);
|
|
app.use(VueRemoveEdges);
|
|
app.use(VueVimeoPlayer);
|
|
app.use(apolloProvider);
|
|
app.use(router);
|
|
app.use(flavorPlugin);
|
|
if (process.env.MATOMO_HOST) {
|
|
app.use(VueMatomo, {
|
|
host: process.env.MATOMO_HOST,
|
|
siteId: process.env.MATOMO_SITE_ID,
|
|
router: router,
|
|
});
|
|
}
|
|
};
|
|
|
|
export default registerPlugins;
|