@erebus-sh/sdk
Version:
To install dependencies:
1 lines • 2.7 kB
Source Map (JSON)
{"version":3,"file":"messageBody-BDaUm8G2.cjs","names":["z"],"sources":["../src/internal/logger/consola.ts","../../schemas/messageBody.ts"],"sourcesContent":["import { createConsola } from \"consola\";\n\nexport const logger = createConsola({\n level: 3,\n formatOptions: {\n colors: true,\n date: true,\n compact: false,\n columns:\n typeof process !== \"undefined\" && process.stdout && process.stdout.columns\n ? process.stdout.columns\n : 80,\n },\n defaults: {\n tag: \"Erebus\",\n },\n});\n","import { z } from \"zod\";\n\n// Preserve server-provided timestamp; coerce string/number/Date into Date\nexport const MessageBodySchema = z\n .object({\n id: z.string(), // globally unique, assigned by Erebus\n topic: z.string().min(1), // room / topic (trust **our** routing, not client)\n senderId: z.string().min(1), // derived from JWT / session\n seq: z.string().min(1), // monotonic per channel\n sentAt: z.coerce.date(), // server clock - set ONCE at ingress time, never overwritten\n payload: z.string(), // string or object - allows client correlation data\n // Performance instrumentation timestamps (optional, only in debug mode) - ALL MONOTONIC\n t_ingress: z.number().optional(), // high-res timestamp when message received\n t_enqueued: z.number().optional(), // after auth/routing, ready to broadcast\n t_broadcast_begin: z.number().optional(), // before first socket write\n t_ws_write_end: z.number().optional(), // after all socket writes complete\n t_broadcast_end: z.number().optional(), // after all subscriber writes for this message are done\n // Client-side correlation fields (optional)\n clientMsgId: z.uuid().optional(), // client-generated correlation id\n clientPublishTs: z.number().optional(), // client publish timestamp (wall clock ms since epoch)\n })\n .strict();\n\nexport type MessageBody = z.infer<typeof MessageBodySchema>;\n"],"mappings":"gLAEA,MAAa,QAAA,EAAA,QAAA,eAAuB,CAClC,MAAO,EACP,cAAe,CACb,OAAQ,GACR,KAAM,GACN,QAAS,GACT,QACE,OAAO,QAAY,KAAe,QAAQ,QAAU,QAAQ,OAAO,QAC/D,QAAQ,OAAO,QACf,GACP,CACD,SAAU,CACR,IAAK,SACN,CACF,CAAC,CCbW,kBAAoBA,IAAAA,EAC9B,OAAO,CACN,GAAIA,IAAAA,EAAE,QAAQ,CACd,MAAOA,IAAAA,EAAE,QAAQ,CAAC,IAAI,EAAE,CACxB,SAAUA,IAAAA,EAAE,QAAQ,CAAC,IAAI,EAAE,CAC3B,IAAKA,IAAAA,EAAE,QAAQ,CAAC,IAAI,EAAE,CACtB,OAAQA,IAAAA,EAAE,OAAO,MAAM,CACvB,QAASA,IAAAA,EAAE,QAAQ,CAEnB,UAAWA,IAAAA,EAAE,QAAQ,CAAC,UAAU,CAChC,WAAYA,IAAAA,EAAE,QAAQ,CAAC,UAAU,CACjC,kBAAmBA,IAAAA,EAAE,QAAQ,CAAC,UAAU,CACxC,eAAgBA,IAAAA,EAAE,QAAQ,CAAC,UAAU,CACrC,gBAAiBA,IAAAA,EAAE,QAAQ,CAAC,UAAU,CAEtC,YAAaA,IAAAA,EAAE,MAAM,CAAC,UAAU,CAChC,gBAAiBA,IAAAA,EAAE,QAAQ,CAAC,UAAU,CACvC,CAAC,CACD,QAAQ"}