@ton/appkit 0.0.5-alpha.1 → 0.0.5-alpha.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 (341) hide show
  1. package/.turbo/turbo-build.log +4 -4
  2. package/CHANGELOG.md +11 -0
  3. package/CLAUDE.md +10 -0
  4. package/README.md +1 -1
  5. package/dist/cjs/actions/balances/watch-balance-by-address.d.ts +21 -0
  6. package/dist/cjs/actions/balances/watch-balance-by-address.d.ts.map +1 -0
  7. package/dist/cjs/actions/balances/watch-balance-by-address.js +22 -0
  8. package/dist/cjs/actions/balances/watch-balance.d.ts +19 -0
  9. package/dist/cjs/actions/balances/watch-balance.d.ts.map +1 -0
  10. package/dist/cjs/actions/balances/watch-balance.js +44 -0
  11. package/dist/cjs/actions/connectors/add-connector.d.ts +3 -3
  12. package/dist/cjs/actions/connectors/add-connector.d.ts.map +1 -1
  13. package/dist/cjs/actions/connectors/add-connector.js +2 -2
  14. package/dist/cjs/actions/index.d.ts +14 -0
  15. package/dist/cjs/actions/index.d.ts.map +1 -1
  16. package/dist/cjs/actions/index.js +31 -1
  17. package/dist/cjs/actions/jettons/watch-jettons-by-address.d.ts +21 -0
  18. package/dist/cjs/actions/jettons/watch-jettons-by-address.d.ts.map +1 -0
  19. package/dist/cjs/actions/jettons/watch-jettons-by-address.js +22 -0
  20. package/dist/cjs/actions/jettons/watch-jettons.d.ts +19 -0
  21. package/dist/cjs/actions/jettons/watch-jettons.d.ts.map +1 -0
  22. package/dist/cjs/actions/jettons/watch-jettons.js +44 -0
  23. package/dist/cjs/actions/network/get-api-client.d.ts +19 -0
  24. package/dist/cjs/actions/network/get-api-client.d.ts.map +1 -0
  25. package/dist/cjs/actions/network/get-api-client.js +17 -0
  26. package/dist/cjs/actions/network/has-streaming-provider.d.ts +15 -0
  27. package/dist/cjs/actions/network/has-streaming-provider.d.ts.map +1 -0
  28. package/dist/cjs/actions/network/has-streaming-provider.js +17 -0
  29. package/dist/cjs/actions/providers/register-provider.d.ts +2 -2
  30. package/dist/cjs/actions/providers/register-provider.d.ts.map +1 -1
  31. package/dist/cjs/actions/staking/build-stake-transaction.d.ts +19 -0
  32. package/dist/cjs/actions/staking/build-stake-transaction.d.ts.map +1 -0
  33. package/dist/cjs/actions/staking/build-stake-transaction.js +17 -0
  34. package/dist/cjs/actions/staking/get-staked-balance.d.ts +20 -0
  35. package/dist/cjs/actions/staking/get-staked-balance.d.ts.map +1 -0
  36. package/dist/cjs/actions/staking/get-staked-balance.js +18 -0
  37. package/dist/cjs/actions/staking/get-staking-manager.d.ts +15 -0
  38. package/dist/cjs/actions/staking/get-staking-manager.d.ts.map +1 -0
  39. package/dist/cjs/actions/staking/get-staking-manager.js +17 -0
  40. package/dist/cjs/actions/staking/get-staking-provider-info.d.ts +19 -0
  41. package/dist/cjs/actions/staking/get-staking-provider-info.d.ts.map +1 -0
  42. package/dist/cjs/actions/staking/get-staking-provider-info.js +18 -0
  43. package/dist/cjs/actions/staking/get-staking-providers.d.ts +14 -0
  44. package/dist/cjs/actions/staking/get-staking-providers.d.ts.map +1 -0
  45. package/dist/cjs/actions/staking/get-staking-providers.js +17 -0
  46. package/dist/cjs/actions/staking/get-staking-quote.d.ts +18 -0
  47. package/dist/cjs/actions/staking/get-staking-quote.d.ts.map +1 -0
  48. package/dist/cjs/actions/staking/get-staking-quote.js +22 -0
  49. package/dist/cjs/actions/transaction/watch-transactions-by-address.d.ts +21 -0
  50. package/dist/cjs/actions/transaction/watch-transactions-by-address.d.ts.map +1 -0
  51. package/dist/cjs/actions/transaction/watch-transactions-by-address.js +22 -0
  52. package/dist/cjs/actions/transaction/watch-transactions.d.ts +19 -0
  53. package/dist/cjs/actions/transaction/watch-transactions.d.ts.map +1 -0
  54. package/dist/cjs/actions/transaction/watch-transactions.js +44 -0
  55. package/dist/cjs/connectors/tonconnect/connectors/ton-connect-connector.d.ts +5 -18
  56. package/dist/cjs/connectors/tonconnect/connectors/ton-connect-connector.d.ts.map +1 -1
  57. package/dist/cjs/connectors/tonconnect/connectors/ton-connect-connector.js +90 -59
  58. package/dist/cjs/connectors/tonconnect/index.d.ts +1 -2
  59. package/dist/cjs/connectors/tonconnect/index.d.ts.map +1 -1
  60. package/dist/cjs/connectors/tonconnect/index.js +2 -2
  61. package/dist/cjs/core/app-kit/services/app-kit.d.ts +10 -6
  62. package/dist/cjs/core/app-kit/services/app-kit.d.ts.map +1 -1
  63. package/dist/cjs/core/app-kit/services/app-kit.js +19 -9
  64. package/dist/cjs/core/app-kit/types/config.d.ts +11 -5
  65. package/dist/cjs/core/app-kit/types/config.d.ts.map +1 -1
  66. package/dist/cjs/core/app-kit/types/events.d.ts +6 -5
  67. package/dist/cjs/core/app-kit/types/events.d.ts.map +1 -1
  68. package/dist/cjs/core/emitter/index.d.ts +2 -2
  69. package/dist/cjs/core/emitter/index.d.ts.map +1 -1
  70. package/dist/cjs/core/emitter/index.js +3 -3
  71. package/dist/cjs/core/streaming/index.d.ts +10 -0
  72. package/dist/cjs/core/streaming/index.d.ts.map +1 -0
  73. package/dist/cjs/core/streaming/index.js +16 -0
  74. package/dist/cjs/index.d.ts +2 -0
  75. package/dist/cjs/index.d.ts.map +1 -1
  76. package/dist/cjs/index.js +2 -0
  77. package/dist/cjs/queries/balances/get-balance-by-address.d.ts +11 -1
  78. package/dist/cjs/queries/balances/get-balance-by-address.d.ts.map +1 -1
  79. package/dist/cjs/queries/balances/get-balance-by-address.js +19 -2
  80. package/dist/cjs/queries/index.d.ts +8 -3
  81. package/dist/cjs/queries/index.d.ts.map +1 -1
  82. package/dist/cjs/queries/index.js +15 -1
  83. package/dist/cjs/queries/jettons/get-jetton-balance-by-address.d.ts +12 -1
  84. package/dist/cjs/queries/jettons/get-jetton-balance-by-address.d.ts.map +1 -1
  85. package/dist/cjs/queries/jettons/get-jetton-balance-by-address.js +27 -2
  86. package/dist/cjs/queries/jettons/get-jetton-info.d.ts +1 -1
  87. package/dist/cjs/queries/jettons/get-jetton-info.d.ts.map +1 -1
  88. package/dist/cjs/queries/jettons/get-jetton-info.js +3 -1
  89. package/dist/cjs/queries/jettons/get-jetton-wallet-address.d.ts +1 -1
  90. package/dist/cjs/queries/jettons/get-jetton-wallet-address.d.ts.map +1 -1
  91. package/dist/cjs/queries/jettons/get-jetton-wallet-address.js +3 -1
  92. package/dist/cjs/queries/jettons/get-jettons-by-address.d.ts +11 -1
  93. package/dist/cjs/queries/jettons/get-jettons-by-address.d.ts.map +1 -1
  94. package/dist/cjs/queries/jettons/get-jettons-by-address.js +34 -2
  95. package/dist/cjs/queries/network/get-block-number.d.ts +1 -1
  96. package/dist/cjs/queries/network/get-block-number.d.ts.map +1 -1
  97. package/dist/cjs/queries/network/get-block-number.js +3 -1
  98. package/dist/cjs/queries/nft/get-nft.d.ts +1 -1
  99. package/dist/cjs/queries/nft/get-nft.d.ts.map +1 -1
  100. package/dist/cjs/queries/nft/get-nft.js +3 -1
  101. package/dist/cjs/queries/nft/get-nfts-by-address.d.ts +1 -1
  102. package/dist/cjs/queries/nft/get-nfts-by-address.d.ts.map +1 -1
  103. package/dist/cjs/queries/nft/get-nfts-by-address.js +3 -1
  104. package/dist/cjs/queries/staking/build-stake-transaction.d.ts +21 -0
  105. package/dist/cjs/queries/staking/build-stake-transaction.d.ts.map +1 -0
  106. package/dist/cjs/queries/staking/build-stake-transaction.js +21 -0
  107. package/dist/cjs/queries/staking/get-staked-balance.d.ts +21 -0
  108. package/dist/cjs/queries/staking/get-staked-balance.d.ts.map +1 -0
  109. package/dist/cjs/queries/staking/get-staked-balance.js +31 -0
  110. package/dist/cjs/queries/staking/get-staking-provider-info.d.ts +24 -0
  111. package/dist/cjs/queries/staking/get-staking-provider-info.d.ts.map +1 -0
  112. package/dist/cjs/queries/staking/get-staking-provider-info.js +27 -0
  113. package/dist/cjs/queries/staking/get-staking-providers.d.ts +20 -0
  114. package/dist/cjs/queries/staking/get-staking-providers.d.ts.map +1 -0
  115. package/dist/cjs/queries/staking/get-staking-providers.js +25 -0
  116. package/dist/cjs/queries/staking/get-staking-quote.d.ts +21 -0
  117. package/dist/cjs/queries/staking/get-staking-quote.d.ts.map +1 -0
  118. package/dist/cjs/queries/staking/get-staking-quote.js +31 -0
  119. package/dist/{esm/core/emitter/types/events.js → cjs/queries/streaming-updates.test.d.ts} +1 -0
  120. package/dist/cjs/queries/streaming-updates.test.d.ts.map +1 -0
  121. package/dist/cjs/queries/streaming-updates.test.js +87 -0
  122. package/dist/cjs/queries/swap/get-swap-quote.d.ts +1 -1
  123. package/dist/cjs/queries/swap/get-swap-quote.d.ts.map +1 -1
  124. package/dist/cjs/queries/swap/get-swap-quote.js +3 -1
  125. package/dist/cjs/queries/transaction/get-transaction-status.d.ts +1 -1
  126. package/dist/cjs/queries/transaction/get-transaction-status.d.ts.map +1 -1
  127. package/dist/cjs/queries/transaction/get-transaction-status.js +4 -1
  128. package/dist/cjs/staking/index.d.ts +10 -0
  129. package/dist/cjs/staking/index.d.ts.map +1 -0
  130. package/dist/cjs/staking/index.js +15 -0
  131. package/dist/cjs/staking/tonstakers/index.d.ts +9 -0
  132. package/dist/cjs/staking/tonstakers/index.d.ts.map +1 -0
  133. package/dist/cjs/staking/tonstakers/index.js +24 -0
  134. package/dist/cjs/types/connector.d.ts +15 -3
  135. package/dist/cjs/types/connector.d.ts.map +1 -1
  136. package/dist/cjs/types/connector.js +5 -0
  137. package/dist/cjs/types/provider.d.ts +2 -2
  138. package/dist/cjs/types/provider.d.ts.map +1 -1
  139. package/dist/cjs/utils/index.d.ts +1 -1
  140. package/dist/cjs/utils/index.d.ts.map +1 -1
  141. package/dist/cjs/utils/index.js +2 -1
  142. package/dist/esm/actions/balances/watch-balance-by-address.d.ts +21 -0
  143. package/dist/esm/actions/balances/watch-balance-by-address.d.ts.map +1 -0
  144. package/dist/esm/actions/balances/watch-balance-by-address.js +18 -0
  145. package/dist/esm/actions/balances/watch-balance.d.ts +19 -0
  146. package/dist/esm/actions/balances/watch-balance.d.ts.map +1 -0
  147. package/dist/esm/actions/balances/watch-balance.js +40 -0
  148. package/dist/esm/actions/connectors/add-connector.d.ts +3 -3
  149. package/dist/esm/actions/connectors/add-connector.d.ts.map +1 -1
  150. package/dist/esm/actions/connectors/add-connector.js +2 -2
  151. package/dist/esm/actions/index.d.ts +14 -0
  152. package/dist/esm/actions/index.d.ts.map +1 -1
  153. package/dist/esm/actions/index.js +15 -0
  154. package/dist/esm/actions/jettons/watch-jettons-by-address.d.ts +21 -0
  155. package/dist/esm/actions/jettons/watch-jettons-by-address.d.ts.map +1 -0
  156. package/dist/esm/actions/jettons/watch-jettons-by-address.js +18 -0
  157. package/dist/esm/actions/jettons/watch-jettons.d.ts +19 -0
  158. package/dist/esm/actions/jettons/watch-jettons.d.ts.map +1 -0
  159. package/dist/esm/actions/jettons/watch-jettons.js +40 -0
  160. package/dist/esm/actions/network/get-api-client.d.ts +19 -0
  161. package/dist/esm/actions/network/get-api-client.d.ts.map +1 -0
  162. package/dist/esm/actions/network/get-api-client.js +13 -0
  163. package/dist/esm/actions/network/has-streaming-provider.d.ts +15 -0
  164. package/dist/esm/actions/network/has-streaming-provider.d.ts.map +1 -0
  165. package/dist/esm/actions/network/has-streaming-provider.js +13 -0
  166. package/dist/esm/actions/providers/register-provider.d.ts +2 -2
  167. package/dist/esm/actions/providers/register-provider.d.ts.map +1 -1
  168. package/dist/esm/actions/staking/build-stake-transaction.d.ts +19 -0
  169. package/dist/esm/actions/staking/build-stake-transaction.d.ts.map +1 -0
  170. package/dist/esm/actions/staking/build-stake-transaction.js +13 -0
  171. package/dist/esm/actions/staking/get-staked-balance.d.ts +20 -0
  172. package/dist/esm/actions/staking/get-staked-balance.d.ts.map +1 -0
  173. package/dist/esm/actions/staking/get-staked-balance.js +14 -0
  174. package/dist/esm/actions/staking/get-staking-manager.d.ts +15 -0
  175. package/dist/esm/actions/staking/get-staking-manager.d.ts.map +1 -0
  176. package/dist/esm/actions/staking/get-staking-manager.js +13 -0
  177. package/dist/esm/actions/staking/get-staking-provider-info.d.ts +19 -0
  178. package/dist/esm/actions/staking/get-staking-provider-info.d.ts.map +1 -0
  179. package/dist/esm/actions/staking/get-staking-provider-info.js +14 -0
  180. package/dist/esm/actions/staking/get-staking-providers.d.ts +14 -0
  181. package/dist/esm/actions/staking/get-staking-providers.d.ts.map +1 -0
  182. package/dist/esm/actions/staking/get-staking-providers.js +13 -0
  183. package/dist/esm/actions/staking/get-staking-quote.d.ts +18 -0
  184. package/dist/esm/actions/staking/get-staking-quote.d.ts.map +1 -0
  185. package/dist/esm/actions/staking/get-staking-quote.js +18 -0
  186. package/dist/esm/actions/transaction/watch-transactions-by-address.d.ts +21 -0
  187. package/dist/esm/actions/transaction/watch-transactions-by-address.d.ts.map +1 -0
  188. package/dist/esm/actions/transaction/watch-transactions-by-address.js +18 -0
  189. package/dist/esm/actions/transaction/watch-transactions.d.ts +19 -0
  190. package/dist/esm/actions/transaction/watch-transactions.d.ts.map +1 -0
  191. package/dist/esm/actions/transaction/watch-transactions.js +40 -0
  192. package/dist/esm/connectors/tonconnect/connectors/ton-connect-connector.d.ts +5 -18
  193. package/dist/esm/connectors/tonconnect/connectors/ton-connect-connector.d.ts.map +1 -1
  194. package/dist/esm/connectors/tonconnect/connectors/ton-connect-connector.js +88 -57
  195. package/dist/esm/connectors/tonconnect/index.d.ts +1 -2
  196. package/dist/esm/connectors/tonconnect/index.d.ts.map +1 -1
  197. package/dist/esm/connectors/tonconnect/index.js +1 -1
  198. package/dist/esm/core/app-kit/services/app-kit.d.ts +10 -6
  199. package/dist/esm/core/app-kit/services/app-kit.d.ts.map +1 -1
  200. package/dist/esm/core/app-kit/services/app-kit.js +21 -11
  201. package/dist/esm/core/app-kit/types/config.d.ts +11 -5
  202. package/dist/esm/core/app-kit/types/config.d.ts.map +1 -1
  203. package/dist/esm/core/app-kit/types/events.d.ts +6 -5
  204. package/dist/esm/core/app-kit/types/events.d.ts.map +1 -1
  205. package/dist/esm/core/emitter/index.d.ts +2 -2
  206. package/dist/esm/core/emitter/index.d.ts.map +1 -1
  207. package/dist/esm/core/emitter/index.js +1 -1
  208. package/dist/esm/core/streaming/index.d.ts +10 -0
  209. package/dist/esm/core/streaming/index.d.ts.map +1 -0
  210. package/dist/esm/core/streaming/index.js +8 -0
  211. package/dist/esm/index.d.ts +2 -0
  212. package/dist/esm/index.d.ts.map +1 -1
  213. package/dist/esm/index.js +2 -0
  214. package/dist/esm/queries/balances/get-balance-by-address.d.ts +11 -1
  215. package/dist/esm/queries/balances/get-balance-by-address.d.ts.map +1 -1
  216. package/dist/esm/queries/balances/get-balance-by-address.js +18 -2
  217. package/dist/esm/queries/index.d.ts +8 -3
  218. package/dist/esm/queries/index.d.ts.map +1 -1
  219. package/dist/esm/queries/index.js +9 -3
  220. package/dist/esm/queries/jettons/get-jetton-balance-by-address.d.ts +12 -1
  221. package/dist/esm/queries/jettons/get-jetton-balance-by-address.d.ts.map +1 -1
  222. package/dist/esm/queries/jettons/get-jetton-balance-by-address.js +26 -2
  223. package/dist/esm/queries/jettons/get-jetton-info.d.ts +1 -1
  224. package/dist/esm/queries/jettons/get-jetton-info.d.ts.map +1 -1
  225. package/dist/esm/queries/jettons/get-jetton-info.js +4 -2
  226. package/dist/esm/queries/jettons/get-jetton-wallet-address.d.ts +1 -1
  227. package/dist/esm/queries/jettons/get-jetton-wallet-address.d.ts.map +1 -1
  228. package/dist/esm/queries/jettons/get-jetton-wallet-address.js +4 -2
  229. package/dist/esm/queries/jettons/get-jettons-by-address.d.ts +11 -1
  230. package/dist/esm/queries/jettons/get-jettons-by-address.d.ts.map +1 -1
  231. package/dist/esm/queries/jettons/get-jettons-by-address.js +33 -2
  232. package/dist/esm/queries/network/get-block-number.d.ts +1 -1
  233. package/dist/esm/queries/network/get-block-number.d.ts.map +1 -1
  234. package/dist/esm/queries/network/get-block-number.js +4 -2
  235. package/dist/esm/queries/nft/get-nft.d.ts +1 -1
  236. package/dist/esm/queries/nft/get-nft.d.ts.map +1 -1
  237. package/dist/esm/queries/nft/get-nft.js +4 -2
  238. package/dist/esm/queries/nft/get-nfts-by-address.d.ts +1 -1
  239. package/dist/esm/queries/nft/get-nfts-by-address.d.ts.map +1 -1
  240. package/dist/esm/queries/nft/get-nfts-by-address.js +4 -2
  241. package/dist/esm/queries/staking/build-stake-transaction.d.ts +21 -0
  242. package/dist/esm/queries/staking/build-stake-transaction.d.ts.map +1 -0
  243. package/dist/esm/queries/staking/build-stake-transaction.js +17 -0
  244. package/dist/esm/queries/staking/get-staked-balance.d.ts +21 -0
  245. package/dist/esm/queries/staking/get-staked-balance.d.ts.map +1 -0
  246. package/dist/esm/queries/staking/get-staked-balance.js +26 -0
  247. package/dist/esm/queries/staking/get-staking-provider-info.d.ts +24 -0
  248. package/dist/esm/queries/staking/get-staking-provider-info.d.ts.map +1 -0
  249. package/dist/esm/queries/staking/get-staking-provider-info.js +22 -0
  250. package/dist/esm/queries/staking/get-staking-providers.d.ts +20 -0
  251. package/dist/esm/queries/staking/get-staking-providers.d.ts.map +1 -0
  252. package/dist/esm/queries/staking/get-staking-providers.js +20 -0
  253. package/dist/esm/queries/staking/get-staking-quote.d.ts +21 -0
  254. package/dist/esm/queries/staking/get-staking-quote.d.ts.map +1 -0
  255. package/dist/esm/queries/staking/get-staking-quote.js +26 -0
  256. package/dist/{cjs/core/emitter/types/events.js → esm/queries/streaming-updates.test.d.ts} +2 -2
  257. package/dist/esm/queries/streaming-updates.test.d.ts.map +1 -0
  258. package/dist/esm/queries/streaming-updates.test.js +85 -0
  259. package/dist/esm/queries/swap/get-swap-quote.d.ts +1 -1
  260. package/dist/esm/queries/swap/get-swap-quote.d.ts.map +1 -1
  261. package/dist/esm/queries/swap/get-swap-quote.js +4 -2
  262. package/dist/esm/queries/transaction/get-transaction-status.d.ts +1 -1
  263. package/dist/esm/queries/transaction/get-transaction-status.d.ts.map +1 -1
  264. package/dist/esm/queries/transaction/get-transaction-status.js +4 -1
  265. package/dist/esm/staking/index.d.ts +10 -0
  266. package/dist/esm/staking/index.d.ts.map +1 -0
  267. package/dist/esm/staking/index.js +8 -0
  268. package/dist/esm/staking/tonstakers/index.d.ts +9 -0
  269. package/dist/esm/staking/tonstakers/index.d.ts.map +1 -0
  270. package/dist/esm/staking/tonstakers/index.js +8 -0
  271. package/dist/esm/types/connector.d.ts +15 -3
  272. package/dist/esm/types/connector.d.ts.map +1 -1
  273. package/dist/esm/types/connector.js +4 -1
  274. package/dist/esm/types/provider.d.ts +2 -2
  275. package/dist/esm/types/provider.d.ts.map +1 -1
  276. package/dist/esm/utils/index.d.ts +1 -1
  277. package/dist/esm/utils/index.d.ts.map +1 -1
  278. package/dist/esm/utils/index.js +1 -1
  279. package/docs/actions.md +112 -5
  280. package/docs/connectors.md +4 -4
  281. package/docs/staking.md +58 -0
  282. package/package.json +23 -10
  283. package/src/actions/balances/watch-balance-by-address.ts +35 -0
  284. package/src/actions/balances/watch-balance.ts +56 -0
  285. package/src/actions/connectors/add-connector.ts +4 -4
  286. package/src/actions/index.ts +48 -0
  287. package/src/actions/jettons/watch-jettons-by-address.ts +35 -0
  288. package/src/actions/jettons/watch-jettons.ts +56 -0
  289. package/src/actions/network/get-api-client.ts +22 -0
  290. package/src/actions/network/has-streaming-provider.ts +19 -0
  291. package/src/actions/providers/register-provider.ts +3 -2
  292. package/src/actions/staking/build-stake-transaction.ts +28 -0
  293. package/src/actions/staking/get-staked-balance.ts +34 -0
  294. package/src/actions/staking/get-staking-manager.ts +20 -0
  295. package/src/actions/staking/get-staking-provider-info.ts +29 -0
  296. package/src/actions/staking/get-staking-providers.ts +18 -0
  297. package/src/actions/staking/get-staking-quote.ts +30 -0
  298. package/src/actions/transaction/watch-transactions-by-address.ts +35 -0
  299. package/src/actions/transaction/watch-transactions.ts +56 -0
  300. package/src/connectors/tonconnect/connectors/ton-connect-connector.ts +109 -74
  301. package/src/connectors/tonconnect/index.ts +5 -2
  302. package/src/core/app-kit/services/app-kit.ts +29 -15
  303. package/src/core/app-kit/types/config.ts +13 -5
  304. package/src/core/app-kit/types/events.ts +6 -5
  305. package/src/core/emitter/index.ts +2 -2
  306. package/src/core/streaming/index.ts +30 -0
  307. package/src/index.ts +2 -0
  308. package/src/queries/balances/get-balance-by-address.ts +29 -2
  309. package/src/queries/index.ts +39 -0
  310. package/src/queries/jettons/get-jetton-balance-by-address.ts +36 -2
  311. package/src/queries/jettons/get-jetton-info.ts +5 -2
  312. package/src/queries/jettons/get-jetton-wallet-address.ts +5 -2
  313. package/src/queries/jettons/get-jettons-by-address.ts +48 -2
  314. package/src/queries/network/get-block-number.ts +5 -2
  315. package/src/queries/nft/get-nft.ts +5 -2
  316. package/src/queries/nft/get-nfts-by-address.ts +5 -2
  317. package/src/queries/staking/build-stake-transaction.ts +79 -0
  318. package/src/queries/staking/get-staked-balance.ts +60 -0
  319. package/src/queries/staking/get-staking-provider-info.ts +63 -0
  320. package/src/queries/staking/get-staking-providers.ts +52 -0
  321. package/src/queries/staking/get-staking-quote.ts +60 -0
  322. package/src/queries/streaming-updates.test.ts +104 -0
  323. package/src/queries/swap/get-swap-quote.ts +5 -2
  324. package/src/queries/transaction/get-transaction-status.ts +5 -1
  325. package/src/staking/index.ts +21 -0
  326. package/src/staking/tonstakers/index.ts +9 -0
  327. package/src/types/connector.ts +21 -4
  328. package/src/types/provider.ts +2 -2
  329. package/src/utils/index.ts +1 -1
  330. package/dist/cjs/core/emitter/services/emitter.d.ts +0 -18
  331. package/dist/cjs/core/emitter/services/emitter.d.ts.map +0 -1
  332. package/dist/cjs/core/emitter/services/emitter.js +0 -47
  333. package/dist/cjs/core/emitter/types/events.d.ts +0 -16
  334. package/dist/cjs/core/emitter/types/events.d.ts.map +0 -1
  335. package/dist/esm/core/emitter/services/emitter.d.ts +0 -18
  336. package/dist/esm/core/emitter/services/emitter.d.ts.map +0 -1
  337. package/dist/esm/core/emitter/services/emitter.js +0 -43
  338. package/dist/esm/core/emitter/types/events.d.ts +0 -16
  339. package/dist/esm/core/emitter/types/events.d.ts.map +0 -1
  340. package/src/core/emitter/services/emitter.ts +0 -53
  341. package/src/core/emitter/types/events.ts +0 -18
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { AppKit } from '../../core/app-kit/services/app-kit';
9
+ import type { Network } from '../../types/network';
10
+ export type HasStreamingProviderReturnType = boolean;
11
+ /**
12
+ * Check if a streaming provider is registered for a specific network.
13
+ */
14
+ export declare const hasStreamingProvider: (appKit: AppKit, network: Network) => HasStreamingProviderReturnType;
15
+ //# sourceMappingURL=has-streaming-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has-streaming-provider.d.ts","sourceRoot":"","sources":["../../../../src/actions/network/has-streaming-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,MAAM,8BAA8B,GAAG,OAAO,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,EAAE,SAAS,OAAO,KAAG,8BAEvE,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ /**
9
+ * Check if a streaming provider is registered for a specific network.
10
+ */
11
+ export const hasStreamingProvider = (appKit, network) => {
12
+ return appKit.streamingManager.hasProvider(network);
13
+ };
@@ -5,9 +5,9 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
7
  */
