{"version":3,"file":"RTCDtlsTransport.cjs","sources":["../../../src/polyfill/RTCDtlsTransport.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport RTCIceTransport from './RTCIceTransport';\nimport RTCPeerConnection from './RTCPeerConnection';\n\nexport default class RTCDtlsTransport extends EventTarget implements globalThis.RTCDtlsTransport {\n  #pc: RTCPeerConnection = null;\n  #iceTransport = null;\n\n  onstatechange: globalThis.RTCDtlsTransport['onstatechange'] = null;\n  onerror: globalThis.RTCDtlsTransport['onstatechange'] = null;\n\n  constructor(init: { pc: RTCPeerConnection }) {\n    super();\n    this.#pc = init.pc;\n\n    this.#iceTransport = new RTCIceTransport({\n      pc: init.pc,\n    });\n\n    // forward peerConnection events\n    this.#pc.addEventListener('connectionstatechange', () => {\n      const e = new Event('statechange');\n      this.dispatchEvent(e);\n      this.onstatechange?.(e);\n    });\n  }\n\n  get iceTransport(): globalThis.RTCIceTransport {\n    return this.#iceTransport;\n  }\n\n  get state(): globalThis.RTCDtlsTransportState {\n    // reduce state from new, connecting, connected, disconnected, failed, closed, unknown\n    // to RTCDtlsTRansport states new, connecting, connected, closed, failed\n    let state = this.#pc ? this.#pc.connectionState : 'new';\n    if (state === 'disconnected') {\n      state = 'closed';\n    }\n    return state;\n  }\n\n  getRemoteCertificates(): ArrayBuffer[] {\n    // TODO: implement\n    return [new ArrayBuffer(0)];\n  }\n}\n"],"names":["RTCIceTransport"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAA,GAAA,EAAA,aAAA;AAIA,MAAqB,yBAAyB,WAAA,CAAmD;AAAA,EAO/F,YAAY,IAAA,EAAiC;AAC3C,IAAA,KAAA,EAAM;AAPR,IAAA,YAAA,CAAA,IAAA,EAAA,GAAA,EAAyB,IAAA,CAAA;AACzB,IAAA,YAAA,CAAA,IAAA,EAAA,aAAA,EAAgB,IAAA,CAAA;AAEhB,IAAA,aAAA,CAAA,IAAA,EAAA,eAAA,EAA8D,IAAA,CAAA;AAC9D,IAAA,aAAA,CAAA,IAAA,EAAA,SAAA,EAAwD,IAAA,CAAA;AAItD,IAAA,YAAA,CAAA,IAAA,EAAK,KAAM,IAAA,CAAK,EAAA,CAAA;AAEhB,IAAA,YAAA,CAAA,IAAA,EAAK,aAAA,EAAgB,IAAIA,uBAAA,CAAgB;AAAA,MACvC,IAAI,IAAA,CAAK;AAAA,KACV,CAAA,CAAA;AAGD,IAAA,YAAA,CAAA,IAAA,EAAK,GAAA,CAAA,CAAI,gBAAA,CAAiB,uBAAA,EAAyB,MAAM;AACvD,MAAA,MAAM,CAAA,GAAI,IAAI,KAAA,CAAM,aAAa,CAAA;AACjC,MAAA,IAAA,CAAK,cAAc,CAAC,CAAA;AACpB,MAAA,IAAA,CAAK,gBAAgB,CAAC,CAAA;AAAA,KACvB,CAAA;AAAA;AACH,EAEA,IAAI,YAAA,GAA2C;AAC7C,IAAA,OAAO,YAAA,CAAA,IAAA,EAAK,aAAA,CAAA;AAAA;AACd,EAEA,IAAI,KAAA,GAA0C;AAG5C,IAAA,IAAI,KAAA,GAAQ,YAAA,CAAA,IAAA,EAAK,GAAA,CAAA,GAAM,YAAA,CAAA,IAAA,EAAK,KAAI,eAAA,GAAkB,KAAA;AAClD,IAAA,IAAI,UAAU,cAAA,EAAgB;AAC5B,MAAA,KAAA,GAAQ,QAAA;AAAA;AAEV,IAAA,OAAO,KAAA;AAAA;AACT,EAEA,qBAAA,GAAuC;AAErC,IAAA,OAAO,CAAC,IAAI,WAAA,CAAY,CAAC,CAAC,CAAA;AAAA;AAE9B;AAxCE,GAAA,GAAA,IAAA,OAAA,EAAA;AACA,aAAA,GAAA,IAAA,OAAA,EAAA;;;;"}