@subwallet/extension-base 1.1.29-0 → 1.1.29-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/background/KoniTypes.d.ts +95 -68
  2. package/background/KoniTypes.js +16 -13
  3. package/background/errors/TransactionError.js +9 -0
  4. package/cjs/background/KoniTypes.js +17 -16
  5. package/cjs/background/errors/TransactionError.js +9 -0
  6. package/cjs/constants/index.js +19 -4
  7. package/cjs/koni/api/nft/config.js +33 -23
  8. package/cjs/koni/api/nft/index.js +14 -0
  9. package/cjs/koni/api/nft/nft.js +1 -22
  10. package/cjs/koni/api/nft/ordinal_nft/constants.js +21 -0
  11. package/cjs/koni/api/nft/ordinal_nft/index.js +121 -0
  12. package/cjs/koni/api/nft/ordinal_nft/utils.js +41 -0
  13. package/cjs/koni/api/staking/bonding/amplitude.js +17 -15
  14. package/cjs/koni/api/staking/bonding/astar.js +11 -10
  15. package/cjs/koni/api/staking/bonding/index.js +4 -1
  16. package/cjs/koni/api/staking/bonding/paraChain.js +25 -23
  17. package/cjs/koni/api/staking/bonding/relayChain.js +48 -45
  18. package/cjs/koni/api/staking/bonding/utils.js +104 -86
  19. package/cjs/koni/api/staking/index.js +6 -5
  20. package/cjs/koni/api/staking/paraChain.js +6 -5
  21. package/cjs/koni/api/staking/relayChain.js +3 -2
  22. package/cjs/koni/api/yield/helper/utils.js +46 -0
  23. package/cjs/koni/background/cron.js +11 -1
  24. package/cjs/koni/background/handlers/Extension.js +362 -69
  25. package/cjs/koni/background/handlers/State.js +51 -3
  26. package/cjs/koni/background/handlers/index.js +4 -2
  27. package/cjs/koni/background/subscription.js +95 -37
  28. package/cjs/services/campaign-service/index.js +9 -6
  29. package/cjs/services/chain-service/constants.js +2 -16
  30. package/cjs/services/chain-service/utils.js +7 -1
  31. package/cjs/services/earning-service/constants/chains.js +29 -0
  32. package/cjs/services/earning-service/constants/index.js +27 -0
  33. package/cjs/services/earning-service/constants/step.js +18 -0
  34. package/cjs/services/earning-service/handlers/base.js +232 -0
  35. package/cjs/services/earning-service/handlers/index.js +60 -0
  36. package/cjs/services/earning-service/handlers/lending/base.js +20 -0
  37. package/cjs/services/earning-service/handlers/lending/index.js +13 -0
  38. package/cjs/services/earning-service/handlers/lending/interlay.js +184 -0
  39. package/cjs/services/earning-service/handlers/liquid-staking/acala.js +217 -0
  40. package/cjs/services/earning-service/handlers/liquid-staking/base.js +43 -0
  41. package/cjs/services/earning-service/handlers/liquid-staking/bifrost.js +283 -0
  42. package/cjs/services/earning-service/handlers/liquid-staking/index.js +34 -0
  43. package/cjs/services/earning-service/handlers/liquid-staking/parallel.js +196 -0
  44. package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +409 -0
  45. package/cjs/services/earning-service/handlers/native-staking/amplitude.js +382 -0
  46. package/cjs/services/earning-service/handlers/native-staking/astar.js +459 -0
  47. package/cjs/services/earning-service/handlers/native-staking/base-para.js +137 -0
  48. package/cjs/services/earning-service/handlers/native-staking/base.js +159 -0
  49. package/cjs/services/earning-service/handlers/native-staking/index.js +34 -0
  50. package/cjs/services/earning-service/handlers/native-staking/para-chain.js +383 -0
  51. package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +542 -0
  52. package/cjs/services/earning-service/handlers/nomination-pool/index.js +541 -0
  53. package/cjs/services/earning-service/handlers/special.js +411 -0
  54. package/cjs/services/earning-service/service.js +387 -0
  55. package/cjs/services/earning-service/utils/index.js +128 -0
  56. package/cjs/services/event-service/index.js +4 -0
  57. package/cjs/services/keyring-service/index.js +14 -2
  58. package/cjs/services/migration-service/scripts/DeleteEarningData.js +21 -0
  59. package/cjs/services/migration-service/scripts/EnableEarningChains.js +21 -0
  60. package/cjs/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
  61. package/cjs/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
  62. package/cjs/services/migration-service/scripts/databases/MigrateEarningHistory.js +21 -0
  63. package/cjs/services/migration-service/scripts/databases/MigrateEarningVersion.js +21 -0
  64. package/cjs/services/migration-service/scripts/index.js +7 -1
  65. package/cjs/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +149 -0
  66. package/cjs/services/mint-campaign-service/campaigns/index.js +13 -0
  67. package/cjs/services/mint-campaign-service/constants.js +11 -0
  68. package/cjs/services/mint-campaign-service/index.js +18 -0
  69. package/cjs/services/notification-service/NotificationService.js +1 -1
  70. package/cjs/services/storage-service/DatabaseService.js +51 -0
  71. package/cjs/services/storage-service/databases/index.js +4 -0
  72. package/cjs/services/storage-service/db-stores/NominatorMetadata.js +3 -3
  73. package/cjs/services/storage-service/db-stores/YieldPoolStore.js +36 -0
  74. package/cjs/services/storage-service/db-stores/YieldPositionStore.js +65 -0
  75. package/cjs/services/subscan-service/index.js +16 -0
  76. package/cjs/services/transaction-service/event-parser/index.js +58 -0
  77. package/cjs/services/transaction-service/helpers/index.js +3 -1
  78. package/cjs/services/transaction-service/index.js +185 -74
  79. package/cjs/services/transaction-service/utils.js +1 -0
  80. package/cjs/types/campaigns/index.js +16 -0
  81. package/cjs/types/campaigns/unlock-dot.js +1 -0
  82. package/cjs/types/index.js +44 -0
  83. package/cjs/types/ordinal.js +1 -0
  84. package/cjs/types/transaction.js +1 -0
  85. package/cjs/types/yield/actions/index.js +27 -0
  86. package/cjs/types/yield/actions/join/index.js +38 -0
  87. package/cjs/types/yield/actions/join/step.js +47 -0
  88. package/cjs/types/yield/actions/join/submit.js +1 -0
  89. package/cjs/types/yield/actions/join/validate.js +16 -0
  90. package/cjs/types/yield/actions/others.js +1 -0
  91. package/cjs/types/yield/index.js +27 -0
  92. package/cjs/types/yield/info/account/index.js +49 -0
  93. package/cjs/types/yield/info/account/info.js +1 -0
  94. package/cjs/types/yield/info/account/reward.js +1 -0
  95. package/cjs/types/yield/info/account/target.js +32 -0
  96. package/cjs/types/yield/info/account/unstake.js +27 -0
  97. package/cjs/types/yield/info/base.js +41 -0
  98. package/cjs/types/yield/info/chain/index.js +27 -0
  99. package/cjs/types/yield/info/chain/info.js +1 -0
  100. package/cjs/types/yield/info/chain/target.js +1 -0
  101. package/cjs/types/yield/info/index.js +49 -0
  102. package/cjs/types/yield/info/pallet.js +15 -0
  103. package/cjs/utils/fetchStaticData.js +2 -1
  104. package/cjs/utils/index.js +89 -1
  105. package/cjs/utils/object.js +12 -0
  106. package/cjs/utils/yield/index.js +3 -0
  107. package/constants/index.d.ts +6 -1
  108. package/constants/index.js +6 -1
  109. package/koni/api/nft/config.js +33 -23
  110. package/koni/api/nft/index.js +15 -1
  111. package/koni/api/nft/nft.js +2 -23
  112. package/koni/api/nft/ordinal_nft/constants.d.ts +9 -0
  113. package/koni/api/nft/ordinal_nft/constants.js +12 -0
  114. package/koni/api/nft/ordinal_nft/index.d.ts +8 -0
  115. package/koni/api/nft/ordinal_nft/index.js +114 -0
  116. package/koni/api/nft/ordinal_nft/utils.d.ts +2 -0
  117. package/koni/api/nft/ordinal_nft/utils.js +33 -0
  118. package/koni/api/staking/bonding/amplitude.js +11 -9
  119. package/koni/api/staking/bonding/astar.js +9 -8
  120. package/koni/api/staking/bonding/index.d.ts +1 -1
  121. package/koni/api/staking/bonding/index.js +5 -1
  122. package/koni/api/staking/bonding/paraChain.js +12 -10
  123. package/koni/api/staking/bonding/relayChain.d.ts +2 -2
  124. package/koni/api/staking/bonding/relayChain.js +33 -30
  125. package/koni/api/staking/bonding/utils.d.ts +15 -38
  126. package/koni/api/staking/bonding/utils.js +85 -69
  127. package/koni/api/staking/index.js +2 -1
  128. package/koni/api/staking/paraChain.js +7 -6
  129. package/koni/api/staking/relayChain.js +4 -3
  130. package/koni/api/yield/helper/utils.d.ts +10 -0
  131. package/koni/api/yield/helper/utils.js +32 -0
  132. package/koni/background/cron.d.ts +1 -0
  133. package/koni/background/cron.js +12 -2
  134. package/koni/background/handlers/Extension.d.ts +17 -1
  135. package/koni/background/handlers/Extension.js +321 -30
  136. package/koni/background/handlers/State.d.ts +18 -2
  137. package/koni/background/handlers/State.js +50 -3
  138. package/koni/background/handlers/index.js +4 -2
  139. package/koni/background/subscription.d.ts +6 -1
  140. package/koni/background/subscription.js +97 -38
  141. package/package.json +316 -3
  142. package/services/campaign-service/index.js +9 -6
  143. package/services/chain-service/constants.d.ts +0 -11
  144. package/services/chain-service/constants.js +1 -14
  145. package/services/chain-service/utils.d.ts +1 -0
  146. package/services/chain-service/utils.js +5 -1
  147. package/services/earning-service/constants/abis/compound_finance_v2_abi.json +1235 -0
  148. package/services/earning-service/constants/abis/st_liquid_token_abi.json +1355 -0
  149. package/services/earning-service/constants/chains.d.ts +14 -0
  150. package/services/earning-service/constants/chains.js +21 -0
  151. package/services/earning-service/constants/index.d.ts +2 -0
  152. package/services/earning-service/constants/index.js +5 -0
  153. package/services/earning-service/constants/step.d.ts +3 -0
  154. package/services/earning-service/constants/step.js +10 -0
  155. package/services/earning-service/handlers/base.d.ts +112 -0
  156. package/services/earning-service/handlers/base.js +226 -0
  157. package/services/earning-service/handlers/index.d.ts +5 -0
  158. package/services/earning-service/handlers/index.js +8 -0
  159. package/services/earning-service/handlers/lending/base.d.ts +6 -0
  160. package/services/earning-service/handlers/lending/base.js +12 -0
  161. package/services/earning-service/handlers/lending/index.d.ts +1 -0
  162. package/services/earning-service/handlers/lending/index.js +4 -0
  163. package/services/earning-service/handlers/lending/interlay.d.ts +23 -0
  164. package/services/earning-service/handlers/lending/interlay.js +176 -0
  165. package/services/earning-service/handlers/liquid-staking/acala.d.ts +26 -0
  166. package/services/earning-service/handlers/liquid-staking/acala.js +209 -0
  167. package/services/earning-service/handlers/liquid-staking/base.d.ts +9 -0
  168. package/services/earning-service/handlers/liquid-staking/base.js +35 -0
  169. package/services/earning-service/handlers/liquid-staking/bifrost.d.ts +45 -0
  170. package/services/earning-service/handlers/liquid-staking/bifrost.js +272 -0
  171. package/services/earning-service/handlers/liquid-staking/index.d.ts +4 -0
  172. package/services/earning-service/handlers/liquid-staking/index.js +7 -0
  173. package/services/earning-service/handlers/liquid-staking/parallel.d.ts +25 -0
  174. package/services/earning-service/handlers/liquid-staking/parallel.js +188 -0
  175. package/services/earning-service/handlers/liquid-staking/stella-swap.d.ts +34 -0
  176. package/services/earning-service/handlers/liquid-staking/stella-swap.js +399 -0
  177. package/services/earning-service/handlers/native-staking/amplitude.d.ts +22 -0
  178. package/services/earning-service/handlers/native-staking/amplitude.js +373 -0
  179. package/services/earning-service/handlers/native-staking/astar.d.ts +19 -0
  180. package/services/earning-service/handlers/native-staking/astar.js +449 -0
  181. package/services/earning-service/handlers/native-staking/base-para.d.ts +11 -0
  182. package/services/earning-service/handlers/native-staking/base-para.js +129 -0
  183. package/services/earning-service/handlers/native-staking/base.d.ts +21 -0
  184. package/services/earning-service/handlers/native-staking/base.js +150 -0
  185. package/services/earning-service/handlers/native-staking/index.d.ts +4 -0
  186. package/services/earning-service/handlers/native-staking/index.js +7 -0
  187. package/services/earning-service/handlers/native-staking/para-chain.d.ts +15 -0
  188. package/services/earning-service/handlers/native-staking/para-chain.js +375 -0
  189. package/services/earning-service/handlers/native-staking/relay-chain.d.ts +21 -0
  190. package/services/earning-service/handlers/native-staking/relay-chain.js +533 -0
  191. package/services/earning-service/handlers/nomination-pool/index.d.ts +35 -0
  192. package/services/earning-service/handlers/nomination-pool/index.js +531 -0
  193. package/services/earning-service/handlers/special.d.ts +56 -0
  194. package/services/earning-service/handlers/special.js +403 -0
  195. package/services/earning-service/service.d.ts +45 -0
  196. package/services/earning-service/service.js +379 -0
  197. package/services/earning-service/utils/index.d.ts +18 -0
  198. package/services/earning-service/utils/index.js +112 -0
  199. package/services/event-service/index.d.ts +1 -0
  200. package/services/event-service/index.js +4 -0
  201. package/services/event-service/types.d.ts +8 -0
  202. package/services/keyring-service/index.d.ts +2 -1
  203. package/services/keyring-service/index.js +14 -2
  204. package/services/migration-service/scripts/DeleteEarningData.d.ts +4 -0
  205. package/services/migration-service/scripts/DeleteEarningData.js +13 -0
  206. package/services/migration-service/scripts/EnableEarningChains.d.ts +4 -0
  207. package/services/migration-service/scripts/EnableEarningChains.js +13 -0
  208. package/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
  209. package/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
  210. package/services/migration-service/scripts/databases/MigrateEarningHistory.d.ts +4 -0
  211. package/services/migration-service/scripts/databases/MigrateEarningHistory.js +13 -0
  212. package/services/migration-service/scripts/databases/MigrateEarningVersion.d.ts +4 -0
  213. package/services/migration-service/scripts/databases/MigrateEarningVersion.js +13 -0
  214. package/services/migration-service/scripts/index.js +7 -1
  215. package/services/mint-campaign-service/campaigns/UnlockDotCampaign.d.ts +13 -0
  216. package/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +139 -0
  217. package/services/mint-campaign-service/campaigns/index.d.ts +1 -0
  218. package/services/mint-campaign-service/campaigns/index.js +4 -0
  219. package/services/mint-campaign-service/constants.d.ts +1 -0
  220. package/services/mint-campaign-service/constants.js +4 -0
  221. package/services/mint-campaign-service/index.d.ts +7 -0
  222. package/services/mint-campaign-service/index.js +11 -0
  223. package/services/notification-service/NotificationService.js +1 -1
  224. package/services/storage-service/DatabaseService.d.ts +18 -1
  225. package/services/storage-service/DatabaseService.js +51 -0
  226. package/services/storage-service/databases/index.d.ts +3 -1
  227. package/services/storage-service/databases/index.js +4 -0
  228. package/services/storage-service/db-stores/NominatorMetadata.js +3 -3
  229. package/services/storage-service/db-stores/YieldPoolStore.d.ts +10 -0
  230. package/services/storage-service/db-stores/YieldPoolStore.js +28 -0
  231. package/services/storage-service/db-stores/YieldPositionStore.d.ts +9 -0
  232. package/services/storage-service/db-stores/YieldPositionStore.js +57 -0
  233. package/services/subscan-service/index.d.ts +3 -2
  234. package/services/subscan-service/index.js +15 -0
  235. package/services/subscan-service/types.d.ts +20 -0
  236. package/services/transaction-service/event-parser/index.d.ts +3 -1
  237. package/services/transaction-service/event-parser/index.js +57 -1
  238. package/services/transaction-service/helpers/index.js +3 -1
  239. package/services/transaction-service/index.d.ts +4 -15
  240. package/services/transaction-service/index.js +183 -72
  241. package/services/transaction-service/types.d.ts +2 -0
  242. package/services/transaction-service/utils.js +1 -0
  243. package/types/campaigns/index.d.ts +1 -0
  244. package/types/campaigns/index.js +4 -0
  245. package/types/campaigns/unlock-dot.d.ts +71 -0
  246. package/types/campaigns/unlock-dot.js +1 -0
  247. package/types/index.d.ts +5 -0
  248. package/types/index.js +5 -1
  249. package/types/ordinal.d.ts +69 -0
  250. package/types/ordinal.js +1 -0
  251. package/types/transaction.d.ts +3 -0
  252. package/types/transaction.js +1 -0
  253. package/types/yield/actions/index.d.ts +2 -0
  254. package/types/yield/actions/index.js +5 -0
  255. package/types/yield/actions/join/index.d.ts +3 -0
  256. package/types/yield/actions/join/index.js +6 -0
  257. package/types/yield/actions/join/step.d.ts +94 -0
  258. package/types/yield/actions/join/step.js +46 -0
  259. package/types/yield/actions/join/submit.d.ts +53 -0
  260. package/types/yield/actions/join/submit.js +1 -0
  261. package/types/yield/actions/join/validate.d.ts +18 -0
  262. package/types/yield/actions/join/validate.js +10 -0
  263. package/types/yield/actions/others.d.ts +63 -0
  264. package/types/yield/actions/others.js +1 -0
  265. package/types/yield/index.d.ts +2 -0
  266. package/types/yield/index.js +5 -0
  267. package/types/yield/info/account/index.d.ts +4 -0
  268. package/types/yield/info/account/index.js +7 -0
  269. package/types/yield/info/account/info.d.ts +92 -0
  270. package/types/yield/info/account/info.js +1 -0
  271. package/types/yield/info/account/reward.d.ts +45 -0
  272. package/types/yield/info/account/reward.js +1 -0
  273. package/types/yield/info/account/target.d.ts +43 -0
  274. package/types/yield/info/account/target.js +27 -0
  275. package/types/yield/info/account/unstake.d.ts +31 -0
  276. package/types/yield/info/account/unstake.js +22 -0
  277. package/types/yield/info/base.d.ts +45 -0
  278. package/types/yield/info/base.js +36 -0
  279. package/types/yield/info/chain/index.d.ts +2 -0
  280. package/types/yield/info/chain/index.js +5 -0
  281. package/types/yield/info/chain/info.d.ts +243 -0
  282. package/types/yield/info/chain/info.js +1 -0
  283. package/types/yield/info/chain/target.d.ts +37 -0
  284. package/types/yield/info/chain/target.js +1 -0
  285. package/types/yield/info/index.d.ts +4 -0
  286. package/types/yield/info/index.js +7 -0
  287. package/types/yield/info/pallet.d.ts +143 -0
  288. package/types/yield/info/pallet.js +9 -0
  289. package/utils/fetchStaticData.js +2 -1
  290. package/utils/index.d.ts +5 -0
  291. package/utils/index.js +53 -1
  292. package/utils/object.d.ts +1 -0
  293. package/utils/object.js +6 -0