8
- import type { Provider } from '../../types/provider';
8
+ import type { ProviderInput } from '@ton/walletkit';
9
9
  import type { AppKit } from '../../core/app-kit';
10
- export type RegisterProviderOptions = Provider;
10
+ export type RegisterProviderOptions = ProviderInput;
11
11
  /**
12
12
  * Register provider
13
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"register-provider.d.ts","sourceRoot":"","sources":["../../../../src/actions/providers/register-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,UAAU,uBAAuB,KAAG,IAEpF,CAAC"}
1
+ {"version":3,"file":"register-provider.d.ts","sourceRoot":"","sources":["../../../../src/actions/providers/register-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,uBAAuB,GAAG,aAAa,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,UAAU,uBAAuB,KAAG,IAEpF,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { StakeParams } from '@ton/walletkit';
9
+ import type { TransactionRequest } from '../../types/transaction';
10
+ import type { AppKit } from '../../core/app-kit';
11
+ export type BuildStakeTransactionOptions = StakeParams & {
12
+ providerId?: string;
13
+ };
14
+ export type BuildStakeTransactionReturnType = Promise<TransactionRequest>;
15
+ /**
16
+ * Build stake transaction
17
+ */
18
+ export declare const buildStakeTransaction: (appKit: AppKit, options: BuildStakeTransactionOptions) => BuildStakeTransactionReturnType;
19
+ //# sourceMappingURL=build-stake-transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-stake-transaction.d.ts","sourceRoot":"","sources":["../../../../src/actions/staking/build-stake-transaction.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,4BAA4B,GAAG,WAAW,GAAG;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAC9B,QAAQ,MAAM,EACd,SAAS,4BAA4B,KACtC,+BAEF,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ /**
9
+ * Build stake transaction
10
+ */
11
+ export const buildStakeTransaction = async (appKit, options) => {
12
+ return appKit.stakingManager.buildStakeTransaction(options, options.providerId);
13
+ };
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { StakingBalance, UserFriendlyAddress, Network } from '@ton/walletkit';
9
+ import type { AppKit } from '../../core/app-kit';
10
+ export type GetStakedBalanceOptions = {
11
+ userAddress: UserFriendlyAddress;
12
+ network?: Network;
13
+ providerId?: string;
14
+ };
15
+ export type GetStakedBalanceReturnType = Promise<StakingBalance>;
16
+ /**
17
+ * Get staked balance
18
+ */
19
+ export declare const getStakedBalance: (appKit: AppKit, options: GetStakedBalanceOptions) => GetStakedBalanceReturnType;
20
+ //# sourceMappingURL=get-staked-balance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-staked-balance.d.ts","sourceRoot":"","sources":["../../../../src/actions/staking/get-staked-balance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,MAAM,uBAAuB,GAAG;IAClC,WAAW,EAAE,mBAAmB,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,gBAAgB,GACzB,QAAQ,MAAM,EACd,SAAS,uBAAuB,KACjC,0BAMF,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { resolveNetwork } from '../../utils';
9
+ /**
10
+ * Get staked balance
11
+ */
12
+ export const getStakedBalance = async (appKit, options) => {
13
+ return appKit.stakingManager.getStakedBalance(options.userAddress, resolveNetwork(appKit, options.network), options.providerId);
14
+ };
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { StakingManager } from '@ton/walletkit';
9
+ import type { AppKit } from '../../core/app-kit';
10
+ export type GetStakingManagerReturnType = StakingManager;
11
+ /**
12
+ * Get staking manager instance
13
+ */
14
+ export declare const getStakingManager: (appKit: AppKit) => GetStakingManagerReturnType;
15
+ //# sourceMappingURL=get-staking-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-staking-manager.d.ts","sourceRoot":"","sources":["../../../../src/actions/staking/get-staking-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,2BAA2B,GAAG,cAAc,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,KAAG,2BAElD,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ /**
9
+ * Get staking manager instance
10
+ */
11
+ export const getStakingManager = (appKit) => {
12
+ return appKit.stakingManager;
13
+ };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { StakingProviderInfo, Network } from '@ton/walletkit';
9
+ import type { AppKit } from '../../core/app-kit';
10
+ export type GetStakingProviderInfoOptions = {
11
+ network?: Network;
12
+ providerId?: string;
13
+ };
14
+ export type GetStakingProviderInfoReturnType = Promise<StakingProviderInfo>;
15
+ /**
16
+ * Get staking provider info
17
+ */
18
+ export declare const getStakingProviderInfo: (appKit: AppKit, options?: GetStakingProviderInfoOptions) => GetStakingProviderInfoReturnType;
19
+ //# sourceMappingURL=get-staking-provider-info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-staking-provider-info.d.ts","sourceRoot":"","sources":["../../../../src/actions/staking/get-staking-provider-info.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,6BAA6B,GAAG;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAC/B,QAAQ,MAAM,EACd,UAAS,6BAAkC,KAC5C,gCAEF,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { resolveNetwork } from '../../utils';
9
+ /**
10
+ * Get staking provider info
11
+ */
12
+ export const getStakingProviderInfo = async (appKit, options = {}) => {
13
+ return appKit.stakingManager.getStakingProviderInfo(resolveNetwork(appKit, options.network), options.providerId);
14
+ };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { AppKit } from '../../core/app-kit';
9
+ export type GetStakingProvidersReturnType = string[];
10
+ /**
11
+ * Get available staking provider IDs
12
+ */
13
+ export declare const getStakingProviders: (appKit: AppKit) => GetStakingProvidersReturnType;
14
+ //# sourceMappingURL=get-staking-providers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-staking-providers.d.ts","sourceRoot":"","sources":["../../../../src/actions/staking/get-staking-providers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,6BAA6B,GAAG,MAAM,EAAE,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,MAAM,KAAG,6BAEpD,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ /**
9
+ * Get available staking provider IDs
10
+ */
11
+ export const getStakingProviders = (appKit) => {
12
+ return appKit.stakingManager.getRegisteredProviders();
13
+ };
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { StakingQuote, StakingQuoteParams } from '@ton/walletkit';
9
+ import type { AppKit } from '../../core/app-kit';
10
+ export type GetStakingQuoteOptions = StakingQuoteParams & {
11
+ providerId?: string;
12
+ };
13
+ export type GetStakingQuoteReturnType = Promise<StakingQuote>;
14
+ /**
15
+ * Get staking quote
16
+ */
17
+ export declare const getStakingQuote: (appKit: AppKit, options: GetStakingQuoteOptions) => GetStakingQuoteReturnType;
18
+ //# sourceMappingURL=get-staking-quote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-staking-quote.d.ts","sourceRoot":"","sources":["../../../../src/actions/staking/get-staking-quote.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,GAAG;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,eAAe,GAAU,QAAQ,MAAM,EAAE,SAAS,sBAAsB,KAAG,yBAOvF,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { resolveNetwork } from '../../utils';
9
+ /**
10
+ * Get staking quote
11
+ */
12
+ export const getStakingQuote = async (appKit, options) => {
13
+ const optionsWithNetwork = {
14
+ ...options,
15
+ network: resolveNetwork(appKit, options.network),
16
+ };
17
+ return appKit.stakingManager.getQuote(optionsWithNetwork, options.providerId);
18
+ };
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { Address } from '@ton/core';
9
+ import type { TransactionsUpdate, Network } from '@ton/walletkit';
10
+ import type { AppKit } from '../../core/app-kit';
11
+ export interface WatchTransactionsByAddressOptions {
12
+ address: string | Address;
13
+ onChange: (update: TransactionsUpdate) => void;
14
+ network?: Network;
15
+ }
16
+ export type WatchTransactionsByAddressReturnType = () => void;
17
+ /**
18
+ * Watch transactions by address.
19
+ */
20
+ export declare const watchTransactionsByAddress: (appKit: AppKit, options: WatchTransactionsByAddressOptions) => WatchTransactionsByAddressReturnType;
21
+ //# sourceMappingURL=watch-transactions-by-address.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watch-transactions-by-address.d.ts","sourceRoot":"","sources":["../../../../src/actions/transaction/watch-transactions-by-address.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,WAAW,iCAAiC;IAC9C,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,MAAM,oCAAoC,GAAG,MAAM,IAAI,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,0BAA0B,GACnC,QAAQ,MAAM,EACd,SAAS,iCAAiC,KAC3C,oCAMF,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { Address } from '@ton/core';
9
+ import { resolveNetwork } from '../../utils/network/resolve-network';
10
+ /**
11
+ * Watch transactions by address.
12
+ */
13
+ export const watchTransactionsByAddress = (appKit, options) => {
14
+ const { address, network, onChange } = options;
15
+ const addressString = Address.isAddress(address) ? address.toString() : Address.parse(address).toString();
16
+ const resolvedNetwork = resolveNetwork(appKit, network);
17
+ return appKit.streamingManager.watchTransactions(resolvedNetwork, addressString, onChange);
18
+ };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { TransactionsUpdate, Network } from '@ton/walletkit';
9
+ import type { AppKit } from '../../core/app-kit';
10
+ export interface WatchTransactionsOptions {
11
+ onChange: (update: TransactionsUpdate) => void;
12
+ network?: Network;
13
+ }
14
+ export type WatchTransactionsReturnType = () => void;
15
+ /**
16
+ * Watch transactions for the selected wallet.
17
+ */
18
+ export declare const watchTransactions: (appKit: AppKit, options: WatchTransactionsOptions) => WatchTransactionsReturnType;
19
+ //# sourceMappingURL=watch-transactions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watch-transactions.d.ts","sourceRoot":"","sources":["../../../../src/actions/transaction/watch-transactions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAKjD,MAAM,WAAW,wBAAwB;IACrC,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,MAAM,2BAA2B,GAAG,MAAM,IAAI,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,EAAE,SAAS,wBAAwB,KAAG,2BA8BrF,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { WALLETS_EVENTS } from '../../core/app-kit';
9
+ import { getSelectedWallet } from '../wallets/get-selected-wallet';
10
+ import { watchTransactionsByAddress } from './watch-transactions-by-address';
11
+ /**
12
+ * Watch transactions for the selected wallet.
13
+ */
14
+ export const watchTransactions = (appKit, options) => {
15
+ const { network, onChange } = options;
16
+ let unsubscribe = null;
17
+ const updateSubscription = () => {
18
+ if (unsubscribe) {
19
+ unsubscribe();
20
+ unsubscribe = null;
21
+ }
22
+ const selectedWallet = getSelectedWallet(appKit);
23
+ if (selectedWallet) {
24
+ unsubscribe = watchTransactionsByAddress(appKit, {
25
+ address: selectedWallet.getAddress(),
26
+ network: network ?? selectedWallet.getNetwork(),
27
+ onChange,
28
+ });
29
+ }
30
+ };
31
+ const offSelection = appKit.emitter.on(WALLETS_EVENTS.SELECTION_CHANGED, updateSubscription);
32
+ const offUpdate = appKit.emitter.on(WALLETS_EVENTS.UPDATED, updateSubscription);
33
+ updateSubscription();
34
+ return () => {
35
+ if (unsubscribe)
36
+ unsubscribe();
37
+ offSelection();
38
+ offUpdate();
39
+ };
40
+ };
@@ -7,29 +7,16 @@
7
7
  */
