{"version":3,"file":"RTCSessionDescription.mjs","sources":["../../../src/polyfill/RTCSessionDescription.ts"],"sourcesContent":["// https://developer.mozilla.org/docs/Web/API/RTCSessionDescription\n//\n// Example usage\n// const init = {\n//     type: 'offer',\n//     sdp: 'v=0\\r\\no=- 1234567890 1234567890 IN IP4 192.168.1.1\\r\\ns=-\\r\\nt=0 0\\r\\na=ice-ufrag:abcd\\r\\na=ice-pwd:efgh\\r\\n'\n//   };\n\nexport default class RTCSessionDescription implements globalThis.RTCSessionDescriptionInit {\n  #type: globalThis.RTCSdpType;\n  #sdp: string;\n\n  constructor(init: globalThis.RTCSessionDescriptionInit) {\n    this.#type = init?.type;\n    this.#sdp = init?.sdp ?? '';\n  }\n\n  get type(): globalThis.RTCSdpType {\n    return this.#type;\n  }\n\n  set type(type) {\n    if (type !== 'offer' && type !== 'answer' && type !== 'pranswer' && type !== 'rollback') {\n      throw new TypeError(\n        `Failed to set the 'type' property on 'RTCSessionDescription': The provided value '${type}' is not a valid enum value of type RTCSdpType.`,\n      );\n    }\n    this.#type = type;\n  }\n\n  get sdp(): string {\n    return this.#sdp;\n  }\n\n  toJSON(): globalThis.RTCSessionDescriptionInit {\n    return {\n      sdp: this.#sdp,\n      type: this.#type,\n    };\n  }\n}\n"],"names":[],"mappings":";;;;;;;AAAA,IAAA,KAAA,EAAA,IAAA;AAQA,MAAqB,qBAAA,CAAsE;AAAA,EAIzF,YAAY,IAAA,EAA4C;AAHxD,IAAA,YAAA,CAAA,IAAA,EAAA,KAAA,CAAA;AACA,IAAA,YAAA,CAAA,IAAA,EAAA,IAAA,CAAA;AAGE,IAAA,YAAA,CAAA,IAAA,EAAK,OAAQ,IAAA,EAAM,IAAA,CAAA;AACnB,IAAA,YAAA,CAAA,IAAA,EAAK,IAAA,EAAO,MAAM,GAAA,IAAO,EAAA,CAAA;AAAA;AAC3B,EAEA,IAAI,IAAA,GAA8B;AAChC,IAAA,OAAO,YAAA,CAAA,IAAA,EAAK,KAAA,CAAA;AAAA;AACd,EAEA,IAAI,KAAK,IAAA,EAAM;AACb,IAAA,IAAI,SAAS,OAAA,IAAW,IAAA,KAAS,YAAY,IAAA,KAAS,UAAA,IAAc,SAAS,UAAA,EAAY;AACvF,MAAA,MAAM,IAAI,SAAA;AAAA,QACR,qFAAqF,IAAI,CAAA,+CAAA;AAAA,OAC3F;AAAA;AAEF,IAAA,YAAA,CAAA,IAAA,EAAK,KAAA,EAAQ,IAAA,CAAA;AAAA;AACf,EAEA,IAAI,GAAA,GAAc;AAChB,IAAA,OAAO,YAAA,CAAA,IAAA,EAAK,IAAA,CAAA;AAAA;AACd,EAEA,MAAA,GAA+C;AAC7C,IAAA,OAAO;AAAA,MACL,KAAK,YAAA,CAAA,IAAA,EAAK,IAAA,CAAA;AAAA,MACV,MAAM,YAAA,CAAA,IAAA,EAAK,KAAA;AAAA,KACb;AAAA;AAEJ;AA/BE,KAAA,GAAA,IAAA,OAAA,EAAA;AACA,IAAA,GAAA,IAAA,OAAA,EAAA;;;;"}