@ton/appkit 0.0.2 → 0.0.4-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/.turbo/turbo-build.log +4 -4
  2. package/CHANGELOG.md +24 -0
  3. package/README.md +6 -0
  4. package/dist/cjs/actions/balances/get-balance-by-address.d.ts +1 -2
  5. package/dist/cjs/actions/balances/get-balance-by-address.d.ts.map +1 -1
  6. package/dist/cjs/actions/balances/get-balance-by-address.js +2 -1
  7. package/dist/cjs/actions/balances/get-balance.d.ts +2 -1
  8. package/dist/cjs/actions/balances/get-balance.d.ts.map +1 -1
  9. package/dist/cjs/actions/balances/get-balance.js +1 -1
  10. package/dist/cjs/actions/connectors/connect.d.ts.map +1 -1
  11. package/dist/cjs/actions/connectors/connect.js +3 -1
  12. package/dist/cjs/actions/index.d.ts +3 -0
  13. package/dist/cjs/actions/index.d.ts.map +1 -1
  14. package/dist/cjs/actions/index.js +7 -1
  15. package/dist/cjs/actions/jettons/get-jetton-balance.d.ts +1 -1
  16. package/dist/cjs/actions/jettons/get-jetton-balance.d.ts.map +1 -1
  17. package/dist/cjs/actions/jettons/get-jetton-balance.js +2 -1
  18. package/dist/cjs/actions/jettons/get-jetton-info.d.ts +1 -1
  19. package/dist/cjs/actions/jettons/get-jetton-info.d.ts.map +1 -1
  20. package/dist/cjs/actions/jettons/get-jetton-info.js +2 -2
  21. package/dist/cjs/actions/jettons/get-jetton-wallet-address.d.ts +1 -1
  22. package/dist/cjs/actions/jettons/get-jetton-wallet-address.d.ts.map +1 -1
  23. package/dist/cjs/actions/jettons/get-jetton-wallet-address.js +2 -1
  24. package/dist/cjs/actions/jettons/get-jettons-by-address.d.ts +1 -1
  25. package/dist/cjs/actions/jettons/get-jettons-by-address.d.ts.map +1 -1
  26. package/dist/cjs/actions/jettons/get-jettons-by-address.js +2 -1
  27. package/dist/cjs/actions/jettons/get-jettons.d.ts +2 -1
  28. package/dist/cjs/actions/jettons/get-jettons.d.ts.map +1 -1
  29. package/dist/cjs/actions/network/get-default-network.d.ts +15 -0
  30. package/dist/cjs/actions/network/get-default-network.d.ts.map +1 -0
  31. package/dist/cjs/actions/network/get-default-network.js +17 -0
  32. package/dist/cjs/actions/network/get-network.d.ts +1 -1
  33. package/dist/cjs/actions/network/get-network.d.ts.map +1 -1
  34. package/dist/cjs/actions/network/get-networks.d.ts +1 -1
  35. package/dist/cjs/actions/network/get-networks.d.ts.map +1 -1
  36. package/dist/cjs/actions/network/set-default-network.d.ts +20 -0
  37. package/dist/cjs/actions/network/set-default-network.d.ts.map +1 -0
  38. package/dist/cjs/actions/network/set-default-network.js +19 -0
  39. package/dist/cjs/actions/network/watch-default-network.d.ts +18 -0
  40. package/dist/cjs/actions/network/watch-default-network.d.ts.map +1 -0
  41. package/dist/cjs/actions/network/watch-default-network.js +23 -0
  42. package/dist/cjs/actions/network/watch-networks.d.ts +1 -1
  43. package/dist/cjs/actions/network/watch-networks.d.ts.map +1 -1
  44. package/dist/cjs/actions/nft/get-nft.d.ts +2 -2
  45. package/dist/cjs/actions/nft/get-nft.d.ts.map +1 -1
  46. package/dist/cjs/actions/nft/get-nft.js +2 -1
  47. package/dist/cjs/actions/nft/get-nfts-by-address.d.ts +1 -1
  48. package/dist/cjs/actions/nft/get-nfts-by-address.d.ts.map +1 -1
  49. package/dist/cjs/actions/nft/get-nfts-by-address.js +2 -1
  50. package/dist/cjs/actions/nft/get-nfts.d.ts +2 -1
  51. package/dist/cjs/actions/nft/get-nfts.d.ts.map +1 -1
  52. package/dist/cjs/actions/signing/sign-binary.d.ts +1 -1
  53. package/dist/cjs/actions/signing/sign-binary.d.ts.map +1 -1
  54. package/dist/cjs/actions/signing/sign-binary.js +2 -1
  55. package/dist/cjs/actions/signing/sign-cell.d.ts +1 -1
  56. package/dist/cjs/actions/signing/sign-cell.d.ts.map +1 -1
  57. package/dist/cjs/actions/signing/sign-cell.js +2 -1
  58. package/dist/cjs/actions/signing/sign-text.d.ts +1 -1
  59. package/dist/cjs/actions/signing/sign-text.d.ts.map +1 -1
  60. package/dist/cjs/actions/signing/sign-text.js +2 -1
  61. package/dist/cjs/actions/transaction/get-transaction-status.d.ts +1 -1
  62. package/dist/cjs/actions/transaction/get-transaction-status.d.ts.map +1 -1
  63. package/dist/cjs/actions/transaction/get-transaction-status.js +2 -2
  64. package/dist/cjs/connectors/tonconnect/adapters/ton-connect-wallet-adapter.d.ts +1 -1
  65. package/dist/cjs/connectors/tonconnect/adapters/ton-connect-wallet-adapter.d.ts.map +1 -1
  66. package/dist/cjs/connectors/tonconnect/adapters/ton-connect-wallet-adapter.js +2 -1
  67. package/dist/cjs/connectors/tonconnect/connectors/ton-connect-connector.d.ts +4 -2
  68. package/dist/cjs/connectors/tonconnect/connectors/ton-connect-connector.d.ts.map +1 -1
  69. package/dist/cjs/connectors/tonconnect/connectors/ton-connect-connector.js +8 -2
  70. package/dist/cjs/core/app-kit/constants/events.d.ts +1 -0
  71. package/dist/cjs/core/app-kit/constants/events.d.ts.map +1 -1
  72. package/dist/cjs/core/app-kit/constants/events.js +1 -0
  73. package/dist/cjs/core/app-kit/index.d.ts +1 -1
  74. package/dist/cjs/core/app-kit/index.d.ts.map +1 -1
  75. package/dist/cjs/core/app-kit/services/app-kit.d.ts +2 -2
  76. package/dist/cjs/core/app-kit/services/app-kit.d.ts.map +1 -1
  77. package/dist/cjs/core/app-kit/services/app-kit.js +4 -3
  78. package/dist/cjs/core/app-kit/types/config.d.ts +7 -0
  79. package/dist/cjs/core/app-kit/types/config.d.ts.map +1 -1
  80. package/dist/cjs/core/app-kit/types/events.d.ts +5 -0
  81. package/dist/cjs/core/app-kit/types/events.d.ts.map +1 -1
  82. package/dist/cjs/core/network/index.d.ts +10 -0
  83. package/dist/cjs/core/network/index.d.ts.map +1 -0
  84. package/dist/cjs/core/network/index.js +15 -0
  85. package/dist/cjs/core/network/services/app-kit-network-manager.d.ts +27 -0
  86. package/dist/cjs/core/network/services/app-kit-network-manager.d.ts.map +1 -0
  87. package/dist/cjs/core/{app-kit → network}/services/app-kit-network-manager.js +16 -1
  88. package/dist/cjs/index.d.ts +1 -0
  89. package/dist/cjs/index.d.ts.map +1 -1
  90. package/dist/cjs/index.js +1 -0
  91. package/dist/cjs/swap/dedust/index.d.ts +9 -0
  92. package/dist/cjs/swap/dedust/index.d.ts.map +1 -0
  93. package/dist/cjs/swap/dedust/index.js +24 -0
  94. package/dist/cjs/swap/index.d.ts +1 -1
  95. package/dist/cjs/swap/index.d.ts.map +1 -1
  96. package/dist/cjs/types/connector.d.ts +4 -3
  97. package/dist/cjs/types/connector.d.ts.map +1 -1
  98. package/dist/cjs/types/wallet.d.ts +2 -1
  99. package/dist/cjs/types/wallet.d.ts.map +1 -1
  100. package/dist/cjs/utils/index.d.ts +1 -0
  101. package/dist/cjs/utils/index.d.ts.map +1 -1
  102. package/dist/cjs/utils/index.js +1 -0
  103. package/dist/cjs/utils/network/resolve-network.d.ts +20 -0
  104. package/dist/cjs/utils/network/resolve-network.d.ts.map +1 -0
  105. package/dist/cjs/utils/network/resolve-network.js +31 -0
  106. package/dist/esm/actions/balances/get-balance-by-address.d.ts +1 -2
  107. package/dist/esm/actions/balances/get-balance-by-address.d.ts.map +1 -1
  108. package/dist/esm/actions/balances/get-balance-by-address.js +3 -2
  109. package/dist/esm/actions/balances/get-balance.d.ts +2 -1
  110. package/dist/esm/actions/balances/get-balance.d.ts.map +1 -1
  111. package/dist/esm/actions/balances/get-balance.js +1 -1
  112. package/dist/esm/actions/connectors/connect.d.ts.map +1 -1
  113. package/dist/esm/actions/connectors/connect.js +3 -1
  114. package/dist/esm/actions/index.d.ts +3 -0
  115. package/dist/esm/actions/index.d.ts.map +1 -1
  116. package/dist/esm/actions/index.js +3 -0
  117. package/dist/esm/actions/jettons/get-jetton-balance.d.ts +1 -1
  118. package/dist/esm/actions/jettons/get-jetton-balance.d.ts.map +1 -1
  119. package/dist/esm/actions/jettons/get-jetton-balance.js +3 -2
  120. package/dist/esm/actions/jettons/get-jetton-info.d.ts +1 -1
  121. package/dist/esm/actions/jettons/get-jetton-info.d.ts.map +1 -1
  122. package/dist/esm/actions/jettons/get-jetton-info.js +2 -2
  123. package/dist/esm/actions/jettons/get-jetton-wallet-address.d.ts +1 -1
  124. package/dist/esm/actions/jettons/get-jetton-wallet-address.d.ts.map +1 -1
  125. package/dist/esm/actions/jettons/get-jetton-wallet-address.js +3 -2
  126. package/dist/esm/actions/jettons/get-jettons-by-address.d.ts +1 -1
  127. package/dist/esm/actions/jettons/get-jettons-by-address.d.ts.map +1 -1
  128. package/dist/esm/actions/jettons/get-jettons-by-address.js +3 -2
  129. package/dist/esm/actions/jettons/get-jettons.d.ts +2 -1
  130. package/dist/esm/actions/jettons/get-jettons.d.ts.map +1 -1
  131. package/dist/esm/actions/network/get-default-network.d.ts +15 -0
  132. package/dist/esm/actions/network/get-default-network.d.ts.map +1 -0
  133. package/dist/esm/actions/network/get-default-network.js +13 -0
  134. package/dist/esm/actions/network/get-network.d.ts +1 -1
  135. package/dist/esm/actions/network/get-network.d.ts.map +1 -1
  136. package/dist/esm/actions/network/get-networks.d.ts +1 -1
  137. package/dist/esm/actions/network/get-networks.d.ts.map +1 -1
  138. package/dist/esm/actions/network/set-default-network.d.ts +20 -0
  139. package/dist/esm/actions/network/set-default-network.d.ts.map +1 -0
  140. package/dist/esm/actions/network/set-default-network.js +15 -0
  141. package/dist/esm/actions/network/watch-default-network.d.ts +18 -0
  142. package/dist/esm/actions/network/watch-default-network.d.ts.map +1 -0
  143. package/dist/esm/actions/network/watch-default-network.js +19 -0
  144. package/dist/esm/actions/network/watch-networks.d.ts +1 -1
  145. package/dist/esm/actions/network/watch-networks.d.ts.map +1 -1
  146. package/dist/esm/actions/nft/get-nft.d.ts +2 -2
  147. package/dist/esm/actions/nft/get-nft.d.ts.map +1 -1
  148. package/dist/esm/actions/nft/get-nft.js +3 -2
  149. package/dist/esm/actions/nft/get-nfts-by-address.d.ts +1 -1
  150. package/dist/esm/actions/nft/get-nfts-by-address.d.ts.map +1 -1
  151. package/dist/esm/actions/nft/get-nfts-by-address.js +3 -2
  152. package/dist/esm/actions/nft/get-nfts.d.ts +2 -1
  153. package/dist/esm/actions/nft/get-nfts.d.ts.map +1 -1
  154. package/dist/esm/actions/signing/sign-binary.d.ts +1 -1
  155. package/dist/esm/actions/signing/sign-binary.d.ts.map +1 -1
  156. package/dist/esm/actions/signing/sign-binary.js +2 -1
  157. package/dist/esm/actions/signing/sign-cell.d.ts +1 -1
  158. package/dist/esm/actions/signing/sign-cell.d.ts.map +1 -1
  159. package/dist/esm/actions/signing/sign-cell.js +2 -1
  160. package/dist/esm/actions/signing/sign-text.d.ts +1 -1
  161. package/dist/esm/actions/signing/sign-text.d.ts.map +1 -1
  162. package/dist/esm/actions/signing/sign-text.js +2 -1
  163. package/dist/esm/actions/transaction/get-transaction-status.d.ts +1 -1
  164. package/dist/esm/actions/transaction/get-transaction-status.d.ts.map +1 -1
  165. package/dist/esm/actions/transaction/get-transaction-status.js +2 -2
  166. package/dist/esm/connectors/tonconnect/adapters/ton-connect-wallet-adapter.d.ts +1 -1
  167. package/dist/esm/connectors/tonconnect/adapters/ton-connect-wallet-adapter.d.ts.map +1 -1
  168. package/dist/esm/connectors/tonconnect/adapters/ton-connect-wallet-adapter.js +2 -1
  169. package/dist/esm/connectors/tonconnect/connectors/ton-connect-connector.d.ts +4 -2
  170. package/dist/esm/connectors/tonconnect/connectors/ton-connect-connector.d.ts.map +1 -1
  171. package/dist/esm/connectors/tonconnect/connectors/ton-connect-connector.js +9 -3
  172. package/dist/esm/core/app-kit/constants/events.d.ts +1 -0
  173. package/dist/esm/core/app-kit/constants/events.d.ts.map +1 -1
  174. package/dist/esm/core/app-kit/constants/events.js +1 -0
  175. package/dist/esm/core/app-kit/index.d.ts +1 -1
  176. package/dist/esm/core/app-kit/index.d.ts.map +1 -1
  177. package/dist/esm/core/app-kit/services/app-kit.d.ts +2 -2
  178. package/dist/esm/core/app-kit/services/app-kit.d.ts.map +1 -1
  179. package/dist/esm/core/app-kit/services/app-kit.js +3 -2
  180. package/dist/esm/core/app-kit/types/config.d.ts +7 -0
  181. package/dist/esm/core/app-kit/types/config.d.ts.map +1 -1
  182. package/dist/esm/core/app-kit/types/events.d.ts +5 -0
  183. package/dist/esm/core/app-kit/types/events.d.ts.map +1 -1
  184. package/dist/esm/core/network/index.d.ts +10 -0
  185. package/dist/esm/core/network/index.d.ts.map +1 -0
  186. package/dist/esm/core/network/index.js +9 -0
  187. package/dist/esm/core/network/services/app-kit-network-manager.d.ts +27 -0
  188. package/dist/esm/core/network/services/app-kit-network-manager.d.ts.map +1 -0
  189. package/dist/esm/core/{app-kit → network}/services/app-kit-network-manager.js +16 -1
  190. package/dist/esm/index.d.ts +1 -0
  191. package/dist/esm/index.d.ts.map +1 -1
  192. package/dist/esm/index.js +1 -0
  193. package/dist/esm/swap/dedust/index.d.ts +9 -0
  194. package/dist/esm/swap/dedust/index.d.ts.map +1 -0
  195. package/dist/esm/swap/dedust/index.js +8 -0
  196. package/dist/esm/swap/index.d.ts +1 -1
  197. package/dist/esm/swap/index.d.ts.map +1 -1
  198. package/dist/esm/types/connector.d.ts +4 -3
  199. package/dist/esm/types/connector.d.ts.map +1 -1
  200. package/dist/esm/types/wallet.d.ts +2 -1
  201. package/dist/esm/types/wallet.d.ts.map +1 -1
  202. package/dist/esm/utils/index.d.ts +1 -0
  203. package/dist/esm/utils/index.d.ts.map +1 -1
  204. package/dist/esm/utils/index.js +1 -0
  205. package/dist/esm/utils/network/resolve-network.d.ts +20 -0
  206. package/dist/esm/utils/network/resolve-network.d.ts.map +1 -0
  207. package/dist/esm/utils/network/resolve-network.js +27 -0
  208. package/docs/actions.md +6 -0
  209. package/docs/connectors.md +6 -0
  210. package/docs/swap.md +25 -14
  211. package/package.json +15 -2
  212. package/src/actions/balances/get-balance-by-address.ts +4 -3
  213. package/src/actions/balances/get-balance.ts +3 -2
  214. package/src/actions/connectors/connect.ts +3 -1
  215. package/src/actions/index.ts +11 -0
  216. package/src/actions/jettons/get-jetton-balance.ts +4 -2
  217. package/src/actions/jettons/get-jetton-info.ts +3 -2
  218. package/src/actions/jettons/get-jetton-wallet-address.ts +4 -2
  219. package/src/actions/jettons/get-jettons-by-address.ts +4 -2
  220. package/src/actions/jettons/get-jettons.ts +2 -1
  221. package/src/actions/network/get-default-network.ts +19 -0
  222. package/src/actions/network/get-network.ts +1 -2
  223. package/src/actions/network/get-networks.ts +1 -2
  224. package/src/actions/network/set-default-network.ts +28 -0
  225. package/src/actions/network/watch-default-network.ts +34 -0
  226. package/src/actions/network/watch-networks.ts +1 -2
  227. package/src/actions/nft/get-nft.ts +5 -3
  228. package/src/actions/nft/get-nfts-by-address.ts +4 -2
  229. package/src/actions/nft/get-nfts.ts +2 -1
  230. package/src/actions/signing/sign-binary.ts +3 -3
  231. package/src/actions/signing/sign-cell.ts +3 -3
  232. package/src/actions/signing/sign-text.ts +3 -3
  233. package/src/actions/transaction/get-transaction-status.ts +3 -2
  234. package/src/connectors/tonconnect/adapters/ton-connect-wallet-adapter.ts +2 -1
  235. package/src/connectors/tonconnect/connectors/ton-connect-connector.ts +12 -3
  236. package/src/core/app-kit/constants/events.ts +1 -0
  237. package/src/core/app-kit/index.ts +1 -0
  238. package/src/core/app-kit/services/app-kit.ts +4 -4
  239. package/src/core/app-kit/types/config.ts +9 -0
  240. package/src/core/app-kit/types/events.ts +6 -0
  241. package/src/core/network/index.ts +10 -0
  242. package/src/core/network/services/app-kit-network-manager.ts +45 -0
  243. package/src/index.ts +1 -0
  244. package/src/swap/dedust/index.ts +9 -0
  245. package/src/swap/index.ts +14 -1
  246. package/src/types/connector.ts +4 -4
  247. package/src/types/wallet.ts +2 -1
  248. package/src/utils/index.ts +1 -0
  249. package/src/utils/network/resolve-network.ts +30 -0
  250. package/dist/cjs/core/app-kit/services/app-kit-network-manager.d.ts +0 -16
  251. package/dist/cjs/core/app-kit/services/app-kit-network-manager.d.ts.map +0 -1
  252. package/dist/esm/core/app-kit/services/app-kit-network-manager.d.ts +0 -16
  253. package/dist/esm/core/app-kit/services/app-kit-network-manager.d.ts.map +0 -1
  254. package/src/core/app-kit/services/app-kit-network-manager.ts +0 -27
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/swap/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/swap/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EACR,SAAS,EACT,WAAW,EACX,UAAU,EACV,OAAO,EACP,OAAO,EACP,SAAS,EACT,eAAe,EACf,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,WAAW,GACd,MAAM,gBAAgB,CAAC"}
@@ -5,9 +5,10 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
7
  */