8
8
  import { TonConnectUI } from '@tonconnect/ui';
9
9
  import type { TonConnectUiCreateOptions } from '@tonconnect/ui';
10
- import type { Network } from '../../../types/network';
11
10
  import type { Connector, ConnectorMetadata } from '../../../types/connector';
12
- import type { WalletInterface } from '../../../types/wallet';
13
- import type { AppKitEmitter } from '../../../core/app-kit';
14
- import type { AppKitNetworkManager } from '../../../core/network';
15
11
  export interface TonConnectConnectorConfig {
16
12
  id?: string;
17
13
  metadata?: ConnectorMetadata;
18
14
  tonConnectOptions?: TonConnectUiCreateOptions;
19
15
  tonConnectUI?: TonConnectUI;
20
16
  }
21
- export declare class TonConnectConnector implements Connector {
22
- readonly id: string;
23
- readonly type = "tonconnect";
24
- readonly metadata: ConnectorMetadata;
25
- readonly tonConnectUI: TonConnectUI;
26
- private emitter;
27
- private unsubscribeTonConnect;
28
- constructor(config: TonConnectConnectorConfig);
29
- initialize(emitter: AppKitEmitter, networkManager: AppKitNetworkManager): Promise<void>;
30
- destroy(): void;
31
- connectWallet(network?: Network): Promise<void>;
32
- disconnectWallet(): Promise<void>;
33
- getConnectedWallets(): WalletInterface[];
34
- }
17
+ export type TonConnectConnector = Connector & {
18
+ type: 'tonconnect';
19
+ tonConnectUI: TonConnectUI | null;
20
+ };
21
+ export declare const createTonConnectConnector: (config: TonConnectConnectorConfig) => import("../../..").ConnectorFactory;
35
22
  //# sourceMappingURL=ton-connect-connector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ton-connect-connector.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/tonconnect/connectors/ton-connect-connector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAGtD,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,MAAM,WAAW,yBAAyB;IACtC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,YAAY,CAAC,EAAE,YAAY,CAAC;CAC/B;AAED,qBAAa,mBAAoB,YAAW,SAAS;IACjD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IAEpC,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,qBAAqB,CAA6B;gBAE9C,MAAM,EAAE,yBAAyB;IAiBvC,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB7F,OAAO,IAAI,IAAI;IAMT,aAAa,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/C,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC,mBAAmB,IAAI,eAAe,EAAE;CAe3C"}
