@formant/data-sdk 0.0.96 → 0.0.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -18601,6 +18601,9 @@ class DataChannel {
18601
18601
  constructor(dataChannel) {
18602
18602
  __publicField(this, "ready", false);
18603
18603
  __publicField(this, "listeners", []);
18604
+ __publicField(this, "openListeners", []);
18605
+ __publicField(this, "closeListeners", []);
18606
+ __publicField(this, "errorListeners", []);
18604
18607
  __publicField(this, "binaryListeners", []);
18605
18608
  __publicField(this, "error");
18606
18609
  __publicField(this, "decoder", new TextDecoder());
@@ -18608,13 +18611,16 @@ class DataChannel {
18608
18611
  this.dataChannel.binaryType = "arraybuffer";
18609
18612
  this.dataChannel.onopen = () => {
18610
18613
  this.ready = true;
18614
+ this.openListeners.forEach((listener) => listener());
18611
18615
  };
18612
18616
  this.dataChannel.onclose = () => {
18613
18617
  this.ready = false;
18618
+ this.closeListeners.forEach((listener) => listener());
18614
18619
  };
18615
18620
  this.dataChannel.onerror = (e) => {
18616
18621
  console.error(e);
18617
18622
  this.error = "An error occurred in DataChannel";
18623
+ this.errorListeners.forEach((listener) => listener(e));
18618
18624
  };
18619
18625
  this.dataChannel.onmessage = (m) => {
18620
18626
  this.listeners.forEach((_) => {
@@ -18627,6 +18633,24 @@ class DataChannel {
18627
18633
  });
18628
18634
  };
18629
18635
  }
18636
+ addOpenListener(listener) {
18637
+ this.openListeners.push(listener);
18638
+ }
18639
+ removeOpenListener(listener) {
18640
+ this.openListeners = this.openListeners.filter((_) => _ !== listener);
18641
+ }
18642
+ addCloseListener(listener) {
18643
+ this.closeListeners.push(listener);
18644
+ }
18645
+ removeCloseListener(listener) {
18646
+ this.closeListeners = this.closeListeners.filter((l) => l !== listener);
18647
+ }
18648
+ addErrorListener(listener) {
18649
+ this.errorListeners.push(listener);
18650
+ }
18651
+ removeErrorListener(listener) {
18652
+ this.errorListeners = this.errorListeners.filter((l) => l !== listener);
18653
+ }
18630
18654
  async waitTilReady() {
18631
18655
  if (this.ready) {
18632
18656
  return true;
@@ -18745,6 +18769,24 @@ class RequestDataChannel {
18745
18769
  this.channel_name = channel_name;
18746
18770
  this.timeout = timeout;
18747
18771
  }
18772
+ addOpenListener(listener) {
18773
+ defined(this.channel, "channel not initalized").addOpenListener(listener);
18774
+ }
18775
+ removeOpenListener(listener) {
18776
+ defined(this.channel, "channel not initalized").removeOpenListener(listener);
18777
+ }
18778
+ addCloseListener(listener) {
18779
+ defined(this.channel, "channel not initalized").addCloseListener(listener);
18780
+ }
18781
+ removeCloseListener(listener) {
18782
+ defined(this.channel, "channel not initalized").removeCloseListener(listener);
18783
+ }
18784
+ addErrorListener(listener) {
18785
+ defined(this.channel, "channel not initalized").addErrorListener(listener);
18786
+ }
18787
+ removeErrorListener(listener) {
18788
+ defined(this.channel, "channel not initalized").removeErrorListener(listener);
18789
+ }
18748
18790
  }
18749
18791
  class BinaryRequestDataChannel extends RequestDataChannel {
18750
18792
  constructor() {