A photo manager for VRChat.
1/* @refresh reload */
2import { render } from "solid-js/web";
3
4declare global{
5 interface Window {
6 AccountManager: AccountManager;
7 LoadingManager: LoadingManager;
8 PhotoManager: PhotoManager;
9 ConfirmationBoxManager: ConfirmationBoxManager;
10 PhotoViewerManager: PhotoViewerManager;
11 WorldCacheManager: WorldCacheManager;
12 PhotoListRenderingManager: PhotoListRenderingManager;
13 SyncManager: SyncManager;
14
15 CloseAllPopups: (() => void)[];
16 OS: string;
17 }
18}
19
20window.CloseAllPopups = [];
21
22window.oncontextmenu = ( e ) => e.preventDefault();
23
24import "./styles.css";
25import App from "./Components/App";
26import { invoke } from "@tauri-apps/api/core";
27
28import { AccountManager } from "./Components/Managers/AccountManager";
29import { LoadingManager } from "./Components/Managers/LoadingManager";
30import { PhotoManager } from "./Components/Managers/PhotoManager";
31import { ConfirmationBoxManager } from "./Components/Managers/ConfirmationBoxManager";
32import { PhotoViewerManager } from "./Components/Managers/PhotoViewerManager";
33import { WorldCacheManager } from "./Components/Managers/WorldCacheManager";
34import { PhotoListRenderingManager } from "./Components/Managers/PhotoListRenderingManager";
35import { SyncManager } from "./Components/Managers/SyncManager";
36
37window.AccountManager = new AccountManager();
38window.LoadingManager = new LoadingManager();
39window.PhotoManager = new PhotoManager();
40window.ConfirmationBoxManager = new ConfirmationBoxManager();
41window.PhotoViewerManager = new PhotoViewerManager();
42window.WorldCacheManager = new WorldCacheManager();
43window.PhotoListRenderingManager = new PhotoListRenderingManager();
44window.SyncManager = new SyncManager();
45
46(async () => {
47 window.OS = await invoke('get_os');
48
49 render(() => <App />, document.getElementById("root") as HTMLElement);
50
51 let f = new FontFace('Rubik', 'url(https://cdn.phaz.uk/fonts/rubik/Rubik-VariableFont_wght.ttf)');
52
53 f.load().then((font) => {
54 document.fonts.add(font);
55 });
56})();