@subwallet/extension-base 1.0.3-0 → 1.0.4-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 +25 -15
- package/background/KoniTypes.js +1 -0
- package/cjs/background/KoniTypes.js +1 -0
- package/cjs/koni/api/staking/bonding/amplitude.js +9 -2
- package/cjs/koni/api/staking/bonding/astar.js +9 -1
- package/cjs/koni/api/staking/bonding/paraChain.js +10 -2
- package/cjs/koni/api/staking/bonding/relayChain.js +21 -4
- package/cjs/koni/background/handlers/Extension.js +61 -19
- package/cjs/koni/background/handlers/State.js +12 -0
- package/cjs/packageInfo.js +1 -1
- package/cjs/services/chain-service/constants.js +17 -2
- package/cjs/services/chain-service/handler/SubstrateChainHandler.js +1 -1
- package/cjs/services/chain-service/index.js +96 -18
- package/cjs/services/keyring-service/index.js +9 -0
- package/cjs/services/migration-service/index.js +7 -4
- package/cjs/services/migration-service/scripts/MigrateAuthUrls.js +39 -0
- package/cjs/services/migration-service/scripts/index.js +3 -1
- package/cjs/services/price-service/index.js +0 -1
- package/cjs/services/request-service/handler/AuthRequestHandler.js +7 -0
- package/cjs/services/request-service/handler/EvmRequestHandler.js +21 -0
- package/cjs/services/request-service/handler/MetadataRequestHandler.js +6 -0
- package/cjs/services/request-service/handler/SubstrateRequestHandler.js +6 -0
- package/cjs/services/request-service/index.js +6 -0
- package/cjs/services/setting-service/SettingService.js +4 -9
- package/cjs/services/setting-service/constants.js +12 -2
- package/cjs/services/storage-service/DatabaseService.js +14 -0
- package/cjs/services/storage-service/databases/index.js +1 -1
- package/cjs/services/storage-service/db-stores/BaseStore.js +3 -0
- package/cjs/services/transaction-service/index.js +3 -0
- package/koni/api/staking/bonding/amplitude.js +9 -2
- package/koni/api/staking/bonding/astar.js +9 -1
- package/koni/api/staking/bonding/paraChain.js +10 -2
- package/koni/api/staking/bonding/relayChain.js +21 -4
- package/koni/background/handlers/Extension.d.ts +1 -0
- package/koni/background/handlers/Extension.js +42 -1
- package/koni/background/handlers/State.d.ts +1 -0
- package/koni/background/handlers/State.js +12 -0
- package/package.json +21 -16
- package/packageInfo.js +1 -1
- package/services/chain-service/constants.d.ts +6 -0
- package/services/chain-service/constants.js +10 -1
- package/services/chain-service/handler/SubstrateChainHandler.js +1 -1
- package/services/chain-service/index.d.ts +3 -1
- package/services/chain-service/index.js +97 -19
- package/services/keyring-service/index.d.ts +1 -0
- package/services/keyring-service/index.js +9 -0
- package/services/migration-service/index.js +7 -4
- package/services/migration-service/scripts/MigrateAuthUrls.d.ts +4 -0
- package/services/migration-service/scripts/MigrateAuthUrls.js +31 -0
- package/services/migration-service/scripts/index.js +3 -1
- package/services/price-service/index.js +0 -1
- package/services/request-service/handler/AuthRequestHandler.d.ts +1 -0
- package/services/request-service/handler/AuthRequestHandler.js +7 -0
- package/services/request-service/handler/EvmRequestHandler.d.ts +1 -0
- package/services/request-service/handler/EvmRequestHandler.js +21 -0
- package/services/request-service/handler/MetadataRequestHandler.d.ts +1 -0
- package/services/request-service/handler/MetadataRequestHandler.js +6 -0
- package/services/request-service/handler/SubstrateRequestHandler.d.ts +1 -0
- package/services/request-service/handler/SubstrateRequestHandler.js +6 -0
- package/services/request-service/index.d.ts +1 -0
- package/services/request-service/index.js +6 -0
- package/services/setting-service/SettingService.d.ts +1 -0
- package/services/setting-service/SettingService.js +5 -10
- package/services/setting-service/constants.d.ts +2 -1
- package/services/setting-service/constants.js +10 -1
- package/services/storage-service/DatabaseService.d.ts +1 -0
- package/services/storage-service/DatabaseService.js +14 -0
- package/services/storage-service/databases/index.js +1 -1
- package/services/storage-service/db-stores/BaseStore.d.ts +1 -0
- package/services/storage-service/db-stores/BaseStore.js +3 -0
- package/services/transaction-service/index.d.ts +1 -0
- package/services/transaction-service/index.js +3 -0
- /package/cjs/services/chain-service/{heath-check → health-check}/index.js +0 -0
- /package/services/chain-service/{heath-check → health-check}/index.d.ts +0 -0
- /package/services/chain-service/{heath-check → health-check}/index.js +0 -0
|
@@ -200,4 +200,25 @@ export default class EvmRequestHandler {
|
|
|
200
200
|
}
|
|
201
201
|
return true;
|
|
202
202
|
}
|
|
203
|
+
resetWallet() {
|
|
204
|
+
const confirmations = this.confirmationsQueueSubject.getValue();
|
|
205
|
+
for (const [type, requests] of Object.entries(confirmations)) {
|
|
206
|
+
for (const confirmation of Object.values(requests)) {
|
|
207
|
+
const {
|
|
208
|
+
id
|
|
209
|
+
} = confirmation;
|
|
210
|
+
const {
|
|
211
|
+
resolver
|
|
212
|
+
} = this.confirmationsPromiseMap[id];
|
|
213
|
+
if (!resolver || !confirmation) {
|
|
214
|
+
console.error('Not found confirmation', type, id);
|
|
215
|
+
} else {
|
|
216
|
+
resolver.reject(new Error('Reset wallet'));
|
|
217
|
+
}
|
|
218
|
+
delete this.confirmationsPromiseMap[id];
|
|
219
|
+
delete confirmations[type][id];
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
this.confirmationsQueueSubject.next(confirmations);
|
|
223
|
+
}
|
|
203
224
|
}
|
|
@@ -72,4 +72,10 @@ export default class MetadataRequestHandler {
|
|
|
72
72
|
this.#requestService.popupOpen();
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
|
+
resetWallet() {
|
|
76
|
+
for (const request of Object.values(this.#metaRequests)) {
|
|
77
|
+
request.reject(new Error('Reset wallet'));
|
|
78
|
+
}
|
|
79
|
+
this.metaSubject.next([]);
|
|
80
|
+
}
|
|
75
81
|
}
|
|
@@ -14,4 +14,5 @@ export default class SubstrateRequestHandler {
|
|
|
14
14
|
get numSubstrateRequests(): number;
|
|
15
15
|
sign(url: string, request: RequestSign, account: AccountJson): Promise<ResponseSigning>;
|
|
16
16
|
signTransaction(id: string, address: string, url: string, payload: SignerPayloadJSON): Promise<ResponseSigning>;
|
|
17
|
+
resetWallet(): void;
|
|
17
18
|
}
|
|
@@ -51,4 +51,5 @@ export default class RequestService {
|
|
|
51
51
|
addConfirmation<CT extends ConfirmationType>(id: string, url: string, type: CT, payload: ConfirmationDefinitions[CT][0]['payload'], options?: ConfirmationsQueueItemOptions, validator?: (input: ConfirmationDefinitions[CT][1]) => Error | undefined): Promise<ConfirmationDefinitions[CT][1]>;
|
|
52
52
|
completeConfirmation(request: RequestConfirmationComplete): Promise<boolean>;
|
|
53
53
|
get numRequests(): number;
|
|
54
|
+
resetWallet(): void;
|
|
54
55
|
}
|
|
@@ -156,4 +156,10 @@ export default class RequestService {
|
|
|
156
156
|
get numRequests() {
|
|
157
157
|
return this.numMetaRequests + this.numAuthRequests + this.numSubstrateRequests + this.numEvmRequests;
|
|
158
158
|
}
|
|
159
|
+
resetWallet() {
|
|
160
|
+
this.#authRequestHandler.resetWallet();
|
|
161
|
+
this.#substrateRequestHandler.resetWallet();
|
|
162
|
+
this.#evmRequestHandler.resetWallet();
|
|
163
|
+
this.#metadataRequestHandler.resetWallet();
|
|
164
|
+
}
|
|
159
165
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
4
|
import SettingsStore from '@subwallet/extension-base/stores/Settings';
|
|
5
|
-
import {
|
|
5
|
+
import { DEFAULT_SETTING } from "./constants.js";
|
|
6
6
|
export default class SettingService {
|
|
7
7
|
settingsStore = new SettingsStore();
|
|
8
8
|
getSubject() {
|
|
@@ -11,15 +11,7 @@ export default class SettingService {
|
|
|
11
11
|
getSettings(update) {
|
|
12
12
|
this.settingsStore.get('Settings', value => {
|
|
13
13
|
if (!value) {
|
|
14
|
-
update(
|
|
15
|
-
// language: 'en',
|
|
16
|
-
browserConfirmationType: DEFAULT_NOTIFICATION_TYPE,
|
|
17
|
-
// isShowZeroBalance: true,
|
|
18
|
-
isShowBalance: false,
|
|
19
|
-
accountAllLogo: '',
|
|
20
|
-
theme: DEFAULT_THEME,
|
|
21
|
-
camera: false
|
|
22
|
-
});
|
|
14
|
+
update(DEFAULT_SETTING);
|
|
23
15
|
} else {
|
|
24
16
|
update(value);
|
|
25
17
|
}
|
|
@@ -28,4 +20,7 @@ export default class SettingService {
|
|
|
28
20
|
setSettings(data, callback) {
|
|
29
21
|
this.settingsStore.set('Settings', data, callback);
|
|
30
22
|
}
|
|
23
|
+
resetWallet() {
|
|
24
|
+
this.settingsStore.set('Settings', DEFAULT_SETTING);
|
|
25
|
+
}
|
|
31
26
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { BrowserConfirmationType, ThemeNames } from '@subwallet/extension-base/background/KoniTypes';
|
|
1
|
+
import { BrowserConfirmationType, RequestSettingsType, ThemeNames } from '@subwallet/extension-base/background/KoniTypes';
|
|
2
2
|
export declare const DEFAULT_THEME: ThemeNames;
|
|
3
3
|
export declare const DEFAULT_NOTIFICATION_TYPE: BrowserConfirmationType;
|
|
4
|
+
export declare const DEFAULT_SETTING: RequestSettingsType;
|
|
@@ -3,4 +3,13 @@
|
|
|
3
3
|
|
|
4
4
|
import { ThemeNames } from '@subwallet/extension-base/background/KoniTypes';
|
|
5
5
|
export const DEFAULT_THEME = ThemeNames.DARK;
|
|
6
|
-
export const DEFAULT_NOTIFICATION_TYPE = 'popup';
|
|
6
|
+
export const DEFAULT_NOTIFICATION_TYPE = 'popup';
|
|
7
|
+
export const DEFAULT_SETTING = {
|
|
8
|
+
// language: 'en',
|
|
9
|
+
browserConfirmationType: DEFAULT_NOTIFICATION_TYPE,
|
|
10
|
+
// isShowZeroBalance: true,
|
|
11
|
+
isShowBalance: false,
|
|
12
|
+
accountAllLogo: '',
|
|
13
|
+
theme: DEFAULT_THEME,
|
|
14
|
+
camera: false
|
|
15
|
+
};
|
|
@@ -63,4 +63,5 @@ export default class DatabaseService {
|
|
|
63
63
|
getStakingMetadataByChain(chain: string, type?: StakingType): Promise<ChainStakingMetadata | undefined>;
|
|
64
64
|
updateNominatorMetadata(item: NominatorMetadata): Promise<unknown>;
|
|
65
65
|
getNominatorMetadata(): Promise<NominatorMetadata[]>;
|
|
66
|
+
resetWallet(resetAll: boolean): Promise<void>;
|
|
66
67
|
}
|
|
@@ -248,4 +248,18 @@ export default class DatabaseService {
|
|
|
248
248
|
async getNominatorMetadata() {
|
|
249
249
|
return this.stores.nominatorMetadata.getAll();
|
|
250
250
|
}
|
|
251
|
+
async resetWallet(resetAll) {
|
|
252
|
+
return new Promise((resolve, reject) => {
|
|
253
|
+
const stores = [this.stores.balance, this.stores.nft, this.stores.nftCollection, this.stores.crowdloan, this.stores.staking, this.stores.transaction, this.stores.nominatorMetadata];
|
|
254
|
+
if (resetAll) {
|
|
255
|
+
stores.push(this.stores.chain, this.stores.asset);
|
|
256
|
+
}
|
|
257
|
+
const promises = stores.map(store => store.clear());
|
|
258
|
+
Promise.all(promises).then(() => {
|
|
259
|
+
resolve();
|
|
260
|
+
}).catch(e => {
|
|
261
|
+
reject(e);
|
|
262
|
+
});
|
|
263
|
+
});
|
|
264
|
+
}
|
|
251
265
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import Dexie from 'dexie';
|
|
5
5
|
const DEFAULT_DATABASE = 'SubWalletDB_v2';
|
|
6
6
|
export default class KoniDatabase extends Dexie {
|
|
7
|
-
constructor(name = DEFAULT_DATABASE, schemaVersion =
|
|
7
|
+
constructor(name = DEFAULT_DATABASE, schemaVersion = 11) {
|
|
8
8
|
super(name);
|
|
9
9
|
this.schemaVersion = schemaVersion;
|
|
10
10
|
this.conditionalVersion(1, {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|