wapi-client 0.18.0 → 0.18.2

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 (209) hide show
  1. package/dist/api/base-client.browser.cjs +31 -957
  2. package/dist/api/base-client.browser.js +31 -957
  3. package/dist/api/base-client.cjs +31 -957
  4. package/dist/api/base-client.js +31 -957
  5. package/dist/api/http-client.browser.cjs +25 -7
  6. package/dist/api/http-client.browser.js +30 -8
  7. package/dist/api/http-client.cjs +25 -7
  8. package/dist/api/http-client.js +30 -8
  9. package/dist/api/ws-client.browser.cjs +0 -4
  10. package/dist/api/ws-client.browser.js +0 -4
  11. package/dist/api/ws-client.cjs +0 -4
  12. package/dist/api/ws-client.js +0 -4
  13. package/dist/db/consts.browser.cjs +6 -13
  14. package/dist/db/consts.browser.js +6 -13
  15. package/dist/db/consts.cjs +6 -13
  16. package/dist/db/consts.js +6 -13
  17. package/dist/fns/create-access-token/create-access-token.browser.cjs +3 -3
  18. package/dist/fns/create-access-token/create-access-token.browser.js +3 -3
  19. package/dist/fns/create-access-token/create-access-token.cjs +3 -3
  20. package/dist/fns/create-access-token/create-access-token.js +3 -3
  21. package/dist/fns/create-apikey/create-apikey.browser.cjs +3 -3
  22. package/dist/fns/create-apikey/create-apikey.browser.js +3 -3
  23. package/dist/fns/create-apikey/create-apikey.cjs +3 -3
  24. package/dist/fns/create-apikey/create-apikey.js +3 -3
  25. package/dist/fns/create-contract/create-contract.browser.cjs +3 -3
  26. package/dist/fns/create-contract/create-contract.browser.js +3 -3
  27. package/dist/fns/create-contract/create-contract.cjs +3 -3
  28. package/dist/fns/create-contract/create-contract.js +3 -3
  29. package/dist/fns/create-deposit/create-deposit.browser.cjs +3 -3
  30. package/dist/fns/create-deposit/create-deposit.browser.js +3 -3
  31. package/dist/fns/create-deposit/create-deposit.cjs +3 -3
  32. package/dist/fns/create-deposit/create-deposit.js +3 -3
  33. package/dist/fns/create-exchange/create-exchange.browser.cjs +3 -3
  34. package/dist/fns/create-exchange/create-exchange.browser.js +3 -3
  35. package/dist/fns/create-exchange/create-exchange.cjs +3 -3
  36. package/dist/fns/create-exchange/create-exchange.js +3 -3
  37. package/dist/fns/create-index/create-index.browser.cjs +3 -3
  38. package/dist/fns/create-index/create-index.browser.js +3 -3
  39. package/dist/fns/create-index/create-index.cjs +3 -3
  40. package/dist/fns/create-index/create-index.js +3 -3
  41. package/dist/fns/create-token/create-token.browser.cjs +3 -3
  42. package/dist/fns/create-token/create-token.browser.js +3 -3
  43. package/dist/fns/create-token/create-token.cjs +3 -3
  44. package/dist/fns/create-token/create-token.js +3 -3
  45. package/dist/fns/create-transfer/create-transfer.browser.cjs +3 -3
  46. package/dist/fns/create-transfer/create-transfer.browser.js +3 -3
  47. package/dist/fns/create-transfer/create-transfer.cjs +3 -3
  48. package/dist/fns/create-transfer/create-transfer.js +3 -3
  49. package/dist/fns/create-transfer-group/create-transfer-group.browser.cjs +3 -3
  50. package/dist/fns/create-transfer-group/create-transfer-group.browser.js +3 -3
  51. package/dist/fns/create-transfer-group/create-transfer-group.cjs +3 -3
  52. package/dist/fns/create-transfer-group/create-transfer-group.js +3 -3
  53. package/dist/fns/create-transfers/create-transfers.browser.cjs +3 -3
  54. package/dist/fns/create-transfers/create-transfers.browser.js +3 -3
  55. package/dist/fns/create-transfers/create-transfers.cjs +3 -3
  56. package/dist/fns/create-transfers/create-transfers.js +3 -3
  57. package/dist/fns/create-wallet/create-wallet.browser.cjs +3 -3
  58. package/dist/fns/create-wallet/create-wallet.browser.js +3 -3
  59. package/dist/fns/create-wallet/create-wallet.cjs +3 -3
  60. package/dist/fns/create-wallet/create-wallet.js +3 -3
  61. package/dist/fns/create-withdrawal/create-withdrawal.browser.cjs +3 -3
  62. package/dist/fns/create-withdrawal/create-withdrawal.browser.js +3 -3
  63. package/dist/fns/create-withdrawal/create-withdrawal.cjs +3 -3
  64. package/dist/fns/create-withdrawal/create-withdrawal.js +3 -3
  65. package/dist/fns/drop-index/drop-index.browser.cjs +3 -3
  66. package/dist/fns/drop-index/drop-index.browser.js +3 -3
  67. package/dist/fns/drop-index/drop-index.cjs +3 -3
  68. package/dist/fns/drop-index/drop-index.js +3 -3
  69. package/dist/fns/drop-index/drop-index.schema.zod.browser.cjs +3 -1
  70. package/dist/fns/drop-index/drop-index.schema.zod.browser.js +3 -1
  71. package/dist/fns/drop-index/drop-index.schema.zod.cjs +3 -1
  72. package/dist/fns/drop-index/drop-index.schema.zod.js +3 -1
  73. package/dist/fns/export-balance-history/export-balance-history.browser.cjs +3 -3
  74. package/dist/fns/export-balance-history/export-balance-history.browser.js +3 -3
  75. package/dist/fns/export-balance-history/export-balance-history.cjs +3 -3
  76. package/dist/fns/export-balance-history/export-balance-history.js +3 -3
  77. package/dist/fns/find-indexes/find-indexes.browser.cjs +3 -3
  78. package/dist/fns/find-indexes/find-indexes.browser.js +3 -3
  79. package/dist/fns/find-indexes/find-indexes.cjs +3 -3
  80. package/dist/fns/find-indexes/find-indexes.js +3 -3
  81. package/dist/fns/get-balance/get-balance.browser.cjs +3 -3
  82. package/dist/fns/get-balance/get-balance.browser.js +3 -3
  83. package/dist/fns/get-balance/get-balance.cjs +3 -3
  84. package/dist/fns/get-balance/get-balance.js +3 -3
  85. package/dist/fns/get-balance-history/get-balance-history.browser.cjs +3 -3
  86. package/dist/fns/get-balance-history/get-balance-history.browser.js +3 -3
  87. package/dist/fns/get-balance-history/get-balance-history.cjs +3 -3
  88. package/dist/fns/get-balance-history/get-balance-history.js +3 -3
  89. package/dist/fns/get-export/get-export.browser.cjs +3 -3
  90. package/dist/fns/get-export/get-export.browser.js +3 -3
  91. package/dist/fns/get-export/get-export.cjs +3 -3
  92. package/dist/fns/get-export/get-export.js +3 -3
  93. package/dist/fns/get-flags/get-flags.browser.cjs +3 -3
  94. package/dist/fns/get-flags/get-flags.browser.js +3 -3
  95. package/dist/fns/get-flags/get-flags.cjs +3 -3
  96. package/dist/fns/get-flags/get-flags.js +3 -3
  97. package/dist/fns/get-statistics/get-statistics.browser.cjs +3 -3
  98. package/dist/fns/get-statistics/get-statistics.browser.js +3 -3
  99. package/dist/fns/get-statistics/get-statistics.cjs +3 -3
  100. package/dist/fns/get-statistics/get-statistics.js +3 -3
  101. package/dist/fns/get-token/get-token.browser.cjs +3 -3
  102. package/dist/fns/get-token/get-token.browser.js +3 -3
  103. package/dist/fns/get-token/get-token.cjs +3 -3
  104. package/dist/fns/get-token/get-token.js +3 -3
  105. package/dist/fns/get-transfer/get-transfer.browser.cjs +3 -3
  106. package/dist/fns/get-transfer/get-transfer.browser.js +3 -3
  107. package/dist/fns/get-transfer/get-transfer.cjs +3 -3
  108. package/dist/fns/get-transfer/get-transfer.js +3 -3
  109. package/dist/fns/get-transfer-group/get-transfer-group.browser.cjs +3 -3
  110. package/dist/fns/get-transfer-group/get-transfer-group.browser.js +3 -3
  111. package/dist/fns/get-transfer-group/get-transfer-group.cjs +3 -3
  112. package/dist/fns/get-transfer-group/get-transfer-group.js +3 -3
  113. package/dist/fns/get-wallet/get-wallet.browser.cjs +3 -3
  114. package/dist/fns/get-wallet/get-wallet.browser.js +3 -3
  115. package/dist/fns/get-wallet/get-wallet.cjs +3 -3
  116. package/dist/fns/get-wallet/get-wallet.js +3 -3
  117. package/dist/fns/healthcheck/healthcheck.browser.cjs +3 -3
  118. package/dist/fns/healthcheck/healthcheck.browser.js +3 -3
  119. package/dist/fns/healthcheck/healthcheck.cjs +3 -3
  120. package/dist/fns/healthcheck/healthcheck.js +3 -3
  121. package/dist/fns/list-exports/list-exports.browser.cjs +3 -3
  122. package/dist/fns/list-exports/list-exports.browser.js +3 -3
  123. package/dist/fns/list-exports/list-exports.cjs +3 -3
  124. package/dist/fns/list-exports/list-exports.js +3 -3
  125. package/dist/fns/reverse-transfer/reverse-transfer.browser.cjs +3 -3
  126. package/dist/fns/reverse-transfer/reverse-transfer.browser.js +3 -3
  127. package/dist/fns/reverse-transfer/reverse-transfer.cjs +3 -3
  128. package/dist/fns/reverse-transfer/reverse-transfer.js +3 -3
  129. package/dist/fns/reverse-transfer-group/reverse-transfer-group.browser.cjs +3 -3
  130. package/dist/fns/reverse-transfer-group/reverse-transfer-group.browser.js +3 -3
  131. package/dist/fns/reverse-transfer-group/reverse-transfer-group.cjs +3 -3
  132. package/dist/fns/reverse-transfer-group/reverse-transfer-group.js +3 -3
  133. package/dist/fns/set-flags/set-flags.browser.cjs +3 -3
  134. package/dist/fns/set-flags/set-flags.browser.js +3 -3
  135. package/dist/fns/set-flags/set-flags.cjs +3 -3
  136. package/dist/fns/set-flags/set-flags.js +3 -3
  137. package/dist/fns/update-apikey/update-apikey.browser.cjs +3 -3
  138. package/dist/fns/update-apikey/update-apikey.browser.js +3 -3
  139. package/dist/fns/update-apikey/update-apikey.cjs +3 -3
  140. package/dist/fns/update-apikey/update-apikey.js +3 -3
  141. package/dist/fns/update-token/update-token.browser.cjs +3 -3
  142. package/dist/fns/update-token/update-token.browser.js +3 -3
  143. package/dist/fns/update-token/update-token.cjs +3 -3
  144. package/dist/fns/update-token/update-token.js +3 -3
  145. package/dist/fns/update-transfer/update-transfer.browser.cjs +3 -3
  146. package/dist/fns/update-transfer/update-transfer.browser.js +3 -3
  147. package/dist/fns/update-transfer/update-transfer.cjs +3 -3
  148. package/dist/fns/update-transfer/update-transfer.js +3 -3
  149. package/dist/fns/update-transfer-group/update-transfer-group.browser.cjs +3 -3
  150. package/dist/fns/update-transfer-group/update-transfer-group.browser.js +3 -3
  151. package/dist/fns/update-transfer-group/update-transfer-group.cjs +3 -3
  152. package/dist/fns/update-transfer-group/update-transfer-group.js +3 -3
  153. package/dist/fns/update-wallet/update-wallet.browser.cjs +3 -3
  154. package/dist/fns/update-wallet/update-wallet.browser.js +3 -3
  155. package/dist/fns/update-wallet/update-wallet.cjs +3 -3
  156. package/dist/fns/update-wallet/update-wallet.js +3 -3
  157. package/dist/lib/debug.browser.cjs +10 -9
  158. package/dist/lib/debug.browser.js +10 -9
  159. package/dist/lib/debug.cjs +10 -9
  160. package/dist/lib/debug.js +10 -9
  161. package/dist/lib/env.browser.cjs +1 -1
  162. package/dist/lib/env.browser.js +1 -1
  163. package/dist/lib/env.cjs +1 -1
  164. package/dist/lib/env.js +1 -1
  165. package/dist/lib/polyfill.browser.cjs +13 -19
  166. package/dist/lib/polyfill.browser.js +13 -19
  167. package/dist/lib/polyfill.cjs +14 -20
  168. package/dist/lib/polyfill.js +13 -19
  169. package/dist/lib/query-builder/query-builder.browser.js +3 -1
  170. package/dist/lib/query-builder/query-builder.js +3 -1
  171. package/dist/lib/stream-promise.browser.cjs +2 -1
  172. package/dist/lib/stream-promise.browser.js +2 -1
  173. package/dist/lib/stream-promise.cjs +2 -1
  174. package/dist/lib/stream-promise.js +2 -1
  175. package/dist/lib/streams.browser.cjs +1 -53
  176. package/dist/lib/streams.browser.js +1 -53
  177. package/dist/lib/streams.cjs +2 -56
  178. package/dist/lib/streams.js +1 -53
  179. package/dist/lib/utils.browser.cjs +9 -4
  180. package/dist/lib/utils.browser.js +9 -4
  181. package/dist/lib/utils.cjs +10 -4
  182. package/dist/lib/utils.js +9 -4
  183. package/dist/lib/validator.browser.cjs +478 -106
  184. package/dist/lib/validator.browser.js +478 -106
  185. package/dist/lib/validator.cjs +478 -106
  186. package/dist/lib/validator.js +478 -106
  187. package/dist/txs/tx-map.generated.browser.cjs +84 -0
  188. package/dist/txs/tx-map.generated.browser.js +63 -0
  189. package/dist/txs/tx-map.generated.cjs +88 -0
  190. package/dist/txs/tx-map.generated.js +63 -0
  191. package/dist/txs/update-token/update-token.schema.zod.browser.cjs +3 -2
  192. package/dist/txs/update-token/update-token.schema.zod.browser.js +4 -3
  193. package/dist/txs/update-token/update-token.schema.zod.cjs +3 -2
  194. package/dist/txs/update-token/update-token.schema.zod.js +4 -3
  195. package/dist/txs/update-wallet/update-wallet.schema.zod.browser.cjs +2 -1
  196. package/dist/txs/update-wallet/update-wallet.schema.zod.browser.js +3 -2
  197. package/dist/txs/update-wallet/update-wallet.schema.zod.cjs +2 -1
  198. package/dist/txs/update-wallet/update-wallet.schema.zod.js +3 -2
  199. package/dist/types/wapi-client.d.ts +32114 -32232
  200. package/dist/wapi-client.browser.cjs +0 -2
  201. package/dist/wapi-client.browser.js +0 -2
  202. package/dist/wapi-client.cjs +0 -2
  203. package/dist/wapi-client.iife.js +14 -14
  204. package/dist/wapi-client.js +0 -2
  205. package/package.json +3 -3
  206. package/dist/lib/stream-promise-input.browser.cjs +0 -64
  207. package/dist/lib/stream-promise-input.browser.js +0 -45
  208. package/dist/lib/stream-promise-input.cjs +0 -68
  209. package/dist/lib/stream-promise-input.js +0 -45
