@bsv/wallet-toolbox 1.1.34 → 1.1.35
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 +235 -78
- 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/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 +60 -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/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.map +1 -1
- package/out/test/utils/TestUtilsWalletStorage.js +5 -4
- package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
- package/out/test/wallet/sync/Wallet.sync.test.js +1 -3
- 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 +307 -86
- package/src/storage/schema/KnexMigrations.ts +23 -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 +67 -0
- 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 +5 -4
- package/test/wallet/sync/Wallet.sync.test.ts +1 -3
- 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
package/docs/storage.md
CHANGED
|
@@ -1088,7 +1088,7 @@ export interface TableUser extends sdk.EntityTimeStamp {
|
|
|
1088
1088
|
updated_at: Date;
|
|
1089
1089
|
userId: number;
|
|
1090
1090
|
identityKey: string;
|
|
1091
|
-
activeStorage
|
|
1091
|
+
activeStorage: string;
|
|
1092
1092
|
}
|
|
1093
1093
|
```
|
|
1094
1094
|
|
|
@@ -1099,7 +1099,7 @@ See also: [EntityTimeStamp](./client.md#interface-entitytimestamp)
|
|
|
1099
1099
|
The storageIdentityKey value of the active wallet storage.
|
|
1100
1100
|
|
|
1101
1101
|
```ts
|
|
1102
|
-
activeStorage
|
|
1102
|
+
activeStorage: string
|
|
1103
1103
|
```
|
|
1104
1104
|
|
|
1105
1105
|
###### Property identityKey
|
|
@@ -2087,7 +2087,7 @@ export class EntityUser extends EntityBase<TableUser> {
|
|
|
2087
2087
|
get identityKey()
|
|
2088
2088
|
set identityKey(v: string)
|
|
2089
2089
|
get activeStorage()
|
|
2090
|
-
set activeStorage(v: string
|
|
2090
|
+
set activeStorage(v: string)
|
|
2091
2091
|
override get id(): number
|
|
2092
2092
|
override set id(v: number)
|
|
2093
2093
|
override get entityName(): string
|
|
@@ -3270,7 +3270,7 @@ The ability to construct a properly configured instance of this class implies au
|
|
|
3270
3270
|
As such there are no user specific authenticated access checks implied in the implementation of any of these methods.
|
|
3271
3271
|
|
|
3272
3272
|
```ts
|
|
3273
|
-
export abstract class StorageReader implements sdk.
|
|
3273
|
+
export abstract class StorageReader implements sdk.WalletStorageSyncReader {
|
|
3274
3274
|
chain: sdk.Chain;
|
|
3275
3275
|
_settings?: TableSettings;
|
|
3276
3276
|
whenLastAccess?: Date;
|
|
@@ -3319,7 +3319,7 @@ export abstract class StorageReader implements sdk.StorageSyncReader {
|
|
|
3319
3319
|
}
|
|
3320
3320
|
```
|
|
3321
3321
|
|
|
3322
|
-
See also: [Chain](./client.md#type-chain), [DBType](./storage.md#type-dbtype), [FindCertificateFieldsArgs](./client.md#interface-findcertificatefieldsargs), [FindCertificatesArgs](./client.md#interface-findcertificatesargs), [FindCommissionsArgs](./client.md#interface-findcommissionsargs), [FindForUserSincePagedArgs](./client.md#interface-findforusersincepagedargs), [FindMonitorEventsArgs](./client.md#interface-findmonitoreventsargs), [FindOutputBasketsArgs](./client.md#interface-findoutputbasketsargs), [FindOutputTagsArgs](./client.md#interface-findoutputtagsargs), [FindOutputsArgs](./client.md#interface-findoutputsargs), [FindSyncStatesArgs](./client.md#interface-findsyncstatesargs), [FindTransactionsArgs](./client.md#interface-findtransactionsargs), [FindTxLabelsArgs](./client.md#interface-findtxlabelsargs), [FindUsersArgs](./client.md#interface-findusersargs), [RequestSyncChunkArgs](./client.md#interface-requestsyncchunkargs), [StorageReaderOptions](./storage.md#interface-storagereaderoptions), [
|
|
3322
|
+
See also: [Chain](./client.md#type-chain), [DBType](./storage.md#type-dbtype), [FindCertificateFieldsArgs](./client.md#interface-findcertificatefieldsargs), [FindCertificatesArgs](./client.md#interface-findcertificatesargs), [FindCommissionsArgs](./client.md#interface-findcommissionsargs), [FindForUserSincePagedArgs](./client.md#interface-findforusersincepagedargs), [FindMonitorEventsArgs](./client.md#interface-findmonitoreventsargs), [FindOutputBasketsArgs](./client.md#interface-findoutputbasketsargs), [FindOutputTagsArgs](./client.md#interface-findoutputtagsargs), [FindOutputsArgs](./client.md#interface-findoutputsargs), [FindSyncStatesArgs](./client.md#interface-findsyncstatesargs), [FindTransactionsArgs](./client.md#interface-findtransactionsargs), [FindTxLabelsArgs](./client.md#interface-findtxlabelsargs), [FindUsersArgs](./client.md#interface-findusersargs), [RequestSyncChunkArgs](./client.md#interface-requestsyncchunkargs), [StorageReaderOptions](./storage.md#interface-storagereaderoptions), [SyncChunk](./client.md#interface-syncchunk), [TableCertificateField](./storage.md#interface-tablecertificatefield), [TableCertificateX](./storage.md#interface-tablecertificatex), [TableCommission](./storage.md#interface-tablecommission), [TableMonitorEvent](./storage.md#interface-tablemonitorevent), [TableOutput](./storage.md#interface-tableoutput), [TableOutputBasket](./storage.md#interface-tableoutputbasket), [TableOutputTag](./storage.md#interface-tableoutputtag), [TableOutputTagMap](./storage.md#interface-tableoutputtagmap), [TableProvenTx](./storage.md#interface-tableproventx), [TableProvenTxReq](./storage.md#interface-tableproventxreq), [TableSettings](./storage.md#interface-tablesettings), [TableSyncState](./storage.md#interface-tablesyncstate), [TableTransaction](./storage.md#interface-tabletransaction), [TableTxLabel](./storage.md#interface-tabletxlabel), [TableTxLabelMap](./storage.md#interface-tabletxlabelmap), [TableUser](./storage.md#interface-tableuser), [TrxToken](./client.md#interface-trxtoken), [WalletStorageSyncReader](./client.md#interface-walletstoragesyncreader), [getSyncChunk](./storage.md#function-getsyncchunk)
|
|
3323
3323
|
|
|
3324
3324
|
###### Method validateEntityDate
|
|
3325
3325
|
|
|
@@ -3457,31 +3457,15 @@ Constructed from an `auth` object that must minimally include the authenticated
|
|
|
3457
3457
|
and the `StorageBaseReader` to be protected.
|
|
3458
3458
|
|
|
3459
3459
|
```ts
|
|
3460
|
-
export class StorageSyncReader implements sdk.
|
|
3460
|
+
export class StorageSyncReader implements sdk.WalletStorageSyncReader {
|
|
3461
3461
|
constructor(public auth: sdk.AuthId, public storage: StorageReader)
|
|
3462
|
-
isAvailable(): boolean
|
|
3463
3462
|
async makeAvailable(): Promise<TableSettings>
|
|
3464
3463
|
destroy(): Promise<void>
|
|
3465
|
-
getSettings(): TableSettings
|
|
3466
3464
|
async getSyncChunk(args: sdk.RequestSyncChunkArgs): Promise<sdk.SyncChunk>
|
|
3467
|
-
async findUserByIdentityKey(key: string): Promise<TableUser | undefined>
|
|
3468
|
-
async findSyncStates(args: sdk.FindSyncStatesArgs): Promise<TableSyncState[]>
|
|
3469
|
-
async findCertificateFields(args: sdk.FindCertificateFieldsArgs): Promise<TableCertificateField[]>
|
|
3470
|
-
async findCertificates(args: sdk.FindCertificatesArgs): Promise<TableCertificateX[]>
|
|
3471
|
-
async findCommissions(args: sdk.FindCommissionsArgs): Promise<TableCommission[]>
|
|
3472
|
-
async findOutputBaskets(args: sdk.FindOutputBasketsArgs): Promise<TableOutputBasket[]>
|
|
3473
|
-
async findOutputs(args: sdk.FindOutputsArgs): Promise<TableOutput[]>
|
|
3474
|
-
async findOutputTags(args: sdk.FindOutputTagsArgs): Promise<TableOutputTag[]>
|
|
3475
|
-
async findTransactions(args: sdk.FindTransactionsArgs): Promise<TableTransaction[]>
|
|
3476
|
-
async findTxLabels(args: sdk.FindTxLabelsArgs): Promise<TableTxLabel[]>
|
|
3477
|
-
async getProvenTxsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableProvenTx[]>
|
|
3478
|
-
async getProvenTxReqsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableProvenTxReq[]>
|
|
3479
|
-
async getTxLabelMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableTxLabelMap[]>
|
|
3480
|
-
async getOutputTagMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableOutputTagMap[]>
|
|
3481
3465
|
}
|
|
3482
3466
|
```
|
|
3483
3467
|
|
|
3484
|
-
See also: [AuthId](./client.md#interface-authid), [
|
|
3468
|
+
See also: [AuthId](./client.md#interface-authid), [RequestSyncChunkArgs](./client.md#interface-requestsyncchunkargs), [StorageReader](./storage.md#class-storagereader), [SyncChunk](./client.md#interface-syncchunk), [TableSettings](./storage.md#interface-tablesettings), [WalletStorageSyncReader](./client.md#interface-walletstoragesyncreader), [getSyncChunk](./storage.md#function-getsyncchunk)
|
|
3485
3469
|
|
|
3486
3470
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
3487
3471
|
|
|
@@ -3504,10 +3488,13 @@ for these services.
|
|
|
3504
3488
|
|
|
3505
3489
|
```ts
|
|
3506
3490
|
export class WalletStorageManager implements sdk.WalletStorage {
|
|
3507
|
-
|
|
3491
|
+
_stores: ManagedStorage[] = [];
|
|
3492
|
+
_isAvailable: boolean = false;
|
|
3493
|
+
_active?: ManagedStorage;
|
|
3494
|
+
_backups?: ManagedStorage[];
|
|
3495
|
+
_conflictingActives?: ManagedStorage[];
|
|
3508
3496
|
_authId: sdk.AuthId;
|
|
3509
3497
|
_services?: sdk.WalletServices;
|
|
3510
|
-
_userIdentityKeyToId: Record<string, number> = {};
|
|
3511
3498
|
_readerCount: number = 0;
|
|
3512
3499
|
_writerCount: number = 0;
|
|
3513
3500
|
_isSingleWriter: boolean = true;
|
|
@@ -3515,9 +3502,19 @@ export class WalletStorageManager implements sdk.WalletStorage {
|
|
|
3515
3502
|
_storageProviderLocked: boolean = false;
|
|
3516
3503
|
constructor(identityKey: string, active?: sdk.WalletStorageProvider, backups?: sdk.WalletStorageProvider[])
|
|
3517
3504
|
isStorageProvider(): boolean
|
|
3518
|
-
|
|
3505
|
+
isAvailable(): boolean
|
|
3506
|
+
get isActiveEnabled(): boolean
|
|
3507
|
+
canMakeAvailable(): boolean
|
|
3508
|
+
async makeAvailable(): Promise<TableSettings>
|
|
3519
3509
|
async getAuth(mustBeActive?: boolean): Promise<sdk.AuthId>
|
|
3510
|
+
async getUserId(): Promise<number>
|
|
3520
3511
|
getActive(): sdk.WalletStorageProvider
|
|
3512
|
+
getActiveSettings(): TableSettings
|
|
3513
|
+
getActiveUser(): TableUser
|
|
3514
|
+
getActiveStore(): string
|
|
3515
|
+
getBackupStores(): string[]
|
|
3516
|
+
getConflictingStores(): string[]
|
|
3517
|
+
getAllStores(): string[]
|
|
3521
3518
|
async getActiveForWriter(): Promise<sdk.WalletStorageWriter>
|
|
3522
3519
|
async getActiveForReader(): Promise<sdk.WalletStorageReader>
|
|
3523
3520
|
async getActiveForSync(): Promise<sdk.WalletStorageSync>
|
|
@@ -3527,12 +3524,10 @@ export class WalletStorageManager implements sdk.WalletStorage {
|
|
|
3527
3524
|
async runAsSync<R>(sync: (active: sdk.WalletStorageSync) => Promise<R>, activeSync?: sdk.WalletStorageSync): Promise<R>
|
|
3528
3525
|
async runAsStorageProvider<R>(sync: (active: StorageProvider) => Promise<R>): Promise<R>
|
|
3529
3526
|
isActiveStorageProvider(): boolean
|
|
3530
|
-
isAvailable(): boolean
|
|
3531
3527
|
async addWalletStorageProvider(provider: sdk.WalletStorageProvider): Promise<void>
|
|
3532
3528
|
setServices(v: sdk.WalletServices)
|
|
3533
3529
|
getServices(): sdk.WalletServices
|
|
3534
3530
|
getSettings(): TableSettings
|
|
3535
|
-
async makeAvailable(): Promise<TableSettings>
|
|
3536
3531
|
async migrate(storageName: string, storageIdentityKey: string): Promise<string>
|
|
3537
3532
|
async destroy(): Promise<void>
|
|
3538
3533
|
async findOrInsertUser(identityKey: string): Promise<{
|
|
@@ -3553,17 +3548,63 @@ export class WalletStorageManager implements sdk.WalletStorage {
|
|
|
3553
3548
|
async findOutputBaskets(args: sdk.FindOutputBasketsArgs): Promise<TableOutputBasket[]>
|
|
3554
3549
|
async findOutputs(args: sdk.FindOutputsArgs): Promise<TableOutput[]>
|
|
3555
3550
|
async findProvenTxReqs(args: sdk.FindProvenTxReqsArgs): Promise<TableProvenTxReq[]>
|
|
3556
|
-
async syncFromReader(identityKey: string, reader:
|
|
3557
|
-
|
|
3558
|
-
|
|
3551
|
+
async syncFromReader(identityKey: string, reader: sdk.WalletStorageSyncReader, activeSync?: sdk.WalletStorageSync, log: string = ""): Promise<{
|
|
3552
|
+
inserts: number;
|
|
3553
|
+
updates: number;
|
|
3554
|
+
log: string;
|
|
3555
|
+
}>
|
|
3556
|
+
async syncToWriter(auth: sdk.AuthId, writer: sdk.WalletStorageProvider, activeSync?: sdk.WalletStorageSync, log: string = ""): Promise<{
|
|
3559
3557
|
inserts: number;
|
|
3560
3558
|
updates: number;
|
|
3559
|
+
log: string;
|
|
3561
3560
|
}>
|
|
3562
|
-
async
|
|
3561
|
+
async updateBackups(activeSync?: sdk.WalletStorageSync)
|
|
3562
|
+
async setActive(storageIdentityKey: string): Promise<string>
|
|
3563
3563
|
}
|
|
3564
3564
|
```
|
|
3565
3565
|
|
|
3566
|
-
See also: [AuthId](./client.md#interface-authid), [FindCertificatesArgs](./client.md#interface-findcertificatesargs), [FindOutputBasketsArgs](./client.md#interface-findoutputbasketsargs), [FindOutputsArgs](./client.md#interface-findoutputsargs), [FindProvenTxReqsArgs](./client.md#interface-findproventxreqsargs), [StorageCreateActionResult](./client.md#interface-storagecreateactionresult), [StorageProcessActionArgs](./client.md#interface-storageprocessactionargs), [StorageProcessActionResults](./client.md#interface-storageprocessactionresults), [StorageProvider](./storage.md#class-storageprovider), [
|
|
3566
|
+
See also: [AuthId](./client.md#interface-authid), [FindCertificatesArgs](./client.md#interface-findcertificatesargs), [FindOutputBasketsArgs](./client.md#interface-findoutputbasketsargs), [FindOutputsArgs](./client.md#interface-findoutputsargs), [FindProvenTxReqsArgs](./client.md#interface-findproventxreqsargs), [StorageCreateActionResult](./client.md#interface-storagecreateactionresult), [StorageProcessActionArgs](./client.md#interface-storageprocessactionargs), [StorageProcessActionResults](./client.md#interface-storageprocessactionresults), [StorageProvider](./storage.md#class-storageprovider), [TableCertificate](./storage.md#interface-tablecertificate), [TableCertificateX](./storage.md#interface-tablecertificatex), [TableOutput](./storage.md#interface-tableoutput), [TableOutputBasket](./storage.md#interface-tableoutputbasket), [TableProvenTxReq](./storage.md#interface-tableproventxreq), [TableSettings](./storage.md#interface-tablesettings), [TableUser](./storage.md#interface-tableuser), [ValidCreateActionArgs](./client.md#interface-validcreateactionargs), [ValidListActionsArgs](./client.md#interface-validlistactionsargs), [ValidListCertificatesArgs](./client.md#interface-validlistcertificatesargs), [ValidListOutputsArgs](./client.md#interface-validlistoutputsargs), [WalletServices](./client.md#interface-walletservices), [WalletStorage](./client.md#interface-walletstorage), [WalletStorageProvider](./client.md#interface-walletstorageprovider), [WalletStorageReader](./client.md#interface-walletstoragereader), [WalletStorageSync](./client.md#interface-walletstoragesync), [WalletStorageSyncReader](./client.md#interface-walletstoragesyncreader), [WalletStorageWriter](./client.md#interface-walletstoragewriter), [createAction](./storage.md#function-createaction), [internalizeAction](./storage.md#function-internalizeaction), [listActions](./storage.md#function-listactions), [listCertificates](./storage.md#function-listcertificates), [listOutputs](./storage.md#function-listoutputs), [processAction](./storage.md#function-processaction)
|
|
3567
|
+
|
|
3568
|
+
###### Property _active
|
|
3569
|
+
|
|
3570
|
+
The current active store which is only enabled if the store's user record activeStorage property matches its settings record storageIdentityKey property
|
|
3571
|
+
|
|
3572
|
+
```ts
|
|
3573
|
+
_active?: ManagedStorage
|
|
3574
|
+
```
|
|
3575
|
+
|
|
3576
|
+
###### Property _authId
|
|
3577
|
+
|
|
3578
|
+
identityKey is always valid, userId and isActive are valid only if _isAvailable
|
|
3579
|
+
|
|
3580
|
+
```ts
|
|
3581
|
+
_authId: sdk.AuthId
|
|
3582
|
+
```
|
|
3583
|
+
See also: [AuthId](./client.md#interface-authid)
|
|
3584
|
+
|
|
3585
|
+
###### Property _backups
|
|
3586
|
+
|
|
3587
|
+
Stores to which state is pushed by updateBackups.
|
|
3588
|
+
|
|
3589
|
+
```ts
|
|
3590
|
+
_backups?: ManagedStorage[]
|
|
3591
|
+
```
|
|
3592
|
+
|
|
3593
|
+
###### Property _conflictingActives
|
|
3594
|
+
|
|
3595
|
+
Stores whose user record activeStorage property disagrees with the active store's user record activeStorage property.
|
|
3596
|
+
|
|
3597
|
+
```ts
|
|
3598
|
+
_conflictingActives?: ManagedStorage[]
|
|
3599
|
+
```
|
|
3600
|
+
|
|
3601
|
+
###### Property _isAvailable
|
|
3602
|
+
|
|
3603
|
+
True if makeAvailable has been run and access to managed stores (active) is allowed
|
|
3604
|
+
|
|
3605
|
+
```ts
|
|
3606
|
+
_isAvailable: boolean = false
|
|
3607
|
+
```
|
|
3567
3608
|
|
|
3568
3609
|
###### Property _isSingleWriter
|
|
3569
3610
|
|
|
@@ -3574,6 +3615,23 @@ queue the blocked requests so they get executed in order when released.
|
|
|
3574
3615
|
_isSingleWriter: boolean = true
|
|
3575
3616
|
```
|
|
3576
3617
|
|
|
3618
|
+
###### Property _readerCount
|
|
3619
|
+
|
|
3620
|
+
How many read access operations are pending
|
|
3621
|
+
|
|
3622
|
+
```ts
|
|
3623
|
+
_readerCount: number = 0
|
|
3624
|
+
```
|
|
3625
|
+
|
|
3626
|
+
###### Property _services
|
|
3627
|
+
|
|
3628
|
+
Configured services if any. If valid, shared with stores (which may ignore it).
|
|
3629
|
+
|
|
3630
|
+
```ts
|
|
3631
|
+
_services?: sdk.WalletServices
|
|
3632
|
+
```
|
|
3633
|
+
See also: [WalletServices](./client.md#interface-walletservices)
|
|
3634
|
+
|
|
3577
3635
|
###### Property _storageProviderLocked
|
|
3578
3636
|
|
|
3579
3637
|
if true, allow no new reader or writers or sync to proceed.
|
|
@@ -3583,6 +3641,14 @@ queue the blocked requests so they get executed in order when released.
|
|
|
3583
3641
|
_storageProviderLocked: boolean = false
|
|
3584
3642
|
```
|
|
3585
3643
|
|
|
3644
|
+
###### Property _stores
|
|
3645
|
+
|
|
3646
|
+
All configured stores including current active, backups, and conflicting actives.
|
|
3647
|
+
|
|
3648
|
+
```ts
|
|
3649
|
+
_stores: ManagedStorage[] = []
|
|
3650
|
+
```
|
|
3651
|
+
|
|
3586
3652
|
###### Property _syncLocked
|
|
3587
3653
|
|
|
3588
3654
|
if true, allow no new reader or writers to proceed.
|
|
@@ -3592,6 +3658,24 @@ queue the blocked requests so they get executed in order when released.
|
|
|
3592
3658
|
_syncLocked: boolean = false
|
|
3593
3659
|
```
|
|
3594
3660
|
|
|
3661
|
+
###### Property _writerCount
|
|
3662
|
+
|
|
3663
|
+
How many write access operations are pending
|
|
3664
|
+
|
|
3665
|
+
```ts
|
|
3666
|
+
_writerCount: number = 0
|
|
3667
|
+
```
|
|
3668
|
+
|
|
3669
|
+
###### Method canMakeAvailable
|
|
3670
|
+
|
|
3671
|
+
```ts
|
|
3672
|
+
canMakeAvailable(): boolean
|
|
3673
|
+
```
|
|
3674
|
+
|
|
3675
|
+
Returns
|
|
3676
|
+
|
|
3677
|
+
true if at least one WalletStorageProvider has been added.
|
|
3678
|
+
|
|
3595
3679
|
###### Method isActiveStorageProvider
|
|
3596
3680
|
|
|
3597
3681
|
```ts
|
|
@@ -3602,6 +3686,26 @@ Returns
|
|
|
3602
3686
|
|
|
3603
3687
|
true if the active `WalletStorageProvider` also implements `StorageProvider`
|
|
3604
3688
|
|
|
3689
|
+
###### Method makeAvailable
|
|
3690
|
+
|
|
3691
|
+
This async function must be called after construction and before
|
|
3692
|
+
any other async function can proceed.
|
|
3693
|
+
|
|
3694
|
+
Runs through `_stores` validating all properties and partitioning across `_active`, `_backups`, `_conflictingActives`.
|
|
3695
|
+
|
|
3696
|
+
```ts
|
|
3697
|
+
async makeAvailable(): Promise<TableSettings>
|
|
3698
|
+
```
|
|
3699
|
+
See also: [TableSettings](./storage.md#interface-tablesettings)
|
|
3700
|
+
|
|
3701
|
+
Returns
|
|
3702
|
+
|
|
3703
|
+
from the active storage.
|
|
3704
|
+
|
|
3705
|
+
Throws
|
|
3706
|
+
|
|
3707
|
+
WERR_INVALID_PARAMETER if canMakeAvailable returns false.
|
|
3708
|
+
|
|
3605
3709
|
###### Method runAsSync
|
|
3606
3710
|
|
|
3607
3711
|
```ts
|
|
@@ -3620,8 +3724,10 @@ Argument Details
|
|
|
3620
3724
|
|
|
3621
3725
|
Updates backups and switches to new active storage provider from among current backup providers.
|
|
3622
3726
|
|
|
3727
|
+
Also resolves conflicting actives.
|
|
3728
|
+
|
|
3623
3729
|
```ts
|
|
3624
|
-
async setActive(storageIdentityKey: string): Promise<
|
|
3730
|
+
async setActive(storageIdentityKey: string): Promise<string>
|
|
3625
3731
|
```
|
|
3626
3732
|
|
|
3627
3733
|
Argument Details
|