lampamazaza-new-internal-utils 0.24.3

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 (216) hide show
  1. package/LICENSE +21 -0
  2. package/dist/_virtual/rolldown_runtime.cjs +43 -0
  3. package/dist/_virtual/rolldown_runtime.js +18 -0
  4. package/dist/config.cjs +82 -0
  5. package/dist/config.d.cts +42 -0
  6. package/dist/config.d.ts +42 -0
  7. package/dist/config.js +72 -0
  8. package/dist/errors/assert.cjs +11 -0
  9. package/dist/errors/assert.d.cts +11 -0
  10. package/dist/errors/assert.d.ts +11 -0
  11. package/dist/errors/assert.js +11 -0
  12. package/dist/errors/base.cjs +34 -0
  13. package/dist/errors/base.d.cts +21 -0
  14. package/dist/errors/base.d.ts +21 -0
  15. package/dist/errors/base.js +33 -0
  16. package/dist/errors/index.cjs +23 -0
  17. package/dist/errors/index.d.cts +11 -0
  18. package/dist/errors/index.d.ts +11 -0
  19. package/dist/errors/index.js +18 -0
  20. package/dist/errors/request.cjs +48 -0
  21. package/dist/errors/request.d.cts +61 -0
  22. package/dist/errors/request.d.ts +61 -0
  23. package/dist/errors/request.js +46 -0
  24. package/dist/errors/utils/isNetworkError.cjs +23 -0
  25. package/dist/errors/utils/isNetworkError.js +22 -0
  26. package/dist/errors/utils/toError.cjs +8 -0
  27. package/dist/errors/utils/toError.d.cts +4 -0
  28. package/dist/errors/utils/toError.d.ts +4 -0
  29. package/dist/errors/utils/toError.js +7 -0
  30. package/dist/index.cjs +125 -0
  31. package/dist/index.d.cts +30 -0
  32. package/dist/index.d.ts +30 -0
  33. package/dist/index.js +30 -0
  34. package/dist/logger.d.cts +11 -0
  35. package/dist/logger.d.ts +11 -0
  36. package/dist/nearClient.cjs +18 -0
  37. package/dist/nearClient.d.cts +8 -0
  38. package/dist/nearClient.d.ts +8 -0
  39. package/dist/nearClient.js +18 -0
  40. package/dist/poaBridge/constants/blockchains.cjs +57 -0
  41. package/dist/poaBridge/constants/blockchains.d.cts +86 -0
  42. package/dist/poaBridge/constants/blockchains.d.ts +86 -0
  43. package/dist/poaBridge/constants/blockchains.js +54 -0
  44. package/dist/poaBridge/errors/withdrawal.cjs +52 -0
  45. package/dist/poaBridge/errors/withdrawal.d.cts +34 -0
  46. package/dist/poaBridge/errors/withdrawal.d.ts +34 -0
  47. package/dist/poaBridge/errors/withdrawal.js +50 -0
  48. package/dist/poaBridge/getPendingDeposits.cjs +9 -0
  49. package/dist/poaBridge/getPendingDeposits.d.cts +12 -0
  50. package/dist/poaBridge/getPendingDeposits.d.ts +13 -0
  51. package/dist/poaBridge/getPendingDeposits.js +9 -0
  52. package/dist/poaBridge/index.cjs +23 -0
  53. package/dist/poaBridge/index.d.cts +11 -0
  54. package/dist/poaBridge/index.d.ts +11 -0
  55. package/dist/poaBridge/index.js +18 -0
  56. package/dist/poaBridge/poaBridgeHttpClient/apis.cjs +38 -0
  57. package/dist/poaBridge/poaBridgeHttpClient/apis.d.cts +12 -0
  58. package/dist/poaBridge/poaBridgeHttpClient/apis.d.ts +12 -0
  59. package/dist/poaBridge/poaBridgeHttpClient/apis.js +32 -0
  60. package/dist/poaBridge/poaBridgeHttpClient/index.cjs +21 -0
  61. package/dist/poaBridge/poaBridgeHttpClient/index.d.cts +9 -0
  62. package/dist/poaBridge/poaBridgeHttpClient/index.d.ts +9 -0
  63. package/dist/poaBridge/poaBridgeHttpClient/index.js +16 -0
  64. package/dist/poaBridge/poaBridgeHttpClient/runtime.cjs +49 -0
  65. package/dist/poaBridge/poaBridgeHttpClient/runtime.js +47 -0
  66. package/dist/poaBridge/poaBridgeHttpClient/types.d.cts +161 -0
  67. package/dist/poaBridge/poaBridgeHttpClient/types.d.ts +161 -0
  68. package/dist/poaBridge/waitForWithdrawalCompletion.cjs +57 -0
  69. package/dist/poaBridge/waitForWithdrawalCompletion.d.cts +31 -0
  70. package/dist/poaBridge/waitForWithdrawalCompletion.d.ts +31 -0
  71. package/dist/poaBridge/waitForWithdrawalCompletion.js +56 -0
  72. package/dist/services/blockchainBalanceService.cjs +40 -0
  73. package/dist/services/blockchainBalanceService.d.cts +21 -0
  74. package/dist/services/blockchainBalanceService.d.ts +21 -0
  75. package/dist/services/blockchainBalanceService.js +37 -0
  76. package/dist/solverRelay/errors/intentSettlement.cjs +20 -0
  77. package/dist/solverRelay/errors/intentSettlement.d.cts +13 -0
  78. package/dist/solverRelay/errors/intentSettlement.d.ts +13 -0
  79. package/dist/solverRelay/errors/intentSettlement.js +20 -0
  80. package/dist/solverRelay/errors/quote.cjs +18 -0
  81. package/dist/solverRelay/errors/quote.d.cts +21 -0
  82. package/dist/solverRelay/errors/quote.d.ts +22 -0
  83. package/dist/solverRelay/errors/quote.js +18 -0
  84. package/dist/solverRelay/getQuote.cjs +49 -0
  85. package/dist/solverRelay/getQuote.d.cts +14 -0
  86. package/dist/solverRelay/getQuote.d.ts +14 -0
  87. package/dist/solverRelay/getQuote.js +49 -0
  88. package/dist/solverRelay/getStatus.cjs +26 -0
  89. package/dist/solverRelay/getStatus.d.cts +17 -0
  90. package/dist/solverRelay/getStatus.d.ts +18 -0
  91. package/dist/solverRelay/getStatus.js +26 -0
  92. package/dist/solverRelay/index.cjs +27 -0
  93. package/dist/solverRelay/index.d.cts +16 -0
  94. package/dist/solverRelay/index.d.ts +16 -0
  95. package/dist/solverRelay/index.js +22 -0
  96. package/dist/solverRelay/publishIntent.cjs +20 -0
  97. package/dist/solverRelay/publishIntent.d.cts +15 -0
  98. package/dist/solverRelay/publishIntent.d.ts +16 -0
  99. package/dist/solverRelay/publishIntent.js +20 -0
  100. package/dist/solverRelay/publishIntents.cjs +43 -0
  101. package/dist/solverRelay/publishIntents.d.cts +10 -0
  102. package/dist/solverRelay/publishIntents.d.ts +11 -0
  103. package/dist/solverRelay/publishIntents.js +42 -0
  104. package/dist/solverRelay/solverRelayHttpClient/apis.cjs +21 -0
  105. package/dist/solverRelay/solverRelayHttpClient/apis.d.cts +9 -0
  106. package/dist/solverRelay/solverRelayHttpClient/apis.d.ts +9 -0
  107. package/dist/solverRelay/solverRelayHttpClient/apis.js +18 -0
  108. package/dist/solverRelay/solverRelayHttpClient/index.cjs +18 -0
  109. package/dist/solverRelay/solverRelayHttpClient/index.d.cts +9 -0
  110. package/dist/solverRelay/solverRelayHttpClient/index.d.ts +9 -0
  111. package/dist/solverRelay/solverRelayHttpClient/index.js +13 -0
  112. package/dist/solverRelay/solverRelayHttpClient/runtime.cjs +60 -0
  113. package/dist/solverRelay/solverRelayHttpClient/runtime.js +58 -0
  114. package/dist/solverRelay/solverRelayHttpClient/types.d.cts +109 -0
  115. package/dist/solverRelay/solverRelayHttpClient/types.d.ts +109 -0
  116. package/dist/solverRelay/utils/parseFailedPublishError.cjs +40 -0
  117. package/dist/solverRelay/utils/parseFailedPublishError.d.cts +25 -0
  118. package/dist/solverRelay/utils/parseFailedPublishError.d.ts +26 -0
  119. package/dist/solverRelay/utils/parseFailedPublishError.js +39 -0
  120. package/dist/solverRelay/utils/quoteWithLog.cjs +21 -0
  121. package/dist/solverRelay/utils/quoteWithLog.d.cts +12 -0
  122. package/dist/solverRelay/utils/quoteWithLog.d.ts +14 -0
  123. package/dist/solverRelay/utils/quoteWithLog.js +21 -0
  124. package/dist/solverRelay/waitForIntentSettlement.cjs +52 -0
  125. package/dist/solverRelay/waitForIntentSettlement.d.cts +30 -0
  126. package/dist/solverRelay/waitForIntentSettlement.d.ts +30 -0
  127. package/dist/solverRelay/waitForIntentSettlement.js +52 -0
  128. package/dist/types/authHandle.cjs +22 -0
  129. package/dist/types/authHandle.d.cts +25 -0
  130. package/dist/types/authHandle.d.ts +25 -0
  131. package/dist/types/authHandle.js +16 -0
  132. package/dist/types/base.d.cts +45 -0
  133. package/dist/types/base.d.ts +45 -0
  134. package/dist/types/intentsUserId.d.cts +10 -0
  135. package/dist/types/intentsUserId.d.ts +10 -0
  136. package/dist/types/walletMessage.cjs +11 -0
  137. package/dist/types/walletMessage.d.cts +106 -0
  138. package/dist/types/walletMessage.d.ts +106 -0
  139. package/dist/types/walletMessage.js +5 -0
  140. package/dist/utils/abortSignal.cjs +19 -0
  141. package/dist/utils/abortSignal.js +18 -0
  142. package/dist/utils/appFee.cjs +20 -0
  143. package/dist/utils/appFee.d.cts +9 -0
  144. package/dist/utils/appFee.d.ts +9 -0
  145. package/dist/utils/appFee.js +15 -0
  146. package/dist/utils/assert.cjs +9 -0
  147. package/dist/utils/assert.d.cts +7 -0
  148. package/dist/utils/assert.d.ts +7 -0
  149. package/dist/utils/assert.js +9 -0
  150. package/dist/utils/authIdentity.cjs +56 -0
  151. package/dist/utils/authIdentity.d.cts +34 -0
  152. package/dist/utils/authIdentity.d.ts +34 -0
  153. package/dist/utils/authIdentity.js +50 -0
  154. package/dist/utils/failover.cjs +22 -0
  155. package/dist/utils/failover.d.cts +16 -0
  156. package/dist/utils/failover.d.ts +16 -0
  157. package/dist/utils/failover.js +20 -0
  158. package/dist/utils/handleRPCResponse.cjs +30 -0
  159. package/dist/utils/handleRPCResponse.js +28 -0
  160. package/dist/utils/index.cjs +55 -0
  161. package/dist/utils/index.d.cts +13 -0
  162. package/dist/utils/index.d.ts +13 -0
  163. package/dist/utils/index.js +50 -0
  164. package/dist/utils/messageFactory.cjs +137 -0
  165. package/dist/utils/messageFactory.d.cts +70 -0
  166. package/dist/utils/messageFactory.d.ts +70 -0
  167. package/dist/utils/messageFactory.js +132 -0
  168. package/dist/utils/multiPayload/webauthn.cjs +27 -0
  169. package/dist/utils/multiPayload/webauthn.js +26 -0
  170. package/dist/utils/near.cjs +58 -0
  171. package/dist/utils/near.d.cts +35 -0
  172. package/dist/utils/near.d.ts +35 -0
  173. package/dist/utils/near.js +53 -0
  174. package/dist/utils/poll.cjs +87 -0
  175. package/dist/utils/poll.d.cts +54 -0
  176. package/dist/utils/poll.d.ts +54 -0
  177. package/dist/utils/poll.js +85 -0
  178. package/dist/utils/prepareBroadcastRequest.cjs +98 -0
  179. package/dist/utils/prepareBroadcastRequest.d.cts +16 -0
  180. package/dist/utils/prepareBroadcastRequest.d.ts +16 -0
  181. package/dist/utils/prepareBroadcastRequest.js +90 -0
  182. package/dist/utils/promise/withTimeout.cjs +34 -0
  183. package/dist/utils/promise/withTimeout.d.cts +16 -0
  184. package/dist/utils/promise/withTimeout.d.ts +16 -0
  185. package/dist/utils/promise/withTimeout.js +34 -0
  186. package/dist/utils/request.cjs +100 -0
  187. package/dist/utils/request.d.cts +27 -0
  188. package/dist/utils/request.d.ts +27 -0
  189. package/dist/utils/request.js +99 -0
  190. package/dist/utils/requestShouldRetry.cjs +20 -0
  191. package/dist/utils/requestShouldRetry.js +20 -0
  192. package/dist/utils/retry.cjs +66 -0
  193. package/dist/utils/retry.d.cts +56 -0
  194. package/dist/utils/retry.d.ts +56 -0
  195. package/dist/utils/retry.js +64 -0
  196. package/dist/utils/serialize.cjs +82 -0
  197. package/dist/utils/serialize.d.cts +17 -0
  198. package/dist/utils/serialize.d.ts +17 -0
  199. package/dist/utils/serialize.js +81 -0
  200. package/dist/utils/stellarAddressToBytes.cjs +295 -0
  201. package/dist/utils/stellarAddressToBytes.js +294 -0
  202. package/dist/utils/token.cjs +8 -0
  203. package/dist/utils/token.js +7 -0
  204. package/dist/utils/tokenUtils.cjs +263 -0
  205. package/dist/utils/tokenUtils.d.cts +88 -0
  206. package/dist/utils/tokenUtils.d.ts +88 -0
  207. package/dist/utils/tokenUtils.js +238 -0
  208. package/dist/utils/tronAddressToHex.cjs +18 -0
  209. package/dist/utils/tronAddressToHex.js +17 -0
  210. package/dist/utils/uint8Array.cjs +15 -0
  211. package/dist/utils/uint8Array.d.cts +4 -0
  212. package/dist/utils/uint8Array.d.ts +4 -0
  213. package/dist/utils/uint8Array.js +14 -0
  214. package/dist/utils/webAuthn.cjs +91 -0
  215. package/dist/utils/webAuthn.js +89 -0
  216. package/package.json +56 -0