@@ -660,23 +660,31 @@ function createConnection(opts, connectionConfig) {
660
660
  function getHeaders(id) {
661
661
  return __spreadValues(__spreadValues(__spreadValues(__spreadValues({
662
662
  "content-type": "application/json"
663
- }, id ? { [REQ_HEADER_ID]: id } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
663
+ }, id ? { [REQ_HEADER_ID]: String(id) } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
664
664
  Authorization: `Bearer ${opts.jwt}`
665
665
  } : {}), "apikey" in opts ? {
666
666
  Authorization: `Basic ${(0, import_utils.getBasicAuth)(opts)}`
667
667
  } : {});
668
668
  }
669
- function send(body) {
669
+ function send(data) {
670
670
  return __async(this, null, function* () {
671
- const jsonBody = JSON.parse(body);
671
+ const body = JSON.stringify(data);
672
672
  const res = yield (0, import_cross_fetch.default)(`${url}/api`, {
673
673
  keepalive: true,
674
674
  method: "POST",
675
- headers: getHeaders(jsonBody == null ? void 0 : jsonBody.id),
675
+ headers: getHeaders(data == null ? void 0 : data.id),
676
676
  body
677
677
  });
678
- const responseBody = yield res.json();
679
- this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: jsonBody.id }));
678
+ let responseBody;
679
+ try {
680
+ responseBody = yield res.json();
681
+ } catch (err) {
682
+ if (!res.ok) {
683
+ throw new Error(`HTTP error ${res.status} ${res.statusText}`);
684
+ }
685
+ throw err;
686
+ }
687
+ this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: data.id }));
680
688
  });
