[{"data":1,"prerenderedAt":5801},["ShallowReactive",2],{"navigation_docs":3,"evlog-docs-home":500},[4,30,80,118,283,415,470],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Start","\u002Fstart","1.start",[9,14,19,24],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","\u002Fstart\u002Fintroduction","1.start\u002F1.introduction","i-lucide-info",{"title":15,"path":16,"stem":17,"icon":18},"Why start with evlog","\u002Fstart\u002Fwhy-evlog","1.start\u002F2.why-evlog","i-lucide-rocket",{"title":20,"path":21,"stem":22,"icon":23},"Installation","\u002Fstart\u002Finstallation","1.start\u002F3.installation","i-lucide-download",{"title":25,"path":26,"stem":27,"icon":28},"Quick Start","\u002Fstart\u002Fquick-start","1.start\u002F4.quick-start","i-lucide-zap",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Learn","\u002Flearn","2.learn",[35,40,45,50,55,60,65,70,75],{"title":36,"path":37,"stem":38,"icon":39},"Overview","\u002Flearn\u002Foverview","2.learn\u002F0.overview","i-lucide-list",{"title":41,"path":42,"stem":43,"icon":44},"Simple Logging","\u002Flearn\u002Fsimple-logging","2.learn\u002F1.simple-logging","i-lucide-terminal",{"title":46,"path":47,"stem":48,"icon":49},"Wide Events","\u002Flearn\u002Fwide-events","2.learn\u002F2.wide-events","i-lucide-layers",{"title":51,"path":52,"stem":53,"icon":54},"Structured Errors","\u002Flearn\u002Fstructured-errors","2.learn\u002F3.structured-errors","i-lucide-shield-alert",{"title":56,"path":57,"stem":58,"icon":59},"Lifecycle","\u002Flearn\u002Flifecycle","2.learn\u002F4.lifecycle","i-lucide-arrow-right-left",{"title":61,"path":62,"stem":63,"icon":64},"Sampling","\u002Flearn\u002Fsampling","2.learn\u002F5.sampling","i-lucide-filter",{"title":66,"path":67,"stem":68,"icon":69},"Auto-Redaction","\u002Flearn\u002Fredaction","2.learn\u002F6.redaction","i-lucide-eye-off",{"title":71,"path":72,"stem":73,"icon":74},"Typed Fields","\u002Flearn\u002Ftyped-fields","2.learn\u002F7.typed-fields","i-simple-icons-typescript",{"title":76,"path":77,"stem":78,"icon":79},"Catalogs","\u002Flearn\u002Fcatalogs","2.learn\u002F8.catalogs","i-lucide-book-open",{"title":81,"path":82,"stem":83,"children":84,"page":29},"CLI","\u002Fcli","3.cli",[85,88,93,98,103,108,113],{"title":36,"path":86,"stem":87,"icon":44},"\u002Fcli\u002Foverview","3.cli\u002F0.overview",{"title":89,"path":90,"stem":91,"icon":92},"map","\u002Fcli\u002Fmap","3.cli\u002F1.map","i-lucide-radar",{"title":94,"path":95,"stem":96,"icon":97},"Rules","\u002Fcli\u002Frules","3.cli\u002F2.rules","i-lucide-list-checks",{"title":99,"path":100,"stem":101,"icon":102},"Scoring","\u002Fcli\u002Fscoring","3.cli\u002F3.scoring","i-lucide-gauge",{"title":104,"path":105,"stem":106,"icon":107},"CI","\u002Fcli\u002Fci","3.cli\u002F4.ci","i-lucide-git-pull-request",{"title":109,"path":110,"stem":111,"icon":112},"doctor","\u002Fcli\u002Fdoctor","3.cli\u002F5.doctor","i-lucide-stethoscope",{"title":114,"path":115,"stem":116,"icon":117},"telemetry","\u002Fcli\u002Ftelemetry","3.cli\u002F6.telemetry","i-lucide-bar-chart-3",{"title":119,"path":120,"stem":121,"children":122,"page":29},"Integrate","\u002Fintegrate","4.integrate",[123,127,195],{"title":36,"path":124,"stem":125,"icon":126},"\u002Fintegrate\u002Foverview","4.integrate\u002F0.overview","i-lucide-plug",{"title":128,"path":129,"stem":130,"children":131,"page":29},"Adapters","\u002Fintegrate\u002Fadapters","4.integrate\u002Fadapters",[132,135,175],{"title":36,"path":133,"stem":134,"icon":39},"\u002Fintegrate\u002Fadapters\u002Foverview","4.integrate\u002Fadapters\u002F01.overview",{"title":136,"path":137,"stem":138,"children":139,"page":29},"Cloud","\u002Fintegrate\u002Fadapters\u002Fcloud","4.integrate\u002Fadapters\u002Fcloud",[140,145,150,155,160,165,170],{"title":141,"path":142,"stem":143,"icon":144},"Axiom","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Faxiom","4.integrate\u002Fadapters\u002Fcloud\u002F01.axiom","i-custom-axiom",{"title":146,"path":147,"stem":148,"icon":149},"OTLP","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fotlp","4.integrate\u002Fadapters\u002Fcloud\u002F02.otlp","i-simple-icons-opentelemetry",{"title":151,"path":152,"stem":153,"icon":154},"PostHog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fposthog","4.integrate\u002Fadapters\u002Fcloud\u002F03.posthog","i-simple-icons-posthog",{"title":156,"path":157,"stem":158,"icon":159},"Sentry","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fsentry","4.integrate\u002Fadapters\u002Fcloud\u002F04.sentry","i-simple-icons-sentry",{"title":161,"path":162,"stem":163,"icon":164},"Better Stack","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fbetter-stack","4.integrate\u002Fadapters\u002Fcloud\u002F05.better-stack","i-simple-icons-betterstack",{"title":166,"path":167,"stem":168,"icon":169},"Datadog","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fdatadog","4.integrate\u002Fadapters\u002Fcloud\u002F06.datadog","i-simple-icons-datadog",{"title":171,"path":172,"stem":173,"icon":174},"HyperDX","\u002Fintegrate\u002Fadapters\u002Fcloud\u002Fhyperdx","4.integrate\u002Fadapters\u002Fcloud\u002F07.hyperdx","i-custom-hyperdx",{"title":176,"path":177,"stem":178,"children":179,"page":29},"Self-Hosted","\u002Fintegrate\u002Fadapters\u002Fself-hosted","4.integrate\u002Fadapters\u002Fself-hosted",[180,185,190],{"title":181,"path":182,"stem":183,"icon":184},"File System","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Ffs","4.integrate\u002Fadapters\u002Fself-hosted\u002F01.fs","i-lucide-hard-drive",{"title":186,"path":187,"stem":188,"icon":189},"NuxtHub","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fnuxthub","4.integrate\u002Fadapters\u002Fself-hosted\u002F02.nuxthub","i-simple-icons-nuxt",{"title":191,"path":192,"stem":193,"icon":194},"Memory","\u002Fintegrate\u002Fadapters\u002Fself-hosted\u002Fmemory","4.integrate\u002Fadapters\u002Fself-hosted\u002F03.memory","i-lucide-cpu",{"title":196,"path":197,"stem":198,"children":199,"page":29},"Frameworks","\u002Fintegrate\u002Fframeworks","4.integrate\u002Fframeworks",[200,204,209,214,219,224,229,234,239,244,249,254,259,264,268,273,278],{"title":36,"path":201,"stem":202,"icon":203},"\u002Fintegrate\u002Fframeworks\u002Foverview","4.integrate\u002Fframeworks\u002F00.overview","i-lucide-layout-grid",{"title":205,"path":206,"stem":207,"icon":208},"Nuxt","\u002Fintegrate\u002Fframeworks\u002Fnuxt","4.integrate\u002Fframeworks\u002F01.nuxt","i-simple-icons-nuxtdotjs",{"title":210,"path":211,"stem":212,"icon":213},"Next.js","\u002Fintegrate\u002Fframeworks\u002Fnextjs","4.integrate\u002Fframeworks\u002F02.nextjs","i-simple-icons-nextdotjs",{"title":215,"path":216,"stem":217,"icon":218},"SvelteKit","\u002Fintegrate\u002Fframeworks\u002Fsveltekit","4.integrate\u002Fframeworks\u002F03.sveltekit","i-simple-icons-svelte",{"title":220,"path":221,"stem":222,"icon":223},"Nitro","\u002Fintegrate\u002Fframeworks\u002Fnitro","4.integrate\u002Fframeworks\u002F04.nitro","i-custom-nitro",{"title":225,"path":226,"stem":227,"icon":228},"TanStack Start","\u002Fintegrate\u002Fframeworks\u002Ftanstack-start","4.integrate\u002Fframeworks\u002F05.tanstack-start","i-custom-tanstack",{"title":230,"path":231,"stem":232,"icon":233},"NestJS","\u002Fintegrate\u002Fframeworks\u002Fnestjs","4.integrate\u002Fframeworks\u002F06.nestjs","i-simple-icons-nestjs",{"title":235,"path":236,"stem":237,"icon":238},"Express","\u002Fintegrate\u002Fframeworks\u002Fexpress","4.integrate\u002Fframeworks\u002F07.express","i-simple-icons-express",{"title":240,"path":241,"stem":242,"icon":243},"Hono","\u002Fintegrate\u002Fframeworks\u002Fhono","4.integrate\u002Fframeworks\u002F08.hono","i-simple-icons-hono",{"title":245,"path":246,"stem":247,"icon":248},"Fastify","\u002Fintegrate\u002Fframeworks\u002Ffastify","4.integrate\u002Fframeworks\u002F09.fastify","i-simple-icons-fastify",{"title":250,"path":251,"stem":252,"icon":253},"Elysia","\u002Fintegrate\u002Fframeworks\u002Felysia","4.integrate\u002Fframeworks\u002F10.elysia","i-custom-elysia",{"title":255,"path":256,"stem":257,"icon":258},"React Router","\u002Fintegrate\u002Fframeworks\u002Freact-router","4.integrate\u002Fframeworks\u002F11.react-router","i-custom-reactrouter",{"title":260,"path":261,"stem":262,"icon":263},"Cloudflare Workers","\u002Fintegrate\u002Fframeworks\u002Fcloudflare-workers","4.integrate\u002Fframeworks\u002F12.cloudflare-workers","i-simple-icons-cloudflare",{"title":265,"path":266,"stem":267,"icon":74},"Standalone","\u002Fintegrate\u002Fframeworks\u002Fstandalone","4.integrate\u002Fframeworks\u002F13.standalone",{"title":269,"path":270,"stem":271,"icon":272},"Astro","\u002Fintegrate\u002Fframeworks\u002Fastro","4.integrate\u002Fframeworks\u002F14.astro","i-simple-icons-astro",{"title":274,"path":275,"stem":276,"icon":277},"oRPC","\u002Fintegrate\u002Fframeworks\u002Forpc","4.integrate\u002Fframeworks\u002F15.orpc","i-lucide-network",{"title":279,"path":280,"stem":281,"icon":282},"AWS Lambda","\u002Fintegrate\u002Fframeworks\u002Faws-lambda","4.integrate\u002Fframeworks\u002F16.aws-lambda","i-custom-lambda",{"title":284,"path":285,"stem":286,"children":287,"page":29},"Use Cases","\u002Fuse-cases","5.use-cases",[288,291,296,325,352,384,405,410],{"title":36,"path":289,"stem":290,"icon":97},"\u002Fuse-cases\u002Foverview","5.use-cases\u002F0.overview",{"title":292,"path":293,"stem":294,"icon":295},"Client Logging","\u002Fuse-cases\u002Fclient-logging","5.use-cases\u002F1.client-logging","i-lucide-monitor",{"title":297,"icon":298,"path":299,"stem":300,"children":301,"page":29},"AI SDK","i-simple-icons-vercel","\u002Fuse-cases\u002Fai-sdk","5.use-cases\u002F2.ai-sdk",[302,305,310,315,320],{"title":36,"path":303,"stem":304,"icon":39},"\u002Fuse-cases\u002Fai-sdk\u002Foverview","5.use-cases\u002F2.ai-sdk\u002F01.overview",{"title":306,"path":307,"stem":308,"icon":309},"Usage","\u002Fuse-cases\u002Fai-sdk\u002Fusage","5.use-cases\u002F2.ai-sdk\u002F02.usage","i-lucide-code",{"title":311,"path":312,"stem":313,"icon":314},"Options","\u002Fuse-cases\u002Fai-sdk\u002Foptions","5.use-cases\u002F2.ai-sdk\u002F03.options","i-lucide-sliders",{"title":316,"path":317,"stem":318,"icon":319},"Metadata","\u002Fuse-cases\u002Fai-sdk\u002Fmetadata","5.use-cases\u002F2.ai-sdk\u002F04.metadata","i-lucide-database",{"title":321,"path":322,"stem":323,"icon":324},"Telemetry","\u002Fuse-cases\u002Fai-sdk\u002Ftelemetry","5.use-cases\u002F2.ai-sdk\u002F05.telemetry","i-lucide-activity",{"title":326,"icon":327,"path":328,"stem":329,"children":330,"page":29},"Better Auth","i-simple-icons-betterauth","\u002Fuse-cases\u002Fbetter-auth","5.use-cases\u002F3.better-auth",[331,334,339,344,348],{"title":36,"path":332,"stem":333,"icon":39},"\u002Fuse-cases\u002Fbetter-auth\u002Foverview","5.use-cases\u002F3.better-auth\u002F01.overview",{"title":335,"path":336,"stem":337,"icon":338},"Identify User","\u002Fuse-cases\u002Fbetter-auth\u002Fidentify-user","5.use-cases\u002F3.better-auth\u002F02.identify-user","i-lucide-user-check",{"title":340,"path":341,"stem":342,"icon":343},"Middleware","\u002Fuse-cases\u002Fbetter-auth\u002Fmiddleware","5.use-cases\u002F3.better-auth\u002F03.middleware","i-lucide-shield",{"title":345,"path":346,"stem":347,"icon":295},"Client Sync","\u002Fuse-cases\u002Fbetter-auth\u002Fclient-sync","5.use-cases\u002F3.better-auth\u002F04.client-sync",{"title":349,"path":350,"stem":351,"icon":102},"Performance","\u002Fuse-cases\u002Fbetter-auth\u002Fperformance","5.use-cases\u002F3.better-auth\u002F05.performance",{"title":353,"icon":354,"path":355,"stem":356,"children":357,"page":29},"Audit Logs","i-lucide-shield-check","\u002Fuse-cases\u002Faudit","5.use-cases\u002F4.audit",[358,361,366,371,376,380],{"title":36,"path":359,"stem":360,"icon":39},"\u002Fuse-cases\u002Faudit\u002Foverview","5.use-cases\u002F4.audit\u002F01.overview",{"title":362,"path":363,"stem":364,"icon":365},"Schema","\u002Fuse-cases\u002Faudit\u002Fschema","5.use-cases\u002F4.audit\u002F02.schema","i-lucide-file-text",{"title":367,"path":368,"stem":369,"icon":370},"Recording","\u002Fuse-cases\u002Faudit\u002Frecording","5.use-cases\u002F4.audit\u002F03.recording","i-lucide-pen-line",{"title":372,"path":373,"stem":374,"icon":375},"Drains","\u002Fuse-cases\u002Faudit\u002Fpipeline","5.use-cases\u002F4.audit\u002F04.pipeline","i-lucide-link",{"title":377,"path":378,"stem":379,"icon":354},"Compliance","\u002Fuse-cases\u002Faudit\u002Fcompliance","5.use-cases\u002F4.audit\u002F05.compliance",{"title":381,"path":382,"stem":383,"icon":79},"Recipes","\u002Fuse-cases\u002Faudit\u002Frecipes","5.use-cases\u002F4.audit\u002F06.recipes",{"title":321,"icon":102,"path":385,"stem":386,"children":387,"page":29},"\u002Fuse-cases\u002Ftelemetry","5.use-cases\u002F4.telemetry",[388,391,396,401],{"title":36,"path":389,"stem":390,"icon":39},"\u002Fuse-cases\u002Ftelemetry\u002Foverview","5.use-cases\u002F4.telemetry\u002F01.overview",{"title":392,"path":393,"stem":394,"icon":395},"Setup","\u002Fuse-cases\u002Ftelemetry\u002Fsetup","5.use-cases\u002F4.telemetry\u002F02.setup","i-lucide-wrench",{"title":397,"path":398,"stem":399,"icon":400},"Ingest","\u002Fuse-cases\u002Ftelemetry\u002Fingest","5.use-cases\u002F4.telemetry\u002F03.ingest","i-lucide-server",{"title":402,"path":403,"stem":404,"icon":79},"Reference","\u002Fuse-cases\u002Ftelemetry\u002Freference","5.use-cases\u002F4.telemetry\u002F04.reference",{"title":406,"path":407,"stem":408,"icon":409},"Enrichers","\u002Fuse-cases\u002Fenrichers","5.use-cases\u002F5.enrichers","i-lucide-sparkles",{"title":411,"path":412,"stem":413,"icon":414},"eve","\u002Fuse-cases\u002Feve","5.use-cases\u002F5.eve","i-custom-eve",{"title":416,"path":417,"stem":418,"children":419,"page":29},"Extend","\u002Fextend","6.extend",[420,424,429,434,439,443,447,451,455,460,465],{"title":36,"path":421,"stem":422,"icon":423},"\u002Fextend\u002Foverview","6.extend\u002F0.overview","i-lucide-blocks",{"title":425,"path":426,"stem":427,"icon":428},"Stream","\u002Fextend\u002Fstream","6.extend\u002F1.stream","i-lucide-radio-tower",{"title":430,"path":431,"stem":432,"icon":433},"Custom framework","\u002Fextend\u002Fcustom-framework","6.extend\u002F10.custom-framework","i-lucide-puzzle",{"title":435,"path":436,"stem":437,"icon":438},"FS reader","\u002Fextend\u002Ffs-reader","6.extend\u002F2.fs-reader","i-lucide-folder-search",{"title":381,"path":440,"stem":441,"icon":442},"\u002Fextend\u002Fconsumer-recipes","6.extend\u002F3.consumer-recipes","i-lucide-chef-hat",{"title":444,"path":445,"stem":446,"icon":423},"Plugins","\u002Fextend\u002Fplugins","6.extend\u002F4.plugins",{"title":448,"path":449,"stem":450,"icon":409},"Custom enrichers","\u002Fextend\u002Fcustom-enrichers","6.extend\u002F5.custom-enrichers",{"title":452,"path":453,"stem":454,"icon":64},"Tail sampling","\u002Fextend\u002Ftail-sampling","6.extend\u002F6.tail-sampling",{"title":456,"path":457,"stem":458,"icon":459},"Identity headers","\u002Fextend\u002Fidentity-headers","6.extend\u002F7.identity-headers","i-lucide-fingerprint",{"title":461,"path":462,"stem":463,"icon":464},"Custom drains","\u002Fextend\u002Fcustom-drains","6.extend\u002F8.custom-drains","i-lucide-share-2",{"title":466,"path":467,"stem":468,"icon":469},"Drain pipeline","\u002Fextend\u002Fdrain-pipeline","6.extend\u002F9.drain-pipeline","i-lucide-workflow",{"title":402,"path":471,"stem":472,"children":473,"page":29},"\u002Freference","7.reference",[474,479,482,487,491,496],{"title":475,"path":476,"stem":477,"icon":478},"Configuration","\u002Freference\u002Fconfiguration","7.reference\u002F1.configuration","i-lucide-settings",{"title":349,"path":480,"stem":481,"icon":102},"\u002Freference\u002Fperformance","7.reference\u002F2.performance",{"title":483,"path":484,"stem":485,"icon":486},"Vite Plugin","\u002Freference\u002Fvite-plugin","7.reference\u002F3.vite-plugin","i-custom-vite",{"title":488,"path":489,"stem":490,"icon":354},"Best Practices","\u002Freference\u002Fbest-practices","7.reference\u002F4.best-practices",{"title":492,"path":493,"stem":494,"icon":495},"vs Other Loggers","\u002Freference\u002Fvs-other-loggers","7.reference\u002F5.vs-other-loggers","i-lucide-scale",{"title":497,"path":498,"stem":499,"icon":409},"Agent Skills","\u002Freference\u002Fagent-skills","7.reference\u002F6.agent-skills",{"id":501,"title":502,"body":503,"description":5793,"extension":5794,"links":5795,"meta":5796,"navigation":29,"path":5797,"seo":5798,"stem":5799,"__hash__":5800},"docs\u002F0.landing.md","evlog — Digging through logs is not observability. It's hope.",{"type":504,"value":505,"toc":5791},"minimark",[506,524,527,5781,5787],[507,508,509,521],"landing-hero",{},[510,511,513,514,517,518,520],"template",{"v-slot:title":512},"","Digging through logs ",[515,516],"br",{}," is not observability. ",[515,519],{}," It's hope",[510,522,523],{"v-slot:description":512},"A modern TypeScript logger built for everything you ship. Simple logs, wide events, and structured errors — one API, every context.",[525,526],"landing-logos",{},[528,529,530],"landing-features",{},[510,531,532,548,561,577,590,603,615,630,646,661],{"v-slot:body":512},[533,534,536,539,545],"features-feature-simple-api",{"link":26,"link-label":535},"Quick start guide",[510,537,538],{"v-slot:headline":512},"Simple API",[510,540,541,542,544],{"v-slot:title":512},"Set context. ",[515,543],{}," Get answers",[510,546,547],{"v-slot:description":512},"Accumulate context with log.set, throw structured errors with why and fix, group recurring errors in typed catalogs. One wide event captures everything, whether the request succeeds or fails.",[549,550,552,555,558],"features-feature-agent-ready",{"link":498,"link-label":551},"Agent skills setup",[510,553,554],{"v-slot:headline":512},"Agent Ready",[510,556,557],{"v-slot:title":512},"Built for agents",[510,559,560],{"v-slot:description":512},"Structured fields, machine-readable context, and actionable metadata that give AI agents everything they need to diagnose and resolve issues on their own. Enable the file system drain to write NDJSON logs locally and let agents read them directly.",[562,563,565,568,574],"features-feature-cli-map",{"link":90,"link-label":564},"evlog map guide",[510,566,567],{"v-slot:headline":512},"Observability Score",[510,569,570,571,573],{"v-slot:title":512},"One command. ",[515,572],{}," Every blind spot",[510,575,576],{"v-slot:description":512},"evlog map reads your project on disk and scores every entry point — handlers, pages, middleware, jobs, server actions. No traffic, no instrumentation, no guessing: the same code always produces the same verdict, each one carrying the file, the line, and the rule it broke. Watch the number move as you fix things, gate a pull request on it, or hand the report to an agent and let it work through the list. Early days — the rules are still being refined and more frameworks are on the way.",[578,579,581,584,587],"features-feature-adapters",{"link":133,"link-label":580},"Explore adapters",[510,582,583],{"v-slot:headline":512},"Drain Pipeline",[510,585,586],{"v-slot:title":512},"Send everywhere",[510,588,589],{"v-slot:description":512},"Batched writes, automatic retries with backoff, and fan-out to multiple destinations. Your logs flow through a pipeline that never blocks your response.",[591,592,594,597,600],"features-feature-client-drain",{"link":293,"link-label":593},"Client logging guide",[510,595,596],{"v-slot:headline":512},"Client Logs",[510,598,599],{"v-slot:title":512},"See the full picture",[510,601,602],{"v-slot:description":512},"Capture browser events and drain them to your server. Automatic batching, retries, and page-aware flushing with the same pipeline from client to server.",[604,605,607,609,612],"features-feature-sampling",{"link":62,"link-label":606},"Sampling guide",[510,608,61],{"v-slot:headline":512},[510,610,611],{"v-slot:title":512},"Keep what matters",[510,613,614],{"v-slot:description":512},"Two-tier filtering: head sampling drops noise by level, tail sampling rescues critical events. Never miss errors, slow requests, or critical paths.",[616,617,619,621,627],"features-feature-audit",{"link":359,"link-label":618},"Audit logs guide",[510,620,353],{"v-slot:headline":512},[510,622,623,624,626],{"v-slot:title":512},"Compliance-ready ",[515,625],{}," by composition",[510,628,629],{"v-slot:description":512},"First-class who-did-what trails as a thin layer on top of wide events. One enricher, one drain wrapper, one helper. Tamper-evident hash chains, denied actions, redact-aware diffs, idempotency keys for safe retries, and typed action catalogs for refactor-safe alerting — all from the main entrypoint, no parallel pipeline.",[631,632,634,637,643],"features-feature-ai-sdk",{"link":303,"link-label":633},"AI SDK integration",[510,635,636],{"v-slot:headline":512},"AI Observability",[510,638,639,640,642],{"v-slot:title":512},"Make AI calls ",[515,641],{}," observable",[510,644,645],{"v-slot:description":512},"Your AI endpoints are black boxes. You don't know how many tokens each request burns, which tools the model called, or how fast the stream was. Wrap your model with one line and every call is captured into the wide event. Cost estimation, tool execution timing, streaming performance, cache hits, reasoning tokens, and multi-step agent breakdowns.",[647,648,650,652,658],"features-feature-performance",{"link":480,"link-label":649},"Benchmark results",[510,651,349],{"v-slot:headline":512},[510,653,654,655,657],{"v-slot:title":512},"Add logging, ",[515,656],{}," not overhead",[510,659,660],{"v-slot:description":512},"Zero dependencies, ~6 kB gzip, ~3µs per request. Benchmarked against pino, consola, and winston. 7.7x faster than pino in the wide event pattern (1 correlated event vs 4 separate log lines), competitive on every other path.",[662,663,665,667,670,673,1106,1507,1934,2315,2835,3236,3392,3743,4115,4453,4763,5214,5472],"features-feature-frameworks",{"link":201,"link-label":664},"Framework integrations",[510,666,196],{"v-slot:headline":512},[510,668,669],{"v-slot:title":512},"Your stack. Covered",[510,671,672],{"v-slot:description":512},"Native integrations for every major framework. One import, zero config, same API everywhere. The Vite plugin adds auto-init, debug stripping, and source location to any Vite-based stack.",[510,674,675],{"v-slot:nuxt":512},[676,677,682],"pre",{"className":678,"code":679,"filename":680,"language":681,"meta":512,"style":512},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineEventHandler(async (event) => {\n  const log = useLogger(event)\n  const { cartId } = await readBody(event)\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return { orderId: charge.id }\n})\n","server\u002Fapi\u002Fcheckout.post.ts","ts",[683,684,685,726,749,777,784,812,873,878,909,946,951,975,988,1003,1023,1040,1057,1065,1071,1076,1098],"code",{"__ignoreMap":512},[686,687,690,694,697,701,705,709,713,717,720,723],"span",{"class":688,"line":689},"line",1,[686,691,693],{"class":692},"s7zQu","export",[686,695,696],{"class":692}," default",[686,698,700],{"class":699},"s2Zo4"," defineEventHandler",[686,702,704],{"class":703},"sTEyZ","(",[686,706,708],{"class":707},"spNyl","async",[686,710,712],{"class":711},"sMK4o"," (",[686,714,716],{"class":715},"sHdIc","event",[686,718,719],{"class":711},")",[686,721,722],{"class":707}," =>",[686,724,725],{"class":711}," {\n",[686,727,729,732,735,738,741,744,746],{"class":688,"line":728},2,[686,730,731],{"class":707},"  const",[686,733,734],{"class":703}," log",[686,736,737],{"class":711}," =",[686,739,740],{"class":699}," useLogger",[686,742,704],{"class":743},"swJcz",[686,745,716],{"class":703},[686,747,748],{"class":743},")\n",[686,750,752,754,757,760,763,765,768,771,773,775],{"class":688,"line":751},3,[686,753,731],{"class":707},[686,755,756],{"class":711}," {",[686,758,759],{"class":703}," cartId",[686,761,762],{"class":711}," }",[686,764,737],{"class":711},[686,766,767],{"class":692}," await",[686,769,770],{"class":699}," readBody",[686,772,704],{"class":743},[686,774,716],{"class":703},[686,776,748],{"class":743},[686,778,780],{"class":688,"line":779},4,[686,781,783],{"emptyLinePlaceholder":782},true,"\n",[686,785,787,789,792,794,796,799,802,805,807,810],{"class":688,"line":786},5,[686,788,731],{"class":707},[686,790,791],{"class":703}," cart",[686,793,737],{"class":711},[686,795,767],{"class":692},[686,797,798],{"class":703}," db",[686,800,801],{"class":711},".",[686,803,804],{"class":699},"findCart",[686,806,704],{"class":743},[686,808,809],{"class":703},"cartId",[686,811,748],{"class":743},[686,813,815,818,820,823,825,828,830,833,835,838,840,842,844,847,849,852,855,858,860,862,864,867,869,871],{"class":688,"line":814},6,[686,816,817],{"class":703},"  log",[686,819,801],{"class":711},[686,821,822],{"class":699},"set",[686,824,704],{"class":743},[686,826,827],{"class":711},"{",[686,829,791],{"class":743},[686,831,832],{"class":711},":",[686,834,756],{"class":711},[686,836,837],{"class":743}," items",[686,839,832],{"class":711},[686,841,791],{"class":703},[686,843,801],{"class":711},[686,845,846],{"class":703},"items",[686,848,801],{"class":711},[686,850,851],{"class":703},"length",[686,853,854],{"class":711},",",[686,856,857],{"class":743}," total",[686,859,832],{"class":711},[686,861,791],{"class":703},[686,863,801],{"class":711},[686,865,866],{"class":703},"total",[686,868,762],{"class":711},[686,870,762],{"class":711},[686,872,748],{"class":743},[686,874,876],{"class":688,"line":875},7,[686,877,783],{"emptyLinePlaceholder":782},[686,879,881,883,886,888,890,893,895,898,900,903,905,907],{"class":688,"line":880},8,[686,882,731],{"class":707},[686,884,885],{"class":703}," charge",[686,887,737],{"class":711},[686,889,767],{"class":692},[686,891,892],{"class":703}," stripe",[686,894,801],{"class":711},[686,896,897],{"class":699},"charge",[686,899,704],{"class":743},[686,901,902],{"class":703},"cart",[686,904,801],{"class":711},[686,906,866],{"class":703},[686,908,748],{"class":743},[686,910,912,914,916,918,920,922,924,926,928,931,933,935,937,940,942,944],{"class":688,"line":911},9,[686,913,817],{"class":703},[686,915,801],{"class":711},[686,917,822],{"class":699},[686,919,704],{"class":743},[686,921,827],{"class":711},[686,923,892],{"class":743},[686,925,832],{"class":711},[686,927,756],{"class":711},[686,929,930],{"class":743}," chargeId",[686,932,832],{"class":711},[686,934,885],{"class":703},[686,936,801],{"class":711},[686,938,939],{"class":703},"id",[686,941,762],{"class":711},[686,943,762],{"class":711},[686,945,748],{"class":743},[686,947,949],{"class":688,"line":948},10,[686,950,783],{"emptyLinePlaceholder":782},[686,952,954,957,959,962,964,966,969,972],{"class":688,"line":953},11,[686,955,956],{"class":692},"  if",[686,958,712],{"class":743},[686,960,961],{"class":711},"!",[686,963,897],{"class":703},[686,965,801],{"class":711},[686,967,968],{"class":703},"success",[686,970,971],{"class":743},") ",[686,973,974],{"class":711},"{\n",[686,976,978,981,984,986],{"class":688,"line":977},12,[686,979,980],{"class":692},"    throw",[686,982,983],{"class":699}," createError",[686,985,704],{"class":743},[686,987,974],{"class":711},[686,989,991,994,996,1000],{"class":688,"line":990},13,[686,992,993],{"class":743},"      status",[686,995,832],{"class":711},[686,997,999],{"class":998},"sbssI"," 402",[686,1001,1002],{"class":711},",\n",[686,1004,1006,1009,1011,1014,1018,1021],{"class":688,"line":1005},14,[686,1007,1008],{"class":743},"      message",[686,1010,832],{"class":711},[686,1012,1013],{"class":711}," '",[686,1015,1017],{"class":1016},"sfazB","Payment failed",[686,1019,1020],{"class":711},"'",[686,1022,1002],{"class":711},[686,1024,1026,1029,1031,1033,1035,1038],{"class":688,"line":1025},15,[686,1027,1028],{"class":743},"      why",[686,1030,832],{"class":711},[686,1032,885],{"class":703},[686,1034,801],{"class":711},[686,1036,1037],{"class":703},"decline_reason",[686,1039,1002],{"class":711},[686,1041,1043,1046,1048,1050,1053,1055],{"class":688,"line":1042},16,[686,1044,1045],{"class":743},"      fix",[686,1047,832],{"class":711},[686,1049,1013],{"class":711},[686,1051,1052],{"class":1016},"Try a different payment method",[686,1054,1020],{"class":711},[686,1056,1002],{"class":711},[686,1058,1060,1063],{"class":688,"line":1059},17,[686,1061,1062],{"class":711},"    }",[686,1064,748],{"class":743},[686,1066,1068],{"class":688,"line":1067},18,[686,1069,1070],{"class":711},"  }\n",[686,1072,1074],{"class":688,"line":1073},19,[686,1075,783],{"emptyLinePlaceholder":782},[686,1077,1079,1082,1084,1087,1089,1091,1093,1095],{"class":688,"line":1078},20,[686,1080,1081],{"class":692},"  return",[686,1083,756],{"class":711},[686,1085,1086],{"class":743}," orderId",[686,1088,832],{"class":711},[686,1090,885],{"class":703},[686,1092,801],{"class":711},[686,1094,939],{"class":703},[686,1096,1097],{"class":711}," }\n",[686,1099,1101,1104],{"class":688,"line":1100},21,[686,1102,1103],{"class":711},"}",[686,1105,748],{"class":703},[510,1107,1108],{"v-slot:nextjs":512},[676,1109,1112],{"className":678,"code":1110,"filename":1111,"language":681,"meta":512,"style":512},"import { withEvlog, useLogger } from '@\u002Flib\u002Fevlog'\nimport { createError } from 'evlog'\n\nexport const POST = withEvlog(async (req) => {\n  const log = useLogger()\n  const { cartId } = await req.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return Response.json({ orderId: charge.id })\n})\n","app\u002Fapi\u002Fcheckout\u002Froute.ts",[683,1113,1114,1141,1160,1164,1194,1207,1231,1235,1257,1307,1311,1337,1371,1375,1393,1403,1413,1427,1441,1455,1461,1465,1470,1500],{"__ignoreMap":512},[686,1115,1116,1119,1121,1124,1126,1128,1130,1133,1135,1138],{"class":688,"line":689},[686,1117,1118],{"class":692},"import",[686,1120,756],{"class":711},[686,1122,1123],{"class":703}," withEvlog",[686,1125,854],{"class":711},[686,1127,740],{"class":703},[686,1129,762],{"class":711},[686,1131,1132],{"class":692}," from",[686,1134,1013],{"class":711},[686,1136,1137],{"class":1016},"@\u002Flib\u002Fevlog",[686,1139,1140],{"class":711},"'\n",[686,1142,1143,1145,1147,1149,1151,1153,1155,1158],{"class":688,"line":728},[686,1144,1118],{"class":692},[686,1146,756],{"class":711},[686,1148,983],{"class":703},[686,1150,762],{"class":711},[686,1152,1132],{"class":692},[686,1154,1013],{"class":711},[686,1156,1157],{"class":1016},"evlog",[686,1159,1140],{"class":711},[686,1161,1162],{"class":688,"line":751},[686,1163,783],{"emptyLinePlaceholder":782},[686,1165,1166,1168,1171,1174,1177,1179,1181,1183,1185,1188,1190,1192],{"class":688,"line":779},[686,1167,693],{"class":692},[686,1169,1170],{"class":707}," const",[686,1172,1173],{"class":703}," POST ",[686,1175,1176],{"class":711},"=",[686,1178,1123],{"class":699},[686,1180,704],{"class":703},[686,1182,708],{"class":707},[686,1184,712],{"class":711},[686,1186,1187],{"class":715},"req",[686,1189,719],{"class":711},[686,1191,722],{"class":707},[686,1193,725],{"class":711},[686,1195,1196,1198,1200,1202,1204],{"class":688,"line":786},[686,1197,731],{"class":707},[686,1199,734],{"class":703},[686,1201,737],{"class":711},[686,1203,740],{"class":699},[686,1205,1206],{"class":743},"()\n",[686,1208,1209,1211,1213,1215,1217,1219,1221,1224,1226,1229],{"class":688,"line":814},[686,1210,731],{"class":707},[686,1212,756],{"class":711},[686,1214,759],{"class":703},[686,1216,762],{"class":711},[686,1218,737],{"class":711},[686,1220,767],{"class":692},[686,1222,1223],{"class":703}," req",[686,1225,801],{"class":711},[686,1227,1228],{"class":699},"json",[686,1230,1206],{"class":743},[686,1232,1233],{"class":688,"line":875},[686,1234,783],{"emptyLinePlaceholder":782},[686,1236,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255],{"class":688,"line":880},[686,1238,731],{"class":707},[686,1240,791],{"class":703},[686,1242,737],{"class":711},[686,1244,767],{"class":692},[686,1246,798],{"class":703},[686,1248,801],{"class":711},[686,1250,804],{"class":699},[686,1252,704],{"class":743},[686,1254,809],{"class":703},[686,1256,748],{"class":743},[686,1258,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305],{"class":688,"line":911},[686,1260,817],{"class":703},[686,1262,801],{"class":711},[686,1264,822],{"class":699},[686,1266,704],{"class":743},[686,1268,827],{"class":711},[686,1270,791],{"class":743},[686,1272,832],{"class":711},[686,1274,756],{"class":711},[686,1276,837],{"class":743},[686,1278,832],{"class":711},[686,1280,791],{"class":703},[686,1282,801],{"class":711},[686,1284,846],{"class":703},[686,1286,801],{"class":711},[686,1288,851],{"class":703},[686,1290,854],{"class":711},[686,1292,857],{"class":743},[686,1294,832],{"class":711},[686,1296,791],{"class":703},[686,1298,801],{"class":711},[686,1300,866],{"class":703},[686,1302,762],{"class":711},[686,1304,762],{"class":711},[686,1306,748],{"class":743},[686,1308,1309],{"class":688,"line":948},[686,1310,783],{"emptyLinePlaceholder":782},[686,1312,1313,1315,1317,1319,1321,1323,1325,1327,1329,1331,1333,1335],{"class":688,"line":953},[686,1314,731],{"class":707},[686,1316,885],{"class":703},[686,1318,737],{"class":711},[686,1320,767],{"class":692},[686,1322,892],{"class":703},[686,1324,801],{"class":711},[686,1326,897],{"class":699},[686,1328,704],{"class":743},[686,1330,902],{"class":703},[686,1332,801],{"class":711},[686,1334,866],{"class":703},[686,1336,748],{"class":743},[686,1338,1339,1341,1343,1345,1347,1349,1351,1353,1355,1357,1359,1361,1363,1365,1367,1369],{"class":688,"line":977},[686,1340,817],{"class":703},[686,1342,801],{"class":711},[686,1344,822],{"class":699},[686,1346,704],{"class":743},[686,1348,827],{"class":711},[686,1350,892],{"class":743},[686,1352,832],{"class":711},[686,1354,756],{"class":711},[686,1356,930],{"class":743},[686,1358,832],{"class":711},[686,1360,885],{"class":703},[686,1362,801],{"class":711},[686,1364,939],{"class":703},[686,1366,762],{"class":711},[686,1368,762],{"class":711},[686,1370,748],{"class":743},[686,1372,1373],{"class":688,"line":990},[686,1374,783],{"emptyLinePlaceholder":782},[686,1376,1377,1379,1381,1383,1385,1387,1389,1391],{"class":688,"line":1005},[686,1378,956],{"class":692},[686,1380,712],{"class":743},[686,1382,961],{"class":711},[686,1384,897],{"class":703},[686,1386,801],{"class":711},[686,1388,968],{"class":703},[686,1390,971],{"class":743},[686,1392,974],{"class":711},[686,1394,1395,1397,1399,1401],{"class":688,"line":1025},[686,1396,980],{"class":692},[686,1398,983],{"class":699},[686,1400,704],{"class":743},[686,1402,974],{"class":711},[686,1404,1405,1407,1409,1411],{"class":688,"line":1042},[686,1406,993],{"class":743},[686,1408,832],{"class":711},[686,1410,999],{"class":998},[686,1412,1002],{"class":711},[686,1414,1415,1417,1419,1421,1423,1425],{"class":688,"line":1059},[686,1416,1008],{"class":743},[686,1418,832],{"class":711},[686,1420,1013],{"class":711},[686,1422,1017],{"class":1016},[686,1424,1020],{"class":711},[686,1426,1002],{"class":711},[686,1428,1429,1431,1433,1435,1437,1439],{"class":688,"line":1067},[686,1430,1028],{"class":743},[686,1432,832],{"class":711},[686,1434,885],{"class":703},[686,1436,801],{"class":711},[686,1438,1037],{"class":703},[686,1440,1002],{"class":711},[686,1442,1443,1445,1447,1449,1451,1453],{"class":688,"line":1073},[686,1444,1045],{"class":743},[686,1446,832],{"class":711},[686,1448,1013],{"class":711},[686,1450,1052],{"class":1016},[686,1452,1020],{"class":711},[686,1454,1002],{"class":711},[686,1456,1457,1459],{"class":688,"line":1078},[686,1458,1062],{"class":711},[686,1460,748],{"class":743},[686,1462,1463],{"class":688,"line":1100},[686,1464,1070],{"class":711},[686,1466,1468],{"class":688,"line":1467},22,[686,1469,783],{"emptyLinePlaceholder":782},[686,1471,1473,1475,1478,1480,1482,1484,1486,1488,1490,1492,1494,1496,1498],{"class":688,"line":1472},23,[686,1474,1081],{"class":692},[686,1476,1477],{"class":703}," Response",[686,1479,801],{"class":711},[686,1481,1228],{"class":699},[686,1483,704],{"class":743},[686,1485,827],{"class":711},[686,1487,1086],{"class":743},[686,1489,832],{"class":711},[686,1491,885],{"class":703},[686,1493,801],{"class":711},[686,1495,939],{"class":703},[686,1497,762],{"class":711},[686,1499,748],{"class":743},[686,1501,1503,1505],{"class":688,"line":1502},24,[686,1504,1103],{"class":711},[686,1506,748],{"class":703},[510,1508,1509],{"v-slot:sveltekit":512},[676,1510,1513],{"className":678,"code":1511,"filename":1512,"language":681,"meta":512,"style":512},"import { json } from '@sveltejs\u002Fkit'\nimport { createError } from 'evlog'\nimport { useLogger } from 'evlog\u002Fsveltekit'\nimport type { RequestHandler } from '.\u002F$types'\n\nexport const POST: RequestHandler = async ({ request }) => {\n  const log = useLogger()\n  const { cartId } = await request.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return json({ orderId: charge.id })\n}\n","src\u002Froutes\u002Fapi\u002Fcheckout\u002F+server.ts",[683,1514,1515,1535,1553,1572,1595,1599,1631,1643,1665,1669,1691,1741,1745,1771,1805,1809,1827,1837,1847,1861,1875,1889,1895,1899,1903,1928],{"__ignoreMap":512},[686,1516,1517,1519,1521,1524,1526,1528,1530,1533],{"class":688,"line":689},[686,1518,1118],{"class":692},[686,1520,756],{"class":711},[686,1522,1523],{"class":703}," json",[686,1525,762],{"class":711},[686,1527,1132],{"class":692},[686,1529,1013],{"class":711},[686,1531,1532],{"class":1016},"@sveltejs\u002Fkit",[686,1534,1140],{"class":711},[686,1536,1537,1539,1541,1543,1545,1547,1549,1551],{"class":688,"line":728},[686,1538,1118],{"class":692},[686,1540,756],{"class":711},[686,1542,983],{"class":703},[686,1544,762],{"class":711},[686,1546,1132],{"class":692},[686,1548,1013],{"class":711},[686,1550,1157],{"class":1016},[686,1552,1140],{"class":711},[686,1554,1555,1557,1559,1561,1563,1565,1567,1570],{"class":688,"line":751},[686,1556,1118],{"class":692},[686,1558,756],{"class":711},[686,1560,740],{"class":703},[686,1562,762],{"class":711},[686,1564,1132],{"class":692},[686,1566,1013],{"class":711},[686,1568,1569],{"class":1016},"evlog\u002Fsveltekit",[686,1571,1140],{"class":711},[686,1573,1574,1576,1579,1581,1584,1586,1588,1590,1593],{"class":688,"line":779},[686,1575,1118],{"class":692},[686,1577,1578],{"class":692}," type",[686,1580,756],{"class":711},[686,1582,1583],{"class":703}," RequestHandler",[686,1585,762],{"class":711},[686,1587,1132],{"class":692},[686,1589,1013],{"class":711},[686,1591,1592],{"class":1016},".\u002F$types",[686,1594,1140],{"class":711},[686,1596,1597],{"class":688,"line":786},[686,1598,783],{"emptyLinePlaceholder":782},[686,1600,1601,1603,1605,1608,1610,1613,1615,1618,1621,1624,1627,1629],{"class":688,"line":814},[686,1602,693],{"class":692},[686,1604,1170],{"class":707},[686,1606,1607],{"class":703}," POST",[686,1609,832],{"class":711},[686,1611,1583],{"class":1612},"sBMFI",[686,1614,737],{"class":711},[686,1616,1617],{"class":707}," async",[686,1619,1620],{"class":711}," ({",[686,1622,1623],{"class":715}," request",[686,1625,1626],{"class":711}," })",[686,1628,722],{"class":707},[686,1630,725],{"class":711},[686,1632,1633,1635,1637,1639,1641],{"class":688,"line":875},[686,1634,731],{"class":707},[686,1636,734],{"class":703},[686,1638,737],{"class":711},[686,1640,740],{"class":699},[686,1642,1206],{"class":743},[686,1644,1645,1647,1649,1651,1653,1655,1657,1659,1661,1663],{"class":688,"line":880},[686,1646,731],{"class":707},[686,1648,756],{"class":711},[686,1650,759],{"class":703},[686,1652,762],{"class":711},[686,1654,737],{"class":711},[686,1656,767],{"class":692},[686,1658,1623],{"class":703},[686,1660,801],{"class":711},[686,1662,1228],{"class":699},[686,1664,1206],{"class":743},[686,1666,1667],{"class":688,"line":911},[686,1668,783],{"emptyLinePlaceholder":782},[686,1670,1671,1673,1675,1677,1679,1681,1683,1685,1687,1689],{"class":688,"line":948},[686,1672,731],{"class":707},[686,1674,791],{"class":703},[686,1676,737],{"class":711},[686,1678,767],{"class":692},[686,1680,798],{"class":703},[686,1682,801],{"class":711},[686,1684,804],{"class":699},[686,1686,704],{"class":743},[686,1688,809],{"class":703},[686,1690,748],{"class":743},[686,1692,1693,1695,1697,1699,1701,1703,1705,1707,1709,1711,1713,1715,1717,1719,1721,1723,1725,1727,1729,1731,1733,1735,1737,1739],{"class":688,"line":953},[686,1694,817],{"class":703},[686,1696,801],{"class":711},[686,1698,822],{"class":699},[686,1700,704],{"class":743},[686,1702,827],{"class":711},[686,1704,791],{"class":743},[686,1706,832],{"class":711},[686,1708,756],{"class":711},[686,1710,837],{"class":743},[686,1712,832],{"class":711},[686,1714,791],{"class":703},[686,1716,801],{"class":711},[686,1718,846],{"class":703},[686,1720,801],{"class":711},[686,1722,851],{"class":703},[686,1724,854],{"class":711},[686,1726,857],{"class":743},[686,1728,832],{"class":711},[686,1730,791],{"class":703},[686,1732,801],{"class":711},[686,1734,866],{"class":703},[686,1736,762],{"class":711},[686,1738,762],{"class":711},[686,1740,748],{"class":743},[686,1742,1743],{"class":688,"line":977},[686,1744,783],{"emptyLinePlaceholder":782},[686,1746,1747,1749,1751,1753,1755,1757,1759,1761,1763,1765,1767,1769],{"class":688,"line":990},[686,1748,731],{"class":707},[686,1750,885],{"class":703},[686,1752,737],{"class":711},[686,1754,767],{"class":692},[686,1756,892],{"class":703},[686,1758,801],{"class":711},[686,1760,897],{"class":699},[686,1762,704],{"class":743},[686,1764,902],{"class":703},[686,1766,801],{"class":711},[686,1768,866],{"class":703},[686,1770,748],{"class":743},[686,1772,1773,1775,1777,1779,1781,1783,1785,1787,1789,1791,1793,1795,1797,1799,1801,1803],{"class":688,"line":1005},[686,1774,817],{"class":703},[686,1776,801],{"class":711},[686,1778,822],{"class":699},[686,1780,704],{"class":743},[686,1782,827],{"class":711},[686,1784,892],{"class":743},[686,1786,832],{"class":711},[686,1788,756],{"class":711},[686,1790,930],{"class":743},[686,1792,832],{"class":711},[686,1794,885],{"class":703},[686,1796,801],{"class":711},[686,1798,939],{"class":703},[686,1800,762],{"class":711},[686,1802,762],{"class":711},[686,1804,748],{"class":743},[686,1806,1807],{"class":688,"line":1025},[686,1808,783],{"emptyLinePlaceholder":782},[686,1810,1811,1813,1815,1817,1819,1821,1823,1825],{"class":688,"line":1042},[686,1812,956],{"class":692},[686,1814,712],{"class":743},[686,1816,961],{"class":711},[686,1818,897],{"class":703},[686,1820,801],{"class":711},[686,1822,968],{"class":703},[686,1824,971],{"class":743},[686,1826,974],{"class":711},[686,1828,1829,1831,1833,1835],{"class":688,"line":1059},[686,1830,980],{"class":692},[686,1832,983],{"class":699},[686,1834,704],{"class":743},[686,1836,974],{"class":711},[686,1838,1839,1841,1843,1845],{"class":688,"line":1067},[686,1840,993],{"class":743},[686,1842,832],{"class":711},[686,1844,999],{"class":998},[686,1846,1002],{"class":711},[686,1848,1849,1851,1853,1855,1857,1859],{"class":688,"line":1073},[686,1850,1008],{"class":743},[686,1852,832],{"class":711},[686,1854,1013],{"class":711},[686,1856,1017],{"class":1016},[686,1858,1020],{"class":711},[686,1860,1002],{"class":711},[686,1862,1863,1865,1867,1869,1871,1873],{"class":688,"line":1078},[686,1864,1028],{"class":743},[686,1866,832],{"class":711},[686,1868,885],{"class":703},[686,1870,801],{"class":711},[686,1872,1037],{"class":703},[686,1874,1002],{"class":711},[686,1876,1877,1879,1881,1883,1885,1887],{"class":688,"line":1100},[686,1878,1045],{"class":743},[686,1880,832],{"class":711},[686,1882,1013],{"class":711},[686,1884,1052],{"class":1016},[686,1886,1020],{"class":711},[686,1888,1002],{"class":711},[686,1890,1891,1893],{"class":688,"line":1467},[686,1892,1062],{"class":711},[686,1894,748],{"class":743},[686,1896,1897],{"class":688,"line":1472},[686,1898,1070],{"class":711},[686,1900,1901],{"class":688,"line":1502},[686,1902,783],{"emptyLinePlaceholder":782},[686,1904,1906,1908,1910,1912,1914,1916,1918,1920,1922,1924,1926],{"class":688,"line":1905},25,[686,1907,1081],{"class":692},[686,1909,1523],{"class":699},[686,1911,704],{"class":743},[686,1913,827],{"class":711},[686,1915,1086],{"class":743},[686,1917,832],{"class":711},[686,1919,885],{"class":703},[686,1921,801],{"class":711},[686,1923,939],{"class":703},[686,1925,762],{"class":711},[686,1927,748],{"class":743},[686,1929,1931],{"class":688,"line":1930},26,[686,1932,1933],{"class":711},"}\n",[510,1935,1936],{"v-slot:nitro":512},[676,1937,1940],{"className":678,"code":1938,"filename":1939,"language":681,"meta":512,"style":512},"import { defineHandler, readBody } from 'nitro\u002Fh3'\nimport { useLogger, createError } from 'evlog\u002Fnitro\u002Fv3'\n\nexport default defineHandler(async (event) => {\n  const log = useLogger(event)\n  const { cartId } = await readBody(event)\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return { orderId: charge.id }\n})\n","routes\u002Fapi\u002Fcheckout.post.ts",[683,1941,1942,1966,1989,1993,2015,2031,2053,2057,2079,2129,2133,2159,2193,2197,2215,2225,2235,2249,2263,2277,2283,2287,2291,2309],{"__ignoreMap":512},[686,1943,1944,1946,1948,1951,1953,1955,1957,1959,1961,1964],{"class":688,"line":689},[686,1945,1118],{"class":692},[686,1947,756],{"class":711},[686,1949,1950],{"class":703}," defineHandler",[686,1952,854],{"class":711},[686,1954,770],{"class":703},[686,1956,762],{"class":711},[686,1958,1132],{"class":692},[686,1960,1013],{"class":711},[686,1962,1963],{"class":1016},"nitro\u002Fh3",[686,1965,1140],{"class":711},[686,1967,1968,1970,1972,1974,1976,1978,1980,1982,1984,1987],{"class":688,"line":728},[686,1969,1118],{"class":692},[686,1971,756],{"class":711},[686,1973,740],{"class":703},[686,1975,854],{"class":711},[686,1977,983],{"class":703},[686,1979,762],{"class":711},[686,1981,1132],{"class":692},[686,1983,1013],{"class":711},[686,1985,1986],{"class":1016},"evlog\u002Fnitro\u002Fv3",[686,1988,1140],{"class":711},[686,1990,1991],{"class":688,"line":751},[686,1992,783],{"emptyLinePlaceholder":782},[686,1994,1995,1997,1999,2001,2003,2005,2007,2009,2011,2013],{"class":688,"line":779},[686,1996,693],{"class":692},[686,1998,696],{"class":692},[686,2000,1950],{"class":699},[686,2002,704],{"class":703},[686,2004,708],{"class":707},[686,2006,712],{"class":711},[686,2008,716],{"class":715},[686,2010,719],{"class":711},[686,2012,722],{"class":707},[686,2014,725],{"class":711},[686,2016,2017,2019,2021,2023,2025,2027,2029],{"class":688,"line":786},[686,2018,731],{"class":707},[686,2020,734],{"class":703},[686,2022,737],{"class":711},[686,2024,740],{"class":699},[686,2026,704],{"class":743},[686,2028,716],{"class":703},[686,2030,748],{"class":743},[686,2032,2033,2035,2037,2039,2041,2043,2045,2047,2049,2051],{"class":688,"line":814},[686,2034,731],{"class":707},[686,2036,756],{"class":711},[686,2038,759],{"class":703},[686,2040,762],{"class":711},[686,2042,737],{"class":711},[686,2044,767],{"class":692},[686,2046,770],{"class":699},[686,2048,704],{"class":743},[686,2050,716],{"class":703},[686,2052,748],{"class":743},[686,2054,2055],{"class":688,"line":875},[686,2056,783],{"emptyLinePlaceholder":782},[686,2058,2059,2061,2063,2065,2067,2069,2071,2073,2075,2077],{"class":688,"line":880},[686,2060,731],{"class":707},[686,2062,791],{"class":703},[686,2064,737],{"class":711},[686,2066,767],{"class":692},[686,2068,798],{"class":703},[686,2070,801],{"class":711},[686,2072,804],{"class":699},[686,2074,704],{"class":743},[686,2076,809],{"class":703},[686,2078,748],{"class":743},[686,2080,2081,2083,2085,2087,2089,2091,2093,2095,2097,2099,2101,2103,2105,2107,2109,2111,2113,2115,2117,2119,2121,2123,2125,2127],{"class":688,"line":911},[686,2082,817],{"class":703},[686,2084,801],{"class":711},[686,2086,822],{"class":699},[686,2088,704],{"class":743},[686,2090,827],{"class":711},[686,2092,791],{"class":743},[686,2094,832],{"class":711},[686,2096,756],{"class":711},[686,2098,837],{"class":743},[686,2100,832],{"class":711},[686,2102,791],{"class":703},[686,2104,801],{"class":711},[686,2106,846],{"class":703},[686,2108,801],{"class":711},[686,2110,851],{"class":703},[686,2112,854],{"class":711},[686,2114,857],{"class":743},[686,2116,832],{"class":711},[686,2118,791],{"class":703},[686,2120,801],{"class":711},[686,2122,866],{"class":703},[686,2124,762],{"class":711},[686,2126,762],{"class":711},[686,2128,748],{"class":743},[686,2130,2131],{"class":688,"line":948},[686,2132,783],{"emptyLinePlaceholder":782},[686,2134,2135,2137,2139,2141,2143,2145,2147,2149,2151,2153,2155,2157],{"class":688,"line":953},[686,2136,731],{"class":707},[686,2138,885],{"class":703},[686,2140,737],{"class":711},[686,2142,767],{"class":692},[686,2144,892],{"class":703},[686,2146,801],{"class":711},[686,2148,897],{"class":699},[686,2150,704],{"class":743},[686,2152,902],{"class":703},[686,2154,801],{"class":711},[686,2156,866],{"class":703},[686,2158,748],{"class":743},[686,2160,2161,2163,2165,2167,2169,2171,2173,2175,2177,2179,2181,2183,2185,2187,2189,2191],{"class":688,"line":977},[686,2162,817],{"class":703},[686,2164,801],{"class":711},[686,2166,822],{"class":699},[686,2168,704],{"class":743},[686,2170,827],{"class":711},[686,2172,892],{"class":743},[686,2174,832],{"class":711},[686,2176,756],{"class":711},[686,2178,930],{"class":743},[686,2180,832],{"class":711},[686,2182,885],{"class":703},[686,2184,801],{"class":711},[686,2186,939],{"class":703},[686,2188,762],{"class":711},[686,2190,762],{"class":711},[686,2192,748],{"class":743},[686,2194,2195],{"class":688,"line":990},[686,2196,783],{"emptyLinePlaceholder":782},[686,2198,2199,2201,2203,2205,2207,2209,2211,2213],{"class":688,"line":1005},[686,2200,956],{"class":692},[686,2202,712],{"class":743},[686,2204,961],{"class":711},[686,2206,897],{"class":703},[686,2208,801],{"class":711},[686,2210,968],{"class":703},[686,2212,971],{"class":743},[686,2214,974],{"class":711},[686,2216,2217,2219,2221,2223],{"class":688,"line":1025},[686,2218,980],{"class":692},[686,2220,983],{"class":699},[686,2222,704],{"class":743},[686,2224,974],{"class":711},[686,2226,2227,2229,2231,2233],{"class":688,"line":1042},[686,2228,993],{"class":743},[686,2230,832],{"class":711},[686,2232,999],{"class":998},[686,2234,1002],{"class":711},[686,2236,2237,2239,2241,2243,2245,2247],{"class":688,"line":1059},[686,2238,1008],{"class":743},[686,2240,832],{"class":711},[686,2242,1013],{"class":711},[686,2244,1017],{"class":1016},[686,2246,1020],{"class":711},[686,2248,1002],{"class":711},[686,2250,2251,2253,2255,2257,2259,2261],{"class":688,"line":1067},[686,2252,1028],{"class":743},[686,2254,832],{"class":711},[686,2256,885],{"class":703},[686,2258,801],{"class":711},[686,2260,1037],{"class":703},[686,2262,1002],{"class":711},[686,2264,2265,2267,2269,2271,2273,2275],{"class":688,"line":1073},[686,2266,1045],{"class":743},[686,2268,832],{"class":711},[686,2270,1013],{"class":711},[686,2272,1052],{"class":1016},[686,2274,1020],{"class":711},[686,2276,1002],{"class":711},[686,2278,2279,2281],{"class":688,"line":1078},[686,2280,1062],{"class":711},[686,2282,748],{"class":743},[686,2284,2285],{"class":688,"line":1100},[686,2286,1070],{"class":711},[686,2288,2289],{"class":688,"line":1467},[686,2290,783],{"emptyLinePlaceholder":782},[686,2292,2293,2295,2297,2299,2301,2303,2305,2307],{"class":688,"line":1472},[686,2294,1081],{"class":692},[686,2296,756],{"class":711},[686,2298,1086],{"class":743},[686,2300,832],{"class":711},[686,2302,885],{"class":703},[686,2304,801],{"class":711},[686,2306,939],{"class":703},[686,2308,1097],{"class":711},[686,2310,2311,2313],{"class":688,"line":1502},[686,2312,1103],{"class":711},[686,2314,748],{"class":703},[510,2316,2317],{"v-slot:tanstack-start":512},[676,2318,2321],{"className":678,"code":2319,"filename":2320,"language":681,"meta":512,"style":512},"import { createFileRoute } from '@tanstack\u002Freact-router'\nimport { useRequest } from 'nitro\u002Fcontext'\nimport { createError } from 'evlog'\nimport type { RequestLogger } from 'evlog'\n\nexport const Route = createFileRoute('\u002Fapi\u002Fcheckout')({\n  server: {\n    handlers: {\n      POST: async ({ request }) => {\n        const req = useRequest()\n        const log = req.context.log as RequestLogger\n        const { cartId } = await request.json()\n\n        const cart = await db.findCart(cartId)\n        log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n        const charge = await stripe.charge(cart.total)\n        log.set({ stripe: { chargeId: charge.id } })\n\n        if (!charge.success) {\n          throw createError({\n            status: 402,\n            message: 'Payment failed',\n            why: charge.decline_reason,\n            fix: 'Try a different payment method',\n          })\n        }\n\n        return Response.json({ orderId: charge.id })\n      },\n    },\n  },\n})\n","src\u002Froutes\u002Fapi\u002Fcheckout.ts",[683,2322,2323,2343,2363,2381,2402,2406,2433,2442,2451,2470,2483,2509,2531,2535,2557,2608,2612,2638,2672,2676,2695,2706,2717,2732,2747,2762,2769,2775,2780,2810,2816,2822,2828],{"__ignoreMap":512},[686,2324,2325,2327,2329,2332,2334,2336,2338,2341],{"class":688,"line":689},[686,2326,1118],{"class":692},[686,2328,756],{"class":711},[686,2330,2331],{"class":703}," createFileRoute",[686,2333,762],{"class":711},[686,2335,1132],{"class":692},[686,2337,1013],{"class":711},[686,2339,2340],{"class":1016},"@tanstack\u002Freact-router",[686,2342,1140],{"class":711},[686,2344,2345,2347,2349,2352,2354,2356,2358,2361],{"class":688,"line":728},[686,2346,1118],{"class":692},[686,2348,756],{"class":711},[686,2350,2351],{"class":703}," useRequest",[686,2353,762],{"class":711},[686,2355,1132],{"class":692},[686,2357,1013],{"class":711},[686,2359,2360],{"class":1016},"nitro\u002Fcontext",[686,2362,1140],{"class":711},[686,2364,2365,2367,2369,2371,2373,2375,2377,2379],{"class":688,"line":751},[686,2366,1118],{"class":692},[686,2368,756],{"class":711},[686,2370,983],{"class":703},[686,2372,762],{"class":711},[686,2374,1132],{"class":692},[686,2376,1013],{"class":711},[686,2378,1157],{"class":1016},[686,2380,1140],{"class":711},[686,2382,2383,2385,2387,2389,2392,2394,2396,2398,2400],{"class":688,"line":779},[686,2384,1118],{"class":692},[686,2386,1578],{"class":692},[686,2388,756],{"class":711},[686,2390,2391],{"class":703}," RequestLogger",[686,2393,762],{"class":711},[686,2395,1132],{"class":692},[686,2397,1013],{"class":711},[686,2399,1157],{"class":1016},[686,2401,1140],{"class":711},[686,2403,2404],{"class":688,"line":786},[686,2405,783],{"emptyLinePlaceholder":782},[686,2407,2408,2410,2412,2415,2417,2419,2421,2423,2426,2428,2431],{"class":688,"line":814},[686,2409,693],{"class":692},[686,2411,1170],{"class":707},[686,2413,2414],{"class":703}," Route ",[686,2416,1176],{"class":711},[686,2418,2331],{"class":699},[686,2420,704],{"class":703},[686,2422,1020],{"class":711},[686,2424,2425],{"class":1016},"\u002Fapi\u002Fcheckout",[686,2427,1020],{"class":711},[686,2429,2430],{"class":703},")(",[686,2432,974],{"class":711},[686,2434,2435,2438,2440],{"class":688,"line":875},[686,2436,2437],{"class":743},"  server",[686,2439,832],{"class":711},[686,2441,725],{"class":711},[686,2443,2444,2447,2449],{"class":688,"line":880},[686,2445,2446],{"class":743},"    handlers",[686,2448,832],{"class":711},[686,2450,725],{"class":711},[686,2452,2453,2456,2458,2460,2462,2464,2466,2468],{"class":688,"line":911},[686,2454,2455],{"class":699},"      POST",[686,2457,832],{"class":711},[686,2459,1617],{"class":707},[686,2461,1620],{"class":711},[686,2463,1623],{"class":715},[686,2465,1626],{"class":711},[686,2467,722],{"class":707},[686,2469,725],{"class":711},[686,2471,2472,2475,2477,2479,2481],{"class":688,"line":948},[686,2473,2474],{"class":707},"        const",[686,2476,1223],{"class":703},[686,2478,737],{"class":711},[686,2480,2351],{"class":699},[686,2482,1206],{"class":743},[686,2484,2485,2487,2489,2491,2493,2495,2498,2500,2503,2506],{"class":688,"line":953},[686,2486,2474],{"class":707},[686,2488,734],{"class":703},[686,2490,737],{"class":711},[686,2492,1223],{"class":703},[686,2494,801],{"class":711},[686,2496,2497],{"class":703},"context",[686,2499,801],{"class":711},[686,2501,2502],{"class":703},"log",[686,2504,2505],{"class":692}," as",[686,2507,2508],{"class":1612}," RequestLogger\n",[686,2510,2511,2513,2515,2517,2519,2521,2523,2525,2527,2529],{"class":688,"line":977},[686,2512,2474],{"class":707},[686,2514,756],{"class":711},[686,2516,759],{"class":703},[686,2518,762],{"class":711},[686,2520,737],{"class":711},[686,2522,767],{"class":692},[686,2524,1623],{"class":703},[686,2526,801],{"class":711},[686,2528,1228],{"class":699},[686,2530,1206],{"class":743},[686,2532,2533],{"class":688,"line":990},[686,2534,783],{"emptyLinePlaceholder":782},[686,2536,2537,2539,2541,2543,2545,2547,2549,2551,2553,2555],{"class":688,"line":1005},[686,2538,2474],{"class":707},[686,2540,791],{"class":703},[686,2542,737],{"class":711},[686,2544,767],{"class":692},[686,2546,798],{"class":703},[686,2548,801],{"class":711},[686,2550,804],{"class":699},[686,2552,704],{"class":743},[686,2554,809],{"class":703},[686,2556,748],{"class":743},[686,2558,2559,2562,2564,2566,2568,2570,2572,2574,2576,2578,2580,2582,2584,2586,2588,2590,2592,2594,2596,2598,2600,2602,2604,2606],{"class":688,"line":1025},[686,2560,2561],{"class":703},"        log",[686,2563,801],{"class":711},[686,2565,822],{"class":699},[686,2567,704],{"class":743},[686,2569,827],{"class":711},[686,2571,791],{"class":743},[686,2573,832],{"class":711},[686,2575,756],{"class":711},[686,2577,837],{"class":743},[686,2579,832],{"class":711},[686,2581,791],{"class":703},[686,2583,801],{"class":711},[686,2585,846],{"class":703},[686,2587,801],{"class":711},[686,2589,851],{"class":703},[686,2591,854],{"class":711},[686,2593,857],{"class":743},[686,2595,832],{"class":711},[686,2597,791],{"class":703},[686,2599,801],{"class":711},[686,2601,866],{"class":703},[686,2603,762],{"class":711},[686,2605,762],{"class":711},[686,2607,748],{"class":743},[686,2609,2610],{"class":688,"line":1042},[686,2611,783],{"emptyLinePlaceholder":782},[686,2613,2614,2616,2618,2620,2622,2624,2626,2628,2630,2632,2634,2636],{"class":688,"line":1059},[686,2615,2474],{"class":707},[686,2617,885],{"class":703},[686,2619,737],{"class":711},[686,2621,767],{"class":692},[686,2623,892],{"class":703},[686,2625,801],{"class":711},[686,2627,897],{"class":699},[686,2629,704],{"class":743},[686,2631,902],{"class":703},[686,2633,801],{"class":711},[686,2635,866],{"class":703},[686,2637,748],{"class":743},[686,2639,2640,2642,2644,2646,2648,2650,2652,2654,2656,2658,2660,2662,2664,2666,2668,2670],{"class":688,"line":1067},[686,2641,2561],{"class":703},[686,2643,801],{"class":711},[686,2645,822],{"class":699},[686,2647,704],{"class":743},[686,2649,827],{"class":711},[686,2651,892],{"class":743},[686,2653,832],{"class":711},[686,2655,756],{"class":711},[686,2657,930],{"class":743},[686,2659,832],{"class":711},[686,2661,885],{"class":703},[686,2663,801],{"class":711},[686,2665,939],{"class":703},[686,2667,762],{"class":711},[686,2669,762],{"class":711},[686,2671,748],{"class":743},[686,2673,2674],{"class":688,"line":1073},[686,2675,783],{"emptyLinePlaceholder":782},[686,2677,2678,2681,2683,2685,2687,2689,2691,2693],{"class":688,"line":1078},[686,2679,2680],{"class":692},"        if",[686,2682,712],{"class":743},[686,2684,961],{"class":711},[686,2686,897],{"class":703},[686,2688,801],{"class":711},[686,2690,968],{"class":703},[686,2692,971],{"class":743},[686,2694,974],{"class":711},[686,2696,2697,2700,2702,2704],{"class":688,"line":1100},[686,2698,2699],{"class":692},"          throw",[686,2701,983],{"class":699},[686,2703,704],{"class":743},[686,2705,974],{"class":711},[686,2707,2708,2711,2713,2715],{"class":688,"line":1467},[686,2709,2710],{"class":743},"            status",[686,2712,832],{"class":711},[686,2714,999],{"class":998},[686,2716,1002],{"class":711},[686,2718,2719,2722,2724,2726,2728,2730],{"class":688,"line":1472},[686,2720,2721],{"class":743},"            message",[686,2723,832],{"class":711},[686,2725,1013],{"class":711},[686,2727,1017],{"class":1016},[686,2729,1020],{"class":711},[686,2731,1002],{"class":711},[686,2733,2734,2737,2739,2741,2743,2745],{"class":688,"line":1502},[686,2735,2736],{"class":743},"            why",[686,2738,832],{"class":711},[686,2740,885],{"class":703},[686,2742,801],{"class":711},[686,2744,1037],{"class":703},[686,2746,1002],{"class":711},[686,2748,2749,2752,2754,2756,2758,2760],{"class":688,"line":1905},[686,2750,2751],{"class":743},"            fix",[686,2753,832],{"class":711},[686,2755,1013],{"class":711},[686,2757,1052],{"class":1016},[686,2759,1020],{"class":711},[686,2761,1002],{"class":711},[686,2763,2764,2767],{"class":688,"line":1930},[686,2765,2766],{"class":711},"          }",[686,2768,748],{"class":743},[686,2770,2772],{"class":688,"line":2771},27,[686,2773,2774],{"class":711},"        }\n",[686,2776,2778],{"class":688,"line":2777},28,[686,2779,783],{"emptyLinePlaceholder":782},[686,2781,2783,2786,2788,2790,2792,2794,2796,2798,2800,2802,2804,2806,2808],{"class":688,"line":2782},29,[686,2784,2785],{"class":692},"        return",[686,2787,1477],{"class":703},[686,2789,801],{"class":711},[686,2791,1228],{"class":699},[686,2793,704],{"class":743},[686,2795,827],{"class":711},[686,2797,1086],{"class":743},[686,2799,832],{"class":711},[686,2801,885],{"class":703},[686,2803,801],{"class":711},[686,2805,939],{"class":703},[686,2807,762],{"class":711},[686,2809,748],{"class":743},[686,2811,2813],{"class":688,"line":2812},30,[686,2814,2815],{"class":711},"      },\n",[686,2817,2819],{"class":688,"line":2818},31,[686,2820,2821],{"class":711},"    },\n",[686,2823,2825],{"class":688,"line":2824},32,[686,2826,2827],{"class":711},"  },\n",[686,2829,2831,2833],{"class":688,"line":2830},33,[686,2832,1103],{"class":711},[686,2834,748],{"class":703},[510,2836,2837],{"v-slot:react-router":512},[676,2838,2841],{"className":678,"code":2839,"filename":2840,"language":681,"meta":512,"style":512},"import { loggerContext } from 'evlog\u002Freact-router'\nimport { createError } from 'evlog'\n\nexport async function action({ request, context }: Route.ActionArgs) {\n  const log = context.get(loggerContext)\n  const { cartId } = await request.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  if (!charge.success) {\n    throw createError({\n      status: 402,\n      message: 'Payment failed',\n      why: charge.decline_reason,\n      fix: 'Try a different payment method',\n    })\n  }\n\n  return Response.json({ orderId: charge.id })\n}\n","app\u002Froutes\u002Fapi.checkout.tsx",[683,2842,2843,2863,2881,2885,2922,2944,2966,2970,2992,3042,3046,3072,3106,3110,3128,3138,3148,3162,3176,3190,3196,3200,3204,3232],{"__ignoreMap":512},[686,2844,2845,2847,2849,2852,2854,2856,2858,2861],{"class":688,"line":689},[686,2846,1118],{"class":692},[686,2848,756],{"class":711},[686,2850,2851],{"class":703}," loggerContext",[686,2853,762],{"class":711},[686,2855,1132],{"class":692},[686,2857,1013],{"class":711},[686,2859,2860],{"class":1016},"evlog\u002Freact-router",[686,2862,1140],{"class":711},[686,2864,2865,2867,2869,2871,2873,2875,2877,2879],{"class":688,"line":728},[686,2866,1118],{"class":692},[686,2868,756],{"class":711},[686,2870,983],{"class":703},[686,2872,762],{"class":711},[686,2874,1132],{"class":692},[686,2876,1013],{"class":711},[686,2878,1157],{"class":1016},[686,2880,1140],{"class":711},[686,2882,2883],{"class":688,"line":751},[686,2884,783],{"emptyLinePlaceholder":782},[686,2886,2887,2889,2891,2894,2897,2900,2902,2904,2907,2910,2913,2915,2918,2920],{"class":688,"line":779},[686,2888,693],{"class":692},[686,2890,1617],{"class":707},[686,2892,2893],{"class":707}," function",[686,2895,2896],{"class":699}," action",[686,2898,2899],{"class":711},"({",[686,2901,1623],{"class":715},[686,2903,854],{"class":711},[686,2905,2906],{"class":715}," context",[686,2908,2909],{"class":711}," }:",[686,2911,2912],{"class":1612}," Route",[686,2914,801],{"class":711},[686,2916,2917],{"class":1612},"ActionArgs",[686,2919,719],{"class":711},[686,2921,725],{"class":711},[686,2923,2924,2926,2928,2930,2932,2934,2937,2939,2942],{"class":688,"line":786},[686,2925,731],{"class":707},[686,2927,734],{"class":703},[686,2929,737],{"class":711},[686,2931,2906],{"class":703},[686,2933,801],{"class":711},[686,2935,2936],{"class":699},"get",[686,2938,704],{"class":743},[686,2940,2941],{"class":703},"loggerContext",[686,2943,748],{"class":743},[686,2945,2946,2948,2950,2952,2954,2956,2958,2960,2962,2964],{"class":688,"line":814},[686,2947,731],{"class":707},[686,2949,756],{"class":711},[686,2951,759],{"class":703},[686,2953,762],{"class":711},[686,2955,737],{"class":711},[686,2957,767],{"class":692},[686,2959,1623],{"class":703},[686,2961,801],{"class":711},[686,2963,1228],{"class":699},[686,2965,1206],{"class":743},[686,2967,2968],{"class":688,"line":875},[686,2969,783],{"emptyLinePlaceholder":782},[686,2971,2972,2974,2976,2978,2980,2982,2984,2986,2988,2990],{"class":688,"line":880},[686,2973,731],{"class":707},[686,2975,791],{"class":703},[686,2977,737],{"class":711},[686,2979,767],{"class":692},[686,2981,798],{"class":703},[686,2983,801],{"class":711},[686,2985,804],{"class":699},[686,2987,704],{"class":743},[686,2989,809],{"class":703},[686,2991,748],{"class":743},[686,2993,2994,2996,2998,3000,3002,3004,3006,3008,3010,3012,3014,3016,3018,3020,3022,3024,3026,3028,3030,3032,3034,3036,3038,3040],{"class":688,"line":911},[686,2995,817],{"class":703},[686,2997,801],{"class":711},[686,2999,822],{"class":699},[686,3001,704],{"class":743},[686,3003,827],{"class":711},[686,3005,791],{"class":743},[686,3007,832],{"class":711},[686,3009,756],{"class":711},[686,3011,837],{"class":743},[686,3013,832],{"class":711},[686,3015,791],{"class":703},[686,3017,801],{"class":711},[686,3019,846],{"class":703},[686,3021,801],{"class":711},[686,3023,851],{"class":703},[686,3025,854],{"class":711},[686,3027,857],{"class":743},[686,3029,832],{"class":711},[686,3031,791],{"class":703},[686,3033,801],{"class":711},[686,3035,866],{"class":703},[686,3037,762],{"class":711},[686,3039,762],{"class":711},[686,3041,748],{"class":743},[686,3043,3044],{"class":688,"line":948},[686,3045,783],{"emptyLinePlaceholder":782},[686,3047,3048,3050,3052,3054,3056,3058,3060,3062,3064,3066,3068,3070],{"class":688,"line":953},[686,3049,731],{"class":707},[686,3051,885],{"class":703},[686,3053,737],{"class":711},[686,3055,767],{"class":692},[686,3057,892],{"class":703},[686,3059,801],{"class":711},[686,3061,897],{"class":699},[686,3063,704],{"class":743},[686,3065,902],{"class":703},[686,3067,801],{"class":711},[686,3069,866],{"class":703},[686,3071,748],{"class":743},[686,3073,3074,3076,3078,3080,3082,3084,3086,3088,3090,3092,3094,3096,3098,3100,3102,3104],{"class":688,"line":977},[686,3075,817],{"class":703},[686,3077,801],{"class":711},[686,3079,822],{"class":699},[686,3081,704],{"class":743},[686,3083,827],{"class":711},[686,3085,892],{"class":743},[686,3087,832],{"class":711},[686,3089,756],{"class":711},[686,3091,930],{"class":743},[686,3093,832],{"class":711},[686,3095,885],{"class":703},[686,3097,801],{"class":711},[686,3099,939],{"class":703},[686,3101,762],{"class":711},[686,3103,762],{"class":711},[686,3105,748],{"class":743},[686,3107,3108],{"class":688,"line":990},[686,3109,783],{"emptyLinePlaceholder":782},[686,3111,3112,3114,3116,3118,3120,3122,3124,3126],{"class":688,"line":1005},[686,3113,956],{"class":692},[686,3115,712],{"class":743},[686,3117,961],{"class":711},[686,3119,897],{"class":703},[686,3121,801],{"class":711},[686,3123,968],{"class":703},[686,3125,971],{"class":743},[686,3127,974],{"class":711},[686,3129,3130,3132,3134,3136],{"class":688,"line":1025},[686,3131,980],{"class":692},[686,3133,983],{"class":699},[686,3135,704],{"class":743},[686,3137,974],{"class":711},[686,3139,3140,3142,3144,3146],{"class":688,"line":1042},[686,3141,993],{"class":743},[686,3143,832],{"class":711},[686,3145,999],{"class":998},[686,3147,1002],{"class":711},[686,3149,3150,3152,3154,3156,3158,3160],{"class":688,"line":1059},[686,3151,1008],{"class":743},[686,3153,832],{"class":711},[686,3155,1013],{"class":711},[686,3157,1017],{"class":1016},[686,3159,1020],{"class":711},[686,3161,1002],{"class":711},[686,3163,3164,3166,3168,3170,3172,3174],{"class":688,"line":1067},[686,3165,1028],{"class":743},[686,3167,832],{"class":711},[686,3169,885],{"class":703},[686,3171,801],{"class":711},[686,3173,1037],{"class":703},[686,3175,1002],{"class":711},[686,3177,3178,3180,3182,3184,3186,3188],{"class":688,"line":1073},[686,3179,1045],{"class":743},[686,3181,832],{"class":711},[686,3183,1013],{"class":711},[686,3185,1052],{"class":1016},[686,3187,1020],{"class":711},[686,3189,1002],{"class":711},[686,3191,3192,3194],{"class":688,"line":1078},[686,3193,1062],{"class":711},[686,3195,748],{"class":743},[686,3197,3198],{"class":688,"line":1100},[686,3199,1070],{"class":711},[686,3201,3202],{"class":688,"line":1467},[686,3203,783],{"emptyLinePlaceholder":782},[686,3205,3206,3208,3210,3212,3214,3216,3218,3220,3222,3224,3226,3228,3230],{"class":688,"line":1472},[686,3207,1081],{"class":692},[686,3209,1477],{"class":703},[686,3211,801],{"class":711},[686,3213,1228],{"class":699},[686,3215,704],{"class":743},[686,3217,827],{"class":711},[686,3219,1086],{"class":743},[686,3221,832],{"class":711},[686,3223,885],{"class":703},[686,3225,801],{"class":711},[686,3227,939],{"class":703},[686,3229,762],{"class":711},[686,3231,748],{"class":743},[686,3233,3234],{"class":688,"line":1502},[686,3235,1933],{"class":711},[510,3237,3238],{"v-slot:nestjs":512},[676,3239,3242],{"className":678,"code":3240,"filename":3241,"language":681,"meta":512,"style":512},"import { Module } from '@nestjs\u002Fcommon'\nimport { EvlogModule } from 'evlog\u002Fnestjs'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\n@Module({\n  imports: [\n    EvlogModule.forRoot({\n      drain: createAxiomDrain(),\n    }),\n  ],\n})\nexport class AppModule {}\n","app.module.ts",[683,3243,3244,3264,3284,3304,3308,3320,3330,3344,3358,3366,3373,3379],{"__ignoreMap":512},[686,3245,3246,3248,3250,3253,3255,3257,3259,3262],{"class":688,"line":689},[686,3247,1118],{"class":692},[686,3249,756],{"class":711},[686,3251,3252],{"class":703}," Module",[686,3254,762],{"class":711},[686,3256,1132],{"class":692},[686,3258,1013],{"class":711},[686,3260,3261],{"class":1016},"@nestjs\u002Fcommon",[686,3263,1140],{"class":711},[686,3265,3266,3268,3270,3273,3275,3277,3279,3282],{"class":688,"line":728},[686,3267,1118],{"class":692},[686,3269,756],{"class":711},[686,3271,3272],{"class":703}," EvlogModule",[686,3274,762],{"class":711},[686,3276,1132],{"class":692},[686,3278,1013],{"class":711},[686,3280,3281],{"class":1016},"evlog\u002Fnestjs",[686,3283,1140],{"class":711},[686,3285,3286,3288,3290,3293,3295,3297,3299,3302],{"class":688,"line":751},[686,3287,1118],{"class":692},[686,3289,756],{"class":711},[686,3291,3292],{"class":703}," createAxiomDrain",[686,3294,762],{"class":711},[686,3296,1132],{"class":692},[686,3298,1013],{"class":711},[686,3300,3301],{"class":1016},"evlog\u002Faxiom",[686,3303,1140],{"class":711},[686,3305,3306],{"class":688,"line":779},[686,3307,783],{"emptyLinePlaceholder":782},[686,3309,3310,3313,3316,3318],{"class":688,"line":786},[686,3311,3312],{"class":711},"@",[686,3314,3315],{"class":699},"Module",[686,3317,704],{"class":703},[686,3319,974],{"class":711},[686,3321,3322,3325,3327],{"class":688,"line":814},[686,3323,3324],{"class":743},"  imports",[686,3326,832],{"class":711},[686,3328,3329],{"class":703}," [\n",[686,3331,3332,3335,3337,3340,3342],{"class":688,"line":875},[686,3333,3334],{"class":703},"    EvlogModule",[686,3336,801],{"class":711},[686,3338,3339],{"class":699},"forRoot",[686,3341,704],{"class":703},[686,3343,974],{"class":711},[686,3345,3346,3349,3351,3353,3356],{"class":688,"line":880},[686,3347,3348],{"class":743},"      drain",[686,3350,832],{"class":711},[686,3352,3292],{"class":699},[686,3354,3355],{"class":703},"()",[686,3357,1002],{"class":711},[686,3359,3360,3362,3364],{"class":688,"line":911},[686,3361,1062],{"class":711},[686,3363,719],{"class":703},[686,3365,1002],{"class":711},[686,3367,3368,3371],{"class":688,"line":948},[686,3369,3370],{"class":703},"  ]",[686,3372,1002],{"class":711},[686,3374,3375,3377],{"class":688,"line":953},[686,3376,1103],{"class":711},[686,3378,748],{"class":703},[686,3380,3381,3383,3386,3389],{"class":688,"line":977},[686,3382,693],{"class":692},[686,3384,3385],{"class":707}," class",[686,3387,3388],{"class":1612}," AppModule",[686,3390,3391],{"class":711}," {}\n",[510,3393,3394],{"v-slot:express":512},[676,3395,3398],{"className":678,"code":3396,"filename":3397,"language":681,"meta":512,"style":512},"import { evlog, useLogger } from 'evlog\u002Fexpress'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = express()\napp.use(evlog({ drain: createAxiomDrain() }))\n\napp.post('\u002Fcheckout', async (req, res) => {\n  const log = useLogger()\n  const { cartId } = req.body\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  res.json({ orderId: charge.id })\n})\n","src\u002Findex.ts",[683,3399,3400,3424,3442,3446,3461,3494,3498,3535,3547,3566,3570,3592,3642,3646,3672,3706,3710,3737],{"__ignoreMap":512},[686,3401,3402,3404,3406,3409,3411,3413,3415,3417,3419,3422],{"class":688,"line":689},[686,3403,1118],{"class":692},[686,3405,756],{"class":711},[686,3407,3408],{"class":703}," evlog",[686,3410,854],{"class":711},[686,3412,740],{"class":703},[686,3414,762],{"class":711},[686,3416,1132],{"class":692},[686,3418,1013],{"class":711},[686,3420,3421],{"class":1016},"evlog\u002Fexpress",[686,3423,1140],{"class":711},[686,3425,3426,3428,3430,3432,3434,3436,3438,3440],{"class":688,"line":728},[686,3427,1118],{"class":692},[686,3429,756],{"class":711},[686,3431,3292],{"class":703},[686,3433,762],{"class":711},[686,3435,1132],{"class":692},[686,3437,1013],{"class":711},[686,3439,3301],{"class":1016},[686,3441,1140],{"class":711},[686,3443,3444],{"class":688,"line":751},[686,3445,783],{"emptyLinePlaceholder":782},[686,3447,3448,3451,3454,3456,3459],{"class":688,"line":779},[686,3449,3450],{"class":707},"const",[686,3452,3453],{"class":703}," app ",[686,3455,1176],{"class":711},[686,3457,3458],{"class":699}," express",[686,3460,1206],{"class":703},[686,3462,3463,3466,3468,3471,3473,3475,3477,3479,3482,3484,3486,3489,3491],{"class":688,"line":786},[686,3464,3465],{"class":703},"app",[686,3467,801],{"class":711},[686,3469,3470],{"class":699},"use",[686,3472,704],{"class":703},[686,3474,1157],{"class":699},[686,3476,704],{"class":703},[686,3478,827],{"class":711},[686,3480,3481],{"class":743}," drain",[686,3483,832],{"class":711},[686,3485,3292],{"class":699},[686,3487,3488],{"class":703},"() ",[686,3490,1103],{"class":711},[686,3492,3493],{"class":703},"))\n",[686,3495,3496],{"class":688,"line":814},[686,3497,783],{"emptyLinePlaceholder":782},[686,3499,3500,3502,3504,3507,3509,3511,3514,3516,3518,3520,3522,3524,3526,3529,3531,3533],{"class":688,"line":875},[686,3501,3465],{"class":703},[686,3503,801],{"class":711},[686,3505,3506],{"class":699},"post",[686,3508,704],{"class":703},[686,3510,1020],{"class":711},[686,3512,3513],{"class":1016},"\u002Fcheckout",[686,3515,1020],{"class":711},[686,3517,854],{"class":711},[686,3519,1617],{"class":707},[686,3521,712],{"class":711},[686,3523,1187],{"class":715},[686,3525,854],{"class":711},[686,3527,3528],{"class":715}," res",[686,3530,719],{"class":711},[686,3532,722],{"class":707},[686,3534,725],{"class":711},[686,3536,3537,3539,3541,3543,3545],{"class":688,"line":880},[686,3538,731],{"class":707},[686,3540,734],{"class":703},[686,3542,737],{"class":711},[686,3544,740],{"class":699},[686,3546,1206],{"class":743},[686,3548,3549,3551,3553,3555,3557,3559,3561,3563],{"class":688,"line":911},[686,3550,731],{"class":707},[686,3552,756],{"class":711},[686,3554,759],{"class":703},[686,3556,762],{"class":711},[686,3558,737],{"class":711},[686,3560,1223],{"class":703},[686,3562,801],{"class":711},[686,3564,3565],{"class":703},"body\n",[686,3567,3568],{"class":688,"line":948},[686,3569,783],{"emptyLinePlaceholder":782},[686,3571,3572,3574,3576,3578,3580,3582,3584,3586,3588,3590],{"class":688,"line":953},[686,3573,731],{"class":707},[686,3575,791],{"class":703},[686,3577,737],{"class":711},[686,3579,767],{"class":692},[686,3581,798],{"class":703},[686,3583,801],{"class":711},[686,3585,804],{"class":699},[686,3587,704],{"class":743},[686,3589,809],{"class":703},[686,3591,748],{"class":743},[686,3593,3594,3596,3598,3600,3602,3604,3606,3608,3610,3612,3614,3616,3618,3620,3622,3624,3626,3628,3630,3632,3634,3636,3638,3640],{"class":688,"line":977},[686,3595,817],{"class":703},[686,3597,801],{"class":711},[686,3599,822],{"class":699},[686,3601,704],{"class":743},[686,3603,827],{"class":711},[686,3605,791],{"class":743},[686,3607,832],{"class":711},[686,3609,756],{"class":711},[686,3611,837],{"class":743},[686,3613,832],{"class":711},[686,3615,791],{"class":703},[686,3617,801],{"class":711},[686,3619,846],{"class":703},[686,3621,801],{"class":711},[686,3623,851],{"class":703},[686,3625,854],{"class":711},[686,3627,857],{"class":743},[686,3629,832],{"class":711},[686,3631,791],{"class":703},[686,3633,801],{"class":711},[686,3635,866],{"class":703},[686,3637,762],{"class":711},[686,3639,762],{"class":711},[686,3641,748],{"class":743},[686,3643,3644],{"class":688,"line":990},[686,3645,783],{"emptyLinePlaceholder":782},[686,3647,3648,3650,3652,3654,3656,3658,3660,3662,3664,3666,3668,3670],{"class":688,"line":1005},[686,3649,731],{"class":707},[686,3651,885],{"class":703},[686,3653,737],{"class":711},[686,3655,767],{"class":692},[686,3657,892],{"class":703},[686,3659,801],{"class":711},[686,3661,897],{"class":699},[686,3663,704],{"class":743},[686,3665,902],{"class":703},[686,3667,801],{"class":711},[686,3669,866],{"class":703},[686,3671,748],{"class":743},[686,3673,3674,3676,3678,3680,3682,3684,3686,3688,3690,3692,3694,3696,3698,3700,3702,3704],{"class":688,"line":1025},[686,3675,817],{"class":703},[686,3677,801],{"class":711},[686,3679,822],{"class":699},[686,3681,704],{"class":743},[686,3683,827],{"class":711},[686,3685,892],{"class":743},[686,3687,832],{"class":711},[686,3689,756],{"class":711},[686,3691,930],{"class":743},[686,3693,832],{"class":711},[686,3695,885],{"class":703},[686,3697,801],{"class":711},[686,3699,939],{"class":703},[686,3701,762],{"class":711},[686,3703,762],{"class":711},[686,3705,748],{"class":743},[686,3707,3708],{"class":688,"line":1042},[686,3709,783],{"emptyLinePlaceholder":782},[686,3711,3712,3715,3717,3719,3721,3723,3725,3727,3729,3731,3733,3735],{"class":688,"line":1059},[686,3713,3714],{"class":703},"  res",[686,3716,801],{"class":711},[686,3718,1228],{"class":699},[686,3720,704],{"class":743},[686,3722,827],{"class":711},[686,3724,1086],{"class":743},[686,3726,832],{"class":711},[686,3728,885],{"class":703},[686,3730,801],{"class":711},[686,3732,939],{"class":703},[686,3734,762],{"class":711},[686,3736,748],{"class":743},[686,3738,3739,3741],{"class":688,"line":1067},[686,3740,1103],{"class":711},[686,3742,748],{"class":703},[510,3744,3745],{"v-slot:hono":512},[676,3746,3748],{"className":678,"code":3747,"filename":3397,"language":681,"meta":512,"style":512},"import { evlog, type EvlogVariables } from 'evlog\u002Fhono'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = new Hono\u003CEvlogVariables>()\napp.use(evlog({ drain: createAxiomDrain() }))\n\napp.post('\u002Fcheckout', async (c) => {\n  const log = c.get('log')\n  const { cartId } = await c.req.json()\n\n  const cart = await db.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  log.set({ stripe: { chargeId: charge.id } })\n\n  return c.json({ orderId: charge.id })\n})\n",[683,3749,3750,3776,3794,3798,3823,3851,3855,3886,3911,3937,3941,3963,4013,4017,4043,4077,4081,4109],{"__ignoreMap":512},[686,3751,3752,3754,3756,3758,3760,3762,3765,3767,3769,3771,3774],{"class":688,"line":689},[686,3753,1118],{"class":692},[686,3755,756],{"class":711},[686,3757,3408],{"class":703},[686,3759,854],{"class":711},[686,3761,1578],{"class":692},[686,3763,3764],{"class":703}," EvlogVariables",[686,3766,762],{"class":711},[686,3768,1132],{"class":692},[686,3770,1013],{"class":711},[686,3772,3773],{"class":1016},"evlog\u002Fhono",[686,3775,1140],{"class":711},[686,3777,3778,3780,3782,3784,3786,3788,3790,3792],{"class":688,"line":728},[686,3779,1118],{"class":692},[686,3781,756],{"class":711},[686,3783,3292],{"class":703},[686,3785,762],{"class":711},[686,3787,1132],{"class":692},[686,3789,1013],{"class":711},[686,3791,3301],{"class":1016},[686,3793,1140],{"class":711},[686,3795,3796],{"class":688,"line":751},[686,3797,783],{"emptyLinePlaceholder":782},[686,3799,3800,3802,3804,3806,3809,3812,3815,3818,3821],{"class":688,"line":779},[686,3801,3450],{"class":707},[686,3803,3453],{"class":703},[686,3805,1176],{"class":711},[686,3807,3808],{"class":711}," new",[686,3810,3811],{"class":699}," Hono",[686,3813,3814],{"class":711},"\u003C",[686,3816,3817],{"class":1612},"EvlogVariables",[686,3819,3820],{"class":711},">",[686,3822,1206],{"class":703},[686,3824,3825,3827,3829,3831,3833,3835,3837,3839,3841,3843,3845,3847,3849],{"class":688,"line":786},[686,3826,3465],{"class":703},[686,3828,801],{"class":711},[686,3830,3470],{"class":699},[686,3832,704],{"class":703},[686,3834,1157],{"class":699},[686,3836,704],{"class":703},[686,3838,827],{"class":711},[686,3840,3481],{"class":743},[686,3842,832],{"class":711},[686,3844,3292],{"class":699},[686,3846,3488],{"class":703},[686,3848,1103],{"class":711},[686,3850,3493],{"class":703},[686,3852,3853],{"class":688,"line":814},[686,3854,783],{"emptyLinePlaceholder":782},[686,3856,3857,3859,3861,3863,3865,3867,3869,3871,3873,3875,3877,3880,3882,3884],{"class":688,"line":875},[686,3858,3465],{"class":703},[686,3860,801],{"class":711},[686,3862,3506],{"class":699},[686,3864,704],{"class":703},[686,3866,1020],{"class":711},[686,3868,3513],{"class":1016},[686,3870,1020],{"class":711},[686,3872,854],{"class":711},[686,3874,1617],{"class":707},[686,3876,712],{"class":711},[686,3878,3879],{"class":715},"c",[686,3881,719],{"class":711},[686,3883,722],{"class":707},[686,3885,725],{"class":711},[686,3887,3888,3890,3892,3894,3897,3899,3901,3903,3905,3907,3909],{"class":688,"line":880},[686,3889,731],{"class":707},[686,3891,734],{"class":703},[686,3893,737],{"class":711},[686,3895,3896],{"class":703}," c",[686,3898,801],{"class":711},[686,3900,2936],{"class":699},[686,3902,704],{"class":743},[686,3904,1020],{"class":711},[686,3906,2502],{"class":1016},[686,3908,1020],{"class":711},[686,3910,748],{"class":743},[686,3912,3913,3915,3917,3919,3921,3923,3925,3927,3929,3931,3933,3935],{"class":688,"line":911},[686,3914,731],{"class":707},[686,3916,756],{"class":711},[686,3918,759],{"class":703},[686,3920,762],{"class":711},[686,3922,737],{"class":711},[686,3924,767],{"class":692},[686,3926,3896],{"class":703},[686,3928,801],{"class":711},[686,3930,1187],{"class":703},[686,3932,801],{"class":711},[686,3934,1228],{"class":699},[686,3936,1206],{"class":743},[686,3938,3939],{"class":688,"line":948},[686,3940,783],{"emptyLinePlaceholder":782},[686,3942,3943,3945,3947,3949,3951,3953,3955,3957,3959,3961],{"class":688,"line":953},[686,3944,731],{"class":707},[686,3946,791],{"class":703},[686,3948,737],{"class":711},[686,3950,767],{"class":692},[686,3952,798],{"class":703},[686,3954,801],{"class":711},[686,3956,804],{"class":699},[686,3958,704],{"class":743},[686,3960,809],{"class":703},[686,3962,748],{"class":743},[686,3964,3965,3967,3969,3971,3973,3975,3977,3979,3981,3983,3985,3987,3989,3991,3993,3995,3997,3999,4001,4003,4005,4007,4009,4011],{"class":688,"line":977},[686,3966,817],{"class":703},[686,3968,801],{"class":711},[686,3970,822],{"class":699},[686,3972,704],{"class":743},[686,3974,827],{"class":711},[686,3976,791],{"class":743},[686,3978,832],{"class":711},[686,3980,756],{"class":711},[686,3982,837],{"class":743},[686,3984,832],{"class":711},[686,3986,791],{"class":703},[686,3988,801],{"class":711},[686,3990,846],{"class":703},[686,3992,801],{"class":711},[686,3994,851],{"class":703},[686,3996,854],{"class":711},[686,3998,857],{"class":743},[686,4000,832],{"class":711},[686,4002,791],{"class":703},[686,4004,801],{"class":711},[686,4006,866],{"class":703},[686,4008,762],{"class":711},[686,4010,762],{"class":711},[686,4012,748],{"class":743},[686,4014,4015],{"class":688,"line":990},[686,4016,783],{"emptyLinePlaceholder":782},[686,4018,4019,4021,4023,4025,4027,4029,4031,4033,4035,4037,4039,4041],{"class":688,"line":1005},[686,4020,731],{"class":707},[686,4022,885],{"class":703},[686,4024,737],{"class":711},[686,4026,767],{"class":692},[686,4028,892],{"class":703},[686,4030,801],{"class":711},[686,4032,897],{"class":699},[686,4034,704],{"class":743},[686,4036,902],{"class":703},[686,4038,801],{"class":711},[686,4040,866],{"class":703},[686,4042,748],{"class":743},[686,4044,4045,4047,4049,4051,4053,4055,4057,4059,4061,4063,4065,4067,4069,4071,4073,4075],{"class":688,"line":1025},[686,4046,817],{"class":703},[686,4048,801],{"class":711},[686,4050,822],{"class":699},[686,4052,704],{"class":743},[686,4054,827],{"class":711},[686,4056,892],{"class":743},[686,4058,832],{"class":711},[686,4060,756],{"class":711},[686,4062,930],{"class":743},[686,4064,832],{"class":711},[686,4066,885],{"class":703},[686,4068,801],{"class":711},[686,4070,939],{"class":703},[686,4072,762],{"class":711},[686,4074,762],{"class":711},[686,4076,748],{"class":743},[686,4078,4079],{"class":688,"line":1042},[686,4080,783],{"emptyLinePlaceholder":782},[686,4082,4083,4085,4087,4089,4091,4093,4095,4097,4099,4101,4103,4105,4107],{"class":688,"line":1059},[686,4084,1081],{"class":692},[686,4086,3896],{"class":703},[686,4088,801],{"class":711},[686,4090,1228],{"class":699},[686,4092,704],{"class":743},[686,4094,827],{"class":711},[686,4096,1086],{"class":743},[686,4098,832],{"class":711},[686,4100,885],{"class":703},[686,4102,801],{"class":711},[686,4104,939],{"class":703},[686,4106,762],{"class":711},[686,4108,748],{"class":743},[686,4110,4111,4113],{"class":688,"line":1067},[686,4112,1103],{"class":711},[686,4114,748],{"class":703},[510,4116,4117],{"v-slot:fastify":512},[676,4118,4120],{"className":678,"code":4119,"filename":3397,"language":681,"meta":512,"style":512},"import { evlog } from 'evlog\u002Ffastify'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = Fastify({ logger: false })\nawait app.register(evlog, { drain: createAxiomDrain() })\n\napp.post('\u002Fcheckout', async (request) => {\n  const { cartId } = request.body\n\n  const cart = await db.findCart(cartId)\n  request.log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  const charge = await stripe.charge(cart.total)\n  request.log.set({ stripe: { chargeId: charge.id } })\n\n  return { orderId: charge.id }\n})\n",[683,4121,4122,4141,4159,4163,4191,4223,4227,4258,4276,4280,4302,4357,4361,4387,4425,4429,4447],{"__ignoreMap":512},[686,4123,4124,4126,4128,4130,4132,4134,4136,4139],{"class":688,"line":689},[686,4125,1118],{"class":692},[686,4127,756],{"class":711},[686,4129,3408],{"class":703},[686,4131,762],{"class":711},[686,4133,1132],{"class":692},[686,4135,1013],{"class":711},[686,4137,4138],{"class":1016},"evlog\u002Ffastify",[686,4140,1140],{"class":711},[686,4142,4143,4145,4147,4149,4151,4153,4155,4157],{"class":688,"line":728},[686,4144,1118],{"class":692},[686,4146,756],{"class":711},[686,4148,3292],{"class":703},[686,4150,762],{"class":711},[686,4152,1132],{"class":692},[686,4154,1013],{"class":711},[686,4156,3301],{"class":1016},[686,4158,1140],{"class":711},[686,4160,4161],{"class":688,"line":751},[686,4162,783],{"emptyLinePlaceholder":782},[686,4164,4165,4167,4169,4171,4174,4176,4178,4181,4183,4187,4189],{"class":688,"line":779},[686,4166,3450],{"class":707},[686,4168,3453],{"class":703},[686,4170,1176],{"class":711},[686,4172,4173],{"class":699}," Fastify",[686,4175,704],{"class":703},[686,4177,827],{"class":711},[686,4179,4180],{"class":743}," logger",[686,4182,832],{"class":711},[686,4184,4186],{"class":4185},"sfNiH"," false",[686,4188,762],{"class":711},[686,4190,748],{"class":703},[686,4192,4193,4196,4199,4201,4204,4207,4209,4211,4213,4215,4217,4219,4221],{"class":688,"line":786},[686,4194,4195],{"class":692},"await",[686,4197,4198],{"class":703}," app",[686,4200,801],{"class":711},[686,4202,4203],{"class":699},"register",[686,4205,4206],{"class":703},"(evlog",[686,4208,854],{"class":711},[686,4210,756],{"class":711},[686,4212,3481],{"class":743},[686,4214,832],{"class":711},[686,4216,3292],{"class":699},[686,4218,3488],{"class":703},[686,4220,1103],{"class":711},[686,4222,748],{"class":703},[686,4224,4225],{"class":688,"line":814},[686,4226,783],{"emptyLinePlaceholder":782},[686,4228,4229,4231,4233,4235,4237,4239,4241,4243,4245,4247,4249,4252,4254,4256],{"class":688,"line":875},[686,4230,3465],{"class":703},[686,4232,801],{"class":711},[686,4234,3506],{"class":699},[686,4236,704],{"class":703},[686,4238,1020],{"class":711},[686,4240,3513],{"class":1016},[686,4242,1020],{"class":711},[686,4244,854],{"class":711},[686,4246,1617],{"class":707},[686,4248,712],{"class":711},[686,4250,4251],{"class":715},"request",[686,4253,719],{"class":711},[686,4255,722],{"class":707},[686,4257,725],{"class":711},[686,4259,4260,4262,4264,4266,4268,4270,4272,4274],{"class":688,"line":880},[686,4261,731],{"class":707},[686,4263,756],{"class":711},[686,4265,759],{"class":703},[686,4267,762],{"class":711},[686,4269,737],{"class":711},[686,4271,1623],{"class":703},[686,4273,801],{"class":711},[686,4275,3565],{"class":703},[686,4277,4278],{"class":688,"line":911},[686,4279,783],{"emptyLinePlaceholder":782},[686,4281,4282,4284,4286,4288,4290,4292,4294,4296,4298,4300],{"class":688,"line":948},[686,4283,731],{"class":707},[686,4285,791],{"class":703},[686,4287,737],{"class":711},[686,4289,767],{"class":692},[686,4291,798],{"class":703},[686,4293,801],{"class":711},[686,4295,804],{"class":699},[686,4297,704],{"class":743},[686,4299,809],{"class":703},[686,4301,748],{"class":743},[686,4303,4304,4307,4309,4311,4313,4315,4317,4319,4321,4323,4325,4327,4329,4331,4333,4335,4337,4339,4341,4343,4345,4347,4349,4351,4353,4355],{"class":688,"line":953},[686,4305,4306],{"class":703},"  request",[686,4308,801],{"class":711},[686,4310,2502],{"class":703},[686,4312,801],{"class":711},[686,4314,822],{"class":699},[686,4316,704],{"class":743},[686,4318,827],{"class":711},[686,4320,791],{"class":743},[686,4322,832],{"class":711},[686,4324,756],{"class":711},[686,4326,837],{"class":743},[686,4328,832],{"class":711},[686,4330,791],{"class":703},[686,4332,801],{"class":711},[686,4334,846],{"class":703},[686,4336,801],{"class":711},[686,4338,851],{"class":703},[686,4340,854],{"class":711},[686,4342,857],{"class":743},[686,4344,832],{"class":711},[686,4346,791],{"class":703},[686,4348,801],{"class":711},[686,4350,866],{"class":703},[686,4352,762],{"class":711},[686,4354,762],{"class":711},[686,4356,748],{"class":743},[686,4358,4359],{"class":688,"line":977},[686,4360,783],{"emptyLinePlaceholder":782},[686,4362,4363,4365,4367,4369,4371,4373,4375,4377,4379,4381,4383,4385],{"class":688,"line":990},[686,4364,731],{"class":707},[686,4366,885],{"class":703},[686,4368,737],{"class":711},[686,4370,767],{"class":692},[686,4372,892],{"class":703},[686,4374,801],{"class":711},[686,4376,897],{"class":699},[686,4378,704],{"class":743},[686,4380,902],{"class":703},[686,4382,801],{"class":711},[686,4384,866],{"class":703},[686,4386,748],{"class":743},[686,4388,4389,4391,4393,4395,4397,4399,4401,4403,4405,4407,4409,4411,4413,4415,4417,4419,4421,4423],{"class":688,"line":1005},[686,4390,4306],{"class":703},[686,4392,801],{"class":711},[686,4394,2502],{"class":703},[686,4396,801],{"class":711},[686,4398,822],{"class":699},[686,4400,704],{"class":743},[686,4402,827],{"class":711},[686,4404,892],{"class":743},[686,4406,832],{"class":711},[686,4408,756],{"class":711},[686,4410,930],{"class":743},[686,4412,832],{"class":711},[686,4414,885],{"class":703},[686,4416,801],{"class":711},[686,4418,939],{"class":703},[686,4420,762],{"class":711},[686,4422,762],{"class":711},[686,4424,748],{"class":743},[686,4426,4427],{"class":688,"line":1025},[686,4428,783],{"emptyLinePlaceholder":782},[686,4430,4431,4433,4435,4437,4439,4441,4443,4445],{"class":688,"line":1042},[686,4432,1081],{"class":692},[686,4434,756],{"class":711},[686,4436,1086],{"class":743},[686,4438,832],{"class":711},[686,4440,885],{"class":703},[686,4442,801],{"class":711},[686,4444,939],{"class":703},[686,4446,1097],{"class":711},[686,4448,4449,4451],{"class":688,"line":1059},[686,4450,1103],{"class":711},[686,4452,748],{"class":703},[510,4454,4455],{"v-slot:elysia":512},[676,4456,4458],{"className":678,"code":4457,"filename":3397,"language":681,"meta":512,"style":512},"import { evlog } from 'evlog\u002Felysia'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst app = new Elysia()\n  .use(evlog({ drain: createAxiomDrain() }))\n  .post('\u002Fcheckout', async ({ log, body }) => {\n    const { cartId } = body\n\n    const cart = await db.findCart(cartId)\n    log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n    const charge = await stripe.charge(cart.total)\n    log.set({ stripe: { chargeId: charge.id } })\n\n    return { orderId: charge.id }\n  })\n",[683,4459,4460,4479,4497,4501,4516,4543,4576,4592,4596,4618,4669,4673,4699,4733,4737,4756],{"__ignoreMap":512},[686,4461,4462,4464,4466,4468,4470,4472,4474,4477],{"class":688,"line":689},[686,4463,1118],{"class":692},[686,4465,756],{"class":711},[686,4467,3408],{"class":703},[686,4469,762],{"class":711},[686,4471,1132],{"class":692},[686,4473,1013],{"class":711},[686,4475,4476],{"class":1016},"evlog\u002Felysia",[686,4478,1140],{"class":711},[686,4480,4481,4483,4485,4487,4489,4491,4493,4495],{"class":688,"line":728},[686,4482,1118],{"class":692},[686,4484,756],{"class":711},[686,4486,3292],{"class":703},[686,4488,762],{"class":711},[686,4490,1132],{"class":692},[686,4492,1013],{"class":711},[686,4494,3301],{"class":1016},[686,4496,1140],{"class":711},[686,4498,4499],{"class":688,"line":751},[686,4500,783],{"emptyLinePlaceholder":782},[686,4502,4503,4505,4507,4509,4511,4514],{"class":688,"line":779},[686,4504,3450],{"class":707},[686,4506,3453],{"class":703},[686,4508,1176],{"class":711},[686,4510,3808],{"class":711},[686,4512,4513],{"class":699}," Elysia",[686,4515,1206],{"class":703},[686,4517,4518,4521,4523,4525,4527,4529,4531,4533,4535,4537,4539,4541],{"class":688,"line":786},[686,4519,4520],{"class":711},"  .",[686,4522,3470],{"class":699},[686,4524,704],{"class":703},[686,4526,1157],{"class":699},[686,4528,704],{"class":703},[686,4530,827],{"class":711},[686,4532,3481],{"class":743},[686,4534,832],{"class":711},[686,4536,3292],{"class":699},[686,4538,3488],{"class":703},[686,4540,1103],{"class":711},[686,4542,3493],{"class":703},[686,4544,4545,4547,4549,4551,4553,4555,4557,4559,4561,4563,4565,4567,4570,4572,4574],{"class":688,"line":814},[686,4546,4520],{"class":711},[686,4548,3506],{"class":699},[686,4550,704],{"class":703},[686,4552,1020],{"class":711},[686,4554,3513],{"class":1016},[686,4556,1020],{"class":711},[686,4558,854],{"class":711},[686,4560,1617],{"class":707},[686,4562,1620],{"class":711},[686,4564,734],{"class":715},[686,4566,854],{"class":711},[686,4568,4569],{"class":715}," body",[686,4571,1626],{"class":711},[686,4573,722],{"class":707},[686,4575,725],{"class":711},[686,4577,4578,4581,4583,4585,4587,4589],{"class":688,"line":875},[686,4579,4580],{"class":707},"    const",[686,4582,756],{"class":711},[686,4584,759],{"class":703},[686,4586,762],{"class":711},[686,4588,737],{"class":711},[686,4590,4591],{"class":703}," body\n",[686,4593,4594],{"class":688,"line":880},[686,4595,783],{"emptyLinePlaceholder":782},[686,4597,4598,4600,4602,4604,4606,4608,4610,4612,4614,4616],{"class":688,"line":911},[686,4599,4580],{"class":707},[686,4601,791],{"class":703},[686,4603,737],{"class":711},[686,4605,767],{"class":692},[686,4607,798],{"class":703},[686,4609,801],{"class":711},[686,4611,804],{"class":699},[686,4613,704],{"class":743},[686,4615,809],{"class":703},[686,4617,748],{"class":743},[686,4619,4620,4623,4625,4627,4629,4631,4633,4635,4637,4639,4641,4643,4645,4647,4649,4651,4653,4655,4657,4659,4661,4663,4665,4667],{"class":688,"line":948},[686,4621,4622],{"class":703},"    log",[686,4624,801],{"class":711},[686,4626,822],{"class":699},[686,4628,704],{"class":743},[686,4630,827],{"class":711},[686,4632,791],{"class":743},[686,4634,832],{"class":711},[686,4636,756],{"class":711},[686,4638,837],{"class":743},[686,4640,832],{"class":711},[686,4642,791],{"class":703},[686,4644,801],{"class":711},[686,4646,846],{"class":703},[686,4648,801],{"class":711},[686,4650,851],{"class":703},[686,4652,854],{"class":711},[686,4654,857],{"class":743},[686,4656,832],{"class":711},[686,4658,791],{"class":703},[686,4660,801],{"class":711},[686,4662,866],{"class":703},[686,4664,762],{"class":711},[686,4666,762],{"class":711},[686,4668,748],{"class":743},[686,4670,4671],{"class":688,"line":953},[686,4672,783],{"emptyLinePlaceholder":782},[686,4674,4675,4677,4679,4681,4683,4685,4687,4689,4691,4693,4695,4697],{"class":688,"line":977},[686,4676,4580],{"class":707},[686,4678,885],{"class":703},[686,4680,737],{"class":711},[686,4682,767],{"class":692},[686,4684,892],{"class":703},[686,4686,801],{"class":711},[686,4688,897],{"class":699},[686,4690,704],{"class":743},[686,4692,902],{"class":703},[686,4694,801],{"class":711},[686,4696,866],{"class":703},[686,4698,748],{"class":743},[686,4700,4701,4703,4705,4707,4709,4711,4713,4715,4717,4719,4721,4723,4725,4727,4729,4731],{"class":688,"line":990},[686,4702,4622],{"class":703},[686,4704,801],{"class":711},[686,4706,822],{"class":699},[686,4708,704],{"class":743},[686,4710,827],{"class":711},[686,4712,892],{"class":743},[686,4714,832],{"class":711},[686,4716,756],{"class":711},[686,4718,930],{"class":743},[686,4720,832],{"class":711},[686,4722,885],{"class":703},[686,4724,801],{"class":711},[686,4726,939],{"class":703},[686,4728,762],{"class":711},[686,4730,762],{"class":711},[686,4732,748],{"class":743},[686,4734,4735],{"class":688,"line":1005},[686,4736,783],{"emptyLinePlaceholder":782},[686,4738,4739,4742,4744,4746,4748,4750,4752,4754],{"class":688,"line":1025},[686,4740,4741],{"class":692},"    return",[686,4743,756],{"class":711},[686,4745,1086],{"class":743},[686,4747,832],{"class":711},[686,4749,885],{"class":703},[686,4751,801],{"class":711},[686,4753,939],{"class":703},[686,4755,1097],{"class":711},[686,4757,4758,4761],{"class":688,"line":1042},[686,4759,4760],{"class":711},"  }",[686,4762,748],{"class":703},[510,4764,4765],{"v-slot:orpc":512},[676,4766,4769],{"className":678,"code":4767,"filename":4768,"language":681,"meta":512,"style":512},"import { os } from '@orpc\u002Fserver'\nimport { RPCHandler } from '@orpc\u002Fserver\u002Ffetch'\nimport { evlog, withEvlog, type EvlogOrpcContext } from 'evlog\u002Forpc'\nimport { createAxiomDrain } from 'evlog\u002Faxiom'\n\nconst base = os.$context\u003CEvlogOrpcContext>().use(evlog())\n\nconst router = {\n  checkout: base\n    .input(z.object({ cartId: z.string() }))\n    .handler(async ({ input, context }) => {\n      const cart = await db.findCart(input.cartId)\n      context.log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n      const charge = await stripe.charge(cart.total)\n      context.log.set({ stripe: { chargeId: charge.id } })\n\n      return { orderId: charge.id }\n    }),\n}\n\nconst handler = withEvlog(new RPCHandler(router), { drain: createAxiomDrain() })\n","server\u002Forpc.ts",[683,4770,4771,4791,4811,4841,4859,4863,4899,4903,4914,4924,4962,4988,5015,5070,5074,5100,5138,5142,5161,5169,5173,5177],{"__ignoreMap":512},[686,4772,4773,4775,4777,4780,4782,4784,4786,4789],{"class":688,"line":689},[686,4774,1118],{"class":692},[686,4776,756],{"class":711},[686,4778,4779],{"class":703}," os",[686,4781,762],{"class":711},[686,4783,1132],{"class":692},[686,4785,1013],{"class":711},[686,4787,4788],{"class":1016},"@orpc\u002Fserver",[686,4790,1140],{"class":711},[686,4792,4793,4795,4797,4800,4802,4804,4806,4809],{"class":688,"line":728},[686,4794,1118],{"class":692},[686,4796,756],{"class":711},[686,4798,4799],{"class":703}," RPCHandler",[686,4801,762],{"class":711},[686,4803,1132],{"class":692},[686,4805,1013],{"class":711},[686,4807,4808],{"class":1016},"@orpc\u002Fserver\u002Ffetch",[686,4810,1140],{"class":711},[686,4812,4813,4815,4817,4819,4821,4823,4825,4827,4830,4832,4834,4836,4839],{"class":688,"line":751},[686,4814,1118],{"class":692},[686,4816,756],{"class":711},[686,4818,3408],{"class":703},[686,4820,854],{"class":711},[686,4822,1123],{"class":703},[686,4824,854],{"class":711},[686,4826,1578],{"class":692},[686,4828,4829],{"class":703}," EvlogOrpcContext",[686,4831,762],{"class":711},[686,4833,1132],{"class":692},[686,4835,1013],{"class":711},[686,4837,4838],{"class":1016},"evlog\u002Forpc",[686,4840,1140],{"class":711},[686,4842,4843,4845,4847,4849,4851,4853,4855,4857],{"class":688,"line":779},[686,4844,1118],{"class":692},[686,4846,756],{"class":711},[686,4848,3292],{"class":703},[686,4850,762],{"class":711},[686,4852,1132],{"class":692},[686,4854,1013],{"class":711},[686,4856,3301],{"class":1016},[686,4858,1140],{"class":711},[686,4860,4861],{"class":688,"line":786},[686,4862,783],{"emptyLinePlaceholder":782},[686,4864,4865,4867,4870,4872,4874,4876,4879,4881,4884,4886,4888,4890,4892,4894,4896],{"class":688,"line":814},[686,4866,3450],{"class":707},[686,4868,4869],{"class":703}," base ",[686,4871,1176],{"class":711},[686,4873,4779],{"class":703},[686,4875,801],{"class":711},[686,4877,4878],{"class":699},"$context",[686,4880,3814],{"class":711},[686,4882,4883],{"class":1612},"EvlogOrpcContext",[686,4885,3820],{"class":711},[686,4887,3355],{"class":703},[686,4889,801],{"class":711},[686,4891,3470],{"class":699},[686,4893,704],{"class":703},[686,4895,1157],{"class":699},[686,4897,4898],{"class":703},"())\n",[686,4900,4901],{"class":688,"line":875},[686,4902,783],{"emptyLinePlaceholder":782},[686,4904,4905,4907,4910,4912],{"class":688,"line":880},[686,4906,3450],{"class":707},[686,4908,4909],{"class":703}," router ",[686,4911,1176],{"class":711},[686,4913,725],{"class":711},[686,4915,4916,4919,4921],{"class":688,"line":911},[686,4917,4918],{"class":743},"  checkout",[686,4920,832],{"class":711},[686,4922,4923],{"class":703}," base\n",[686,4925,4926,4929,4932,4935,4937,4940,4942,4944,4946,4948,4951,4953,4956,4958,4960],{"class":688,"line":948},[686,4927,4928],{"class":711},"    .",[686,4930,4931],{"class":699},"input",[686,4933,4934],{"class":703},"(z",[686,4936,801],{"class":711},[686,4938,4939],{"class":699},"object",[686,4941,704],{"class":703},[686,4943,827],{"class":711},[686,4945,759],{"class":743},[686,4947,832],{"class":711},[686,4949,4950],{"class":703}," z",[686,4952,801],{"class":711},[686,4954,4955],{"class":699},"string",[686,4957,3488],{"class":703},[686,4959,1103],{"class":711},[686,4961,3493],{"class":703},[686,4963,4964,4966,4969,4971,4973,4975,4978,4980,4982,4984,4986],{"class":688,"line":953},[686,4965,4928],{"class":711},[686,4967,4968],{"class":699},"handler",[686,4970,704],{"class":703},[686,4972,708],{"class":707},[686,4974,1620],{"class":711},[686,4976,4977],{"class":715}," input",[686,4979,854],{"class":711},[686,4981,2906],{"class":715},[686,4983,1626],{"class":711},[686,4985,722],{"class":707},[686,4987,725],{"class":711},[686,4989,4990,4993,4995,4997,4999,5001,5003,5005,5007,5009,5011,5013],{"class":688,"line":977},[686,4991,4992],{"class":707},"      const",[686,4994,791],{"class":703},[686,4996,737],{"class":711},[686,4998,767],{"class":692},[686,5000,798],{"class":703},[686,5002,801],{"class":711},[686,5004,804],{"class":699},[686,5006,704],{"class":743},[686,5008,4931],{"class":703},[686,5010,801],{"class":711},[686,5012,809],{"class":703},[686,5014,748],{"class":743},[686,5016,5017,5020,5022,5024,5026,5028,5030,5032,5034,5036,5038,5040,5042,5044,5046,5048,5050,5052,5054,5056,5058,5060,5062,5064,5066,5068],{"class":688,"line":990},[686,5018,5019],{"class":703},"      context",[686,5021,801],{"class":711},[686,5023,2502],{"class":703},[686,5025,801],{"class":711},[686,5027,822],{"class":699},[686,5029,704],{"class":743},[686,5031,827],{"class":711},[686,5033,791],{"class":743},[686,5035,832],{"class":711},[686,5037,756],{"class":711},[686,5039,837],{"class":743},[686,5041,832],{"class":711},[686,5043,791],{"class":703},[686,5045,801],{"class":711},[686,5047,846],{"class":703},[686,5049,801],{"class":711},[686,5051,851],{"class":703},[686,5053,854],{"class":711},[686,5055,857],{"class":743},[686,5057,832],{"class":711},[686,5059,791],{"class":703},[686,5061,801],{"class":711},[686,5063,866],{"class":703},[686,5065,762],{"class":711},[686,5067,762],{"class":711},[686,5069,748],{"class":743},[686,5071,5072],{"class":688,"line":1005},[686,5073,783],{"emptyLinePlaceholder":782},[686,5075,5076,5078,5080,5082,5084,5086,5088,5090,5092,5094,5096,5098],{"class":688,"line":1025},[686,5077,4992],{"class":707},[686,5079,885],{"class":703},[686,5081,737],{"class":711},[686,5083,767],{"class":692},[686,5085,892],{"class":703},[686,5087,801],{"class":711},[686,5089,897],{"class":699},[686,5091,704],{"class":743},[686,5093,902],{"class":703},[686,5095,801],{"class":711},[686,5097,866],{"class":703},[686,5099,748],{"class":743},[686,5101,5102,5104,5106,5108,5110,5112,5114,5116,5118,5120,5122,5124,5126,5128,5130,5132,5134,5136],{"class":688,"line":1042},[686,5103,5019],{"class":703},[686,5105,801],{"class":711},[686,5107,2502],{"class":703},[686,5109,801],{"class":711},[686,5111,822],{"class":699},[686,5113,704],{"class":743},[686,5115,827],{"class":711},[686,5117,892],{"class":743},[686,5119,832],{"class":711},[686,5121,756],{"class":711},[686,5123,930],{"class":743},[686,5125,832],{"class":711},[686,5127,885],{"class":703},[686,5129,801],{"class":711},[686,5131,939],{"class":703},[686,5133,762],{"class":711},[686,5135,762],{"class":711},[686,5137,748],{"class":743},[686,5139,5140],{"class":688,"line":1059},[686,5141,783],{"emptyLinePlaceholder":782},[686,5143,5144,5147,5149,5151,5153,5155,5157,5159],{"class":688,"line":1067},[686,5145,5146],{"class":692},"      return",[686,5148,756],{"class":711},[686,5150,1086],{"class":743},[686,5152,832],{"class":711},[686,5154,885],{"class":703},[686,5156,801],{"class":711},[686,5158,939],{"class":703},[686,5160,1097],{"class":711},[686,5162,5163,5165,5167],{"class":688,"line":1073},[686,5164,1062],{"class":711},[686,5166,719],{"class":703},[686,5168,1002],{"class":711},[686,5170,5171],{"class":688,"line":1078},[686,5172,1933],{"class":711},[686,5174,5175],{"class":688,"line":1100},[686,5176,783],{"emptyLinePlaceholder":782},[686,5178,5179,5181,5184,5186,5188,5190,5193,5195,5198,5200,5202,5204,5206,5208,5210,5212],{"class":688,"line":1467},[686,5180,3450],{"class":707},[686,5182,5183],{"class":703}," handler ",[686,5185,1176],{"class":711},[686,5187,1123],{"class":699},[686,5189,704],{"class":703},[686,5191,5192],{"class":711},"new",[686,5194,4799],{"class":699},[686,5196,5197],{"class":703},"(router)",[686,5199,854],{"class":711},[686,5201,756],{"class":711},[686,5203,3481],{"class":743},[686,5205,832],{"class":711},[686,5207,3292],{"class":699},[686,5209,3488],{"class":703},[686,5211,1103],{"class":711},[686,5213,748],{"class":703},[510,5215,5216],{"v-slot:cloudflare":512},[676,5217,5220],{"className":678,"code":5218,"filename":5219,"language":681,"meta":512,"style":512},"import { defineWorkerFetch, initWorkersLogger } from 'evlog\u002Fworkers'\n\ninitWorkersLogger({ env: { service: 'checkout-worker' } })\n\nexport default defineWorkerFetch(async (request, env, _ctx, log) => {\n  const { cartId } = await request.json()\n  const cart = await env.DB.findCart(cartId)\n  log.set({ cart: { items: cart.items.length, total: cart.total } })\n\n  log.emit()\n  return Response.json({ orderId: cart.id })\n})\n","src\u002Fworker.ts",[683,5221,5222,5247,5251,5285,5289,5324,5346,5373,5423,5427,5438,5466],{"__ignoreMap":512},[686,5223,5224,5226,5228,5231,5233,5236,5238,5240,5242,5245],{"class":688,"line":689},[686,5225,1118],{"class":692},[686,5227,756],{"class":711},[686,5229,5230],{"class":703}," defineWorkerFetch",[686,5232,854],{"class":711},[686,5234,5235],{"class":703}," initWorkersLogger",[686,5237,762],{"class":711},[686,5239,1132],{"class":692},[686,5241,1013],{"class":711},[686,5243,5244],{"class":1016},"evlog\u002Fworkers",[686,5246,1140],{"class":711},[686,5248,5249],{"class":688,"line":728},[686,5250,783],{"emptyLinePlaceholder":782},[686,5252,5253,5256,5258,5260,5263,5265,5267,5270,5272,5274,5277,5279,5281,5283],{"class":688,"line":751},[686,5254,5255],{"class":699},"initWorkersLogger",[686,5257,704],{"class":703},[686,5259,827],{"class":711},[686,5261,5262],{"class":743}," env",[686,5264,832],{"class":711},[686,5266,756],{"class":711},[686,5268,5269],{"class":743}," service",[686,5271,832],{"class":711},[686,5273,1013],{"class":711},[686,5275,5276],{"class":1016},"checkout-worker",[686,5278,1020],{"class":711},[686,5280,762],{"class":711},[686,5282,762],{"class":711},[686,5284,748],{"class":703},[686,5286,5287],{"class":688,"line":779},[686,5288,783],{"emptyLinePlaceholder":782},[686,5290,5291,5293,5295,5297,5299,5301,5303,5305,5307,5309,5311,5314,5316,5318,5320,5322],{"class":688,"line":786},[686,5292,693],{"class":692},[686,5294,696],{"class":692},[686,5296,5230],{"class":699},[686,5298,704],{"class":703},[686,5300,708],{"class":707},[686,5302,712],{"class":711},[686,5304,4251],{"class":715},[686,5306,854],{"class":711},[686,5308,5262],{"class":715},[686,5310,854],{"class":711},[686,5312,5313],{"class":715}," _ctx",[686,5315,854],{"class":711},[686,5317,734],{"class":715},[686,5319,719],{"class":711},[686,5321,722],{"class":707},[686,5323,725],{"class":711},[686,5325,5326,5328,5330,5332,5334,5336,5338,5340,5342,5344],{"class":688,"line":814},[686,5327,731],{"class":707},[686,5329,756],{"class":711},[686,5331,759],{"class":703},[686,5333,762],{"class":711},[686,5335,737],{"class":711},[686,5337,767],{"class":692},[686,5339,1623],{"class":703},[686,5341,801],{"class":711},[686,5343,1228],{"class":699},[686,5345,1206],{"class":743},[686,5347,5348,5350,5352,5354,5356,5358,5360,5363,5365,5367,5369,5371],{"class":688,"line":875},[686,5349,731],{"class":707},[686,5351,791],{"class":703},[686,5353,737],{"class":711},[686,5355,767],{"class":692},[686,5357,5262],{"class":703},[686,5359,801],{"class":711},[686,5361,5362],{"class":703},"DB",[686,5364,801],{"class":711},[686,5366,804],{"class":699},[686,5368,704],{"class":743},[686,5370,809],{"class":703},[686,5372,748],{"class":743},[686,5374,5375,5377,5379,5381,5383,5385,5387,5389,5391,5393,5395,5397,5399,5401,5403,5405,5407,5409,5411,5413,5415,5417,5419,5421],{"class":688,"line":880},[686,5376,817],{"class":703},[686,5378,801],{"class":711},[686,5380,822],{"class":699},[686,5382,704],{"class":743},[686,5384,827],{"class":711},[686,5386,791],{"class":743},[686,5388,832],{"class":711},[686,5390,756],{"class":711},[686,5392,837],{"class":743},[686,5394,832],{"class":711},[686,5396,791],{"class":703},[686,5398,801],{"class":711},[686,5400,846],{"class":703},[686,5402,801],{"class":711},[686,5404,851],{"class":703},[686,5406,854],{"class":711},[686,5408,857],{"class":743},[686,5410,832],{"class":711},[686,5412,791],{"class":703},[686,5414,801],{"class":711},[686,5416,866],{"class":703},[686,5418,762],{"class":711},[686,5420,762],{"class":711},[686,5422,748],{"class":743},[686,5424,5425],{"class":688,"line":911},[686,5426,783],{"emptyLinePlaceholder":782},[686,5428,5429,5431,5433,5436],{"class":688,"line":948},[686,5430,817],{"class":703},[686,5432,801],{"class":711},[686,5434,5435],{"class":699},"emit",[686,5437,1206],{"class":743},[686,5439,5440,5442,5444,5446,5448,5450,5452,5454,5456,5458,5460,5462,5464],{"class":688,"line":953},[686,5441,1081],{"class":692},[686,5443,1477],{"class":703},[686,5445,801],{"class":711},[686,5447,1228],{"class":699},[686,5449,704],{"class":743},[686,5451,827],{"class":711},[686,5453,1086],{"class":743},[686,5455,832],{"class":711},[686,5457,791],{"class":703},[686,5459,801],{"class":711},[686,5461,939],{"class":703},[686,5463,762],{"class":711},[686,5465,748],{"class":743},[686,5467,5468,5470],{"class":688,"line":977},[686,5469,1103],{"class":711},[686,5471,748],{"class":703},[510,5473,5474],{"v-slot:bun":512},[676,5475,5478],{"className":678,"code":5476,"filename":5477,"language":681,"meta":512,"style":512},"import { initLogger, createLogger } from 'evlog'\n\ninitLogger({ env: { service: 'migrate' } })\n\nconst log = createLogger({ task: 'user-migration' })\n\nconst users = await db.query('SELECT * FROM legacy_users')\nlog.set({ found: users.length })\n\nfor (const user of users) {\n  await newDb.upsert({ id: user.id, email: user.email, plan: user.plan })\n}\n\nlog.set({ migrated: users.length, status: 'complete' })\nlog.emit()\n","scripts\u002Fmigrate-users.ts",[683,5479,5480,5504,5508,5540,5544,5575,5579,5608,5637,5641,5661,5722,5726,5730,5771],{"__ignoreMap":512},[686,5481,5482,5484,5486,5489,5491,5494,5496,5498,5500,5502],{"class":688,"line":689},[686,5483,1118],{"class":692},[686,5485,756],{"class":711},[686,5487,5488],{"class":703}," initLogger",[686,5490,854],{"class":711},[686,5492,5493],{"class":703}," createLogger",[686,5495,762],{"class":711},[686,5497,1132],{"class":692},[686,5499,1013],{"class":711},[686,5501,1157],{"class":1016},[686,5503,1140],{"class":711},[686,5505,5506],{"class":688,"line":728},[686,5507,783],{"emptyLinePlaceholder":782},[686,5509,5510,5513,5515,5517,5519,5521,5523,5525,5527,5529,5532,5534,5536,5538],{"class":688,"line":751},[686,5511,5512],{"class":699},"initLogger",[686,5514,704],{"class":703},[686,5516,827],{"class":711},[686,5518,5262],{"class":743},[686,5520,832],{"class":711},[686,5522,756],{"class":711},[686,5524,5269],{"class":743},[686,5526,832],{"class":711},[686,5528,1013],{"class":711},[686,5530,5531],{"class":1016},"migrate",[686,5533,1020],{"class":711},[686,5535,762],{"class":711},[686,5537,762],{"class":711},[686,5539,748],{"class":703},[686,5541,5542],{"class":688,"line":779},[686,5543,783],{"emptyLinePlaceholder":782},[686,5545,5546,5548,5551,5553,5555,5557,5559,5562,5564,5566,5569,5571,5573],{"class":688,"line":786},[686,5547,3450],{"class":707},[686,5549,5550],{"class":703}," log ",[686,5552,1176],{"class":711},[686,5554,5493],{"class":699},[686,5556,704],{"class":703},[686,5558,827],{"class":711},[686,5560,5561],{"class":743}," task",[686,5563,832],{"class":711},[686,5565,1013],{"class":711},[686,5567,5568],{"class":1016},"user-migration",[686,5570,1020],{"class":711},[686,5572,762],{"class":711},[686,5574,748],{"class":703},[686,5576,5577],{"class":688,"line":814},[686,5578,783],{"emptyLinePlaceholder":782},[686,5580,5581,5583,5586,5588,5590,5592,5594,5597,5599,5601,5604,5606],{"class":688,"line":875},[686,5582,3450],{"class":707},[686,5584,5585],{"class":703}," users ",[686,5587,1176],{"class":711},[686,5589,767],{"class":692},[686,5591,798],{"class":703},[686,5593,801],{"class":711},[686,5595,5596],{"class":699},"query",[686,5598,704],{"class":703},[686,5600,1020],{"class":711},[686,5602,5603],{"class":1016},"SELECT * FROM legacy_users",[686,5605,1020],{"class":711},[686,5607,748],{"class":703},[686,5609,5610,5612,5614,5616,5618,5620,5623,5625,5628,5630,5633,5635],{"class":688,"line":880},[686,5611,2502],{"class":703},[686,5613,801],{"class":711},[686,5615,822],{"class":699},[686,5617,704],{"class":703},[686,5619,827],{"class":711},[686,5621,5622],{"class":743}," found",[686,5624,832],{"class":711},[686,5626,5627],{"class":703}," users",[686,5629,801],{"class":711},[686,5631,5632],{"class":703},"length ",[686,5634,1103],{"class":711},[686,5636,748],{"class":703},[686,5638,5639],{"class":688,"line":911},[686,5640,783],{"emptyLinePlaceholder":782},[686,5642,5643,5646,5648,5650,5653,5656,5659],{"class":688,"line":948},[686,5644,5645],{"class":692},"for",[686,5647,712],{"class":703},[686,5649,3450],{"class":707},[686,5651,5652],{"class":703}," user ",[686,5654,5655],{"class":711},"of",[686,5657,5658],{"class":703}," users) ",[686,5660,974],{"class":711},[686,5662,5663,5666,5669,5671,5674,5676,5678,5681,5683,5686,5688,5690,5692,5695,5697,5699,5701,5704,5706,5709,5711,5713,5715,5718,5720],{"class":688,"line":953},[686,5664,5665],{"class":692},"  await",[686,5667,5668],{"class":703}," newDb",[686,5670,801],{"class":711},[686,5672,5673],{"class":699},"upsert",[686,5675,704],{"class":743},[686,5677,827],{"class":711},[686,5679,5680],{"class":743}," id",[686,5682,832],{"class":711},[686,5684,5685],{"class":703}," user",[686,5687,801],{"class":711},[686,5689,939],{"class":703},[686,5691,854],{"class":711},[686,5693,5694],{"class":743}," email",[686,5696,832],{"class":711},[686,5698,5685],{"class":703},[686,5700,801],{"class":711},[686,5702,5703],{"class":703},"email",[686,5705,854],{"class":711},[686,5707,5708],{"class":743}," plan",[686,5710,832],{"class":711},[686,5712,5685],{"class":703},[686,5714,801],{"class":711},[686,5716,5717],{"class":703},"plan",[686,5719,762],{"class":711},[686,5721,748],{"class":743},[686,5723,5724],{"class":688,"line":977},[686,5725,1933],{"class":711},[686,5727,5728],{"class":688,"line":990},[686,5729,783],{"emptyLinePlaceholder":782},[686,5731,5732,5734,5736,5738,5740,5742,5745,5747,5749,5751,5753,5755,5758,5760,5762,5765,5767,5769],{"class":688,"line":1005},[686,5733,2502],{"class":703},[686,5735,801],{"class":711},[686,5737,822],{"class":699},[686,5739,704],{"class":703},[686,5741,827],{"class":711},[686,5743,5744],{"class":743}," migrated",[686,5746,832],{"class":711},[686,5748,5627],{"class":703},[686,5750,801],{"class":711},[686,5752,851],{"class":703},[686,5754,854],{"class":711},[686,5756,5757],{"class":743}," status",[686,5759,832],{"class":711},[686,5761,1013],{"class":711},[686,5763,5764],{"class":1016},"complete",[686,5766,1020],{"class":711},[686,5768,762],{"class":711},[686,5770,748],{"class":703},[686,5772,5773,5775,5777,5779],{"class":688,"line":1025},[686,5774,2502],{"class":703},[686,5776,801],{"class":711},[686,5778,5435],{"class":699},[686,5780,1206],{"class":703},[5782,5783,5784],"landing-cta",{},[510,5785,5786],{"v-slot:description":512},"One logger for every context. Set it up in 10 minutes. Your future self will thank you.",[5788,5789,5790],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}",{"title":512,"searchDepth":728,"depth":728,"links":5792},[],"A modern TypeScript logger built for everything you ship — scripts, libraries, jobs, edge, requests. Simple logs, wide events, and structured errors in one API.","md",null,{},"\u002Flanding",{"title":502,"description":5793},"0.landing","Q8DHQ55aqg35zW1iNNxwUhRiWtbA5V1PTLxMeSbsYZg",1785016728878]