8
- import type { NetworkManager } from '@ton/walletkit';
9
8
  import type { WalletInterface } from './wallet';
10
9
  import type { AppKitEmitter } from '../core/app-kit';
10
+ import type { AppKitNetworkManager } from '../core/network';
11
+ import type { Network } from './network';
11
12
  /**
12
13
  * Interface for wallet connectors
13
14
  */
@@ -18,11 +19,11 @@ export interface Connector {
18
19
  readonly type: string;
19
20
  readonly metadata: ConnectorMetadata;
20
21
  /** Initialize connector (restore connections, setup event listeners) */
21
- initialize(emitter: AppKitEmitter, networkManager: NetworkManager): Promise<void>;
22
+ initialize(emitter: AppKitEmitter, networkManager: AppKitNetworkManager): Promise<void>;
22
23
  /** Cleanup connector resources */
23
24
  destroy(): void;
24
25
  /** Connect a wallet */
25
- connectWallet(): Promise<void>;
26
+ connectWallet(network?: Network): Promise<void>;
26
27
  /** Disconnect a wallet */
27
28
  disconnectWallet(): Promise<void>;
28
29
  /** Get connected wallets */
@@ -1 +1 @@
1
- {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../../src/types/connector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IAErC,wEAAwE;IACxE,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElF,kCAAkC;IAClC,OAAO,IAAI,IAAI,CAAC;IAEhB,uBAAuB;IACvB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/B,0BAA0B;IAC1B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC,4BAA4B;IAC5B,mBAAmB,IAAI,eAAe,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB"}
1
+ {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../../src/types/connector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IAErC,wEAAwE;IACxE,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExF,kCAAkC;IAClC,OAAO,IAAI,IAAI,CAAC;IAEhB,uBAAuB;IACvB,aAAa,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,0BAA0B;IAC1B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC,4BAA4B;IAC5B,mBAAmB,IAAI,eAAe,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -5,9 +5,10 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
7
  */
8
- import type { Network, SendTransactionResponse, Hex, UserFriendlyAddress } from '@ton/walletkit';
8
+ import type { SendTransactionResponse, Hex, UserFriendlyAddress } from '@ton/walletkit';
9
9
  import type { TransactionRequest } from './transaction';
10
10
  import type { SignDataRequest, SignDataResponse } from './signing';
11
+ import type { Network } from './network';
11
12
  /**
12
13
  * Minimal wallet interface for appkit.
13
14
  * Only includes methods that require wallet-specific logic (signing, identity).
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/types/wallet.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,uBAAuB,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEjG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAEnE;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAM7B,6BAA6B;IAC7B,UAAU,IAAI,mBAAmB,CAAC;IAElC,gCAAgC;IAChC,YAAY,IAAI,GAAG,CAAC;IAEpB,iDAAiD;IACjD,UAAU,IAAI,OAAO,CAAC;IAEtB,mCAAmC;IACnC,WAAW,IAAI,MAAM,CAAC;IAMtB,oDAAoD;IACpD,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAE/E,oDAAoD;IACpD,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACjE"}
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/types/wallet.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAExF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAM7B,6BAA6B;IAC7B,UAAU,IAAI,mBAAmB,CAAC;IAElC,gCAAgC;IAChC,YAAY,IAAI,GAAG,CAAC;IAEpB,iDAAiD;IACjD,UAAU,IAAI,OAAO,CAAC;IAEtB,mCAAmC;IACnC,WAAW,IAAI,MAAM,CAAC;IAMtB,oDAAoD;IACpD,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAE/E,oDAAoD;IACpD,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACjE"}
@@ -18,5 +18,6 @@ export * from './predicate/is-string';
18
18
  export * from './promise/cancel-promise';
19
19
  export * from './promise/sleep';
20
20
  export * from './query/filter-query-options';
21
+ export * from './network/resolve-network';
21
22
  export * from './string/middle-ellipsis';
22
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC"}
@@ -18,4 +18,5 @@ export * from './predicate/is-string';
18
18
  export * from './promise/cancel-promise';
19
19
  export * from './promise/sleep';
20
20
  export * from './query/filter-query-options';
21
+ export * from './network/resolve-network';
21
22
  export * from './string/middle-ellipsis';
@@ -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 { Network } from '../../types/network';
9
+ import type { AppKit } from '../../core/app-kit';
10
+ /**
11
+ * Resolve the network to use for API requests.
12
+ *
13
+ * Priority:
14
+ * 1. Explicitly passed `network` parameter
15
+ * 2. Selected wallet's network
16
+ * 3. Configured default network
17
+ * 4. Mainnet (last resort)
18
+ */
19
+ export declare const resolveNetwork: (appKit: AppKit, network?: Network) => Network;
20
+ //# sourceMappingURL=resolve-network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-network.d.ts","sourceRoot":"","sources":["../../../../src/utils/network/resolve-network.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAIjD;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,EAAE,UAAU,OAAO,KAAG,OAOlE,CAAC"}
@@ -0,0 +1,27 @@
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 { Network } from '../../types/network';
9
+ import { getSelectedWallet } from '../../actions/wallets/get-selected-wallet';
10
+ import { getDefaultNetwork } from '../../actions/network/get-default-network';
11
+ /**
12
+ * Resolve the network to use for API requests.
13
+ *
14
+ * Priority:
15
+ * 1. Explicitly passed `network` parameter
16
+ * 2. Selected wallet's network
17
+ * 3. Configured default network
18
+ * 4. Mainnet (last resort)
19
+ */
20
+ export const resolveNetwork = (appKit, network) => {
21
+ if (network)
22
+ return network;
23
+ const wallet = getSelectedWallet(appKit);
24
+ if (wallet)
25
+ return wallet.getNetwork();
26
+ return getDefaultNetwork(appKit) ?? Network.mainnet();
27
+ };
package/docs/actions.md CHANGED
@@ -1,3 +1,9 @@
1
+ <!--
2
+ This file is auto-generated. Do not edit manually.
3
+ Changes will be overwritten when running the docs update script.
4
+ Source template: template/packages/appkit/docs/actions.md
5
+ -->
6
+
1
7
  # Actions
2
8
 
3
9
  AppKit provides a set of actions to interact with the blockchain and wallets.
@@ -1,3 +1,9 @@
1
+ <!--
2
+ This file is auto-generated. Do not edit manually.
3
+ Changes will be overwritten when running the docs update script.
4
+ Source template: template/packages/appkit/docs/connectors.md
5
+ -->
6
+
1
7
  # Connectors
2
8
 
3
9
  AppKit supports wallet connections through connectors. The primary connector is `TonConnect`.
package/docs/swap.md CHANGED
@@ -1,21 +1,32 @@
1
+ <!--
2
+ This file is auto-generated. Do not edit manually.
3
+ Changes will be overwritten when running the docs update script.
4
+ Source template: template/packages/appkit/docs/swap.md
5
+ -->
6
+
1
7
  # Swap
2
8
 
3
- AppKit supports swapping assets through the `SwapProvider` interface. The primary provider is `OmnistonSwapProvider`, which integrates with the [STON.fi](https://ston.fi) DEX aggregator via the [Omniston SDK](https://docs.ston.org/docs/developer-section/sdk/omniston-sdk).
9
+ AppKit supports swapping assets through the `SwapProvider` interface. Available providers:
10
+
11
+ - **OmnistonSwapProvider** – [STON.fi](https://ston.fi) DEX aggregator via [Omniston SDK](https://docs.ston.org/docs/developer-section/sdk/omniston-sdk)
12
+ - **DeDustSwapProvider** – [DeDust](https://dedust.io) Router v2 aggregator (no extra dependencies)
4
13
 
5
14
  ## Installation
6
15
 
7
- To use `OmnistonSwapProvider`, you need to install `@ston-fi/omniston-sdk`:
16
+ **Omniston** requires the Omniston SDK:
8
17
 
9
18
  ```bash
10
19
  npm install @ston-fi/omniston-sdk
11
20
  ```
12
21
 
22
+ **DeDust** has no additional dependencies.
23
+
13
24
  ## Setup
14
25
 
15
- You can set up `OmnistonSwapProvider` by passing it to the `AppKit` constructor.
26
+ You can set up swap providers by passing them to the `AppKit` constructor.
16
27
 
17
28
  ```ts
18
- // Initialize AppKit with swap provider
29
+ // Initialize AppKit with swap providers
19
30
  const appKit = new AppKit({
20
31
  networks: {
21
32
  [Network.mainnet().chainId]: {
@@ -27,17 +38,20 @@ const appKit = new AppKit({
27
38
  },
28
39
  providers: [
29
40
  new OmnistonSwapProvider({
30
- // Optional configuration
31
41
  apiUrl: 'https://api.ston.fi',
32
42
  defaultSlippageBps: 100, // 1%
33
43
  }),
44
+ new DeDustSwapProvider({
45
+ defaultSlippageBps: 100,
46
+ referralAddress: 'EQ...', // Optional
47
+ }),
34
48
  ],
35
49
  });
36
50
  ```
37
51
 
38
52
  ### Register Dynamically
39
53
 
40
- Alternatively, you can register the provider dynamically using `registerProvider`:
54
+ Alternatively, you can register providers dynamically using `registerProvider`:
41
55
 
42
56
  ```ts
43
57
  // 1. Initialize AppKit
@@ -52,15 +66,12 @@ const appKit = new AppKit({
52
66
  },
53
67
  });
54
68
 
55
- // 2. Register swap provider
56
- const provider = new OmnistonSwapProvider({
57
- // Optional configuration
58
- apiUrl: 'https://api.ston.fi',
59
- });
60
-
61
- registerProvider(appKit, provider);
69
+ // 2. Register swap providers
70
+ registerProvider(appKit, new OmnistonSwapProvider({ defaultSlippageBps: 100 }));
71
+ registerProvider(appKit, new DeDustSwapProvider({ defaultSlippageBps: 100 }));
62
72
  ```
63
73
 
64
74
  ## Configuration
65
75
 
66
- For detailed configuration options and usage of `OmnistonSwapProvider`, please refer to the [Omniston SDK documentation](https://docs.ston.org/docs/developer-section/sdk/omniston-sdk) and the [provider documentation](../src/swap/omniston/README.md).
76
+ - **Omniston**: [Omniston SDK documentation](https://docs.ston.org/docs/developer-section/sdk/omniston-sdk) and [provider README](https://github.com/ton-connect/kit/blob/main/packages/walletkit/src/defi/swap/omniston/README.md)
77
+ - **DeDust**: [provider README](https://github.com/ton-connect/kit/blob/main/packages/walletkit/src/defi/swap/dedust/README.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ton/appkit",
3
- "version": "0.0.2",
3
+ "version": "0.0.4-alpha.0",
4
4
  "description": "",
5
5
  "repository": {
6
6
  "type": "git",
@@ -40,6 +40,16 @@
40
40
  "types": "./dist/cjs/swap/omniston/index.d.ts",
41
41
  "default": "./dist/cjs/swap/omniston/index.js"
42
42
  }
43
+ },
44
+ "./swap/dedust": {
45
+ "import": {
46
+ "types": "./dist/esm/swap/dedust/index.d.ts",
47
+ "default": "./dist/esm/swap/dedust/index.js"
48
+ },
49
+ "require": {
50
+ "types": "./dist/cjs/swap/dedust/index.d.ts",
51
+ "default": "./dist/cjs/swap/dedust/index.js"
52
+ }
43
53
  }
44
54
  },
45
55
  "typesVersions": {
@@ -49,11 +59,14 @@
49
59
  ],
50
60
  "swap/omniston": [
51
61
  "./dist/cjs/swap/omniston/index.d.ts"
62
+ ],
63
+ "swap/dedust": [
64
+ "./dist/cjs/swap/dedust/index.d.ts"
52
65
  ]
53
66
  }
54
67
  },
55
68
  "dependencies": {
56
- "@ton/walletkit": "0.0.9"
69
+ "@ton/walletkit": "0.0.11-alpha.0"
57
70
  },
58
71
  "peerDependencies": {
59
72
  "@tanstack/query-core": ">=5.0.0",
@@ -7,10 +7,11 @@
7
7
  */
8
8
 
9
9
  import { Address } from '@ton/core';
10
- import type { TokenAmount } from '@ton/walletkit';
11
- import { Network, formatUnits } from '@ton/walletkit';
10
+ import type { TokenAmount, Network } from '@ton/walletkit';
11
+ import { formatUnits } from '@ton/walletkit';
12
12
 
13
13
  import type { AppKit } from '../../core/app-kit';
14
+ import { resolveNetwork } from '../../utils/network/resolve-network';
14
15
 
15
16
  export interface GetBalanceByAddressOptions {
16
17
  address: string | Address;
@@ -26,7 +27,7 @@ export const getBalanceByAddress = async (
26
27
  const { address, network } = options;
27
28
  const addressString = Address.isAddress(address) ? address.toString() : Address.parse(address).toString();
28
29
 
29
- const client = appKit.networkManager.getClient(network ?? Network.mainnet());
30
+ const client = appKit.networkManager.getClient(resolveNetwork(appKit, network));
30
31
  const balance = await client.getBalance(addressString);
31
32
 
32
33
  return formatUnits(balance, 9);
@@ -6,11 +6,12 @@
6
6
  *
7
7
  */
8
8
 
9
- import type { TokenAmount, Network } from '@ton/walletkit';
9
+ import type { TokenAmount } from '@ton/walletkit';
10
10
 
11
11
  import type { AppKit } from '../../core/app-kit';
12
12
  import { getSelectedWallet } from '../wallets/get-selected-wallet';
13
13
  import { getBalanceByAddress } from './get-balance-by-address';
14
+ import type { Network } from '../../types/network';
14
15
 
15
16
  export interface GetBalanceOptions {
16
17
  network?: Network;
@@ -27,6 +28,6 @@ export const getBalance = async (appKit: AppKit, options: GetBalanceOptions = {}
27
28
 
28
29
  return getBalanceByAddress(appKit, {
29
30
  address: selectedWallet.getAddress(),
30
- network: options.network,
31
+ network: options.network ?? selectedWallet.getNetwork(),
31
32
  });
32
33
  };
@@ -7,6 +7,7 @@
7
7
  */
8
8
 
9
9
  import type { AppKit } from '../../core/app-kit';
10
+ import { getDefaultNetwork } from '../network/get-default-network';
10
11
 
11
12
  export type ConnectParameters = {
12
13
  connectorId: string;
@@ -25,5 +26,6 @@ export const connect = async (appKit: AppKit, parameters: ConnectParameters): Pr
25
26
  throw new Error(`Connector with id "${connectorId}" not found`);
26
27
  }
27
28
 
28
- await connector.connectWallet();
29
+ const network = getDefaultNetwork(appKit);
30
+ await connector.connectWallet(network);
29
31
  };
@@ -68,6 +68,17 @@ export {
68
68
  export { getNetworks, type GetNetworksReturnType } from './network/get-networks';
69
69
  export { getNetwork, type GetNetworkReturnType } from './network/get-network';
70
70
  export { watchNetworks, type WatchNetworksParameters, type WatchNetworksReturnType } from './network/watch-networks';
71
+ export { getDefaultNetwork, type GetDefaultNetworkReturnType } from './network/get-default-network';
72
+ export {
73
+ setDefaultNetwork,
74
+ type SetDefaultNetworkParameters,
75
+ type SetDefaultNetworkReturnType,
76
+ } from './network/set-default-network';
77
+ export {
78
+ watchDefaultNetwork,
79
+ type WatchDefaultNetworkParameters,
80
+ type WatchDefaultNetworkReturnType,
81
+ } from './network/watch-default-network';
71
82
 
72
83
  // NFT
73
84
  export {
@@ -6,11 +6,13 @@
6
6
  *
7
7
  */
8
8
 
9
- import { Network, getJettonBalanceFromClient, formatUnits } from '@ton/walletkit';
9
+ import { getJettonBalanceFromClient, formatUnits } from '@ton/walletkit';
10
10
  import type { TokenAmount, UserFriendlyAddress } from '@ton/walletkit';
11
11
 
12
12
  import type { AppKit } from '../../core/app-kit';
13
13
  import { getJettonWalletAddress } from './get-jetton-wallet-address';
14
+ import { resolveNetwork } from '../../utils/network/resolve-network';
15
+ import type { Network } from '../../types/network';
14
16
 
15
17
  export interface GetJettonBalanceOptions {
16
18
  jettonAddress: UserFriendlyAddress;
@@ -27,7 +29,7 @@ export const getJettonBalance = async (
27
29
  ): Promise<GetJettonBalanceReturnType> => {
28
30
  const { jettonAddress, ownerAddress, jettonDecimals, network } = options;
29
31
 
30
- const client = appKit.networkManager.getClient(network ?? Network.mainnet());
32
+ const client = appKit.networkManager.getClient(resolveNetwork(appKit, network));
31
33
 
32
34
  const jettonWalletAddress = await getJettonWalletAddress(appKit, {
33
35
  jettonAddress,
@@ -7,9 +7,10 @@
7
7
  */
8
8
 
9
9
  import type { JettonInfo } from '@ton/walletkit';
10
- import { Network } from '@ton/walletkit';
11
10
 
12
11
  import type { AppKit } from '../../core/app-kit';
12
+ import { resolveNetwork } from '../../utils/network/resolve-network';
13
+ import type { Network } from '../../types/network';
13
14
 
14
15
  export interface GetJettonInfoOptions {
15
16
  address: string;
@@ -24,7 +25,7 @@ export const getJettonInfo = async (
24
25
  ): Promise<GetJettonInfoReturnType> => {
25
26
  const { address, network } = options;
26
27
 
27
- const client = appKit.networkManager.getClient(network ?? Network.mainnet());
28
+ const client = appKit.networkManager.getClient(resolveNetwork(appKit, network));
28
29
 
29
30
  const response = await client.jettonsByAddress({
30
31
  address: address,
@@ -6,10 +6,12 @@
6
6
  *
7
7
  */
8
8
 
9
- import { Network, getJettonWalletAddressFromClient } from '@ton/walletkit';
9
+ import { getJettonWalletAddressFromClient } from '@ton/walletkit';
10
10
  import type { UserFriendlyAddress } from '@ton/walletkit';
11
11
 
12
12
  import type { AppKit } from '../../core/app-kit';
13
+ import { resolveNetwork } from '../../utils/network/resolve-network';
14
+ import type { Network } from '../../types/network';
13
15
 
14
16
  export interface GetJettonWalletAddressOptions {
15
17
  jettonAddress: UserFriendlyAddress;
@@ -25,7 +27,7 @@ export const getJettonWalletAddress = async (
25
27
  ): Promise<GetJettonWalletAddressReturnType> => {
26
28
  const { jettonAddress, ownerAddress, network } = options;
27
29
 
28
- const client = appKit.networkManager.getClient(network ?? Network.mainnet());
30
+ const client = appKit.networkManager.getClient(resolveNetwork(appKit, network));
29
31
 
30
32
  return getJettonWalletAddressFromClient(client, jettonAddress, ownerAddress);
31
33
  };
@@ -8,9 +8,11 @@
8
8
 
9
9
  import { Address } from '@ton/core';
10
10
  import type { Jetton, JettonsResponse } from '@ton/walletkit';
11
- import { Network, getJettonsFromClient, formatUnits } from '@ton/walletkit';
11
+ import { getJettonsFromClient, formatUnits } from '@ton/walletkit';
12
12
 
13
13
  import type { AppKit } from '../../core/app-kit';
14
+ import { resolveNetwork } from '../../utils/network/resolve-network';
15
+ import type { Network } from '../../types/network';
14
16
 
15
17
  export interface GetJettonsByAddressOptions {
16
18
  address: string | Address;
@@ -28,7 +30,7 @@ export const getJettonsByAddress = async (
28
30
  const { address, network, limit, offset } = options;
29
31
  const addressString = Address.isAddress(address) ? address.toString() : Address.parse(address).toString();
30
32
 
31
- const client = appKit.networkManager.getClient(network ?? Network.mainnet());
33
+ const client = appKit.networkManager.getClient(resolveNetwork(appKit, network));
32
34
  const response = await getJettonsFromClient(client, addressString, {
33
35
  pagination: {
34
36
  limit,
@@ -6,11 +6,12 @@
6
6
  *
7
7
  */
8
8
 
9
- import type { JettonsResponse, Network } from '@ton/walletkit';
9
+ import type { JettonsResponse } from '@ton/walletkit';
10
10
 
11
11
  import type { AppKit } from '../../core/app-kit';
12
12
  import { getJettonsByAddress } from './get-jettons-by-address';
13
13
  import { getSelectedWallet } from '../wallets/get-selected-wallet';
14
+ import type { Network } from '../../types/network';
14
15
 
15
16
  export interface GetJettonsOptions {
16
17
  network?: Network;
@@ -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
+
9
+ import type { Network } from '../../types/network';
10
+ import type { AppKit } from '../../core/app-kit';
11
+
12
+ export type GetDefaultNetworkReturnType = Network | undefined;
13
+
14
+ /**
15
+ * Get the current default network
16
+ */
17
+ export const getDefaultNetwork = (appKit: AppKit): GetDefaultNetworkReturnType => {
18
+ return appKit.networkManager.getDefaultNetwork();
19
+ };
@@ -6,8 +6,7 @@
6
6
  *
7
7
  */
8
8
 
9
- import type { Network } from '@ton/walletkit';
10
-
9
+ import type { Network } from '../../types/network';
11
10
  import type { AppKit } from '../../core/app-kit';
12
11
  import { getSelectedWallet } from '../wallets/get-selected-wallet';
13
12
 
@@ -6,8 +6,7 @@
6
6
  *
7
7
  */
8
8
 
9
- import type { Network } from '@ton/walletkit';
10
-
9
+ import type { Network } from '../../types/network';
11
10
  import type { AppKit } from '../../core/app-kit';
12
11
 
13
12
  export type GetNetworksReturnType = Network[];
@@ -0,0 +1,28 @@
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
+ import type { Network } from '../../types/network';
10
+ import type { AppKit } from '../../core/app-kit';
11
+
12
+ export type SetDefaultNetworkParameters = {
13
+ network: Network | undefined;
14
+ };
15
+
16
+ export type SetDefaultNetworkReturnType = void;
17
+
18
+ /**
19
+ * Set the default network for wallet connections.
20
+ * If set, connectors will enforce this network when connecting.
21
+ * Set to `undefined` to allow any network.
22
+ */
23
+ export const setDefaultNetwork = (
24
+ appKit: AppKit,
25
+ parameters: SetDefaultNetworkParameters,
26
+ ): SetDefaultNetworkReturnType => {
27
+ appKit.networkManager.setDefaultNetwork(parameters.network);
28
+ };
@@ -0,0 +1,34 @@
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
+ import type { Network } from '../../types/network';
10
+ import type { AppKit } from '../../core/app-kit';
11
+ import { getDefaultNetwork } from './get-default-network';
12
+ import { NETWORKS_EVENTS } from '../../core/app-kit';
13
+
14
+ export type WatchDefaultNetworkParameters = {
15
+ onChange: (network: Network | undefined) => void;
16
+ };
17
+
18
+ export type WatchDefaultNetworkReturnType = () => void;
19
+
20
+ /**
21
+ * Watch default network changes
22
+ */
23
+ export const watchDefaultNetwork = (
24
+ appKit: AppKit,
25
+ parameters: WatchDefaultNetworkParameters,
26
+ ): WatchDefaultNetworkReturnType => {
27
+ const { onChange } = parameters;
28
+
29
+ const unsubscribe = appKit.emitter.on(NETWORKS_EVENTS.DEFAULT_CHANGED, () => {
30
+ onChange(getDefaultNetwork(appKit));
31
+ });
32
+
33
+ return unsubscribe;
34
+ };
@@ -6,8 +6,7 @@
6
6
  *
7
7
  */
8
8
 
9
- import type { Network } from '@ton/walletkit';
10
-
9
+ import type { Network } from '../../types/network';
11
10
  import { getNetworks } from './get-networks';
12
11
  import type { AppKit } from '../../core/app-kit';
13
12
  import { NETWORKS_EVENTS } from '../../core/app-kit';
@@ -7,10 +7,12 @@
7
7
  */
8
8
 
9
9
  import { Address } from '@ton/core';
10
- import type { NFT } from '@ton/walletkit';
11
- import { Network, getNftFromClient } from '@ton/walletkit';
10
+ import { getNftFromClient } from '@ton/walletkit';
12
11
 
13
12
  import type { AppKit } from '../../core/app-kit';
13
+ import { resolveNetwork } from '../../utils/network/resolve-network';
14
+ import type { Network } from '../../types/network';
15
+ import type { NFT } from '../../types/nft';
14
16
 
15
17
  export interface GetNftOptions {
16
18
  address: string | Address;
@@ -23,7 +25,7 @@ export const getNft = async (appKit: AppKit, options: GetNftOptions): Promise<Ge
23
25
  const { address, network } = options;
24
26
  const addressString = Address.isAddress(address) ? address.toString() : Address.parse(address).toString();
25
27
 
26
- const client = appKit.networkManager.getClient(network ?? Network.mainnet());
28
+ const client = appKit.networkManager.getClient(resolveNetwork(appKit, network));
27
29
 
28
30
  return getNftFromClient(client, addressString);
29
31
  };
@@ -8,9 +8,11 @@
8
8
 
9
9
  import { Address } from '@ton/core';
10
10
  import type { NFTsResponse } from '@ton/walletkit';
11
- import { Network, getNftsFromClient } from '@ton/walletkit';
11
+ import { getNftsFromClient } from '@ton/walletkit';
12
12
 
13
13
  import type { AppKit } from '../../core/app-kit';
14
+ import { resolveNetwork } from '../../utils/network/resolve-network';
15
+ import type { Network } from '../../types/network';
14
16
 
15
17
  export interface GetNftsByAddressOptions {
16
18
  address: string | Address;
@@ -28,7 +30,7 @@ export const getNftsByAddress = async (
28
30
  const { address, network, limit, offset } = options;
29
31
  const addressString = Address.isAddress(address) ? address.toString() : Address.parse(address).toString();
30
32
 
31
- const client = appKit.networkManager.getClient(network ?? Network.mainnet());
33
+ const client = appKit.networkManager.getClient(resolveNetwork(appKit, network));
32
34
 
33
35
  return getNftsFromClient(client, addressString, {
34
36
  pagination: {
@@ -6,11 +6,12 @@
6
6
  *
7
7
  */
8
8
 
9
- import type { NFTsResponse, Network } from '@ton/walletkit';
9
+ import type { NFTsResponse } from '@ton/walletkit';
10
10
 
11
11
  import type { AppKit } from '../../core/app-kit';
12
12
  import { getNftsByAddress } from './get-nfts-by-address';
13
13
  import { getSelectedWallet } from '../wallets/get-selected-wallet';
14
+ import type { Network } from '../../types/network';
14
15
 
15
16
  export interface GetNftsOptions {
16
17
  network?: Network;