@sodax/sdk 0.0.1-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +224 -0
  3. package/dist/abis/asset-manager.abi.d.ts +418 -0
  4. package/dist/abis/asset-manager.abi.d.ts.map +1 -0
  5. package/dist/abis/asset-manager.abi.js +542 -0
  6. package/dist/abis/asset-manager.abi.js.map +1 -0
  7. package/dist/abis/connection.abi.d.ts +72 -0
  8. package/dist/abis/connection.abi.d.ts.map +1 -0
  9. package/dist/abis/connection.abi.js +92 -0
  10. package/dist/abis/connection.abi.js.map +1 -0
  11. package/dist/abis/erc20.abi.d.ts +236 -0
  12. package/dist/abis/erc20.abi.d.ts.map +1 -0
  13. package/dist/abis/erc20.abi.js +311 -0
  14. package/dist/abis/erc20.abi.js.map +1 -0
  15. package/dist/abis/index.d.ts +10 -0
  16. package/dist/abis/index.d.ts.map +1 -0
  17. package/dist/abis/index.js +10 -0
  18. package/dist/abis/index.js.map +1 -0
  19. package/dist/abis/intents.abi.d.ts +901 -0
  20. package/dist/abis/intents.abi.d.ts.map +1 -0
  21. package/dist/abis/intents.abi.js +1158 -0
  22. package/dist/abis/intents.abi.js.map +1 -0
  23. package/dist/abis/pool.abi.d.ts +626 -0
  24. package/dist/abis/pool.abi.d.ts.map +1 -0
  25. package/dist/abis/pool.abi.js +812 -0
  26. package/dist/abis/pool.abi.js.map +1 -0
  27. package/dist/abis/spokeAssetManager.abi.d.ts +169 -0
  28. package/dist/abis/spokeAssetManager.abi.d.ts.map +1 -0
  29. package/dist/abis/spokeAssetManager.abi.js +217 -0
  30. package/dist/abis/spokeAssetManager.abi.js.map +1 -0
  31. package/dist/abis/uiPoolData.abi.d.ts +369 -0
  32. package/dist/abis/uiPoolData.abi.d.ts.map +1 -0
  33. package/dist/abis/uiPoolData.abi.js +476 -0
  34. package/dist/abis/uiPoolData.abi.js.map +1 -0
  35. package/dist/abis/vaultToken.abi.d.ts +816 -0
  36. package/dist/abis/vaultToken.abi.d.ts.map +1 -0
  37. package/dist/abis/vaultToken.abi.js +1062 -0
  38. package/dist/abis/vaultToken.abi.js.map +1 -0
  39. package/dist/abis/walletFactory.abi.d.ts +20 -0
  40. package/dist/abis/walletFactory.abi.d.ts.map +1 -0
  41. package/dist/abis/walletFactory.abi.js +27 -0
  42. package/dist/abis/walletFactory.abi.js.map +1 -0
  43. package/dist/constants.d.ts +565 -0
  44. package/dist/constants.d.ts.map +1 -0
  45. package/dist/constants.js +1196 -0
  46. package/dist/constants.js.map +1 -0
  47. package/dist/constants.test.d.ts +2 -0
  48. package/dist/constants.test.d.ts.map +1 -0
  49. package/dist/constants.test.js +128 -0
  50. package/dist/constants.test.js.map +1 -0
  51. package/dist/entities/Providers.d.ts +61 -0
  52. package/dist/entities/Providers.d.ts.map +1 -0
  53. package/dist/entities/Providers.js +51 -0
  54. package/dist/entities/Providers.js.map +1 -0
  55. package/dist/entities/Sodax.d.ts +23 -0
  56. package/dist/entities/Sodax.d.ts.map +1 -0
  57. package/dist/entities/Sodax.js +29 -0
  58. package/dist/entities/Sodax.js.map +1 -0
  59. package/dist/entities/Sodax.test.d.ts +2 -0
  60. package/dist/entities/Sodax.test.d.ts.map +1 -0
  61. package/dist/entities/Sodax.test.js +376 -0
  62. package/dist/entities/Sodax.test.js.map +1 -0
  63. package/dist/entities/cosmos/CW20Token.d.ts +39 -0
  64. package/dist/entities/cosmos/CW20Token.d.ts.map +1 -0
  65. package/dist/entities/cosmos/CW20Token.js +65 -0
  66. package/dist/entities/cosmos/CW20Token.js.map +1 -0
  67. package/dist/entities/cosmos/CWSpokeProvider.d.ts +91 -0
  68. package/dist/entities/cosmos/CWSpokeProvider.d.ts.map +1 -0
  69. package/dist/entities/cosmos/CWSpokeProvider.js +143 -0
  70. package/dist/entities/cosmos/CWSpokeProvider.js.map +1 -0
  71. package/dist/entities/cosmos/CosmosWalletProvider.d.ts +28 -0
  72. package/dist/entities/cosmos/CosmosWalletProvider.d.ts.map +1 -0
  73. package/dist/entities/cosmos/CosmosWalletProvider.js +102 -0
  74. package/dist/entities/cosmos/CosmosWalletProvider.js.map +1 -0
  75. package/dist/entities/cosmos/InjectiveWalletProvider.d.ts +25 -0
  76. package/dist/entities/cosmos/InjectiveWalletProvider.d.ts.map +1 -0
  77. package/dist/entities/cosmos/InjectiveWalletProvider.js +76 -0
  78. package/dist/entities/cosmos/InjectiveWalletProvider.js.map +1 -0
  79. package/dist/entities/icon/HanaWalletConnector.d.ts +36 -0
  80. package/dist/entities/icon/HanaWalletConnector.d.ts.map +1 -0
  81. package/dist/entities/icon/HanaWalletConnector.js +92 -0
  82. package/dist/entities/icon/HanaWalletConnector.js.map +1 -0
  83. package/dist/entities/icon/IconSpokeProvider.d.ts +8 -0
  84. package/dist/entities/icon/IconSpokeProvider.d.ts.map +1 -0
  85. package/dist/entities/icon/IconSpokeProvider.js +9 -0
  86. package/dist/entities/icon/IconSpokeProvider.js.map +1 -0
  87. package/dist/entities/icon/IconWalletProvider.d.ts +12 -0
  88. package/dist/entities/icon/IconWalletProvider.d.ts.map +1 -0
  89. package/dist/entities/icon/IconWalletProvider.js +34 -0
  90. package/dist/entities/icon/IconWalletProvider.js.map +1 -0
  91. package/dist/entities/icon/index.d.ts +5 -0
  92. package/dist/entities/icon/index.d.ts.map +1 -0
  93. package/dist/entities/icon/index.js +5 -0
  94. package/dist/entities/icon/index.js.map +1 -0
  95. package/dist/entities/icon/utils.d.ts +3 -0
  96. package/dist/entities/icon/utils.d.ts.map +1 -0
  97. package/dist/entities/icon/utils.js +4 -0
  98. package/dist/entities/icon/utils.js.map +1 -0
  99. package/dist/entities/index.d.ts +8 -0
  100. package/dist/entities/index.d.ts.map +1 -0
  101. package/dist/entities/index.js +8 -0
  102. package/dist/entities/index.js.map +1 -0
  103. package/dist/entities/solana/Configs.d.ts +10 -0
  104. package/dist/entities/solana/Configs.d.ts.map +1 -0
  105. package/dist/entities/solana/Configs.js +50 -0
  106. package/dist/entities/solana/Configs.js.map +1 -0
  107. package/dist/entities/solana/SolanaSpokeProvider.d.ts +9 -0
  108. package/dist/entities/solana/SolanaSpokeProvider.d.ts.map +1 -0
  109. package/dist/entities/solana/SolanaSpokeProvider.js +9 -0
  110. package/dist/entities/solana/SolanaSpokeProvider.js.map +1 -0
  111. package/dist/entities/solana/SolanaWalletProvider.d.ts +20 -0
  112. package/dist/entities/solana/SolanaWalletProvider.d.ts.map +1 -0
  113. package/dist/entities/solana/SolanaWalletProvider.js +53 -0
  114. package/dist/entities/solana/SolanaWalletProvider.js.map +1 -0
  115. package/dist/entities/solana/index.d.ts +4 -0
  116. package/dist/entities/solana/index.d.ts.map +1 -0
  117. package/dist/entities/solana/index.js +4 -0
  118. package/dist/entities/solana/index.js.map +1 -0
  119. package/dist/entities/solana/pda/pda.d.ts +45 -0
  120. package/dist/entities/solana/pda/pda.d.ts.map +1 -0
  121. package/dist/entities/solana/pda/pda.js +44 -0
  122. package/dist/entities/solana/pda/pda.js.map +1 -0
  123. package/dist/entities/solana/types/asset_manager.d.ts +919 -0
  124. package/dist/entities/solana/types/asset_manager.d.ts.map +1 -0
  125. package/dist/entities/solana/types/asset_manager.js +2 -0
  126. package/dist/entities/solana/types/asset_manager.js.map +1 -0
  127. package/dist/entities/solana/types/connection.d.ts +446 -0
  128. package/dist/entities/solana/types/connection.d.ts.map +1 -0
  129. package/dist/entities/solana/types/connection.js +2 -0
  130. package/dist/entities/solana/types/connection.js.map +1 -0
  131. package/dist/entities/solana/types/rate_limit_contract.d.ts +348 -0
  132. package/dist/entities/solana/types/rate_limit_contract.d.ts.map +1 -0
  133. package/dist/entities/solana/types/rate_limit_contract.js +2 -0
  134. package/dist/entities/solana/types/rate_limit_contract.js.map +1 -0
  135. package/dist/entities/solana/utils/utils.d.ts +6 -0
  136. package/dist/entities/solana/utils/utils.d.ts.map +1 -0
  137. package/dist/entities/solana/utils/utils.js +17 -0
  138. package/dist/entities/solana/utils/utils.js.map +1 -0
  139. package/dist/entities/stellar/StellarSpokeProvider.d.ts +24 -0
  140. package/dist/entities/stellar/StellarSpokeProvider.d.ts.map +1 -0
  141. package/dist/entities/stellar/StellarSpokeProvider.js +129 -0
  142. package/dist/entities/stellar/StellarSpokeProvider.js.map +1 -0
  143. package/dist/entities/sui/SuiSpokeProvider.d.ts +34 -0
  144. package/dist/entities/sui/SuiSpokeProvider.d.ts.map +1 -0
  145. package/dist/entities/sui/SuiSpokeProvider.js +143 -0
  146. package/dist/entities/sui/SuiSpokeProvider.js.map +1 -0
  147. package/dist/entities/sui/SuiWalletProvider.d.ts +15 -0
  148. package/dist/entities/sui/SuiWalletProvider.d.ts.map +1 -0
  149. package/dist/entities/sui/SuiWalletProvider.js +43 -0
  150. package/dist/entities/sui/SuiWalletProvider.js.map +1 -0
  151. package/dist/errors.d.ts +2 -0
  152. package/dist/errors.d.ts.map +1 -0
  153. package/dist/errors.js +2 -0
  154. package/dist/errors.js.map +1 -0
  155. package/dist/guards.d.ts +25 -0
  156. package/dist/guards.d.ts.map +1 -0
  157. package/dist/guards.js +110 -0
  158. package/dist/guards.js.map +1 -0
  159. package/dist/index.d.ts +10 -0
  160. package/dist/index.d.ts.map +1 -0
  161. package/dist/index.js +10 -0
  162. package/dist/index.js.map +1 -0
  163. package/dist/interfaces.d.ts +8 -0
  164. package/dist/interfaces.d.ts.map +1 -0
  165. package/dist/interfaces.js +2 -0
  166. package/dist/interfaces.js.map +1 -0
  167. package/dist/services/hub/EvmAssetManagerService.d.ts +60 -0
  168. package/dist/services/hub/EvmAssetManagerService.d.ts.map +1 -0
  169. package/dist/services/hub/EvmAssetManagerService.js +103 -0
  170. package/dist/services/hub/EvmAssetManagerService.js.map +1 -0
  171. package/dist/services/hub/EvmVaultTokenService.d.ts +81 -0
  172. package/dist/services/hub/EvmVaultTokenService.d.ts.map +1 -0
  173. package/dist/services/hub/EvmVaultTokenService.js +159 -0
  174. package/dist/services/hub/EvmVaultTokenService.js.map +1 -0
  175. package/dist/services/hub/EvmWalletAbstraction.d.ts +8 -0
  176. package/dist/services/hub/EvmWalletAbstraction.d.ts.map +1 -0
  177. package/dist/services/hub/EvmWalletAbstraction.js +14 -0
  178. package/dist/services/hub/EvmWalletAbstraction.js.map +1 -0
  179. package/dist/services/hub/index.d.ts +4 -0
  180. package/dist/services/hub/index.d.ts.map +1 -0
  181. package/dist/services/hub/index.js +4 -0
  182. package/dist/services/hub/index.js.map +1 -0
  183. package/dist/services/index.d.ts +7 -0
  184. package/dist/services/index.d.ts.map +1 -0
  185. package/dist/services/index.js +7 -0
  186. package/dist/services/index.js.map +1 -0
  187. package/dist/services/intentRelay/IntentRelayApiService.d.ts +111 -0
  188. package/dist/services/intentRelay/IntentRelayApiService.d.ts.map +1 -0
  189. package/dist/services/intentRelay/IntentRelayApiService.js +160 -0
  190. package/dist/services/intentRelay/IntentRelayApiService.js.map +1 -0
  191. package/dist/services/intentRelay/IntentRelayApiService.test.d.ts +2 -0
  192. package/dist/services/intentRelay/IntentRelayApiService.test.d.ts.map +1 -0
  193. package/dist/services/intentRelay/IntentRelayApiService.test.js +134 -0
  194. package/dist/services/intentRelay/IntentRelayApiService.test.js.map +1 -0
  195. package/dist/services/intentRelay/index.d.ts +2 -0
  196. package/dist/services/intentRelay/index.d.ts.map +1 -0
  197. package/dist/services/intentRelay/index.js +2 -0
  198. package/dist/services/intentRelay/index.js.map +1 -0
  199. package/dist/services/moneyMarket/MoneyMarketService.d.ts +321 -0
  200. package/dist/services/moneyMarket/MoneyMarketService.d.ts.map +1 -0
  201. package/dist/services/moneyMarket/MoneyMarketService.js +604 -0
  202. package/dist/services/moneyMarket/MoneyMarketService.js.map +1 -0
  203. package/dist/services/moneyMarket/MoneyMarketService.test.d.ts +2 -0
  204. package/dist/services/moneyMarket/MoneyMarketService.test.d.ts.map +1 -0
  205. package/dist/services/moneyMarket/MoneyMarketService.test.js +245 -0
  206. package/dist/services/moneyMarket/MoneyMarketService.test.js.map +1 -0
  207. package/dist/services/moneyMarket/index.d.ts +2 -0
  208. package/dist/services/moneyMarket/index.d.ts.map +1 -0
  209. package/dist/services/moneyMarket/index.js +2 -0
  210. package/dist/services/moneyMarket/index.js.map +1 -0
  211. package/dist/services/shared/Erc20Service.d.ts +41 -0
  212. package/dist/services/shared/Erc20Service.d.ts.map +1 -0
  213. package/dist/services/shared/Erc20Service.js +107 -0
  214. package/dist/services/shared/Erc20Service.js.map +1 -0
  215. package/dist/services/shared/index.d.ts +2 -0
  216. package/dist/services/shared/index.d.ts.map +1 -0
  217. package/dist/services/shared/index.js +2 -0
  218. package/dist/services/shared/index.js.map +1 -0
  219. package/dist/services/solver/EvmSolverService.d.ts +125 -0
  220. package/dist/services/solver/EvmSolverService.d.ts.map +1 -0
  221. package/dist/services/solver/EvmSolverService.js +166 -0
  222. package/dist/services/solver/EvmSolverService.js.map +1 -0
  223. package/dist/services/solver/SolverApiService.d.ts +40 -0
  224. package/dist/services/solver/SolverApiService.d.ts.map +1 -0
  225. package/dist/services/solver/SolverApiService.js +157 -0
  226. package/dist/services/solver/SolverApiService.js.map +1 -0
  227. package/dist/services/solver/SolverApiService.test.d.ts +2 -0
  228. package/dist/services/solver/SolverApiService.test.d.ts.map +1 -0
  229. package/dist/services/solver/SolverApiService.test.js +180 -0
  230. package/dist/services/solver/SolverApiService.test.js.map +1 -0
  231. package/dist/services/solver/SolverService.d.ts +194 -0
  232. package/dist/services/solver/SolverService.d.ts.map +1 -0
  233. package/dist/services/solver/SolverService.js +324 -0
  234. package/dist/services/solver/SolverService.js.map +1 -0
  235. package/dist/services/solver/SolverService.test.d.ts +2 -0
  236. package/dist/services/solver/SolverService.test.d.ts.map +1 -0
  237. package/dist/services/solver/SolverService.test.js +493 -0
  238. package/dist/services/solver/SolverService.test.js.map +1 -0
  239. package/dist/services/solver/index.d.ts +3 -0
  240. package/dist/services/solver/index.d.ts.map +1 -0
  241. package/dist/services/solver/index.js +3 -0
  242. package/dist/services/solver/index.js.map +1 -0
  243. package/dist/services/spoke/CWSpokeService.d.ts +67 -0
  244. package/dist/services/spoke/CWSpokeService.d.ts.map +1 -0
  245. package/dist/services/spoke/CWSpokeService.js +75 -0
  246. package/dist/services/spoke/CWSpokeService.js.map +1 -0
  247. package/dist/services/spoke/EvmSpokeService.d.ts +61 -0
  248. package/dist/services/spoke/EvmSpokeService.d.ts.map +1 -0
  249. package/dist/services/spoke/EvmSpokeService.js +118 -0
  250. package/dist/services/spoke/EvmSpokeService.js.map +1 -0
  251. package/dist/services/spoke/IconSpokeService.d.ts +55 -0
  252. package/dist/services/spoke/IconSpokeService.d.ts.map +1 -0
  253. package/dist/services/spoke/IconSpokeService.js +111 -0
  254. package/dist/services/spoke/IconSpokeService.js.map +1 -0
  255. package/dist/services/spoke/SolanaSpokeService.d.ts +45 -0
  256. package/dist/services/spoke/SolanaSpokeService.d.ts.map +1 -0
  257. package/dist/services/spoke/SolanaSpokeService.js +170 -0
  258. package/dist/services/spoke/SolanaSpokeService.js.map +1 -0
  259. package/dist/services/spoke/SpokeService.d.ts +33 -0
  260. package/dist/services/spoke/SpokeService.d.ts.map +1 -0
  261. package/dist/services/spoke/SpokeService.js +102 -0
  262. package/dist/services/spoke/SpokeService.js.map +1 -0
  263. package/dist/services/spoke/StellarSpokeService.d.ts +35 -0
  264. package/dist/services/spoke/StellarSpokeService.d.ts.map +1 -0
  265. package/dist/services/spoke/StellarSpokeService.js +39 -0
  266. package/dist/services/spoke/StellarSpokeService.js.map +1 -0
  267. package/dist/services/spoke/SuiSpokeService.d.ts +69 -0
  268. package/dist/services/spoke/SuiSpokeService.d.ts.map +1 -0
  269. package/dist/services/spoke/SuiSpokeService.js +74 -0
  270. package/dist/services/spoke/SuiSpokeService.js.map +1 -0
  271. package/dist/services/spoke/index.d.ts +3 -0
  272. package/dist/services/spoke/index.d.ts.map +1 -0
  273. package/dist/services/spoke/index.js +3 -0
  274. package/dist/services/spoke/index.js.map +1 -0
  275. package/dist/tests/services/hub/EvmAssetManagerService.test.d.ts +2 -0
  276. package/dist/tests/services/hub/EvmAssetManagerService.test.d.ts.map +1 -0
  277. package/dist/tests/services/hub/EvmAssetManagerService.test.js +123 -0
  278. package/dist/tests/services/hub/EvmAssetManagerService.test.js.map +1 -0
  279. package/dist/tests/services/hub/EvmMoneyMarketService.test.d.ts +2 -0
  280. package/dist/tests/services/hub/EvmMoneyMarketService.test.d.ts.map +1 -0
  281. package/dist/tests/services/hub/EvmMoneyMarketService.test.js +121 -0
  282. package/dist/tests/services/hub/EvmMoneyMarketService.test.js.map +1 -0
  283. package/dist/tests/services/hub/EvmVaultTokenService.test.d.ts +2 -0
  284. package/dist/tests/services/hub/EvmVaultTokenService.test.d.ts.map +1 -0
  285. package/dist/tests/services/hub/EvmVaultTokenService.test.js +98 -0
  286. package/dist/tests/services/hub/EvmVaultTokenService.test.js.map +1 -0
  287. package/dist/tests/services/spoke/EvmSpokeService.test.d.ts +2 -0
  288. package/dist/tests/services/spoke/EvmSpokeService.test.d.ts.map +1 -0
  289. package/dist/tests/services/spoke/EvmSpokeService.test.js +197 -0
  290. package/dist/tests/services/spoke/EvmSpokeService.test.js.map +1 -0
  291. package/dist/types.d.ts +395 -0
  292. package/dist/types.d.ts.map +1 -0
  293. package/dist/types.js +30 -0
  294. package/dist/types.js.map +1 -0
  295. package/dist/utils/evm-utils.d.ts +10 -0
  296. package/dist/utils/evm-utils.d.ts.map +1 -0
  297. package/dist/utils/evm-utils.js +15 -0
  298. package/dist/utils/evm-utils.js.map +1 -0
  299. package/dist/utils/index.d.ts +3 -0
  300. package/dist/utils/index.d.ts.map +1 -0
  301. package/dist/utils/index.js +3 -0
  302. package/dist/utils/index.js.map +1 -0
  303. package/dist/utils/shared-utils.d.ts +19 -0
  304. package/dist/utils/shared-utils.d.ts.map +1 -0
  305. package/dist/utils/shared-utils.js +66 -0
  306. package/dist/utils/shared-utils.js.map +1 -0
  307. package/dist/utils/shared-utils.test.d.ts +2 -0
  308. package/dist/utils/shared-utils.test.d.ts.map +1 -0
  309. package/dist/utils/shared-utils.test.js +63 -0
  310. package/dist/utils/shared-utils.test.js.map +1 -0
  311. package/package.json +83 -0