@@ -0,0 +1,71 @@
1
+ export interface UnlockDotAdditionalData {
2
+ slug: string;
3
+ network: string;
4
+ extrinsicHash?: string;
5
+ }
6
+ export interface UnlockDotCheckMintRequest {
7
+ address: string;
8
+ additionalData: UnlockDotAdditionalData;
9
+ category: string;
10
+ campaignId: number;
11
+ }
12
+ export interface UnlockDotCheckMintResponse {
13
+ requestId: number | null;
14
+ userId: number;
15
+ validUser: boolean;
16
+ validCampaign: boolean;
17
+ validCategory: boolean;
18
+ isWhiteList: boolean;
19
+ isOwner: boolean;
20
+ hasBalance: boolean;
21
+ notDuplicated: boolean;
22
+ inMintingTime: boolean;
23
+ }
24
+ export interface UnlockDotMintedData {
25
+ id: number;
26
+ campaignId: number;
27
+ collectionId: number;
28
+ userId: number;
29
+ address: string;
30
+ status: string;
31
+ extrinsicHash: string;
32
+ mintCategory: string;
33
+ mintDate: null;
34
+ rmrkNftId: string;
35
+ nftName: string;
36
+ nftImage: string;
37
+ recipient: string;
38
+ blockNumber: number;
39
+ additionalData: string;
40
+ }
41
+ export declare type UnlockDotTransactionNft = UnlockDotMintedData | undefined | Pick<UnlockDotMintedData, 'nftImage'>;
42
+ export interface UnlockDotFetchMintedRequest {
43
+ address: string;
44
+ }
45
+ export declare type UnlockDotFetchMintedResponse = UnlockDotMintedData[];
46
+ export interface UnlockDotMintSubmitRequest {
47
+ recipient: string;
48
+ requestId: number;
49
+ }
50
+ export declare type UnlockDotMintSubmitResponse = UnlockDotMintedData;
51
+ export interface UnlockDotCheckMintData {
52
+ address: string;
53
+ slug: string;
54
+ network: string;
55
+ extrinsicHash?: string;
56
+ }
57
+ export interface UnlockDotSubmitMintData {
58
+ transactionId: string;
59
+ address: string;
60
+ slug: string;
61
+ network: string;
62
+ extrinsicHash: string;
63
+ }
64
+ export interface RequestUnlockDotCheckCanMint {
65
+ address: string;
66
+ slug: string;
67
+ network: string;
68
+ }
69
+ export interface RequestUnlockDotSubscribeMintedData {
70
+ transactionId: string;
71
+ }
@@ -0,0 +1 @@
1
+ export {};
package/types/index.d.ts CHANGED
@@ -5,7 +5,12 @@ export interface Message extends MessageEvent {
5
5
  origin: string;
6
6
  response?: string;
7
7
  subscription?: string;
8
+ sender?: string;
8
9
  };
