wapi-client 0.8.13 → 0.9.1

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.
Files changed (114) hide show
  1. package/dist/api/base-client.browser.cjs +21 -14
  2. package/dist/api/base-client.browser.js +22 -20
  3. package/dist/api/base-client.cjs +21 -14
  4. package/dist/api/base-client.d.ts +8 -0
  5. package/dist/api/base-client.js +22 -20
  6. package/dist/api/jsonrpc/jsonrpc.enums.d.ts +5 -4
  7. package/dist/api/ws-client.browser.cjs +3 -11
  8. package/dist/api/ws-client.browser.js +4 -16
  9. package/dist/api/ws-client.cjs +4 -12
  10. package/dist/api/ws-client.js +5 -17
  11. package/dist/client.browser.cjs +29 -5
  12. package/dist/client.browser.js +30 -6
  13. package/dist/client.cjs +30 -6
  14. package/dist/client.d.ts +26 -0
  15. package/dist/client.js +31 -7
  16. package/dist/fns/create-deposit/create-deposit.browser.cjs +1 -4
  17. package/dist/fns/create-deposit/create-deposit.browser.js +2 -5
  18. package/dist/fns/create-deposit/create-deposit.cjs +1 -4
  19. package/dist/fns/create-deposit/create-deposit.js +2 -5
  20. package/dist/fns/create-withdrawal/create-withdrawal.browser.cjs +1 -4
  21. package/dist/fns/create-withdrawal/create-withdrawal.browser.js +2 -5
  22. package/dist/fns/create-withdrawal/create-withdrawal.cjs +1 -4
  23. package/dist/fns/create-withdrawal/create-withdrawal.js +2 -5
  24. package/dist/fns/find-transfers/find-transfers.browser.cjs +8 -20
  25. package/dist/fns/find-transfers/find-transfers.browser.js +9 -21
  26. package/dist/fns/find-transfers/find-transfers.cjs +8 -20
  27. package/dist/fns/find-transfers/find-transfers.js +9 -21
  28. package/dist/fns/get-balance/get-balance.browser.cjs +2 -8
  29. package/dist/fns/get-balance/get-balance.browser.js +3 -9
  30. package/dist/fns/get-balance/get-balance.cjs +2 -8
  31. package/dist/fns/get-balance/get-balance.js +3 -9
  32. package/dist/fns/get-balance-history/get-balance-history.browser.cjs +1 -4
  33. package/dist/fns/get-balance-history/get-balance-history.browser.js +2 -5
  34. package/dist/fns/get-balance-history/get-balance-history.cjs +1 -4
  35. package/dist/fns/get-balance-history/get-balance-history.js +2 -5
  36. package/dist/fns/get-token/get-token.browser.cjs +1 -4
  37. package/dist/fns/get-token/get-token.browser.js +2 -5
  38. package/dist/fns/get-token/get-token.cjs +1 -4
  39. package/dist/fns/get-token/get-token.js +2 -5
  40. package/dist/fns/healthcheck/healthcheck.browser.cjs +56 -0
  41. package/dist/fns/healthcheck/healthcheck.browser.js +38 -0
  42. package/dist/fns/healthcheck/healthcheck.cjs +60 -0
  43. package/dist/fns/healthcheck/healthcheck.d.ts +9 -0
  44. package/dist/fns/healthcheck/healthcheck.enums.browser.cjs +17 -0
  45. package/dist/fns/healthcheck/healthcheck.enums.browser.js +0 -0
  46. package/dist/fns/healthcheck/healthcheck.enums.cjs +17 -0
  47. package/dist/fns/healthcheck/healthcheck.enums.d.ts +20 -0
  48. package/dist/fns/healthcheck/healthcheck.enums.js +0 -0
  49. package/dist/fns/healthcheck/healthcheck.guards.browser.cjs +36 -0
  50. package/dist/fns/healthcheck/healthcheck.guards.browser.js +16 -0
  51. package/dist/fns/healthcheck/healthcheck.guards.cjs +41 -0
  52. package/dist/fns/healthcheck/healthcheck.guards.d.ts +4 -0
  53. package/dist/fns/healthcheck/healthcheck.guards.js +16 -0
  54. package/dist/fns/healthcheck/healthcheck.js +38 -0
  55. package/dist/fns/healthcheck/healthcheck.schema.input.json +25 -0
  56. package/dist/fns/healthcheck/healthcheck.schema.output.json +8 -0
  57. package/dist/fns/import-data/import-data.cjs +2 -5
  58. package/dist/fns/import-data/import-data.js +3 -6
  59. package/dist/fns/import-data/import-data.node.browser.cjs +2 -5
  60. package/dist/fns/import-data/import-data.node.browser.js +3 -6
  61. package/dist/fns/import-data/import-data.node.cjs +2 -5
  62. package/dist/fns/import-data/import-data.node.js +3 -6
  63. package/dist/fns/index.browser.cjs +9 -0
  64. package/dist/fns/index.browser.js +9 -0
  65. package/dist/fns/index.cjs +12 -0
  66. package/dist/fns/index.d.ts +7 -1
  67. package/dist/fns/index.js +9 -0
  68. package/dist/fns/set-flags/set-flags.browser.cjs +3 -3
  69. package/dist/fns/set-flags/set-flags.browser.js +3 -3
  70. package/dist/fns/set-flags/set-flags.cjs +3 -3
  71. package/dist/fns/set-flags/set-flags.js +3 -3
  72. package/dist/index.browser.cjs +13 -1
  73. package/dist/index.browser.js +25 -1
  74. package/dist/index.cjs +25 -1
  75. package/dist/index.d.ts +2 -2
  76. package/dist/index.js +25 -1
  77. package/dist/lib/errors.browser.cjs +642 -214
  78. package/dist/lib/errors.browser.js +645 -214
  79. package/dist/lib/errors.cjs +652 -218
  80. package/dist/lib/errors.d.ts +1411 -342
  81. package/dist/lib/errors.js +645 -214
  82. package/dist/lib/query-builder.browser.cjs +2 -2
  83. package/dist/lib/query-builder.browser.js +2 -2
  84. package/dist/lib/query-builder.cjs +2 -2
  85. package/dist/lib/query-builder.js +2 -2
  86. package/dist/lib/stream-promise.browser.cjs +3 -4
  87. package/dist/lib/stream-promise.browser.js +4 -5
  88. package/dist/lib/stream-promise.cjs +3 -4
  89. package/dist/lib/stream-promise.js +4 -5
  90. package/dist/lib/utils.browser.cjs +9 -13
  91. package/dist/lib/utils.browser.js +9 -13
  92. package/dist/lib/utils.cjs +9 -13
  93. package/dist/lib/utils.js +9 -13
  94. package/dist/lib/validator.browser.cjs +46 -4
  95. package/dist/lib/validator.browser.js +46 -4
  96. package/dist/lib/validator.cjs +46 -4
  97. package/dist/lib/validator.d.ts +5 -1
  98. package/dist/lib/validator.js +46 -4
  99. package/dist/txs/healthcheck/healthcheck.enums.browser.cjs +17 -0
  100. package/dist/txs/healthcheck/healthcheck.enums.browser.js +0 -0
  101. package/dist/txs/healthcheck/healthcheck.enums.cjs +17 -0
  102. package/dist/txs/healthcheck/healthcheck.enums.d.ts +22 -0
  103. package/dist/txs/healthcheck/healthcheck.enums.js +0 -0
  104. package/dist/txs/healthcheck/healthcheck.schema.input.json +23 -0
  105. package/dist/txs/healthcheck/healthcheck.schema.output.json +32 -0
  106. package/dist/txs/index.browser.cjs +7 -0
  107. package/dist/txs/index.browser.js +7 -0
  108. package/dist/txs/index.cjs +9 -0
  109. package/dist/txs/index.d.ts +5 -0
  110. package/dist/txs/index.js +7 -0
  111. package/dist/types/index.d.ts +2425 -1239
  112. package/dist/wapi-client-web.iife.js +4 -4
  113. package/dist/wapi-client.iife.js +4 -4
  114. package/package.json +1 -1
