{"version":3,"file":"renderRouterToStream.cjs","names":["Solid","isbot","transformReadableStreamWithRouter","makeSsrSerovalPlugin","JSXElement","ReadableStream","AnyRouter","renderRouterToStream","request","router","responseHeaders","children","Request","Headers","writable","readable","TransformStream","serializationAdapters","options","ssr","serovalPlugins","map","adapter","plugin","didRun","stream","renderToStream","nonce","plugins","headers","get","pipeTo","responseStream","Response","status","stores","statusCode","state"],"sources":["../../../src/ssr/renderRouterToStream.tsx"],"sourcesContent":["import * as Solid from '@solidjs/web'\nimport { isbot } from 'isbot'\nimport { transformReadableStreamWithRouter } from '@tanstack/router-core/ssr/server'\nimport { makeSsrSerovalPlugin } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\nimport type { ReadableStream } from 'node:stream/web'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport const renderRouterToStream = async ({\n  request,\n  router,\n  responseHeaders,\n  children,\n}: {\n  request: Request\n  router: AnyRouter\n  responseHeaders: Headers\n  children: () => JSXElement\n}) => {\n  const { writable, readable } = new TransformStream()\n\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  const stream = Solid.renderToStream(() => children, {\n    nonce: router.options.ssr?.nonce,\n    plugins: serovalPlugins,\n  } as any)\n\n  if (isbot(request.headers.get('User-Agent'))) {\n    await stream\n  }\n  stream.pipeTo(writable)\n\n  const responseStream = transformReadableStreamWithRouter(\n    router,\n    readable as unknown as ReadableStream,\n  )\n  return new Response(responseStream as any, {\n    status: router.stores.statusCode.state,\n    headers: responseHeaders,\n  })\n}\n"],"mappings":";;;;;;;AAQA,IAAaO,uBAAuB,OAAO,EACzCC,SACAC,QACAC,iBACAC,eAMI;CACJ,MAAM,EAAEG,UAAUC,aAAa,IAAIC,iBAAiB;CAKpD,MAAMI,kBAFHX,OAAOS,SAAiBD,yBACxBR,OAAOS,QAAQC,KAAaF,wBACeI,KAAKC,YAAiB;AAElE,UAAA,GAAA,sBAAA,sBADoCA,SAAS,EAAEE,QAAQ,OAAO,CAAC;GAE/D;CAEF,MAAMC,SAASzB,aAAM0B,qBAAqBf,UAAU;EAClDgB,OAAOlB,OAAOS,QAAQC,KAAKQ;EAC3BC,SAASR;EACV,CAAQ;AAET,MAAA,GAAA,MAAA,OAAUZ,QAAQqB,QAAQC,IAAI,aAAa,CAAC,CAC1C,OAAML;AAERA,QAAOM,OAAOjB,SAAS;CAEvB,MAAMkB,kBAAAA,GAAAA,iCAAAA,mCACJvB,QACAM,SACD;AACD,QAAO,IAAIkB,SAASD,gBAAuB;EACzCE,QAAQzB,OAAO0B,OAAOC,WAAWC;EACjCR,SAASnB;EACV,CAAC"}