safetwitch/src/main.ts
2023-07-19 20:27:56 -04:00

54 lines
1.3 KiB
TypeScript

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import './assets/index.css'
import i18n from "./i18n"
import { version } from "../package.json"
const app = createApp(App).use(i18n)
// Add protocol variable
// For some reason, import.meta.env.VITE_HTTPS === "true"
// returns false, even if it is true.
// Making a copy of the variable seems to work
const https = (import.meta.env.SAFETWITCH_HTTPS.slice() === "true")
const protocol = https ? 'https://' : 'http://'
const wsProtocol = https ? 'wss://' : 'ws://'
app.provide('protocol', protocol)
app.provide('rootUrl', `${protocol}${import.meta.env.SAFETWITCH_INSTANCE_DOMAIN}`)
app.provide('rootBackendUrl', `${protocol}${import.meta.env.SAFETWITCH_BACKEND_DOMAIN}`)
app.provide('wsLink', `${wsProtocol}${import.meta.env.SAFETWITCH_BACKEND_DOMAIN}`)
app.provide('version', version)
import { OhVueIcon, addIcons } from 'oh-vue-icons'
import {
IoSearchOutline,
IoLink,
FaCircleNotch,
BiTwitter,
BiInstagram,
BiDiscord,
BiYoutube,
BiTiktok,
BiHeartFill,
IoPerson
} from 'oh-vue-icons/icons'
addIcons(
IoSearchOutline,
IoLink,
FaCircleNotch,
BiTwitter,
BiInstagram,
BiDiscord,
BiYoutube,
BiTiktok,
BiHeartFill,
IoPerson
)
app.component('v-icon', OhVueIcon)
app.use(router)
app.mount('#app')