wapi-client 0.8.13 → 0.9.0

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 (77) hide show
  1. package/dist/api/base-client.browser.cjs +9 -14
  2. package/dist/api/base-client.browser.js +10 -17
  3. package/dist/api/base-client.cjs +9 -14
  4. package/dist/api/base-client.js +10 -17
  5. package/dist/api/jsonrpc/jsonrpc.enums.d.ts +5 -4
  6. package/dist/api/ws-client.browser.cjs +3 -11
  7. package/dist/api/ws-client.browser.js +4 -16
  8. package/dist/api/ws-client.cjs +4 -12
  9. package/dist/api/ws-client.js +5 -17
  10. package/dist/client.browser.cjs +2 -5
  11. package/dist/client.browser.js +3 -6
  12. package/dist/client.cjs +3 -6
  13. package/dist/client.js +4 -7
  14. package/dist/fns/create-deposit/create-deposit.browser.cjs +1 -4
  15. package/dist/fns/create-deposit/create-deposit.browser.js +2 -5
  16. package/dist/fns/create-deposit/create-deposit.cjs +1 -4
  17. package/dist/fns/create-deposit/create-deposit.js +2 -5
  18. package/dist/fns/create-withdrawal/create-withdrawal.browser.cjs +1 -4
  19. package/dist/fns/create-withdrawal/create-withdrawal.browser.js +2 -5
  20. package/dist/fns/create-withdrawal/create-withdrawal.cjs +1 -4
  21. package/dist/fns/create-withdrawal/create-withdrawal.js +2 -5
  22. package/dist/fns/find-transfers/find-transfers.browser.cjs +8 -20
  23. package/dist/fns/find-transfers/find-transfers.browser.js +9 -21
  24. package/dist/fns/find-transfers/find-transfers.cjs +8 -20
  25. package/dist/fns/find-transfers/find-transfers.js +9 -21
  26. package/dist/fns/get-balance/get-balance.browser.cjs +2 -8
  27. package/dist/fns/get-balance/get-balance.browser.js +3 -9
  28. package/dist/fns/get-balance/get-balance.cjs +2 -8
  29. package/dist/fns/get-balance/get-balance.js +3 -9
  30. package/dist/fns/get-balance-history/get-balance-history.browser.cjs +1 -4
  31. package/dist/fns/get-balance-history/get-balance-history.browser.js +2 -5
  32. package/dist/fns/get-balance-history/get-balance-history.cjs +1 -4
  33. package/dist/fns/get-balance-history/get-balance-history.js +2 -5
  34. package/dist/fns/get-token/get-token.browser.cjs +1 -4
  35. package/dist/fns/get-token/get-token.browser.js +2 -5
  36. package/dist/fns/get-token/get-token.cjs +1 -4
  37. package/dist/fns/get-token/get-token.js +2 -5
  38. package/dist/fns/import-data/import-data.cjs +2 -5
  39. package/dist/fns/import-data/import-data.js +3 -6
  40. package/dist/fns/import-data/import-data.node.browser.cjs +2 -5
  41. package/dist/fns/import-data/import-data.node.browser.js +3 -6
  42. package/dist/fns/import-data/import-data.node.cjs +2 -5
  43. package/dist/fns/import-data/import-data.node.js +3 -6
  44. package/dist/fns/set-flags/set-flags.browser.cjs +3 -3
  45. package/dist/fns/set-flags/set-flags.browser.js +3 -3
  46. package/dist/fns/set-flags/set-flags.cjs +3 -3
  47. package/dist/fns/set-flags/set-flags.js +3 -3
  48. package/dist/index.browser.cjs +13 -1
  49. package/dist/index.browser.js +25 -1
  50. package/dist/index.cjs +25 -1
  51. package/dist/index.d.ts +2 -2
  52. package/dist/index.js +25 -1
  53. package/dist/lib/errors.browser.cjs +642 -214
  54. package/dist/lib/errors.browser.js +645 -214
  55. package/dist/lib/errors.cjs +652 -218
  56. package/dist/lib/errors.d.ts +1411 -342
  57. package/dist/lib/errors.js +645 -214
  58. package/dist/lib/query-builder.browser.cjs +2 -2
  59. package/dist/lib/query-builder.browser.js +2 -2
  60. package/dist/lib/query-builder.cjs +2 -2
  61. package/dist/lib/query-builder.js +2 -2
  62. package/dist/lib/stream-promise.browser.cjs +3 -4
  63. package/dist/lib/stream-promise.browser.js +4 -5
  64. package/dist/lib/stream-promise.cjs +3 -4
  65. package/dist/lib/stream-promise.js +4 -5
  66. package/dist/lib/utils.browser.cjs +9 -13
  67. package/dist/lib/utils.browser.js +9 -13
  68. package/dist/lib/utils.cjs +9 -13
  69. package/dist/lib/utils.js +9 -13
  70. package/dist/lib/validator.browser.cjs +6 -4
  71. package/dist/lib/validator.browser.js +6 -4
  72. package/dist/lib/validator.cjs +6 -4
  73. package/dist/lib/validator.js +6 -4
  74. package/dist/types/index.d.ts +2374 -1304
  75. package/dist/wapi-client-web.iife.js +6 -6
  76. package/dist/wapi-client.iife.js +6 -6
  77. package/package.json +1 -1
@@ -1,278 +1,709 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+
1
18
  // src/lib/errors.ts
