UNPKG

one

Version:

One is a new React Framework that makes Vite serve both native and web.

38 lines (37 loc) 1.39 kB
import { startTransition } from "react"; import { createRoot, hydrateRoot } from "react-dom/client"; globalThis.__vxrnVersion ||= 0; const listeners = /* @__PURE__ */new Set(); let didRender = !1; function render(element) { typeof document > "u" || (globalThis.__vxrnRoot ? (globalThis.__vxrnVersion++, globalThis.__vxrnRoot.render(element)) : startTransition(() => { const rootElement = process.env.ONE_USE_FASTER_DOCUMENT ? document.documentElement : document; if (globalThis.__vxrnIsSPA) { const root = createRoot(rootElement); globalThis.__vxrnRoot = root, root.render(element); } else globalThis.__vxrnRoot = hydrateRoot(rootElement, element, { onRecoverableError(...args) { console.groupCollapsed("[one] Non-critical recoverable React error occurred, expand group to see details"), console.error(...args), console.groupEnd(); }, onUncaughtError(...args) { console.error("[one] onUncaughtError", ...args); }, onCaughtError(...args) { console.error("[one] onCaughtError", ...args); } }); }), listeners.forEach(cb => { cb(); }), didRender = !0); } function afterClientRender(listener) { if (didRender) { listener(); return; } return listeners.add(listener), () => { listeners.delete(listener); }; } export { afterClientRender, render }; //# sourceMappingURL=render.mjs.map