1
+ {"version":3,"file":"ton-connect-connector.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/tonconnect/connectors/ton-connect-connector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAIhE,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAK7E,MAAM,WAAW,yBAAyB;IACtC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,YAAY,CAAC,EAAE,YAAY,CAAC;CAC/B;AAED,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG;IAC1C,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,QAAQ,yBAAyB,wCAgH1E,CAAC"}
@@ -9,65 +9,96 @@ import { TonConnectUI } from '@tonconnect/ui';
9
9
  import { TonConnectWalletAdapter } from '../adapters/ton-connect-wallet-adapter';
10
10
  import { CONNECTOR_EVENTS, NETWORKS_EVENTS } from '../../../core/app-kit';
11
11
  import { TONCONNECT_DEFAULT_CONNECTOR_ID } from '../constants/id';
12
- export class TonConnectConnector {
13
- constructor(config) {
14
- this.type = 'tonconnect';
15
- this.emitter = null;
16
- this.unsubscribeTonConnect = null;
17
- if (config.tonConnectOptions && config.tonConnectUI) {
18
- // eslint-disable-next-line no-console
19
- console.warn('TonConnectConnector: both tonConnectOptions and tonConnectUI are provided, using tonConnectUI');
20
- }
21
- this.id = config.id ?? TONCONNECT_DEFAULT_CONNECTOR_ID;
22
- this.tonConnectUI = config?.tonConnectUI ?? new TonConnectUI(config.tonConnectOptions);
23
- this.metadata = {
24
- name: 'TonConnect',
25
- iconUrl: 'https://avatars.githubusercontent.com/u/113980577',
26
- ...config.metadata,
27
- };
28
- }
29
- async initialize(emitter, networkManager) {
30
- this.emitter = emitter;
31
- // Subscribe to TonConnect status changes
32
- this.unsubscribeTonConnect = this.tonConnectUI.onStatusChange((wallet) => {
33
- const wallets = this.getConnectedWallets();
34
- if (wallet) {
35
- this.emitter?.emit(CONNECTOR_EVENTS.CONNECTED, { wallets, connectorId: this.id }, this.id);
12
+ import { createConnector } from '../../../types/connector';
13
+ export const createTonConnectConnector = (config) => {
14
+ return createConnector(({ eventEmitter, networkManager, ssr }) => {
15
+ let originalTonConnectUI = null;
16
+ let unsubscribeTonConnect = null;
17
+ const id = config.id ?? TONCONNECT_DEFAULT_CONNECTOR_ID;
18
+ function getTonConnectUI() {
19
+ if (originalTonConnectUI) {
20
+ return originalTonConnectUI;
21
+ }
22
+ if (ssr && typeof window === 'undefined') {
23
+ return null;
24
+ }
25
+ // check if we have pre-defined UI
26
+ if (config.tonConnectUI) {
27
+ originalTonConnectUI = config.tonConnectUI;
36
28
  }
37
29
  else {
38
- this.emitter?.emit(CONNECTOR_EVENTS.DISCONNECTED, { connectorId: this.id }, this.id);
30
+ originalTonConnectUI = new TonConnectUI(config.tonConnectOptions);
31
+ }
32
+ setupListeners();
33
+ // restore connection
34
+ if (originalTonConnectUI) {
35
+ originalTonConnectUI.connector.restoreConnection();
39
36
  }
40
- });
41
- // Set default network and subscribe to changes
42
- this.tonConnectUI.setConnectionNetwork(networkManager.getDefaultNetwork()?.chainId);
43
- this.emitter?.on(NETWORKS_EVENTS.DEFAULT_CHANGED, ({ payload }) => {
44
- this.tonConnectUI.setConnectionNetwork(payload.network?.chainId);
45
- });
46
- // Restore existing connection
47
- await this.tonConnectUI.connector.restoreConnection();
48
- }
49
- destroy() {
50
- this.unsubscribeTonConnect?.();
51
- this.unsubscribeTonConnect = null;
52
- this.emitter = null;
53
- }
54
- async connectWallet(network) {
55
- this.tonConnectUI.setConnectionNetwork(network?.chainId);
56
- await this.tonConnectUI.openModal();
57
- }
58
- async disconnectWallet() {
59
- await this.tonConnectUI.disconnect();
60
- }
61
- getConnectedWallets() {
62
- if (this.tonConnectUI.connected && this.tonConnectUI.wallet) {
63
- const wallet = this.tonConnectUI.wallet;
64
- const walletAdapter = new TonConnectWalletAdapter({
65
- connectorId: this.id,
66
- tonConnectWallet: wallet,
67
- tonConnectUI: this.tonConnectUI,
37
+ return originalTonConnectUI;
38
+ }
39
+ function getConnectedWallets() {
40
+ const ui = getTonConnectUI();
41
+ if (ui && ui.connected && ui.wallet) {
42
+ const wallet = ui.wallet;
43
+ return [
44
+ new TonConnectWalletAdapter({
45
+ connectorId: id,
46
+ tonConnectWallet: wallet,
47
+ tonConnectUI: ui,
48
+ }),
49
+ ];
50
+ }
51
+ return [];
52
+ }
53
+ function setupListeners() {
54
+ if (!originalTonConnectUI || unsubscribeTonConnect) {
55
+ return;
56
+ }
57
+ unsubscribeTonConnect = originalTonConnectUI.onStatusChange((wallet) => {
58
+ const wallets = getConnectedWallets();
59
+ if (wallet) {
60
+ eventEmitter.emit(CONNECTOR_EVENTS.CONNECTED, { wallets, connectorId: id }, id);
61
+ }
62
+ else {
63
+ eventEmitter.emit(CONNECTOR_EVENTS.DISCONNECTED, { connectorId: id }, id);
64
+ }
65
+ });
66
+ // Set default network and subscribe to changes
67
+ originalTonConnectUI.setConnectionNetwork(networkManager.getDefaultNetwork()?.chainId);
68
+ eventEmitter.on(NETWORKS_EVENTS.DEFAULT_CHANGED, ({ payload }) => {
69
+ if (originalTonConnectUI) {
70
+ originalTonConnectUI.setConnectionNetwork(payload.network?.chainId);
71
+ }
68
72
  });
69
- return [walletAdapter];
70
73
  }
71
- return [];
72
- }
73
- }
74
+ return {
75
+ id,
76
+ type: 'tonconnect',
77
+ metadata: {
78
+ name: 'TonConnect',
79
+ iconUrl: 'https://avatars.githubusercontent.com/u/113980577',
80
+ ...config.metadata,
81
+ },
82
+ get tonConnectUI() {
83
+ return getTonConnectUI();
84
+ },
85
+ getConnectedWallets,
86
+ async connectWallet() {
87
+ const ui = getTonConnectUI();
88
+ if (ui) {
89
+ await ui.openModal();
90
+ }
91
+ },
92
+ async disconnectWallet() {
93
+ const ui = getTonConnectUI();
94
+ if (ui) {
95
+ await ui.disconnect();
96
+ }
97
+ },
98
+ destroy() {
99
+ unsubscribeTonConnect?.();
100
+ originalTonConnectUI = null;
101
+ },
102
+ };
103
+ });
104
+ };
@@ -21,7 +21,6 @@
21
21
  */
22
22
  export { TonConnectWalletAdapter } from './adapters/ton-connect-wallet-adapter';
23
23
  export type { TonConnectWalletAdapterConfig } from './adapters/ton-connect-wallet-adapter';
24
- export { TonConnectConnector } from './connectors/ton-connect-connector';
24
+ export { createTonConnectConnector, type TonConnectConnectorConfig, type TonConnectConnector, } from './connectors/ton-connect-connector';
25
25
  export { TONCONNECT_DEFAULT_CONNECTOR_ID } from './constants/id';
26
- export type { TonConnectConnectorConfig } from './connectors/ton-connect-connector';
27
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/connectors/tonconnect/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,YAAY,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AAG3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAC;AACjE,YAAY,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/connectors/tonconnect/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,YAAY,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AAG3F,OAAO,EACH,yBAAyB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,GAC3B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,gBAAgB,CAAC"}
@@ -22,5 +22,5 @@
22
22
  // Adapter exports
23
23
  export { TonConnectWalletAdapter } from './adapters/ton-connect-wallet-adapter';
24
24
  // Connector exports
25
- export { TonConnectConnector } from './connectors/ton-connect-connector';
25
+ export { createTonConnectConnector, } from './connectors/ton-connect-connector';
26
26
  export { TONCONNECT_DEFAULT_CONNECTOR_ID } from './constants/id';