[{"data":1,"prerenderedAt":3535},["ShallowReactive",2],{"navigation":3,"examples-nav":407,"-examples-vite-trpc":511,"-examples-vite-trpc-surround":3532},[4,93,226,232,392,404],{"title":5,"path":6,"stem":7,"children":8,"icon":92},"","\u002Fdocs","1.docs\u002F1.index",[9,12,17,22,27,32,37,42,47,52,57,62,67,72,77,82,87],{"title":10,"path":6,"stem":7,"icon":11},"Introduction","i-lucide-compass",{"title":13,"path":14,"stem":15,"icon":16},"Quick Start","\u002Fdocs\u002Fquick-start","1.docs\u002F2.quick-start","i-lucide-zap",{"title":18,"path":19,"stem":20,"icon":21},"Renderer","\u002Fdocs\u002Frenderer","1.docs\u002F4.renderer","ri:layout-masonry-line",{"title":23,"path":24,"stem":25,"icon":26},"Routing","\u002Fdocs\u002Frouting","1.docs\u002F5.routing","ri:direction-line",{"title":28,"path":29,"stem":30,"icon":31},"Assets","\u002Fdocs\u002Fassets","1.docs\u002F50.assets","ri:image-2-line",{"title":33,"path":34,"stem":35,"icon":36},"Configuration","\u002Fdocs\u002Fconfiguration","1.docs\u002F50.configuration","ri:settings-3-line",{"title":38,"path":39,"stem":40,"icon":41},"Database","\u002Fdocs\u002Fdatabase","1.docs\u002F50.database","ri:database-2-line",{"title":43,"path":44,"stem":45,"icon":46},"Lifecycle","\u002Fdocs\u002Flifecycle","1.docs\u002F50.lifecycle","i-lucide-layers",{"title":48,"path":49,"stem":50,"icon":51},"OpenAPI","\u002Fdocs\u002Fopenapi","1.docs\u002F50.openapi","ri:contract-line",{"title":53,"path":54,"stem":55,"icon":56},"Plugins","\u002Fdocs\u002Fplugins","1.docs\u002F50.plugins","ri:plug-line",{"title":58,"path":59,"stem":60,"icon":61},"Tasks","\u002Fdocs\u002Ftasks","1.docs\u002F50.tasks","codicon:run-all",{"title":63,"path":64,"stem":65,"icon":66},"WebSocket","\u002Fdocs\u002Fwebsocket","1.docs\u002F50.websocket","ri:broadcast-fill",{"title":68,"path":69,"stem":70,"icon":71},"Server Entry","\u002Fdocs\u002Fserver-entry","1.docs\u002F6.server-entry","ri:server-line",{"title":73,"path":74,"stem":75,"icon":76},"Cache","\u002Fdocs\u002Fcache","1.docs\u002F7.cache","ri:speed-line",{"title":78,"path":79,"stem":80,"icon":81},"KV Storage","\u002Fdocs\u002Fstorage","1.docs\u002F8.storage","carbon:datastore",{"title":83,"path":84,"stem":85,"icon":86},"Migration Guide","\u002Fdocs\u002Fmigration","1.docs\u002F99.migration","ri:arrow-right-up-line",{"title":88,"path":89,"stem":90,"icon":91},"Nightly Channel","\u002Fdocs\u002Fnightly","1.docs\u002F99.nightly","ri:moon-fill","i-lucide-book-open",{"title":94,"path":95,"stem":96,"children":97,"icon":99},"Deploy","\u002Fdeploy","2.deploy\u002F0.index",[98,100,121],{"title":94,"path":95,"stem":96,"icon":99},"ri:upload-cloud-2-line",{"title":101,"path":102,"stem":103,"children":104,"page":120},"Runtimes","\u002Fdeploy\u002Fruntimes","2.deploy\u002F10.runtimes",[105,110,115],{"title":106,"path":107,"stem":108,"icon":109},"Node.js","\u002Fdeploy\u002Fruntimes\u002Fnode","2.deploy\u002F10.runtimes\u002F1.node","akar-icons:node-fill",{"title":111,"path":112,"stem":113,"icon":114},"Bun","\u002Fdeploy\u002Fruntimes\u002Fbun","2.deploy\u002F10.runtimes\u002Fbun","simple-icons:bun",{"title":116,"path":117,"stem":118,"icon":119},"Deno","\u002Fdeploy\u002Fruntimes\u002Fdeno","2.deploy\u002F10.runtimes\u002Fdeno","simple-icons:deno",false,{"title":122,"path":123,"stem":124,"children":125,"page":120},"Providers","\u002Fdeploy\u002Fproviders","2.deploy\u002F20.providers",[126,130,134,138,142,146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222],{"title":127,"path":128,"stem":129},"Alwaysdata","\u002Fdeploy\u002Fproviders\u002Falwaysdata","2.deploy\u002F20.providers\u002Falwaysdata",{"title":131,"path":132,"stem":133},"AWS Lambda","\u002Fdeploy\u002Fproviders\u002Faws","2.deploy\u002F20.providers\u002Faws",{"title":135,"path":136,"stem":137},"AWS Amplify","\u002Fdeploy\u002Fproviders\u002Faws-amplify","2.deploy\u002F20.providers\u002Faws-amplify",{"title":139,"path":140,"stem":141},"Azure","\u002Fdeploy\u002Fproviders\u002Fazure","2.deploy\u002F20.providers\u002Fazure",{"title":143,"path":144,"stem":145},"Cleavr","\u002Fdeploy\u002Fproviders\u002Fcleavr","2.deploy\u002F20.providers\u002Fcleavr",{"title":147,"path":148,"stem":149},"Cloudflare","\u002Fdeploy\u002Fproviders\u002Fcloudflare","2.deploy\u002F20.providers\u002Fcloudflare",{"title":151,"path":152,"stem":153},"Deno Deploy","\u002Fdeploy\u002Fproviders\u002Fdeno-deploy","2.deploy\u002F20.providers\u002Fdeno-deploy",{"title":155,"path":156,"stem":157},"DigitalOcean","\u002Fdeploy\u002Fproviders\u002Fdigitalocean","2.deploy\u002F20.providers\u002Fdigitalocean",{"title":159,"path":160,"stem":161},"EdgeOne Pages","\u002Fdeploy\u002Fproviders\u002Fedgeone","2.deploy\u002F20.providers\u002Fedgeone",{"title":163,"path":164,"stem":165},"Firebase","\u002Fdeploy\u002Fproviders\u002Ffirebase","2.deploy\u002F20.providers\u002Ffirebase",{"title":167,"path":168,"stem":169},"Flightcontrol","\u002Fdeploy\u002Fproviders\u002Fflightcontrol","2.deploy\u002F20.providers\u002Fflightcontrol",{"title":171,"path":172,"stem":173},"Genezio","\u002Fdeploy\u002Fproviders\u002Fgenezio","2.deploy\u002F20.providers\u002Fgenezio",{"title":175,"path":176,"stem":177},"GitHub Pages","\u002Fdeploy\u002Fproviders\u002Fgithub-pages","2.deploy\u002F20.providers\u002Fgithub-pages",{"title":179,"path":180,"stem":181},"GitLab Pages","\u002Fdeploy\u002Fproviders\u002Fgitlab-pages","2.deploy\u002F20.providers\u002Fgitlab-pages",{"title":183,"path":184,"stem":185},"Heroku","\u002Fdeploy\u002Fproviders\u002Fheroku","2.deploy\u002F20.providers\u002Fheroku",{"title":187,"path":188,"stem":189},"IIS","\u002Fdeploy\u002Fproviders\u002Fiis","2.deploy\u002F20.providers\u002Fiis",{"title":191,"path":192,"stem":193},"Koyeb","\u002Fdeploy\u002Fproviders\u002Fkoyeb","2.deploy\u002F20.providers\u002Fkoyeb",{"title":195,"path":196,"stem":197},"Netlify","\u002Fdeploy\u002Fproviders\u002Fnetlify","2.deploy\u002F20.providers\u002Fnetlify",{"title":199,"path":200,"stem":201},"Platform.sh","\u002Fdeploy\u002Fproviders\u002Fplatform-sh","2.deploy\u002F20.providers\u002Fplatform-sh",{"title":203,"path":204,"stem":205},"Render.com","\u002Fdeploy\u002Fproviders\u002Frender","2.deploy\u002F20.providers\u002Frender",{"title":207,"path":208,"stem":209},"StormKit","\u002Fdeploy\u002Fproviders\u002Fstormkit","2.deploy\u002F20.providers\u002Fstormkit",{"title":211,"path":212,"stem":213},"Vercel","\u002Fdeploy\u002Fproviders\u002Fvercel","2.deploy\u002F20.providers\u002Fvercel",{"title":215,"path":216,"stem":217},"Zeabur","\u002Fdeploy\u002Fproviders\u002Fzeabur","2.deploy\u002F20.providers\u002Fzeabur",{"title":219,"path":220,"stem":221},"Zephyr Cloud","\u002Fdeploy\u002Fproviders\u002Fzephyr","2.deploy\u002F20.providers\u002Fzephyr",{"title":223,"path":224,"stem":225},"Zerops","\u002Fdeploy\u002Fproviders\u002Fzerops","2.deploy\u002F20.providers\u002Fzerops",{"title":227,"path":228,"stem":229,"children":230,"icon":36},"Config","\u002Fconfig","3.config\u002F0.index",[231],{"title":227,"path":228,"stem":229,"icon":36},{"title":233,"path":234,"stem":235,"children":236,"icon":238},"Examples","\u002Fexamples","4.examples\u002F0.index",[237,239,244,249,254,259,263,268,273,278,283,288,293,297,302,306,310,315,320,325,330,335,340,345,350,355,360,364,369,374,378,383,388],{"title":233,"path":234,"stem":235,"icon":238},"i-lucide-folder-code",{"title":240,"path":241,"stem":242,"icon":243},"API Routes","\u002Fexamples\u002Fapi-routes","4.examples\u002Fapi-routes","i-lucide-route",{"title":245,"path":246,"stem":247,"icon":248},"Auto Imports","\u002Fexamples\u002Fauto-imports","4.examples\u002Fauto-imports","i-lucide-import",{"title":250,"path":251,"stem":252,"icon":253},"Cached Handler","\u002Fexamples\u002Fcached-handler","4.examples\u002Fcached-handler","i-lucide-clock",{"title":255,"path":256,"stem":257,"icon":258},"Custom Error Handler","\u002Fexamples\u002Fcustom-error-handler","4.examples\u002Fcustom-error-handler","i-lucide-alert-circle",{"title":38,"path":260,"stem":261,"icon":262},"\u002Fexamples\u002Fdatabase","4.examples\u002Fdatabase","i-lucide-database",{"title":264,"path":265,"stem":266,"icon":267},"Elysia","\u002Fexamples\u002Felysia","4.examples\u002Felysia","i-skill-icons-elysia-dark",{"title":269,"path":270,"stem":271,"icon":272},"Express","\u002Fexamples\u002Fexpress","4.examples\u002Fexpress","i-simple-icons-express",{"title":274,"path":275,"stem":276,"icon":277},"Fastify","\u002Fexamples\u002Ffastify","4.examples\u002Ffastify","i-simple-icons-fastify",{"title":279,"path":280,"stem":281,"icon":282},"Hello World","\u002Fexamples\u002Fhello-world","4.examples\u002Fhello-world","i-lucide-sparkles",{"title":284,"path":285,"stem":286,"icon":287},"Hono","\u002Fexamples\u002Fhono","4.examples\u002Fhono","i-logos-hono",{"title":289,"path":290,"stem":291,"icon":292},"Import Alias","\u002Fexamples\u002Fimport-alias","4.examples\u002Fimport-alias","i-lucide-at-sign",{"title":294,"path":295,"stem":296,"icon":46},"Middleware","\u002Fexamples\u002Fmiddleware","4.examples\u002Fmiddleware",{"title":298,"path":299,"stem":300,"icon":301},"Mono JSX","\u002Fexamples\u002Fmono-jsx","4.examples\u002Fmono-jsx","i-lucide-brackets",{"title":303,"path":304,"stem":305,"icon":301},"Nano JSX","\u002Fexamples\u002Fnano-jsx","4.examples\u002Fnano-jsx",{"title":53,"path":307,"stem":308,"icon":309},"\u002Fexamples\u002Fplugins","4.examples\u002Fplugins","i-lucide-plug",{"title":311,"path":312,"stem":313,"icon":314},"Custom Renderer","\u002Fexamples\u002Frenderer","4.examples\u002Frenderer","i-lucide-code",{"title":316,"path":317,"stem":318,"icon":319},"Runtime Config","\u002Fexamples\u002Fruntime-config","4.examples\u002Fruntime-config","i-lucide-settings",{"title":321,"path":322,"stem":323,"icon":324},"Server Fetch","\u002Fexamples\u002Fserver-fetch","4.examples\u002Fserver-fetch","i-lucide-arrow-right-left",{"title":326,"path":327,"stem":328,"icon":329},"Shiki","\u002Fexamples\u002Fshiki","4.examples\u002Fshiki","i-lucide-highlighter",{"title":331,"path":332,"stem":333,"icon":334},"Takumi","\u002Fexamples\u002Ftakumi","4.examples\u002Ftakumi","i-lucide-image",{"title":336,"path":337,"stem":338,"icon":339},"Virtual Routes","\u002Fexamples\u002Fvirtual-routes","4.examples\u002Fvirtual-routes","i-lucide-box",{"title":341,"path":342,"stem":343,"icon":344},"Vite Nitro Plugin","\u002Fexamples\u002Fvite-nitro-plugin","4.examples\u002Fvite-nitro-plugin","i-logos-vitejs",{"title":346,"path":347,"stem":348,"icon":349},"Vite RSC","\u002Fexamples\u002Fvite-rsc","4.examples\u002Fvite-rsc","i-logos-react",{"title":351,"path":352,"stem":353,"icon":354},"Vite SSR HTML","\u002Fexamples\u002Fvite-ssr-html","4.examples\u002Fvite-ssr-html","i-logos-html-5",{"title":356,"path":357,"stem":358,"icon":359},"SSR with Preact","\u002Fexamples\u002Fvite-ssr-preact","4.examples\u002Fvite-ssr-preact","i-logos-preact",{"title":361,"path":362,"stem":363,"icon":349},"SSR with React","\u002Fexamples\u002Fvite-ssr-react","4.examples\u002Fvite-ssr-react",{"title":365,"path":366,"stem":367,"icon":368},"SSR with SolidJS","\u002Fexamples\u002Fvite-ssr-solid","4.examples\u002Fvite-ssr-solid","i-logos-solidjs-icon",{"title":370,"path":371,"stem":372,"icon":373},"SSR with TanStack Router","\u002Fexamples\u002Fvite-ssr-tsr-react","4.examples\u002Fvite-ssr-tsr-react","i-simple-icons-tanstack",{"title":375,"path":376,"stem":377,"icon":373},"SSR with TanStack Start","\u002Fexamples\u002Fvite-ssr-tss-react","4.examples\u002Fvite-ssr-tss-react",{"title":379,"path":380,"stem":381,"icon":382},"SSR with Vue Router","\u002Fexamples\u002Fvite-ssr-vue-router","4.examples\u002Fvite-ssr-vue-router","i-logos-vue",{"title":384,"path":385,"stem":386,"icon":387},"Vite + tRPC","\u002Fexamples\u002Fvite-trpc","4.examples\u002Fvite-trpc","i-simple-icons-trpc",{"title":63,"path":389,"stem":390,"icon":391},"\u002Fexamples\u002Fwebsocket","4.examples\u002Fwebsocket","i-lucide-radio",{"title":393,"path":394,"stem":395,"children":396},"Blog","\u002Fblog","9.blog",[397,400],{"title":393,"path":394,"stem":398,"icon":399},"9.blog\u002Findex","i-lucide-file-text",{"title":401,"path":402,"stem":403,"icon":399},"Nitro v3 Beta is here!","\u002Fblog\u002Fv3-beta","9.blog\u002F1.v3-beta",{"title":5,"path":405,"stem":406},"\u002F","index",[408,413,417,420,423,426,430,433,436,439,442,445,448,452,455,458,461,464,467,471,474,477,481,484,487,490,493,496,499,502,505,508],{"title":240,"description":409,"meta":410,"path":241},"File-based API routing with HTTP method support and dynamic parameters.",{"automd":411,"category":412,"icon":243},true,"features",{"title":245,"description":414,"meta":415,"path":246},"Automatic imports for utilities and composables.",{"automd":411,"category":416,"icon":248},"config",{"title":250,"description":418,"meta":419,"path":251},"Cache route responses with configurable bypass logic.",{"automd":411,"category":412,"icon":253},{"title":255,"description":421,"meta":422,"path":256},"Customize error responses with a global error handler.",{"automd":411,"category":412,"icon":258},{"title":38,"description":424,"meta":425,"path":260},"Built-in database support with SQL template literals.",{"automd":411,"category":412,"icon":262},{"title":264,"description":427,"meta":428,"path":265},"Integrate Elysia with Nitro using the server entry.",{"automd":411,"category":429,"icon":267},"backend frameworks",{"title":269,"description":431,"meta":432,"path":270},"Integrate Express with Nitro using the server entry.",{"automd":411,"category":429,"icon":272},{"title":274,"description":434,"meta":435,"path":275},"Integrate Fastify with Nitro using the server entry.",{"automd":411,"category":429,"icon":277},{"title":279,"description":437,"meta":438,"path":280},"Minimal Nitro server using the web standard fetch handler.",{"automd":411,"category":412,"icon":282},{"title":284,"description":440,"meta":441,"path":285},"Integrate Hono with Nitro using the server entry.",{"automd":411,"category":429,"icon":287},{"title":289,"description":443,"meta":444,"path":290},"Custom import aliases for cleaner module paths.",{"automd":411,"category":416,"icon":292},{"title":294,"description":446,"meta":447,"path":295},"Request middleware for authentication, logging, and request modification.",{"automd":411,"category":412,"icon":46},{"title":298,"description":449,"meta":450,"path":299},"Server-side JSX rendering in Nitro with mono-jsx.",{"automd":411,"category":451,"icon":301},"server side rendering",{"title":303,"description":453,"meta":454,"path":304},"Server-side JSX rendering in Nitro with nano-jsx.",{"automd":411,"category":451,"icon":301},{"title":53,"description":456,"meta":457,"path":307},"Extend Nitro with custom plugins for hooks and lifecycle events.",{"automd":411,"category":412,"icon":309},{"title":311,"description":459,"meta":460,"path":312},"Build a custom HTML renderer in Nitro with server-side data fetching.",{"automd":411,"category":451,"icon":314},{"title":316,"description":462,"meta":463,"path":317},"Environment-aware configuration with runtime access.",{"automd":411,"category":416,"icon":319},{"title":321,"description":465,"meta":466,"path":322},"Internal server-to-server requests without network overhead.",{"automd":411,"category":412,"icon":324},{"title":326,"description":468,"meta":469,"path":327},"Server-side syntax highlighting in Nitro with Shiki.",{"automd":411,"category":470,"icon":329},"integrations",{"title":331,"description":472,"meta":473,"path":332},"Generate dynamic Open Graph images from a Nitro route using Takumi.",{"automd":411,"category":470,"icon":334},{"title":336,"description":475,"meta":476,"path":337},"Define routes programmatically using Nitro's virtual module system.",{"automd":411,"category":412,"icon":339},{"title":341,"description":478,"meta":479,"path":342},"Use Nitro as a Vite plugin for programmatic configuration.",{"automd":411,"category":480,"icon":344},"vite",{"title":346,"description":482,"meta":483,"path":347},"React Server Components with Vite and Nitro.",{"automd":411,"category":480,"icon":349},{"title":351,"description":485,"meta":486,"path":352},"Server-side rendering with vanilla HTML, Vite, and Nitro.",{"automd":411,"category":451,"icon":354},{"title":356,"description":488,"meta":489,"path":357},"Server-side rendering with Preact in Nitro using Vite.",{"automd":411,"category":451,"icon":359},{"title":361,"description":491,"meta":492,"path":362},"Server-side rendering with React in Nitro using Vite.",{"automd":411,"category":451,"icon":349},{"title":365,"description":494,"meta":495,"path":366},"Server-side rendering with SolidJS in Nitro using Vite.",{"automd":411,"category":451,"icon":368},{"title":370,"description":497,"meta":498,"path":371},"Client-side routing with TanStack Router in Nitro using Vite.",{"automd":411,"category":451,"icon":373},{"title":375,"description":500,"meta":501,"path":376},"Full-stack React with TanStack Start in Nitro using Vite.",{"automd":411,"category":451,"icon":373},{"title":379,"description":503,"meta":504,"path":380},"Server-side rendering with Vue Router in Nitro using Vite.",{"automd":411,"category":451,"icon":382},{"title":384,"description":506,"meta":507,"path":385},"End-to-end typesafe APIs with tRPC in Nitro using Vite.",{"automd":411,"category":480,"icon":387},{"title":63,"description":509,"meta":510,"path":389},"Real-time bidirectional communication with WebSocket support.",{"automd":411,"category":412,"icon":391},{"id":512,"title":384,"body":513,"description":506,"extension":3527,"meta":3528,"navigation":3529,"path":385,"seo":3530,"stem":386,"__hash__":3531},"content\u002F4.examples\u002Fvite-trpc.md",{"type":514,"value":515,"toc":3520,"icon":387},"minimark",[516,2220,2224,2229,2243,2247,2254,2336,2347,2351,2354,2588,2603,2607,2610,3482,3496,3500,3517],[517,518,521,1660,1804,1838,1943],"code-tree",{":expand-all":519,"default-value":520},"true","server\u002Ftrpc.ts",[522,523,528],"pre",{"className":524,"code":525,"filename":526,"language":527,"meta":5,"style":5},"language-html shiki shiki-themes github-light github-dark github-dark","\u003C!doctype html>\n\u003Chtml lang=\"en\">\n  \u003Chead>\n    \u003Cmeta charset=\"UTF-8\" \u002F>\n    \u003Ctitle>tRPC Counter\u003C\u002Ftitle>\n    \u003Cstyle>\n      body {\n        font-family: system-ui, sans-serif;\n        background: #0f1115;\n        color: #e5e7eb;\n        display: grid;\n        place-items: center;\n        height: 100vh;\n        margin: 0;\n      }\n\n      .box {\n        background: #181b22;\n        padding: 24px 32px;\n        border-radius: 10px;\n        text-align: center;\n        min-width: 200px;\n      }\n\n      button {\n        background: #2563eb;\n        border: none;\n        color: white;\n        padding: 8px 14px;\n        border-radius: 6px;\n        cursor: pointer;\n        margin-top: 12px;\n        font-size: 14px;\n      }\n\n      button:hover {\n        background: #1d4ed8;\n      }\n\n      .value {\n        font-size: 36px;\n        margin: 12px 0;\n      }\n    \u003C\u002Fstyle>\n  \u003C\u002Fhead>\n  \u003Cbody>\n    \u003Cdiv class=\"box\">\n      \u003Cdiv>Counter\u003C\u002Fdiv>\n      \u003Cdiv class=\"value\" id=\"value\">\n        \u003Cscript server>\n          \u002F\u002F Server-side Rendering\n          const { result } = await serverFetch(\"\u002Ftrpc\u002Fget\").then(r => r.json())\n          echo(result?.data?.value)\n        \u003C\u002Fscript>\n      \u003C\u002Fdiv>\n      \u003Cbutton id=\"inc\">Increment\u003C\u002Fbutton>\n    \u003C\u002Fdiv>\n\n    \u003Cscript setup>\n      const valueEl = document.getElementById(\"value\");\n      const incBtn = document.getElementById(\"inc\");\n\n      async function call(path, body) {\n        const res = await fetch(`\u002Ftrpc\u002F${path}`, {\n          method: body ? \"POST\" : \"GET\",\n          headers: { \"content-type\": \"application\u002Fjson\" },\n          body: body ? JSON.stringify(body) : undefined,\n        });\n\n        const json = await res.json();\n        return json.result.data;\n      }\n\n      async function refresh() {\n        const data = await call(\"get\");\n        valueEl.textContent = data.value;\n      }\n\n      incBtn.onclick = async () => {\n        const data = await call(\"inc\", {});\n        valueEl.textContent = data.value;\n      };\n\n      refresh();\n    \u003C\u002Fscript>\n  \u003C\u002Fbody>\n\u003C\u002Fhtml>\n","index.html","html",[529,530,531,551,571,582,602,617,627,636,658,671,684,697,710,727,740,746,752,760,772,793,808,820,835,840,845,853,865,878,890,909,923,936,951,966,971,976,986,998,1003,1008,1016,1030,1046,1051,1061,1071,1081,1099,1114,1137,1151,1158,1211,1220,1230,1240,1262,1271,1276,1288,1313,1333,1338,1362,1391,1412,1429,1457,1463,1468,1488,1497,1502,1507,1520,1541,1552,1557,1562,1584,1604,1613,1619,1624,1632,1641,1650],"code",{"__ignoreMap":5},[532,533,536,540,544,548],"span",{"class":534,"line":535},"line",1,[532,537,539],{"class":538},"slsVL","\u003C!",[532,541,543],{"class":542},"sByVh","doctype",[532,545,547],{"class":546},"shcOC"," html",[532,549,550],{"class":538},">\n",[532,552,554,557,559,562,565,569],{"class":534,"line":553},2,[532,555,556],{"class":538},"\u003C",[532,558,527],{"class":542},[532,560,561],{"class":546}," lang",[532,563,564],{"class":538},"=",[532,566,568],{"class":567},"sfrk1","\"en\"",[532,570,550],{"class":538},[532,572,574,577,580],{"class":534,"line":573},3,[532,575,576],{"class":538},"  \u003C",[532,578,579],{"class":542},"head",[532,581,550],{"class":538},[532,583,585,588,591,594,596,599],{"class":534,"line":584},4,[532,586,587],{"class":538},"    \u003C",[532,589,590],{"class":542},"meta",[532,592,593],{"class":546}," charset",[532,595,564],{"class":538},[532,597,598],{"class":567},"\"UTF-8\"",[532,600,601],{"class":538}," \u002F>\n",[532,603,605,607,610,613,615],{"class":534,"line":604},5,[532,606,587],{"class":538},[532,608,609],{"class":542},"title",[532,611,612],{"class":538},">tRPC Counter\u003C\u002F",[532,614,609],{"class":542},[532,616,550],{"class":538},[532,618,620,622,625],{"class":534,"line":619},6,[532,621,587],{"class":538},[532,623,624],{"class":542},"style",[532,626,550],{"class":538},[532,628,630,633],{"class":534,"line":629},7,[532,631,632],{"class":542},"      body",[532,634,635],{"class":538}," {\n",[532,637,639,643,646,649,652,655],{"class":534,"line":638},8,[532,640,642],{"class":641},"suiK_","        font-family",[532,644,645],{"class":538},": ",[532,647,648],{"class":641},"system-ui",[532,650,651],{"class":538},", ",[532,653,654],{"class":641},"sans-serif",[532,656,657],{"class":538},";\n",[532,659,661,664,666,669],{"class":534,"line":660},9,[532,662,663],{"class":641},"        background",[532,665,645],{"class":538},[532,667,668],{"class":641},"#0f1115",[532,670,657],{"class":538},[532,672,674,677,679,682],{"class":534,"line":673},10,[532,675,676],{"class":641},"        color",[532,678,645],{"class":538},[532,680,681],{"class":641},"#e5e7eb",[532,683,657],{"class":538},[532,685,687,690,692,695],{"class":534,"line":686},11,[532,688,689],{"class":641},"        display",[532,691,645],{"class":538},[532,693,694],{"class":641},"grid",[532,696,657],{"class":538},[532,698,700,703,705,708],{"class":534,"line":699},12,[532,701,702],{"class":641},"        place-items",[532,704,645],{"class":538},[532,706,707],{"class":641},"center",[532,709,657],{"class":538},[532,711,713,716,718,721,725],{"class":534,"line":712},13,[532,714,715],{"class":641},"        height",[532,717,645],{"class":538},[532,719,720],{"class":641},"100",[532,722,724],{"class":723},"so5gQ","vh",[532,726,657],{"class":538},[532,728,730,733,735,738],{"class":534,"line":729},14,[532,731,732],{"class":641},"        margin",[532,734,645],{"class":538},[532,736,737],{"class":641},"0",[532,739,657],{"class":538},[532,741,743],{"class":534,"line":742},15,[532,744,745],{"class":538},"      }\n",[532,747,749],{"class":534,"line":748},16,[532,750,751],{"emptyLinePlaceholder":411},"\n",[532,753,755,758],{"class":534,"line":754},17,[532,756,757],{"class":546},"      .box",[532,759,635],{"class":538},[532,761,763,765,767,770],{"class":534,"line":762},18,[532,764,663],{"class":641},[532,766,645],{"class":538},[532,768,769],{"class":641},"#181b22",[532,771,657],{"class":538},[532,773,775,778,780,783,786,789,791],{"class":534,"line":774},19,[532,776,777],{"class":641},"        padding",[532,779,645],{"class":538},[532,781,782],{"class":641},"24",[532,784,785],{"class":723},"px",[532,787,788],{"class":641}," 32",[532,790,785],{"class":723},[532,792,657],{"class":538},[532,794,796,799,801,804,806],{"class":534,"line":795},20,[532,797,798],{"class":641},"        border-radius",[532,800,645],{"class":538},[532,802,803],{"class":641},"10",[532,805,785],{"class":723},[532,807,657],{"class":538},[532,809,811,814,816,818],{"class":534,"line":810},21,[532,812,813],{"class":641},"        text-align",[532,815,645],{"class":538},[532,817,707],{"class":641},[532,819,657],{"class":538},[532,821,823,826,828,831,833],{"class":534,"line":822},22,[532,824,825],{"class":641},"        min-width",[532,827,645],{"class":538},[532,829,830],{"class":641},"200",[532,832,785],{"class":723},[532,834,657],{"class":538},[532,836,838],{"class":534,"line":837},23,[532,839,745],{"class":538},[532,841,843],{"class":534,"line":842},24,[532,844,751],{"emptyLinePlaceholder":411},[532,846,848,851],{"class":534,"line":847},25,[532,849,850],{"class":542},"      button",[532,852,635],{"class":538},[532,854,856,858,860,863],{"class":534,"line":855},26,[532,857,663],{"class":641},[532,859,645],{"class":538},[532,861,862],{"class":641},"#2563eb",[532,864,657],{"class":538},[532,866,868,871,873,876],{"class":534,"line":867},27,[532,869,870],{"class":641},"        border",[532,872,645],{"class":538},[532,874,875],{"class":641},"none",[532,877,657],{"class":538},[532,879,881,883,885,888],{"class":534,"line":880},28,[532,882,676],{"class":641},[532,884,645],{"class":538},[532,886,887],{"class":641},"white",[532,889,657],{"class":538},[532,891,893,895,897,900,902,905,907],{"class":534,"line":892},29,[532,894,777],{"class":641},[532,896,645],{"class":538},[532,898,899],{"class":641},"8",[532,901,785],{"class":723},[532,903,904],{"class":641}," 14",[532,906,785],{"class":723},[532,908,657],{"class":538},[532,910,912,914,916,919,921],{"class":534,"line":911},30,[532,913,798],{"class":641},[532,915,645],{"class":538},[532,917,918],{"class":641},"6",[532,920,785],{"class":723},[532,922,657],{"class":538},[532,924,926,929,931,934],{"class":534,"line":925},31,[532,927,928],{"class":641},"        cursor",[532,930,645],{"class":538},[532,932,933],{"class":641},"pointer",[532,935,657],{"class":538},[532,937,939,942,944,947,949],{"class":534,"line":938},32,[532,940,941],{"class":641},"        margin-top",[532,943,645],{"class":538},[532,945,946],{"class":641},"12",[532,948,785],{"class":723},[532,950,657],{"class":538},[532,952,954,957,959,962,964],{"class":534,"line":953},33,[532,955,956],{"class":641},"        font-size",[532,958,645],{"class":538},[532,960,961],{"class":641},"14",[532,963,785],{"class":723},[532,965,657],{"class":538},[532,967,969],{"class":534,"line":968},34,[532,970,745],{"class":538},[532,972,974],{"class":534,"line":973},35,[532,975,751],{"emptyLinePlaceholder":411},[532,977,979,981,984],{"class":534,"line":978},36,[532,980,850],{"class":542},[532,982,983],{"class":546},":hover",[532,985,635],{"class":538},[532,987,989,991,993,996],{"class":534,"line":988},37,[532,990,663],{"class":641},[532,992,645],{"class":538},[532,994,995],{"class":641},"#1d4ed8",[532,997,657],{"class":538},[532,999,1001],{"class":534,"line":1000},38,[532,1002,745],{"class":538},[532,1004,1006],{"class":534,"line":1005},39,[532,1007,751],{"emptyLinePlaceholder":411},[532,1009,1011,1014],{"class":534,"line":1010},40,[532,1012,1013],{"class":546},"      .value",[532,1015,635],{"class":538},[532,1017,1019,1021,1023,1026,1028],{"class":534,"line":1018},41,[532,1020,956],{"class":641},[532,1022,645],{"class":538},[532,1024,1025],{"class":641},"36",[532,1027,785],{"class":723},[532,1029,657],{"class":538},[532,1031,1033,1035,1037,1039,1041,1044],{"class":534,"line":1032},42,[532,1034,732],{"class":641},[532,1036,645],{"class":538},[532,1038,946],{"class":641},[532,1040,785],{"class":723},[532,1042,1043],{"class":641}," 0",[532,1045,657],{"class":538},[532,1047,1049],{"class":534,"line":1048},43,[532,1050,745],{"class":538},[532,1052,1054,1057,1059],{"class":534,"line":1053},44,[532,1055,1056],{"class":538},"    \u003C\u002F",[532,1058,624],{"class":542},[532,1060,550],{"class":538},[532,1062,1064,1067,1069],{"class":534,"line":1063},45,[532,1065,1066],{"class":538},"  \u003C\u002F",[532,1068,579],{"class":542},[532,1070,550],{"class":538},[532,1072,1074,1076,1079],{"class":534,"line":1073},46,[532,1075,576],{"class":538},[532,1077,1078],{"class":542},"body",[532,1080,550],{"class":538},[532,1082,1084,1086,1089,1092,1094,1097],{"class":534,"line":1083},47,[532,1085,587],{"class":538},[532,1087,1088],{"class":542},"div",[532,1090,1091],{"class":546}," class",[532,1093,564],{"class":538},[532,1095,1096],{"class":567},"\"box\"",[532,1098,550],{"class":538},[532,1100,1102,1105,1107,1110,1112],{"class":534,"line":1101},48,[532,1103,1104],{"class":538},"      \u003C",[532,1106,1088],{"class":542},[532,1108,1109],{"class":538},">Counter\u003C\u002F",[532,1111,1088],{"class":542},[532,1113,550],{"class":538},[532,1115,1117,1119,1121,1123,1125,1128,1131,1133,1135],{"class":534,"line":1116},49,[532,1118,1104],{"class":538},[532,1120,1088],{"class":542},[532,1122,1091],{"class":546},[532,1124,564],{"class":538},[532,1126,1127],{"class":567},"\"value\"",[532,1129,1130],{"class":546}," id",[532,1132,564],{"class":538},[532,1134,1127],{"class":567},[532,1136,550],{"class":538},[532,1138,1140,1143,1146,1149],{"class":534,"line":1139},50,[532,1141,1142],{"class":538},"        \u003C",[532,1144,1145],{"class":542},"script",[532,1147,1148],{"class":546}," server",[532,1150,550],{"class":538},[532,1152,1154],{"class":534,"line":1153},51,[532,1155,1157],{"class":1156},"sCsY4","          \u002F\u002F Server-side Rendering\n",[532,1159,1161,1164,1167,1170,1173,1175,1178,1181,1184,1187,1190,1193,1195,1199,1202,1205,1208],{"class":534,"line":1160},52,[532,1162,1163],{"class":723},"          const",[532,1165,1166],{"class":538}," { ",[532,1168,1169],{"class":641},"result",[532,1171,1172],{"class":538}," } ",[532,1174,564],{"class":723},[532,1176,1177],{"class":723}," await",[532,1179,1180],{"class":546}," serverFetch",[532,1182,1183],{"class":538},"(",[532,1185,1186],{"class":567},"\"\u002Ftrpc\u002Fget\"",[532,1188,1189],{"class":538},").",[532,1191,1192],{"class":546},"then",[532,1194,1183],{"class":538},[532,1196,1198],{"class":1197},"sQHwn","r",[532,1200,1201],{"class":723}," =>",[532,1203,1204],{"class":538}," r.",[532,1206,1207],{"class":546},"json",[532,1209,1210],{"class":538},"())\n",[532,1212,1214,1217],{"class":534,"line":1213},53,[532,1215,1216],{"class":546},"          echo",[532,1218,1219],{"class":538},"(result?.data?.value)\n",[532,1221,1223,1226,1228],{"class":534,"line":1222},54,[532,1224,1225],{"class":538},"        \u003C\u002F",[532,1227,1145],{"class":542},[532,1229,550],{"class":538},[532,1231,1233,1236,1238],{"class":534,"line":1232},55,[532,1234,1235],{"class":538},"      \u003C\u002F",[532,1237,1088],{"class":542},[532,1239,550],{"class":538},[532,1241,1243,1245,1248,1250,1252,1255,1258,1260],{"class":534,"line":1242},56,[532,1244,1104],{"class":538},[532,1246,1247],{"class":542},"button",[532,1249,1130],{"class":546},[532,1251,564],{"class":538},[532,1253,1254],{"class":567},"\"inc\"",[532,1256,1257],{"class":538},">Increment\u003C\u002F",[532,1259,1247],{"class":542},[532,1261,550],{"class":538},[532,1263,1265,1267,1269],{"class":534,"line":1264},57,[532,1266,1056],{"class":538},[532,1268,1088],{"class":542},[532,1270,550],{"class":538},[532,1272,1274],{"class":534,"line":1273},58,[532,1275,751],{"emptyLinePlaceholder":411},[532,1277,1279,1281,1283,1286],{"class":534,"line":1278},59,[532,1280,587],{"class":538},[532,1282,1145],{"class":542},[532,1284,1285],{"class":546}," setup",[532,1287,550],{"class":538},[532,1289,1291,1294,1297,1300,1303,1306,1308,1310],{"class":534,"line":1290},60,[532,1292,1293],{"class":723},"      const",[532,1295,1296],{"class":641}," valueEl",[532,1298,1299],{"class":723}," =",[532,1301,1302],{"class":538}," document.",[532,1304,1305],{"class":546},"getElementById",[532,1307,1183],{"class":538},[532,1309,1127],{"class":567},[532,1311,1312],{"class":538},");\n",[532,1314,1316,1318,1321,1323,1325,1327,1329,1331],{"class":534,"line":1315},61,[532,1317,1293],{"class":723},[532,1319,1320],{"class":641}," incBtn",[532,1322,1299],{"class":723},[532,1324,1302],{"class":538},[532,1326,1305],{"class":546},[532,1328,1183],{"class":538},[532,1330,1254],{"class":567},[532,1332,1312],{"class":538},[532,1334,1336],{"class":534,"line":1335},62,[532,1337,751],{"emptyLinePlaceholder":411},[532,1339,1341,1344,1347,1350,1352,1355,1357,1359],{"class":534,"line":1340},63,[532,1342,1343],{"class":723},"      async",[532,1345,1346],{"class":723}," function",[532,1348,1349],{"class":546}," call",[532,1351,1183],{"class":538},[532,1353,1354],{"class":1197},"path",[532,1356,651],{"class":538},[532,1358,1078],{"class":1197},[532,1360,1361],{"class":538},") {\n",[532,1363,1365,1368,1371,1373,1375,1378,1380,1383,1385,1388],{"class":534,"line":1364},64,[532,1366,1367],{"class":723},"        const",[532,1369,1370],{"class":641}," res",[532,1372,1299],{"class":723},[532,1374,1177],{"class":723},[532,1376,1377],{"class":546}," fetch",[532,1379,1183],{"class":538},[532,1381,1382],{"class":567},"`\u002Ftrpc\u002F${",[532,1384,1354],{"class":538},[532,1386,1387],{"class":567},"}`",[532,1389,1390],{"class":538},", {\n",[532,1392,1394,1397,1400,1403,1406,1409],{"class":534,"line":1393},65,[532,1395,1396],{"class":538},"          method: body ",[532,1398,1399],{"class":723},"?",[532,1401,1402],{"class":567}," \"POST\"",[532,1404,1405],{"class":723}," :",[532,1407,1408],{"class":567}," \"GET\"",[532,1410,1411],{"class":538},",\n",[532,1413,1415,1418,1421,1423,1426],{"class":534,"line":1414},66,[532,1416,1417],{"class":538},"          headers: { ",[532,1419,1420],{"class":567},"\"content-type\"",[532,1422,645],{"class":538},[532,1424,1425],{"class":567},"\"application\u002Fjson\"",[532,1427,1428],{"class":538}," },\n",[532,1430,1432,1435,1437,1440,1443,1446,1449,1452,1455],{"class":534,"line":1431},67,[532,1433,1434],{"class":538},"          body: body ",[532,1436,1399],{"class":723},[532,1438,1439],{"class":641}," JSON",[532,1441,1442],{"class":538},".",[532,1444,1445],{"class":546},"stringify",[532,1447,1448],{"class":538},"(body) ",[532,1450,1451],{"class":723},":",[532,1453,1454],{"class":641}," undefined",[532,1456,1411],{"class":538},[532,1458,1460],{"class":534,"line":1459},68,[532,1461,1462],{"class":538},"        });\n",[532,1464,1466],{"class":534,"line":1465},69,[532,1467,751],{"emptyLinePlaceholder":411},[532,1469,1471,1473,1476,1478,1480,1483,1485],{"class":534,"line":1470},70,[532,1472,1367],{"class":723},[532,1474,1475],{"class":641}," json",[532,1477,1299],{"class":723},[532,1479,1177],{"class":723},[532,1481,1482],{"class":538}," res.",[532,1484,1207],{"class":546},[532,1486,1487],{"class":538},"();\n",[532,1489,1491,1494],{"class":534,"line":1490},71,[532,1492,1493],{"class":723},"        return",[532,1495,1496],{"class":538}," json.result.data;\n",[532,1498,1500],{"class":534,"line":1499},72,[532,1501,745],{"class":538},[532,1503,1505],{"class":534,"line":1504},73,[532,1506,751],{"emptyLinePlaceholder":411},[532,1508,1510,1512,1514,1517],{"class":534,"line":1509},74,[532,1511,1343],{"class":723},[532,1513,1346],{"class":723},[532,1515,1516],{"class":546}," refresh",[532,1518,1519],{"class":538},"() {\n",[532,1521,1523,1525,1528,1530,1532,1534,1536,1539],{"class":534,"line":1522},75,[532,1524,1367],{"class":723},[532,1526,1527],{"class":641}," data",[532,1529,1299],{"class":723},[532,1531,1177],{"class":723},[532,1533,1349],{"class":546},[532,1535,1183],{"class":538},[532,1537,1538],{"class":567},"\"get\"",[532,1540,1312],{"class":538},[532,1542,1544,1547,1549],{"class":534,"line":1543},76,[532,1545,1546],{"class":538},"        valueEl.textContent ",[532,1548,564],{"class":723},[532,1550,1551],{"class":538}," data.value;\n",[532,1553,1555],{"class":534,"line":1554},77,[532,1556,745],{"class":538},[532,1558,1560],{"class":534,"line":1559},78,[532,1561,751],{"emptyLinePlaceholder":411},[532,1563,1565,1568,1571,1573,1576,1579,1582],{"class":534,"line":1564},79,[532,1566,1567],{"class":538},"      incBtn.",[532,1569,1570],{"class":546},"onclick",[532,1572,1299],{"class":723},[532,1574,1575],{"class":723}," async",[532,1577,1578],{"class":538}," () ",[532,1580,1581],{"class":723},"=>",[532,1583,635],{"class":538},[532,1585,1587,1589,1591,1593,1595,1597,1599,1601],{"class":534,"line":1586},80,[532,1588,1367],{"class":723},[532,1590,1527],{"class":641},[532,1592,1299],{"class":723},[532,1594,1177],{"class":723},[532,1596,1349],{"class":546},[532,1598,1183],{"class":538},[532,1600,1254],{"class":567},[532,1602,1603],{"class":538},", {});\n",[532,1605,1607,1609,1611],{"class":534,"line":1606},81,[532,1608,1546],{"class":538},[532,1610,564],{"class":723},[532,1612,1551],{"class":538},[532,1614,1616],{"class":534,"line":1615},82,[532,1617,1618],{"class":538},"      };\n",[532,1620,1622],{"class":534,"line":1621},83,[532,1623,751],{"emptyLinePlaceholder":411},[532,1625,1627,1630],{"class":534,"line":1626},84,[532,1628,1629],{"class":546},"      refresh",[532,1631,1487],{"class":538},[532,1633,1635,1637,1639],{"class":534,"line":1634},85,[532,1636,1056],{"class":538},[532,1638,1145],{"class":542},[532,1640,550],{"class":538},[532,1642,1644,1646,1648],{"class":534,"line":1643},86,[532,1645,1066],{"class":538},[532,1647,1078],{"class":542},[532,1649,550],{"class":538},[532,1651,1653,1656,1658],{"class":534,"line":1652},87,[532,1654,1655],{"class":538},"\u003C\u002F",[532,1657,527],{"class":542},[532,1659,550],{"class":538},[522,1661,1665],{"className":1662,"code":1663,"filename":1664,"language":1207,"meta":5,"style":5},"language-json shiki shiki-themes github-light github-dark github-dark","{\n  \"type\": \"module\",\n  \"scripts\": {\n    \"dev\": \"vite\",\n    \"build\": \"vite build\",\n    \"preview\": \"vite preview\"\n  },\n  \"devDependencies\": {\n    \"@trpc\u002Fclient\": \"^11.16.0\",\n    \"@trpc\u002Fserver\": \"^11.16.0\",\n    \"nitro\": \"latest\",\n    \"vite\": \"latest\",\n    \"zod\": \"^4.3.6\"\n  }\n}\n","package.json",[529,1666,1667,1672,1684,1692,1704,1716,1726,1731,1738,1750,1761,1773,1784,1794,1799],{"__ignoreMap":5},[532,1668,1669],{"class":534,"line":535},[532,1670,1671],{"class":538},"{\n",[532,1673,1674,1677,1679,1682],{"class":534,"line":553},[532,1675,1676],{"class":641},"  \"type\"",[532,1678,645],{"class":538},[532,1680,1681],{"class":567},"\"module\"",[532,1683,1411],{"class":538},[532,1685,1686,1689],{"class":534,"line":573},[532,1687,1688],{"class":641},"  \"scripts\"",[532,1690,1691],{"class":538},": {\n",[532,1693,1694,1697,1699,1702],{"class":534,"line":584},[532,1695,1696],{"class":641},"    \"dev\"",[532,1698,645],{"class":538},[532,1700,1701],{"class":567},"\"vite\"",[532,1703,1411],{"class":538},[532,1705,1706,1709,1711,1714],{"class":534,"line":604},[532,1707,1708],{"class":641},"    \"build\"",[532,1710,645],{"class":538},[532,1712,1713],{"class":567},"\"vite build\"",[532,1715,1411],{"class":538},[532,1717,1718,1721,1723],{"class":534,"line":619},[532,1719,1720],{"class":641},"    \"preview\"",[532,1722,645],{"class":538},[532,1724,1725],{"class":567},"\"vite preview\"\n",[532,1727,1728],{"class":534,"line":629},[532,1729,1730],{"class":538},"  },\n",[532,1732,1733,1736],{"class":534,"line":638},[532,1734,1735],{"class":641},"  \"devDependencies\"",[532,1737,1691],{"class":538},[532,1739,1740,1743,1745,1748],{"class":534,"line":660},[532,1741,1742],{"class":641},"    \"@trpc\u002Fclient\"",[532,1744,645],{"class":538},[532,1746,1747],{"class":567},"\"^11.16.0\"",[532,1749,1411],{"class":538},[532,1751,1752,1755,1757,1759],{"class":534,"line":673},[532,1753,1754],{"class":641},"    \"@trpc\u002Fserver\"",[532,1756,645],{"class":538},[532,1758,1747],{"class":567},[532,1760,1411],{"class":538},[532,1762,1763,1766,1768,1771],{"class":534,"line":686},[532,1764,1765],{"class":641},"    \"nitro\"",[532,1767,645],{"class":538},[532,1769,1770],{"class":567},"\"latest\"",[532,1772,1411],{"class":538},[532,1774,1775,1778,1780,1782],{"class":534,"line":699},[532,1776,1777],{"class":641},"    \"vite\"",[532,1779,645],{"class":538},[532,1781,1770],{"class":567},[532,1783,1411],{"class":538},[532,1785,1786,1789,1791],{"class":534,"line":712},[532,1787,1788],{"class":641},"    \"zod\"",[532,1790,645],{"class":538},[532,1792,1793],{"class":567},"\"^4.3.6\"\n",[532,1795,1796],{"class":534,"line":729},[532,1797,1798],{"class":538},"  }\n",[532,1800,1801],{"class":534,"line":742},[532,1802,1803],{"class":538},"}\n",[522,1805,1808],{"className":1662,"code":1806,"filename":1807,"language":1207,"meta":5,"style":5},"{\n  \"extends\": \"nitro\u002Ftsconfig\",\n  \"compilerOptions\": {}\n}\n","tsconfig.json",[529,1809,1810,1814,1826,1834],{"__ignoreMap":5},[532,1811,1812],{"class":534,"line":535},[532,1813,1671],{"class":538},[532,1815,1816,1819,1821,1824],{"class":534,"line":553},[532,1817,1818],{"class":641},"  \"extends\"",[532,1820,645],{"class":538},[532,1822,1823],{"class":567},"\"nitro\u002Ftsconfig\"",[532,1825,1411],{"class":538},[532,1827,1828,1831],{"class":534,"line":573},[532,1829,1830],{"class":641},"  \"compilerOptions\"",[532,1832,1833],{"class":538},": {}\n",[532,1835,1836],{"class":534,"line":584},[532,1837,1803],{"class":538},[522,1839,1844],{"className":1840,"code":1841,"filename":1842,"language":1843,"meta":5,"style":5},"language-ts shiki shiki-themes github-light github-dark github-dark","import { defineConfig } from \"vite\";\nimport { nitro } from \"nitro\u002Fvite\";\n\nexport default defineConfig({\n  plugins: [\n    nitro({\n      routes: {\n        \"\u002Ftrpc\u002F**\": \".\u002Fserver\u002Ftrpc.ts\",\n      },\n    }),\n  ],\n});\n","vite.config.ts","ts",[529,1845,1846,1862,1876,1880,1894,1899,1906,1911,1923,1928,1933,1938],{"__ignoreMap":5},[532,1847,1848,1851,1854,1857,1860],{"class":534,"line":535},[532,1849,1850],{"class":723},"import",[532,1852,1853],{"class":538}," { defineConfig } ",[532,1855,1856],{"class":723},"from",[532,1858,1859],{"class":567}," \"vite\"",[532,1861,657],{"class":538},[532,1863,1864,1866,1869,1871,1874],{"class":534,"line":553},[532,1865,1850],{"class":723},[532,1867,1868],{"class":538}," { nitro } ",[532,1870,1856],{"class":723},[532,1872,1873],{"class":567}," \"nitro\u002Fvite\"",[532,1875,657],{"class":538},[532,1877,1878],{"class":534,"line":573},[532,1879,751],{"emptyLinePlaceholder":411},[532,1881,1882,1885,1888,1891],{"class":534,"line":584},[532,1883,1884],{"class":723},"export",[532,1886,1887],{"class":723}," default",[532,1889,1890],{"class":546}," defineConfig",[532,1892,1893],{"class":538},"({\n",[532,1895,1896],{"class":534,"line":604},[532,1897,1898],{"class":538},"  plugins: [\n",[532,1900,1901,1904],{"class":534,"line":619},[532,1902,1903],{"class":546},"    nitro",[532,1905,1893],{"class":538},[532,1907,1908],{"class":534,"line":629},[532,1909,1910],{"class":538},"      routes: {\n",[532,1912,1913,1916,1918,1921],{"class":534,"line":638},[532,1914,1915],{"class":567},"        \"\u002Ftrpc\u002F**\"",[532,1917,645],{"class":538},[532,1919,1920],{"class":567},"\".\u002Fserver\u002Ftrpc.ts\"",[532,1922,1411],{"class":538},[532,1924,1925],{"class":534,"line":660},[532,1926,1927],{"class":538},"      },\n",[532,1929,1930],{"class":534,"line":673},[532,1931,1932],{"class":538},"    }),\n",[532,1934,1935],{"class":534,"line":686},[532,1936,1937],{"class":538},"  ],\n",[532,1939,1940],{"class":534,"line":699},[532,1941,1942],{"class":538},"});\n",[522,1944,1946],{"className":1840,"code":1945,"filename":520,"language":1843,"meta":5,"style":5},"import { initTRPC } from \"@trpc\u002Fserver\";\nimport { fetchRequestHandler } from \"@trpc\u002Fserver\u002Fadapters\u002Ffetch\";\n\nlet counter = 0;\n\nconst t = initTRPC.create();\n\nexport const appRouter = t.router({\n  get: t.procedure.query(() => {\n    return { value: counter };\n  }),\n\n  inc: t.procedure.mutation(() => {\n    counter++;\n    return { value: counter };\n  }),\n});\n\nexport type AppRouter = typeof appRouter;\n\nexport default {\n  async fetch(request: Request): Promise\u003CResponse> {\n    return fetchRequestHandler({\n      endpoint: \"\u002Ftrpc\",\n      req: request,\n      router: appRouter,\n    });\n  },\n};\n",[529,1947,1948,1962,1976,1980,1994,1998,2016,2020,2040,2055,2063,2068,2072,2086,2096,2102,2106,2110,2114,2132,2136,2144,2177,2186,2196,2201,2206,2211,2215],{"__ignoreMap":5},[532,1949,1950,1952,1955,1957,1960],{"class":534,"line":535},[532,1951,1850],{"class":723},[532,1953,1954],{"class":538}," { initTRPC } ",[532,1956,1856],{"class":723},[532,1958,1959],{"class":567}," \"@trpc\u002Fserver\"",[532,1961,657],{"class":538},[532,1963,1964,1966,1969,1971,1974],{"class":534,"line":553},[532,1965,1850],{"class":723},[532,1967,1968],{"class":538}," { fetchRequestHandler } ",[532,1970,1856],{"class":723},[532,1972,1973],{"class":567}," \"@trpc\u002Fserver\u002Fadapters\u002Ffetch\"",[532,1975,657],{"class":538},[532,1977,1978],{"class":534,"line":573},[532,1979,751],{"emptyLinePlaceholder":411},[532,1981,1982,1985,1988,1990,1992],{"class":534,"line":584},[532,1983,1984],{"class":723},"let",[532,1986,1987],{"class":538}," counter ",[532,1989,564],{"class":723},[532,1991,1043],{"class":641},[532,1993,657],{"class":538},[532,1995,1996],{"class":534,"line":604},[532,1997,751],{"emptyLinePlaceholder":411},[532,1999,2000,2003,2006,2008,2011,2014],{"class":534,"line":619},[532,2001,2002],{"class":723},"const",[532,2004,2005],{"class":641}," t",[532,2007,1299],{"class":723},[532,2009,2010],{"class":538}," initTRPC.",[532,2012,2013],{"class":546},"create",[532,2015,1487],{"class":538},[532,2017,2018],{"class":534,"line":629},[532,2019,751],{"emptyLinePlaceholder":411},[532,2021,2022,2024,2027,2030,2032,2035,2038],{"class":534,"line":638},[532,2023,1884],{"class":723},[532,2025,2026],{"class":723}," const",[532,2028,2029],{"class":641}," appRouter",[532,2031,1299],{"class":723},[532,2033,2034],{"class":538}," t.",[532,2036,2037],{"class":546},"router",[532,2039,1893],{"class":538},[532,2041,2042,2045,2048,2051,2053],{"class":534,"line":660},[532,2043,2044],{"class":538},"  get: t.procedure.",[532,2046,2047],{"class":546},"query",[532,2049,2050],{"class":538},"(() ",[532,2052,1581],{"class":723},[532,2054,635],{"class":538},[532,2056,2057,2060],{"class":534,"line":673},[532,2058,2059],{"class":723},"    return",[532,2061,2062],{"class":538}," { value: counter };\n",[532,2064,2065],{"class":534,"line":686},[532,2066,2067],{"class":538},"  }),\n",[532,2069,2070],{"class":534,"line":699},[532,2071,751],{"emptyLinePlaceholder":411},[532,2073,2074,2077,2080,2082,2084],{"class":534,"line":712},[532,2075,2076],{"class":538},"  inc: t.procedure.",[532,2078,2079],{"class":546},"mutation",[532,2081,2050],{"class":538},[532,2083,1581],{"class":723},[532,2085,635],{"class":538},[532,2087,2088,2091,2094],{"class":534,"line":729},[532,2089,2090],{"class":538},"    counter",[532,2092,2093],{"class":723},"++",[532,2095,657],{"class":538},[532,2097,2098,2100],{"class":534,"line":742},[532,2099,2059],{"class":723},[532,2101,2062],{"class":538},[532,2103,2104],{"class":534,"line":748},[532,2105,2067],{"class":538},[532,2107,2108],{"class":534,"line":754},[532,2109,1942],{"class":538},[532,2111,2112],{"class":534,"line":762},[532,2113,751],{"emptyLinePlaceholder":411},[532,2115,2116,2118,2121,2124,2126,2129],{"class":534,"line":774},[532,2117,1884],{"class":723},[532,2119,2120],{"class":723}," type",[532,2122,2123],{"class":546}," AppRouter",[532,2125,1299],{"class":723},[532,2127,2128],{"class":723}," typeof",[532,2130,2131],{"class":538}," appRouter;\n",[532,2133,2134],{"class":534,"line":795},[532,2135,751],{"emptyLinePlaceholder":411},[532,2137,2138,2140,2142],{"class":534,"line":810},[532,2139,1884],{"class":723},[532,2141,1887],{"class":723},[532,2143,635],{"class":538},[532,2145,2146,2149,2151,2153,2156,2158,2161,2164,2166,2169,2171,2174],{"class":534,"line":822},[532,2147,2148],{"class":723},"  async",[532,2150,1377],{"class":546},[532,2152,1183],{"class":538},[532,2154,2155],{"class":1197},"request",[532,2157,1451],{"class":723},[532,2159,2160],{"class":546}," Request",[532,2162,2163],{"class":538},")",[532,2165,1451],{"class":723},[532,2167,2168],{"class":546}," Promise",[532,2170,556],{"class":538},[532,2172,2173],{"class":546},"Response",[532,2175,2176],{"class":538},"> {\n",[532,2178,2179,2181,2184],{"class":534,"line":837},[532,2180,2059],{"class":723},[532,2182,2183],{"class":546}," fetchRequestHandler",[532,2185,1893],{"class":538},[532,2187,2188,2191,2194],{"class":534,"line":842},[532,2189,2190],{"class":538},"      endpoint: ",[532,2192,2193],{"class":567},"\"\u002Ftrpc\"",[532,2195,1411],{"class":538},[532,2197,2198],{"class":534,"line":847},[532,2199,2200],{"class":538},"      req: request,\n",[532,2202,2203],{"class":534,"line":855},[532,2204,2205],{"class":538},"      router: appRouter,\n",[532,2207,2208],{"class":534,"line":867},[532,2209,2210],{"class":538},"    });\n",[532,2212,2213],{"class":534,"line":880},[532,2214,1730],{"class":538},[532,2216,2217],{"class":534,"line":892},[532,2218,2219],{"class":538},"};\n",[2221,2222,2223],"p",{},"Set up tRPC with Vite and Nitro for end-to-end typesafe APIs without code generation. This example builds a counter with server-side rendering for the initial value and client-side updates.",[2225,2226,2228],"h2",{"id":2227},"overview","Overview",[2230,2231,2233,2237,2240],"steps",{"level":2232},"4",[2234,2235,2236],"h4",{},"Configure Vite with the Nitro plugin and route tRPC requests",[2234,2238,2239],{},"Create a tRPC router with procedures",[2234,2241,2242],{},"Create an HTML page with server-side rendering and client interactivity",[2225,2244,2246],{"id":2245},"_1-configure-vite","1. Configure Vite",[2221,2248,2249,2250,2253],{},"Add the Nitro plugin and configure the ",[529,2251,2252],{},"\u002Ftrpc\u002F**"," route to point to your tRPC handler:",[522,2255,2256],{"className":1840,"code":1841,"filename":1842,"language":1843,"meta":5,"style":5},[529,2257,2258,2270,2282,2286,2296,2300,2306,2310,2320,2324,2328,2332],{"__ignoreMap":5},[532,2259,2260,2262,2264,2266,2268],{"class":534,"line":535},[532,2261,1850],{"class":723},[532,2263,1853],{"class":538},[532,2265,1856],{"class":723},[532,2267,1859],{"class":567},[532,2269,657],{"class":538},[532,2271,2272,2274,2276,2278,2280],{"class":534,"line":553},[532,2273,1850],{"class":723},[532,2275,1868],{"class":538},[532,2277,1856],{"class":723},[532,2279,1873],{"class":567},[532,2281,657],{"class":538},[532,2283,2284],{"class":534,"line":573},[532,2285,751],{"emptyLinePlaceholder":411},[532,2287,2288,2290,2292,2294],{"class":534,"line":584},[532,2289,1884],{"class":723},[532,2291,1887],{"class":723},[532,2293,1890],{"class":546},[532,2295,1893],{"class":538},[532,2297,2298],{"class":534,"line":604},[532,2299,1898],{"class":538},[532,2301,2302,2304],{"class":534,"line":619},[532,2303,1903],{"class":546},[532,2305,1893],{"class":538},[532,2307,2308],{"class":534,"line":629},[532,2309,1910],{"class":538},[532,2311,2312,2314,2316,2318],{"class":534,"line":638},[532,2313,1915],{"class":567},[532,2315,645],{"class":538},[532,2317,1920],{"class":567},[532,2319,1411],{"class":538},[532,2321,2322],{"class":534,"line":660},[532,2323,1927],{"class":538},[532,2325,2326],{"class":534,"line":673},[532,2327,1932],{"class":538},[532,2329,2330],{"class":534,"line":686},[532,2331,1937],{"class":538},[532,2333,2334],{"class":534,"line":699},[532,2335,1942],{"class":538},[2221,2337,2338,2339,2342,2343,2346],{},"The ",[529,2340,2341],{},"routes"," option maps URL patterns to handler files. All requests to ",[529,2344,2345],{},"\u002Ftrpc\u002F*"," are handled by the tRPC router.",[2225,2348,2350],{"id":2349},"_2-create-the-trpc-router","2. Create the tRPC Router",[2221,2352,2353],{},"Define your tRPC router with procedures and export it as a fetch handler:",[522,2355,2356],{"className":1840,"code":1945,"filename":520,"language":1843,"meta":5,"style":5},[529,2357,2358,2370,2382,2386,2398,2402,2416,2420,2436,2448,2454,2458,2462,2474,2482,2488,2492,2496,2500,2514,2518,2526,2552,2560,2568,2572,2576,2580,2584],{"__ignoreMap":5},[532,2359,2360,2362,2364,2366,2368],{"class":534,"line":535},[532,2361,1850],{"class":723},[532,2363,1954],{"class":538},[532,2365,1856],{"class":723},[532,2367,1959],{"class":567},[532,2369,657],{"class":538},[532,2371,2372,2374,2376,2378,2380],{"class":534,"line":553},[532,2373,1850],{"class":723},[532,2375,1968],{"class":538},[532,2377,1856],{"class":723},[532,2379,1973],{"class":567},[532,2381,657],{"class":538},[532,2383,2384],{"class":534,"line":573},[532,2385,751],{"emptyLinePlaceholder":411},[532,2387,2388,2390,2392,2394,2396],{"class":534,"line":584},[532,2389,1984],{"class":723},[532,2391,1987],{"class":538},[532,2393,564],{"class":723},[532,2395,1043],{"class":641},[532,2397,657],{"class":538},[532,2399,2400],{"class":534,"line":604},[532,2401,751],{"emptyLinePlaceholder":411},[532,2403,2404,2406,2408,2410,2412,2414],{"class":534,"line":619},[532,2405,2002],{"class":723},[532,2407,2005],{"class":641},[532,2409,1299],{"class":723},[532,2411,2010],{"class":538},[532,2413,2013],{"class":546},[532,2415,1487],{"class":538},[532,2417,2418],{"class":534,"line":629},[532,2419,751],{"emptyLinePlaceholder":411},[532,2421,2422,2424,2426,2428,2430,2432,2434],{"class":534,"line":638},[532,2423,1884],{"class":723},[532,2425,2026],{"class":723},[532,2427,2029],{"class":641},[532,2429,1299],{"class":723},[532,2431,2034],{"class":538},[532,2433,2037],{"class":546},[532,2435,1893],{"class":538},[532,2437,2438,2440,2442,2444,2446],{"class":534,"line":660},[532,2439,2044],{"class":538},[532,2441,2047],{"class":546},[532,2443,2050],{"class":538},[532,2445,1581],{"class":723},[532,2447,635],{"class":538},[532,2449,2450,2452],{"class":534,"line":673},[532,2451,2059],{"class":723},[532,2453,2062],{"class":538},[532,2455,2456],{"class":534,"line":686},[532,2457,2067],{"class":538},[532,2459,2460],{"class":534,"line":699},[532,2461,751],{"emptyLinePlaceholder":411},[532,2463,2464,2466,2468,2470,2472],{"class":534,"line":712},[532,2465,2076],{"class":538},[532,2467,2079],{"class":546},[532,2469,2050],{"class":538},[532,2471,1581],{"class":723},[532,2473,635],{"class":538},[532,2475,2476,2478,2480],{"class":534,"line":729},[532,2477,2090],{"class":538},[532,2479,2093],{"class":723},[532,2481,657],{"class":538},[532,2483,2484,2486],{"class":534,"line":742},[532,2485,2059],{"class":723},[532,2487,2062],{"class":538},[532,2489,2490],{"class":534,"line":748},[532,2491,2067],{"class":538},[532,2493,2494],{"class":534,"line":754},[532,2495,1942],{"class":538},[532,2497,2498],{"class":534,"line":762},[532,2499,751],{"emptyLinePlaceholder":411},[532,2501,2502,2504,2506,2508,2510,2512],{"class":534,"line":774},[532,2503,1884],{"class":723},[532,2505,2120],{"class":723},[532,2507,2123],{"class":546},[532,2509,1299],{"class":723},[532,2511,2128],{"class":723},[532,2513,2131],{"class":538},[532,2515,2516],{"class":534,"line":795},[532,2517,751],{"emptyLinePlaceholder":411},[532,2519,2520,2522,2524],{"class":534,"line":810},[532,2521,1884],{"class":723},[532,2523,1887],{"class":723},[532,2525,635],{"class":538},[532,2527,2528,2530,2532,2534,2536,2538,2540,2542,2544,2546,2548,2550],{"class":534,"line":822},[532,2529,2148],{"class":723},[532,2531,1377],{"class":546},[532,2533,1183],{"class":538},[532,2535,2155],{"class":1197},[532,2537,1451],{"class":723},[532,2539,2160],{"class":546},[532,2541,2163],{"class":538},[532,2543,1451],{"class":723},[532,2545,2168],{"class":546},[532,2547,556],{"class":538},[532,2549,2173],{"class":546},[532,2551,2176],{"class":538},[532,2553,2554,2556,2558],{"class":534,"line":837},[532,2555,2059],{"class":723},[532,2557,2183],{"class":546},[532,2559,1893],{"class":538},[532,2561,2562,2564,2566],{"class":534,"line":842},[532,2563,2190],{"class":538},[532,2565,2193],{"class":567},[532,2567,1411],{"class":538},[532,2569,2570],{"class":534,"line":847},[532,2571,2200],{"class":538},[532,2573,2574],{"class":534,"line":855},[532,2575,2205],{"class":538},[532,2577,2578],{"class":534,"line":867},[532,2579,2210],{"class":538},[532,2581,2582],{"class":534,"line":880},[532,2583,1730],{"class":538},[532,2585,2586],{"class":534,"line":892},[532,2587,2219],{"class":538},[2221,2589,2590,2591,2594,2595,2598,2599,2602],{},"Define procedures using ",[529,2592,2593],{},"t.procedure.query()"," for read operations and ",[529,2596,2597],{},"t.procedure.mutation()"," for write operations. Export the ",[529,2600,2601],{},"AppRouter"," type so clients get full type inference. The default export uses tRPC's fetch adapter to handle incoming requests.",[2225,2604,2606],{"id":2605},"_3-create-the-html-page","3. Create the HTML Page",[2221,2608,2609],{},"Create an HTML page with server-side rendering and client-side interactivity:",[522,2611,2612],{"className":524,"code":525,"filename":526,"language":527,"meta":5,"style":5},[529,2613,2614,2624,2638,2646,2660,2672,2680,2686,2700,2710,2720,2730,2740,2752,2762,2766,2770,2776,2786,2802,2814,2824,2836,2840,2844,2850,2860,2870,2880,2896,2908,2918,2930,2942,2946,2950,2958,2968,2972,2976,2982,2994,3008,3012,3020,3028,3036,3050,3062,3082,3092,3096,3132,3138,3146,3154,3172,3180,3184,3194,3212,3230,3234,3252,3274,3288,3300,3320,3324,3328,3344,3350,3354,3358,3368,3386,3394,3398,3402,3418,3436,3444,3448,3452,3458,3466,3474],{"__ignoreMap":5},[532,2615,2616,2618,2620,2622],{"class":534,"line":535},[532,2617,539],{"class":538},[532,2619,543],{"class":542},[532,2621,547],{"class":546},[532,2623,550],{"class":538},[532,2625,2626,2628,2630,2632,2634,2636],{"class":534,"line":553},[532,2627,556],{"class":538},[532,2629,527],{"class":542},[532,2631,561],{"class":546},[532,2633,564],{"class":538},[532,2635,568],{"class":567},[532,2637,550],{"class":538},[532,2639,2640,2642,2644],{"class":534,"line":573},[532,2641,576],{"class":538},[532,2643,579],{"class":542},[532,2645,550],{"class":538},[532,2647,2648,2650,2652,2654,2656,2658],{"class":534,"line":584},[532,2649,587],{"class":538},[532,2651,590],{"class":542},[532,2653,593],{"class":546},[532,2655,564],{"class":538},[532,2657,598],{"class":567},[532,2659,601],{"class":538},[532,2661,2662,2664,2666,2668,2670],{"class":534,"line":604},[532,2663,587],{"class":538},[532,2665,609],{"class":542},[532,2667,612],{"class":538},[532,2669,609],{"class":542},[532,2671,550],{"class":538},[532,2673,2674,2676,2678],{"class":534,"line":619},[532,2675,587],{"class":538},[532,2677,624],{"class":542},[532,2679,550],{"class":538},[532,2681,2682,2684],{"class":534,"line":629},[532,2683,632],{"class":542},[532,2685,635],{"class":538},[532,2687,2688,2690,2692,2694,2696,2698],{"class":534,"line":638},[532,2689,642],{"class":641},[532,2691,645],{"class":538},[532,2693,648],{"class":641},[532,2695,651],{"class":538},[532,2697,654],{"class":641},[532,2699,657],{"class":538},[532,2701,2702,2704,2706,2708],{"class":534,"line":660},[532,2703,663],{"class":641},[532,2705,645],{"class":538},[532,2707,668],{"class":641},[532,2709,657],{"class":538},[532,2711,2712,2714,2716,2718],{"class":534,"line":673},[532,2713,676],{"class":641},[532,2715,645],{"class":538},[532,2717,681],{"class":641},[532,2719,657],{"class":538},[532,2721,2722,2724,2726,2728],{"class":534,"line":686},[532,2723,689],{"class":641},[532,2725,645],{"class":538},[532,2727,694],{"class":641},[532,2729,657],{"class":538},[532,2731,2732,2734,2736,2738],{"class":534,"line":699},[532,2733,702],{"class":641},[532,2735,645],{"class":538},[532,2737,707],{"class":641},[532,2739,657],{"class":538},[532,2741,2742,2744,2746,2748,2750],{"class":534,"line":712},[532,2743,715],{"class":641},[532,2745,645],{"class":538},[532,2747,720],{"class":641},[532,2749,724],{"class":723},[532,2751,657],{"class":538},[532,2753,2754,2756,2758,2760],{"class":534,"line":729},[532,2755,732],{"class":641},[532,2757,645],{"class":538},[532,2759,737],{"class":641},[532,2761,657],{"class":538},[532,2763,2764],{"class":534,"line":742},[532,2765,745],{"class":538},[532,2767,2768],{"class":534,"line":748},[532,2769,751],{"emptyLinePlaceholder":411},[532,2771,2772,2774],{"class":534,"line":754},[532,2773,757],{"class":546},[532,2775,635],{"class":538},[532,2777,2778,2780,2782,2784],{"class":534,"line":762},[532,2779,663],{"class":641},[532,2781,645],{"class":538},[532,2783,769],{"class":641},[532,2785,657],{"class":538},[532,2787,2788,2790,2792,2794,2796,2798,2800],{"class":534,"line":774},[532,2789,777],{"class":641},[532,2791,645],{"class":538},[532,2793,782],{"class":641},[532,2795,785],{"class":723},[532,2797,788],{"class":641},[532,2799,785],{"class":723},[532,2801,657],{"class":538},[532,2803,2804,2806,2808,2810,2812],{"class":534,"line":795},[532,2805,798],{"class":641},[532,2807,645],{"class":538},[532,2809,803],{"class":641},[532,2811,785],{"class":723},[532,2813,657],{"class":538},[532,2815,2816,2818,2820,2822],{"class":534,"line":810},[532,2817,813],{"class":641},[532,2819,645],{"class":538},[532,2821,707],{"class":641},[532,2823,657],{"class":538},[532,2825,2826,2828,2830,2832,2834],{"class":534,"line":822},[532,2827,825],{"class":641},[532,2829,645],{"class":538},[532,2831,830],{"class":641},[532,2833,785],{"class":723},[532,2835,657],{"class":538},[532,2837,2838],{"class":534,"line":837},[532,2839,745],{"class":538},[532,2841,2842],{"class":534,"line":842},[532,2843,751],{"emptyLinePlaceholder":411},[532,2845,2846,2848],{"class":534,"line":847},[532,2847,850],{"class":542},[532,2849,635],{"class":538},[532,2851,2852,2854,2856,2858],{"class":534,"line":855},[532,2853,663],{"class":641},[532,2855,645],{"class":538},[532,2857,862],{"class":641},[532,2859,657],{"class":538},[532,2861,2862,2864,2866,2868],{"class":534,"line":867},[532,2863,870],{"class":641},[532,2865,645],{"class":538},[532,2867,875],{"class":641},[532,2869,657],{"class":538},[532,2871,2872,2874,2876,2878],{"class":534,"line":880},[532,2873,676],{"class":641},[532,2875,645],{"class":538},[532,2877,887],{"class":641},[532,2879,657],{"class":538},[532,2881,2882,2884,2886,2888,2890,2892,2894],{"class":534,"line":892},[532,2883,777],{"class":641},[532,2885,645],{"class":538},[532,2887,899],{"class":641},[532,2889,785],{"class":723},[532,2891,904],{"class":641},[532,2893,785],{"class":723},[532,2895,657],{"class":538},[532,2897,2898,2900,2902,2904,2906],{"class":534,"line":911},[532,2899,798],{"class":641},[532,2901,645],{"class":538},[532,2903,918],{"class":641},[532,2905,785],{"class":723},[532,2907,657],{"class":538},[532,2909,2910,2912,2914,2916],{"class":534,"line":925},[532,2911,928],{"class":641},[532,2913,645],{"class":538},[532,2915,933],{"class":641},[532,2917,657],{"class":538},[532,2919,2920,2922,2924,2926,2928],{"class":534,"line":938},[532,2921,941],{"class":641},[532,2923,645],{"class":538},[532,2925,946],{"class":641},[532,2927,785],{"class":723},[532,2929,657],{"class":538},[532,2931,2932,2934,2936,2938,2940],{"class":534,"line":953},[532,2933,956],{"class":641},[532,2935,645],{"class":538},[532,2937,961],{"class":641},[532,2939,785],{"class":723},[532,2941,657],{"class":538},[532,2943,2944],{"class":534,"line":968},[532,2945,745],{"class":538},[532,2947,2948],{"class":534,"line":973},[532,2949,751],{"emptyLinePlaceholder":411},[532,2951,2952,2954,2956],{"class":534,"line":978},[532,2953,850],{"class":542},[532,2955,983],{"class":546},[532,2957,635],{"class":538},[532,2959,2960,2962,2964,2966],{"class":534,"line":988},[532,2961,663],{"class":641},[532,2963,645],{"class":538},[532,2965,995],{"class":641},[532,2967,657],{"class":538},[532,2969,2970],{"class":534,"line":1000},[532,2971,745],{"class":538},[532,2973,2974],{"class":534,"line":1005},[532,2975,751],{"emptyLinePlaceholder":411},[532,2977,2978,2980],{"class":534,"line":1010},[532,2979,1013],{"class":546},[532,2981,635],{"class":538},[532,2983,2984,2986,2988,2990,2992],{"class":534,"line":1018},[532,2985,956],{"class":641},[532,2987,645],{"class":538},[532,2989,1025],{"class":641},[532,2991,785],{"class":723},[532,2993,657],{"class":538},[532,2995,2996,2998,3000,3002,3004,3006],{"class":534,"line":1032},[532,2997,732],{"class":641},[532,2999,645],{"class":538},[532,3001,946],{"class":641},[532,3003,785],{"class":723},[532,3005,1043],{"class":641},[532,3007,657],{"class":538},[532,3009,3010],{"class":534,"line":1048},[532,3011,745],{"class":538},[532,3013,3014,3016,3018],{"class":534,"line":1053},[532,3015,1056],{"class":538},[532,3017,624],{"class":542},[532,3019,550],{"class":538},[532,3021,3022,3024,3026],{"class":534,"line":1063},[532,3023,1066],{"class":538},[532,3025,579],{"class":542},[532,3027,550],{"class":538},[532,3029,3030,3032,3034],{"class":534,"line":1073},[532,3031,576],{"class":538},[532,3033,1078],{"class":542},[532,3035,550],{"class":538},[532,3037,3038,3040,3042,3044,3046,3048],{"class":534,"line":1083},[532,3039,587],{"class":538},[532,3041,1088],{"class":542},[532,3043,1091],{"class":546},[532,3045,564],{"class":538},[532,3047,1096],{"class":567},[532,3049,550],{"class":538},[532,3051,3052,3054,3056,3058,3060],{"class":534,"line":1101},[532,3053,1104],{"class":538},[532,3055,1088],{"class":542},[532,3057,1109],{"class":538},[532,3059,1088],{"class":542},[532,3061,550],{"class":538},[532,3063,3064,3066,3068,3070,3072,3074,3076,3078,3080],{"class":534,"line":1116},[532,3065,1104],{"class":538},[532,3067,1088],{"class":542},[532,3069,1091],{"class":546},[532,3071,564],{"class":538},[532,3073,1127],{"class":567},[532,3075,1130],{"class":546},[532,3077,564],{"class":538},[532,3079,1127],{"class":567},[532,3081,550],{"class":538},[532,3083,3084,3086,3088,3090],{"class":534,"line":1139},[532,3085,1142],{"class":538},[532,3087,1145],{"class":542},[532,3089,1148],{"class":546},[532,3091,550],{"class":538},[532,3093,3094],{"class":534,"line":1153},[532,3095,1157],{"class":1156},[532,3097,3098,3100,3102,3104,3106,3108,3110,3112,3114,3116,3118,3120,3122,3124,3126,3128,3130],{"class":534,"line":1160},[532,3099,1163],{"class":723},[532,3101,1166],{"class":538},[532,3103,1169],{"class":641},[532,3105,1172],{"class":538},[532,3107,564],{"class":723},[532,3109,1177],{"class":723},[532,3111,1180],{"class":546},[532,3113,1183],{"class":538},[532,3115,1186],{"class":567},[532,3117,1189],{"class":538},[532,3119,1192],{"class":546},[532,3121,1183],{"class":538},[532,3123,1198],{"class":1197},[532,3125,1201],{"class":723},[532,3127,1204],{"class":538},[532,3129,1207],{"class":546},[532,3131,1210],{"class":538},[532,3133,3134,3136],{"class":534,"line":1213},[532,3135,1216],{"class":546},[532,3137,1219],{"class":538},[532,3139,3140,3142,3144],{"class":534,"line":1222},[532,3141,1225],{"class":538},[532,3143,1145],{"class":542},[532,3145,550],{"class":538},[532,3147,3148,3150,3152],{"class":534,"line":1232},[532,3149,1235],{"class":538},[532,3151,1088],{"class":542},[532,3153,550],{"class":538},[532,3155,3156,3158,3160,3162,3164,3166,3168,3170],{"class":534,"line":1242},[532,3157,1104],{"class":538},[532,3159,1247],{"class":542},[532,3161,1130],{"class":546},[532,3163,564],{"class":538},[532,3165,1254],{"class":567},[532,3167,1257],{"class":538},[532,3169,1247],{"class":542},[532,3171,550],{"class":538},[532,3173,3174,3176,3178],{"class":534,"line":1264},[532,3175,1056],{"class":538},[532,3177,1088],{"class":542},[532,3179,550],{"class":538},[532,3181,3182],{"class":534,"line":1273},[532,3183,751],{"emptyLinePlaceholder":411},[532,3185,3186,3188,3190,3192],{"class":534,"line":1278},[532,3187,587],{"class":538},[532,3189,1145],{"class":542},[532,3191,1285],{"class":546},[532,3193,550],{"class":538},[532,3195,3196,3198,3200,3202,3204,3206,3208,3210],{"class":534,"line":1290},[532,3197,1293],{"class":723},[532,3199,1296],{"class":641},[532,3201,1299],{"class":723},[532,3203,1302],{"class":538},[532,3205,1305],{"class":546},[532,3207,1183],{"class":538},[532,3209,1127],{"class":567},[532,3211,1312],{"class":538},[532,3213,3214,3216,3218,3220,3222,3224,3226,3228],{"class":534,"line":1315},[532,3215,1293],{"class":723},[532,3217,1320],{"class":641},[532,3219,1299],{"class":723},[532,3221,1302],{"class":538},[532,3223,1305],{"class":546},[532,3225,1183],{"class":538},[532,3227,1254],{"class":567},[532,3229,1312],{"class":538},[532,3231,3232],{"class":534,"line":1335},[532,3233,751],{"emptyLinePlaceholder":411},[532,3235,3236,3238,3240,3242,3244,3246,3248,3250],{"class":534,"line":1340},[532,3237,1343],{"class":723},[532,3239,1346],{"class":723},[532,3241,1349],{"class":546},[532,3243,1183],{"class":538},[532,3245,1354],{"class":1197},[532,3247,651],{"class":538},[532,3249,1078],{"class":1197},[532,3251,1361],{"class":538},[532,3253,3254,3256,3258,3260,3262,3264,3266,3268,3270,3272],{"class":534,"line":1364},[532,3255,1367],{"class":723},[532,3257,1370],{"class":641},[532,3259,1299],{"class":723},[532,3261,1177],{"class":723},[532,3263,1377],{"class":546},[532,3265,1183],{"class":538},[532,3267,1382],{"class":567},[532,3269,1354],{"class":538},[532,3271,1387],{"class":567},[532,3273,1390],{"class":538},[532,3275,3276,3278,3280,3282,3284,3286],{"class":534,"line":1393},[532,3277,1396],{"class":538},[532,3279,1399],{"class":723},[532,3281,1402],{"class":567},[532,3283,1405],{"class":723},[532,3285,1408],{"class":567},[532,3287,1411],{"class":538},[532,3289,3290,3292,3294,3296,3298],{"class":534,"line":1414},[532,3291,1417],{"class":538},[532,3293,1420],{"class":567},[532,3295,645],{"class":538},[532,3297,1425],{"class":567},[532,3299,1428],{"class":538},[532,3301,3302,3304,3306,3308,3310,3312,3314,3316,3318],{"class":534,"line":1431},[532,3303,1434],{"class":538},[532,3305,1399],{"class":723},[532,3307,1439],{"class":641},[532,3309,1442],{"class":538},[532,3311,1445],{"class":546},[532,3313,1448],{"class":538},[532,3315,1451],{"class":723},[532,3317,1454],{"class":641},[532,3319,1411],{"class":538},[532,3321,3322],{"class":534,"line":1459},[532,3323,1462],{"class":538},[532,3325,3326],{"class":534,"line":1465},[532,3327,751],{"emptyLinePlaceholder":411},[532,3329,3330,3332,3334,3336,3338,3340,3342],{"class":534,"line":1470},[532,3331,1367],{"class":723},[532,3333,1475],{"class":641},[532,3335,1299],{"class":723},[532,3337,1177],{"class":723},[532,3339,1482],{"class":538},[532,3341,1207],{"class":546},[532,3343,1487],{"class":538},[532,3345,3346,3348],{"class":534,"line":1490},[532,3347,1493],{"class":723},[532,3349,1496],{"class":538},[532,3351,3352],{"class":534,"line":1499},[532,3353,745],{"class":538},[532,3355,3356],{"class":534,"line":1504},[532,3357,751],{"emptyLinePlaceholder":411},[532,3359,3360,3362,3364,3366],{"class":534,"line":1509},[532,3361,1343],{"class":723},[532,3363,1346],{"class":723},[532,3365,1516],{"class":546},[532,3367,1519],{"class":538},[532,3369,3370,3372,3374,3376,3378,3380,3382,3384],{"class":534,"line":1522},[532,3371,1367],{"class":723},[532,3373,1527],{"class":641},[532,3375,1299],{"class":723},[532,3377,1177],{"class":723},[532,3379,1349],{"class":546},[532,3381,1183],{"class":538},[532,3383,1538],{"class":567},[532,3385,1312],{"class":538},[532,3387,3388,3390,3392],{"class":534,"line":1543},[532,3389,1546],{"class":538},[532,3391,564],{"class":723},[532,3393,1551],{"class":538},[532,3395,3396],{"class":534,"line":1554},[532,3397,745],{"class":538},[532,3399,3400],{"class":534,"line":1559},[532,3401,751],{"emptyLinePlaceholder":411},[532,3403,3404,3406,3408,3410,3412,3414,3416],{"class":534,"line":1564},[532,3405,1567],{"class":538},[532,3407,1570],{"class":546},[532,3409,1299],{"class":723},[532,3411,1575],{"class":723},[532,3413,1578],{"class":538},[532,3415,1581],{"class":723},[532,3417,635],{"class":538},[532,3419,3420,3422,3424,3426,3428,3430,3432,3434],{"class":534,"line":1586},[532,3421,1367],{"class":723},[532,3423,1527],{"class":641},[532,3425,1299],{"class":723},[532,3427,1177],{"class":723},[532,3429,1349],{"class":546},[532,3431,1183],{"class":538},[532,3433,1254],{"class":567},[532,3435,1603],{"class":538},[532,3437,3438,3440,3442],{"class":534,"line":1606},[532,3439,1546],{"class":538},[532,3441,564],{"class":723},[532,3443,1551],{"class":538},[532,3445,3446],{"class":534,"line":1615},[532,3447,1618],{"class":538},[532,3449,3450],{"class":534,"line":1621},[532,3451,751],{"emptyLinePlaceholder":411},[532,3453,3454,3456],{"class":534,"line":1626},[532,3455,1629],{"class":546},[532,3457,1487],{"class":538},[532,3459,3460,3462,3464],{"class":534,"line":1634},[532,3461,1056],{"class":538},[532,3463,1145],{"class":542},[532,3465,550],{"class":538},[532,3467,3468,3470,3472],{"class":534,"line":1643},[532,3469,1066],{"class":538},[532,3471,1078],{"class":542},[532,3473,550],{"class":538},[532,3475,3476,3478,3480],{"class":534,"line":1652},[532,3477,1655],{"class":538},[532,3479,527],{"class":542},[532,3481,550],{"class":538},[2221,3483,2338,3484,3487,3488,3491,3492,3495],{},[529,3485,3486],{},"\u003Cscript server>"," block runs on the server before sending the response, fetching the initial counter value via ",[529,3489,3490],{},"serverFetch",". The ",[529,3493,3494],{},"\u003Cscript setup>"," block runs in the browser and handles the increment button click.",[2225,3497,3499],{"id":3498},"learn-more","Learn More",[3501,3502,3503,3513],"ul",{},[3504,3505,3506],"li",{},[3507,3508,3512],"a",{"href":3509,"rel":3510},"https:\u002F\u002Ftrpc.io\u002F",[3511],"nofollow","tRPC",[3504,3514,3515],{},[3507,3516,23],{"href":24},[624,3518,3519],{},"html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .sByVh, html code.shiki .sByVh{--shiki-light:#22863A;--shiki-default:#85E89D;--shiki-dark:#85E89D}html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}html pre.shiki code .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}html pre.shiki code .so5gQ, html code.shiki .so5gQ{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#F97583}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sQHwn, html code.shiki .sQHwn{--shiki-light:#E36209;--shiki-default:#FFAB70;--shiki-dark:#FFAB70}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":5,"searchDepth":553,"depth":553,"links":3521},[3522,3523,3524,3525,3526],{"id":2227,"depth":553,"text":2228},{"id":2245,"depth":553,"text":2246},{"id":2349,"depth":553,"text":2350},{"id":2605,"depth":553,"text":2606},{"id":3498,"depth":553,"text":3499},"md",{"automd":411,"category":480,"icon":387},{"icon":387},{"title":384,"description":506},"TqI--KLF_UI66cHPZ7P-b6H4SXVniUn2-gQSkk4NloI",[3533,3534],{"title":379,"path":380,"stem":381,"description":503,"icon":382,"children":-1},{"title":63,"path":389,"stem":390,"description":509,"icon":391,"children":-1},1784141544587]