{"version":3,"file":"response.mjs","names":[],"sources":["../../../src/sip-message/outbound/response.ts"],"sourcesContent":["import type InboundMessage from \"../inbound/index.js\";\nimport responseCodes from \"../response-codes.js\";\nimport OutboundMessage from \"./index.js\";\n\nclass ResponseMessage extends OutboundMessage {\n  public constructor(\n    inboundMessage: InboundMessage,\n    responseCode: number,\n    headers = {},\n    body = \"\",\n  ) {\n    super(undefined, { ...headers }, body);\n    this.subject = `SIP/2.0 ${responseCode} ${responseCodes[responseCode]}`;\n    const requiredKeys = new Set([\"via\", \"from\", \"to\", \"call-id\", \"cseq\"]);\n    const allKeys = Object.keys(inboundMessage.headers).reduce(\n      (acc, key) => {\n        acc[key.toLowerCase()] = key;\n        return acc;\n      },\n      {} as Record<string, string>,\n    );\n    for (const key of requiredKeys) {\n      if (allKeys[key]) {\n        const originalKey = allKeys[key];\n        this.headers[originalKey] = inboundMessage.headers[originalKey];\n      }\n    }\n  }\n}\n\nexport default ResponseMessage;\n"],"mappings":";;;AAIA,IAAM,kBAAN,cAA8B,gBAAgB;CAC5C,YACE,gBACA,cACA,UAAU,EAAE,EACZ,OAAO,IACP;EACA,MAAM,KAAA,GAAW,EAAE,GAAG,SAAS,EAAE,KAAK;EACtC,KAAK,UAAU,WAAW,aAAa,GAAG,cAAc;EACxD,MAAM,eAAe,IAAI,IAAI;GAAC;GAAO;GAAQ;GAAM;GAAW;GAAO,CAAC;EACtE,MAAM,UAAU,OAAO,KAAK,eAAe,QAAQ,CAAC,QACjD,KAAK,QAAQ;GACZ,IAAI,IAAI,aAAa,IAAI;GACzB,OAAO;KAET,EAAE,CACH;EACD,KAAK,MAAM,OAAO,cAChB,IAAI,QAAQ,MAAM;GAChB,MAAM,cAAc,QAAQ;GAC5B,KAAK,QAAQ,eAAe,eAAe,QAAQ"}