one
Version:
One is a React framework for web, iOS, and Android apps.
1 lines • 3.01 kB
Source Map (JSON)
{"version":3,"file":"ServerContextScript.js","names":[],"sources":["esm/server/ServerContextScript.js"],"sourcesContent":["import { SERVER_CONTEXT_KEY } from \"../constants\";\nimport { safeJsonStringify } from \"../utils/htmlEscape\";\nimport { SERVER_CONTEXT_POST_RENDER_STRING } from \"../vite/constants\";\nimport { useServerContext } from \"../vite/one-server-only\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction ServerContextScript() {\n if (process.env.VITE_ENVIRONMENT === \"client\") {\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n async: true,\n href: SERVER_CONTEXT_KEY,\n suppressHydrationWarning: true,\n dangerouslySetInnerHTML: {\n __html: ``\n }\n }\n );\n }\n if (process.env.VITE_ENVIRONMENT === \"ssr\") {\n const context = useServerContext();\n const cssUrls = context?.css || [];\n const { cssContents, ...restContext } = context || {};\n const hasLeafLoaderData = restContext.loaderData !== void 0;\n const lastMatchIndex = (restContext.matches?.length ?? 0) - 1;\n const compactMatches = restContext.matches?.map((m, i) => ({\n routeId: m.routeId,\n pathname: m.pathname,\n params: m.params,\n ...hasLeafLoaderData && i === lastMatchIndex ? {} : { loaderData: m.loaderData }\n }));\n const clientContext = {\n ...restContext,\n matches: compactMatches,\n cssInlineCount: cssContents?.length || 0,\n // use placeholder — postRenderData is set during render (after this component)\n // and replaced in the HTML string after rendering completes\n postRenderData: SERVER_CONTEXT_POST_RENDER_STRING\n };\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n async: true,\n href: SERVER_CONTEXT_KEY,\n suppressHydrationWarning: true,\n dangerouslySetInnerHTML: {\n __html: `\n globalThis[\"${SERVER_CONTEXT_KEY}\"] = ${safeJsonStringify(clientContext)};\n globalThis.__oneLoadedCSS = new Set(${safeJsonStringify(cssUrls)});\n `\n }\n }\n );\n }\n return null;\n}\nexport {\n ServerContextScript\n};\n//# sourceMappingURL=ServerContextScript.js.map\n"],"mappings":";;;;;;;AAKA,SAAS,sBAAsB;CAC7B,IAAI,QAAQ,IAAI,qBAAqB,UAAU;EAC7C,OAAuB,oBACrB,UACA;GACE,OAAO;GACP,MAAM;GACN,0BAA0B;GAC1B,yBAAyB,EACvB,QAAQ,GACV;EACF,CACF;CACF;CACA,IAAI,QAAQ,IAAI,qBAAqB,OAAO;EAC1C,MAAM,UAAU,iBAAiB;EACjC,MAAM,UAAU,SAAS,OAAO,CAAC;EACjC,MAAM,EAAE,aAAa,GAAG,gBAAgB,WAAW,CAAC;EACpD,MAAM,oBAAoB,YAAY,eAAe,KAAK;EAC1D,MAAM,kBAAkB,YAAY,SAAS,UAAU,KAAK;EAC5D,MAAM,iBAAiB,YAAY,SAAS,KAAK,GAAG,OAAO;GACzD,SAAS,EAAE;GACX,UAAU,EAAE;GACZ,QAAQ,EAAE;GACV,GAAG,qBAAqB,MAAM,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW;EACjF,EAAE;EACF,MAAM,gBAAgB;GACpB,GAAG;GACH,SAAS;GACT,gBAAgB,aAAa,UAAU;GAGvC,gBAAgB;EAClB;EACA,OAAuB,oBACrB,UACA;GACE,OAAO;GACP,MAAM;GACN,0BAA0B;GAC1B,yBAAyB,EACvB,QAAQ;4BACU,mBAAmB,OAAO,kBAAkB,aAAa,EAAE;oDACnC,kBAAkB,OAAO,EAAE;YAEvE;EACF,CACF;CACF;CACA,OAAO;AACT"}