22 lines
522 B
TypeScript
22 lines
522 B
TypeScript
import { RemixBrowser } from "@remix-run/react";
|
|
import { startTransition, StrictMode } from "react";
|
|
import { hydrateRoot } from "react-dom/client";
|
|
|
|
function hydrate() {
|
|
startTransition(() => {
|
|
hydrateRoot(
|
|
document,
|
|
<StrictMode>
|
|
<RemixBrowser />
|
|
</StrictMode>
|
|
);
|
|
});
|
|
}
|
|
|
|
if (typeof requestIdleCallback === "function") {
|
|
requestIdleCallback(hydrate);
|
|
} else {
|
|
// Safari doesn't support requestIdleCallback
|
|
// https://caniuse.com/requestidlecallback
|
|
setTimeout(hydrate, 1);
|
|
}
|