/* * main.ts * Copyright (C) 2024 veypi * 2024-07-04 14:34 * Distributed under terms of the MIT license. */ import './assets/css/oaer.scss' import bus from './bus' import logic from './logic' import ui from './components' export default new class { private ui?: ui constructor() { } init(host?: string, code?: string) { if (host) { logic.host = host } if (code) { logic.token.refresh.set(code) } return logic.init() } render_ui(domid = 'voa') { if (!this.ui) { this.ui = new ui() } let root = document.querySelector('#' + domid) if (root) { this.ui.mount(root) } else { console.warn(`not found
`) } } isValid() { return logic.token.refresh.isVaild() } login() { bus.emit('login') } logout() { bus.emit('logout') } on(evt: string, fn: (d?: any) => void) { bus.on(evt, fn) } }()