681
689
  }
682
690
  const connectId = (0, import_utils.getRandomHex)();
@@ -736,7 +744,17 @@ var HttpClient = class extends import_base_client.BaseClient {
736
744
  }
737
745
  _send(input) {
738
746
  (0, import_debug.debugLog)("send()", input);
739
- this._connection.send(JSON.stringify(input));
747
+ this._connection.send(input).catch((err) => {
748
+ (0, import_debug.debugLog)("send() failed", err);
749
+ const error = err instanceof import_errors.WAPIError ? err : new import_errors.StreamError(
750
+ "CONNECTION_LOST",
751
+ { method: "method" in input ? input.method : "unknown" },
752
+ err instanceof Error ? err.message : String(err)
753
+ );
754
+ if (input.id !== null && input.id !== void 0) {
755
+ this._failRequest(input.id, error);
756
+ }
757
+ });
740
758
  }
741
759
  _ready() {
742
760
  this._setConnected(true);
@@ -624,7 +624,11 @@ import {
624
624
  } from "./jsonrpc/jsonrpc.enums.browser.js";
625
625
  import { BaseClient } from "./base-client.browser.js";
626
626
  import { WapiClientType } from "../wapi-client.browser.js";
627
- import { ConfigError } from "../lib/errors.browser.js";
627
+ import {
628
+ ConfigError,
629
+ StreamError,
630
+ WAPIError
631
+ } from "../lib/errors.browser.js";
628
632
  import { getBasicAuth, getRandomHex } from "../lib/utils.browser.js";
629
633
  function createHttpClient(opts, config) {
630
634
  const initialConnection = createConnection(opts, {
@@ -650,23 +654,31 @@ function createConnection(opts, connectionConfig) {
650
654
  function getHeaders(id) {
651
655
  return __spreadValues(__spreadValues(__spreadValues(__spreadValues({
652
656
  "content-type": "application/json"
653
- }, id ? { [REQ_HEADER_ID]: id } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
657
+ }, id ? { [REQ_HEADER_ID]: String(id) } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
654
658
  Authorization: `Bearer ${opts.jwt}`
655
659
  } : {}), "apikey" in opts ? {
656
660
  Authorization: `Basic ${getBasicAuth(opts)}`
657
661
  } : {});
658
662
  }
659
- function send(body) {
663
+ function send(data) {
660
664
  return __async(this, null, function* () {
661
- const jsonBody = JSON.parse(body);
665
+ const body = JSON.stringify(data);
662
666
  const res = yield (0, import_cross_fetch.default)(`${url}/api`, {
663
667
  keepalive: true,
664
668
  method: "POST",
665
- headers: getHeaders(jsonBody == null ? void 0 : jsonBody.id),
669
+ headers: getHeaders(data == null ? void 0 : data.id),
666
670
  body
667
671
  });
668
- const responseBody = yield res.json();
669
- this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: jsonBody.id }));
672
+ let responseBody;
673
+ try {
674
+ responseBody = yield res.json();
675
+ } catch (err) {
676
+ if (!res.ok) {
677
+ throw new Error(`HTTP error ${res.status} ${res.statusText}`);
678
+ }
679
+ throw err;
680
+ }
681
+ this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: data.id }));
670
682
  });
671
683
  }