@@ -0,0 +1,20 @@
1
+ const require_base = require('../../errors/base.cjs');
2
+
3
+ //#region src/solverRelay/errors/intentSettlement.ts
4
+ var IntentSettlementError = class extends require_base.BaseError {
5
+ constructor(result) {
6
+ super("Intent settlement failed.", {
7
+ details: "Intent is published but not settled.",
8
+ metaMessages: [
9
+ `Status: ${result.status}`,
10
+ `Intent hash: ${result.intent_hash}`,
11
+ ..."data" in result && result.data ? [`Tx hash: ${result.data.hash}`] : []
12
+ ],
13
+ name: "IntentSettlementError"
14
+ });
15
+ this.result = result;
16
+ }
17
+ };
18
+
19
+ //#endregion
20
+ exports.IntentSettlementError = IntentSettlementError;
@@ -0,0 +1,13 @@
1
+ import { BaseError } from "../../errors/base.cjs";
2
+ import { GetStatusResponse } from "../solverRelayHttpClient/types.cjs";
3
+
4
+ //#region src/solverRelay/errors/intentSettlement.d.ts
5
+ type IntentSettlementErrorType = IntentSettlementError & {
6
+ name: "IntentSettlementError";
7
+ };
8
+ declare class IntentSettlementError extends BaseError {
9
+ result: GetStatusResponse["result"];
10
+ constructor(result: GetStatusResponse["result"]);
11
+ }
12
+ //#endregion
13
+ export { IntentSettlementError, IntentSettlementErrorType };
@@ -0,0 +1,13 @@
1
+ import { BaseError } from "../../errors/base.js";
2
+ import { GetStatusResponse } from "../solverRelayHttpClient/types.js";
3
+
4
+ //#region src/solverRelay/errors/intentSettlement.d.ts
5
+ type IntentSettlementErrorType = IntentSettlementError & {
6
+ name: "IntentSettlementError";
7
+ };
8
+ declare class IntentSettlementError extends BaseError {
9
+ result: GetStatusResponse["result"];
10
+ constructor(result: GetStatusResponse["result"]);
11
+ }
12
+ //#endregion
13
+ export { IntentSettlementError, IntentSettlementErrorType };
@@ -0,0 +1,20 @@
1
+ import { BaseError } from "../../errors/base.js";
2
+
3
+ //#region src/solverRelay/errors/intentSettlement.ts
4
+ var IntentSettlementError = class extends BaseError {
5
+ constructor(result) {
6
+ super("Intent settlement failed.", {
7
+ details: "Intent is published but not settled.",
8
+ metaMessages: [
9
+ `Status: ${result.status}`,
10
+ `Intent hash: ${result.intent_hash}`,
11
+ ..."data" in result && result.data ? [`Tx hash: ${result.data.hash}`] : []
12
+ ],
13
+ name: "IntentSettlementError"
14
+ });
15
+ this.result = result;
16
+ }
17
+ };
18
+
19
+ //#endregion
20
+ export { IntentSettlementError };
@@ -0,0 +1,18 @@
1
+ const require_serialize = require('../../utils/serialize.cjs');
2
+ const require_base = require('../../errors/base.cjs');
3
+
4
+ //#region src/solverRelay/errors/quote.ts
5
+ var QuoteError = class extends require_base.BaseError {
6
+ constructor({ quote, quoteParams }) {
7
+ super("Quote error.", {
8
+ details: quote == null ? "NO_QUOTE" : quote.type,
9
+ metaMessages: [`Quote: ${require_serialize.serialize(quote)}`, `Quote params: ${require_serialize.serialize(quoteParams)}`],
10
+ name: "QuoteError"
11
+ });
12
+ this.quote = quote;
13
+ this.quoteParams = quoteParams;
14
+ }
15
+ };
16
+
17
+ //#endregion
18
+ exports.QuoteError = QuoteError;
@@ -0,0 +1,21 @@
1
+ import { BaseError } from "../../errors/base.cjs";
2
+ import { FailedQuote } from "../solverRelayHttpClient/types.cjs";
3
+ import { quote as quote$1 } from "../solverRelayHttpClient/apis.cjs";
4
+
5
+ //#region src/solverRelay/errors/quote.d.ts
6
+ type QuoteErrorType = QuoteError & {
7
+ name: "QuoteError";
8
+ };
9
+ declare class QuoteError extends BaseError {
10
+ quote: FailedQuote | null;
11
+ quoteParams: Parameters<typeof quote$1>[0];
12
+ constructor({
13
+ quote,
14
+ quoteParams
15
+ }: {
16
+ quote: FailedQuote | null;
17
+ quoteParams: Parameters<typeof quote$1>[0];
18
+ });
19
+ }
20
+ //#endregion
21
+ export { QuoteError, QuoteErrorType };
@@ -0,0 +1,22 @@
1
+ import { BaseError } from "../../errors/base.js";
2
+ import { FailedQuote } from "../solverRelayHttpClient/types.js";
3
+ import { quote as quote$1 } from "../solverRelayHttpClient/apis.js";
4
+ import "../solverRelayHttpClient/index.js";
5
+
6
+ //#region src/solverRelay/errors/quote.d.ts
7
+ type QuoteErrorType = QuoteError & {
8
+ name: "QuoteError";
9
+ };
10
+ declare class QuoteError extends BaseError {
11
+ quote: FailedQuote | null;
12
+ quoteParams: Parameters<typeof quote$1>[0];
13
+ constructor({
14
+ quote,
15
+ quoteParams
16
+ }: {
17
+ quote: FailedQuote | null;
18
+ quoteParams: Parameters<typeof quote$1>[0];
19
+ });
20
+ }
21
+ //#endregion
22
+ export { QuoteError, QuoteErrorType };
@@ -0,0 +1,18 @@
1
+ import { serialize } from "../../utils/serialize.js";
2
+ import { BaseError } from "../../errors/base.js";
3
+
4
+ //#region src/solverRelay/errors/quote.ts
5
+ var QuoteError = class extends BaseError {
6
+ constructor({ quote, quoteParams }) {
7
+ super("Quote error.", {
8
+ details: quote == null ? "NO_QUOTE" : quote.type,
9
+ metaMessages: [`Quote: ${serialize(quote)}`, `Quote params: ${serialize(quoteParams)}`],
10
+ name: "QuoteError"
11
+ });
12
+ this.quote = quote;
13
+ this.quoteParams = quoteParams;
14
+ }
15
+ };
16
+
17
+ //#endregion
18
+ export { QuoteError };
@@ -0,0 +1,49 @@
1
+ const require_quote = require('./errors/quote.cjs');
2
+ const require_quoteWithLog = require('./utils/quoteWithLog.cjs');
3
+
4
+ //#region src/solverRelay/getQuote.ts
5
+ async function getQuote(params) {
6
+ return handleQuoteResult(await require_quoteWithLog.quoteWithLog(params.quoteParams, {
7
+ timeout: (params.quoteParams?.wait_ms ?? 0) + 1e4,
8
+ ...params.config
9
+ }), params.quoteParams);
10
+ }
11
+ function handleQuoteResult(result, quoteParams) {
12
+ if (result == null) throw new require_quote.QuoteError({
13
+ quote: null,
14
+ quoteParams
15
+ });
16
+ const failedQuotes = [];
17
+ const validQuotes = [];
18
+ for (const q of result) if (isValidQuote(q)) validQuotes.push(q);
19
+ else failedQuotes.push(q);
20
+ const bestQuote = sortQuotes(validQuotes, quoteParams.exact_amount_in !== null ? "exact_in" : "exact_out")[0];
21
+ if (bestQuote != null) return bestQuote;
22
+ const failedQuote = failedQuotes[0];
23
+ if (failedQuote != null) throw new require_quote.QuoteError({
24
+ quote: failedQuote,
25
+ quoteParams
26
+ });
27
+ throw new require_quote.QuoteError({
28
+ quote: null,
29
+ quoteParams
30
+ });
31
+ }
32
+ function sortQuotes(quotes, quoteKind) {
33
+ return quotes.slice().sort((a, b) => {
34
+ if (quoteKind === "exact_in") {
35
+ if (BigInt(a.amount_out) > BigInt(b.amount_out)) return -1;
36
+ if (BigInt(a.amount_out) < BigInt(b.amount_out)) return 1;
37
+ return 0;
38
+ }
39
+ if (BigInt(a.amount_in) < BigInt(b.amount_in)) return -1;
40
+ if (BigInt(a.amount_in) > BigInt(b.amount_in)) return 1;
41
+ return 0;
42
+ });
43
+ }
44
+ function isValidQuote(quote) {
45
+ return !("type" in quote);
46
+ }
47
+
48
+ //#endregion
49
+ exports.getQuote = getQuote;
@@ -0,0 +1,14 @@
1
+ import { JSONRPCErrorType, Quote } from "./solverRelayHttpClient/types.cjs";
2
+ import { QuoteError } from "./errors/quote.cjs";
3
+ import { quoteWithLog } from "./utils/quoteWithLog.cjs";
4
+
5
+ //#region src/solverRelay/getQuote.d.ts
6
+ type GetQuoteParams = {
7
+ quoteParams: Parameters<typeof quoteWithLog>[0];
8
+ config: Parameters<typeof quoteWithLog>[1];
9
+ };
10
+ type GetQuoteReturnType = Quote;
11
+ type GetQuoteErrorType = QuoteError | JSONRPCErrorType;
12
+ declare function getQuote(params: GetQuoteParams): Promise<GetQuoteReturnType>;
13
+ //#endregion
14
+ export { GetQuoteErrorType, GetQuoteParams, GetQuoteReturnType, getQuote };
@@ -0,0 +1,14 @@
1
+ import { JSONRPCErrorType, Quote } from "./solverRelayHttpClient/types.js";
2
+ import { QuoteError } from "./errors/quote.js";
3
+ import { quoteWithLog } from "./utils/quoteWithLog.js";
4
+
5
+ //#region src/solverRelay/getQuote.d.ts
6
+ type GetQuoteParams = {
7
+ quoteParams: Parameters<typeof quoteWithLog>[0];
8
+ config: Parameters<typeof quoteWithLog>[1];
9
+ };
10
+ type GetQuoteReturnType = Quote;
11
+ type GetQuoteErrorType = QuoteError | JSONRPCErrorType;
12
+ declare function getQuote(params: GetQuoteParams): Promise<GetQuoteReturnType>;
13
+ //#endregion
14
+ export { GetQuoteErrorType, GetQuoteParams, GetQuoteReturnType, getQuote };
@@ -0,0 +1,49 @@
1
+ import { QuoteError } from "./errors/quote.js";
2
+ import { quoteWithLog } from "./utils/quoteWithLog.js";
3
+
4
+ //#region src/solverRelay/getQuote.ts
5
+ async function getQuote(params) {
6
+ return handleQuoteResult(await quoteWithLog(params.quoteParams, {
7
+ timeout: (params.quoteParams?.wait_ms ?? 0) + 1e4,
8
+ ...params.config
9
+ }), params.quoteParams);
10
+ }
11
+ function handleQuoteResult(result, quoteParams) {
12
+ if (result == null) throw new QuoteError({
13
+ quote: null,
14
+ quoteParams
15
+ });
16
+ const failedQuotes = [];
17
+ const validQuotes = [];
18
+ for (const q of result) if (isValidQuote(q)) validQuotes.push(q);
19
+ else failedQuotes.push(q);
20
+ const bestQuote = sortQuotes(validQuotes, quoteParams.exact_amount_in !== null ? "exact_in" : "exact_out")[0];
21
+ if (bestQuote != null) return bestQuote;
22
+ const failedQuote = failedQuotes[0];
23
+ if (failedQuote != null) throw new QuoteError({
24
+ quote: failedQuote,
25
+ quoteParams
26
+ });
27
+ throw new QuoteError({
28
+ quote: null,
29
+ quoteParams
30
+ });
31
+ }
32
+ function sortQuotes(quotes, quoteKind) {
33
+ return quotes.slice().sort((a, b) => {
34
+ if (quoteKind === "exact_in") {
35
+ if (BigInt(a.amount_out) > BigInt(b.amount_out)) return -1;
36
+ if (BigInt(a.amount_out) < BigInt(b.amount_out)) return 1;
37
+ return 0;
38
+ }
39
+ if (BigInt(a.amount_in) < BigInt(b.amount_in)) return -1;
40
+ if (BigInt(a.amount_in) > BigInt(b.amount_in)) return 1;
41
+ return 0;
42
+ });
43
+ }
44
+ function isValidQuote(quote) {
45
+ return !("type" in quote);
46
+ }
47
+
48
+ //#endregion
49
+ export { getQuote };
@@ -0,0 +1,26 @@
1
+ const require_apis = require('./solverRelayHttpClient/apis.cjs');
2
+ const require_assert = require('../utils/assert.cjs');
3
+
4
+ //#region src/solverRelay/getStatus.ts
5
+ async function getStatus(...args) {
6
+ return require_apis.getStatus(...args).then((response) => {
7
+ const status = response.status;
8
+ switch (status) {
9
+ case "SETTLED":
10
+ case "TX_BROADCASTED": return {
11
+ status,
12
+ intentHash: response.intent_hash,
13
+ txHash: response.data.hash
14
+ };
15
+ case "PENDING":
16
+ case "NOT_FOUND_OR_NOT_VALID": return {
17
+ status,
18
+ intentHash: response.intent_hash
19
+ };
20
+ default: require_assert.assert(false, `Unexpected intent status = ${status}`);
21
+ }
22
+ });
23
+ }
24
+
25
+ //#endregion
26
+ exports.getStatus = getStatus;
@@ -0,0 +1,17 @@
1
+ import { JSONRPCErrorType } from "./solverRelayHttpClient/types.cjs";
2
+ import { getStatus as getStatus$1 } from "./solverRelayHttpClient/apis.cjs";
3
+ import { AssertionErrorType } from "../errors/assert.cjs";
4
+
5
+ //#region src/solverRelay/getStatus.d.ts
6
+ type GetStatusReturnType = {
7
+ status: "PENDING" | "NOT_FOUND_OR_NOT_VALID";
8
+ intentHash: string;
9
+ } | {
10
+ status: "TX_BROADCASTED" | "SETTLED";
11
+ intentHash: string;
12
+ txHash: string;
13
+ };
14
+ type GetStatusErrorType = JSONRPCErrorType | AssertionErrorType;
15
+ declare function getStatus(...args: Parameters<typeof getStatus$1>): Promise<GetStatusReturnType>;
16
+ //#endregion
17
+ export { GetStatusErrorType, GetStatusReturnType, getStatus };
@@ -0,0 +1,18 @@
1
+ import { JSONRPCErrorType } from "./solverRelayHttpClient/types.js";
2
+ import { getStatus as getStatus$1 } from "./solverRelayHttpClient/apis.js";
3
+ import "./solverRelayHttpClient/index.js";
4
+ import { AssertionErrorType } from "../errors/assert.js";
5
+
6
+ //#region src/solverRelay/getStatus.d.ts
7
+ type GetStatusReturnType = {
8
+ status: "PENDING" | "NOT_FOUND_OR_NOT_VALID";
9
+ intentHash: string;
10
+ } | {
11
+ status: "TX_BROADCASTED" | "SETTLED";
12
+ intentHash: string;
13
+ txHash: string;
14
+ };
15
+ type GetStatusErrorType = JSONRPCErrorType | AssertionErrorType;
16
+ declare function getStatus(...args: Parameters<typeof getStatus$1>): Promise<GetStatusReturnType>;
17
+ //#endregion
18
+ export { GetStatusErrorType, GetStatusReturnType, getStatus };
@@ -0,0 +1,26 @@
1
+ import { getStatus as getStatus$1 } from "./solverRelayHttpClient/apis.js";
2
+ import { assert } from "../utils/assert.js";
3
+
4
+ //#region src/solverRelay/getStatus.ts
5
+ async function getStatus(...args) {
6
+ return getStatus$1(...args).then((response) => {
7
+ const status = response.status;
8
+ switch (status) {
9
+ case "SETTLED":
10
+ case "TX_BROADCASTED": return {
11
+ status,
12
+ intentHash: response.intent_hash,
13
+ txHash: response.data.hash
14
+ };
15
+ case "PENDING":
16
+ case "NOT_FOUND_OR_NOT_VALID": return {
17
+ status,
18
+ intentHash: response.intent_hash
19
+ };
20
+ default: assert(false, `Unexpected intent status = ${status}`);
21
+ }
22
+ });
23
+ }
24
+
25
+ //#endregion
26
+ export { getStatus };
@@ -0,0 +1,27 @@
1
+ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
+ const require_apis = require('./solverRelayHttpClient/apis.cjs');
3
+ const require_index = require('./solverRelayHttpClient/index.cjs');
4
+ const require_getQuote = require('./getQuote.cjs');
5
+ const require_getStatus = require('./getStatus.cjs');
6
+ const require_publishIntents = require('./publishIntents.cjs');
7
+ const require_waitForIntentSettlement = require('./waitForIntentSettlement.cjs');
8
+ const require_publishIntent = require('./publishIntent.cjs');
9
+
10
+ //#region src/solverRelay/index.ts
11
+ var solverRelay_exports = /* @__PURE__ */ require_rolldown_runtime.__exportAll({
12
+ getQuote: () => require_getQuote.getQuote,
13
+ getStatus: () => require_getStatus.getStatus,
14
+ httpClient: () => require_index.solverRelayHttpClient_exports,
15
+ publishIntent: () => require_publishIntent.publishIntent,
16
+ publishIntents: () => require_publishIntents.publishIntents,
17
+ quote: () => require_apis.quote,
18
+ waitForIntentSettlement: () => require_waitForIntentSettlement.waitForIntentSettlement
19
+ });
20
+
21
+ //#endregion
22
+ Object.defineProperty(exports, 'solverRelay_exports', {
23
+ enumerable: true,
24
+ get: function () {
25
+ return solverRelay_exports;
26
+ }
27
+ });
@@ -0,0 +1,16 @@
1
+ import { FailedQuote, Params, PublishIntentRequest, Quote } from "./solverRelayHttpClient/types.cjs";
2
+ import { quote } from "./solverRelayHttpClient/apis.cjs";
3
+ import { index_d_exports as index_d_exports$1 } from "./solverRelayHttpClient/index.cjs";
4
+ import { GetQuoteErrorType, GetQuoteParams, GetQuoteReturnType, getQuote } from "./getQuote.cjs";
5
+ import { GetStatusErrorType, GetStatusReturnType, getStatus } from "./getStatus.cjs";
6
+ import { PublishIntentsErrorType, PublishIntentsReturnType, publishIntents } from "./publishIntents.cjs";
7
+ import { IntentSettlementError } from "./errors/intentSettlement.cjs";
8
+ import { IntentSettlementCallbacks, WaitForIntentSettlementErrorType, WaitForIntentSettlementReturnType, waitForIntentSettlement } from "./waitForIntentSettlement.cjs";
9
+ import { PublishIntentErrorType, PublishIntentReturnType, publishIntent } from "./publishIntent.cjs";
10
+
11
+ //#region src/solverRelay/index.d.ts
12
+ declare namespace index_d_exports {
13
+ export { FailedQuote, GetQuoteErrorType, GetQuoteParams, GetQuoteReturnType, GetStatusErrorType, GetStatusReturnType, IntentSettlementCallbacks, IntentSettlementError, Params, PublishIntentErrorType, PublishIntentRequest, PublishIntentReturnType, PublishIntentsErrorType, PublishIntentsReturnType, Quote, WaitForIntentSettlementErrorType, WaitForIntentSettlementReturnType, getQuote, getStatus, index_d_exports$1 as httpClient, publishIntent, publishIntents, quote, waitForIntentSettlement };
14
+ }
15
+ //#endregion
16
+ export { index_d_exports };
@@ -0,0 +1,16 @@
1
+ import { FailedQuote, Params, PublishIntentRequest, Quote } from "./solverRelayHttpClient/types.js";
2
+ import { quote } from "./solverRelayHttpClient/apis.js";
3
+ import { index_d_exports as index_d_exports$1 } from "./solverRelayHttpClient/index.js";
4
+ import { GetQuoteErrorType, GetQuoteParams, GetQuoteReturnType, getQuote } from "./getQuote.js";
5
+ import { GetStatusErrorType, GetStatusReturnType, getStatus } from "./getStatus.js";
6
+ import { PublishIntentsErrorType, PublishIntentsReturnType, publishIntents } from "./publishIntents.js";
7
+ import { IntentSettlementError } from "./errors/intentSettlement.js";
8
+ import { IntentSettlementCallbacks, WaitForIntentSettlementErrorType, WaitForIntentSettlementReturnType, waitForIntentSettlement } from "./waitForIntentSettlement.js";
9
+ import { PublishIntentErrorType, PublishIntentReturnType, publishIntent } from "./publishIntent.js";
10
+
11
+ //#region src/solverRelay/index.d.ts
12
+ declare namespace index_d_exports {
13
+ export { FailedQuote, GetQuoteErrorType, GetQuoteParams, GetQuoteReturnType, GetStatusErrorType, GetStatusReturnType, IntentSettlementCallbacks, IntentSettlementError, Params, PublishIntentErrorType, PublishIntentRequest, PublishIntentReturnType, PublishIntentsErrorType, PublishIntentsReturnType, Quote, WaitForIntentSettlementErrorType, WaitForIntentSettlementReturnType, getQuote, getStatus, index_d_exports$1 as httpClient, publishIntent, publishIntents, quote, waitForIntentSettlement };
14
+ }
15
+ //#endregion
16
+ export { index_d_exports };
@@ -0,0 +1,22 @@
1
+ import { __exportAll } from "../_virtual/rolldown_runtime.js";
2
+ import { quote } from "./solverRelayHttpClient/apis.js";
3
+ import { solverRelayHttpClient_exports } from "./solverRelayHttpClient/index.js";
4
+ import { getQuote } from "./getQuote.js";
5
+ import { getStatus } from "./getStatus.js";
6
+ import { publishIntents } from "./publishIntents.js";
7
+ import { waitForIntentSettlement } from "./waitForIntentSettlement.js";
8
+ import { publishIntent } from "./publishIntent.js";
9
+
10
+ //#region src/solverRelay/index.ts
11
+ var solverRelay_exports = /* @__PURE__ */ __exportAll({
12
+ getQuote: () => getQuote,
13
+ getStatus: () => getStatus,
14
+ httpClient: () => solverRelayHttpClient_exports,
15
+ publishIntent: () => publishIntent,
16
+ publishIntents: () => publishIntents,
17
+ quote: () => quote,
18
+ waitForIntentSettlement: () => waitForIntentSettlement
19
+ });
20
+
21
+ //#endregion
22
+ export { solverRelay_exports };
@@ -0,0 +1,20 @@
1
+ const require_assert = require('../utils/assert.cjs');
2
+ const require_prepareBroadcastRequest = require('../utils/prepareBroadcastRequest.cjs');
3
+ const require_publishIntents = require('./publishIntents.cjs');
4
+
5
+ //#region src/solverRelay/publishIntent.ts
6
+ function publishIntent(signatureData, userInfo, quoteHashes, config = {}) {
7
+ return require_publishIntents.publishIntents({
8
+ signed_datas: [require_prepareBroadcastRequest.prepareSwapSignedData(signatureData, userInfo)],
9
+ quote_hashes: quoteHashes
10
+ }, config).then((result) => {
11
+ return result.map((intentHashes) => {
12
+ const intentHash = intentHashes[0];
13
+ require_assert.assert(intentHash != null, "Should include at least one intent hash");
14
+ return intentHash;
15
+ });
16
+ });
17
+ }
18
+
19
+ //#endregion
20
+ exports.publishIntent = publishIntent;
@@ -0,0 +1,15 @@
1
+ import { RequestConfig } from "./solverRelayHttpClient/types.cjs";
2
+ import { PublishIntentsErrorType, PublishIntentsReturnType } from "./publishIntents.cjs";
3
+ import { AuthMethod } from "../types/authHandle.cjs";
4
+ import { WalletSignatureResult } from "../types/walletMessage.cjs";
5
+ import { Result } from "@thames/monads";
6
+
7
+ //#region src/solverRelay/publishIntent.d.ts
8
+ type PublishIntentReturnType = PublishIntentsReturnType[number];
9
+ type PublishIntentErrorType = PublishIntentsErrorType;
10
+ declare function publishIntent(signatureData: WalletSignatureResult, userInfo: {
11
+ userAddress: string;
12
+ userChainType: AuthMethod;
13
+ }, quoteHashes: string[], config?: RequestConfig): Promise<Result<PublishIntentReturnType, PublishIntentErrorType>>;
14
+ //#endregion
15
+ export { PublishIntentErrorType, PublishIntentReturnType, publishIntent };
@@ -0,0 +1,16 @@
1
+ import { RequestConfig } from "./solverRelayHttpClient/types.js";
2
+ import { PublishIntentsErrorType, PublishIntentsReturnType } from "./publishIntents.js";
3
+ import { AuthMethod } from "../types/authHandle.js";
4
+ import { WalletSignatureResult } from "../types/walletMessage.js";
5
+ import "../index.js";
6
+ import { Result } from "@thames/monads";
7
+
8
+ //#region src/solverRelay/publishIntent.d.ts
9
+ type PublishIntentReturnType = PublishIntentsReturnType[number];
10
+ type PublishIntentErrorType = PublishIntentsErrorType;
11
+ declare function publishIntent(signatureData: WalletSignatureResult, userInfo: {
12
+ userAddress: string;
13
+ userChainType: AuthMethod;
14
+ }, quoteHashes: string[], config?: RequestConfig): Promise<Result<PublishIntentReturnType, PublishIntentErrorType>>;
15
+ //#endregion
16
+ export { PublishIntentErrorType, PublishIntentReturnType, publishIntent };
@@ -0,0 +1,20 @@
1
+ import { assert } from "../utils/assert.js";
2
+ import { prepareSwapSignedData } from "../utils/prepareBroadcastRequest.js";
3
+ import { publishIntents } from "./publishIntents.js";
4
+
5
+ //#region src/solverRelay/publishIntent.ts
6
+ function publishIntent(signatureData, userInfo, quoteHashes, config = {}) {
7
+ return publishIntents({
8
+ signed_datas: [prepareSwapSignedData(signatureData, userInfo)],
9
+ quote_hashes: quoteHashes
10
+ }, config).then((result) => {
11
+ return result.map((intentHashes) => {
12
+ const intentHash = intentHashes[0];
13
+ assert(intentHash != null, "Should include at least one intent hash");
14
+ return intentHash;
15
+ });
16
+ });
17
+ }
18
+
19
+ //#endregion
20
+ export { publishIntent };
@@ -0,0 +1,43 @@
1
+ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
+ const require_apis = require('./solverRelayHttpClient/apis.cjs');
3
+ const require_parseFailedPublishError = require('./utils/parseFailedPublishError.cjs');
4
+ let _thames_monads = require("@thames/monads");
5
+
6
+ //#region src/solverRelay/publishIntents.ts
7
+ async function publishIntents(...args) {
8
+ const [params, requestConfig] = args;
9
+ return require_apis.publishIntents(params, {
10
+ timeout: 3e4,
11
+ ...requestConfig,
12
+ retryOptions: {
13
+ delay: 1e3,
14
+ factor: 1.5,
15
+ maxAttempts: 7,
16
+ jitter: true,
17
+ minDelay: 1e3
18
+ }
19
+ }).then((response) => {
20
+ return parsePublishIntentsResponse(params, response);
21
+ }, (err) => {
22
+ return (0, _thames_monads.Err)(new require_parseFailedPublishError.RelayPublishError({
23
+ reason: "Error occurred during sending a request",
24
+ code: "NETWORK_ERROR",
25
+ publishParams: params,
26
+ cause: err
27
+ }));
28
+ }).then((result) => {
29
+ if (result.isErr()) {
30
+ const err = result.unwrapErr();
31
+ args[1]?.logger?.error(err);
32
+ }
33
+ return result;
34
+ });
35
+ }
36
+ function parsePublishIntentsResponse(publishParams, response) {
37
+ if (response.status === "OK") return (0, _thames_monads.Ok)(response.intent_hashes);
38
+ if (response.reason === "already processed") return (0, _thames_monads.Ok)(response.intent_hashes);
39
+ return (0, _thames_monads.Err)(require_parseFailedPublishError.toRelayPublishError(publishParams, response));
40
+ }
41
+
42
+ //#endregion
43
+ exports.publishIntents = publishIntents;
@@ -0,0 +1,10 @@
1
+ import { publishIntents as publishIntents$1 } from "./solverRelayHttpClient/apis.cjs";
2
+ import { RelayPublishErrorType } from "./utils/parseFailedPublishError.cjs";
3
+ import { Result } from "@thames/monads";
4
+
5
+ //#region src/solverRelay/publishIntents.d.ts
6
+ declare function publishIntents(...args: Parameters<typeof publishIntents$1>): Promise<Result<PublishIntentsReturnType, PublishIntentsErrorType>>;
7
+ type PublishIntentsReturnType = string[];
8
+ type PublishIntentsErrorType = RelayPublishErrorType;
9
+ //#endregion
10
+ export { PublishIntentsErrorType, PublishIntentsReturnType, publishIntents };
@@ -0,0 +1,11 @@
1
+ import { publishIntents as publishIntents$1 } from "./solverRelayHttpClient/apis.js";
2
+ import "./solverRelayHttpClient/index.js";
3
+ import { RelayPublishErrorType } from "./utils/parseFailedPublishError.js";
4
+ import { Result } from "@thames/monads";
5
+
6
+ //#region src/solverRelay/publishIntents.d.ts
7
+ declare function publishIntents(...args: Parameters<typeof publishIntents$1>): Promise<Result<PublishIntentsReturnType, PublishIntentsErrorType>>;
8
+ type PublishIntentsReturnType = string[];
9
+ type PublishIntentsErrorType = RelayPublishErrorType;
10
+ //#endregion
11
+ export { PublishIntentsErrorType, PublishIntentsReturnType, publishIntents };
@@ -0,0 +1,42 @@
1
+ import { publishIntents as publishIntents$1 } from "./solverRelayHttpClient/apis.js";
2
+ import { RelayPublishError, toRelayPublishError } from "./utils/parseFailedPublishError.js";
3
+ import { Err, Ok } from "@thames/monads";
4
+
5
+ //#region src/solverRelay/publishIntents.ts
6
+ async function publishIntents(...args) {
7
+ const [params, requestConfig] = args;
8
+ return publishIntents$1(params, {
9
+ timeout: 3e4,
10
+ ...requestConfig,
11
+ retryOptions: {
12
+ delay: 1e3,
13
+ factor: 1.5,
14
+ maxAttempts: 7,
15
+ jitter: true,
16
+ minDelay: 1e3
17
+ }
18
+ }).then((response) => {
19
+ return parsePublishIntentsResponse(params, response);
20
+ }, (err) => {
21
+ return Err(new RelayPublishError({
22
+ reason: "Error occurred during sending a request",
23
+ code: "NETWORK_ERROR",
24
+ publishParams: params,
25
+ cause: err
26
+ }));
27
+ }).then((result) => {
28
+ if (result.isErr()) {
29
+ const err = result.unwrapErr();
30
+ args[1]?.logger?.error(err);
31
+ }
32
+ return result;
33
+ });
34
+ }
35
+ function parsePublishIntentsResponse(publishParams, response) {
36
+ if (response.status === "OK") return Ok(response.intent_hashes);
37
+ if (response.reason === "already processed") return Ok(response.intent_hashes);
38
+ return Err(toRelayPublishError(publishParams, response));
39
+ }
40
+
41
+ //#endregion
42
+ export { publishIntents };