@bsv/wallet-toolbox 1.1.34 → 1.1.36
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/docs/client.md +215 -213
- package/docs/setup.md +2 -2
- package/docs/storage.md +140 -34
- package/docs/wallet.md +215 -213
- package/out/src/Setup.d.ts.map +1 -1
- package/out/src/Setup.js +2 -2
- package/out/src/Setup.js.map +1 -1
- package/out/src/sdk/WERR_errors.d.ts +1 -1
- package/out/src/sdk/WERR_errors.d.ts.map +1 -1
- package/out/src/sdk/WERR_errors.js +2 -2
- package/out/src/sdk/WERR_errors.js.map +1 -1
- package/out/src/sdk/WalletStorage.interfaces.d.ts +107 -0
- package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
- package/out/src/sdk/index.d.ts +0 -2
- package/out/src/sdk/index.d.ts.map +1 -1
- package/out/src/sdk/index.js +0 -2
- package/out/src/sdk/index.js.map +1 -1
- package/out/src/services/__tests/verifyBeef.test.d.ts +2 -0
- package/out/src/services/__tests/verifyBeef.test.d.ts.map +1 -0
- package/out/src/services/__tests/verifyBeef.test.js +16 -0
- package/out/src/services/__tests/verifyBeef.test.js.map +1 -0
- package/out/src/services/providers/__tests/WhatsOnChain.test.js +11 -0
- package/out/src/services/providers/__tests/WhatsOnChain.test.js.map +1 -1
- package/out/src/storage/StorageReader.d.ts +1 -1
- package/out/src/storage/StorageReader.d.ts.map +1 -1
- package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
- package/out/src/storage/StorageReaderWriter.js +2 -1
- package/out/src/storage/StorageReaderWriter.js.map +1 -1
- package/out/src/storage/StorageSyncReader.d.ts +2 -18
- package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
- package/out/src/storage/StorageSyncReader.js +1 -105
- package/out/src/storage/StorageSyncReader.js.map +1 -1
- package/out/src/storage/WalletStorageManager.d.ts +86 -10
- package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
- package/out/src/storage/WalletStorageManager.js +239 -79
- package/out/src/storage/WalletStorageManager.js.map +1 -1
- package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
- package/out/src/storage/schema/KnexMigrations.js +19 -0
- package/out/src/storage/schema/KnexMigrations.js.map +1 -1
- package/out/src/storage/schema/entities/SyncState.js +1 -1
- package/out/src/storage/schema/entities/User.d.ts +2 -2
- package/out/src/storage/schema/entities/User.d.ts.map +1 -1
- package/out/src/storage/schema/entities/User.js +1 -1
- package/out/src/storage/schema/entities/User.js.map +1 -1
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js +2 -1
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js.map +1 -1
- package/out/src/storage/schema/entities/__tests/usersTests.test.js +12 -6
- package/out/src/storage/schema/entities/__tests/usersTests.test.js.map +1 -1
- package/out/src/storage/schema/tables/User.d.ts +1 -1
- package/out/src/storage/schema/tables/User.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.js +4 -5
- package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.js +25 -13
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.js.map +1 -1
- package/out/test/Wallet/sync/setActive.test.d.ts +2 -0
- package/out/test/Wallet/sync/setActive.test.d.ts.map +1 -0
- package/out/test/Wallet/sync/setActive.test.js +131 -0
- package/out/test/Wallet/sync/setActive.test.js.map +1 -0
- package/out/test/examples/{backup.test.d.ts → backup.man.test.d.ts} +1 -1
- package/out/test/examples/backup.man.test.d.ts.map +1 -0
- package/out/test/examples/{backup.test.js → backup.man.test.js} +1 -1
- package/out/test/examples/backup.man.test.js.map +1 -0
- package/out/test/examples/pushdrop.test.d.ts.map +1 -1
- package/out/test/examples/pushdrop.test.js +2 -6
- package/out/test/examples/pushdrop.test.js.map +1 -1
- package/out/test/storage/StorageMySQLDojoReader.man.test.js.map +1 -1
- package/out/test/storage/count.test.js +1 -0
- package/out/test/storage/count.test.js.map +1 -1
- package/out/test/storage/find.test.js +1 -0
- package/out/test/storage/find.test.js.map +1 -1
- package/out/test/storage/update.test.js +3 -1
- package/out/test/storage/update.test.js.map +1 -1
- package/out/test/storage/update2.test.js +5 -2
- package/out/test/storage/update2.test.js.map +1 -1
- package/out/test/utils/TestUtilsWalletStorage.d.ts +4 -0
- package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -1
- package/out/test/utils/TestUtilsWalletStorage.js +10 -5
- package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
- package/out/test/wallet/sync/Wallet.sync.test.js +23 -8
- package/out/test/wallet/sync/Wallet.sync.test.js.map +1 -1
- package/out/tsconfig.all.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/Setup.ts +3 -2
- package/src/sdk/WERR_errors.ts +3 -2
- package/src/sdk/WalletStorage.interfaces.ts +117 -0
- package/src/sdk/index.ts +0 -2
- package/src/services/__tests/verifyBeef.test.ts +18 -0
- package/src/services/providers/__tests/WhatsOnChain.test.ts +16 -1
- package/src/storage/StorageReader.ts +1 -1
- package/src/storage/StorageReaderWriter.ts +2 -1
- package/src/storage/StorageSyncReader.ts +2 -109
- package/src/storage/WalletStorageManager.ts +317 -87
- package/src/storage/schema/KnexMigrations.ts +23 -1
- package/src/storage/schema/entities/SyncState.ts +1 -1
- package/src/storage/schema/entities/User.ts +2 -2
- package/src/storage/schema/entities/__tests/SyncStateTests.test.ts +2 -1
- package/src/storage/schema/entities/__tests/usersTests.test.ts +12 -6
- package/src/storage/schema/tables/User.ts +1 -1
- package/src/storage/sync/StorageMySQLDojoReader.ts +8 -6
- package/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.ts +30 -13
- package/test/Wallet/sync/setActive.test.ts +147 -0
- package/test/examples/pushdrop.test.ts +3 -8
- package/test/storage/StorageMySQLDojoReader.man.test.ts +1 -1
- package/test/storage/count.test.ts +1 -0
- package/test/storage/find.test.ts +1 -0
- package/test/storage/update.test.ts +3 -1
- package/test/storage/update2.test.ts +5 -2
- package/test/utils/TestUtilsWalletStorage.ts +15 -5
- package/test/wallet/sync/Wallet.sync.test.ts +28 -8
- package/out/src/sdk/StorageSyncReader.d.ts +0 -121
- package/out/src/sdk/StorageSyncReader.d.ts.map +0 -1
- package/out/src/sdk/StorageSyncReader.js +0 -3
- package/out/src/sdk/StorageSyncReader.js.map +0 -1
- package/out/src/sdk/StorageSyncReaderWriter.d.ts +0 -89
- package/out/src/sdk/StorageSyncReaderWriter.d.ts.map +0 -1
- package/out/src/sdk/StorageSyncReaderWriter.js +0 -3
- package/out/src/sdk/StorageSyncReaderWriter.js.map +0 -1
- package/out/test/examples/backup.test.d.ts.map +0 -1
- package/out/test/examples/backup.test.js.map +0 -1
- package/src/sdk/StorageSyncReader.ts +0 -173
- package/src/sdk/StorageSyncReaderWriter.ts +0 -277
- /package/test/examples/{backup.test.ts → backup.man.test.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageSyncReader.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageSyncReader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,
|
|
1
|
+
{"version":3,"file":"StorageSyncReader.d.ts","sourceRoot":"","sources":["../../../src/storage/StorageSyncReader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EAWH,aAAa,EAMd,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C;;;;;GAKG;AACH,qBAAa,iBAAkB,YAAW,GAAG,CAAC,uBAAuB;IAE1D,IAAI,EAAE,GAAG,CAAC,MAAM;IAChB,OAAO,EAAE,aAAa;gBADtB,IAAI,EAAE,GAAG,CAAC,MAAM,EAChB,OAAO,EAAE,aAAa;IAGzB,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;IAW7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAGlB,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;CAM3E"}
|
|
@@ -13,9 +13,6 @@ class StorageSyncReader {
|
|
|
13
13
|
this.auth = auth;
|
|
14
14
|
this.storage = storage;
|
|
15
15
|
}
|
|
16
|
-
isAvailable() {
|
|
17
|
-
return this.storage.isAvailable();
|
|
18
|
-
}
|
|
19
16
|
async makeAvailable() {
|
|
20
17
|
await this.storage.makeAvailable();
|
|
21
18
|
if (this.auth.userId === undefined) {
|
|
@@ -24,14 +21,11 @@ class StorageSyncReader {
|
|
|
24
21
|
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
25
22
|
this.auth.userId = user.userId;
|
|
26
23
|
}
|
|
27
|
-
return this.getSettings();
|
|
24
|
+
return this.storage.getSettings();
|
|
28
25
|
}
|
|
29
26
|
destroy() {
|
|
30
27
|
return this.storage.destroy();
|
|
31
28
|
}
|
|
32
|
-
getSettings() {
|
|
33
|
-
return this.storage.getSettings();
|
|
34
|
-
}
|
|
35
29
|
async getSyncChunk(args) {
|
|
36
30
|
if (!this.auth.userId)
|
|
37
31
|
await this.makeAvailable();
|
|
@@ -39,104 +33,6 @@ class StorageSyncReader {
|
|
|
39
33
|
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
40
34
|
return await this.storage.getSyncChunk(args);
|
|
41
35
|
}
|
|
42
|
-
async findUserByIdentityKey(key) {
|
|
43
|
-
if (!this.auth.userId)
|
|
44
|
-
await this.makeAvailable();
|
|
45
|
-
if (key !== this.auth.identityKey)
|
|
46
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
47
|
-
return await this.storage.findUserByIdentityKey(key);
|
|
48
|
-
}
|
|
49
|
-
async findSyncStates(args) {
|
|
50
|
-
if (!this.auth.userId)
|
|
51
|
-
await this.makeAvailable();
|
|
52
|
-
if (args.partial.userId !== this.auth.userId)
|
|
53
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
54
|
-
return await this.storage.findSyncStates(args);
|
|
55
|
-
}
|
|
56
|
-
async findCertificateFields(args) {
|
|
57
|
-
if (!this.auth.userId)
|
|
58
|
-
await this.makeAvailable();
|
|
59
|
-
if (args.partial.userId !== this.auth.userId)
|
|
60
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
61
|
-
return await this.storage.findCertificateFields(args);
|
|
62
|
-
}
|
|
63
|
-
async findCertificates(args) {
|
|
64
|
-
if (!this.auth.userId)
|
|
65
|
-
await this.makeAvailable();
|
|
66
|
-
if (args.partial.userId !== this.auth.userId)
|
|
67
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
68
|
-
return await this.storage.findCertificates(args);
|
|
69
|
-
}
|
|
70
|
-
async findCommissions(args) {
|
|
71
|
-
if (!this.auth.userId)
|
|
72
|
-
await this.makeAvailable();
|
|
73
|
-
if (args.partial.userId !== this.auth.userId)
|
|
74
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
75
|
-
return await this.storage.findCommissions(args);
|
|
76
|
-
}
|
|
77
|
-
async findOutputBaskets(args) {
|
|
78
|
-
if (!this.auth.userId)
|
|
79
|
-
await this.makeAvailable();
|
|
80
|
-
if (args.partial.userId !== this.auth.userId)
|
|
81
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
82
|
-
return await this.storage.findOutputBaskets(args);
|
|
83
|
-
}
|
|
84
|
-
async findOutputs(args) {
|
|
85
|
-
if (!this.auth.userId)
|
|
86
|
-
await this.makeAvailable();
|
|
87
|
-
if (args.partial.userId !== this.auth.userId)
|
|
88
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
89
|
-
return await this.storage.findOutputs(args);
|
|
90
|
-
}
|
|
91
|
-
async findOutputTags(args) {
|
|
92
|
-
if (!this.auth.userId)
|
|
93
|
-
await this.makeAvailable();
|
|
94
|
-
if (args.partial.userId !== this.auth.userId)
|
|
95
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
96
|
-
return await this.storage.findOutputTags(args);
|
|
97
|
-
}
|
|
98
|
-
async findTransactions(args) {
|
|
99
|
-
if (!this.auth.userId)
|
|
100
|
-
await this.makeAvailable();
|
|
101
|
-
if (args.partial.userId !== this.auth.userId)
|
|
102
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
103
|
-
return await this.storage.findTransactions(args);
|
|
104
|
-
}
|
|
105
|
-
async findTxLabels(args) {
|
|
106
|
-
if (!this.auth.userId)
|
|
107
|
-
await this.makeAvailable();
|
|
108
|
-
if (args.partial.userId !== this.auth.userId)
|
|
109
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
110
|
-
return await this.storage.findTxLabels(args);
|
|
111
|
-
}
|
|
112
|
-
async getProvenTxsForUser(args) {
|
|
113
|
-
if (!this.auth.userId)
|
|
114
|
-
await this.makeAvailable();
|
|
115
|
-
if (args.userId !== this.auth.userId)
|
|
116
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
117
|
-
return await this.storage.getProvenTxsForUser(args);
|
|
118
|
-
}
|
|
119
|
-
async getProvenTxReqsForUser(args) {
|
|
120
|
-
if (!this.auth.userId)
|
|
121
|
-
await this.makeAvailable();
|
|
122
|
-
if (args.userId !== this.auth.userId)
|
|
123
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
124
|
-
return await this.storage.getProvenTxReqsForUser(args);
|
|
125
|
-
}
|
|
126
|
-
async getTxLabelMapsForUser(args) {
|
|
127
|
-
if (!this.auth.userId)
|
|
128
|
-
await this.makeAvailable();
|
|
129
|
-
if (args.userId !== this.auth.userId)
|
|
130
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
131
|
-
return await this.storage.getTxLabelMapsForUser(args);
|
|
132
|
-
}
|
|
133
|
-
async getOutputTagMapsForUser(args) {
|
|
134
|
-
if (!this.auth.userId)
|
|
135
|
-
await this.makeAvailable();
|
|
136
|
-
if (args.userId !== this.auth.userId)
|
|
137
|
-
throw new index_client_1.sdk.WERR_UNAUTHORIZED();
|
|
138
|
-
return await this.storage.getOutputTagMapsForUser(args);
|
|
139
|
-
}
|
|
140
36
|
}
|
|
141
37
|
exports.StorageSyncReader = StorageSyncReader;
|
|
142
38
|
//# sourceMappingURL=StorageSyncReader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StorageSyncReader.js","sourceRoot":"","sources":["../../../src/storage/StorageSyncReader.ts"],"names":[],"mappings":";;;AAAA,kDAkBwB;AAGxB;;;;;GAKG;AACH,MAAa,iBAAiB;IAC5B,YACS,IAAgB,EAChB,OAAsB;QADtB,SAAI,GAAJ,IAAI,CAAY;QAChB,YAAO,GAAP,OAAO,CAAe;IAC5B,CAAC;IAEJ,
|
|
1
|
+
{"version":3,"file":"StorageSyncReader.js","sourceRoot":"","sources":["../../../src/storage/StorageSyncReader.ts"],"names":[],"mappings":";;;AAAA,kDAkBwB;AAGxB;;;;;GAKG;AACH,MAAa,iBAAiB;IAC5B,YACS,IAAgB,EAChB,OAAsB;QADtB,SAAI,GAAJ,IAAI,CAAY;QAChB,YAAO,GAAP,OAAO,CAAe;IAC5B,CAAC;IAEJ,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAA;QAClC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,CACnD,IAAI,CAAC,IAAI,CAAC,WAAW,CACtB,CAAA;YACD,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,kBAAG,CAAC,iBAAiB,EAAE,CAAA;YAC5C,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAChC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA;IACnC,CAAC;IACD,OAAO;QACL,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;IAC/B,CAAC;IACD,KAAK,CAAC,YAAY,CAAC,IAA8B;QAC/C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QACjD,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW;YAC5C,MAAM,IAAI,kBAAG,CAAC,iBAAiB,EAAE,CAAA;QACnC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;CACF;AA1BD,8CA0BC"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { AbortActionArgs, AbortActionResult, InternalizeActionArgs, InternalizeActionResult, ListActionsResult, ListCertificatesResult, ListOutputsResult, RelinquishCertificateArgs, RelinquishOutputArgs } from '@bsv/sdk';
|
|
2
|
-
import { sdk, StorageProvider,
|
|
2
|
+
import { sdk, StorageProvider, TableCertificate, TableCertificateX, TableOutput, TableOutputBasket, TableProvenTxReq, TableSettings, TableUser } from '../index.client';
|
|
3
|
+
declare class ManagedStorage {
|
|
4
|
+
storage: sdk.WalletStorageProvider;
|
|
5
|
+
isAvailable: boolean;
|
|
6
|
+
isStorageProvider: boolean;
|
|
7
|
+
settings?: TableSettings;
|
|
8
|
+
user?: TableUser;
|
|
9
|
+
constructor(storage: sdk.WalletStorageProvider);
|
|
10
|
+
}
|
|
3
11
|
/**
|
|
4
12
|
* The `WalletStorageManager` class delivers authentication checking storage access to the wallet.
|
|
5
13
|
*
|
|
@@ -16,11 +24,41 @@ import { sdk, StorageProvider, StorageSyncReader, TableCertificate, TableCertifi
|
|
|
16
24
|
* for these services.
|
|
17
25
|
*/
|
|
18
26
|
export declare class WalletStorageManager implements sdk.WalletStorage {
|
|
19
|
-
|
|
27
|
+
/**
|
|
28
|
+
* All configured stores including current active, backups, and conflicting actives.
|
|
29
|
+
*/
|
|
30
|
+
_stores: ManagedStorage[];
|
|
31
|
+
/**
|
|
32
|
+
* True if makeAvailable has been run and access to managed stores (active) is allowed
|
|
33
|
+
*/
|
|
34
|
+
_isAvailable: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* The current active store which is only enabled if the store's user record activeStorage property matches its settings record storageIdentityKey property
|
|
37
|
+
*/
|
|
38
|
+
_active?: ManagedStorage;
|
|
39
|
+
/**
|
|
40
|
+
* Stores to which state is pushed by updateBackups.
|
|
41
|
+
*/
|
|
42
|
+
_backups?: ManagedStorage[];
|
|
43
|
+
/**
|
|
44
|
+
* Stores whose user record activeStorage property disagrees with the active store's user record activeStorage property.
|
|
45
|
+
*/
|
|
46
|
+
_conflictingActives?: ManagedStorage[];
|
|
47
|
+
/**
|
|
48
|
+
* identityKey is always valid, userId and isActive are valid only if _isAvailable
|
|
49
|
+
*/
|
|
20
50
|
_authId: sdk.AuthId;
|
|
51
|
+
/**
|
|
52
|
+
* Configured services if any. If valid, shared with stores (which may ignore it).
|
|
53
|
+
*/
|
|
21
54
|
_services?: sdk.WalletServices;
|
|
22
|
-
|
|
55
|
+
/**
|
|
56
|
+
* How many read access operations are pending
|
|
57
|
+
*/
|
|
23
58
|
_readerCount: number;
|
|
59
|
+
/**
|
|
60
|
+
* How many write access operations are pending
|
|
61
|
+
*/
|
|
24
62
|
_writerCount: number;
|
|
25
63
|
/**
|
|
26
64
|
* if true, allow only a single writer to proceed at a time.
|
|
@@ -39,9 +77,41 @@ export declare class WalletStorageManager implements sdk.WalletStorage {
|
|
|
39
77
|
_storageProviderLocked: boolean;
|
|
40
78
|
constructor(identityKey: string, active?: sdk.WalletStorageProvider, backups?: sdk.WalletStorageProvider[]);
|
|
41
79
|
isStorageProvider(): boolean;
|
|
42
|
-
|
|
80
|
+
isAvailable(): boolean;
|
|
81
|
+
/**
|
|
82
|
+
* The active storage is "enabled" only if its `storageIdentityKey` matches the user's currently selected `activeStorage`,
|
|
83
|
+
* and only if there are no stores with conflicting `activeStorage` selections.
|
|
84
|
+
*
|
|
85
|
+
* A wallet may be created without including the user's currently selected active storage. This allows readonly access to their wallet data.
|
|
86
|
+
*
|
|
87
|
+
* In addition, if there are conflicting `activeStorage` selections among backup storage providers then the active remains disabled.
|
|
88
|
+
*/
|
|
89
|
+
get isActiveEnabled(): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* @returns true if at least one WalletStorageProvider has been added.
|
|
92
|
+
*/
|
|
93
|
+
canMakeAvailable(): boolean;
|
|
94
|
+
/**
|
|
95
|
+
* This async function must be called after construction and before
|
|
96
|
+
* any other async function can proceed.
|
|
97
|
+
*
|
|
98
|
+
* Runs through `_stores` validating all properties and partitioning across `_active`, `_backups`, `_conflictingActives`.
|
|
99
|
+
*
|
|
100
|
+
* @throws WERR_INVALID_PARAMETER if canMakeAvailable returns false.
|
|
101
|
+
*
|
|
102
|
+
* @returns {TableSettings} from the active storage.
|
|
103
|
+
*/
|
|
104
|
+
makeAvailable(): Promise<TableSettings>;
|
|
105
|
+
private verifyActive;
|
|
43
106
|
getAuth(mustBeActive?: boolean): Promise<sdk.AuthId>;
|
|
107
|
+
getUserId(): Promise<number>;
|
|
44
108
|
getActive(): sdk.WalletStorageProvider;
|
|
109
|
+
getActiveSettings(): TableSettings;
|
|
110
|
+
getActiveUser(): TableUser;
|
|
111
|
+
getActiveStore(): string;
|
|
112
|
+
getBackupStores(): string[];
|
|
113
|
+
getConflictingStores(): string[];
|
|
114
|
+
getAllStores(): string[];
|
|
45
115
|
getActiveForWriter(): Promise<sdk.WalletStorageWriter>;
|
|
46
116
|
getActiveForReader(): Promise<sdk.WalletStorageReader>;
|
|
47
117
|
getActiveForSync(): Promise<sdk.WalletStorageSync>;
|
|
@@ -61,12 +131,10 @@ export declare class WalletStorageManager implements sdk.WalletStorage {
|
|
|
61
131
|
* @returns true if the active `WalletStorageProvider` also implements `StorageProvider`
|
|
62
132
|
*/
|
|
63
133
|
isActiveStorageProvider(): boolean;
|
|
64
|
-
isAvailable(): boolean;
|
|
65
134
|
addWalletStorageProvider(provider: sdk.WalletStorageProvider): Promise<void>;
|
|
66
135
|
setServices(v: sdk.WalletServices): void;
|
|
67
136
|
getServices(): sdk.WalletServices;
|
|
68
137
|
getSettings(): TableSettings;
|
|
69
|
-
makeAvailable(): Promise<TableSettings>;
|
|
70
138
|
migrate(storageName: string, storageIdentityKey: string): Promise<string>;
|
|
71
139
|
destroy(): Promise<void>;
|
|
72
140
|
findOrInsertUser(identityKey: string): Promise<{
|
|
@@ -87,17 +155,25 @@ export declare class WalletStorageManager implements sdk.WalletStorage {
|
|
|
87
155
|
findOutputBaskets(args: sdk.FindOutputBasketsArgs): Promise<TableOutputBasket[]>;
|
|
88
156
|
findOutputs(args: sdk.FindOutputsArgs): Promise<TableOutput[]>;
|
|
89
157
|
findProvenTxReqs(args: sdk.FindProvenTxReqsArgs): Promise<TableProvenTxReq[]>;
|
|
90
|
-
syncFromReader(identityKey: string, reader:
|
|
91
|
-
updateBackups(activeSync?: sdk.WalletStorageSync): Promise<void>;
|
|
92
|
-
syncToWriter(auth: sdk.AuthId, writer: sdk.WalletStorageProvider, activeSync?: sdk.WalletStorageSync): Promise<{
|
|
158
|
+
syncFromReader(identityKey: string, reader: sdk.WalletStorageSyncReader, activeSync?: sdk.WalletStorageSync, log?: string): Promise<{
|
|
93
159
|
inserts: number;
|
|
94
160
|
updates: number;
|
|
161
|
+
log: string;
|
|
95
162
|
}>;
|
|
163
|
+
syncToWriter(auth: sdk.AuthId, writer: sdk.WalletStorageProvider, activeSync?: sdk.WalletStorageSync, log?: string): Promise<{
|
|
164
|
+
inserts: number;
|
|
165
|
+
updates: number;
|
|
166
|
+
log: string;
|
|
167
|
+
}>;
|
|
168
|
+
updateBackups(activeSync?: sdk.WalletStorageSync): Promise<void>;
|
|
96
169
|
/**
|
|
97
170
|
* Updates backups and switches to new active storage provider from among current backup providers.
|
|
98
171
|
*
|
|
172
|
+
* Also resolves conflicting actives.
|
|
173
|
+
*
|
|
99
174
|
* @param storageIdentityKey of current backup storage provider that is to become the new active provider.
|
|
100
175
|
*/
|
|
101
|
-
setActive(storageIdentityKey: string): Promise<
|
|
176
|
+
setActive(storageIdentityKey: string): Promise<string>;
|
|
102
177
|
}
|
|
178
|
+
export {};
|
|
103
179
|
//# sourceMappingURL=WalletStorageManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WalletStorageManager.d.ts","sourceRoot":"","sources":["../../../src/storage/WalletStorageManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EAEvB,iBAAiB,EACjB,sBAAsB,EAEtB,iBAAiB,EACjB,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,UAAU,CAAA;AACjB,OAAO,EAEL,GAAG,EACH,eAAe,
|
|
1
|
+
{"version":3,"file":"WalletStorageManager.d.ts","sourceRoot":"","sources":["../../../src/storage/WalletStorageManager.ts"],"names":[],"mappings":"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"}
|