1
0
Fork 0
mirror of https://github.com/sussy-code/smov.git synced 2024-12-21 14:47:41 +01:00
smov/src/index.tsx

48 lines
1.3 KiB
TypeScript
Raw Normal View History

2022-12-17 09:54:27 +01:00
import React, { Suspense } from "react";
2022-02-16 21:30:12 +01:00
import ReactDOM from "react-dom";
import { HashRouter } from "react-router-dom";
2022-12-13 23:50:13 +01:00
import { ErrorBoundary } from "@/components/layout/ErrorBoundary";
2023-01-07 21:36:18 +01:00
import { conf } from "@/setup/config";
import App from "@/setup/App";
import "@/setup/i18n";
import "@/setup/index.css";
2023-01-11 21:16:48 +01:00
import "@/backend";
2022-12-29 18:25:57 +01:00
// initialize
const key =
(window as any)?.__CONFIG__?.VITE_KEY ?? import.meta.env.VITE_KEY ?? null;
if (key) {
(window as any).initMW(conf().BASE_PROXY_URL, key);
}
2021-07-14 00:31:37 +02:00
2023-01-14 00:30:50 +01:00
// TODO video todos:
// - error handling
// - captions
// - mobile UI
// - safari fullscreen will make video overlap player controls
// - safari progress bar is fucked (video doesnt change time but video.currentTime does change)
// TODO optional todos:
// - shortcuts when player is active
// - improve seekables (if possible)
// TODO stuff to test:
// - browser: firefox, chrome, edge, safari desktop
// - phones: android firefox, android chrome, iphone safari
// - devices: ipadOS
// - features: HLS, error handling, preload interactions
2021-07-14 00:31:37 +02:00
ReactDOM.render(
2022-02-16 21:30:12 +01:00
<React.StrictMode>
<ErrorBoundary>
<HashRouter>
2022-12-17 09:54:27 +01:00
<Suspense fallback="">
<App />
</Suspense>
2022-02-16 21:30:12 +01:00
</HashRouter>
</ErrorBoundary>
</React.StrictMode>,
document.getElementById("root")
2021-07-14 00:31:37 +02:00
);