@@ -125,9 +125,7 @@ var BaseClient = class {
125
125
  this._requests.forEach((responseObject, key) => {
126
126
  if ("stream" in responseObject) {
127
127
  responseObject.stream.destroy(
128
- new import_errors.ConnectionError({
129
- message: "connection lost"
130
- })
128
+ new import_errors.StreamError("CONNECTION_LOST", { method: "connectionLost" })
131
129
  );
132
130
  }
133
131
  this._requests.delete(key);
@@ -294,9 +292,7 @@ var BaseClient = class {
294
292
  }
295
293
  let timeout = setTimeout(() => {
296
294
  stream.push({
297
- error: new import_errors.InputError({
298
- message: import_errors.ERROR_MESSAGES.INPUT_STREAM_TIMEOUT
299
- })
295
+ error: new import_errors.StreamError("INPUT_STREAM_TIMEOUT", { streamId })
300
296
  });
301
297
  }, 3e4);
302
298
  this._requests.set(streamStartMessage.id, {
@@ -328,9 +324,9 @@ var BaseClient = class {
328
324
  if (!isInputChunk(chunk)) {
329
325
  sendErrorToStream(
330
326
  stream,
331
- new import_errors.ValidationError({
332
- message: import_errors.ERROR_MESSAGES.INPUT_INVALID,
333
- data: chunk
327
+ new import_errors.StreamError("INVALID_INPUT_STREAM_CHUNK", {
328
+ streamId,
329
+ chunk
334
330
  })
335
331
  );
336
332
  return;
@@ -356,9 +352,9 @@ var BaseClient = class {
356
352
  }
357
353
  });
358
354
  stream.push({
359
- error: new import_errors.InputError({
360
- message: import_errors.ERROR_MESSAGES.INPUT_STREAM_ERROR,
361
- data: error
355
+ error: new import_errors.StreamError("INPUT_STREAM_ERROR", {
356
+ streamId,
357
+ error
362
358
  })
363
359
  });
364
360
  }).on("end", () => {
@@ -709,6 +705,18 @@ var BaseClient = class {
709
705
  input
710
706
  );
711
707
  }
708
+ /**
709
+ *
710
+ * @param {HealthcheckTxInput} input
711
+ * @returns {StreamPromise<HealthcheckTxOutput>}
712
+ *
713
+ */
714
+ healthcheck(input) {
715
+ return this._sendTransaction(
716
+ import_txs.APIFunctions.healthcheck,
717
+ input != null ? input : {}
718
+ );
719
+ }
712
720
  /**
713
721
  *
714
722
  * @param {ImportActionsTxInput} input
@@ -731,8 +739,7 @@ var BaseClient = class {
731
739
  importActionsStream(input, transform) {
732
740
  if (input !== void 0 && !(0, import_import_actions.isImportActionsTxOptions)(input)) {
733
741
  throw new import_errors.ValidationError({
734
- message: import_errors.ERROR_MESSAGES.INPUT_INVALID,
735
- data: input
742
+ input
736
743
  });
737
744
  }
738
745
  return this._streamTransaction(import_txs.APIFunctions.importActions, import_import_actions.isImportActionsTxInput, input, transform);
@@ -37,12 +37,7 @@ var __async = (__this, __arguments, generator) => {
37
37
 
38
38
  // src/api/base-client.ts
39
39
  import { debugLog } from "../lib/debug.browser.js";
40
- import {
41
- ConnectionError,
42
- ERROR_MESSAGES,
43
- InputError,
44
- ValidationError
45
- } from "../lib/errors.browser.js";
40
+ import { StreamError, ValidationError } from "../lib/errors.browser.js";
46
41
  import { StreamPromise } from "../lib/stream-promise.browser.js";
47
42
  import { StreamPromiseInput } from "../lib/stream-promise-input.browser.js";
48
43
  import {
@@ -117,9 +112,7 @@ var BaseClient = class {
117
112
  this._requests.forEach((responseObject, key) => {
118
113
  if ("stream" in responseObject) {
119
114
  responseObject.stream.destroy(
120
- new ConnectionError({
121
- message: "connection lost"
122
- })
115
+ new StreamError("CONNECTION_LOST", { method: "connectionLost" })
123
116
  );
124
117
  }
125
118
  this._requests.delete(key);
@@ -286,9 +279,7 @@ var BaseClient = class {
286
279
  }
287
280
  let timeout = setTimeout(() => {
288
281
  stream.push({
289
- error: new InputError({
290
- message: ERROR_MESSAGES.INPUT_STREAM_TIMEOUT
291
- })
282
+ error: new StreamError("INPUT_STREAM_TIMEOUT", { streamId })
292
283
  });
293
284
  }, 3e4);
294
285
  this._requests.set(streamStartMessage.id, {
@@ -320,9 +311,9 @@ var BaseClient = class {
320
311
  if (!isInputChunk(chunk)) {
321
312
  sendErrorToStream(
322
313
  stream,
323
- new ValidationError({
324
- message: ERROR_MESSAGES.INPUT_INVALID,
325
- data: chunk
314
+ new StreamError("INVALID_INPUT_STREAM_CHUNK", {
315
+ streamId,
316
+ chunk
326
317
  })
327
318
  );
328
319
  return;
@@ -348,9 +339,9 @@ var BaseClient = class {
348
339
  }
349
340
  });
350
341
  stream.push({
351
- error: new InputError({
352
- message: ERROR_MESSAGES.INPUT_STREAM_ERROR,
353
- data: error
342
+ error: new StreamError("INPUT_STREAM_ERROR", {
343
+ streamId,
344
+ error
354
345
  })
355
346
  });
356
347
  }).on("end", () => {
@@ -701,6 +692,18 @@ var BaseClient = class {
701
692
  input
702
693
  );
703
694
  }
695
+ /**
696
+ *
697
+ * @param {HealthcheckTxInput} input
698
+ * @returns {StreamPromise<HealthcheckTxOutput>}
699
+ *
700
+ */
701
+ healthcheck(input) {
702
+ return this._sendTransaction(
703
+ APIFunctions.healthcheck,
704
+ input != null ? input : {}
705
+ );
706
+ }
704
707
  /**
705
708
  *
706
709
  * @param {ImportActionsTxInput} input
@@ -723,8 +726,7 @@ var BaseClient = class {
723
726
  importActionsStream(input, transform) {
724
727
  if (input !== void 0 && !isImportActionsTxOptions(input)) {
725
728
  throw new ValidationError({
726
- message: ERROR_MESSAGES.INPUT_INVALID,
727
- data: input
729
+ input
728
730
  });
729
731
  }
730
732
  return this._streamTransaction(APIFunctions.importActions, isImportActionsTxInput, input, transform);
@@ -125,9 +125,7 @@ var BaseClient = class {
125
125
  this._requests.forEach((responseObject, key) => {
126
126
  if ("stream" in responseObject) {
127
127
  responseObject.stream.destroy(
128
- new import_errors.ConnectionError({
129
- message: "connection lost"
130
- })
128
+ new import_errors.StreamError("CONNECTION_LOST", { method: "connectionLost" })
131
129
  );
132
130
  }
133
131
  this._requests.delete(key);
@@ -294,9 +292,7 @@ var BaseClient = class {
294
292
  }
295
293
  let timeout = setTimeout(() => {
296
294
  stream.push({
297
- error: new import_errors.InputError({
298
- message: import_errors.ERROR_MESSAGES.INPUT_STREAM_TIMEOUT
299
- })
295
+ error: new import_errors.StreamError("INPUT_STREAM_TIMEOUT", { streamId })
300
296
  });
301
297
  }, 3e4);
302
298
  this._requests.set(streamStartMessage.id, {
@@ -328,9 +324,9 @@ var BaseClient = class {
328
324
  if (!isInputChunk(chunk)) {
329
325
  sendErrorToStream(
330
326
  stream,
331
- new import_errors.ValidationError({
332
- message: import_errors.ERROR_MESSAGES.INPUT_INVALID,
333
- data: chunk
327
+ new import_errors.StreamError("INVALID_INPUT_STREAM_CHUNK", {
328
+ streamId,
329
+ chunk
334
330
  })
335
331
  );
336
332
  return;
@@ -356,9 +352,9 @@ var BaseClient = class {
356
352
  }
357
353
  });
358
354
  stream.push({
359
- error: new import_errors.InputError({
360
- message: import_errors.ERROR_MESSAGES.INPUT_STREAM_ERROR,
361
- data: error
355
+ error: new import_errors.StreamError("INPUT_STREAM_ERROR", {
356
+ streamId,
357
+ error
362
358
  })
363
359
  });
364
360
  }).on("end", () => {
@@ -709,6 +705,18 @@ var BaseClient = class {
709
705
  input
710
706
  );
711
707
  }
708
+ /**
709
+ *
710
+ * @param {HealthcheckTxInput} input
711
+ * @returns {StreamPromise<HealthcheckTxOutput>}
712
+ *
713
+ */
714
+ healthcheck(input) {
715
+ return this._sendTransaction(
716
+ import_txs.APIFunctions.healthcheck,
717
+ input != null ? input : {}
718
+ );
719
+ }
712
720
  /**
713
721
  *
714
722
  * @param {ImportActionsTxInput} input
@@ -731,8 +739,7 @@ var BaseClient = class {
731
739
  importActionsStream(input, transform) {
732
740
  if (input !== void 0 && !(0, import_import_actions.isImportActionsTxOptions)(input)) {
733
741
  throw new import_errors.ValidationError({
734
- message: import_errors.ERROR_MESSAGES.INPUT_INVALID,
735
- data: input
742
+ input
736
743
  });
737
744
  }
738
745
  return this._streamTransaction(import_txs.APIFunctions.importActions, import_import_actions.isImportActionsTxInput, input, transform);
@@ -36,6 +36,7 @@ import { GetTransferGroupTxInput, GetTransferGroupTxOutput } from '../txs/get-tr
36
36
  import { GetTransferTxInput, GetTransferTxOutput } from '../txs/get-transfer/get-transfer.enums';
37
37
  import { GetWalletManyTxInput, GetWalletManyTxOutput } from '../txs/get-wallet-many/get-wallet-many.enums';
38
38
  import { GetWalletTxInput, GetWalletTxOutput } from '../txs/get-wallet/get-wallet.enums';
39
+ import { HealthcheckTxInput, HealthcheckTxOutput } from '../txs/healthcheck/healthcheck.enums';
39
40
  import { ImportActionsTxInput, ImportActionsTxOutput, ImportActionsTxOptions } from '../txs/import-actions/import-actions.enums';
40
41
  import { ImportDatabaseTxInput, ImportDatabaseTxOutput } from '../txs/import-database/import-database.enums';
41
42
  import { ListDatabaseExportsTxInput, ListDatabaseExportsTxOutput } from '../txs/list-database-exports/list-database-exports.enums';
@@ -302,6 +303,13 @@ export declare class BaseClient {
302
303
  *
303
304
  */
304
305
  getWalletMany(input: GetWalletManyTxInput): StreamPromise<GetWalletManyTxOutput>;
306
+ /**
307
+ *
308
+ * @param {HealthcheckTxInput} input
309
+ * @returns {StreamPromise<HealthcheckTxOutput>}
310
+ *
311
+ */
312
+ healthcheck(input?: HealthcheckTxInput): StreamPromise<HealthcheckTxOutput>;
305
313
  /**
306
314
  *
307
315
  * @param {ImportActionsTxInput} input
@@ -37,12 +37,7 @@ var __async = (__this, __arguments, generator) => {
37
37
 
38
38
  // src/api/base-client.ts
39
39
  import { debugLog } from "../lib/debug";
40
- import {
41
- ConnectionError,
42
- ERROR_MESSAGES,
43
- InputError,
44
- ValidationError
45
- } from "../lib/errors";
40
+ import { StreamError, ValidationError } from "../lib/errors";
46
41
  import { StreamPromise } from "../lib/stream-promise";
47
42
  import { StreamPromiseInput } from "../lib/stream-promise-input";
48
43
  import {
@@ -117,9 +112,7 @@ var BaseClient = class {
117
112
  this._requests.forEach((responseObject, key) => {
118
113
  if ("stream" in responseObject) {
119
114
  responseObject.stream.destroy(
120
- new ConnectionError({
121
- message: "connection lost"
122
- })
115
+ new StreamError("CONNECTION_LOST", { method: "connectionLost" })
123
116
  );
124
117
  }
125
118
  this._requests.delete(key);
@@ -286,9 +279,7 @@ var BaseClient = class {
286
279
  }
287
280
  let timeout = setTimeout(() => {
288
281
  stream.push({
289
- error: new InputError({
290
- message: ERROR_MESSAGES.INPUT_STREAM_TIMEOUT
291
- })
282
+ error: new StreamError("INPUT_STREAM_TIMEOUT", { streamId })
292
283
  });
293
284
  }, 3e4);
294
285
  this._requests.set(streamStartMessage.id, {
@@ -320,9 +311,9 @@ var BaseClient = class {
320
311
  if (!isInputChunk(chunk)) {
321
312
  sendErrorToStream(
322
313
  stream,
323
- new ValidationError({
324
- message: ERROR_MESSAGES.INPUT_INVALID,
325
- data: chunk
314
+ new StreamError("INVALID_INPUT_STREAM_CHUNK", {
315
+ streamId,
316
+ chunk
326
317
  })
327
318
  );
328
319
  return;
@@ -348,9 +339,9 @@ var BaseClient = class {
348
339
  }
349
340
  });
350
341
  stream.push({
351
- error: new InputError({
352
- message: ERROR_MESSAGES.INPUT_STREAM_ERROR,
353
- data: error
342
+ error: new StreamError("INPUT_STREAM_ERROR", {
343
+ streamId,
344
+ error
354
345
  })
355
346
  });
356
347
  }).on("end", () => {
@@ -701,6 +692,18 @@ var BaseClient = class {
701
692
  input
702
693
  );
703
694
  }
695
+ /**
696
+ *
697
+ * @param {HealthcheckTxInput} input
698
+ * @returns {StreamPromise<HealthcheckTxOutput>}
699
+ *
700
+ */
701
+ healthcheck(input) {
702
+ return this._sendTransaction(
703
+ APIFunctions.healthcheck,
704
+ input != null ? input : {}
705
+ );
706
+ }
704
707
  /**
705
708
  *
706
709
  * @param {ImportActionsTxInput} input
@@ -723,8 +726,7 @@ var BaseClient = class {
723
726
  importActionsStream(input, transform) {
724
727
  if (input !== void 0 && !isImportActionsTxOptions(input)) {
725
728
  throw new ValidationError({
726
- message: ERROR_MESSAGES.INPUT_INVALID,
727
- data: input
729
+ input
728
730
  });
729
731
  }
730
732
  return this._streamTransaction(APIFunctions.importActions, isImportActionsTxInput, input, transform);
@@ -1,4 +1,4 @@
1
- import { DatabaseError, InputError, ValidationError } from '../../lib/errors';
1
+ import { WAPIError } from '../../lib/errors';
2
2
  export interface JSONRPCRequest {
3
3
  jsonrpc: '2.0';
4
4
  method: string;
@@ -14,14 +14,15 @@ export interface JSONRPCRequestParams {
14
14
  };
15
15
  [key: string]: unknown;
16
16
  }
17
- export interface JSONRPCError {
17
+ export interface IJSONRPCError {
18
18
  code: number;
19
19
  message: string;
20
+ data?: unknown;
20
21
  }
21
22
  export interface JSONRPCResponse {
22
23
  jsonrpc: '2.0';
23
24
  result?: unknown;
24
- error?: JSONRPCError;
25
+ error?: IJSONRPCError;
25
26
  id: string | number | null;
26
27
  }
27
28
  export interface JSONRPCResponseObject extends JSONRPCResponse {
@@ -49,5 +50,5 @@ export interface JSONRPCResponseStream {
49
50
  };
50
51
  error?: unknown;
51
52
  }) => void;
52
- destroy: (error?: Error | DatabaseError | ValidationError | InputError) => void;
53
+ destroy: (error?: Error | WAPIError) => void;
53
54
  }
@@ -83,12 +83,7 @@ function createConnection(opts) {
83
83
  `createConnection>close(reason:${event.reason},code:${event.code},wasClean:${event.wasClean})`
84
84
  );
85
85
  if (event.code === import_connection.SocketStatuses.authError) {
86
- return clean(
87
- new import_errors.AuthenticationError({
88
- message: import_errors.ERROR_MESSAGES.AUTHENTICATION_FAILED,
89
- code: import_errors.ERROR_TYPES.AuthenticationError
90
- })
91
- );
86
+ return clean(new import_errors.AuthenticationError());
92
87
  }
93
88
  clean(new Error("WS closed"));
94
89
  }
@@ -156,10 +151,7 @@ var WsClient = class extends import_base_client.BaseClient {
156
151
  }
157
152
  _setErrored(err) {
158
153
  super._setErrored(err);
159
- if (
160
- // eslint-disable-next-line no-prototype-builtins
161
- err.hasOwnProperty("code") && err.code === import_errors.ERROR_TYPES.AuthenticationError
162
- ) {
154
+ if (err instanceof import_errors.AuthenticationError || "code" in err && err.code === import_errors.ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
163
155
  this._tryToReconnect = false;
164
156
  }
165
157
  }
@@ -211,7 +203,7 @@ var WsClient = class extends import_base_client.BaseClient {
211
203
  this._ready();
212
204
  break;
213
205
  } catch (err) {
214
- if (err.code === import_errors.ERROR_TYPES.AuthenticationError) {
206
+ if (err.code === import_errors.ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
215
207
  throw err;
216
208
  }
217
209
  if (i > nrOfAttempts - 1) {
@@ -24,11 +24,7 @@ var browser_default = WebSocket;
24
24
 
25
25
  // src/api/ws-client.ts
26
26
  import { debugLog } from "../lib/debug.browser.js";
27
- import {
28
- AuthenticationError,
29
- ERROR_MESSAGES,
30
- ERROR_TYPES
31
- } from "../lib/errors.browser.js";
27
+ import { AuthenticationError, ERROR_GROUPS } from "../lib/errors.browser.js";
32
28
  import { getConnectionParams, wait } from "../lib/utils.browser.js";
33
29
  import { BaseClient } from "./base-client.browser.js";
34
30
  import {
@@ -65,12 +61,7 @@ function createConnection(opts) {
65
61
  `createConnection>close(reason:${event.reason},code:${event.code},wasClean:${event.wasClean})`
66
62
  );
67
63
  if (event.code === SocketStatuses.authError) {
68
- return clean(
69
- new AuthenticationError({
70
- message: ERROR_MESSAGES.AUTHENTICATION_FAILED,
71
- code: ERROR_TYPES.AuthenticationError
72
- })
73
- );
64
+ return clean(new AuthenticationError());
74
65
  }
75
66
  clean(new Error("WS closed"));
76
67
  }
@@ -138,10 +129,7 @@ var WsClient = class extends BaseClient {
138
129
  }
139
130
  _setErrored(err) {
140
131
  super._setErrored(err);
141
- if (
142
- // eslint-disable-next-line no-prototype-builtins
143
- err.hasOwnProperty("code") && err.code === ERROR_TYPES.AuthenticationError
144
- ) {
132
+ if (err instanceof AuthenticationError || "code" in err && err.code === ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
145
133
  this._tryToReconnect = false;
146
134
  }
147
135
  }
@@ -193,7 +181,7 @@ var WsClient = class extends BaseClient {
193
181
  this._ready();
194
182
  break;
195
183
  } catch (err) {
196
- if (err.code === ERROR_TYPES.AuthenticationError) {
184
+ if (err.code === ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
197
185
  throw err;
198
186
  }
199
187
  if (i > nrOfAttempts - 1) {
@@ -61,7 +61,7 @@ var import_base_client = require('./base-client.cjs');
61
61
  var import_connection = require('./connection/connection.enums.cjs');
62
62
  var import__ = require('../index.cjs');
63
63
  var _a;
64
- var CLIENT_VERSION = (_a = '0.8.13') != null ? _a : "";
64
+ var CLIENT_VERSION = (_a = '0.9.1') != null ? _a : "";
65
65
  function createWsClient(opts) {
66
66
  const initialConnection = createConnection(opts);
67
67
  return new WsClient(initialConnection, opts);
@@ -89,12 +89,7 @@ function createConnection(opts) {
89
89
  `createConnection>close(reason:${event.reason},code:${event.code},wasClean:${event.wasClean})`
90
90
  );
91
91
  if (event.code === import_connection.SocketStatuses.authError) {
92
- return clean(
93
- new import_errors.AuthenticationError({
94
- message: import_errors.ERROR_MESSAGES.AUTHENTICATION_FAILED,
95
- code: import_errors.ERROR_TYPES.AuthenticationError
96
- })
97
- );
92
+ return clean(new import_errors.AuthenticationError());
98
93
  }
99
94
  clean(new Error("WS closed"));
100
95
  }
@@ -162,10 +157,7 @@ var WsClient = class extends import_base_client.BaseClient {
162
157
  }
163
158
  _setErrored(err) {
164
159
  super._setErrored(err);
165
- if (
166
- // eslint-disable-next-line no-prototype-builtins
167
- err.hasOwnProperty("code") && err.code === import_errors.ERROR_TYPES.AuthenticationError
168
- ) {
160
+ if (err instanceof import_errors.AuthenticationError || "code" in err && err.code === import_errors.ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
169
161
  this._tryToReconnect = false;
170
162
  }
171
163
  }
@@ -217,7 +209,7 @@ var WsClient = class extends import_base_client.BaseClient {
217
209
  this._ready();
218
210
  break;
219
211
  } catch (err) {
220
- if (err.code === import_errors.ERROR_TYPES.AuthenticationError) {
212
+ if (err.code === import_errors.ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
221
213
  throw err;
222
214
  }
223
215
  if (i > nrOfAttempts - 1) {
@@ -22,11 +22,7 @@ var __async = (__this, __arguments, generator) => {
22
22
  // src/api/ws-client.ts
23
23
  import WebSocket from "modern-isomorphic-ws";
24
24
  import { debugLog } from "../lib/debug";
25
- import {
26
- AuthenticationError,
27
- ERROR_MESSAGES,
28
- ERROR_TYPES
29
- } from "../lib/errors";
25
+ import { AuthenticationError, ERROR_GROUPS } from "../lib/errors";
30
26
  import { getConnectionParams, wait } from "../lib/utils";
31
27
  import { BaseClient } from "./base-client";
32
28
  import {
@@ -35,7 +31,7 @@ import {
35
31
  } from "./connection/connection.enums";
36
32
  import { WapiClientType } from "../index";
37
33
  var _a;
38
- var CLIENT_VERSION = (_a = '0.8.13') != null ? _a : "";
34
+ var CLIENT_VERSION = (_a = '0.9.1') != null ? _a : "";
39
35
  function createWsClient(opts) {
40
36
  const initialConnection = createConnection(opts);
41
37
  return new WsClient(initialConnection, opts);
@@ -63,12 +59,7 @@ function createConnection(opts) {
63
59
  `createConnection>close(reason:${event.reason},code:${event.code},wasClean:${event.wasClean})`
64
60
  );
65
61
  if (event.code === SocketStatuses.authError) {
66
- return clean(
67
- new AuthenticationError({
68
- message: ERROR_MESSAGES.AUTHENTICATION_FAILED,
69
- code: ERROR_TYPES.AuthenticationError
70
- })
71
- );
62
+ return clean(new AuthenticationError());
72
63
  }
73
64
  clean(new Error("WS closed"));
74
65
  }
@@ -136,10 +127,7 @@ var WsClient = class extends BaseClient {
136
127
  }
137
128
  _setErrored(err) {
138
129
  super._setErrored(err);
139
- if (
140
- // eslint-disable-next-line no-prototype-builtins
141
- err.hasOwnProperty("code") && err.code === ERROR_TYPES.AuthenticationError
142
- ) {
130
+ if (err instanceof AuthenticationError || "code" in err && err.code === ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
143
131
  this._tryToReconnect = false;
144
132
  }
145
133
  }
@@ -191,7 +179,7 @@ var WsClient = class extends BaseClient {
191
179
  this._ready();
192
180
  break;
193
181
  } catch (err) {
194
- if (err.code === ERROR_TYPES.AuthenticationError) {
182
+ if (err.code === ERROR_GROUPS.AUTH.ERRORS.AUTHENTICATION_ERROR.code) {
195
183
  throw err;
196
184
  }
197
185
  if (i > nrOfAttempts - 1) {
@@ -1112,6 +1112,33 @@ var Client = class {
1112
1112
  getWallet(input, options) {
1113
1113
  return import_fns.ClientFunctions.getWallet({ client: this }, input, options);
1114
1114
  }
1115
+ /**
1116
+ *
1117
+ * Get health information about service
1118
+ *
1119
+ * ```javascript
1120
+ *
1121
+ * const result = await wapiClient.healthcheck({
1122
+ * }, {
1123
+ * tracking_id: 'mylogId',
1124
+ * });
1125
+ * expect(result).toEqual({
1126
+ * status: 'green',
1127
+ * database_size: '3240MB',
1128
+ * indexes_size: '1234MB',
1129
+ * connection_count: 1,
1130
+ * });
1131
+ *
1132
+ * ```
1133
+ *
1134
+ * @param {HealthcheckFnInput} input
1135
+ * @param {HealthcheckFnOptions} [options]
1136
+ * @returns {StreamPromise<HealthcheckFnOutput>}
1137
+ *
1138
+ */
1139
+ healthcheck(input, options) {
1140
+ return import_fns.ClientFunctions.healthcheck({ client: this }, input != null ? input : {}, options);
1141
+ }
1115
1142
  importData(input, options) {
1116
1143
  if (input === void 0 && options === void 0) {
1117
1144
  return import_fns.ClientFunctions.importData({ client: this });
@@ -1123,11 +1150,8 @@ var Client = class {
1123
1150
  return import_fns.ClientFunctions.importData({ client: this }, input, options);
1124
1151
  }
1125
1152
  throw new import_errors.ValidationError({
1126
- message: import_errors.ERROR_MESSAGES.INPUT_INVALID,
1127
- data: {
1128
- input,
1129
- options
1130
- }
1153
+ input,
1154
+ options
1131
1155
  });
1132
1156
  }
1133
1157
  /**
@@ -43,7 +43,7 @@ import {
43
43
  createHttpClient,
44
44
  createWsClient
45
45
  } from "./api/index.browser.js";
46
- import { ERROR_MESSAGES, ValidationError } from "./lib/errors.browser.js";
46
+ import { ValidationError } from "./lib/errors.browser.js";
47
47
  import { ClientFunctions } from "./fns/index.browser.js";
48
48
  import {
49
49
  isImportDataFnOptions,
@@ -1096,6 +1096,33 @@ var Client = class {
1096
1096
  getWallet(input, options) {
1097
1097
  return ClientFunctions.getWallet({ client: this }, input, options);
1098
1098
  }
1099
+ /**
1100
+ *
1101
+ * Get health information about service
1102
+ *
1103
+ * ```javascript
1104
+ *
1105
+ * const result = await wapiClient.healthcheck({
1106
+ * }, {
1107
+ * tracking_id: 'mylogId',
1108
+ * });
1109
+ * expect(result).toEqual({
1110
+ * status: 'green',
1111
+ * database_size: '3240MB',
1112
+ * indexes_size: '1234MB',
1113
+ * connection_count: 1,
1114
+ * });
1115
+ *
1116
+ * ```
1117
+ *
1118
+ * @param {HealthcheckFnInput} input
1119
+ * @param {HealthcheckFnOptions} [options]
1120
+ * @returns {StreamPromise<HealthcheckFnOutput>}
1121
+ *
1122
+ */
1123
+ healthcheck(input, options) {
1124
+ return ClientFunctions.healthcheck({ client: this }, input != null ? input : {}, options);
1125
+ }
1099
1126
  importData(input, options) {
1100
1127
  if (input === void 0 && options === void 0) {
1101
1128
  return ClientFunctions.importData({ client: this });
@@ -1107,11 +1134,8 @@ var Client = class {
1107
1134
  return ClientFunctions.importData({ client: this }, input, options);
1108
1135
  }
1109
1136
  throw new ValidationError({
1110
- message: ERROR_MESSAGES.INPUT_INVALID,
1111
- data: {
1112
- input,
1113
- options
1114
- }
1137
+ input,
1138
+ options
1115
1139
  });
1116
1140
  }
1117
1141
  /**