{"version":3,"file":"renderRouterToString.cjs","names":["Solid","makeSsrSerovalPlugin","AnyRouter","JSXElement","renderRouterToString","router","responseHeaders","children","Headers","serializationAdapters","options","ssr","serovalPlugins","map","adapter","plugin","didRun","html","renderToString","nonce","plugins","serverSsr","setRenderFinished","injectedHtml","takeBufferedHtml","replace","Response","status","stores","statusCode","state","headers","error","console","cleanup"],"sources":["../../../src/ssr/renderRouterToString.tsx"],"sourcesContent":["import * as Solid from '@solidjs/web'\nimport { makeSsrSerovalPlugin } from '@tanstack/router-core'\nimport type { AnyRouter } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\n\nexport const renderRouterToString = ({\n  router,\n  responseHeaders,\n  children,\n}: {\n  router: AnyRouter\n  responseHeaders: Headers\n  children: () => JSXElement\n}) => {\n  try {\n    const serializationAdapters =\n      (router.options as any)?.serializationAdapters ||\n      (router.options.ssr as any)?.serializationAdapters\n    const serovalPlugins = serializationAdapters?.map((adapter: any) => {\n      const plugin = makeSsrSerovalPlugin(adapter, { didRun: false })\n      return plugin\n    })\n\n    let html = Solid.renderToString(children, {\n      nonce: router.options.ssr?.nonce,\n      plugins: serovalPlugins,\n    } as any)\n    router.serverSsr!.setRenderFinished()\n\n    const injectedHtml = router.serverSsr!.takeBufferedHtml()\n    if (injectedHtml) {\n      html = html.replace(`</body>`, () => `${injectedHtml}</body>`)\n    }\n    return new Response(`<!DOCTYPE html>${html}`, {\n      status: router.stores.statusCode.state,\n      headers: responseHeaders,\n    })\n  } catch (error) {\n    console.error('Render to string error:', error)\n    return new Response('Internal Server Error', {\n      status: 500,\n      headers: responseHeaders,\n    })\n  } finally {\n    router.serverSsr?.cleanup()\n  }\n}\n"],"mappings":";;;;;AAKA,IAAaI,wBAAwB,EACnCC,QACAC,iBACAC,eAKI;AACJ,KAAI;EAIF,MAAMK,kBAFHP,OAAOK,SAAiBD,yBACxBJ,OAAOK,QAAQC,KAAaF,wBACeI,KAAKC,YAAiB;AAElE,WAAA,GAAA,sBAAA,sBADoCA,SAAS,EAAEE,QAAQ,OAAO,CAAC;IAE/D;EAEF,IAAIC,OAAOjB,aAAMkB,eAAeX,UAAU;GACxCY,OAAOd,OAAOK,QAAQC,KAAKQ;GAC3BC,SAASR;GACV,CAAQ;AACTP,SAAOgB,UAAWC,mBAAmB;EAErC,MAAMC,eAAelB,OAAOgB,UAAWG,kBAAkB;AACzD,MAAID,aACFN,QAAOA,KAAKQ,QAAQ,iBAAiB,GAAGF,aAAY,SAAU;AAEhE,SAAO,IAAIG,SAAS,kBAAkBT,QAAQ;GAC5CU,QAAQtB,OAAOuB,OAAOC,WAAWC;GACjCC,SAASzB;GACV,CAAC;UACK0B,OAAO;AACdC,UAAQD,MAAM,2BAA2BA,MAAM;AAC/C,SAAO,IAAIN,SAAS,yBAAyB;GAC3CC,QAAQ;GACRI,SAASzB;GACV,CAAC;WACM;AACRD,SAAOgB,WAAWa,SAAS"}