@@ -0,0 +1,348 @@
1
+ /**
2
+ * Program IDL in camelCase format in order to be used in JS/TS.
3
+ *
4
+ * Note that this is only a type helper and is not the actual IDL. The original
5
+ * IDL can be found at `target/idl/rate_limit_contract.json`.
6
+ */
7
+ export type RateLimitContract = {
8
+ address: '2Vyy3A3Teju2EMCkdnappEeWqBXyAaF5V2WsrU4hDtsk';
9
+ metadata: {
10
+ name: 'rateLimitContract';
11
+ version: '0.1.0';
12
+ spec: '0.1.0';
13
+ description: 'Created with Anchor';
14
+ };
15
+ instructions: [
16
+ {
17
+ name: 'configureRateLimit';
18
+ discriminator: [227, 52, 114, 110, 151, 143, 179, 169];
19
+ accounts: [
20
+ {
21
+ name: 'owner';
22
+ writable: true;
23
+ signer: true;
24
+ },
25
+ {
26
+ name: 'rateLimit';
27
+ writable: true;
28
+ pda: {
29
+ seeds: [
30
+ {
31
+ kind: 'const';
32
+ value: [108, 105, 109, 105, 116];
33
+ },
34
+ {
35
+ kind: 'arg';
36
+ path: 'token';
37
+ }
38
+ ];
39
+ };
40
+ },
41
+ {
42
+ name: 'config';
43
+ writable: true;
44
+ pda: {
45
+ seeds: [
46
+ {
47
+ kind: 'const';
48
+ value: [114, 109, 99, 111, 110, 102, 105, 103];
49
+ }
50
+ ];
51
+ };
52
+ },
53
+ {
54
+ name: 'systemProgram';
55
+ address: '11111111111111111111111111111111';
56
+ }
57
+ ];
58
+ args: [
59
+ {
60
+ name: 'token';
61
+ type: 'pubkey';
62
+ },
63
+ {
64
+ name: 'period';
65
+ type: 'u64';
66
+ },
67
+ {
68
+ name: 'percentage';
69
+ type: 'u64';
70
+ }
71
+ ];
72
+ },
73
+ {
74
+ name: 'initialize';
75
+ discriminator: [175, 175, 109, 31, 13, 152, 155, 237];
76
+ accounts: [
77
+ {
78
+ name: 'config';
79
+ writable: true;
80
+ pda: {
81
+ seeds: [
82
+ {
83
+ kind: 'const';
84
+ value: [114, 109, 99, 111, 110, 102, 105, 103];
85
+ }
86
+ ];
87
+ };
88
+ },
89
+ {
90
+ name: 'owner';
91
+ writable: true;
92
+ signer: true;
93
+ },
94
+ {
95
+ name: 'systemProgram';
96
+ address: '11111111111111111111111111111111';
97
+ }
98
+ ];
99
+ args: [];
100
+ },
101
+ {
102
+ name: 'queryVerifyWithdrawAccounts';
103
+ discriminator: [170, 40, 182, 35, 169, 95, 103, 40];
104
+ accounts: [
105
+ {
106
+ name: 'config';
107
+ pda: {
108
+ seeds: [
109
+ {
110
+ kind: 'const';
111
+ value: [114, 109, 99, 111, 110, 102, 105, 103];
112
+ }
113
+ ];
114
+ };
115
+ }
116
+ ];
117
+ args: [
118
+ {
119
+ name: 'token';
120
+ type: 'pubkey';
121
+ }
122
+ ];
123
+ returns: {
124
+ defined: {
125
+ name: 'paramAccounts';
126
+ };
127
+ };
128
+ },
129
+ {
130
+ name: 'setAssetManager';
131
+ discriminator: [183, 165, 55, 207, 57, 159, 164, 69];
132
+ accounts: [
133
+ {
134
+ name: 'config';
135
+ writable: true;
136
+ pda: {
137
+ seeds: [
138
+ {
139
+ kind: 'const';
140
+ value: [114, 109, 99, 111, 110, 102, 105, 103];
141
+ }
142
+ ];
143
+ };
144
+ },
145
+ {
146
+ name: 'owner';
147
+ writable: true;
148
+ signer: true;
149
+ }
150
+ ];
151
+ args: [
152
+ {
153
+ name: 'assetManager';
154
+ type: 'pubkey';
155
+ }
156
+ ];
157
+ },
158
+ {
159
+ name: 'verifyWithdraw';
160
+ discriminator: [133, 213, 154, 98, 6, 8, 93, 13];
161
+ accounts: [
162
+ {
163
+ name: 'signer';
164
+ writable: true;
165
+ signer: true;
166
+ },
167
+ {
168
+ name: 'dapp';
169
+ signer: true;
170
+ },
171
+ {
172
+ name: 'systemProgram';
173
+ address: '11111111111111111111111111111111';
174
+ },
175
+ {
176
+ name: 'rateLimits';
177
+ writable: true;
178
+ pda: {
179
+ seeds: [
180
+ {
181
+ kind: 'const';
182
+ value: [108, 105, 109, 105, 116];
183
+ },
184
+ {
185
+ kind: 'arg';
186
+ path: 'token';
187
+ }
188
+ ];
189
+ };
190
+ },
191
+ {
192
+ name: 'config';
193
+ writable: true;
194
+ pda: {
195
+ seeds: [
196
+ {
197
+ kind: 'const';
198
+ value: [114, 109, 99, 111, 110, 102, 105, 103];
199
+ }
200
+ ];
201
+ };
202
+ }
203
+ ];
204
+ args: [
205
+ {
206
+ name: 'token';
207
+ type: 'pubkey';
208
+ },
209
+ {
210
+ name: 'amount';
211
+ type: 'u64';
212
+ },
213
+ {
214
+ name: 'balance';
215
+ type: 'u64';
216
+ }
217
+ ];
218
+ returns: 'bool';
219
+ }
220
+ ];
221
+ accounts: [
222
+ {
223
+ name: 'rateLimitAccount';
224
+ discriminator: [217, 50, 226, 90, 10, 8, 80, 60];
225
+ },
226
+ {
227
+ name: 'rmConfig';
228
+ discriminator: [43, 115, 231, 93, 90, 23, 151, 156];
229
+ }
230
+ ];
231
+ errors: [
232
+ {
233
+ code: 6000;
234
+ name: 'onlyOwner';
235
+ msg: 'Only Owner';
236
+ },
237
+ {
238
+ code: 6001;
239
+ name: 'onlyAssetManager';
240
+ msg: 'Only Asset Manager';
241
+ },
242
+ {
243
+ code: 6002;
244
+ name: 'invalidPercentage';
245
+ msg: 'Invalid percentage value.';
246
+ },
247
+ {
248
+ code: 6003;
249
+ name: 'rateLimitNotSet';
250
+ msg: 'Rate limit not set for this token.';
251
+ },
252
+ {
253
+ code: 6004;
254
+ name: 'exceedsWithdrawLimit';
255
+ msg: 'Exceeds the withdraw limit.';
256
+ },
257
+ {
258
+ code: 6005;
259
+ name: 'accountNotEnough';
260
+ msg: 'Account not enough.';
261
+ }
262
+ ];
263
+ types: [
264
+ {
265
+ name: 'paramAccountProps';
266
+ type: {
267
+ kind: 'struct';
268
+ fields: [
269
+ {
270
+ name: 'pubkey';
271
+ type: 'pubkey';
272
+ },
273
+ {
274
+ name: 'isWritable';
275
+ type: 'bool';
276
+ },
277
+ {
278
+ name: 'isSigner';
279
+ type: 'bool';
280
+ }
281
+ ];
282
+ };
283
+ },
284
+ {
285
+ name: 'paramAccounts';
286
+ type: {
287
+ kind: 'struct';
288
+ fields: [
289
+ {
290
+ name: 'accounts';
291
+ type: {
292
+ vec: {
293
+ defined: {
294
+ name: 'paramAccountProps';
295
+ };
296
+ };
297
+ };
298
+ }
299
+ ];
300
+ };
301
+ },
302
+ {
303
+ name: 'rateLimitAccount';
304
+ type: {
305
+ kind: 'struct';
306
+ fields: [
307
+ {
308
+ name: 'token';
309
+ type: 'pubkey';
310
+ },
311
+ {
312
+ name: 'period';
313
+ type: 'u64';
314
+ },
315
+ {
316
+ name: 'percentage';
317
+ type: 'u64';
318
+ },
319
+ {
320
+ name: 'currentLimit';
321
+ type: 'u64';
322
+ },
323
+ {
324
+ name: 'lastUpdate';
325
+ type: 'u64';
326
+ }
327
+ ];
328
+ };
329
+ },
330
+ {
331
+ name: 'rmConfig';
332
+ type: {
333
+ kind: 'struct';
334
+ fields: [
335
+ {
336
+ name: 'owner';
337
+ type: 'pubkey';
338
+ },
339
+ {
340
+ name: 'assetManager';
341
+ type: 'pubkey';
342
+ }
343
+ ];
344
+ };
345
+ }
346
+ ];
347
+ };
348
+ //# sourceMappingURL=rate_limit_contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate_limit_contract.d.ts","sourceRoot":"","sources":["../../../../src/entities/solana/types/rate_limit_contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=rate_limit_contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate_limit_contract.js","sourceRoot":"","sources":["../../../../src/entities/solana/types/rate_limit_contract.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ import type { Hex } from 'viem';
3
+ export declare function getSolanaAddressBytes(address: PublicKey): Hex;
4
+ export declare function hexToSolanaAddress(hex: Hex): PublicKey;
5
+ export declare function isNative(address: PublicKey): Boolean;
6
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/entities/solana/utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAMhC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,GAAG,GAAG,CAE7D;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CAGtD;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAKpD"}
@@ -0,0 +1,17 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ import { SOLANA_MAINNET_CHAIN_ID, spokeChainConfig } from '../../../constants.js';
3
+ const solanaSpokeChainConfig = spokeChainConfig[SOLANA_MAINNET_CHAIN_ID];
4
+ export function getSolanaAddressBytes(address) {
5
+ return `0x${Buffer.from(address.toBytes()).toString('hex')}`;
6
+ }
7
+ export function hexToSolanaAddress(hex) {
8
+ const hexWithoutPrefix = hex.startsWith('0x') ? hex.slice(2) : hex;
9
+ return new PublicKey(Buffer.from(hexWithoutPrefix, 'hex'));
10
+ }
11
+ export function isNative(address) {
12
+ if (address.equals(new PublicKey(solanaSpokeChainConfig.nativeToken))) {
13
+ return true;
14
+ }
15
+ return false;
16
+ }
17
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/entities/solana/utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGlF,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,uBAAuB,CAAsB,CAAC;AAE9F,MAAM,UAAU,qBAAqB,CAAC,OAAkB;IACtD,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAS,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAQ;IACzC,MAAM,gBAAgB,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACnE,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,OAAkB;IACzC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { Keypair } from '@stellar/stellar-sdk';
2
+ import type { PromiseStellarTxReturnType, StellarSpokeChainConfig } from '../../types.js';
3
+ import { type Hex } from 'viem';
4
+ import type { ISpokeProvider, WalletAddressProvider } from '../Providers.js';
5
+ export declare class StellarWalletProvider implements WalletAddressProvider {
6
+ private readonly _keypair;
7
+ constructor(secretKey: string);
8
+ getWalletAddress(): string;
9
+ getWalletAddressBytes(): Hex;
10
+ get keypair(): Keypair;
11
+ }
12
+ export declare class StellarSpokeProvider implements ISpokeProvider {
13
+ private readonly server;
14
+ private readonly contract;
15
+ readonly chainConfig: StellarSpokeChainConfig;
16
+ readonly walletProvider: StellarWalletProvider;
17
+ constructor(walletProvider: StellarWalletProvider, contractAddress: string, config: StellarSpokeChainConfig, rpc: string);
18
+ getBalance(tokenAddress: string): Promise<number>;
19
+ deposit<R extends boolean = false>(token: string, amount: string, recipient: Uint8Array, data: Uint8Array, raw?: R): PromiseStellarTxReturnType<R>;
20
+ sendMessage<R extends boolean = false>(dst_chain_id: string, dst_address: Uint8Array, payload: Uint8Array, raw?: R): PromiseStellarTxReturnType<R>;
21
+ static getAddressBCSBytes(stellaraddress: string): Hex;
22
+ static getTsWalletBytes(stellaraddress: string): Hex;
23
+ }
24
+ //# sourceMappingURL=StellarSpokeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StellarSpokeProvider.d.ts","sourceRoot":"","sources":["../../../src/entities/stellar/StellarSpokeProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EASR,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,0BAA0B,EAAqB,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC7G,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAG7E,qBAAa,qBAAsB,YAAW,qBAAqB;IACjE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;gBAEvB,SAAS,EAAE,MAAM;IAI7B,gBAAgB,IAAI,MAAM;IAK1B,qBAAqB,IAAI,GAAG;IAI5B,IAAI,OAAO,IAAI,OAAO,CAErB;CACF;AAED,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,SAAgB,WAAW,EAAE,uBAAuB,CAAC;IACrD,SAAgB,cAAc,EAAE,qBAAqB,CAAC;gBAGpD,cAAc,EAAE,qBAAqB,EACrC,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,uBAAuB,EAC/B,GAAG,EAAE,MAAM;IAQP,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BjD,OAAO,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK,EACrC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,UAAU,EACrB,IAAI,EAAE,UAAU,EAChB,GAAG,CAAC,EAAE,CAAC,GACN,0BAA0B,CAAC,CAAC,CAAC;IAkD1B,WAAW,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK,EACzC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,UAAU,EACvB,OAAO,EAAE,UAAU,EACnB,GAAG,CAAC,EAAE,CAAC,GACN,0BAA0B,CAAC,CAAC,CAAC;IA+ChC,MAAM,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,GAAG;IAItD,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,GAAG;CAGrD"}
@@ -0,0 +1,129 @@
1
+ import { Keypair, Contract, TransactionBuilder, BASE_FEE, Address, rpc as StellarRpc, nativeToScVal, TimeoutInfinite, scValToBigInt, } from '@stellar/stellar-sdk';
2
+ import { toHex } from 'viem';
3
+ export class StellarWalletProvider {
4
+ _keypair;
5
+ constructor(secretKey) {
6
+ this._keypair = Keypair.fromSecret(secretKey);
7
+ }
8
+ getWalletAddress() {
9
+ console.log('Public key is:', this._keypair.publicKey());
10
+ return this._keypair.publicKey();
11
+ }
12
+ getWalletAddressBytes() {
13
+ return StellarSpokeProvider.getAddressBCSBytes(this.getWalletAddress());
14
+ }
15
+ get keypair() {
16
+ return this._keypair;
17
+ }
18
+ }
19
+ export class StellarSpokeProvider {
20
+ server;
21
+ contract;
22
+ chainConfig;
23
+ walletProvider;
24
+ constructor(walletProvider, contractAddress, config, rpc) {
25
+ this.server = new StellarRpc.Server(rpc);
26
+ this.walletProvider = walletProvider;
27
+ this.contract = new Contract(contractAddress);
28
+ this.chainConfig = config;
29
+ }
30
+ async getBalance(tokenAddress) {
31
+ const sourceAccount = await this.server.getAccount(this.walletProvider.keypair.publicKey());
32
+ const tx = new TransactionBuilder(sourceAccount, {
33
+ fee: BASE_FEE,
34
+ networkPassphrase: (await this.server.getNetwork()).passphrase,
35
+ })
36
+ .addOperation(this.contract.call('get_token_balance', nativeToScVal(tokenAddress, { type: 'address' })))
37
+ .setTimeout(TimeoutInfinite)
38
+ .build();
39
+ const result = await this.server.simulateTransaction(tx);
40
+ if (StellarRpc.Api.isSimulationError(result)) {
41
+ throw new Error('Failed to simulate transaction');
42
+ }
43
+ const resultValue = result.result;
44
+ if (resultValue) {
45
+ return Number(scValToBigInt(resultValue.retval));
46
+ }
47
+ throw new Error('result undefined');
48
+ }
49
+ async deposit(token, amount, recipient, data, raw) {
50
+ try {
51
+ const sourceAccount = await this.server.getAccount(this.walletProvider.keypair.publicKey());
52
+ const simulateTx = new TransactionBuilder(sourceAccount, {
53
+ fee: BASE_FEE,
54
+ networkPassphrase: (await this.server.getNetwork()).passphrase,
55
+ })
56
+ .addOperation(this.contract.call('transfer', nativeToScVal(Address.fromString(this.walletProvider.keypair.publicKey()), { type: 'address' }), nativeToScVal(Address.fromString(token), {
57
+ type: 'address',
58
+ }), nativeToScVal(BigInt(amount), { type: 'u128' }), nativeToScVal(recipient), nativeToScVal(Buffer.from(data), { type: 'bytes' })))
59
+ .setTimeout(100)
60
+ .build();
61
+ const simResult = await this.server.simulateTransaction(simulateTx);
62
+ const tx = StellarRpc.assembleTransaction(simulateTx, simResult).build();
63
+ if (raw) {
64
+ const transactionXdr = tx.toXDR();
65
+ return {
66
+ from: this.walletProvider.getWalletAddress(),
67
+ to: this.chainConfig.addresses.assetManager,
68
+ value: BigInt(amount),
69
+ data: transactionXdr,
70
+ };
71
+ }
72
+ if (tx) {
73
+ tx.sign(this.walletProvider.keypair);
74
+ const sendResponse = await this.server.sendTransaction(tx);
75
+ if (sendResponse.hash) {
76
+ return `0x${sendResponse.hash}`;
77
+ }
78
+ }
79
+ throw new Error('Failed to create transaction');
80
+ }
81
+ catch (error) {
82
+ console.error('Error during deposit:', error);
83
+ throw error;
84
+ }
85
+ }
86
+ async sendMessage(dst_chain_id, dst_address, payload, raw) {
87
+ try {
88
+ const sourceAccount = await this.server.getAccount(this.walletProvider.keypair.publicKey());
89
+ const connection = new Contract(this.chainConfig.addresses.connection);
90
+ const simulateTx = new TransactionBuilder(sourceAccount, {
91
+ fee: BASE_FEE,
92
+ networkPassphrase: (await this.server.getNetwork()).passphrase,
93
+ })
94
+ .addOperation(connection.call('send_message', nativeToScVal(Address.fromString(this.walletProvider.keypair.publicKey()), { type: 'address' }), nativeToScVal(dst_chain_id, { type: 'u128' }), nativeToScVal(Buffer.from(dst_address), { type: 'bytes' }), nativeToScVal(Buffer.from(payload), { type: 'bytes' })))
95
+ .setTimeout(100)
96
+ .build();
97
+ const simResult = await this.server.simulateTransaction(simulateTx);
98
+ const tx = StellarRpc.assembleTransaction(simulateTx, simResult).build();
99
+ if (raw) {
100
+ const transactionXdr = tx.toXDR();
101
+ return {
102
+ from: this.walletProvider.getWalletAddress(),
103
+ to: this.chainConfig.addresses.assetManager,
104
+ value: 0n,
105
+ data: transactionXdr,
106
+ };
107
+ }
108
+ if (tx) {
109
+ tx.sign(this.walletProvider.keypair);
110
+ const sendResponse = await this.server.sendTransaction(tx);
111
+ if (sendResponse.hash) {
112
+ return `0x${sendResponse.hash}`;
113
+ }
114
+ }
115
+ throw new Error('Failed to create transaction');
116
+ }
117
+ catch (error) {
118
+ console.error('Error during deposit:', error);
119
+ throw error;
120
+ }
121
+ }
122
+ static getAddressBCSBytes(stellaraddress) {
123
+ return `0x${Address.fromString(stellaraddress).toScVal().toXDR('hex')}`;
124
+ }
125
+ static getTsWalletBytes(stellaraddress) {
126
+ return toHex(Buffer.from(stellaraddress, 'hex'));
127
+ }
128
+ }
129
+ //# sourceMappingURL=StellarSpokeProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StellarSpokeProvider.js","sourceRoot":"","sources":["../../../src/entities/stellar/StellarSpokeProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { Transaction, type TransactionResult } from '@mysten/sui/transactions';
2
+ import { type Hex } from 'viem';
3
+ import type { PromiseSuiTxReturnType, SuiSpokeChainConfig } from '../../types.js';
4
+ import type { ISpokeProvider, SuiWalletProvider } from '../index.js';
5
+ type SuiNativeCoinResult = {
6
+ $kind: 'NestedResult';
7
+ NestedResult: [number, number];
8
+ };
9
+ type SuiTxObject = {
10
+ $kind: 'Input';
11
+ Input: number;
12
+ type?: 'object' | undefined;
13
+ };
14
+ export declare class SuiSpokeProvider implements ISpokeProvider {
15
+ readonly walletProvider: SuiWalletProvider;
16
+ chainConfig: SuiSpokeChainConfig;
17
+ constructor(config: SuiSpokeChainConfig, wallet_provider: SuiWalletProvider);
18
+ getBalance(token: string): Promise<bigint>;
19
+ transfer<R extends boolean = false>(token: string, amount: bigint, to: Uint8Array, data: Uint8Array, raw?: R): PromiseSuiTxReturnType<R>;
20
+ getNativeCoin(tx: Transaction, amount: bigint): Promise<SuiNativeCoinResult>;
21
+ getCoin(tx: Transaction, coin: string, amount: bigint, address: string): Promise<TransactionResult | SuiTxObject>;
22
+ splitAddress(address: string): {
23
+ packageId: string;
24
+ moduleId: string;
25
+ stateId: string;
26
+ };
27
+ sendMessage<R extends boolean = false>(dst_chain_id: bigint, dst_address: Uint8Array, data: Uint8Array, raw?: R): PromiseSuiTxReturnType<R>;
28
+ configureAssetManagerHub(hubNetworkId: number, hubAssetManager: Uint8Array): Promise<string>;
29
+ getWalletAddress(): string;
30
+ getWalletAddressBytes(): Hex;
31
+ static getAddressBCSBytes(suiaddress: string): Hex;
32
+ }
33
+ export {};
34
+ //# sourceMappingURL=SuiSpokeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SuiSpokeProvider.d.ts","sourceRoot":"","sources":["../../../src/entities/sui/SuiSpokeProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,KAAK,GAAG,EAAS,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EAAE,sBAAsB,EAAiB,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErE,KAAK,mBAAmB,GAAG;IAAE,KAAK,EAAE,cAAc,CAAC;IAAC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC;AACrF,KAAK,WAAW,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CAAE,CAAC;AAClF,qBAAa,gBAAiB,YAAW,cAAc;IACrD,SAAgB,cAAc,EAAE,iBAAiB,CAAC;IAC3C,WAAW,EAAE,mBAAmB,CAAC;gBAE5B,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,iBAAiB;IAKrE,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAuB1C,QAAQ,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK,EACtC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,UAAU,EAChB,GAAG,CAAC,EAAE,CAAC,GACN,sBAAsB,CAAC,CAAC,CAAC;IAoCf,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAU5E,OAAO,CAClB,EAAE,EAAE,WAAW,EACf,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,GAAG,WAAW,CAAC;IAgC3C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAWjF,WAAW,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK,EACzC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,UAAU,EACvB,IAAI,EAAE,UAAU,EAChB,GAAG,CAAC,EAAE,CAAC,GACN,sBAAsB,CAAC,CAAC,CAAC;IA2BtB,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAYlG,gBAAgB,IAAI,MAAM;IAI1B,qBAAqB,IAAI,GAAG;IAI5B,MAAM,CAAC,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG;CAGnD"}