672
684
  const connectId = getRandomHex();
@@ -726,7 +738,17 @@ var HttpClient = class extends BaseClient {
726
738
  }
727
739
  _send(input) {
728
740
  debugLog("send()", input);
729
- this._connection.send(JSON.stringify(input));
741
+ this._connection.send(input).catch((err) => {
742
+ debugLog("send() failed", err);
743
+ const error = err instanceof WAPIError ? err : new StreamError(
744
+ "CONNECTION_LOST",
745
+ { method: "method" in input ? input.method : "unknown" },
746
+ err instanceof Error ? err.message : String(err)
747
+ );
748
+ if (input.id !== null && input.id !== void 0) {
749
+ this._failRequest(input.id, error);
750
+ }
751
+ });
730
752
  }
731
753
  _ready() {
732
754
  this._setConnected(true);
@@ -102,23 +102,31 @@ function createConnection(opts, connectionConfig) {
102
102
  function getHeaders(id) {
103
103
  return __spreadValues(__spreadValues(__spreadValues(__spreadValues({
104
104
  "content-type": "application/json"
105
- }, id ? { [REQ_HEADER_ID]: id } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
105
+ }, id ? { [REQ_HEADER_ID]: String(id) } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
106
106
  Authorization: `Bearer ${opts.jwt}`
107
107
  } : {}), "apikey" in opts ? {
108
108
  Authorization: `Basic ${(0, import_utils.getBasicAuth)(opts)}`
109
109
  } : {});
110
110
  }
111
- function send(body) {
111
+ function send(data) {
112
112
  return __async(this, null, function* () {
113
- const jsonBody = JSON.parse(body);
113
+ const body = JSON.stringify(data);
114
114
  const res = yield (0, import_cross_fetch.default)(`${url}/api`, {
115
115
  keepalive: true,
116
116
  method: "POST",
117
- headers: getHeaders(jsonBody == null ? void 0 : jsonBody.id),
117
+ headers: getHeaders(data == null ? void 0 : data.id),
118
118
  body
119
119
  });
120
- const responseBody = yield res.json();
121
- this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: jsonBody.id }));
120
+ let responseBody;
121
+ try {
122
+ responseBody = yield res.json();
123
+ } catch (err) {
124
+ if (!res.ok) {
125
+ throw new Error(`HTTP error ${res.status} ${res.statusText}`);
126
+ }
127
+ throw err;
128
+ }
129
+ this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: data.id }));
122
130
  });
123
131
  }
124
132
  const connectId = (0, import_utils.getRandomHex)();
@@ -178,7 +186,17 @@ var HttpClient = class extends import_base_client.BaseClient {
178
186
  }
