File tree 2 files changed +12
-4
lines changed
2 files changed +12
-4
lines changed Original file line number Diff line number Diff line change @@ -96,7 +96,7 @@ export interface DataChannel extends Channel {
96
96
// Channel implementation
97
97
close ( ) : void ;
98
98
sendMessage ( msg : string ) : boolean ;
99
- sendMessageBinary ( buffer : Uint8Array ) : boolean ;
99
+ sendMessageBinary ( buffer : Buffer | Uint8Array ) : boolean ;
100
100
isOpen ( ) : boolean ;
101
101
bufferedAmount ( ) : number ;
102
102
maxMessageSize ( ) : number ;
Original file line number Diff line number Diff line change @@ -172,12 +172,20 @@ export default class RTCDataChannel extends EventTarget implements globalThis.RT
172
172
// Needs network error, type error implemented
173
173
if ( typeof data === 'string' ) {
174
174
this . #dataChannel. sendMessage ( data ) ;
175
- } else if ( data instanceof Blob ) {
175
+ } else if ( data instanceof Blob ) {
176
176
data . arrayBuffer ( ) . then ( ( ab ) => {
177
+ if ( process ?. versions ?. bun ) {
178
+ this . #dataChannel. sendMessageBinary ( Buffer . from ( ab ) ) ;
179
+ } else {
177
180
this . #dataChannel. sendMessageBinary ( new Uint8Array ( ab ) ) ;
181
+ }
178
182
} ) ;
179
- } else {
180
- this . #dataChannel. sendMessageBinary ( new Uint8Array ( data ) ) ;
183
+ } else {
184
+ if ( process ?. versions ?. bun ) {
185
+ this . #dataChannel. sendMessageBinary ( Buffer . from ( data ) ) ;
186
+ } else {
187
+ this . #dataChannel. sendMessageBinary ( new Uint8Array ( data ) ) ;
188
+ }
181
189
}
182
190
}
183
191
You can’t perform that action at this time.
0 commit comments