45 lines
1.1 KiB
TypeScript
45 lines
1.1 KiB
TypeScript
import "./styles.css";
|
|
import "core-js/actual"
|
|
import "./ts/storage/database"
|
|
import App from "./App.svelte";
|
|
import { loadData } from "./ts/storage/globalApi";
|
|
import { initHotkey } from "./ts/hotkey";
|
|
import { polyfill } from "./ts/polyfill";
|
|
import { preLoadCheck } from "./preload";
|
|
|
|
const errorHandler = (event: ErrorEvent) => {
|
|
console.error(event.error)
|
|
alert(event.error)
|
|
}
|
|
const rejectHandler = (event: PromiseRejectionEvent) => {
|
|
console.error(event.reason)
|
|
alert(event.reason)
|
|
}
|
|
|
|
window.addEventListener('error', errorHandler)
|
|
window.addEventListener('unhandledrejection', rejectHandler)
|
|
|
|
export const removeDefaultHandler = () => {
|
|
window.removeEventListener('error', errorHandler)
|
|
window.removeEventListener('unhandledrejection', rejectHandler)
|
|
}
|
|
|
|
let app: App;
|
|
|
|
if(preLoadCheck()){
|
|
try {
|
|
polyfill()
|
|
|
|
app = new App({
|
|
target: document.getElementById("app"),
|
|
});
|
|
|
|
loadData()
|
|
initHotkey()
|
|
} catch (error) {
|
|
console.error(error, error.stack)
|
|
alert(error)
|
|
}
|
|
}
|
|
|
|
export default app; |