2
- var CoreError = class extends Error {
3
- constructor({ code, message, data, description }) {
19
+ var ERROR_GROUPS = {
20
+ JSONRPC: {
21
+ min: -32700,
22
+ max: -32600,
23
+ ERRORS: {
24
+ // These error messages differ from types because of JSONRPC spec
25
+ PARSE_ERROR: {
26
+ code: -32700,
27
+ message: "Parse error",
28
+ description: "Unable to parse JSON input"
29
+ },
30
+ INVALID_REQUEST: {
31
+ code: -32600,
32
+ message: "Invalid request",
33
+ description: "JSON input does not match JSONRPC spec"
34
+ },
35
+ METHOD_NOT_FOUND: {
36
+ code: -32601,
37
+ message: "Method not found",
38
+ description: "Requested method not found"
39
+ },
40
+ INVALID_PARAMS: {
41
+ code: -32602,
42
+ message: "Invalid params",
43
+ description: "Invalid params provided for method"
44
+ },
45
+ INTERNAL_SERVER_ERROR: {
46
+ code: -32603,
47
+ message: "Internal server error",
48
+ description: "Unknown error occurred"
49
+ }
50
+ }
51
+ },
52
+ AUTH: {
53
+ min: -20999,
54
+ max: -2e4,
55
+ ERRORS: {
56
+ AUTHENTICATION_ERROR: {
57
+ code: -2e4,
58
+ // Historic reasons why not AUTHENTICATION_ERROR
59
+ message: "Authentication error",
60
+ description: "Invalid authentication credentials"
61
+ },
62
+ AUTHORIZATION_ERROR: {
63
+ code: -20001,
64
+ message: "AUTHORIZATION_ERROR",
65
+ description: "Provided credentials lack access rights"
66
+ }
67
+ }
68
+ },
69
+ STREAM: {
70
+ min: -10999,
71
+ max: -1e4,
72
+ ERRORS: {
73
+ CONNECTION_LOST: {
74
+ code: -1e4,
75
+ message: "CONNECTION_LOST",
76
+ description: "Lost connection to server"
77
+ },
78
+ INPUT_STREAM_INVALID: {
79
+ code: -10001,
80
+ message: "INPUT_STREAM_INVALID",
81
+ description: "Invalid input stream identifier provided"
82
+ },
83
+ INVALID_RESPONSE_STREAM_CHUNK: {
84
+ code: -10002,
85
+ message: "INVALID_RESPONSE_STREAM_CHUNK",
86
+ description: "Received multiple chunks for non-array property"
87
+ },
88
+ INVALID_INPUT_STREAM_CHUNK: {
89
+ code: -10003,
90
+ message: "INVALID_INPUT_STREAM_CHUNK",
91
+ description: "Invalid chunk sent to input stream"
92
+ },
93
+ INPUT_STREAM_TIMEOUT: {
94
+ code: -10004,
95
+ message: "INPUT_STREAM_TIMEOUT",
96
+ description: "Input stream failed to finish in allotted time"
97
+ },
98
+ INPUT_STREAM_ERROR: {
99
+ code: -10005,
100
+ message: "INPUT_STREAM_ERROR",
101
+ description: "Unknown error in input stream"
102
+ },
103
+ INPUT_STREAM_NOT_ALLOWED: {
104
+ code: -10006,
105
+ message: "INPUT_STREAM_NOT_ALLOWED",
106
+ description: "Stream input not allowed for method"
107
+ }
108
+ }
109
+ },
110
+ INPUT: {
111
+ min: -14999,
112
+ max: -11e3,
113
+ ERRORS: {
114
+ HTTP_BODY_SIZE: {
115
+ code: -11e3,
116
+ message: "HTTP_BODY_SIZE",
117
+ description: "Http body size can't be more than 100MB"
118
+ },
119
+ DATABASE_EXPORT_CONFLICT: {
120
+ code: -12e3,
121
+ message: "DATABASE_EXPORT_CONFLICT",
122
+ description: "Database export already in progress"
123
+ },
124
+ DATABASE_IMPORT_CONFLICT: {
125
+ code: -12001,
126
+ message: "DATABASE_IMPORT_CONFLICT",
127
+ description: "Database import already in progress"
128
+ },
129
+ DATABASE_EXPORT_PROGRESS_NOT_FOUND: {
130
+ code: -12002,
131
+ message: "DATABASE_EXPORT_PROGRESS_NOT_FOUND",
132
+ description: `Database backup process not found`
133
+ },
134
+ DATABASE_IMPORT_PROGRESS_NOT_FOUND: {
135
+ code: -12003,
136
+ message: "DATABASE_IMPORT_PROGRESS_NOT_FOUND",
137
+ description: `Database backup process not found`
138
+ },
139
+ DATABASE_IMPORT_NOT_FOUND: {
140
+ code: -12004,
141
+ message: "DATABASE_IMPORT_NOT_FOUND",
142
+ description: "Database import file not found"
143
+ },
144
+ TR_CANT_UPDATE_TO_PENDING: {
145
+ code: -12100,
146
+ message: "TR_CANT_UPDATE_TO_PENDING",
147
+ description: `Transfer status can only move from 'pending'->'finished'/'cancelled`
148
+ },
149
+ TR_CANT_UPDATE_TIMESTAMP: {
150
+ code: -12101,
151
+ message: "TR_CANT_UPDATE_TIMESTAMP",
152
+ description: "Cant update transfer.updated_at - allow_timestamps flag is set to off"
153
+ },
154
+ TR_CANT_INSERT_TIMESTAMP: {
155
+ code: -12102,
156
+ message: "TR_CANT_INSERT_TIMESTAMP",
157
+ description: "Cant insert transfer.created_at - allow_timestamps flag is set to off"
158
+ },
159
+ TR_EMPTY_UPDATE_REQUEST: {
160
+ code: -12103,
161
+ message: "TR_EMPTY_UPDATE_REQUEST",
162
+ description: "Update request for transfer is empty"
163
+ },
164
+ TR_MISSING_FILTER: {
165
+ code: -12104,
166
+ message: "TR_MISSING_FILTER",
167
+ description: `Transactions can't reversed or updated without valid filter`
168
+ },
169
+ TR_TO_WALLET_WITHDRAWAL: {
170
+ code: -12105,
171
+ message: "TR_TO_WALLET_WITHDRAWAL",
172
+ description: `To wallet can't be specified when doing a withdrawal`
173
+ },
174
+ TR_FROM_WALLET_DEPOSIT: {
175
+ code: -12106,
176
+ message: "TR_FROM_WALLET_DEPOSIT",
177
+ description: `From wallet can't be specified when doing a deposit`
178
+ },
179
+ TR_FROM_TO_CONFLICT: {
180
+ code: -12107,
181
+ message: "TR_FROM_TO_CONFLICT",
182
+ description: "from_wallet and to_wallet can not be the same"
183
+ },
184
+ TR_UNABLE_TO_RESOLVE_INPUT: {
185
+ code: -12108,
186
+ message: "TR_UNABLE_TO_RESOLVE_INPUT",
187
+ description: "Unable to resolve references to foreign keys"
188
+ },
189
+ TRG_MISSING_FILTER: {
190
+ code: -12200,
191
+ message: "TRG_MISSING_FILTER",
192
+ description: `Transaction groups can't reversed or updated without valid filter`
193
+ },
194
+ INVALID_FIELD_AGR_COMB: {
195
+ code: -12300,
196
+ message: "INVALID_FIELD_AGR_COMB",
197
+ description: `Provided aggregation field was not found on Model`
198
+ },
199
+ INVALID_FIELD_FOR_MODEL: {
200
+ code: -12301,
201
+ message: "INVALID_FIELD_FOR_MODEL",
202
+ description: `Provided groupBy field was not found on Model`
203
+ },
204
+ NO_METADATA_ON_MODEL: {
205
+ code: -12302,
206
+ message: "NO_METADATA_ON_MODEL",
207
+ description: `Can't use metadata field for grouping as current Model does not have metadata`
208
+ },
209
+ INVALID_MODEL: {
210
+ code: -12303,
211
+ message: "INVALID_MODEL",
212
+ description: `Provided Model name is invalid`
213
+ },
214
+ INVALID_COMPLEX_FILTER: {
215
+ code: -12304,
216
+ message: "INVALID_COMPLEX_FILTER",
217
+ description: `The provided complex filter does not pass validation`
218
+ },
219
+ UNCLEAR_AGGREGATOR: {
220
+ code: -12305,
221
+ message: "UNCLEAR_AGGREGATOR",
222
+ description: `Invalid aggregator function provided`
223
+ },
224
+ CONTRACT_OWNER_NOT_FOUND: {
225
+ code: -12306,
226
+ message: "CONTRACT_OWNER_NOT_FOUND",
227
+ description: `Unable to find Wallet specified as Contract token owner`
228
+ },
229
+ DISTRIBUTION_MISSING_TARGETS: {
230
+ code: -12307,
231
+ message: "DISTRIBUTION_MISSING_TARGETS",
232
+ description: `Unable to resolve all targets (Wallets, Tokens) for distribution request`
233
+ },
234
+ TOKEN_INVALID_WALLET: {
235
+ code: -12308,
236
+ message: "TOKEN_INVALID_WALLET",
237
+ description: `Invalid belongs_to wallet provided`
238
+ },
239
+ BAL_FUTURE_DATETIME: {
240
+ code: -12309,
241
+ message: "BAL_FUTURE_DATETIME",
242
+ description: `Balance datetime can't be in the future`
243
+ },
244
+ INPUT_NEEDS_IDENTIFIER: {
245
+ code: -12310,
246
+ message: "INPUT_NEEDS_IDENTIFIER",
247
+ description: `Missing identifier - automatically calculated identifiers conflict on identical input for 30s To make an identical transfer during that window you need to provide a unique identifier`
248
+ },
249
+ RESET_INVALID_CONFIRMATION: {
250
+ code: -12311,
251
+ message: "RESET_INVALID_CONFIRMATION",
252
+ description: "Provided reset confirmation code is invalid"
253
+ },
254
+ INPUT_NEEDS_TOKEN: {
255
+ code: -12312,
256
+ message: "INPUT_NEEDS_TOKEN",
257
+ description: "token must be specified on input or in client config"
258
+ },
259
+ CONFLICTING_OPTIONS_FOR_BALANCE: {
260
+ code: -12313,
261
+ message: "CONFLICTING_OPTIONS_FOR_BALANCE",
262
+ description: `return_running_balance and return_running_balance_for can't be specified together`
263
+ },
264
+ CONFLICTING_OPTIONS_FOR_SIGNED_AMOUNT: {
265
+ code: -12314,
266
+ message: "CONFLICTING_OPTIONS_FOR_SIGNED_AMOUNT",
267
+ description: `return_signed_amount and return_signed_amount_for_wallet can't be specified together`
268
+ },
269
+ RUNNING_BALANCE_WITHOUT_WALLET: {
270
+ code: -12315,
271
+ message: "RUNNING_BALANCE_WITHOUT_WALLET",
272
+ description: "return_running_balance option requires Wallet filter to be specified"
273
+ },
274
+ SIGNED_AMOUNT_WITHOUT_WALLET: {
275
+ code: -12316,
276
+ message: "SIGNED_AMOUNT_WITHOUT_WALLET",
277
+ description: `return_signed_amount option requires Wallet filter to be specified`
278
+ },
279
+ REQUIRED_INPUT_MISSING: {
280
+ code: -12317,
281
+ message: "REQUIRED_INPUT_MISSING",
282
+ description: `input does not specify required keys`
283
+ },
284
+ TRX_NOT_ALLOWED: {
285
+ code: -12400,
286
+ message: "TRX_NOT_ALLOWED",
287
+ description: "This method can not run in a transaction"
288
+ },
289
+ TRANSACTION_NOT_FOUND: {
290
+ code: -12401,
291
+ message: "TRANSACTION_NOT_FOUND",
292
+ description: "Transaction not found"
293
+ },
294
+ ONLY_SELECT_ALLOWED: {
295
+ code: -12402,
296
+ message: "ONLY_SELECT_ALLOWED",
297
+ description: "Only select queries are allowed"
298
+ }
299
+ }
300
+ },
301
+ CONSTRAINT: {
302
+ min: -19999,
303
+ max: -19e3,
304
+ ERRORS: {
305
+ INVALID_LATEST_HASH: {
306
+ code: -19e3,
307
+ message: "INVALID_LATEST_HASH",
308
+ description: "Http body size can't be more than 100MB"
309
+ },
310
+ TOKEN_LIMIT_REACHED: {
311
+ code: -19001,
312
+ message: "TOKEN_LIMIT_REACHED",
313
+ description: "Unable to issue more tokens as Token.limit has been reached"
314
+ },
315
+ TR_INVALID_BALANCE: {
316
+ code: -19101,
317
+ message: "TR_INVALID_BALANCE",
318
+ description: "Transfer would result in invalid balance for a Wallet"
319
+ },
320
+ TR_AMOUNT_NOT_DIVISIBLE: {
321
+ code: -19102,
322
+ message: "TR_AMOUNT_NOT_DIVISIBLE",
323
+ description: `Transfer amount is not divisible by specified Token.divisor`
324
+ },
325
+ TR_TOKEN_DISABLED: {
326
+ code: -19103,
327
+ message: "TR_TOKEN_DISABLED",
328
+ description: `Token status is set to 'disabled' - no new transfers allowed`
329
+ },
330
+ TR_TOKEN_DWONLY: {
331
+ code: -19104,
332
+ message: "TR_TOKEN_DWONLY",
333
+ description: `Token status is set to 'dw-only' - only deposits or withdrawals allowed`
334
+ },
335
+ TR_TRG_STATUS_MISMATCH: {
336
+ code: -19105,
337
+ message: "TR_TRG_STATUS_MISMATCH",
338
+ description: `Transfers in transfer_group must match transfer_group.transfer_status`
339
+ },
340
+ TR_TRG_CLOSED: {
341
+ code: -19106,
342
+ message: "TR_TRG_CLOSED",
343
+ description: `Cant add Transfer to group. TransferGroup is closed`
344
+ },
345
+ TR_TIMESTAMP_IN_PAST: {
346
+ code: -19107,
347
+ message: "TR_TIMESTAMP_IN_PAST",
348
+ description: `Transfer.created_at must be the latest`
349
+ },
350
+ TR_TIMESTAMP_MUST_BE_LATEST: {
351
+ code: -19108,
352
+ message: "TR_TIMESTAMP_MUST_BE_LATEST",
353
+ description: `Transfer.created_at must be the latest`
354
+ },
355
+ TR_INVALID_CANCELLED: {
356
+ code: -19109,
357
+ message: "TR_INVALID_CANCELLED",
358
+ description: `Cant create cancelled transfer`
359
+ },
360
+ TR_FROM_WALLET_STATUS_CONSTRAINT: {
361
+ code: -19110,
362
+ message: "TR_FROM_WALLET_STATUS_CONSTRAINT",
363
+ description: `From wallet.status doesn't allow this type of transfers`
364
+ },
365
+ TR_TO_WALLET_STATUS_CONSTRAINT: {
366
+ code: -19111,
367
+ message: "TR_TO_WALLET_STATUS_CONSTRAINT",
368
+ description: `To wallet.status doesn't allow this type of transfers`
369
+ },
370
+ TR_CANCELLED_CANT_RV: {
371
+ code: -19112,
372
+ message: "TR_CANCELLED_CANT_RV",
373
+ description: `Cancelled Transfer can not be reversed`
374
+ },
375
+ TR_DEPOSIT_CANT_RV_WITHOUT_FLAG: {
376
+ code: -19113,
377
+ message: "TR_DEPOSIT_CANT_RV_WITHOUT_FLAG",
378
+ description: `Deposits are expected connection points with outside systems, thus extra validation is required. Reversing a Transfer.type = 'deposit' requires reverse_deposit option to be true.`
379
+ },
380
+ TR_WITHDRAWAL_CANT_RV_WITHOUT_FLAG: {
381
+ code: -19114,
382
+ message: "TR_WITHDRAWAL_CANT_RV_WITHOUT_FLAG",
383
+ description: `Withdrawals are expected connection points with outside systems, thus extra validation is required. Reversing a Transfer.type = 'withdrawal' requires reverse_withdrawal option to be true.`
384
+ },
385
+ TRG_SINGLE_PENDING_TR_CANT_RV: {
386
+ code: -19200,
387
+ message: "TRG_SINGLE_PENDING_TR_CANT_RV",
388
+ description: `Transfer is part of TransferGroup and can not be reversed separately`
389
+ },
390
+ TRG_CANCELLED_CANT_RV: {
391
+ code: -19201,
392
+ message: "TRG_CANCELLED_CANT_RV",
393
+ description: `Cancelled TransferGroup can not be reversed`
394
+ },
395
+ TRG_DEPOSIT_CANT_RV_WITHOUT_FLAG: {
396
+ code: -19202,
397
+ message: "TRG_DEPOSIT_CANT_RV_WITHOUT_FLAG",
398
+ description: `TransferGroup includes Transfer.type = 'deposit', thus for extra validation the reverse_deposit option must be set true`
399
+ },
400
+ TRG_WITHDRAWAL_CANT_RV_WITHOUT_FLAG: {
401
+ code: -19203,
402
+ message: "TRG_WITHDRAWAL_CANT_RV_WITHOUT_FLAG",
403
+ description: `TransferGroup includes Transfer.type = 'withdrawal', thus for extra validation the reverse_withdrawal option must be set true`
404
+ }
405
+ }
406
+ },
407
+ CONFIG: {
408
+ min: -16e3,
409
+ max: -15e3,
410
+ ERRORS: {
411
+ METHOD_DISABLED: {
412
+ code: -15e3,
413
+ message: "METHOD_DISABLED",
414
+ description: "Method is disabled"
415
+ },
416
+ FLAG_PRODUCTION_ON: {
417
+ code: -15001,
418
+ message: "FLAG_PRODUCTION_ON",
419
+ description: 'Production flag is "on" - this method is disabled'
420
+ },
421
+ FLAG_PRODUCTION_LOCKED: {
422
+ code: -15002,
423
+ message: "FLAG_PRODUCTION_LOCKED",
424
+ description: "Cant update production flag to false in this server"
425
+ },
426
+ TRANSACTION_TIMEOUT: {
427
+ code: -15003,
428
+ message: "TRANSACTION_TIMEOUT",
429
+ description: "Database transaction timed out"
430
+ }
431
+ }
432
+ }
433
+ };
434
+ var ERRORS = __spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues(__spreadValues({}, ERROR_GROUPS.JSONRPC.ERRORS), ERROR_GROUPS.AUTH.ERRORS), ERROR_GROUPS.CONFIG.ERRORS), ERROR_GROUPS.STREAM.ERRORS), ERROR_GROUPS.INPUT.ERRORS), ERROR_GROUPS.CONSTRAINT.ERRORS);
435
+ function getTypeMap(input) {
436
+ return Object.fromEntries(Object.keys(input).map((key) => [key, key]));
437
+ }
438
+ var ERROR_TYPES = getTypeMap(ERRORS);
439
+ var WAPIError = class extends Error {
440
+ constructor({ type, code, message, data }) {
4
441
  var _a;
5
442
  super(message);
6
- this.code = code;
7
- this.message = message;
8
- this.data = data;
9
- this.description = (_a = description != null ? description : ErrorDescriptions[message]) != null ? _a : "";
443
+ const errorType = (_a = ERRORS[type]) != null ? _a : ERRORS.INTERNAL_SERVER_ERROR;
444
+ this.type = ERRORS[type] ? type : ERROR_TYPES.INTERNAL_SERVER_ERROR;
445
+ this.code = code || errorType.code;
446
+ this.message = message || errorType.message;
447
+ this.data = __spreadValues({
448
+ description: errorType.description
449
+ }, data && typeof data === "object" ? data : { error: data });
10
450
  }
11
451
  toJSON() {
12
452
  return {
13
453
  code: this.code,
14
454
  message: this.message,
15
- description: this.description,
16
455
  data: this.data
17
456
  };
18
457
  }
19
458
  };