179
187
  _send(input) {
180
188
  (0, import_debug.debugLog)("send()", input);
181
- this._connection.send(JSON.stringify(input));
189
+ this._connection.send(input).catch((err) => {
190
+ (0, import_debug.debugLog)("send() failed", err);
191
+ const error = err instanceof import_errors.WAPIError ? err : new import_errors.StreamError(
192
+ "CONNECTION_LOST",
193
+ { method: "method" in input ? input.method : "unknown" },
194
+ err instanceof Error ? err.message : String(err)
195
+ );
196
+ if (input.id !== null && input.id !== void 0) {
197
+ this._failRequest(input.id, error);
198
+ }
199
+ });
182
200
  }
183
201
  _ready() {
184
202
  this._setConnected(true);
@@ -46,7 +46,11 @@ import {
46
46
  } from "./jsonrpc/jsonrpc.enums.js";
47
47
  import { BaseClient } from "./base-client.js";
48
48
  import { WapiClientType } from "../wapi-client.js";
49
- import { ConfigError } from "../lib/errors.js";
49
+ import {
50
+ ConfigError,
51
+ StreamError,
52
+ WAPIError
53
+ } from "../lib/errors.js";
50
54
  import { getBasicAuth, getRandomHex } from "../lib/utils.js";
51
55
  function createHttpClient(opts, config) {
52
56
  const initialConnection = createConnection(opts, {
@@ -72,23 +76,31 @@ function createConnection(opts, connectionConfig) {
72
76
  function getHeaders(id) {
73
77
  return __spreadValues(__spreadValues(__spreadValues(__spreadValues({
74
78
  "content-type": "application/json"
75
- }, id ? { [REQ_HEADER_ID]: id } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
79
+ }, id ? { [REQ_HEADER_ID]: String(id) } : {}), (connectionConfig == null ? void 0 : connectionConfig.connectionName) ? { [REQ_CONN_NAME]: connectionConfig == null ? void 0 : connectionConfig.connectionName } : {}), "jwt" in opts ? {
76
80
  Authorization: `Bearer ${opts.jwt}`
77
81
  } : {}), "apikey" in opts ? {
78
82
  Authorization: `Basic ${getBasicAuth(opts)}`
79
83
  } : {});
80
84
  }
81
- function send(body) {
85
+ function send(data) {
82
86
  return __async(this, null, function* () {
83
- const jsonBody = JSON.parse(body);
87
+ const body = JSON.stringify(data);
84
88
  const res = yield fetch(`${url}/api`, {
85
89
  keepalive: true,
86
90
  method: "POST",
87
- headers: getHeaders(jsonBody == null ? void 0 : jsonBody.id),
91
+ headers: getHeaders(data == null ? void 0 : data.id),
88
92
  body
89
93
  });
90
- const responseBody = yield res.json();
91
- this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: jsonBody.id }));
94
+ let responseBody;
95
+ try {
96
+ responseBody = yield res.json();
97
+ } catch (err) {
98
+ if (!res.ok) {
99
+ throw new Error(`HTTP error ${res.status} ${res.statusText}`);
100
+ }
101
+ throw err;
102
+ }
103
+ this.onmessage(__spreadProps(__spreadValues({}, responseBody), { id: data.id }));
92
104
  });
93
105
  }
94
106
  const connectId = getRandomHex();
@@ -148,7 +160,17 @@ var HttpClient = class extends BaseClient {
148
160
  }
149
161
  _send(input) {
150
162
  debugLog("send()", input);
151
- this._connection.send(JSON.stringify(input));
163
+ this._connection.send(input).catch((err) => {
164
+ debugLog("send() failed", err);
165
+ const error = err instanceof WAPIError ? err : new StreamError(
166
+ "CONNECTION_LOST",
167
+ { method: "method" in input ? input.method : "unknown" },
168
+ err instanceof Error ? err.message : String(err)
169
+ );
170
+ if (input.id !== null && input.id !== void 0) {
171
+ this._failRequest(input.id, error);
172
+ }
173
+ });
152
174
  }
153
175
  _ready() {
154
176
  this._setConnected(true);
@@ -283,10 +283,6 @@ var WsClient = class extends import_base_client.BaseClient {
283
283
  (0, import_debug.debugLog)("heartbeat");
284
284
  clearTimeout(this._pingTimeout);
285
285
  this._pingTimeout = setTimeout(() => {
286
- if (this._sending.size) {
287
- (0, import_debug.debugLog)("pingTimeout reached, but sending.size:", this._sending.size);
288
- return this._heartbeat();
289
- }
290
286
  (0, import_debug.debugLog)("timeout");
291
287
  this._connection.close();
292
288
  this._setConnected(false);
@@ -258,10 +258,6 @@ var WsClient = class extends BaseClient {
258
258
  debugLog("heartbeat");
259
259
  clearTimeout(this._pingTimeout);
260
260
  this._pingTimeout = setTimeout(() => {
261
- if (this._sending.size) {
262
- debugLog("pingTimeout reached, but sending.size:", this._sending.size);
263
- return this._heartbeat();
264
- }
265
261
  debugLog("timeout");
266
262
  this._connection.close();
267
263
  this._setConnected(false);
@@ -283,10 +283,6 @@ var WsClient = class extends import_base_client.BaseClient {
283
283
  (0, import_debug.debugLog)("heartbeat");
284
284
  clearTimeout(this._pingTimeout);
285
285
  this._pingTimeout = setTimeout(() => {
286
- if (this._sending.size) {
287
- (0, import_debug.debugLog)("pingTimeout reached, but sending.size:", this._sending.size);
288
- return this._heartbeat();
289
- }
290
286
  (0, import_debug.debugLog)("timeout");
291
287
  this._connection.close();
292
288
  this._setConnected(false);
@@ -258,10 +258,6 @@ var WsClient = class extends BaseClient {
258
258
  debugLog("heartbeat");
259
259
  clearTimeout(this._pingTimeout);
260
260
  this._pingTimeout = setTimeout(() => {
261
- if (this._sending.size) {
262
- debugLog("pingTimeout reached, but sending.size:", this._sending.size);
263
- return this._heartbeat();
264
- }
265
261
  debugLog("timeout");
266
262
  this._connection.close();
267
263
  this._setConnected(false);
@@ -299,14 +299,11 @@ var DbFilterMetadataFilteringSchema = import_zod.z.discriminatedUnion(
299
299
  DbFilterFunctionWhereMetadataNullSchema
300
300
  ]
301
301
  );
302
- var DbFilterFunctionWhereSchema = import_zod.z.discriminatedUnion(
303
- "function",
304
- [
305
- DbFilterFunctionWhereInSchema,
306
- DbFilterFunctionWherePrimitiveSchema,
307
- DbFilterFunctionWhereNullSchema
308
- ]
309
- );
302
+ var DbFilterFunctionWhereSchema = import_zod.z.discriminatedUnion("function", [
303
+ DbFilterFunctionWhereInSchema,
304
+ DbFilterFunctionWherePrimitiveSchema,
305
+ DbFilterFunctionWhereNullSchema
306
+ ]);
310
307
  var DbFilterSchema = import_zod.z.union([
311
308
  DbFilterFunctionWherePrimitiveObjectSchema,
312
309
  DbFilterFunctionWhereInSchema,
@@ -394,11 +391,7 @@ function getDbFilter(objectInputSchema, schema) {
394
391
  );
395
392
  }
396
393
  if (isMetadataDotFilterField(filterShapedData.field)) {
397
- return validateSchema(
398
- filterShapedData,
399
- DbFilterFunctionWhereSchema,
400
- ctx
401
- );
394
+ return validateSchema(filterShapedData, DbFilterFunctionWhereSchema, ctx);
402
395
  }
403
396
  if (!validateSchema(filterShapedData.field, FieldsSchema, ctx) || !InSideSchema.shape[filterShapedData.field]) {
404
397
  return false;
@@ -225,14 +225,11 @@ var DbFilterMetadataFilteringSchema = z.discriminatedUnion(
225
225
  DbFilterFunctionWhereMetadataNullSchema
226
226
  ]
227
227
  );
228
- var DbFilterFunctionWhereSchema = z.discriminatedUnion(
229
- "function",
230
- [
231
- DbFilterFunctionWhereInSchema,
232
- DbFilterFunctionWherePrimitiveSchema,
233
- DbFilterFunctionWhereNullSchema
234
- ]
235
- );
228
+ var DbFilterFunctionWhereSchema = z.discriminatedUnion("function", [
229
+ DbFilterFunctionWhereInSchema,
230
+ DbFilterFunctionWherePrimitiveSchema,
231
+ DbFilterFunctionWhereNullSchema
232
+ ]);
236
233
  var DbFilterSchema = z.union([
237
234
  DbFilterFunctionWherePrimitiveObjectSchema,
238
235
  DbFilterFunctionWhereInSchema,
@@ -320,11 +317,7 @@ function getDbFilter(objectInputSchema, schema) {
320
317
  );
321
318
  }
322
319
  if (isMetadataDotFilterField(filterShapedData.field)) {
323
- return validateSchema(
324
- filterShapedData,
325
- DbFilterFunctionWhereSchema,
326
- ctx
327
- );
320
+ return validateSchema(filterShapedData, DbFilterFunctionWhereSchema, ctx);
328
321
  }
329
322
  if (!validateSchema(filterShapedData.field, FieldsSchema, ctx) || !InSideSchema.shape[filterShapedData.field]) {
330
323
  return false;
@@ -299,14 +299,11 @@ var DbFilterMetadataFilteringSchema = import_zod.z.discriminatedUnion(
299
299
  DbFilterFunctionWhereMetadataNullSchema
300
300
  ]
301
301
  );
302
- var DbFilterFunctionWhereSchema = import_zod.z.discriminatedUnion(
303
- "function",
304
- [
305
- DbFilterFunctionWhereInSchema,
306
- DbFilterFunctionWherePrimitiveSchema,
307
- DbFilterFunctionWhereNullSchema
308
- ]
309
- );
302
+ var DbFilterFunctionWhereSchema = import_zod.z.discriminatedUnion("function", [
303
+ DbFilterFunctionWhereInSchema,
304
+ DbFilterFunctionWherePrimitiveSchema,
305
+ DbFilterFunctionWhereNullSchema
306
+ ]);
310
307
  var DbFilterSchema = import_zod.z.union([
311
308
  DbFilterFunctionWherePrimitiveObjectSchema,
312
309
  DbFilterFunctionWhereInSchema,
@@ -394,11 +391,7 @@ function getDbFilter(objectInputSchema, schema) {
394
391
  );
395
392
  }
396
393
  if (isMetadataDotFilterField(filterShapedData.field)) {
397
- return validateSchema(
398
- filterShapedData,
399
- DbFilterFunctionWhereSchema,
400
- ctx
401
- );
394
+ return validateSchema(filterShapedData, DbFilterFunctionWhereSchema, ctx);
402
395
  }
403
396
  if (!validateSchema(filterShapedData.field, FieldsSchema, ctx) || !InSideSchema.shape[filterShapedData.field]) {
404
397
  return false;
package/dist/db/consts.js CHANGED
@@ -225,14 +225,11 @@ var DbFilterMetadataFilteringSchema = z.discriminatedUnion(
225
225
  DbFilterFunctionWhereMetadataNullSchema
226
226
  ]
227
227
  );
228
- var DbFilterFunctionWhereSchema = z.discriminatedUnion(
229
- "function",
230
- [
231
- DbFilterFunctionWhereInSchema,
232
- DbFilterFunctionWherePrimitiveSchema,
233
- DbFilterFunctionWhereNullSchema
234
- ]
235
- );
228
+ var DbFilterFunctionWhereSchema = z.discriminatedUnion("function", [
229
+ DbFilterFunctionWhereInSchema,
230
+ DbFilterFunctionWherePrimitiveSchema,
231
+ DbFilterFunctionWhereNullSchema
232
+ ]);
236
233
  var DbFilterSchema = z.union([
237
234
  DbFilterFunctionWherePrimitiveObjectSchema,
238
235
  DbFilterFunctionWhereInSchema,
@@ -320,11 +317,7 @@ function getDbFilter(objectInputSchema, schema) {
320
317
  );
321
318
  }
322
319
  if (isMetadataDotFilterField(filterShapedData.field)) {
323
- return validateSchema(
324
- filterShapedData,
325
- DbFilterFunctionWhereSchema,
326
- ctx
327
- );
320
+ return validateSchema(filterShapedData, DbFilterFunctionWhereSchema, ctx);
328
321
  }
329
322
  if (!validateSchema(filterShapedData.field, FieldsSchema, ctx) || !InSideSchema.shape[filterShapedData.field]) {
330
323
  return false;
@@ -23,8 +23,7 @@ __export(create_access_token_exports, {
23
23
  createAccessToken: () => createAccessToken
24
24
  });
25
25
  module.exports = __toCommonJS(create_access_token_exports);
26
- var import_validation = require("../../lib/validation.browser.cjs");
27
- var import_create_access_token_schema_zod = require("./create-access-token.schema.zod.browser.cjs");
26
+ var import_validator = require("../../lib/validator.browser.cjs");
28
27
  var clientFnToTxMap = new Map(
29
28
  Object.entries({
30
29
  aggregateTransfers: "aggregateTransferMany",
@@ -44,10 +43,11 @@ var clientFnToTxMap = new Map(
44
43
  updateTransferGroups: "updateTransferGroupMany"
45
44
  })
46
45
  );
47
- var zodValidator = (0, import_validation.getValidator)(import_create_access_token_schema_zod.createAccessTokenFnInputSchema);
46
+ var zodValidator;
48
47
  function createAccessToken(options, input, fnOptions) {
49
48
  var _a;
50
49
  const { client } = options;
50
+ zodValidator != null ? zodValidator : zodValidator = import_validator.Validator.createAccessTokenFnInput;
51
51
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
52
52
  if (inputCopy.token && "scopes" in inputCopy.token) {
53
53
  inputCopy.token.scopes = Array.from(
@@ -1,6 +1,5 @@
1
1
  // src/fns/create-access-token/create-access-token.ts
2
- import { getValidator } from "../../lib/validation.browser.js";
3
- import { createAccessTokenFnInputSchema } from "./create-access-token.schema.zod.browser.js";
2
+ import { Validator } from "../../lib/validator.browser.js";
4
3
  var clientFnToTxMap = new Map(
5
4
  Object.entries({
6
5
  aggregateTransfers: "aggregateTransferMany",
@@ -20,10 +19,11 @@ var clientFnToTxMap = new Map(
20
19
  updateTransferGroups: "updateTransferGroupMany"
21
20
  })
22
21
  );
23
- var zodValidator = getValidator(createAccessTokenFnInputSchema);
22
+ var zodValidator;
24
23
  function createAccessToken(options, input, fnOptions) {
25
24
  var _a;
26
25
  const { client } = options;
26
+ zodValidator != null ? zodValidator : zodValidator = Validator.createAccessTokenFnInput;
27
27
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
28
28
  if (inputCopy.token && "scopes" in inputCopy.token) {
29
29
  inputCopy.token.scopes = Array.from(
@@ -23,8 +23,7 @@ __export(create_access_token_exports, {
23
23
  createAccessToken: () => createAccessToken
24
24
  });
25
25
  module.exports = __toCommonJS(create_access_token_exports);
26
- var import_validation = require("../../lib/validation.cjs");
27
- var import_create_access_token_schema_zod = require("./create-access-token.schema.zod.cjs");
26
+ var import_validator = require("../../lib/validator.cjs");
28
27
  var clientFnToTxMap = new Map(
29
28
  Object.entries({
30
29
  aggregateTransfers: "aggregateTransferMany",
@@ -44,10 +43,11 @@ var clientFnToTxMap = new Map(
44
43
  updateTransferGroups: "updateTransferGroupMany"
45
44
  })
46
45
  );
47
- var zodValidator = (0, import_validation.getValidator)(import_create_access_token_schema_zod.createAccessTokenFnInputSchema);
46
+ var zodValidator;
48
47
  function createAccessToken(options, input, fnOptions) {
49
48
  var _a;
50
49
  const { client } = options;
50
+ zodValidator != null ? zodValidator : zodValidator = import_validator.Validator.createAccessTokenFnInput;
51
51
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
52
52
  if (inputCopy.token && "scopes" in inputCopy.token) {
53
53
  inputCopy.token.scopes = Array.from(
@@ -1,6 +1,5 @@
1
1
  // src/fns/create-access-token/create-access-token.ts
2
- import { getValidator } from "../../lib/validation.js";
3
- import { createAccessTokenFnInputSchema } from "./create-access-token.schema.zod.js";
2
+ import { Validator } from "../../lib/validator.js";
4
3
  var clientFnToTxMap = new Map(
5
4
  Object.entries({
6
5
  aggregateTransfers: "aggregateTransferMany",
@@ -20,10 +19,11 @@ var clientFnToTxMap = new Map(
20
19
  updateTransferGroups: "updateTransferGroupMany"
21
20
  })
22
21
  );
23
- var zodValidator = getValidator(createAccessTokenFnInputSchema);
22
+ var zodValidator;
24
23
  function createAccessToken(options, input, fnOptions) {
25
24
  var _a;
26
25
  const { client } = options;
26
+ zodValidator != null ? zodValidator : zodValidator = Validator.createAccessTokenFnInput;
27
27
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
28
28
  if (inputCopy.token && "scopes" in inputCopy.token) {
29
29
  inputCopy.token.scopes = Array.from(
@@ -37,11 +37,11 @@ __export(create_apikey_exports, {
37
37
  createApikey: () => createApikey
38
38
  });
39
39
  module.exports = __toCommonJS(create_apikey_exports);
40
- var import_validation = require("../../lib/validation.browser.cjs");
41
- var import_create_apikey_schema_zod = require("./create-apikey.schema.zod.browser.cjs");
42
- var zodValidator = (0, import_validation.getValidator)(import_create_apikey_schema_zod.createApikeyFnInputSchema);
40
+ var import_validator = require("../../lib/validator.browser.cjs");
41
+ var zodValidator;
43
42
  function createApikey(options, input, fnOptions) {
44
43
  const { client } = options;
44
+ zodValidator != null ? zodValidator : zodValidator = import_validator.Validator.createApikeyFnInput;
45
45
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
46
46
  const _a = inputCopy, { options: clientOptions } = _a, apikey = __objRest(_a, ["options"]);
47
47
  return client.api.createApikey({
@@ -15,11 +15,11 @@ var __objRest = (source, exclude) => {
15
15
  };
16
16
 
17
17
  // src/fns/create-apikey/create-apikey.ts
18
- import { getValidator } from "../../lib/validation.browser.js";
19
- import { createApikeyFnInputSchema } from "./create-apikey.schema.zod.browser.js";
20
- var zodValidator = getValidator(createApikeyFnInputSchema);
18
+ import { Validator } from "../../lib/validator.browser.js";
19
+ var zodValidator;
21
20
  function createApikey(options, input, fnOptions) {
22
21
  const { client } = options;
22
+ zodValidator != null ? zodValidator : zodValidator = Validator.createApikeyFnInput;
23
23
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
24
24
  const _a = inputCopy, { options: clientOptions } = _a, apikey = __objRest(_a, ["options"]);
25
25
  return client.api.createApikey({
@@ -37,11 +37,11 @@ __export(create_apikey_exports, {
37
37
  createApikey: () => createApikey
38
38
  });
39
39
  module.exports = __toCommonJS(create_apikey_exports);
40
- var import_validation = require("../../lib/validation.cjs");
41
- var import_create_apikey_schema_zod = require("./create-apikey.schema.zod.cjs");
42
- var zodValidator = (0, import_validation.getValidator)(import_create_apikey_schema_zod.createApikeyFnInputSchema);
40
+ var import_validator = require("../../lib/validator.cjs");
41
+ var zodValidator;
43
42
  function createApikey(options, input, fnOptions) {
44
43
  const { client } = options;
44
+ zodValidator != null ? zodValidator : zodValidator = import_validator.Validator.createApikeyFnInput;
45
45
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
46
46
  const _a = inputCopy, { options: clientOptions } = _a, apikey = __objRest(_a, ["options"]);
47
47
  return client.api.createApikey({
@@ -15,11 +15,11 @@ var __objRest = (source, exclude) => {
15
15
  };
16
16
 
17
17
  // src/fns/create-apikey/create-apikey.ts
18
- import { getValidator } from "../../lib/validation.js";
19
- import { createApikeyFnInputSchema } from "./create-apikey.schema.zod.js";
20
- var zodValidator = getValidator(createApikeyFnInputSchema);
18
+ import { Validator } from "../../lib/validator.js";
19
+ var zodValidator;
21
20
  function createApikey(options, input, fnOptions) {
22
21
  const { client } = options;
22
+ zodValidator != null ? zodValidator : zodValidator = Validator.createApikeyFnInput;
23
23
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
24
24
  const _a = inputCopy, { options: clientOptions } = _a, apikey = __objRest(_a, ["options"]);
25
25
  return client.api.createApikey({
@@ -23,12 +23,12 @@ __export(create_contract_exports, {
23
23
  createContract: () => createContract
24
24
  });
25
25
  module.exports = __toCommonJS(create_contract_exports);
26
- var import_validation = require("../../lib/validation.browser.cjs");
27
- var import_create_contract_schema_zod = require("./create-contract.schema.zod.browser.cjs");
28
- var zodValidator = (0, import_validation.getValidator)(import_create_contract_schema_zod.createContractFnInputSchema);
26
+ var import_validator = require("../../lib/validator.browser.cjs");
27
+ var zodValidator;
29
28
  function createContract(options, input, fnOptions) {
30
29
  var _a;
31
30
  const { client } = options;
31
+ zodValidator != null ? zodValidator : zodValidator = import_validator.Validator.createContractFnInput;
32
32
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
33
33
  const apiInput = {
34
34
  token: {
@@ -1,10 +1,10 @@
1
1
  // src/fns/create-contract/create-contract.ts
2
- import { getValidator } from "../../lib/validation.browser.js";
3
- import { createContractFnInputSchema } from "./create-contract.schema.zod.browser.js";
4
- var zodValidator = getValidator(createContractFnInputSchema);
2
+ import { Validator } from "../../lib/validator.browser.js";
3
+ var zodValidator;
5
4
  function createContract(options, input, fnOptions) {
6
5
  var _a;
7
6
  const { client } = options;
7
+ zodValidator != null ? zodValidator : zodValidator = Validator.createContractFnInput;
8
8
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
9
9
  const apiInput = {
10
10
  token: {
@@ -23,12 +23,12 @@ __export(create_contract_exports, {
23
23
  createContract: () => createContract
24
24
  });
25
25
  module.exports = __toCommonJS(create_contract_exports);
26
- var import_validation = require("../../lib/validation.cjs");
27
- var import_create_contract_schema_zod = require("./create-contract.schema.zod.cjs");
28
- var zodValidator = (0, import_validation.getValidator)(import_create_contract_schema_zod.createContractFnInputSchema);
26
+ var import_validator = require("../../lib/validator.cjs");
27
+ var zodValidator;
29
28
  function createContract(options, input, fnOptions) {
30
29
  var _a;
31
30
  const { client } = options;
31
+ zodValidator != null ? zodValidator : zodValidator = import_validator.Validator.createContractFnInput;
32
32
  const inputCopy = zodValidator.validateInputWOptions(input, fnOptions);
33
33
  const apiInput = {
34
34
  token: {