{"version":3,"file":"hydrateStart.js","sources":["../../../src/client/hydrateStart.ts"],"sourcesContent":["import { hydrate } from '@tanstack/router-core/ssr/client'\n\nimport { ServerFunctionSerializationAdapter } from './ServerFunctionSerializationAdapter'\nimport type { AnyStartInstanceOptions } from '../createStart'\nimport type { AnyRouter, AnySerializationAdapter } from '@tanstack/router-core'\n// eslint-disable-next-line import/no-duplicates,import/order\nimport { getRouter } from '#tanstack-router-entry'\n// eslint-disable-next-line import/no-duplicates,import/order\nimport { startInstance } from '#tanstack-start-entry'\n\nexport async function hydrateStart(): Promise<AnyRouter> {\n  const router = await getRouter()\n\n  let serializationAdapters: Array<AnySerializationAdapter>\n  if (startInstance) {\n    const startOptions = await startInstance.getOptions()\n    startOptions.serializationAdapters =\n      startOptions.serializationAdapters ?? []\n    window.__TSS_START_OPTIONS__ = startOptions as AnyStartInstanceOptions\n    serializationAdapters = startOptions.serializationAdapters\n    router.options.defaultSsr = startOptions.defaultSsr\n  } else {\n    serializationAdapters = []\n    window.__TSS_START_OPTIONS__ = {\n      serializationAdapters,\n    } as AnyStartInstanceOptions\n  }\n\n  serializationAdapters.push(ServerFunctionSerializationAdapter)\n  if (router.options.serializationAdapters) {\n    serializationAdapters.push(...router.options.serializationAdapters)\n  }\n\n  router.update({\n    basepath: process.env.TSS_ROUTER_BASEPATH,\n    ...{ serializationAdapters },\n  })\n  if (!router.state.matches.length) {\n    await hydrate(router)\n  }\n\n  return router\n}\n"],"names":[],"mappings":";;;;AAUA,eAAsB,eAAmC;AACvD,QAAM,SAAS,MAAM,UAAA;AAErB,MAAI;AACJ,MAAI,eAAe;AACjB,UAAM,eAAe,MAAM,cAAc,WAAA;AACzC,iBAAa,wBACX,aAAa,yBAAyB,CAAA;AACxC,WAAO,wBAAwB;AAC/B,4BAAwB,aAAa;AACrC,WAAO,QAAQ,aAAa,aAAa;AAAA,EAC3C,OAAO;AACL,4BAAwB,CAAA;AACxB,WAAO,wBAAwB;AAAA,MAC7B;AAAA,IAAA;AAAA,EAEJ;AAEA,wBAAsB,KAAK,kCAAkC;AAC7D,MAAI,OAAO,QAAQ,uBAAuB;AACxC,0BAAsB,KAAK,GAAG,OAAO,QAAQ,qBAAqB;AAAA,EACpE;AAEA,SAAO,OAAO;AAAA,IACZ,UAAU,QAAQ,IAAI;AAAA,IACtB,GAAG,EAAE,sBAAA;AAAA,EAAsB,CAC5B;AACD,MAAI,CAAC,OAAO,MAAM,QAAQ,QAAQ;AAChC,UAAM,QAAQ,MAAM;AAAA,EACtB;AAEA,SAAO;AACT;"}