20
- var DatabaseError = class extends CoreError {
21
- constructor({ message, data, code }) {
459
+ var JSONRPCError = class extends WAPIError {
460
+ constructor(type, data, message) {
22
461
  super({
462
+ type,
23
463
  message,
24
- data,
25
- code: code || "DatabaseError" /* DatabaseError */
464
+ data
26
465
  });
27
466
  }
467
+ static get group() {
468
+ return ERROR_GROUPS.JSONRPC.ERRORS;
469
+ }
470
+ static get types() {
471
+ return getTypeMap(ERROR_GROUPS.JSONRPC.ERRORS);
472
+ }
28
473
  };
29
- var ValidationError = class extends CoreError {
30
- constructor({ message, data, code }) {
474
+ var StreamError = class extends WAPIError {
475
+ constructor(type, data, message) {
31
476
  super({
477
+ type,
32
478
  message,
33
- data,
34
- code: code || "SchemaValidationError" /* SchemaValidationError */
479
+ data
35
480
  });
36
481
  }
482
+ static get group() {
483
+ return ERROR_GROUPS.STREAM.ERRORS;
484
+ }
485
+ static get types() {
486
+ return getTypeMap(ERROR_GROUPS.STREAM.ERRORS);
487
+ }
37
488
  };
38
- var InputError = class extends CoreError {
39
- constructor({ message, data, code }) {
489
+ var InputError = class extends WAPIError {
490
+ constructor(type, data, message) {
40
491
  super({
492
+ type,
41
493
  message,
42
- data,
43
- code: code || "InputError" /* InputError */
494
+ data
44
495
  });
45
496
  }
497
+ static get group() {
498
+ return ERROR_GROUPS.INPUT.ERRORS;
499
+ }
500
+ static get types() {
501
+ return getTypeMap(ERROR_GROUPS.INPUT.ERRORS);
502
+ }
46
503
  };
47
- var ConstraintError = class extends CoreError {
48
- constructor({ message, data, code }) {
504
+ var ConfigError = class extends WAPIError {
505
+ constructor(type, data, message) {
49
506
  super({
507
+ type,
50
508
  message,
51
- data,
52
- code: code || "ConstraintError" /* ConstraintError */
509
+ data
53
510
  });
54
511
  }
512
+ static get group() {
513
+ return ERROR_GROUPS.CONFIG.ERRORS;
514
+ }
515
+ static get types() {
516
+ return getTypeMap(ERROR_GROUPS.CONFIG.ERRORS);
517
+ }
55
518
  };
56
- var UnknownError = class extends CoreError {
57
- constructor({ message, data, code }) {
519
+ var AuthError = class extends WAPIError {
520
+ constructor(type, data, message) {
58
521
  super({
522
+ type,
59
523
  message,
60
- data,
61
- code: code || "UnknownError" /* UnknownError */
524
+ data
62
525
  });
63
526
  }
527
+ static get group() {
528
+ return ERROR_GROUPS.AUTH.ERRORS;
529
+ }
530
+ static get types() {
531
+ return getTypeMap(ERROR_GROUPS.AUTH.ERRORS);
532
+ }
64
533
  };
65
- var ConnectionError = class extends CoreError {
66
- constructor({ message, data, code }) {
534
+ var ConstraintError = class extends WAPIError {
535
+ constructor(type, data, message) {
67
536
  super({
537
+ type,
68
538
  message,
69
- data,
70
- code: code || "ConnectionError" /* ConnectionError */
539
+ data
71
540
  });
72
541
  }
542
+ static get group() {
543
+ return ERROR_GROUPS.CONSTRAINT.ERRORS;
544
+ }
545
+ static get types() {
546
+ return getTypeMap(ERROR_GROUPS.CONSTRAINT.ERRORS);
547
+ }
548
+ };
549
+ var ValidationError = class extends JSONRPCError {
550
+ constructor(data, message) {
551
+ super(JSONRPCError.types.INVALID_PARAMS, data, message);
552
+ }
73
553
  };
74
- var StreamError = class extends CoreError {
75
- constructor({ message, data, code }) {
554
+ var AuthenticationError = class extends AuthError {
555
+ constructor(data) {
556
+ super(AuthError.types.AUTHENTICATION_ERROR, data);
557
+ }
558
+ };
559
+ var AuthorizationError = class extends AuthError {
560
+ constructor(data) {
561
+ super(AuthError.types.AUTHORIZATION_ERROR, data);
562
+ }
563
+ };
564
+ var InternalError = class extends WAPIError {
565
+ constructor(data) {
76
566
  super({
77
- message,
78
- data,
79
- code: code || "StreamError" /* StreamError */
567
+ type: ERROR_TYPES.INTERNAL_SERVER_ERROR,
568
+ data
80
569
  });
81
570
  }
571
+ toJSON() {
572
+ return {
573
+ code: this.code,
574
+ message: this.message,
575
+ data: {
576
+ description: ERRORS.INTERNAL_SERVER_ERROR.description
577
+ }
578
+ };
579
+ }
82
580
  };
83
- var AuthenticationError = class extends CoreError {
84
- constructor({ message, data, code }) {
581
+ var UnknownError = class extends InternalError {
582
+ constructor(message) {
85
583
  super({
86
- message,
87
- data,
88
- code: code || "AuthenticationError" /* AuthenticationError */
584
+ data: {
585
+ message
586
+ }
89
587
  });
90
588
  }
589
+ toJSON() {
590
+ const json = super.toJSON();
591
+ json.data = {
592
+ description: json.data.description,
593
+ message: this.data.message
594
+ };
595
+ return {
596
+ code: this.code,
597
+ message: this.message,
598
+ data: {
599
+ message: this.data.message,
600
+ description: ERRORS.INTERNAL_SERVER_ERROR.description
601
+ }
602
+ };
603
+ }
91
604
  };
92
- function getError({ message, data, code }) {
93
- switch (code) {
94
- case "SchemaValidationError" /* SchemaValidationError */:
95
- return new ValidationError({ message, data, code });
96
- case "DatabaseError" /* DatabaseError */:
97
- return new DatabaseError({ message, data, code });
98
- case "InputError" /* InputError */:
99
- return new InputError({ message, data, code });
100
- case "ConstraintError" /* ConstraintError */:
101
- return new ConstraintError({ message, data, code });
102
- case "ConnectionError" /* ConnectionError */:
103
- return new ConnectionError({ message, data, code });
104
- case "StreamError" /* StreamError */:
105
- return new StreamError({ message, data, code });
106
- case "AuthenticationError" /* AuthenticationError */:
107
- return new AuthenticationError({ message, data, code });
605
+ var ERROR_CODE_TO_TYPE = Object.fromEntries(
606
+ Object.keys(ERRORS).map((key) => [ERRORS[key].code, key])
607
+ );
608
+ function categorizeErrorCode(code) {
609
+ const type = ERROR_CODE_TO_TYPE[code];
610
+ if (!type) {
611
+ return {
612
+ group: void 0,
613
+ type: void 0
614
+ };
615
+ }
616
+ const group = Object.keys(ERROR_GROUPS).find((groupName) => {
617
+ return type in ERROR_GROUPS[groupName].ERRORS;
618
+ });
619
+ if (!group) {
620
+ console.error("ERRORS and ERROR_GROUPS are out of sync", type);
621
+ return {
622
+ group: void 0,
623
+ type
624
+ };
625
+ }
626
+ return {
627
+ group,
628
+ type
629
+ };
630
+ }
631
+ function getError({ code, message, data }) {
632
+ const { group, type } = categorizeErrorCode(code);
633
+ message = message && message !== type ? message : ERRORS[type].description;
634
+ switch (group) {
635
+ case "JSONRPC":
636
+ return new JSONRPCError(
637
+ type,
638
+ data,
639
+ message
640
+ );
641
+ case "AUTH":
642
+ return new AuthError(
643
+ type,
644
+ data,
645
+ message
646
+ );
647
+ case "CONFIG":
648
+ return new ConfigError(
649
+ type,
650
+ data,
651
+ message
652
+ );
653
+ case "CONSTRAINT":
654
+ return new ConstraintError(
655
+ type,
656
+ data,
657
+ message
658
+ );
659
+ case "INPUT":
660
+ return new InputError(
661
+ type,
662
+ data,
663
+ message
664
+ );
665
+ case "STREAM":
666
+ return new StreamError(
667
+ type,
668
+ data,
669
+ message
670
+ );
108
671
  default:
109
- return new UnknownError({ message, data, code });
672
+ return new WAPIError({
673
+ code,
674
+ message,
675
+ data,
676
+ type: type != null ? type : ERROR_TYPES.INTERNAL_SERVER_ERROR
677
+ });
110
678
  }
111
679
  }
112
- var ERROR_TYPES = /* @__PURE__ */ ((ERROR_TYPES2) => {
113
- ERROR_TYPES2["SchemaValidationError"] = "SchemaValidationError";
114
- ERROR_TYPES2["DatabaseError"] = "DatabaseError";
115
- ERROR_TYPES2["InputError"] = "InputError";
116
- ERROR_TYPES2["UnknownError"] = "UnknownError";
117
- ERROR_TYPES2["ConstraintError"] = "ConstraintError";
118
- ERROR_TYPES2["ConnectionError"] = "ConnectionError";
119
- ERROR_TYPES2["StreamError"] = "StreamError";
120
- ERROR_TYPES2["AuthenticationError"] = "AuthenticationError";
121
- return ERROR_TYPES2;
122
- })(ERROR_TYPES || {});
123
- var ERROR_MESSAGES = /* @__PURE__ */ ((ERROR_MESSAGES2) => {
124
- ERROR_MESSAGES2["AUTHENTICATION_FAILED"] = "AUTHENTICATION_FAILED";
125
- ERROR_MESSAGES2["BAL_FUTURE_DATETIME"] = "BAL_FUTURE_DATETIME";
126
- ERROR_MESSAGES2["CONFLICTING_OPTIONS"] = "CONFLICTING_OPTIONS";
127
- ERROR_MESSAGES2["CONTRACT_OWNER_NOT_FOUND"] = "CONTRACT_OWNER_NOT_FOUND";
128
- ERROR_MESSAGES2["DATABASE_ERROR"] = "DATABASE_ERROR";
129
- ERROR_MESSAGES2["DISTRIBUTION_MISSING_TARGETS"] = "DISTRIBUTION_MISSING_TARGETS";
130
- ERROR_MESSAGES2["EXCHANGE_MISSING_TARGETS"] = "EXCHANGE_MISSING_TARGETS";
131
- ERROR_MESSAGES2["IMPORT_MISSING_CONTRACT_TOKEN"] = "IMPORT_MISSING_CONTRACT_TOKEN";
132
- ERROR_MESSAGES2["IMPORT_MISSING_TOKEN_WALLET"] = "IMPORT_MISSING_TOKEN_WALLET";
133
- ERROR_MESSAGES2["IMPORT_OBJECT_DUPLICATE"] = "IMPORT_OBJECT_DUPLICATE";
134
- ERROR_MESSAGES2["IMPORT_OBJECT_EXISTS"] = "IMPORT_OBJECT_EXISTS";
135
- ERROR_MESSAGES2["IMPORT_PREDATED_TRANSFER"] = "IMPORT_PREDATED_TRANSFER";
136
- ERROR_MESSAGES2["IMPORT_USE_BEFORE_CREATE"] = "IMPORT_USE_BEFORE_CREATE";
137
- ERROR_MESSAGES2["INPUT_NEEDS_IDENTIFIER"] = "INPUT_NEEDS_IDENTIFIER";
138
- ERROR_MESSAGES2["INPUT_NEEDS_TOKEN"] = "INPUT_NEEDS_TOKEN";
139
- ERROR_MESSAGES2["INPUT_STREAM_ERROR"] = "INPUT_STREAM_ERROR";
140
- ERROR_MESSAGES2["INPUT_STREAM_TIMEOUT"] = "INPUT_STREAM_TIMEOUT";
141
- ERROR_MESSAGES2["INPUT_STREAM_INVALID"] = "INPUT_STREAM_INVALID";
142
- ERROR_MESSAGES2["INPUT_STREAM_NOT_ALLOWED"] = "INPUT_STREAM_NOT_ALLOWED";
143
- ERROR_MESSAGES2["INPUT_INVALID"] = "INPUT_INVALID";
144
- ERROR_MESSAGES2["INVALID_COMPLEX_FILTER"] = "INVALID_COMPLEX_FILTER";
145
- ERROR_MESSAGES2["INVALID_FIELD_AGR_COMB"] = "INVALID_FIELD_AGR_COMB";
146
- ERROR_MESSAGES2["INVALID_FIELD_FOR_MODEL"] = "INVALID_FIELD_FOR_MODEL";
147
- ERROR_MESSAGES2["INVALID_LATEST_HASH"] = "INVALID_LATEST_HASH";
148
- ERROR_MESSAGES2["INVALID_MODEL"] = "INVALID_MODEL";
149
- ERROR_MESSAGES2["NO_METADATA_ON_MODEL"] = "NO_METADATA_ON_MODEL";
150
- ERROR_MESSAGES2["RUNNING_BALANCE_WITHOUT_WALLET"] = "RUNNING_BALANCE_WITHOUT_WALLET";
151
- ERROR_MESSAGES2["SIGNED_AMOUNT_WITHOUT_WALLET"] = "SIGNED_AMOUNT_WITHOUT_WALLET";
152
- ERROR_MESSAGES2["TOKEN_INVALID_WALLET"] = "TOKEN_INVALID_WALLET";
153
- ERROR_MESSAGES2["TOKEN_LIMIT_REACHED"] = "TOKEN_LIMIT_REACHED";
154
- ERROR_MESSAGES2["TR_AMOUNT_NOT_DIVISIBLE"] = "TR_AMOUNT_NOT_DIVISIBLE";
155
- ERROR_MESSAGES2["TR_CANCELLED_CANT_RV"] = "TR_CANCELLED_CANT_RV";
156
- ERROR_MESSAGES2["TR_CANT_UPDATE_TO_PENDING"] = "TR_CANT_UPDATE_TO_PENDING";
157
- ERROR_MESSAGES2["TR_DEPOSIT_CANT_RV_WITHOUT_FLAG"] = "TR_DEPOSIT_CANT_RV_WITHOUT_FLAG";
158
- ERROR_MESSAGES2["TR_FROM_WALLET_DEPOSIT"] = "TR_FROM_WALLET_DEPOSIT";
159
- ERROR_MESSAGES2["TR_FROM_WALLET_STATUS_CONSTRAINT"] = "TR_FROM_WALLET_STATUS_CONSTRAINT";
160
- ERROR_MESSAGES2["TR_INVALID_BALANCE"] = "TR_INVALID_BALANCE";
161
- ERROR_MESSAGES2["TR_INVALID_CANCELLED"] = "TR_INVALID_CANCELLED";
162
- ERROR_MESSAGES2["TR_TIMESTAMP_IN_PAST"] = "TR_TIMESTAMP_IN_PAST";
163
- ERROR_MESSAGES2["TR_TO_WALLET_STATUS_CONSTRAINT"] = "TR_TO_WALLET_STATUS_CONSTRAINT";
164
- ERROR_MESSAGES2["TR_TO_WALLET_WITHDRAWAL"] = "TR_TO_WALLET_WITHDRAWAL";
165
- ERROR_MESSAGES2["TR_TOKEN_DISABLED"] = "TR_TOKEN_DISABLED";
166
- ERROR_MESSAGES2["TR_TOKEN_DWONLY"] = "TR_TOKEN_DWONLY";
167
- ERROR_MESSAGES2["TR_TRG_CLOSED"] = "TR_TRG_CLOSED";
168
- ERROR_MESSAGES2["TR_TRG_STATUS_MISMATCH"] = "TR_TRG_STATUS_MISMATCH";
169
- ERROR_MESSAGES2["TR_WITHDRAWAL_CANT_RV_WITHOUT_FLAG"] = "TR_WITHDRAWAL_CANT_RV_WITHOUT_FLAG";
170
- ERROR_MESSAGES2["TRANSACTION_NOT_FOUND"] = "TRANSACTION_NOT_FOUND";
171
- ERROR_MESSAGES2["TRANSACTION_TIMEOUT"] = "TRANSACTION_TIMEOUT";
172
- ERROR_MESSAGES2["TRG_BALANCE_CHECK_REQUIRED_WITHOUT_STATUS_LOCK"] = "TRG_BALANCE_CHECK_REQUIRED_WITHOUT_STATUS_LOCK";
173
- ERROR_MESSAGES2["TRG_CANCELLED_CANT_RV"] = "TRG_CANCELLED_CANT_RV";
174
- ERROR_MESSAGES2["TRG_DEPOSIT_CANT_RV_WITHOUT_FLAG"] = "TRG_DEPOSIT_CANT_RV_WITHOUT_FLAG";
175
- ERROR_MESSAGES2["TRG_SINGLE_PENDING_TR_CANT_RV"] = "TRG_SINGLE_PENDING_TR_CANT_RV";
176
- ERROR_MESSAGES2["TRG_WITHDRAWAL_CANT_RV_WITHOUT_FLAG"] = "TRG_WITHDRAWAL_CANT_RV_WITHOUT_FLAG";
177
- ERROR_MESSAGES2["UNCLEAR_AGGREGATOR"] = "UNCLEAR_AGGREGATOR";
178
- ERROR_MESSAGES2["TR_MISSING_FILTER"] = "TR_MISSING_FILTER";
179
- ERROR_MESSAGES2["TRG_MISSING_FILTER"] = "TRG_MISSING_FILTER";
180
- ERROR_MESSAGES2["HTTP_BODY_SIZE"] = "HTTP_BODY_SIZE";
181
- ERROR_MESSAGES2["METHOD_DISABLED"] = "METHOD_DISABLED";
182
- ERROR_MESSAGES2["DATABASE_IMPORT_UNEXPECTED_ERROR"] = "DATABASE_IMPORT_UNEXPECTED_ERROR";
183
- ERROR_MESSAGES2["DATABASE_IMPORT_NOT_FOUND"] = "DATABASE_IMPORT_NOT_FOUND";
184
- ERROR_MESSAGES2["DATABASE_EXPORT_CONFLICT"] = "DATABASE_EXPORT_CONFLICT";
185
- ERROR_MESSAGES2["DATABASE_IMPORT_CONFLICT"] = "DATABASE_IMPORT_CONFLICT";
186
- ERROR_MESSAGES2["DATABASE_EXPORT_UNEXPECTED_ERROR"] = "DATABASE_EXPORT_UNEXPECTED_ERROR";
187
- ERROR_MESSAGES2["DATABASE_EXPORT_LIST_UNEXPECTED_ERROR"] = "DATABASE_EXPORT_LIST_UNEXPECTED_ERROR";
188
- ERROR_MESSAGES2["DATABASE_IMPORT_PROGRESS_NOT_FOUND"] = "DATABASE_IMPORT_PROGRESS_NOT_FOUND";
189
- ERROR_MESSAGES2["DATABASE_IMPORT_PROGRESS_UNEXPECTED_ERROR"] = "DATABASE_IMPORT_PROGRESS_UNEXPECTED_ERROR";
190
- ERROR_MESSAGES2["DATABASE_EXPORT_PROGRESS_NOT_FOUND"] = "DATABASE_EXPORT_PROGRESS_NOT_FOUND";
191
- ERROR_MESSAGES2["DATABASE_EXPORT_PROGRESS_UNEXPECTED_ERROR"] = "DATABASE_EXPORT_PROGRESS_UNEXPECTED_ERROR";
192
- return ERROR_MESSAGES2;
193
- })(ERROR_MESSAGES || {});
194
- var ErrorDescriptions = {
195
- AUTHENTICATION_FAILED: `Provided credentials are invalid`,
196
- BAL_FUTURE_DATETIME: `Balance datetime can't be in the future`,
197
- CONFLICTING_OPTIONS: `return_running_balance and return_running_balance_for can't be specified together`,
198
- CONTRACT_OWNER_NOT_FOUND: `Unable to find Wallet specified as Contract token owner`,
199
- DATABASE_ERROR: `Something went wrong in the DB layer`,
200
- DISTRIBUTION_MISSING_TARGETS: `Unable to resolve all targets (Wallets, Tokens) for distribution request`,
201
- EXCHANGE_MISSING_TARGETS: `Unable to resolve all targets (Wallets, Token) for exchange request`,
202
- IMPORT_MISSING_CONTRACT_TOKEN: `The import contract specifies Token that does not exist`,
203
- IMPORT_MISSING_TOKEN_WALLET: `The import results in invalid Token without valid Wallet`,
204
- IMPORT_OBJECT_DUPLICATE: `The import includes create directives for same object multiple times`,
205
- IMPORT_OBJECT_EXISTS: `The import includes create directives for already existing objects`,
206
- IMPORT_PREDATED_TRANSFER: `The oldest Transfer in the import file is older than already existing Transfers in the WAPI instance`,
207
- IMPORT_USE_BEFORE_CREATE: `The import includes create directive for object that is used in Transfer before create dateTime`,
208
- INPUT_NEEDS_IDENTIFIER: `Missing identifier - automatically calculated identifiers conflict on identical input for 30s To make an identical transfer during that window you need to provide a unique identifier`,
209
- INPUT_NEEDS_TOKEN: `token must be specified on input or in client config`,
210
- INPUT_STREAM_ERROR: `Input stream emitted an error`,
211
- INPUT_STREAM_TIMEOUT: `No data provided to input stream in 30s`,
212
- INPUT_STREAM_INVALID: `Invalid input stream identifier provided`,
213
- INPUT_STREAM_NOT_ALLOWED: `Method does not support input stream`,
214
- INPUT_INVALID: `Invalid input on stream`,
215
- INVALID_COMPLEX_FILTER: `The provided complex filter does not pass validation`,
216
- INVALID_FIELD_AGR_COMB: `Provided aggregation field was not found on Model`,
217
- INVALID_FIELD_FOR_MODEL: `Provided groupBy field was not found on Model`,
218
- INVALID_LATEST_HASH: `Provided latest_control_hash does not match the latest outgoing Transfer from Wallet`,
219
- INVALID_MODEL: `Provided Model name is invalid`,
220
- NO_METADATA_ON_MODEL: `Can't use metadata field for grouping as current Model does not have metadata`,
221
- RUNNING_BALANCE_WITHOUT_WALLET: `return_running_balance option requires Wallet filter to be specified`,
222
- SIGNED_AMOUNT_WITHOUT_WALLET: `return_signed_balance option requires Wallet filter to be specified`,
223
- TOKEN_INVALID_WALLET: `Invalid belongs_to wallet provided`,
224
- TOKEN_LIMIT_REACHED: `Unable to issue more tokens as Token.limit has been reached`,
225
- TR_AMOUNT_NOT_DIVISIBLE: `Transfer amount is not divisible by specified Token.divisor`,
226
- TR_CANCELLED_CANT_RV: `Cancelled Transfer can not be reversed`,
227
- TR_CANT_UPDATE_TO_PENDING: `Transfer status can only move from 'pending'->'finished'/'cancelled`,
228
- TR_DEPOSIT_CANT_RV_WITHOUT_FLAG: `Deposits are expected connection points with outside systems, thus extra validation is required. Reversing a Transfer.type = 'deposit' requires reverse_deposit option to be true.`,
229
- TR_FROM_WALLET_DEPOSIT: `From wallet can't be specified when doing a deposit`,
230
- TR_FROM_WALLET_STATUS_CONSTRAINT: `From wallet.status doesn't allow this type of transfers`,
231
- TR_INVALID_BALANCE: `Transfer results in invalid balance for a Wallet`,
232
- TR_INVALID_CANCELLED: `Cant create cancelled transfer`,
233
- TR_TIMESTAMP_IN_PAST: `Transfer.created_at must be the latest`,
234
- TR_TO_WALLET_STATUS_CONSTRAINT: `To wallet.status doesn't allow this type of transfers`,
235
- TR_TO_WALLET_WITHDRAWAL: `To wallet can't be specified when doing a withdrawal`,
236
- TR_TOKEN_DISABLED: `Token status is set to 'disabled' - no new transfers allowed`,
237
- TR_TOKEN_DWONLY: `Token status is set to 'dw-only' - only deposits or withdrawals allowed`,
238
- TR_TRG_CLOSED: `Cant add Transfer to group. TransferGroup is closed`,
239
- TR_TRG_STATUS_MISMATCH: `Transfers in transfer_group must match transfer_group.transfer_status`,
240
- TR_WITHDRAWAL_CANT_RV_WITHOUT_FLAG: `Withdrawals are expected connection points with outside systems, thus extra validation is required. Reversing a Transfer.type = 'withdrawal' requires reverse_withdrawal option to be true.`,
241
- TRANSACTION_NOT_FOUND: `No open DB transaction with provided was found`,
242
- TRANSACTION_TIMEOUT: `Transaction timed out`,
243
- TRG_BALANCE_CHECK_REQUIRED_WITHOUT_STATUS_LOCK: `For integrity reasons running balance validations are required if TransferGroup.transfer_status_lock = false`,
244
- TRG_CANCELLED_CANT_RV: `Cancelled TransferGroup can not be reversed`,
245
- TRG_DEPOSIT_CANT_RV_WITHOUT_FLAG: `TransferGroup includes Transfer.type = 'deposit', thus for extra validation the reverse_deposit option must be set true`,
246
- TRG_SINGLE_PENDING_TR_CANT_RV: `Transfer is part of TransferGroup and can not be reversed separately`,
247
- TRG_WITHDRAWAL_CANT_RV_WITHOUT_FLAG: `TransferGroup includes Transfer.type = 'withdrawal', thus for extra validation the reverse_withdrawal option must be set true`,
248
- UNCLEAR_AGGREGATOR: `Invalid aggregator function provided`,
249
- TR_MISSING_FILTER: `Transactions can't reversed or updated without valid filter`,
250
- TRG_MISSING_FILTER: `Transaction groups can't reversed or updated without valid filter`,
251
- HTTP_BODY_SIZE: `Http body size can't be more than 100MB`,
252
- METHOD_DISABLED: `Method is disabled`,
253
- DATABASE_IMPORT_UNEXPECTED_ERROR: `Unexpected error while importing database`,
254
- DATABASE_IMPORT_NOT_FOUND: `Database import file not found`,
255
- DATABASE_EXPORT_CONFLICT: `Database export already in progress`,
256
- DATABASE_IMPORT_CONFLICT: `Database import already in progress`,
257
- DATABASE_EXPORT_UNEXPECTED_ERROR: `Unexpected error while creating database export`,
258
- DATABASE_EXPORT_LIST_UNEXPECTED_ERROR: `Unexpected error while listing database backups`,
259
- DATABASE_IMPORT_PROGRESS_NOT_FOUND: `Import database progress not found`,
260
- DATABASE_IMPORT_PROGRESS_UNEXPECTED_ERROR: `Unexpected error while getting database import progress`,
261
- DATABASE_EXPORT_PROGRESS_NOT_FOUND: `Database backup progress not found`,
262
- DATABASE_EXPORT_PROGRESS_UNEXPECTED_ERROR: `Unexpected error while getting database backup progress`
263
- };
680
+ var ERROR_MESSAGES = Object.fromEntries(
681
+ Object.keys(ERRORS).map((key) => [key, ERRORS[key].message])
682
+ );
683
+ var ERROR_DESCRIPTIONS = Object.fromEntries(
684
+ Object.keys(ERRORS).map((key) => [
685
+ key,
686
+ ERRORS[key].description
687
+ ])
688
+ );
264
689
  export {
690
+ AuthError,
265
691
  AuthenticationError,
266
- ConnectionError,
692
+ AuthorizationError,
693
+ ConfigError,
267
694
  ConstraintError,
268
- CoreError,
269
- DatabaseError,
695
+ ERRORS,
696
+ ERROR_CODE_TO_TYPE,
697
+ ERROR_DESCRIPTIONS,
698
+ ERROR_GROUPS,
270
699
  ERROR_MESSAGES,
271
700
  ERROR_TYPES,
272
- ErrorDescriptions,
273
701
  InputError,
702
+ InternalError,
703
+ JSONRPCError,
274
704
  StreamError,
275
705
  UnknownError,
276
706
  ValidationError,
707
+ WAPIError,
277
708
  getError
278
709
  };