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