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