apitally
Version:
Simple API monitoring & analytics for REST APIs built with Express, Fastify, NestJS, AdonisJS, Hono, H3, Elysia, and Koa.
1 lines • 1.73 kB
Source Map (JSON)
{"version":3,"sources":["../../src/common/headers.ts"],"sourcesContent":["import { OutgoingHttpHeader } from \"node:http\";\n\nexport function parseContentLength(\n contentLength: OutgoingHttpHeader | undefined | null,\n): number | undefined {\n if (contentLength === undefined || contentLength === null) {\n return undefined;\n }\n if (typeof contentLength === \"number\") {\n return contentLength;\n }\n if (typeof contentLength === \"string\") {\n const parsed = parseInt(contentLength);\n return isNaN(parsed) ? undefined : parsed;\n }\n if (Array.isArray(contentLength)) {\n return parseContentLength(contentLength[0]);\n }\n return undefined;\n}\n\nexport function mergeHeaders(base: Headers, merge: Headers) {\n const mergedHeaders = new Headers(base);\n for (const [name, value] of merge)\n if (name === \"set-cookie\") mergedHeaders.append(name, value);\n else mergedHeaders.set(name, value);\n return mergedHeaders;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAEA;;;;;;AAAO,SAASA,mBACdC,eAAoD;AAEpD,MAAIA,kBAAkBC,UAAaD,kBAAkB,MAAM;AACzD,WAAOC;EACT;AACA,MAAI,OAAOD,kBAAkB,UAAU;AACrC,WAAOA;EACT;AACA,MAAI,OAAOA,kBAAkB,UAAU;AACrC,UAAME,SAASC,SAASH,aAAAA;AACxB,WAAOI,MAAMF,MAAAA,IAAUD,SAAYC;EACrC;AACA,MAAIG,MAAMC,QAAQN,aAAAA,GAAgB;AAChC,WAAOD,mBAAmBC,cAAc,CAAA,CAAE;EAC5C;AACA,SAAOC;AACT;AAjBgBF;AAmBT,SAASQ,aAAaC,MAAeC,OAAc;AACxD,QAAMC,gBAAgB,IAAIC,QAAQH,IAAAA;AAClC,aAAW,CAACI,MAAMC,KAAAA,KAAUJ,MAC1B,KAAIG,SAAS,aAAcF,eAAcI,OAAOF,MAAMC,KAAAA;MACjDH,eAAcK,IAAIH,MAAMC,KAAAA;AAC/B,SAAOH;AACT;AANgBH;","names":["parseContentLength","contentLength","undefined","parsed","parseInt","isNaN","Array","isArray","mergeHeaders","base","merge","mergedHeaders","Headers","name","value","append","set"]}