9
10
  }
10
11
  export * from './balance';
11
12
  export * from './buy';
13
+ export * from './campaigns';
14
+ export * from './ordinal';
15
+ export * from './transaction';
16
+ export * from './yield';
package/types/index.js CHANGED
@@ -1,6 +1,10 @@
1
- // Copyright 2019-2022 @polkadot/extension authors & contributors
1
+ // Copyright 2019-2022 @subwallet/extension-base authors & contributors
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  export * from "./balance.js";
5
5
  export * from "./buy.js";
6
+ export * from "./campaigns/index.js";
7
+ export * from "./ordinal.js";
8
+ export * from "./transaction.js";
9
+ export * from "./yield/index.js";
6
10
  export {};
@@ -0,0 +1,69 @@
1
+ export interface OrdinalItem {
2
+ chain: string;
3
+ address: string;
4
+ data: Record<string, any>;
5
+ }
6
+ export interface SubscanEventBaseItemData {
7
+ id: number;
8
+ block_timestamp: number;
9
+ extrinsic_index: string;
10
+ extrinsic_hash: string;
11
+ finalized: boolean;
12
+ event_index: string;
13
+ phase: number;
14
+ module_id: string;
15
+ event_id: string;
16
+ }
17
+ export interface SubscanEventListResponse {
18
+ code: number;
19
+ message: string;
20
+ generated_at: number;
21
+ data: {
22
+ count: number;
23
+ events: SubscanEventBaseItemData[];
24
+ };
25
+ }
26
+ export interface SubscanBatchChildParam {
27
+ name: string;
28
+ type: string;
29
+ value: string;
30
+ }
31
+ export interface SubscanBatchChild {
32
+ call_index: string;
33
+ call_module: string;
34
+ call_name: string;
35
+ params: SubscanBatchChildParam[];
36
+ }
37
+ export interface SubscanExtrinsicParamDetail {
38
+ name: string;
39
+ type: string;
40
+ type_name: string;
41
+ value: string | SubscanBatchChild[];
42
+ }
43
+ export interface SubscanExtrinsicParam {
44
+ extrinsic_index: string;
45
+ params: SubscanExtrinsicParamDetail[];
46
+ }
47
+ export interface SubscanExtrinsicParamResponse {
48
+ code: number;
49
+ message: string;
50
+ generated_at: number;
51
+ data: SubscanExtrinsicParam[];
52
+ }
53
+ export interface OrdinalRemarkData {
54
+ p: string;
55
+ op: string;
56
+ tick: string;
57
+ amt: string;
58
+ }
59
+ export interface OrdinalNftProperties {
60
+ P: {
61
+ value: string;
62
+ };
63
+ Op: {
64
+ value: string;
65
+ };
66
+ Tick: {
67
+ value: string;
68
+ };
69
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ import { TransactionConfig } from 'web3-core';
2
+ import { SubmittableExtrinsic } from '@polkadot/api/types';
3
+ export declare type TransactionData = SubmittableExtrinsic<'promise'> | TransactionConfig;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from './join';
2
+ export * from './others';
@@ -0,0 +1,5 @@
1
+ // Copyright 2019-2022 @subwallet/extension-base
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export * from "./join/index.js";
5
+ export * from "./others.js";
@@ -0,0 +1,3 @@
1
+ export * from './step';
2
+ export * from './submit';
3
+ export * from './validate';
@@ -0,0 +1,6 @@
1
+ // Copyright 2019-2022 @subwallet/extension-base
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export * from "./step.js";
5
+ export * from "./submit.js";
6
+ export * from "./validate.js";
@@ -0,0 +1,94 @@
1
+ import { YieldPoolTarget } from '@subwallet/extension-base/types';
2
+ /**
3
+ * @interface RequestEarlyValidateYield
4
+ * @description Params to early validate join pool
5
+ * @prop {string} slug - Pool's slug
6
+ * @prop {string} address - Account's address
7
+ * */
8
+ export interface RequestEarlyValidateYield {
9
+ /** Pool's slug */
10
+ slug: string;
11
+ /** Account's address */
12
+ address: string;
13
+ }
14
+ /**
15
+ * @interface ResponseEarlyValidateYield
16
+ * @prop {boolean} passed - Passed validate
17
+ * */
18
+ export interface ResponseEarlyValidateYield {
19
+ passed: boolean;
20
+ }
21
+ /**
22
+ * @interface OptimalYieldPathParams
23
+ * @description Params to generate steps
24
+ * */
25
+ export interface OptimalYieldPathParams {
26
+ slug: string;
27
+ address: string;
28
+ amount: string;
29
+ targets?: YieldPoolTarget[];
30
+ }
31
+ /**
32
+ * @enum {string}
33
+ * @description Type of join yield step
34
+ * */
35
+ export declare enum YieldStepType {
36
+ DEFAULT = "DEFAULT",
37
+ XCM = "XCM",
38
+ NOMINATE = "NOMINATE",
39
+ JOIN_NOMINATION_POOL = "JOIN_NOMINATION_POOL",
40
+ MINT_VDOT = "MINT_VDOT",
41
+ MINT_LDOT = "MINT_LDOT",
42
+ MINT_QDOT = "MINT_QDOT",
43
+ MINT_SDOT = "MINT_SDOT",
44
+ MINT_STDOT = "MINT_STDOT",
45
+ TOKEN_APPROVAL = "TOKEN_APPROVAL"
46
+ }
47
+ /**
48
+ * @interface BaseYieldStepDetail
49
+ * @description Base info of a step
50
+ * @prop {string} name - Step's name
51
+ * @prop {YieldStepType} type - Step's type
52
+ * @prop {Record<string,unknown>} [metadata] - Metadata for generating extrinsic
53
+ * */
54
+ export interface BaseYieldStepDetail {
55
+ /** Step's name */
56
+ name: string;
57
+ /** Step's type */
58
+ type: YieldStepType;
59
+ /** Metadata for generating extrinsic */
60
+ metadata?: Record<string, unknown>;
61
+ }
62
+ /**
63
+ * @interface YieldStepDetail
64
+ * @extends BaseYieldStepDetail
65
+ * @description Detail of a step
66
+ * @prop {number} id - Step's id
67
+ * */
68
+ export interface YieldStepDetail extends BaseYieldStepDetail {
69
+ /** Step's id */
70
+ id: number;
71
+ }
72
+ /**
73
+ * @interface YieldTokenBaseInfo
74
+ * @prop {string} slug - Token's slug
75
+ * @prop {string} [amount] - Token's amount
76
+ * */
77
+ export interface YieldTokenBaseInfo {
78
+ /** Token's slug */
79
+ slug: string;
80
+ /** Token's amount */
81
+ amount?: string;
82
+ }
83
+ /** Base info and fee of a step */
84
+ export declare type YieldStepBaseInfo = [BaseYieldStepDetail, YieldTokenBaseInfo];
85
+ /**
86
+ * @interface OptimalYieldPath
87
+ * @description Result after generate steps
88
+ * */
89
+ export interface OptimalYieldPath {
90
+ totalFee: YieldTokenBaseInfo[];
91
+ steps: YieldStepDetail[];
92
+ connectionError?: string;
93
+ }
94
+ export declare type GenStepFunction = (params: OptimalYieldPathParams) => Promise<YieldStepBaseInfo | undefined>;
@@ -0,0 +1,46 @@
1
+ // Copyright 2019-2022 @subwallet/extension-base
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ /**
5
+ * @interface RequestEarlyValidateYield
6
+ * @description Params to early validate join pool
7
+ * @prop {string} slug - Pool's slug
8
+ * @prop {string} address - Account's address
9
+ * */
10
+
11
+ /**
12
+ * @interface ResponseEarlyValidateYield
13
+ * @prop {boolean} passed - Passed validate
14
+ * */
15
+
16
+ /**
17
+ * @interface OptimalYieldPathParams
18
+ * @description Params to generate steps
19
+ * */
20
+
21
+ /**
22
+ * @enum {string}
23
+ * @description Type of join yield step
24
+ * */
25
+
26
+ export let YieldStepType;
27
+
28
+ /**
29
+ * @interface BaseYieldStepDetail
30
+ * @description Base info of a step
31
+ * @prop {string} name - Step's name
32
+ * @prop {YieldStepType} type - Step's type
33
+ * @prop {Record<string,unknown>} [metadata] - Metadata for generating extrinsic
34
+ * */
35
+ (function (YieldStepType) {
36
+ YieldStepType["DEFAULT"] = "DEFAULT";
37
+ YieldStepType["XCM"] = "XCM";
38
+ YieldStepType["NOMINATE"] = "NOMINATE";
39
+ YieldStepType["JOIN_NOMINATION_POOL"] = "JOIN_NOMINATION_POOL";
40
+ YieldStepType["MINT_VDOT"] = "MINT_VDOT";
41
+ YieldStepType["MINT_LDOT"] = "MINT_LDOT";
42
+ YieldStepType["MINT_QDOT"] = "MINT_QDOT";
43
+ YieldStepType["MINT_SDOT"] = "MINT_SDOT";
44
+ YieldStepType["MINT_STDOT"] = "MINT_STDOT";
45
+ YieldStepType["TOKEN_APPROVAL"] = "TOKEN_APPROVAL";
46
+ })(YieldStepType || (YieldStepType = {}));
@@ -0,0 +1,53 @@
1
+ import { BaseRequestSign, ExtrinsicType, InternalRequestSign } from '@subwallet/extension-base/background/KoniTypes';
2
+ import { TransactionData } from '../../../transaction';
3
+ import { NominationPoolInfo, ValidatorInfo, YieldPositionInfo } from '../../info';
4
+ import { OptimalYieldPath } from './step';
5
+ export interface HandleYieldStepData {
6
+ txChain: string;
7
+ extrinsicType: ExtrinsicType;
8
+ extrinsic: TransactionData;
9
+ txData: any;
10
+ transferNativeAmount: string;
11
+ }
12
+ export interface AbstractSubmitYieldJoinData {
13
+ slug: string;
14
+ amount: string;
15
+ address: string;
16
+ }
17
+ export interface SubmitJoinNativeStaking extends AbstractSubmitYieldJoinData {
18
+ selectedValidators: ValidatorInfo[];
19
+ }
20
+ export interface SubmitJoinNominationPool extends AbstractSubmitYieldJoinData {
21
+ selectedPool: NominationPoolInfo;
22
+ }
23
+ export interface SubmitYieldStepData extends AbstractSubmitYieldJoinData {
24
+ exchangeRate: number;
25
+ inputTokenSlug: string;
26
+ derivativeTokenSlug?: string;
27
+ rewardTokenSlug: string;
28
+ feeTokenSlug: string;
29
+ }
30
+ export declare type SubmitYieldJoinData = SubmitYieldStepData | SubmitJoinNativeStaking | SubmitJoinNominationPool;
31
+ export interface HandleYieldStepParams extends BaseRequestSign {
32
+ path: OptimalYieldPath;
33
+ data: SubmitYieldJoinData;
34
+ currentStep: number;
35
+ }
36
+ export declare type RequestYieldStepSubmit = InternalRequestSign<HandleYieldStepParams>;
37
+ export interface StakePoolingBondingParams extends BaseRequestSign {
38
+ poolPosition?: YieldPositionInfo;
39
+ slug: string;
40
+ selectedPool: NominationPoolInfo;
41
+ amount: string;
42
+ address: string;
43
+ }
44
+ export declare type RequestStakePoolingBonding = InternalRequestSign<StakePoolingBondingParams>;
45
+ export interface BondingSubmitParams extends BaseRequestSign {
46
+ slug: string;
47
+ poolPosition?: YieldPositionInfo;
48
+ amount: string;
49
+ address: string;
50
+ selectedValidators: ValidatorInfo[];
51
+ lockPeriod?: number;
52
+ }
53
+ export declare type RequestBondingSubmit = InternalRequestSign<BondingSubmitParams>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,18 @@
1
+ import { OptimalYieldPath, YieldStepDetail } from './step';
2
+ import { SubmitYieldJoinData } from './submit';
3
+ export declare enum YieldValidationStatus {
4
+ NOT_ENOUGH_FEE = "NOT_ENOUGH_FEE",
5
+ NOT_ENOUGH_BALANCE = "NOT_ENOUGH_BALANCE",
6
+ NOT_ENOUGH_MIN_JOIN_POOL = "NOT_ENOUGH_MIN_JOIN_POOL",
7
+ OK = "OK"
8
+ }
9
+ export interface YieldProcessValidation {
10
+ ok: boolean;
11
+ status: YieldValidationStatus;
12
+ failedStep?: YieldStepDetail;
13
+ message?: string;
14
+ }
15
+ export interface ValidateYieldProcessParams {
16
+ path: OptimalYieldPath;
17
+ data: SubmitYieldJoinData;
18
+ }
@@ -0,0 +1,10 @@
1
+ // Copyright 2019-2022 @subwallet/extension-base
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export let YieldValidationStatus;
5
+ (function (YieldValidationStatus) {
6
+ YieldValidationStatus["NOT_ENOUGH_FEE"] = "NOT_ENOUGH_FEE";
7
+ YieldValidationStatus["NOT_ENOUGH_BALANCE"] = "NOT_ENOUGH_BALANCE";
8
+ YieldValidationStatus["NOT_ENOUGH_MIN_JOIN_POOL"] = "NOT_ENOUGH_MIN_JOIN_POOL";
9
+ YieldValidationStatus["OK"] = "OK";
10
+ })(YieldValidationStatus || (YieldValidationStatus = {}));
@@ -0,0 +1,63 @@
1
+ import { BaseRequestSign, InternalRequestSign } from '@subwallet/extension-base/background/KoniTypes';
2
+ import { UnstakingInfo, YieldPoolInfo } from '../info';
3
+ /**
4
+ * @interface YieldLeaveParams
5
+ * @description Request params to leave pool
6
+ * @prop {string} address - Request account
7
+ * @prop {string} amount - Amount token want to leave
8
+ * @prop {string} slug - Pool's slug
9
+ * @prop {string} [selectedTarget] - Pool target want to leave (nomination pool and native staking need)
10
+ * @prop {boolean} fastLeave - Fast leave pool (swap token)
11
+ * @prop {YieldPoolInfo} poolInfo - Pool's info - use for create history
12
+ * */
13
+ export interface YieldLeaveParams extends BaseRequestSign {
14
+ /** Request account */
15
+ address: string;
16
+ /** Amount token want to leave */
17
+ amount: string;
18
+ /** Pool's slug */
19
+ slug: string;
20
+ /** Pool target want to leave (nomination pool and native staking need) */
21
+ selectedTarget?: string;
22
+ /** Fast leave pool (swap token) */
23
+ fastLeave: boolean;
24
+ /** Pool's info - use for create history */
25
+ poolInfo: YieldPoolInfo;
26
+ }
27
+ export declare type RequestYieldLeave = InternalRequestSign<YieldLeaveParams>;
28
+ /**
29
+ * @interface RequestYieldWithdrawal
30
+ * @description Request params to withdraw
31
+ * @prop {string} address - Request account
32
+ * @prop {string} slug - Pool's slug
33
+ * @prop {UnstakingInfo} unstakingInfo - Info of unstaking request wants to withdraw
34
+ * */
35
+ export interface YieldWithdrawalParams extends BaseRequestSign {
36
+ /** Request account */
37
+ address: string;
38
+ /** Pool's slug */
39
+ slug: string;
40
+ /**
41
+ * <p>
42
+ * Info of unstaking request wants to withdraw
43
+ * </p>
44
+ * <p>
45
+ * Need to create amount on history
46
+ * </p>
47
+ * */
48
+ unstakingInfo: UnstakingInfo;
49
+ }
50
+ export declare type RequestYieldWithdrawal = InternalRequestSign<YieldWithdrawalParams>;
51
+ export interface StakeCancelWithdrawalParams extends BaseRequestSign {
52
+ address: string;
53
+ slug: string;
54
+ selectedUnstaking: UnstakingInfo;
55
+ }
56
+ export declare type RequestStakeCancelWithdrawal = InternalRequestSign<StakeCancelWithdrawalParams>;
57
+ export interface StakeClaimRewardParams extends BaseRequestSign {
58
+ address: string;
59
+ slug: string;
60
+ unclaimedReward?: string;
61
+ bondReward?: boolean;
62
+ }
63
+ export declare type RequestStakeClaimReward = InternalRequestSign<StakeClaimRewardParams>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from './info';
2
+ export * from './actions';
@@ -0,0 +1,5 @@
1
+ // Copyright 2019-2022 @subwallet/extension-base
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export * from "./info/index.js";
5
+ export * from "./actions/index.js";
@@ -0,0 +1,4 @@
1
+ export * from './info';
2
+ export * from './reward';
3
+ export * from './target';
4
+ export * from './unstake';
@@ -0,0 +1,7 @@
1
+ // Copyright 2019-2022 @subwallet/extension-base
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export * from "./info.js";
5
+ export * from "./reward.js";
6
+ export * from "./target.js";
7
+ export * from "./unstake.js";
@@ -0,0 +1,92 @@
1
+ import { BasePoolInfo, YieldPoolType } from '../base';
2
+ import { EarningStatus, NominationInfo } from './target';
3
+ import { UnstakingInfo } from './unstake';
4
+ export interface YieldAssetBalance {
5
+ slug: string;
6
+ activeBalance: string;
7
+ exchangeRate?: number;
8
+ }
9
+ /**
10
+ * @interface BaseYieldPositionInfo
11
+ * @extends BasePoolInfo
12
+ * @prop {string} address - Account address
13
+ * */
14
+ export interface BaseYieldPositionInfo extends BasePoolInfo {
15
+ /** Account address */
16
+ address: string;
17
+ }
18
+ /**
19
+ * @interface AbstractYieldPositionInfo
20
+ * @prop {string} totalStake - Total stake of the account
21
+ * @prop {string} activeStake - Active stake of the account
22
+ * @prop {string} unstakeBalance - Unstaking balance of the account
23
+ * @prop {YieldAssetBalance[]} balance - List balance related with stake
24
+ * @prop {boolean} isBondedBefore - Is the account bonded in pool before?
25
+ * @prop {NominationInfo[]} nominations - List nominations account joined - use for nomination pool and native staking
26
+ * @prop {EarningStatus} status - Earning status of the account
27
+ * @prop {UnstakingInfo[]} unstakings - List unstake request of the account - use for nomination pool and native staking
28
+ * */
29
+ export interface AbstractYieldPositionInfo extends BaseYieldPositionInfo {
30
+ /** Token to show */
31
+ balanceToken: string;
32
+ /** Total stake of the account */
33
+ totalStake: string;
34
+ /** Active stake of the account */
35
+ activeStake: string;
36
+ /** Unstaking balance of the account */
37
+ unstakeBalance: string;
38
+ /** Is the account bonded in pool before? */
39
+ isBondedBefore: boolean;
40
+ /** List nominations account joined - use for nomination pool and native staking */
41
+ nominations: NominationInfo[];
42
+ /** Earning status of the account */
43
+ status: EarningStatus;
44
+ /** List unstake request of the account - use for nomination pool and native staking */
45
+ unstakings: UnstakingInfo[];
46
+ }
47
+ /**
48
+ * @interface SpecialYieldPositionInfo
49
+ * @extends AbstractYieldPositionInfo
50
+ * @prop {string} derivativeToken - Derivative token (slug)
51
+ * */
52
+ export interface SpecialYieldPositionInfo extends AbstractYieldPositionInfo {
53
+ type: YieldPoolType.LIQUID_STAKING | YieldPoolType.LENDING;
54
+ /** Derivative token (slug) */
55
+ derivativeToken: string;
56
+ }
57
+ /**
58
+ * @interface LiquidYieldPositionInfo
59
+ * @extends SpecialYieldPositionInfo
60
+ * @prop {YieldPoolType.LIQUID_STAKING} type - Pool's type
61
+ * */
62
+ export interface LiquidYieldPositionInfo extends SpecialYieldPositionInfo {
63
+ type: YieldPoolType.LIQUID_STAKING;
64
+ }
65
+ /**
66
+ * @interface LendingYieldPositionInfo
67
+ * @extends SpecialYieldPositionInfo
68
+ * @prop {YieldPoolType.LENDING} type - Pool's type
69
+ * */
70
+ export interface LendingYieldPositionInfo extends SpecialYieldPositionInfo {
71
+ type: YieldPoolType.LENDING;
72
+ }
73
+ /**
74
+ * @interface NominationYieldPositionInfo
75
+ * @extends AbstractYieldPositionInfo
76
+ * @prop {YieldPoolType.NOMINATION_POOL} type - Pool's type
77
+ * */
78
+ export interface NominationYieldPositionInfo extends AbstractYieldPositionInfo {
79
+ type: YieldPoolType.NOMINATION_POOL;
80
+ }
81
+ /**
82
+ * @interface NativeYieldPositionInfo
83
+ * @extends AbstractYieldPositionInfo
84
+ * @prop {YieldPoolType.NATIVE_STAKING} type - Pool's type
85
+ * */
86
+ export interface NativeYieldPositionInfo extends AbstractYieldPositionInfo {
87
+ type: YieldPoolType.NATIVE_STAKING;
88
+ }
89
+ /**
90
+ * Info of yield pool
91
+ * */
92
+ export declare type YieldPositionInfo = NativeYieldPositionInfo | NominationYieldPositionInfo | LiquidYieldPositionInfo | LendingYieldPositionInfo;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,45 @@
1
+ import { APIItemState } from '@subwallet/extension-base/background/KoniTypes';
2
+ import { BasePoolInfo } from '../base';
3
+ /**
4
+ * @interface EarningRewardItem
5
+ * @extends BasePoolInfo
6
+ * @prop {string} address - Account address
7
+ * @prop {APIItemState} state - State of item
8
+ * @prop {string} [latestReward] - Latest rewarded claimed
9
+ * @prop {string} [totalReward] - Total rewarded claimed
10
+ * @prop {string} [totalSlash] - Total token slashed
11
+ * @prop {string} [unclaimedReward] - Un-claim reward
12
+ * */
13
+ export interface EarningRewardItem extends BasePoolInfo {
14
+ /** Account address */
15
+ address: string;
16
+ /** State of item */
17
+ state: APIItemState;
18
+ /** Latest rewarded claimed */
19
+ latestReward?: string;
20
+ /** Total rewarded claimed */
21
+ totalReward?: string;
22
+ /** Total token slashed */
23
+ totalSlash?: string;
24
+ /** Un-claim reward */
25
+ unclaimedReward?: string;
26
+ }
27
+ export interface EarningRewardJson {
28
+ ready: boolean;
29
+ data: Record<string, EarningRewardItem>;
30
+ }
31
+ /**
32
+ * @interface EarningRewardHistoryItem
33
+ * @extends BasePoolInfo
34
+ * @prop {string} address - Account address
35
+ * @prop {number} blockTimestamp - Reward history's block timestamp
36
+ * @prop {string} amount - Reward history's amount
37
+ * */
38
+ export interface EarningRewardHistoryItem extends BasePoolInfo {
39
+ /** Account address */
40
+ address: string;
41
+ /** Reward history's block timestamp */
42
+ blockTimestamp: number;
43
+ /** Reward history's amount */
44
+ amount: string;
45
+ }
@@ -0,0 +1 @@
1
+ export {};