@libp2p/webrtc 1.0.4 → 1.0.5

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.
@@ -1,3 +1,4 @@
1
+ import { CodeError } from '@libp2p/interfaces/errors';
1
2
  import type { Direction } from '@libp2p/interface-connection';
2
3
  export declare enum codes {
3
4
  ERR_ALREADY_ABORTED = "ERR_ALREADY_ABORTED",
@@ -11,43 +12,43 @@ export declare enum codes {
11
12
  ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS = "ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS",
12
13
  ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS = "ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS"
13
14
  }
14
- export declare class WebRTCTransportError extends Error {
15
- constructor(msg: string);
15
+ export declare class WebRTCTransportError extends CodeError {
16
+ constructor(msg: string, code?: string);
16
17
  }
17
18
  export declare class ConnectionClosedError extends WebRTCTransportError {
18
19
  constructor(state: RTCPeerConnectionState, msg: string);
19
20
  }
20
- export declare function connectionClosedError(state: RTCPeerConnectionState, msg: string): Error;
21
+ export declare function connectionClosedError(state: RTCPeerConnectionState, msg: string): ConnectionClosedError;
21
22
  export declare class DataChannelError extends WebRTCTransportError {
22
23
  constructor(streamLabel: string, msg: string);
23
24
  }
24
- export declare function dataChannelError(streamLabel: string, msg: string): Error;
25
+ export declare function dataChannelError(streamLabel: string, msg: string): DataChannelError;
25
26
  export declare class InappropriateMultiaddrError extends WebRTCTransportError {
26
27
  constructor(msg: string);
27
28
  }
28
- export declare function inappropriateMultiaddr(msg: string): Error;
29
+ export declare function inappropriateMultiaddr(msg: string): InappropriateMultiaddrError;
29
30
  export declare class InvalidArgumentError extends WebRTCTransportError {
30
31
  constructor(msg: string);
31
32
  }
32
- export declare function invalidArgument(msg: string): Error;
33
+ export declare function invalidArgument(msg: string): InvalidArgumentError;
33
34
  export declare class InvalidFingerprintError extends WebRTCTransportError {
34
35
  constructor(fingerprint: string, source: string);
35
36
  }
36
- export declare function invalidFingerprint(fingerprint: string, source: string): Error;
37
+ export declare function invalidFingerprint(fingerprint: string, source: string): InvalidFingerprintError;
37
38
  export declare class OperationAbortedError extends WebRTCTransportError {
38
39
  constructor(context: string, abortReason: string);
39
40
  }
40
- export declare function operationAborted(context: string, reason: string): Error;
41
+ export declare function operationAborted(context: string, reason: string): OperationAbortedError;
41
42
  export declare class OverStreamLimitError extends WebRTCTransportError {
42
43
  constructor(msg: string);
43
44
  }
44
- export declare function overStreamLimit(dir: Direction, proto: string): Error;
45
+ export declare function overStreamLimit(dir: Direction, proto: string): OverStreamLimitError;
45
46
  export declare class UnimplementedError extends WebRTCTransportError {
46
47
  constructor(methodName: string);
47
48
  }
48
- export declare function unimplemented(methodName: string): Error;
49
+ export declare function unimplemented(methodName: string): UnimplementedError;
49
50
  export declare class UnsupportedHashAlgorithmError extends WebRTCTransportError {
50
51
  constructor(algo: string);
51
52
  }
52
- export declare function unsupportedHashAlgorithm(algorithm: string): Error;
53
+ export declare function unsupportedHashAlgorithm(algorithm: string): UnsupportedHashAlgorithmError;
53
54
  //# sourceMappingURL=error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,oBAAY,KAAK;IACf,mBAAmB,wBAAwB;IAC3C,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,sBAAsB,2BAA2B;IACjD,qBAAqB,0BAA0B;IAC/C,uBAAuB,4BAA4B;IACnD,sBAAsB,2BAA2B;IACjD,mBAAmB,wBAAwB;IAC3C,qCAAqC,0CAA0C;IAC/E,sCAAsC,2CAA2C;CAClF;AAED,qBAAa,oBAAqB,SAAQ,KAAK;gBAChC,GAAG,EAAE,MAAM;CAIzB;AAED,qBAAa,qBAAsB,SAAQ,oBAAoB;gBAChD,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM;CAIxD;AAED,wBAAgB,qBAAqB,CAAE,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAExF;AAED,qBAAa,gBAAiB,SAAQ,oBAAoB;gBAC3C,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAI9C;AAED,wBAAgB,gBAAgB,CAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAEzE;AAED,qBAAa,2BAA4B,SAAQ,oBAAoB;gBACtD,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,sBAAsB,CAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAE1D;AAED,qBAAa,oBAAqB,SAAQ,oBAAoB;gBAC/C,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,eAAe,CAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAEnD;AAED,qBAAa,uBAAwB,SAAQ,oBAAoB;gBAClD,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAIjD;AAED,wBAAgB,kBAAkB,CAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAE9E;AAED,qBAAa,qBAAsB,SAAQ,oBAAoB;gBAChD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CAIlD;AAED,wBAAgB,gBAAgB,CAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAExE;AAED,qBAAa,oBAAqB,SAAQ,oBAAoB;gBAC/C,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,eAAe,CAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAGrE;AAED,qBAAa,kBAAmB,SAAQ,oBAAoB;gBAC7C,UAAU,EAAE,MAAM;CAIhC;AAED,wBAAgB,aAAa,CAAE,UAAU,EAAE,MAAM,GAAG,KAAK,CAExD;AAED,qBAAa,6BAA8B,SAAQ,oBAAoB;gBACxD,IAAI,EAAE,MAAM;CAK1B;AAED,wBAAgB,wBAAwB,CAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAElE"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D,oBAAY,KAAK;IACf,mBAAmB,wBAAwB;IAC3C,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,sBAAsB,2BAA2B;IACjD,qBAAqB,0BAA0B;IAC/C,uBAAuB,4BAA4B;IACnD,sBAAsB,2BAA2B;IACjD,mBAAmB,wBAAwB;IAC3C,qCAAqC,0CAA0C;IAC/E,sCAAsC,2CAA2C;CAClF;AAED,qBAAa,oBAAqB,SAAQ,SAAS;gBACpC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;CAIxC;AAED,qBAAa,qBAAsB,SAAQ,oBAAoB;gBAChD,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM;CAIxD;AAED,wBAAgB,qBAAqB,CAAE,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM,GAAG,qBAAqB,CAExG;AAED,qBAAa,gBAAiB,SAAQ,oBAAoB;gBAC3C,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAI9C;AAED,wBAAgB,gBAAgB,CAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAEpF;AAED,qBAAa,2BAA4B,SAAQ,oBAAoB;gBACtD,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,sBAAsB,CAAE,GAAG,EAAE,MAAM,GAAG,2BAA2B,CAEhF;AAED,qBAAa,oBAAqB,SAAQ,oBAAoB;gBAC/C,GAAG,EAAE,MAAM;CAIzB;AAED,wBAAgB,eAAe,CAAE,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAElE;AAED,qBAAa,uBAAwB,SAAQ,oBAAoB;gBAClD,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAIjD;AAED,wBAAgB,kBAAkB,CAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,uBAAuB,CAEhG;AAED,qBAAa,qBAAsB,SAAQ,oBAAoB;gBAChD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CAIlD;AAED,wBAAgB,gBAAgB,CAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,qBAAqB,CAExF;AAED,qBAAa,oBAAqB,SAAQ,oBAAoB;gBAC/C,GAAG,EAAE,MAAM;CAKzB;AAED,wBAAgB,eAAe,CAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAEpF;AAED,qBAAa,kBAAmB,SAAQ,oBAAoB;gBAC7C,UAAU,EAAE,MAAM;CAIhC;AAED,wBAAgB,aAAa,CAAE,UAAU,EAAE,MAAM,GAAG,kBAAkB,CAErE;AAED,qBAAa,6BAA8B,SAAQ,oBAAoB;gBACxD,IAAI,EAAE,MAAM;CAI1B;AAED,wBAAgB,wBAAwB,CAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B,CAE1F"}
package/dist/src/error.js CHANGED
@@ -1,4 +1,4 @@
1
- import errCode from 'err-code';
1
+ import { CodeError } from '@libp2p/interfaces/errors';
2
2
  export var codes;
3
3
  (function (codes) {
4
4
  codes["ERR_ALREADY_ABORTED"] = "ERR_ALREADY_ABORTED";
@@ -12,93 +12,92 @@ export var codes;
12
12
  codes["ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS"] = "ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS";
13
13
  codes["ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS"] = "ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS";
14
14
  })(codes || (codes = {}));
15
- export class WebRTCTransportError extends Error {
16
- constructor(msg) {
17
- super(`WebRTC transport error: ${msg}`);
15
+ export class WebRTCTransportError extends CodeError {
16
+ constructor(msg, code) {
17
+ super(`WebRTC transport error: ${msg}`, code ?? '');
18
18
  this.name = 'WebRTCTransportError';
19
19
  }
20
20
  }
21
21
  export class ConnectionClosedError extends WebRTCTransportError {
22
22
  constructor(state, msg) {
23
- super(`peerconnection moved to state: ${state}: ${msg}`);
23
+ super(`peerconnection moved to state: ${state}: ${msg}`, codes.ERR_CONNECTION_CLOSED);
24
24
  this.name = 'WebRTC/ConnectionClosed';
25
25
  }
26
26
  }
27
27
  export function connectionClosedError(state, msg) {
28
- return errCode(new ConnectionClosedError(state, msg), codes.ERR_CONNECTION_CLOSED);
28
+ return new ConnectionClosedError(state, msg);
29
29
  }
30
30
  export class DataChannelError extends WebRTCTransportError {
31
31
  constructor(streamLabel, msg) {
32
- super(`[stream: ${streamLabel}] data channel error: ${msg}`);
32
+ super(`[stream: ${streamLabel}] data channel error: ${msg}`, codes.ERR_DATA_CHANNEL);
33
33
  this.name = 'WebRTC/DataChannelError';
34
34
  }
35
35
  }
36
36
  export function dataChannelError(streamLabel, msg) {
37
- return errCode(new DataChannelError(streamLabel, msg), codes.ERR_DATA_CHANNEL);
37
+ return new DataChannelError(streamLabel, msg);
38
38
  }
39
39
  export class InappropriateMultiaddrError extends WebRTCTransportError {
40
40
  constructor(msg) {
41
- super(`There was a problem with the Multiaddr which was passed in: ${msg}`);
41
+ super(`There was a problem with the Multiaddr which was passed in: ${msg}`, codes.ERR_INVALID_MULTIADDR);
42
42
  this.name = 'WebRTC/InappropriateMultiaddrError';
43
43
  }
44
44
  }
45
45
  export function inappropriateMultiaddr(msg) {
46
- return errCode(new InappropriateMultiaddrError(msg), codes.ERR_INVALID_MULTIADDR);
46
+ return new InappropriateMultiaddrError(msg);
47
47
  }
48
48
  export class InvalidArgumentError extends WebRTCTransportError {
49
49
  constructor(msg) {
50
- super(`There was a problem with a provided argument: ${msg}`);
50
+ super(`There was a problem with a provided argument: ${msg}`, codes.ERR_INVALID_PARAMETERS);
51
51
  this.name = 'WebRTC/InvalidArgumentError';
52
52
  }
53
53
  }
54
54
  export function invalidArgument(msg) {
55
- return errCode(new InvalidArgumentError(msg), codes.ERR_INVALID_PARAMETERS);
55
+ return new InvalidArgumentError(msg);
56
56
  }
57
57
  export class InvalidFingerprintError extends WebRTCTransportError {
58
58
  constructor(fingerprint, source) {
59
- super(`Invalid fingerprint "${fingerprint}" within ${source}`);
59
+ super(`Invalid fingerprint "${fingerprint}" within ${source}`, codes.ERR_INVALID_FINGERPRINT);
60
60
  this.name = 'WebRTC/InvalidFingerprintError';
61
61
  }
62
62
  }
63
63
  export function invalidFingerprint(fingerprint, source) {
64
- return errCode(new InvalidFingerprintError(fingerprint, source), codes.ERR_INVALID_FINGERPRINT);
64
+ return new InvalidFingerprintError(fingerprint, source);
65
65
  }
66
66
  export class OperationAbortedError extends WebRTCTransportError {
67
67
  constructor(context, abortReason) {
68
- super(`Signalled to abort because (${abortReason}}) ${context}`);
68
+ super(`Signalled to abort because (${abortReason}}) ${context}`, codes.ERR_ALREADY_ABORTED);
69
69
  this.name = 'WebRTC/OperationAbortedError';
70
70
  }
71
71
  }
72
72
  export function operationAborted(context, reason) {
73
- return errCode(new OperationAbortedError(context, reason), codes.ERR_ALREADY_ABORTED);
73
+ return new OperationAbortedError(context, reason);
74
74
  }
75
75
  export class OverStreamLimitError extends WebRTCTransportError {
76
76
  constructor(msg) {
77
- super(msg);
77
+ const code = msg.startsWith('inbound') ? codes.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS : codes.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS;
78
+ super(msg, code);
78
79
  this.name = 'WebRTC/OverStreamLimitError';
79
80
  }
80
81
  }
81
82
  export function overStreamLimit(dir, proto) {
82
- const code = dir === 'inbound' ? codes.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS : codes.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS;
83
- return errCode(new OverStreamLimitError(`${dir} stream limit reached for protocol - ${proto}`), code);
83
+ return new OverStreamLimitError(`${dir} stream limit reached for protocol - ${proto}`);
84
84
  }
85
85
  export class UnimplementedError extends WebRTCTransportError {
86
86
  constructor(methodName) {
87
- super(`A method (${methodName}) was called though it has been intentionally left unimplemented.`);
87
+ super(`A method (${methodName}) was called though it has been intentionally left unimplemented.`, codes.ERR_NOT_IMPLEMENTED);
88
88
  this.name = 'WebRTC/UnimplementedError';
89
89
  }
90
90
  }
91
91
  export function unimplemented(methodName) {
92
- return errCode(new UnimplementedError(methodName), codes.ERR_NOT_IMPLEMENTED);
92
+ return new UnimplementedError(methodName);
93
93
  }
94
94
  export class UnsupportedHashAlgorithmError extends WebRTCTransportError {
95
95
  constructor(algo) {
96
- const msg = `unsupported hash algorithm: ${algo}`;
97
- super(msg);
96
+ super(`unsupported hash algorithm: ${algo}`, codes.ERR_HASH_NOT_SUPPORTED);
98
97
  this.name = 'WebRTC/UnsupportedHashAlgorithmError';
99
98
  }
100
99
  }
101
100
  export function unsupportedHashAlgorithm(algorithm) {
102
- return errCode(new UnsupportedHashAlgorithmError(algorithm), codes.ERR_HASH_NOT_SUPPORTED);
101
+ return new UnsupportedHashAlgorithmError(algorithm);
103
102
  }
104
103
  //# sourceMappingURL=error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/webrtc",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "A libp2p transport using WebRTC connections",
5
5
  "author": "",
6
6
  "license": "Apache-2.0 OR MIT",
@@ -27,7 +27,7 @@
27
27
  ],
28
28
  "exports": {
29
29
  ".": {
30
- "types": "./src/index.d.ts",
30
+ "types": "./dist/src/index.d.ts",
31
31
  "import": "./dist/src/index.js"
32
32
  }
33
33
  },
@@ -140,11 +140,11 @@
140
140
  "@libp2p/interface-peer-id": "^2.0.0",
141
141
  "@libp2p/interface-stream-muxer": "^3.0.0",
142
142
  "@libp2p/interface-transport": "^2.0.0",
143
+ "@libp2p/interfaces": "^3.2.0",
143
144
  "@libp2p/logger": "^2.0.0",
144
145
  "@libp2p/peer-id": "^2.0.0",
145
146
  "@multiformats/multiaddr": "^11.0.3",
146
147
  "@protobuf-ts/runtime": "^2.8.0",
147
- "err-code": "^3.0.1",
148
148
  "it-length-prefixed": "^8.0.3",
149
149
  "it-merge": "^2.0.0",
150
150
  "it-pipe": "^2.0.4",
package/src/error.ts CHANGED
@@ -1,4 +1,4 @@
1
- import errCode from 'err-code'
1
+ import { CodeError } from '@libp2p/interfaces/errors'
2
2
  import type { Direction } from '@libp2p/interface-connection'
3
3
 
4
4
  export enum codes {
@@ -14,110 +14,109 @@ export enum codes {
14
14
  ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS = 'ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS',
15
15
  }
16
16
 
17
- export class WebRTCTransportError extends Error {
18
- constructor (msg: string) {
19
- super(`WebRTC transport error: ${msg}`)
17
+ export class WebRTCTransportError extends CodeError {
18
+ constructor (msg: string, code?: string) {
19
+ super(`WebRTC transport error: ${msg}`, code ?? '')
20
20
  this.name = 'WebRTCTransportError'
21
21
  }
22
22
  }
23
23
 
24
24
  export class ConnectionClosedError extends WebRTCTransportError {
25
25
  constructor (state: RTCPeerConnectionState, msg: string) {
26
- super(`peerconnection moved to state: ${state}: ${msg}`)
26
+ super(`peerconnection moved to state: ${state}: ${msg}`, codes.ERR_CONNECTION_CLOSED)
27
27
  this.name = 'WebRTC/ConnectionClosed'
28
28
  }
29
29
  }
30
30
 
31
- export function connectionClosedError (state: RTCPeerConnectionState, msg: string): Error {
32
- return errCode(new ConnectionClosedError(state, msg), codes.ERR_CONNECTION_CLOSED)
31
+ export function connectionClosedError (state: RTCPeerConnectionState, msg: string): ConnectionClosedError {
32
+ return new ConnectionClosedError(state, msg)
33
33
  }
34
34
 
35
35
  export class DataChannelError extends WebRTCTransportError {
36
36
  constructor (streamLabel: string, msg: string) {
37
- super(`[stream: ${streamLabel}] data channel error: ${msg}`)
37
+ super(`[stream: ${streamLabel}] data channel error: ${msg}`, codes.ERR_DATA_CHANNEL)
38
38
  this.name = 'WebRTC/DataChannelError'
39
39
  }
40
40
  }
41
41
 
42
- export function dataChannelError (streamLabel: string, msg: string): Error {
43
- return errCode(new DataChannelError(streamLabel, msg), codes.ERR_DATA_CHANNEL)
42
+ export function dataChannelError (streamLabel: string, msg: string): DataChannelError {
43
+ return new DataChannelError(streamLabel, msg)
44
44
  }
45
45
 
46
46
  export class InappropriateMultiaddrError extends WebRTCTransportError {
47
47
  constructor (msg: string) {
48
- super(`There was a problem with the Multiaddr which was passed in: ${msg}`)
48
+ super(`There was a problem with the Multiaddr which was passed in: ${msg}`, codes.ERR_INVALID_MULTIADDR)
49
49
  this.name = 'WebRTC/InappropriateMultiaddrError'
50
50
  }
51
51
  }
52
52
 
53
- export function inappropriateMultiaddr (msg: string): Error {
54
- return errCode(new InappropriateMultiaddrError(msg), codes.ERR_INVALID_MULTIADDR)
53
+ export function inappropriateMultiaddr (msg: string): InappropriateMultiaddrError {
54
+ return new InappropriateMultiaddrError(msg)
55
55
  }
56
56
 
57
57
  export class InvalidArgumentError extends WebRTCTransportError {
58
58
  constructor (msg: string) {
59
- super(`There was a problem with a provided argument: ${msg}`)
59
+ super(`There was a problem with a provided argument: ${msg}`, codes.ERR_INVALID_PARAMETERS)
60
60
  this.name = 'WebRTC/InvalidArgumentError'
61
61
  }
62
62
  }
63
63
 
64
- export function invalidArgument (msg: string): Error {
65
- return errCode(new InvalidArgumentError(msg), codes.ERR_INVALID_PARAMETERS)
64
+ export function invalidArgument (msg: string): InvalidArgumentError {
65
+ return new InvalidArgumentError(msg)
66
66
  }
67
67
 
68
68
  export class InvalidFingerprintError extends WebRTCTransportError {
69
69
  constructor (fingerprint: string, source: string) {
70
- super(`Invalid fingerprint "${fingerprint}" within ${source}`)
70
+ super(`Invalid fingerprint "${fingerprint}" within ${source}`, codes.ERR_INVALID_FINGERPRINT)
71
71
  this.name = 'WebRTC/InvalidFingerprintError'
72
72
  }
73
73
  }
74
74
 
75
- export function invalidFingerprint (fingerprint: string, source: string): Error {
76
- return errCode(new InvalidFingerprintError(fingerprint, source), codes.ERR_INVALID_FINGERPRINT)
75
+ export function invalidFingerprint (fingerprint: string, source: string): InvalidFingerprintError {
76
+ return new InvalidFingerprintError(fingerprint, source)
77
77
  }
78
78
 
79
79
  export class OperationAbortedError extends WebRTCTransportError {
80
80
  constructor (context: string, abortReason: string) {
81
- super(`Signalled to abort because (${abortReason}}) ${context}`)
81
+ super(`Signalled to abort because (${abortReason}}) ${context}`, codes.ERR_ALREADY_ABORTED)
82
82
  this.name = 'WebRTC/OperationAbortedError'
83
83
  }
84
84
  }
85
85
 
86
- export function operationAborted (context: string, reason: string): Error {
87
- return errCode(new OperationAbortedError(context, reason), codes.ERR_ALREADY_ABORTED)
86
+ export function operationAborted (context: string, reason: string): OperationAbortedError {
87
+ return new OperationAbortedError(context, reason)
88
88
  }
89
89
 
90
90
  export class OverStreamLimitError extends WebRTCTransportError {
91
91
  constructor (msg: string) {
92
- super(msg)
92
+ const code = msg.startsWith('inbound') ? codes.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS : codes.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS
93
+ super(msg, code)
93
94
  this.name = 'WebRTC/OverStreamLimitError'
94
95
  }
95
96
  }
96
97
 
97
- export function overStreamLimit (dir: Direction, proto: string): Error {
98
- const code = dir === 'inbound' ? codes.ERR_TOO_MANY_INBOUND_PROTOCOL_STREAMS : codes.ERR_TOO_MANY_OUTBOUND_PROTOCOL_STREAMS
99
- return errCode(new OverStreamLimitError(`${dir} stream limit reached for protocol - ${proto}`), code)
98
+ export function overStreamLimit (dir: Direction, proto: string): OverStreamLimitError {
99
+ return new OverStreamLimitError(`${dir} stream limit reached for protocol - ${proto}`)
100
100
  }
101
101
 
102
102
  export class UnimplementedError extends WebRTCTransportError {
103
103
  constructor (methodName: string) {
104
- super(`A method (${methodName}) was called though it has been intentionally left unimplemented.`)
104
+ super(`A method (${methodName}) was called though it has been intentionally left unimplemented.`, codes.ERR_NOT_IMPLEMENTED)
105
105
  this.name = 'WebRTC/UnimplementedError'
106
106
  }
107
107
  }
108
108
 
109
- export function unimplemented (methodName: string): Error {
110
- return errCode(new UnimplementedError(methodName), codes.ERR_NOT_IMPLEMENTED)
109
+ export function unimplemented (methodName: string): UnimplementedError {
110
+ return new UnimplementedError(methodName)
111
111
  }
112
112
 
113
113
  export class UnsupportedHashAlgorithmError extends WebRTCTransportError {
114
114
  constructor (algo: string) {
115
- const msg = `unsupported hash algorithm: ${algo}`
116
- super(msg)
115
+ super(`unsupported hash algorithm: ${algo}`, codes.ERR_HASH_NOT_SUPPORTED)
117
116
  this.name = 'WebRTC/UnsupportedHashAlgorithmError'
118
117
  }
119
118
  }
120
119
 
121
- export function unsupportedHashAlgorithm (algorithm: string): Error {
122
- return errCode(new UnsupportedHashAlgorithmError(algorithm), codes.ERR_HASH_NOT_SUPPORTED)
120
+ export function unsupportedHashAlgorithm (algorithm: string): UnsupportedHashAlgorithmError {
121
+ return new UnsupportedHashAlgorithmError(algorithm)
123
122
  }