@subwallet/extension-base 1.1.29-beta.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.
- package/background/KoniTypes.d.ts +2 -1
- package/cjs/constants/index.js +11 -2
- package/cjs/koni/background/cron.js +10 -2
- package/cjs/koni/background/handlers/Extension.js +15 -0
- package/cjs/koni/background/subscription.js +12 -24
- package/cjs/services/earning-service/handlers/base.js +5 -3
- package/cjs/services/earning-service/handlers/lending/interlay.js +8 -0
- package/cjs/services/earning-service/handlers/liquid-staking/acala.js +16 -5
- package/cjs/services/earning-service/handlers/liquid-staking/bifrost.js +17 -1
- package/cjs/services/earning-service/handlers/liquid-staking/parallel.js +9 -3
- package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +38 -11
- package/cjs/services/earning-service/handlers/native-staking/amplitude.js +4 -2
- package/cjs/services/earning-service/handlers/native-staking/astar.js +11 -6
- package/cjs/services/earning-service/handlers/native-staking/base.js +45 -5
- package/cjs/services/earning-service/handlers/native-staking/para-chain.js +3 -1
- package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +3 -1
- package/cjs/services/earning-service/handlers/nomination-pool/index.js +14 -1
- package/cjs/services/earning-service/handlers/special.js +7 -8
- package/cjs/services/earning-service/service.js +41 -5
- package/cjs/services/subscan-service/index.js +16 -0
- package/constants/index.d.ts +4 -1
- package/constants/index.js +4 -1
- package/koni/background/cron.d.ts +1 -0
- package/koni/background/cron.js +11 -3
- package/koni/background/handlers/Extension.d.ts +1 -0
- package/koni/background/handlers/Extension.js +15 -0
- package/koni/background/subscription.d.ts +1 -0
- package/koni/background/subscription.js +12 -23
- package/package.json +1 -1
- package/services/earning-service/handlers/base.d.ts +5 -1
- package/services/earning-service/handlers/base.js +5 -3
- package/services/earning-service/handlers/lending/interlay.d.ts +3 -2
- package/services/earning-service/handlers/lending/interlay.js +8 -0
- package/services/earning-service/handlers/liquid-staking/acala.d.ts +3 -4
- package/services/earning-service/handlers/liquid-staking/acala.js +16 -5
- package/services/earning-service/handlers/liquid-staking/bifrost.d.ts +4 -3
- package/services/earning-service/handlers/liquid-staking/bifrost.js +17 -1
- package/services/earning-service/handlers/liquid-staking/parallel.d.ts +3 -5
- package/services/earning-service/handlers/liquid-staking/parallel.js +9 -3
- package/services/earning-service/handlers/liquid-staking/stella-swap.d.ts +4 -6
- package/services/earning-service/handlers/liquid-staking/stella-swap.js +38 -11
- package/services/earning-service/handlers/native-staking/amplitude.js +4 -2
- package/services/earning-service/handlers/native-staking/astar.d.ts +2 -2
- package/services/earning-service/handlers/native-staking/astar.js +11 -6
- package/services/earning-service/handlers/native-staking/base.d.ts +3 -2
- package/services/earning-service/handlers/native-staking/base.js +45 -5
- package/services/earning-service/handlers/native-staking/para-chain.js +3 -1
- package/services/earning-service/handlers/native-staking/relay-chain.js +3 -1
- package/services/earning-service/handlers/nomination-pool/index.d.ts +3 -1
- package/services/earning-service/handlers/nomination-pool/index.js +15 -2
- package/services/earning-service/handlers/special.d.ts +1 -4
- package/services/earning-service/handlers/special.js +7 -8
- package/services/earning-service/service.d.ts +7 -2
- package/services/earning-service/service.js +41 -5
- package/services/subscan-service/index.d.ts +2 -1
- package/services/subscan-service/index.js +15 -0
- package/services/subscan-service/types.d.ts +20 -0
- package/types/yield/info/account/info.d.ts +2 -11
- package/types/yield/info/account/reward.d.ts +15 -0
- package/types/yield/info/chain/info.d.ts +29 -3
|
@@ -237,4 +237,19 @@ export class SubscanService {
|
|
|
237
237
|
await _getTransferItems(0);
|
|
238
238
|
return resultMap;
|
|
239
239
|
}
|
|
240
|
+
getRewardHistoryList(chain, address, page = 0) {
|
|
241
|
+
return this.addRequest(async () => {
|
|
242
|
+
const rs = await this.postRequest(this.getApiUrl(chain, 'api/scan/account/reward_slash'), {
|
|
243
|
+
page,
|
|
244
|
+
category: 'Reward',
|
|
245
|
+
row: 10,
|
|
246
|
+
address
|
|
247
|
+
});
|
|
248
|
+
if (rs.status !== 200) {
|
|
249
|
+
throw new SWError('SubscanService.getRewardHistoryList', await rs.text());
|
|
250
|
+
}
|
|
251
|
+
const jsonData = await rs.json();
|
|
252
|
+
return jsonData.data;
|
|
253
|
+
});
|
|
254
|
+
}
|
|
240
255
|
}
|
|
@@ -175,3 +175,23 @@ export declare type RequestBlockRange = {
|
|
|
175
175
|
from: number | null;
|
|
176
176
|
to: number | null;
|
|
177
177
|
};
|
|
178
|
+
export interface RewardHistoryItem {
|
|
179
|
+
block_num: number;
|
|
180
|
+
extrinsic_idx: number;
|
|
181
|
+
stash: string;
|
|
182
|
+
account: string;
|
|
183
|
+
module_id: string;
|
|
184
|
+
event_id: string;
|
|
185
|
+
event_method: string;
|
|
186
|
+
params: string;
|
|
187
|
+
extrinsic_hash: string;
|
|
188
|
+
event_idx: number;
|
|
189
|
+
amount: string;
|
|
190
|
+
block_timestamp: number;
|
|
191
|
+
event_index: string;
|
|
192
|
+
extrinsic_index: string;
|
|
193
|
+
}
|
|
194
|
+
export interface RewardHistoryListResponse {
|
|
195
|
+
count: number;
|
|
196
|
+
list: null | RewardHistoryItem[];
|
|
197
|
+
}
|
|
@@ -17,11 +17,6 @@ export interface BaseYieldPositionInfo extends BasePoolInfo {
|
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
19
|
* @interface AbstractYieldPositionInfo
|
|
20
|
-
* @prop {string} address - Account address
|
|
21
|
-
* @prop {string} chain - Chain's slug
|
|
22
|
-
* @prop {YieldPoolGroup} group - Pool's group
|
|
23
|
-
* @prop {string} slug - Pool's slug
|
|
24
|
-
* @prop {YieldPoolType} type - Pool's type
|
|
25
20
|
* @prop {string} totalStake - Total stake of the account
|
|
26
21
|
* @prop {string} activeStake - Active stake of the account
|
|
27
22
|
* @prop {string} unstakeBalance - Unstaking balance of the account
|
|
@@ -52,15 +47,11 @@ export interface AbstractYieldPositionInfo extends BaseYieldPositionInfo {
|
|
|
52
47
|
/**
|
|
53
48
|
* @interface SpecialYieldPositionInfo
|
|
54
49
|
* @extends AbstractYieldPositionInfo
|
|
55
|
-
* @prop {string}
|
|
50
|
+
* @prop {string} derivativeToken - Derivative token (slug)
|
|
56
51
|
* */
|
|
57
52
|
export interface SpecialYieldPositionInfo extends AbstractYieldPositionInfo {
|
|
58
53
|
type: YieldPoolType.LIQUID_STAKING | YieldPoolType.LENDING;
|
|
59
|
-
/**
|
|
60
|
-
* <p>Derivative token - Token got after stake (slug)</p>
|
|
61
|
-
* <p>To detect exchange rate</p>
|
|
62
|
-
* <p>Exchange rate = root token amount / balance token amount</p>
|
|
63
|
-
* */
|
|
54
|
+
/** Derivative token (slug) */
|
|
64
55
|
derivativeToken: string;
|
|
65
56
|
}
|
|
66
57
|
/**
|
|
@@ -28,3 +28,18 @@ export interface EarningRewardJson {
|
|
|
28
28
|
ready: boolean;
|
|
29
29
|
data: Record<string, EarningRewardItem>;
|
|
30
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
|
+
}
|
|
@@ -19,6 +19,29 @@ export interface YieldAssetEarningStats {
|
|
|
19
19
|
* */
|
|
20
20
|
exchangeRate?: number;
|
|
21
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* @interface YieldPoolMethodInfo
|
|
24
|
+
* @prop {boolean} join - Pool can join
|
|
25
|
+
* @prop {boolean} defaultUnstake - Pool can default unstake
|
|
26
|
+
* @prop {boolean} fastUnstake - Pool can fast unstake
|
|
27
|
+
* @prop {boolean} cancelUnstake - Pool can cancel unstake
|
|
28
|
+
* @prop {boolean} withdraw - Pool can withdraw
|
|
29
|
+
* @prop {boolean} claimReward - Pool can claim reward
|
|
30
|
+
* */
|
|
31
|
+
export interface YieldPoolMethodInfo {
|
|
32
|
+
/** Pool can join */
|
|
33
|
+
join: boolean;
|
|
34
|
+
/** Pool can default unstake */
|
|
35
|
+
defaultUnstake: boolean;
|
|
36
|
+
/** Pool can fast unstake */
|
|
37
|
+
fastUnstake: boolean;
|
|
38
|
+
/** Pool can cancel unstake */
|
|
39
|
+
cancelUnstake: boolean;
|
|
40
|
+
/** Pool can withdraw */
|
|
41
|
+
withdraw: boolean;
|
|
42
|
+
/** Pool can claim reward */
|
|
43
|
+
claimReward: boolean;
|
|
44
|
+
}
|
|
22
45
|
/**
|
|
23
46
|
* @interface BaseYieldPoolMetadata
|
|
24
47
|
* @prop {string} description - Pool's description
|
|
@@ -27,9 +50,9 @@ export interface YieldAssetEarningStats {
|
|
|
27
50
|
* @prop {string} logo - Pool's logo
|
|
28
51
|
* @prop {boolean} isAvailable - Is the pool available?
|
|
29
52
|
* @prop {string} inputAsset - Input token (slug)
|
|
30
|
-
* @prop {boolean} allowCancelUnstaking - Allow canceling un-stake
|
|
31
53
|
* @prop {string} maintainAsset - Asset to maintain account's pool
|
|
32
54
|
* @prop {string} maintainBalance - Balance to maintain account's pool
|
|
55
|
+
* @prop {YieldPoolMethodInfo} availableMethod - Pool's available method
|
|
33
56
|
* */
|
|
34
57
|
export interface BaseYieldPoolMetadata {
|
|
35
58
|
/** Pool's description */
|
|
@@ -44,12 +67,12 @@ export interface BaseYieldPoolMetadata {
|
|
|
44
67
|
inputAsset: string;
|
|
45
68
|
/** Is the pool available? */
|
|
46
69
|
isAvailable: boolean;
|
|
47
|
-
/** Allow to cancel un-stake */
|
|
48
|
-
allowCancelUnstaking: boolean;
|
|
49
70
|
/** Asset to maintain account's pool */
|
|
50
71
|
maintainAsset: string;
|
|
51
72
|
/** Balance to maintain account's pool */
|
|
52
73
|
maintainBalance: string;
|
|
74
|
+
/** Pool's available method */
|
|
75
|
+
availableMethod: YieldPoolMethodInfo;
|
|
53
76
|
}
|
|
54
77
|
/**
|
|
55
78
|
* @interface NormalYieldPoolMetadata
|
|
@@ -117,12 +140,15 @@ export interface BaseYieldPoolStatistic {
|
|
|
117
140
|
* @interface NormalYieldPoolStatistic
|
|
118
141
|
* @extends BaseYieldPoolStatistic
|
|
119
142
|
* @prop {number} era - Current era of network
|
|
143
|
+
* @prop {number} eraTime - Time of an era - in hour
|
|
120
144
|
* @prop {number} unstakingPeriod - Time to wait withdraw un-stake, in hour
|
|
121
145
|
* @prop {number} [inflation] - Inflation rate
|
|
122
146
|
* */
|
|
123
147
|
export interface NormalYieldPoolStatistic extends BaseYieldPoolStatistic {
|
|
124
148
|
/** Current era of network */
|
|
125
149
|
era: number;
|
|
150
|
+
/** Time of an era - in hour */
|
|
151
|
+
eraTime: number;
|
|
126
152
|
/** Time to wait withdraw un-stake, in hour */
|
|
127
153
|
unstakingPeriod: number;
|
|
128
154
|
/** Inflation rate */
|