@cardano-sdk/wallet 0.1.8 → 0.4.0
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/dist/cjs/KeyManagement/InMemoryKeyAgent.d.ts +24 -0
- package/dist/cjs/KeyManagement/InMemoryKeyAgent.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/InMemoryKeyAgent.js +137 -0
- package/dist/cjs/KeyManagement/InMemoryKeyAgent.js.map +1 -0
- package/dist/cjs/KeyManagement/KeyAgentBase.d.ts +22 -0
- package/dist/cjs/KeyManagement/KeyAgentBase.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/KeyAgentBase.js +77 -0
- package/dist/cjs/KeyManagement/KeyAgentBase.js.map +1 -0
- package/dist/cjs/KeyManagement/LedgerKeyAgent.d.ts +43 -0
- package/dist/cjs/KeyManagement/LedgerKeyAgent.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/LedgerKeyAgent.js +208 -0
- package/dist/cjs/KeyManagement/LedgerKeyAgent.js.map +1 -0
- package/dist/cjs/KeyManagement/TrezorKeyAgent.d.ts +30 -0
- package/dist/cjs/KeyManagement/TrezorKeyAgent.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/TrezorKeyAgent.js +134 -0
- package/dist/cjs/KeyManagement/TrezorKeyAgent.js.map +1 -0
- package/dist/cjs/KeyManagement/cip8/cip30signData.d.ts +22 -0
- package/dist/cjs/KeyManagement/cip8/cip30signData.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/cip8/cip30signData.js +81 -0
- package/dist/cjs/KeyManagement/cip8/cip30signData.js.map +1 -0
- package/dist/cjs/KeyManagement/cip8/index.d.ts +2 -0
- package/dist/cjs/KeyManagement/cip8/index.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/cip8/index.js +18 -0
- package/dist/cjs/KeyManagement/cip8/index.js.map +1 -0
- package/dist/cjs/KeyManagement/cip8/types.d.ts +4 -0
- package/dist/cjs/KeyManagement/cip8/types.d.ts.map +1 -0
- package/dist/{services/DelegationTracker → cjs/KeyManagement/cip8}/types.js +0 -0
- package/dist/cjs/KeyManagement/cip8/types.js.map +1 -0
- package/dist/cjs/KeyManagement/cip8/util.d.ts +7 -0
- package/dist/cjs/KeyManagement/cip8/util.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/cip8/util.js +10 -0
- package/dist/cjs/KeyManagement/cip8/util.js.map +1 -0
- package/dist/cjs/KeyManagement/emip3.d.ts +4 -0
- package/dist/cjs/KeyManagement/emip3.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/emip3.js +48 -0
- package/dist/cjs/KeyManagement/emip3.js.map +1 -0
- package/dist/cjs/KeyManagement/errors/AuthenticationError.d.ts +6 -0
- package/dist/cjs/KeyManagement/errors/AuthenticationError.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/errors/AuthenticationError.js +16 -0
- package/dist/cjs/KeyManagement/errors/AuthenticationError.js.map +1 -0
- package/dist/cjs/KeyManagement/errors/HwMappingError.d.ts +6 -0
- package/dist/cjs/KeyManagement/errors/HwMappingError.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/errors/HwMappingError.js +16 -0
- package/dist/cjs/KeyManagement/errors/HwMappingError.js.map +1 -0
- package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.d.ts +5 -0
- package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.js +13 -0
- package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.js.map +1 -0
- package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .d.ts +5 -0
- package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .d.ts.map +1 -0
- package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .js +15 -0
- package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .js.map +1 -0
- package/dist/cjs/KeyManagement/errors/TransportError.d.ts +6 -0
- package/dist/cjs/KeyManagement/errors/TransportError.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/errors/TransportError.js +16 -0
- package/dist/cjs/KeyManagement/errors/TransportError.js.map +1 -0
- package/dist/cjs/KeyManagement/errors/index.d.ts +6 -0
- package/dist/cjs/KeyManagement/errors/index.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/errors/index.js +22 -0
- package/dist/cjs/KeyManagement/errors/index.js.map +1 -0
- package/dist/cjs/KeyManagement/index.d.ts +12 -0
- package/dist/cjs/KeyManagement/index.d.ts.map +1 -0
- package/dist/{KeyManagement → cjs/KeyManagement}/index.js +16 -4
- package/dist/cjs/KeyManagement/index.js.map +1 -0
- package/dist/cjs/KeyManagement/restoreKeyAgent.d.ts +9 -0
- package/dist/cjs/KeyManagement/restoreKeyAgent.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/restoreKeyAgent.js +31 -0
- package/dist/cjs/KeyManagement/restoreKeyAgent.js.map +1 -0
- package/dist/cjs/KeyManagement/types.d.ts +122 -0
- package/dist/cjs/KeyManagement/types.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/types.js +43 -0
- package/dist/cjs/KeyManagement/types.js.map +1 -0
- package/dist/cjs/KeyManagement/util/bip39.d.ts +8 -0
- package/dist/cjs/KeyManagement/util/bip39.d.ts.map +1 -0
- package/dist/{KeyManagement/util.js → cjs/KeyManagement/util/bip39.js} +14 -6
- package/dist/cjs/KeyManagement/util/bip39.js.map +1 -0
- package/dist/cjs/KeyManagement/util/cachedGetPassword.d.ts +4 -0
- package/dist/cjs/KeyManagement/util/cachedGetPassword.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/util/cachedGetPassword.js +25 -0
- package/dist/cjs/KeyManagement/util/cachedGetPassword.js.map +1 -0
- package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.d.ts +3 -0
- package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.js +26 -0
- package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.js.map +1 -0
- package/dist/cjs/KeyManagement/util/index.d.ts +8 -0
- package/dist/cjs/KeyManagement/util/index.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/util/index.js +24 -0
- package/dist/cjs/KeyManagement/util/index.js.map +1 -0
- package/dist/cjs/KeyManagement/util/key.d.ts +11 -0
- package/dist/cjs/KeyManagement/util/key.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/util/key.js +30 -0
- package/dist/cjs/KeyManagement/util/key.js.map +1 -0
- package/dist/cjs/KeyManagement/util/mapHardwareSigningData.d.ts +39 -0
- package/dist/cjs/KeyManagement/util/mapHardwareSigningData.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/util/mapHardwareSigningData.js +864 -0
- package/dist/cjs/KeyManagement/util/mapHardwareSigningData.js.map +1 -0
- package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.d.ts +5 -0
- package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.js +24 -0
- package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.js.map +1 -0
- package/dist/cjs/KeyManagement/util/stubSignTransaction.d.ts +5 -0
- package/dist/cjs/KeyManagement/util/stubSignTransaction.d.ts.map +1 -0
- package/dist/cjs/KeyManagement/util/stubSignTransaction.js +13 -0
- package/dist/cjs/KeyManagement/util/stubSignTransaction.js.map +1 -0
- package/dist/cjs/SingleAddressWallet.d.ts +68 -0
- package/dist/cjs/SingleAddressWallet.d.ts.map +1 -0
- package/dist/cjs/SingleAddressWallet.js +266 -0
- package/dist/cjs/SingleAddressWallet.js.map +1 -0
- package/dist/cjs/Transaction/createTransactionInternals.d.ts +20 -0
- package/dist/cjs/Transaction/createTransactionInternals.d.ts.map +1 -0
- package/dist/cjs/Transaction/createTransactionInternals.js +33 -0
- package/dist/cjs/Transaction/createTransactionInternals.js.map +1 -0
- package/dist/{Transaction → cjs/Transaction}/ensureValidityInterval.d.ts +0 -0
- package/dist/cjs/Transaction/ensureValidityInterval.d.ts.map +1 -0
- package/dist/{Transaction → cjs/Transaction}/ensureValidityInterval.js +0 -0
- package/dist/cjs/Transaction/ensureValidityInterval.js.map +1 -0
- package/dist/{Transaction → cjs/Transaction}/index.d.ts +0 -1
- package/dist/cjs/Transaction/index.d.ts.map +1 -0
- package/dist/{Transaction → cjs/Transaction}/index.js +5 -2
- package/dist/cjs/Transaction/index.js.map +1 -0
- package/dist/cjs/cip30.d.ts +30 -0
- package/dist/cjs/cip30.d.ts.map +1 -0
- package/dist/cjs/cip30.js +197 -0
- package/dist/cjs/cip30.js.map +1 -0
- package/dist/cjs/cip36.d.ts +33 -0
- package/dist/cjs/cip36.d.ts.map +1 -0
- package/dist/cjs/cip36.js +49 -0
- package/dist/cjs/cip36.js.map +1 -0
- package/dist/cjs/index.d.ts +10 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/{index.js → cjs/index.js} +10 -2
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.d.ts +9 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.d.ts.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.js +25 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.js.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryDocumentStore.d.ts +9 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryDocumentStore.d.ts.map +1 -0
- package/dist/{services/util/SyncableIntervalTrackerSubject.js → cjs/persistence/inMemoryStores/InMemoryDocumentStore.js} +26 -18
- package/dist/cjs/persistence/inMemoryStores/InMemoryDocumentStore.js.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts +8 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.js +31 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.js.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryStore.d.ts +7 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryStore.d.ts.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryStore.js +15 -0
- package/dist/cjs/persistence/inMemoryStores/InMemoryStore.js.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.d.ts +39 -0
- package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.d.ts.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.js +95 -0
- package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.js.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/index.d.ts +5 -0
- package/dist/cjs/persistence/inMemoryStores/index.d.ts.map +1 -0
- package/dist/cjs/persistence/inMemoryStores/index.js +21 -0
- package/dist/cjs/persistence/inMemoryStores/index.js.map +1 -0
- package/dist/cjs/persistence/index.d.ts +4 -0
- package/dist/cjs/persistence/index.d.ts.map +1 -0
- package/dist/cjs/persistence/index.js +20 -0
- package/dist/cjs/persistence/index.js.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.d.ts +16 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.d.ts.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.js +60 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.js.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.d.ts +10 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.d.ts.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.js +45 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.js.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts +11 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.js +53 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.js.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbStore.d.ts +20 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbStore.d.ts.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbStore.js +69 -0
- package/dist/cjs/persistence/pouchdbStores/PouchdbStore.js.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/index.d.ts +5 -0
- package/dist/cjs/persistence/pouchdbStores/index.d.ts.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/index.js +21 -0
- package/dist/cjs/persistence/pouchdbStores/index.js.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.d.ts +41 -0
- package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.d.ts.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.js +92 -0
- package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.js.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/util.d.ts +10 -0
- package/dist/cjs/persistence/pouchdbStores/util.d.ts.map +1 -0
- package/dist/cjs/persistence/pouchdbStores/util.js +52 -0
- package/dist/cjs/persistence/pouchdbStores/util.js.map +1 -0
- package/dist/cjs/persistence/types.d.ts +43 -0
- package/dist/cjs/persistence/types.d.ts.map +1 -0
- package/dist/{types.js → cjs/persistence/types.js} +0 -0
- package/dist/cjs/persistence/types.js.map +1 -0
- package/dist/cjs/services/AssetsTracker.d.ts +18 -0
- package/dist/cjs/services/AssetsTracker.d.ts.map +1 -0
- package/dist/cjs/services/AssetsTracker.js +22 -0
- package/dist/cjs/services/AssetsTracker.js.map +1 -0
- package/dist/{services → cjs/services}/BalanceTracker.d.ts +2 -2
- package/dist/cjs/services/BalanceTracker.d.ts.map +1 -0
- package/dist/cjs/services/BalanceTracker.js +22 -0
- package/dist/cjs/services/BalanceTracker.js.map +1 -0
- package/dist/cjs/services/DelegationTracker/DelegationTracker.d.ts +31 -0
- package/dist/cjs/services/DelegationTracker/DelegationTracker.d.ts.map +1 -0
- package/dist/cjs/services/DelegationTracker/DelegationTracker.js +47 -0
- package/dist/cjs/services/DelegationTracker/DelegationTracker.js.map +1 -0
- package/dist/{services → cjs/services}/DelegationTracker/RewardAccounts.d.ts +13 -12
- package/dist/cjs/services/DelegationTracker/RewardAccounts.d.ts.map +1 -0
- package/dist/cjs/services/DelegationTracker/RewardAccounts.js +109 -0
- package/dist/cjs/services/DelegationTracker/RewardAccounts.js.map +1 -0
- package/dist/cjs/services/DelegationTracker/RewardsHistory.d.ts +11 -0
- package/dist/cjs/services/DelegationTracker/RewardsHistory.d.ts.map +1 -0
- package/dist/cjs/services/DelegationTracker/RewardsHistory.js +63 -0
- package/dist/cjs/services/DelegationTracker/RewardsHistory.js.map +1 -0
- package/dist/{services → cjs/services}/DelegationTracker/index.d.ts +0 -0
- package/dist/cjs/services/DelegationTracker/index.d.ts.map +1 -0
- package/dist/{services → cjs/services}/DelegationTracker/index.js +5 -1
- package/dist/cjs/services/DelegationTracker/index.js.map +1 -0
- package/dist/{services → cjs/services}/DelegationTracker/transactionCertificates.d.ts +2 -3
- package/dist/cjs/services/DelegationTracker/transactionCertificates.d.ts.map +1 -0
- package/dist/cjs/services/DelegationTracker/transactionCertificates.js +41 -0
- package/dist/cjs/services/DelegationTracker/transactionCertificates.js.map +1 -0
- package/dist/{services → cjs/services}/DelegationTracker/types.d.ts +0 -0
- package/dist/cjs/services/DelegationTracker/types.d.ts.map +1 -0
- package/dist/cjs/services/DelegationTracker/types.js +3 -0
- package/dist/cjs/services/DelegationTracker/types.js.map +1 -0
- package/dist/cjs/services/EpochTracker.d.ts +5 -0
- package/dist/cjs/services/EpochTracker.d.ts.map +1 -0
- package/dist/cjs/services/EpochTracker.js +13 -0
- package/dist/cjs/services/EpochTracker.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.d.ts +35 -0
- package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.js +39 -0
- package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/ProviderTracker.d.ts +14 -0
- package/dist/cjs/services/ProviderTracker/ProviderTracker.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/ProviderTracker.js +36 -0
- package/dist/cjs/services/ProviderTracker/ProviderTracker.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.d.ts +14 -0
- package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.js +27 -0
- package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.d.ts +20 -0
- package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.js +39 -0
- package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts +24 -0
- package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.js +47 -0
- package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.d.ts +18 -0
- package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.js +35 -0
- package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.d.ts +16 -0
- package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.js +31 -0
- package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.d.ts +17 -0
- package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.js +32 -0
- package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.d.ts +16 -0
- package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.js +31 -0
- package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.js.map +1 -0
- package/dist/cjs/services/ProviderTracker/index.d.ts +10 -0
- package/dist/cjs/services/ProviderTracker/index.d.ts.map +1 -0
- package/dist/cjs/services/ProviderTracker/index.js +26 -0
- package/dist/cjs/services/ProviderTracker/index.js.map +1 -0
- package/dist/cjs/services/TipTracker.d.ts +23 -0
- package/dist/cjs/services/TipTracker.d.ts.map +1 -0
- package/dist/cjs/services/TipTracker.js +34 -0
- package/dist/cjs/services/TipTracker.js.map +1 -0
- package/dist/cjs/services/TransactionsTracker.d.ts +25 -0
- package/dist/cjs/services/TransactionsTracker.d.ts.map +1 -0
- package/dist/cjs/services/TransactionsTracker.js +94 -0
- package/dist/cjs/services/TransactionsTracker.js.map +1 -0
- package/dist/cjs/services/UtxoTracker.d.ts +21 -0
- package/dist/cjs/services/UtxoTracker.d.ts.map +1 -0
- package/dist/cjs/services/UtxoTracker.js +41 -0
- package/dist/cjs/services/UtxoTracker.js.map +1 -0
- package/dist/cjs/services/WalletUtil.d.ts +45 -0
- package/dist/cjs/services/WalletUtil.d.ts.map +1 -0
- package/dist/cjs/services/WalletUtil.js +82 -0
- package/dist/cjs/services/WalletUtil.js.map +1 -0
- package/dist/cjs/services/index.d.ts +12 -0
- package/dist/cjs/services/index.d.ts.map +1 -0
- package/dist/{services → cjs/services}/index.js +9 -2
- package/dist/cjs/services/index.js.map +1 -0
- package/dist/{services → cjs/services}/types.d.ts +27 -32
- package/dist/cjs/services/types.d.ts.map +1 -0
- package/dist/cjs/services/types.js +19 -0
- package/dist/cjs/services/types.js.map +1 -0
- package/dist/cjs/services/util/coldObservableProvider.d.ts +12 -0
- package/dist/cjs/services/util/coldObservableProvider.d.ts.map +1 -0
- package/dist/cjs/services/util/coldObservableProvider.js +14 -0
- package/dist/cjs/services/util/coldObservableProvider.js.map +1 -0
- package/dist/cjs/services/util/connectionStatusTracker.d.ts +14 -0
- package/dist/cjs/services/util/connectionStatusTracker.d.ts.map +1 -0
- package/dist/cjs/services/util/connectionStatusTracker.js +12 -0
- package/dist/cjs/services/util/connectionStatusTracker.js.map +1 -0
- package/dist/cjs/services/util/equals.d.ts +15 -0
- package/dist/cjs/services/util/equals.d.ts.map +1 -0
- package/dist/cjs/services/util/equals.js +33 -0
- package/dist/cjs/services/util/equals.js.map +1 -0
- package/dist/cjs/services/util/index.d.ts +6 -0
- package/dist/cjs/services/util/index.d.ts.map +1 -0
- package/dist/{services → cjs/services}/util/index.js +7 -3
- package/dist/cjs/services/util/index.js.map +1 -0
- package/dist/cjs/services/util/persistentTrackerSubjects.d.ts +12 -0
- package/dist/cjs/services/util/persistentTrackerSubjects.d.ts.map +1 -0
- package/dist/cjs/services/util/persistentTrackerSubjects.js +27 -0
- package/dist/cjs/services/util/persistentTrackerSubjects.js.map +1 -0
- package/dist/cjs/services/util/trigger.d.ts +5 -0
- package/dist/cjs/services/util/trigger.d.ts.map +1 -0
- package/dist/cjs/services/util/trigger.js +10 -0
- package/dist/cjs/services/util/trigger.js.map +1 -0
- package/dist/cjs/setupWallet.d.ts +19 -0
- package/dist/cjs/setupWallet.d.ts.map +1 -0
- package/dist/cjs/setupWallet.js +13 -0
- package/dist/cjs/setupWallet.js.map +1 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/cjs/types.d.ts +67 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/KeyManagement/InMemoryKeyAgent.d.ts +24 -0
- package/dist/esm/KeyManagement/InMemoryKeyAgent.d.ts.map +1 -0
- package/dist/esm/KeyManagement/InMemoryKeyAgent.js +107 -0
- package/dist/esm/KeyManagement/InMemoryKeyAgent.js.map +1 -0
- package/dist/esm/KeyManagement/KeyAgentBase.d.ts +22 -0
- package/dist/esm/KeyManagement/KeyAgentBase.d.ts.map +1 -0
- package/dist/esm/KeyManagement/KeyAgentBase.js +73 -0
- package/dist/esm/KeyManagement/KeyAgentBase.js.map +1 -0
- package/dist/esm/KeyManagement/LedgerKeyAgent.d.ts +43 -0
- package/dist/esm/KeyManagement/LedgerKeyAgent.d.ts.map +1 -0
- package/dist/esm/KeyManagement/LedgerKeyAgent.js +178 -0
- package/dist/esm/KeyManagement/LedgerKeyAgent.js.map +1 -0
- package/dist/esm/KeyManagement/TrezorKeyAgent.d.ts +30 -0
- package/dist/esm/KeyManagement/TrezorKeyAgent.d.ts.map +1 -0
- package/dist/esm/KeyManagement/TrezorKeyAgent.js +127 -0
- package/dist/esm/KeyManagement/TrezorKeyAgent.js.map +1 -0
- package/dist/esm/KeyManagement/cip8/cip30signData.d.ts +22 -0
- package/dist/esm/KeyManagement/cip8/cip30signData.d.ts.map +1 -0
- package/dist/esm/KeyManagement/cip8/cip30signData.js +76 -0
- package/dist/esm/KeyManagement/cip8/cip30signData.js.map +1 -0
- package/dist/esm/KeyManagement/cip8/index.d.ts +2 -0
- package/dist/esm/KeyManagement/cip8/index.d.ts.map +1 -0
- package/dist/esm/KeyManagement/cip8/index.js +2 -0
- package/dist/esm/KeyManagement/cip8/index.js.map +1 -0
- package/dist/esm/KeyManagement/cip8/types.d.ts +4 -0
- package/dist/esm/KeyManagement/cip8/types.d.ts.map +1 -0
- package/dist/esm/KeyManagement/cip8/types.js +2 -0
- package/dist/esm/KeyManagement/cip8/types.js.map +1 -0
- package/dist/esm/KeyManagement/cip8/util.d.ts +7 -0
- package/dist/esm/KeyManagement/cip8/util.d.ts.map +1 -0
- package/dist/esm/KeyManagement/cip8/util.js +7 -0
- package/dist/esm/KeyManagement/cip8/util.js.map +1 -0
- package/dist/esm/KeyManagement/emip3.d.ts +4 -0
- package/dist/esm/KeyManagement/emip3.d.ts.map +1 -0
- package/dist/esm/KeyManagement/emip3.js +39 -0
- package/dist/esm/KeyManagement/emip3.js.map +1 -0
- package/dist/esm/KeyManagement/errors/AuthenticationError.d.ts +6 -0
- package/dist/esm/KeyManagement/errors/AuthenticationError.d.ts.map +1 -0
- package/dist/esm/KeyManagement/errors/AuthenticationError.js +12 -0
- package/dist/esm/KeyManagement/errors/AuthenticationError.js.map +1 -0
- package/dist/esm/KeyManagement/errors/HwMappingError.d.ts +6 -0
- package/dist/esm/KeyManagement/errors/HwMappingError.d.ts.map +1 -0
- package/dist/esm/KeyManagement/errors/HwMappingError.js +12 -0
- package/dist/esm/KeyManagement/errors/HwMappingError.js.map +1 -0
- package/dist/esm/KeyManagement/errors/InvalidMnemonicError.d.ts +5 -0
- package/dist/esm/KeyManagement/errors/InvalidMnemonicError.d.ts.map +1 -0
- package/dist/esm/KeyManagement/errors/InvalidMnemonicError.js +9 -0
- package/dist/esm/KeyManagement/errors/InvalidMnemonicError.js.map +1 -0
- package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .d.ts +5 -0
- package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .d.ts.map +1 -0
- package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .js +11 -0
- package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .js.map +1 -0
- package/dist/esm/KeyManagement/errors/TransportError.d.ts +6 -0
- package/dist/esm/KeyManagement/errors/TransportError.d.ts.map +1 -0
- package/dist/esm/KeyManagement/errors/TransportError.js +12 -0
- package/dist/esm/KeyManagement/errors/TransportError.js.map +1 -0
- package/dist/esm/KeyManagement/errors/index.d.ts +6 -0
- package/dist/esm/KeyManagement/errors/index.d.ts.map +1 -0
- package/dist/esm/KeyManagement/errors/index.js +6 -0
- package/dist/esm/KeyManagement/errors/index.js.map +1 -0
- package/dist/esm/KeyManagement/index.d.ts +12 -0
- package/dist/esm/KeyManagement/index.d.ts.map +1 -0
- package/dist/esm/KeyManagement/index.js +12 -0
- package/dist/esm/KeyManagement/index.js.map +1 -0
- package/dist/esm/KeyManagement/restoreKeyAgent.d.ts +9 -0
- package/dist/esm/KeyManagement/restoreKeyAgent.d.ts.map +1 -0
- package/dist/esm/KeyManagement/restoreKeyAgent.js +27 -0
- package/dist/esm/KeyManagement/restoreKeyAgent.js.map +1 -0
- package/dist/esm/KeyManagement/types.d.ts +122 -0
- package/dist/esm/KeyManagement/types.d.ts.map +1 -0
- package/dist/esm/KeyManagement/types.js +40 -0
- package/dist/esm/KeyManagement/types.js.map +1 -0
- package/dist/esm/KeyManagement/util/bip39.d.ts +8 -0
- package/dist/esm/KeyManagement/util/bip39.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/bip39.js +8 -0
- package/dist/esm/KeyManagement/util/bip39.js.map +1 -0
- package/dist/esm/KeyManagement/util/cachedGetPassword.d.ts +4 -0
- package/dist/esm/KeyManagement/util/cachedGetPassword.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/cachedGetPassword.js +21 -0
- package/dist/esm/KeyManagement/util/cachedGetPassword.js.map +1 -0
- package/dist/esm/KeyManagement/util/createAsyncKeyAgent.d.ts +3 -0
- package/dist/esm/KeyManagement/util/createAsyncKeyAgent.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/createAsyncKeyAgent.js +22 -0
- package/dist/esm/KeyManagement/util/createAsyncKeyAgent.js.map +1 -0
- package/dist/esm/KeyManagement/util/index.d.ts +8 -0
- package/dist/esm/KeyManagement/util/index.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/index.js +8 -0
- package/dist/esm/KeyManagement/util/index.js.map +1 -0
- package/dist/esm/KeyManagement/util/key.d.ts +11 -0
- package/dist/esm/KeyManagement/util/key.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/key.js +24 -0
- package/dist/esm/KeyManagement/util/key.js.map +1 -0
- package/dist/esm/KeyManagement/util/mapHardwareSigningData.d.ts +39 -0
- package/dist/esm/KeyManagement/util/mapHardwareSigningData.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/mapHardwareSigningData.js +833 -0
- package/dist/esm/KeyManagement/util/mapHardwareSigningData.js.map +1 -0
- package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.d.ts +5 -0
- package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.js +17 -0
- package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.js.map +1 -0
- package/dist/esm/KeyManagement/util/stubSignTransaction.d.ts +5 -0
- package/dist/esm/KeyManagement/util/stubSignTransaction.d.ts.map +1 -0
- package/dist/esm/KeyManagement/util/stubSignTransaction.js +9 -0
- package/dist/esm/KeyManagement/util/stubSignTransaction.js.map +1 -0
- package/dist/esm/SingleAddressWallet.d.ts +68 -0
- package/dist/esm/SingleAddressWallet.d.ts.map +1 -0
- package/dist/esm/SingleAddressWallet.js +259 -0
- package/dist/esm/SingleAddressWallet.js.map +1 -0
- package/dist/esm/Transaction/createTransactionInternals.d.ts +20 -0
- package/dist/esm/Transaction/createTransactionInternals.d.ts.map +1 -0
- package/dist/esm/Transaction/createTransactionInternals.js +29 -0
- package/dist/esm/Transaction/createTransactionInternals.js.map +1 -0
- package/dist/esm/Transaction/ensureValidityInterval.d.ts +3 -0
- package/dist/esm/Transaction/ensureValidityInterval.d.ts.map +1 -0
- package/dist/esm/Transaction/ensureValidityInterval.js +2 -0
- package/dist/esm/Transaction/ensureValidityInterval.js.map +1 -0
- package/dist/esm/Transaction/index.d.ts +3 -0
- package/dist/esm/Transaction/index.d.ts.map +1 -0
- package/dist/esm/Transaction/index.js +3 -0
- package/dist/esm/Transaction/index.js.map +1 -0
- package/dist/esm/cip30.d.ts +30 -0
- package/dist/esm/cip30.d.ts.map +1 -0
- package/dist/esm/cip30.js +193 -0
- package/dist/esm/cip30.js.map +1 -0
- package/dist/esm/cip36.d.ts +33 -0
- package/dist/esm/cip36.d.ts.map +1 -0
- package/dist/esm/cip36.js +43 -0
- package/dist/esm/cip36.js.map +1 -0
- package/dist/esm/index.d.ts +10 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/{index.d.ts → esm/index.js} +5 -1
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.d.ts +9 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.d.ts.map +1 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.js +21 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.js.map +1 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.d.ts +9 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.d.ts.map +1 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.js +34 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.js.map +1 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts +8 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts.map +1 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.js +27 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.js.map +1 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryStore.d.ts +7 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryStore.d.ts.map +1 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryStore.js +11 -0
- package/dist/esm/persistence/inMemoryStores/InMemoryStore.js.map +1 -0
- package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.d.ts +39 -0
- package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.d.ts.map +1 -0
- package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.js +76 -0
- package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.js.map +1 -0
- package/dist/esm/persistence/inMemoryStores/index.d.ts +5 -0
- package/dist/esm/persistence/inMemoryStores/index.d.ts.map +1 -0
- package/dist/esm/persistence/inMemoryStores/index.js +5 -0
- package/dist/esm/persistence/inMemoryStores/index.js.map +1 -0
- package/dist/esm/persistence/index.d.ts +4 -0
- package/dist/esm/persistence/index.d.ts.map +1 -0
- package/dist/esm/persistence/index.js +4 -0
- package/dist/esm/persistence/index.js.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.d.ts +16 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.d.ts.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.js +56 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.js.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.d.ts +10 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.d.ts.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.js +41 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.js.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts +11 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.js +49 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.js.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbStore.d.ts +20 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbStore.d.ts.map +1 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbStore.js +62 -0
- package/dist/esm/persistence/pouchdbStores/PouchdbStore.js.map +1 -0
- package/dist/esm/persistence/pouchdbStores/index.d.ts +5 -0
- package/dist/esm/persistence/pouchdbStores/index.d.ts.map +1 -0
- package/dist/esm/persistence/pouchdbStores/index.js +5 -0
- package/dist/esm/persistence/pouchdbStores/index.js.map +1 -0
- package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.d.ts +41 -0
- package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.d.ts.map +1 -0
- package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.js +74 -0
- package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.js.map +1 -0
- package/dist/esm/persistence/pouchdbStores/util.d.ts +10 -0
- package/dist/esm/persistence/pouchdbStores/util.d.ts.map +1 -0
- package/dist/esm/persistence/pouchdbStores/util.js +43 -0
- package/dist/esm/persistence/pouchdbStores/util.js.map +1 -0
- package/dist/esm/persistence/types.d.ts +43 -0
- package/dist/esm/persistence/types.d.ts.map +1 -0
- package/dist/esm/persistence/types.js +2 -0
- package/dist/esm/persistence/types.js.map +1 -0
- package/dist/esm/services/AssetsTracker.d.ts +18 -0
- package/dist/esm/services/AssetsTracker.d.ts.map +1 -0
- package/dist/esm/services/AssetsTracker.js +17 -0
- package/dist/esm/services/AssetsTracker.js.map +1 -0
- package/dist/esm/services/BalanceTracker.d.ts +5 -0
- package/dist/esm/services/BalanceTracker.d.ts.map +1 -0
- package/dist/esm/services/BalanceTracker.js +18 -0
- package/dist/esm/services/BalanceTracker.js.map +1 -0
- package/dist/esm/services/DelegationTracker/DelegationTracker.d.ts +31 -0
- package/dist/esm/services/DelegationTracker/DelegationTracker.d.ts.map +1 -0
- package/dist/esm/services/DelegationTracker/DelegationTracker.js +41 -0
- package/dist/esm/services/DelegationTracker/DelegationTracker.js.map +1 -0
- package/dist/esm/services/DelegationTracker/RewardAccounts.d.ts +37 -0
- package/dist/esm/services/DelegationTracker/RewardAccounts.d.ts.map +1 -0
- package/dist/esm/services/DelegationTracker/RewardAccounts.js +93 -0
- package/dist/esm/services/DelegationTracker/RewardAccounts.js.map +1 -0
- package/dist/esm/services/DelegationTracker/RewardsHistory.d.ts +11 -0
- package/dist/esm/services/DelegationTracker/RewardsHistory.d.ts.map +1 -0
- package/dist/esm/services/DelegationTracker/RewardsHistory.js +55 -0
- package/dist/esm/services/DelegationTracker/RewardsHistory.js.map +1 -0
- package/dist/esm/services/DelegationTracker/index.d.ts +5 -0
- package/dist/esm/services/DelegationTracker/index.d.ts.map +1 -0
- package/dist/esm/services/DelegationTracker/index.js +5 -0
- package/dist/esm/services/DelegationTracker/index.js.map +1 -0
- package/dist/esm/services/DelegationTracker/transactionCertificates.d.ts +8 -0
- package/dist/esm/services/DelegationTracker/transactionCertificates.d.ts.map +1 -0
- package/dist/esm/services/DelegationTracker/transactionCertificates.js +31 -0
- package/dist/esm/services/DelegationTracker/transactionCertificates.js.map +1 -0
- package/dist/esm/services/DelegationTracker/types.d.ts +6 -0
- package/dist/esm/services/DelegationTracker/types.d.ts.map +1 -0
- package/dist/esm/services/DelegationTracker/types.js +2 -0
- package/dist/esm/services/DelegationTracker/types.js.map +1 -0
- package/dist/esm/services/EpochTracker.d.ts +5 -0
- package/dist/esm/services/EpochTracker.d.ts.map +1 -0
- package/dist/esm/services/EpochTracker.js +9 -0
- package/dist/esm/services/EpochTracker.js.map +1 -0
- package/dist/esm/services/ProviderTracker/ProviderStatusTracker.d.ts +35 -0
- package/dist/esm/services/ProviderTracker/ProviderStatusTracker.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/ProviderStatusTracker.js +35 -0
- package/dist/esm/services/ProviderTracker/ProviderStatusTracker.js.map +1 -0
- package/dist/esm/services/ProviderTracker/ProviderTracker.d.ts +14 -0
- package/dist/esm/services/ProviderTracker/ProviderTracker.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/ProviderTracker.js +32 -0
- package/dist/esm/services/ProviderTracker/ProviderTracker.js.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedAssetProvider.d.ts +14 -0
- package/dist/esm/services/ProviderTracker/TrackedAssetProvider.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedAssetProvider.js +22 -0
- package/dist/esm/services/ProviderTracker/TrackedAssetProvider.js.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.d.ts +20 -0
- package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.js +34 -0
- package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.js.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts +24 -0
- package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.js +42 -0
- package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.js.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.d.ts +18 -0
- package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.js +30 -0
- package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.js.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.d.ts +16 -0
- package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.js +26 -0
- package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.js.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.d.ts +17 -0
- package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.js +27 -0
- package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.js.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.d.ts +16 -0
- package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.js +26 -0
- package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.js.map +1 -0
- package/dist/esm/services/ProviderTracker/index.d.ts +10 -0
- package/dist/esm/services/ProviderTracker/index.d.ts.map +1 -0
- package/dist/esm/services/ProviderTracker/index.js +10 -0
- package/dist/esm/services/ProviderTracker/index.js.map +1 -0
- package/dist/esm/services/TipTracker.d.ts +23 -0
- package/dist/esm/services/TipTracker.d.ts.map +1 -0
- package/dist/esm/services/TipTracker.js +30 -0
- package/dist/esm/services/TipTracker.js.map +1 -0
- package/dist/esm/services/TransactionsTracker.d.ts +25 -0
- package/dist/esm/services/TransactionsTracker.d.ts.map +1 -0
- package/dist/esm/services/TransactionsTracker.js +86 -0
- package/dist/esm/services/TransactionsTracker.js.map +1 -0
- package/dist/esm/services/UtxoTracker.d.ts +21 -0
- package/dist/esm/services/UtxoTracker.d.ts.map +1 -0
- package/dist/esm/services/UtxoTracker.js +36 -0
- package/dist/esm/services/UtxoTracker.js.map +1 -0
- package/dist/esm/services/WalletUtil.d.ts +45 -0
- package/dist/esm/services/WalletUtil.d.ts.map +1 -0
- package/dist/esm/services/WalletUtil.js +75 -0
- package/dist/esm/services/WalletUtil.js.map +1 -0
- package/dist/esm/services/index.d.ts +12 -0
- package/dist/esm/services/index.d.ts.map +1 -0
- package/dist/{services/index.d.ts → esm/services/index.js} +5 -2
- package/dist/esm/services/index.js.map +1 -0
- package/dist/esm/services/types.d.ts +76 -0
- package/dist/esm/services/types.d.ts.map +1 -0
- package/dist/esm/services/types.js +16 -0
- package/dist/esm/services/types.js.map +1 -0
- package/dist/esm/services/util/coldObservableProvider.d.ts +12 -0
- package/dist/esm/services/util/coldObservableProvider.d.ts.map +1 -0
- package/dist/esm/services/util/coldObservableProvider.js +10 -0
- package/dist/esm/services/util/coldObservableProvider.js.map +1 -0
- package/dist/esm/services/util/connectionStatusTracker.d.ts +14 -0
- package/dist/esm/services/util/connectionStatusTracker.d.ts.map +1 -0
- package/dist/esm/services/util/connectionStatusTracker.js +8 -0
- package/dist/esm/services/util/connectionStatusTracker.js.map +1 -0
- package/dist/esm/services/util/equals.d.ts +15 -0
- package/dist/esm/services/util/equals.d.ts.map +1 -0
- package/dist/esm/services/util/equals.js +15 -0
- package/dist/esm/services/util/equals.js.map +1 -0
- package/dist/esm/services/util/index.d.ts +6 -0
- package/dist/esm/services/util/index.d.ts.map +1 -0
- package/dist/esm/services/util/index.js +6 -0
- package/dist/esm/services/util/index.js.map +1 -0
- package/dist/esm/services/util/persistentTrackerSubjects.d.ts +12 -0
- package/dist/esm/services/util/persistentTrackerSubjects.d.ts.map +1 -0
- package/dist/esm/services/util/persistentTrackerSubjects.js +22 -0
- package/dist/esm/services/util/persistentTrackerSubjects.js.map +1 -0
- package/dist/esm/services/util/trigger.d.ts +5 -0
- package/dist/esm/services/util/trigger.d.ts.map +1 -0
- package/dist/esm/services/util/trigger.js +5 -0
- package/dist/esm/services/util/trigger.js.map +1 -0
- package/dist/esm/setupWallet.d.ts +19 -0
- package/dist/esm/setupWallet.d.ts.map +1 -0
- package/dist/esm/setupWallet.js +9 -0
- package/dist/esm/setupWallet.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/types.d.ts +67 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/package.json +65 -16
- package/dist/KeyManagement/InMemoryKeyManager.d.ts +0 -9
- package/dist/KeyManagement/InMemoryKeyManager.d.ts.map +0 -1
- package/dist/KeyManagement/InMemoryKeyManager.js +0 -94
- package/dist/KeyManagement/InMemoryKeyManager.js.map +0 -1
- package/dist/KeyManagement/errors/InvalidMnemonic.d.ts +0 -5
- package/dist/KeyManagement/errors/InvalidMnemonic.d.ts.map +0 -1
- package/dist/KeyManagement/errors/InvalidMnemonic.js +0 -13
- package/dist/KeyManagement/errors/InvalidMnemonic.js.map +0 -1
- package/dist/KeyManagement/errors/index.d.ts +0 -2
- package/dist/KeyManagement/errors/index.d.ts.map +0 -1
- package/dist/KeyManagement/errors/index.js +0 -6
- package/dist/KeyManagement/errors/index.js.map +0 -1
- package/dist/KeyManagement/index.d.ts +0 -5
- package/dist/KeyManagement/index.d.ts.map +0 -1
- package/dist/KeyManagement/index.js.map +0 -1
- package/dist/KeyManagement/types.d.ts +0 -30
- package/dist/KeyManagement/types.d.ts.map +0 -1
- package/dist/KeyManagement/types.js +0 -15
- package/dist/KeyManagement/types.js.map +0 -1
- package/dist/KeyManagement/util.d.ts +0 -6
- package/dist/KeyManagement/util.d.ts.map +0 -1
- package/dist/KeyManagement/util.js.map +0 -1
- package/dist/SingleAddressWallet.d.ts +0 -45
- package/dist/SingleAddressWallet.d.ts.map +0 -1
- package/dist/SingleAddressWallet.js +0 -158
- package/dist/SingleAddressWallet.js.map +0 -1
- package/dist/Transaction/computeImplicitCoin.d.ts +0 -4
- package/dist/Transaction/computeImplicitCoin.d.ts.map +0 -1
- package/dist/Transaction/computeImplicitCoin.js +0 -21
- package/dist/Transaction/computeImplicitCoin.js.map +0 -1
- package/dist/Transaction/createTransactionInternals.d.ts +0 -16
- package/dist/Transaction/createTransactionInternals.d.ts.map +0 -1
- package/dist/Transaction/createTransactionInternals.js +0 -28
- package/dist/Transaction/createTransactionInternals.js.map +0 -1
- package/dist/Transaction/ensureValidityInterval.d.ts.map +0 -1
- package/dist/Transaction/ensureValidityInterval.js.map +0 -1
- package/dist/Transaction/index.d.ts.map +0 -1
- package/dist/Transaction/index.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/services/AssetsTracker.d.ts +0 -16
- package/dist/services/AssetsTracker.d.ts.map +0 -1
- package/dist/services/AssetsTracker.js +0 -13
- package/dist/services/AssetsTracker.js.map +0 -1
- package/dist/services/BalanceTracker.d.ts.map +0 -1
- package/dist/services/BalanceTracker.js +0 -43
- package/dist/services/BalanceTracker.js.map +0 -1
- package/dist/services/DelegationTracker/DelegationTracker.d.ts +0 -26
- package/dist/services/DelegationTracker/DelegationTracker.d.ts.map +0 -1
- package/dist/services/DelegationTracker/DelegationTracker.js +0 -39
- package/dist/services/DelegationTracker/DelegationTracker.js.map +0 -1
- package/dist/services/DelegationTracker/RewardAccounts.d.ts.map +0 -1
- package/dist/services/DelegationTracker/RewardAccounts.js +0 -86
- package/dist/services/DelegationTracker/RewardAccounts.js.map +0 -1
- package/dist/services/DelegationTracker/RewardsHistory.d.ts +0 -14
- package/dist/services/DelegationTracker/RewardsHistory.d.ts.map +0 -1
- package/dist/services/DelegationTracker/RewardsHistory.js +0 -27
- package/dist/services/DelegationTracker/RewardsHistory.js.map +0 -1
- package/dist/services/DelegationTracker/index.d.ts.map +0 -1
- package/dist/services/DelegationTracker/index.js.map +0 -1
- package/dist/services/DelegationTracker/transactionCertificates.d.ts.map +0 -1
- package/dist/services/DelegationTracker/transactionCertificates.js +0 -33
- package/dist/services/DelegationTracker/transactionCertificates.js.map +0 -1
- package/dist/services/DelegationTracker/types.d.ts.map +0 -1
- package/dist/services/DelegationTracker/types.js.map +0 -1
- package/dist/services/TransactionError.d.ts +0 -15
- package/dist/services/TransactionError.d.ts.map +0 -1
- package/dist/services/TransactionError.js +0 -23
- package/dist/services/TransactionError.js.map +0 -1
- package/dist/services/TransactionsTracker.d.ts +0 -22
- package/dist/services/TransactionsTracker.d.ts.map +0 -1
- package/dist/services/TransactionsTracker.js +0 -75
- package/dist/services/TransactionsTracker.js.map +0 -1
- package/dist/services/UtxoTracker.d.ts +0 -18
- package/dist/services/UtxoTracker.d.ts.map +0 -1
- package/dist/services/UtxoTracker.js +0 -20
- package/dist/services/UtxoTracker.js.map +0 -1
- package/dist/services/index.d.ts.map +0 -1
- package/dist/services/index.js.map +0 -1
- package/dist/services/types.d.ts.map +0 -1
- package/dist/services/types.js +0 -16
- package/dist/services/types.js.map +0 -1
- package/dist/services/util/SyncableIntervalTrackerSubject.d.ts +0 -19
- package/dist/services/util/SyncableIntervalTrackerSubject.d.ts.map +0 -1
- package/dist/services/util/SyncableIntervalTrackerSubject.js.map +0 -1
- package/dist/services/util/TrackerSubject.d.ts +0 -14
- package/dist/services/util/TrackerSubject.d.ts.map +0 -1
- package/dist/services/util/TrackerSubject.js +0 -46
- package/dist/services/util/TrackerSubject.js.map +0 -1
- package/dist/services/util/coldObservableProvider.d.ts +0 -4
- package/dist/services/util/coldObservableProvider.d.ts.map +0 -1
- package/dist/services/util/coldObservableProvider.js +0 -14
- package/dist/services/util/coldObservableProvider.js.map +0 -1
- package/dist/services/util/equals.d.ts +0 -9
- package/dist/services/util/equals.d.ts.map +0 -1
- package/dist/services/util/equals.js +0 -19
- package/dist/services/util/equals.js.map +0 -1
- package/dist/services/util/index.d.ts +0 -6
- package/dist/services/util/index.d.ts.map +0 -1
- package/dist/services/util/index.js.map +0 -1
- package/dist/services/util/trigger.d.ts +0 -5
- package/dist/services/util/trigger.d.ts.map +0 -1
- package/dist/services/util/trigger.js +0 -9
- package/dist/services/util/trigger.js.map +0 -1
- package/dist/types.d.ts +0 -35
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Assets } from '../types';
|
|
2
|
+
import { Cardano, EpochRewards, ProtocolParametersRequiredByWallet, StakeSummary, SupplySummary, TimeSettings } from '@cardano-sdk/core';
|
|
3
|
+
import { GroupedAddress } from '../KeyManagement';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
5
|
+
export interface Destroyable {
|
|
6
|
+
destroyed: boolean;
|
|
7
|
+
destroy(): Observable<void>;
|
|
8
|
+
}
|
|
9
|
+
export interface CollectionStore<T> extends Destroyable {
|
|
10
|
+
getAll(): Observable<T[]>;
|
|
11
|
+
setAll(docs: T[]): Observable<void>;
|
|
12
|
+
}
|
|
13
|
+
export declare type OrderedCollectionStore<T> = CollectionStore<T>;
|
|
14
|
+
export interface DocumentStore<T> extends Destroyable {
|
|
15
|
+
get(): Observable<T>;
|
|
16
|
+
set(doc: T): Observable<void>;
|
|
17
|
+
}
|
|
18
|
+
export declare type KeyValueCollection<K, V> = {
|
|
19
|
+
key: K;
|
|
20
|
+
value: V;
|
|
21
|
+
};
|
|
22
|
+
export interface KeyValueStore<K, V> extends Omit<CollectionStore<KeyValueCollection<K, V>>, 'getAll'> {
|
|
23
|
+
getValues(keys: K[]): Observable<V[]>;
|
|
24
|
+
setValue(key: K, value: V): Observable<void>;
|
|
25
|
+
}
|
|
26
|
+
export interface WalletStores extends Destroyable {
|
|
27
|
+
tip: DocumentStore<Cardano.Tip>;
|
|
28
|
+
utxo: CollectionStore<Cardano.Utxo>;
|
|
29
|
+
unspendableUtxo: CollectionStore<Cardano.Utxo>;
|
|
30
|
+
transactions: OrderedCollectionStore<Cardano.TxAlonzo>;
|
|
31
|
+
inFlightTransactions: DocumentStore<Cardano.NewTxAlonzo[]>;
|
|
32
|
+
rewardsHistory: KeyValueStore<Cardano.RewardAccount, EpochRewards[]>;
|
|
33
|
+
rewardsBalances: KeyValueStore<Cardano.RewardAccount, Cardano.Lovelace>;
|
|
34
|
+
stakePools: KeyValueStore<Cardano.PoolId, Cardano.StakePool>;
|
|
35
|
+
protocolParameters: DocumentStore<ProtocolParametersRequiredByWallet>;
|
|
36
|
+
genesisParameters: DocumentStore<Cardano.CompactGenesis>;
|
|
37
|
+
stake: DocumentStore<StakeSummary>;
|
|
38
|
+
lovelaceSupply: DocumentStore<SupplySummary>;
|
|
39
|
+
timeSettings: DocumentStore<TimeSettings[]>;
|
|
40
|
+
assets: DocumentStore<Assets>;
|
|
41
|
+
addresses: DocumentStore<GroupedAddress[]>;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/persistence/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,OAAO,EACP,YAAY,EACZ,kCAAkC,EAClC,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,OAAO,CAAC;IAMnB,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,CAAE,SAAQ,WAAW;IAQrD,MAAM,IAAI,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;IAQ1B,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;CACrC;AAED,oBAAY,sBAAsB,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;AAE3D,MAAM,WAAW,aAAa,CAAC,CAAC,CAAE,SAAQ,WAAW;IAQnD,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAMrB,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED,oBAAY,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;IAAE,GAAG,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5D,MAAM,WAAW,aAAa,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;IAQpG,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;IAItC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,YAAY,EAAE,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvD,oBAAoB,EAAE,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC;IACrE,eAAe,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxE,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7D,kBAAkB,EAAE,aAAa,CAAC,kCAAkC,CAAC,CAAC;IACtE,iBAAiB,EAAE,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACzD,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACnC,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IAC7C,YAAY,EAAE,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC;IAC5C,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9B,SAAS,EAAE,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC;CAC5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/persistence/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Asset, Cardano } from '@cardano-sdk/core';
|
|
2
|
+
import { BalanceTracker } from './types';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { RetryBackoffConfig } from 'backoff-rxjs';
|
|
5
|
+
import { TrackedAssetProvider } from './ProviderTracker';
|
|
6
|
+
export declare const createAssetService: (assetProvider: TrackedAssetProvider, retryBackoffConfig: RetryBackoffConfig) => (assetId: Cardano.AssetId) => Observable<Asset.AssetInfo>;
|
|
7
|
+
export declare type AssetService = ReturnType<typeof createAssetService>;
|
|
8
|
+
export interface AssetsTrackerProps {
|
|
9
|
+
balanceTracker: BalanceTracker;
|
|
10
|
+
assetProvider: TrackedAssetProvider;
|
|
11
|
+
retryBackoffConfig: RetryBackoffConfig;
|
|
12
|
+
}
|
|
13
|
+
interface AssetsTrackerInternals {
|
|
14
|
+
assetService?: AssetService;
|
|
15
|
+
}
|
|
16
|
+
export declare const createAssetsTracker: ({ assetProvider, balanceTracker, retryBackoffConfig }: AssetsTrackerProps, { assetService }?: AssetsTrackerInternals) => Observable<Map<Cardano.AssetId, Asset.AssetInfo>>;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=AssetsTracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssetsTracker.d.ts","sourceRoot":"","sources":["../../../src/services/AssetsTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,UAAU,EAAoC,MAAM,MAAM,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD,eAAO,MAAM,kBAAkB,kBACb,oBAAoB,sBAAsB,kBAAkB,8DAKxE,CAAC;AACP,oBAAY,YAAY,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEjE,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,cAAc,CAAC;IAC/B,aAAa,EAAE,oBAAoB,CAAC;IACpC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC;AAED,UAAU,sBAAsB;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,eAAO,MAAM,mBAAmB,0DACyB,kBAAkB,qBACC,sBAAsB,sDAsB9F,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Observable, forkJoin, map, mergeMap, of, tap } from 'rxjs';
|
|
2
|
+
import { coldObservableProvider } from './util';
|
|
3
|
+
export const createAssetService = (assetProvider, retryBackoffConfig) => (assetId) => coldObservableProvider({
|
|
4
|
+
provider: () => assetProvider.getAsset(assetId, { history: false, nftMetadata: true, tokenMetadata: true }),
|
|
5
|
+
retryBackoffConfig,
|
|
6
|
+
trigger$: of(true)
|
|
7
|
+
});
|
|
8
|
+
export const createAssetsTracker = ({ assetProvider, balanceTracker, retryBackoffConfig }, { assetService = createAssetService(assetProvider, retryBackoffConfig) } = {}) => new Observable((subscriber) => {
|
|
9
|
+
let assetsMap = new Map();
|
|
10
|
+
const sub = balanceTracker.utxo.total$
|
|
11
|
+
.pipe(map(({ assets }) => [...(assets?.keys() || [])]), tap((assetIds) => assetIds.length === 0 && assetProvider.setStatInitialized(assetProvider.stats.getAsset$)), map((assetIds) => assetIds.map((assetId) => (assetsMap.has(assetId) ? of(assetsMap.get(assetId)) : assetService(assetId)))), mergeMap((assetInfos) => forkJoin(assetInfos)), map((assetInfos) => new Map(assetInfos.map((assetInfo) => [assetInfo.assetId, assetInfo]))), tap((v) => (assetsMap = v)))
|
|
12
|
+
.subscribe(subscriber);
|
|
13
|
+
return () => {
|
|
14
|
+
sub.unsubscribe();
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=AssetsTracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssetsTracker.js","sourceRoot":"","sources":["../../../src/services/AssetsTracker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAGpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAEhD,MAAM,CAAC,MAAM,kBAAkB,GAC7B,CAAC,aAAmC,EAAE,kBAAsC,EAAE,EAAE,CAAC,CAAC,OAAwB,EAAE,EAAE,CAC5G,sBAAsB,CAAC;IACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC3G,kBAAkB;IAClB,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC;CACnB,CAAC,CAAC;AAaP,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,EAAE,aAAa,EAAE,cAAc,EAAE,kBAAkB,EAAsB,EACzE,EAAE,YAAY,GAAG,kBAAkB,CAAC,aAAa,EAAE,kBAAkB,CAAC,KAA6B,EAAE,EACrG,EAAE,CACF,IAAI,UAAU,CAAwC,CAAC,UAAU,EAAE,EAAE;IACnE,IAAI,SAAS,GAAG,IAAI,GAAG,EAAoC,CAAC;IAC5D,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM;SACnC,IAAI,CACH,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAChD,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,aAAa,CAAC,kBAAkB,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAE3G,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CACf,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CACzG,EAED,QAAQ,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAC9C,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAU,CAAC,OAAO,EAAE,SAAU,CAAC,CAAC,CAAC,CAAC,EAC7F,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAC5B;SACA,SAAS,CAAC,UAAU,CAAC,CAAC;IAEzB,OAAO,GAAG,EAAE;QACV,GAAG,CAAC,WAAW,EAAE,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { BalanceTracker, DelegationTracker, TransactionalObservables } from './types';
|
|
2
|
+
import { Cardano, ProtocolParametersRequiredByWallet } from '@cardano-sdk/core';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
export declare const createBalanceTracker: (protocolParameters$: Observable<ProtocolParametersRequiredByWallet>, utxoTracker: TransactionalObservables<Cardano.Utxo[]>, delegationTracker: DelegationTracker) => BalanceTracker;
|
|
5
|
+
//# sourceMappingURL=BalanceTracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BalanceTracker.d.ts","sourceRoot":"","sources":["../../../src/services/BalanceTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAkB,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACtG,OAAO,EAAE,OAAO,EAAE,kCAAkC,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EAAE,UAAU,EAA4C,MAAM,MAAM,CAAC;AAoB5E,eAAO,MAAM,oBAAoB,wBACV,WAAW,kCAAkC,CAAC,eACtD,yBAAyB,QAAQ,IAAI,EAAE,CAAC,qBAClC,iBAAiB,KACnC,cAiBD,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { StakeKeyStatus } from './types';
|
|
2
|
+
import { Cardano } from '@cardano-sdk/core';
|
|
3
|
+
import { combineLatest, distinctUntilChanged, map } from 'rxjs';
|
|
4
|
+
const mapUtxoValue = map((utxo) => Cardano.util.coalesceValueQuantities(utxo.map(([_, txOut]) => txOut.value)));
|
|
5
|
+
const computeDepositCoin = (protocolParameters$, numDeposits$) => combineLatest([numDeposits$, protocolParameters$]).pipe(map(([registeredAccounts, { stakeKeyDeposit }]) => BigInt(registeredAccounts * stakeKeyDeposit)), distinctUntilChanged());
|
|
6
|
+
const numRewardAccountsWithKeyStatus = (delegationTracker, keyStatuses) => delegationTracker.rewardAccounts$.pipe(map((accounts) => accounts.filter((account) => keyStatuses.includes(account.keyStatus)).length));
|
|
7
|
+
export const createBalanceTracker = (protocolParameters$, utxoTracker, delegationTracker) => ({
|
|
8
|
+
rewardAccounts: {
|
|
9
|
+
deposit$: computeDepositCoin(protocolParameters$, numRewardAccountsWithKeyStatus(delegationTracker, [StakeKeyStatus.Registered, StakeKeyStatus.Registering])),
|
|
10
|
+
rewards$: delegationTracker.rewardAccounts$.pipe(map((accounts) => accounts.reduce((sum, { rewardBalance }) => sum + rewardBalance, 0n)), distinctUntilChanged())
|
|
11
|
+
},
|
|
12
|
+
utxo: {
|
|
13
|
+
available$: utxoTracker.available$.pipe(mapUtxoValue),
|
|
14
|
+
total$: utxoTracker.total$.pipe(mapUtxoValue),
|
|
15
|
+
unspendable$: utxoTracker.unspendable$.pipe(mapUtxoValue)
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=BalanceTracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BalanceTracker.js","sourceRoot":"","sources":["../../../src/services/BalanceTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,cAAc,EAA4B,MAAM,SAAS,CAAC;AACtG,OAAO,EAAE,OAAO,EAAsC,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EAAc,aAAa,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAE5E,MAAM,YAAY,GAAG,GAAG,CAAgC,CAAC,IAAI,EAAE,EAAE,CAC/D,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAC5E,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,mBAAmE,EACnE,YAAgC,EAChC,EAAE,CACF,aAAa,CAAC,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CACrD,GAAG,CAAC,CAAC,CAAC,kBAAkB,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB,GAAG,eAAe,CAAC,CAAC,EAChG,oBAAoB,EAAE,CACvB,CAAC;AAEJ,MAAM,8BAA8B,GAAG,CAAC,iBAAoC,EAAE,WAA6B,EAAE,EAAE,CAC7G,iBAAiB,CAAC,eAAe,CAAC,IAAI,CACpC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAChG,CAAC;AAEJ,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,mBAAmE,EACnE,WAAqD,EACrD,iBAAoC,EACpB,EAAE,CAAC,CAAC;IACpB,cAAc,EAAE;QAEd,QAAQ,EAAE,kBAAkB,CAC1B,mBAAmB,EACnB,8BAA8B,CAAC,iBAAiB,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAC3G;QACD,QAAQ,EAAE,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAC9C,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,aAAa,EAAE,EAAE,CAAC,CAAC,EACvF,oBAAoB,EAAE,CACvB;KACF;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;QACrD,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;QAC7C,YAAY,EAAE,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC;KAC1D;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Cardano, ChainHistoryProvider, SlotEpochCalc, StakePoolProvider, TimeSettings } from '@cardano-sdk/core';
|
|
2
|
+
import { DelegationTracker, TransactionsTracker } from '../types';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { ObservableRewardsProvider, ObservableStakePoolProvider } from './RewardAccounts';
|
|
5
|
+
import { RetryBackoffConfig } from 'backoff-rxjs';
|
|
6
|
+
import { RewardsHistoryProvider } from './RewardsHistory';
|
|
7
|
+
import { Shutdown } from '@cardano-sdk/util';
|
|
8
|
+
import { TrackedRewardsProvider } from '../ProviderTracker';
|
|
9
|
+
import { TxWithEpoch } from './types';
|
|
10
|
+
import { WalletStores } from '../../persistence';
|
|
11
|
+
export declare const createBlockEpochProvider: (chainHistoryProvider: ChainHistoryProvider, retryBackoffConfig: RetryBackoffConfig) => (blockHashes: Cardano.BlockId[]) => Observable<number[]>;
|
|
12
|
+
export declare type BlockEpochProvider = ReturnType<typeof createBlockEpochProvider>;
|
|
13
|
+
export interface DelegationTrackerProps {
|
|
14
|
+
rewardsTracker: TrackedRewardsProvider;
|
|
15
|
+
rewardAccountAddresses$: Observable<Cardano.RewardAccount[]>;
|
|
16
|
+
stakePoolProvider: StakePoolProvider;
|
|
17
|
+
timeSettings$: Observable<TimeSettings[]>;
|
|
18
|
+
epoch$: Observable<Cardano.Epoch>;
|
|
19
|
+
transactionsTracker: TransactionsTracker;
|
|
20
|
+
retryBackoffConfig: RetryBackoffConfig;
|
|
21
|
+
stores: WalletStores;
|
|
22
|
+
internals?: {
|
|
23
|
+
queryStakePoolsProvider?: ObservableStakePoolProvider;
|
|
24
|
+
rewardsProvider?: ObservableRewardsProvider;
|
|
25
|
+
rewardsHistoryProvider?: RewardsHistoryProvider;
|
|
26
|
+
slotEpochCalc$?: Observable<SlotEpochCalc>;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export declare const certificateTransactionsWithEpochs: (transactionsTracker: TransactionsTracker, rewardAccountAddresses$: Observable<Cardano.RewardAccount[]>, slotEpochCalc$: Observable<SlotEpochCalc>, certificateTypes: Cardano.CertificateType[]) => Observable<TxWithEpoch[]>;
|
|
30
|
+
export declare const createDelegationTracker: ({ rewardAccountAddresses$, epoch$, rewardsTracker, retryBackoffConfig, transactionsTracker, timeSettings$, stakePoolProvider, stores, internals: { queryStakePoolsProvider, rewardsHistoryProvider, rewardsProvider, slotEpochCalc$ } }: DelegationTrackerProps) => DelegationTracker & Shutdown;
|
|
31
|
+
//# sourceMappingURL=DelegationTracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DelegationTracker.d.ts","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/DelegationTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,YAAY,EAEb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,UAAU,EAAsB,MAAM,MAAM,CAAC;AACtD,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAI5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAA6D,MAAM,kBAAkB,CAAC;AACrH,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAIjD,eAAO,MAAM,wBAAwB,yBACZ,oBAAoB,sBAAsB,kBAAkB,mBACrE,QAAQ,OAAO,EAAE,yBAI6B,CAAC;AAE/D,oBAAY,kBAAkB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE7E,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,sBAAsB,CAAC;IACvC,uBAAuB,EAAE,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC7D,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,aAAa,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1C,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE;QACV,uBAAuB,CAAC,EAAE,2BAA2B,CAAC;QACtD,eAAe,CAAC,EAAE,yBAAyB,CAAC;QAC5C,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;QAChD,cAAc,CAAC,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;KAC5C,CAAC;CACH;AAED,eAAO,MAAM,iCAAiC,wBACvB,mBAAmB,2BACf,WAAW,QAAQ,aAAa,EAAE,CAAC,kBAC5C,WAAW,aAAa,CAAC,oBACvB,QAAQ,eAAe,EAAE,KAC1C,WAAW,WAAW,EAAE,CAQxB,CAAC;AAEJ,eAAO,MAAM,uBAAuB,4OAoBjC,sBAAsB,KAAG,iBAAiB,GAAG,QAiC/C,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Cardano, createSlotEpochCalc } from '@cardano-sdk/core';
|
|
2
|
+
import { combineLatest, map } from 'rxjs';
|
|
3
|
+
import { createQueryStakePoolsProvider, createRewardAccountsTracker, createRewardsProvider } from './RewardAccounts';
|
|
4
|
+
import { createRewardsHistoryProvider, createRewardsHistoryTracker } from './RewardsHistory';
|
|
5
|
+
import { TrackerSubject } from '@cardano-sdk/util-rxjs';
|
|
6
|
+
import { coldObservableProvider } from '../util';
|
|
7
|
+
import { transactionsWithCertificates } from './transactionCertificates';
|
|
8
|
+
export const createBlockEpochProvider = (chainHistoryProvider, retryBackoffConfig) => (blockHashes) => coldObservableProvider({
|
|
9
|
+
provider: () => chainHistoryProvider.blocksByHashes(blockHashes),
|
|
10
|
+
retryBackoffConfig
|
|
11
|
+
}).pipe(map((blocks) => blocks.map(({ epoch }) => epoch)));
|
|
12
|
+
export const certificateTransactionsWithEpochs = (transactionsTracker, rewardAccountAddresses$, slotEpochCalc$, certificateTypes) => combineLatest([
|
|
13
|
+
transactionsWithCertificates(transactionsTracker.history$, rewardAccountAddresses$, certificateTypes),
|
|
14
|
+
slotEpochCalc$
|
|
15
|
+
]).pipe(map(([transactions, slotEpochCalc]) => transactions.map((tx) => ({ epoch: slotEpochCalc(tx.blockHeader.slot), tx }))));
|
|
16
|
+
export const createDelegationTracker = ({ rewardAccountAddresses$, epoch$, rewardsTracker, retryBackoffConfig, transactionsTracker, timeSettings$, stakePoolProvider, stores, internals: { queryStakePoolsProvider = createQueryStakePoolsProvider(stakePoolProvider, stores.stakePools, retryBackoffConfig), rewardsHistoryProvider = createRewardsHistoryProvider(rewardsTracker, retryBackoffConfig), rewardsProvider = createRewardsProvider(epoch$, transactionsTracker.outgoing.confirmed$, rewardsTracker, retryBackoffConfig), slotEpochCalc$ = timeSettings$.pipe(map((timeSettings) => createSlotEpochCalc(timeSettings))) } = {} }) => {
|
|
17
|
+
const transactions$ = certificateTransactionsWithEpochs(transactionsTracker, rewardAccountAddresses$, slotEpochCalc$, [
|
|
18
|
+
Cardano.CertificateType.StakeDelegation,
|
|
19
|
+
Cardano.CertificateType.StakeKeyRegistration,
|
|
20
|
+
Cardano.CertificateType.StakeKeyDeregistration
|
|
21
|
+
]);
|
|
22
|
+
const rewardsHistory$ = new TrackerSubject(createRewardsHistoryTracker(transactions$, rewardAccountAddresses$, rewardsHistoryProvider, stores.rewardsHistory));
|
|
23
|
+
const rewardAccounts$ = new TrackerSubject(createRewardAccountsTracker({
|
|
24
|
+
balancesStore: stores.rewardsBalances,
|
|
25
|
+
epoch$,
|
|
26
|
+
rewardAccountAddresses$,
|
|
27
|
+
rewardsProvider,
|
|
28
|
+
stakePoolProvider: queryStakePoolsProvider,
|
|
29
|
+
transactions$,
|
|
30
|
+
transactionsInFlight$: transactionsTracker.outgoing.inFlight$
|
|
31
|
+
}));
|
|
32
|
+
return {
|
|
33
|
+
rewardAccounts$,
|
|
34
|
+
rewardsHistory$,
|
|
35
|
+
shutdown: () => {
|
|
36
|
+
rewardAccounts$.complete();
|
|
37
|
+
rewardsHistory$.complete();
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=DelegationTracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DelegationTracker.js","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/DelegationTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAc,aAAa,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAGL,6BAA6B,EAC7B,2BAA2B,EAC3B,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAA0B,4BAA4B,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAGrH,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAEzE,MAAM,CAAC,MAAM,wBAAwB,GACnC,CAAC,oBAA0C,EAAE,kBAAsC,EAAE,EAAE,CACvF,CAAC,WAA8B,EAAE,EAAE,CACjC,sBAAsB,CAAC;IACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,cAAc,CAAC,WAAW,CAAC;IAChE,kBAAkB;CACnB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAqB/D,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAC/C,mBAAwC,EACxC,uBAA4D,EAC5D,cAAyC,EACzC,gBAA2C,EAChB,EAAE,CAC7B,aAAa,CAAC;IACZ,4BAA4B,CAAC,mBAAmB,CAAC,QAAQ,EAAE,uBAAuB,EAAE,gBAAgB,CAAC;IACrG,cAAc;CACf,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE,EAAE,CACpC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAC9E,CACF,CAAC;AAEJ,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACtC,uBAAuB,EACvB,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,SAAS,EAAE,EACT,uBAAuB,GAAG,6BAA6B,CAAC,iBAAiB,EAAE,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,EACjH,sBAAsB,GAAG,4BAA4B,CAAC,cAAc,EAAE,kBAAkB,CAAC,EACzF,eAAe,GAAG,qBAAqB,CACrC,MAAM,EACN,mBAAmB,CAAC,QAAQ,CAAC,UAAU,EACvC,cAAc,EACd,kBAAkB,CACnB,EACD,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC,CAAC,EAC9F,GAAG,EAAE,EACiB,EAAgC,EAAE;IACzD,MAAM,aAAa,GAAG,iCAAiC,CACrD,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd;QACE,OAAO,CAAC,eAAe,CAAC,eAAe;QACvC,OAAO,CAAC,eAAe,CAAC,oBAAoB;QAC5C,OAAO,CAAC,eAAe,CAAC,sBAAsB;KAC/C,CACF,CAAC;IACF,MAAM,eAAe,GAAG,IAAI,cAAc,CACxC,2BAA2B,CAAC,aAAa,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,CAAC,cAAc,CAAC,CACnH,CAAC;IACF,MAAM,eAAe,GAAG,IAAI,cAAc,CACxC,2BAA2B,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC,eAAe;QACrC,MAAM;QACN,uBAAuB;QACvB,eAAe;QACf,iBAAiB,EAAE,uBAAuB;QAC1C,aAAa;QACb,qBAAqB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,SAAS;KAC9D,CAAC,CACH,CAAC;IACF,OAAO;QACL,eAAe;QACf,eAAe;QACf,QAAQ,EAAE,GAAG,EAAE;YACb,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC3B,eAAe,CAAC,QAAQ,EAAE,CAAC;QAC7B,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Cardano, RewardsProvider, StakePoolProvider } from '@cardano-sdk/core';
|
|
2
|
+
import { Delegatee, RewardAccount, StakeKeyStatus } from '../types';
|
|
3
|
+
import { KeyValueStore } from '../../persistence';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
5
|
+
import { RetryBackoffConfig } from 'backoff-rxjs';
|
|
6
|
+
import { TxWithEpoch } from './types';
|
|
7
|
+
export declare const createQueryStakePoolsProvider: (stakePoolProvider: StakePoolProvider, store: KeyValueStore<Cardano.PoolId, Cardano.StakePool>, retryBackoffConfig: RetryBackoffConfig) => (poolIds: Cardano.PoolId[]) => Observable<Cardano.StakePool[]>;
|
|
8
|
+
export declare type ObservableStakePoolProvider = ReturnType<typeof createQueryStakePoolsProvider>;
|
|
9
|
+
export declare const fetchRewardsTrigger$: (epoch$: Observable<Cardano.Epoch>, txConfirmed$: Observable<Cardano.NewTxAlonzo>, rewardAccount: Cardano.RewardAccount) => Observable<number | bigint>;
|
|
10
|
+
export declare const createRewardsProvider: (epoch$: Observable<Cardano.Epoch>, txConfirmed$: Observable<Cardano.NewTxAlonzo>, rewardsProvider: RewardsProvider, retryBackoffConfig: RetryBackoffConfig) => (rewardAccounts: Cardano.RewardAccount[]) => Observable<Cardano.Lovelace[]>;
|
|
11
|
+
export declare type ObservableRewardsProvider = ReturnType<typeof createRewardsProvider>;
|
|
12
|
+
declare const accountCertificateTransactions: (transactions$: Observable<TxWithEpoch[]>, rewardAccount: Cardano.RewardAccount) => Observable<{
|
|
13
|
+
certificates: (Cardano.StakeAddressCertificate | Cardano.StakeDelegationCertificate)[];
|
|
14
|
+
epoch: number;
|
|
15
|
+
}[]>;
|
|
16
|
+
declare type ObservableType<O> = O extends Observable<infer T> ? T : unknown;
|
|
17
|
+
declare type TransactionsCertificates = ObservableType<ReturnType<typeof accountCertificateTransactions>>;
|
|
18
|
+
export declare const getStakePoolIdAtEpoch: (transactions: {
|
|
19
|
+
certificates: (Cardano.StakeAddressCertificate | Cardano.StakeDelegationCertificate)[];
|
|
20
|
+
epoch: number;
|
|
21
|
+
}[]) => (atEpoch: Cardano.Epoch) => Cardano.PoolId | undefined;
|
|
22
|
+
export declare const createDelegateeTracker: (stakePoolProvider: ObservableStakePoolProvider, epoch$: Observable<Cardano.Epoch>, certificates$: Observable<TransactionsCertificates>) => Observable<Delegatee | undefined>;
|
|
23
|
+
export declare const addressKeyStatuses: (addresses: Cardano.RewardAccount[], transactions$: Observable<TxWithEpoch[]>, transactionsInFlight$: Observable<Cardano.NewTxAlonzo[]>) => Observable<StakeKeyStatus[]>;
|
|
24
|
+
export declare const addressDelegatees: (addresses: Cardano.RewardAccount[], transactions$: Observable<TxWithEpoch[]>, stakePoolProvider: ObservableStakePoolProvider, epoch$: Observable<Cardano.Epoch>) => Observable<(Delegatee | undefined)[]>;
|
|
25
|
+
export declare const addressRewards: (rewardAccounts: Cardano.RewardAccount[], transactionsInFlight$: Observable<Cardano.NewTxAlonzo[]>, rewardsProvider: ObservableRewardsProvider, balancesStore: KeyValueStore<Cardano.RewardAccount, Cardano.Lovelace>) => Observable<Cardano.Lovelace[]>;
|
|
26
|
+
export declare const toRewardAccounts: (addresses: Cardano.RewardAccount[]) => ([statuses, delegatees, rewards]: [StakeKeyStatus[], (Delegatee | undefined)[], Cardano.Lovelace[]]) => RewardAccount[];
|
|
27
|
+
export declare const createRewardAccountsTracker: ({ rewardAccountAddresses$, stakePoolProvider, rewardsProvider, epoch$, balancesStore, transactions$, transactionsInFlight$ }: {
|
|
28
|
+
rewardAccountAddresses$: Observable<Cardano.RewardAccount[]>;
|
|
29
|
+
stakePoolProvider: ObservableStakePoolProvider;
|
|
30
|
+
rewardsProvider: ObservableRewardsProvider;
|
|
31
|
+
balancesStore: KeyValueStore<Cardano.RewardAccount, Cardano.Lovelace>;
|
|
32
|
+
epoch$: Observable<Cardano.Epoch>;
|
|
33
|
+
transactions$: Observable<TxWithEpoch[]>;
|
|
34
|
+
transactionsInFlight$: Observable<Cardano.NewTxAlonzo[]>;
|
|
35
|
+
}) => Observable<RewardAccount[]>;
|
|
36
|
+
export {};
|
|
37
|
+
//# sourceMappingURL=RewardAccounts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RewardAccounts.d.ts","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/RewardAccounts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAmF,MAAM,MAAM,CAAC;AAMnH,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAMtC,eAAO,MAAM,6BAA6B,sBAEnB,iBAAiB,SAC7B,cAAc,QAAQ,MAAM,EAAE,QAAQ,SAAS,CAAC,sBACnC,kBAAkB,eAE9B,QAAQ,MAAM,EAAE,oCAkBvB,CAAC;AACN,oBAAY,2BAA2B,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAU3F,eAAO,MAAM,oBAAoB,WACvB,WAAW,QAAQ,KAAK,CAAC,gBACnB,WAAW,QAAQ,WAAW,CAAC,sEAU5C,CAAC;AAEJ,eAAO,MAAM,qBAAqB,WAEtB,WAAW,QAAQ,KAAK,CAAC,gBACnB,WAAW,QAAQ,WAAW,CAAC,mBAC5B,eAAe,sBACZ,kBAAkB,sBAEvB,qBAAqB,EAAE,KAAG,WAAW,QAAQ,QAAQ,EAAE,CAUrE,CAAC;AACN,oBAAY,yBAAyB,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAyCjF,QAAA,MAAM,8BAA8B,kBACnB,WAAW,WAAW,EAAE,CAAC;;;IAmBzC,CAAC;AAEF,aAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;AACrE,aAAK,wBAAwB,GAAG,cAAc,CAAC,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,CAAC;AAElG,eAAO,MAAM,qBAAqB;;;kBAAyD,QAAQ,KAAK,+BAUvG,CAAC;AAEF,eAAO,MAAM,sBAAsB,sBACd,2BAA2B,UACtC,WAAW,QAAQ,KAAK,CAAC,iBAClB,WAAW,wBAAwB,CAAC,KAClD,WAAW,SAAS,GAAG,SAAS,CAUhC,CAAC;AAEJ,eAAO,MAAM,kBAAkB,cAClB,qBAAqB,EAAE,iBACnB,WAAW,WAAW,EAAE,CAAC,yBACjB,WAAW,QAAQ,WAAW,EAAE,CAAC,iCAKvD,CAAC;AAEJ,eAAO,MAAM,iBAAiB,cACjB,qBAAqB,EAAE,iBACnB,WAAW,WAAW,EAAE,CAAC,qBACrB,2BAA2B,UACtC,WAAW,QAAQ,KAAK,CAAC,0CAMhC,CAAC;AAEJ,eAAO,MAAM,cAAc,mBACT,qBAAqB,EAAE,yBAChB,WAAW,QAAQ,WAAW,EAAE,CAAC,mBACvC,yBAAyB,iBAC3B,cAAc,qBAAqB,EAAE,QAAQ,QAAQ,CAAC,KACpE,WAAW,QAAQ,QAAQ,EAAE,CAqB7B,CAAC;AAEJ,eAAO,MAAM,gBAAgB,cACf,qBAAqB,EAAE,uCACD,CAAC,cAAc,EAAE,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC,EAAE,EAAE,QAAQ,QAAQ,EAAE,CAAC,oBAQhG,CAAC;AAEN,eAAO,MAAM,2BAA2B;6BASb,WAAW,qBAAqB,EAAE,CAAC;uBACzC,2BAA2B;qBAC7B,yBAAyB;mBAC3B,cAAc,qBAAqB,EAAE,QAAQ,QAAQ,CAAC;YAC7D,WAAW,QAAQ,KAAK,CAAC;mBAClB,WAAW,WAAW,EAAE,CAAC;2BACjB,WAAW,QAAQ,WAAW,EAAE,CAAC;iCAUvD,CAAC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { BigIntMath, isNotNil } from '@cardano-sdk/util';
|
|
2
|
+
import { Cardano } from '@cardano-sdk/core';
|
|
3
|
+
import { StakeKeyStatus } from '../types';
|
|
4
|
+
import { combineLatest, concat, distinctUntilChanged, filter, map, merge, switchMap, tap } from 'rxjs';
|
|
5
|
+
import { RegAndDeregCertificateTypes, includesAnyCertificate, isLastStakeKeyCertOfType } from './transactionCertificates';
|
|
6
|
+
import { coldObservableProvider, deepEquals, shallowArrayEquals } from '../util';
|
|
7
|
+
import findLast from 'lodash/findLast';
|
|
8
|
+
import isEqual from 'lodash/isEqual';
|
|
9
|
+
import uniq from 'lodash/uniq';
|
|
10
|
+
export const createQueryStakePoolsProvider = (stakePoolProvider, store, retryBackoffConfig) => (poolIds) => merge(store.getValues(poolIds), coldObservableProvider({
|
|
11
|
+
provider: () => stakePoolProvider
|
|
12
|
+
.queryStakePools({
|
|
13
|
+
filters: { identifier: { values: poolIds.map((poolId) => ({ id: poolId })) } }
|
|
14
|
+
})
|
|
15
|
+
.then(({ pageResults }) => pageResults),
|
|
16
|
+
retryBackoffConfig
|
|
17
|
+
}).pipe(tap((pageResults) => {
|
|
18
|
+
for (const stakePool of pageResults) {
|
|
19
|
+
store.setValue(stakePool.id, stakePool);
|
|
20
|
+
}
|
|
21
|
+
})));
|
|
22
|
+
const getWithdrawalQuantity = ({ body: { withdrawals } }, rewardAccount) => BigIntMath.sum(withdrawals?.map(({ quantity, stakeAddress }) => (stakeAddress === rewardAccount ? quantity : 0n)) || []);
|
|
23
|
+
export const fetchRewardsTrigger$ = (epoch$, txConfirmed$, rewardAccount) => merge(epoch$, txConfirmed$.pipe(map((tx) => getWithdrawalQuantity(tx, rewardAccount)), filter((withdrawalQty) => withdrawalQty > 0n)));
|
|
24
|
+
export const createRewardsProvider = (epoch$, txConfirmed$, rewardsProvider, retryBackoffConfig) => (rewardAccounts) => combineLatest(rewardAccounts.map((rewardAccount) => coldObservableProvider({
|
|
25
|
+
equals: isEqual,
|
|
26
|
+
provider: () => rewardsProvider.rewardAccountBalance(rewardAccount),
|
|
27
|
+
retryBackoffConfig,
|
|
28
|
+
trigger$: fetchRewardsTrigger$(epoch$, txConfirmed$, rewardAccount)
|
|
29
|
+
}).pipe(distinctUntilChanged())));
|
|
30
|
+
const isDelegationCertificate = (cert) => cert.__typename === Cardano.CertificateType.StakeDelegation;
|
|
31
|
+
const getAccountsKeyStatus = (addresses) => ([transactions, transactionsInFlight]) => {
|
|
32
|
+
const certificatesInFlight = transactionsInFlight.map(({ body: { certificates } }) => certificates || []);
|
|
33
|
+
return addresses.map((address) => {
|
|
34
|
+
const isRegistered = isLastStakeKeyCertOfType(transactions.map(({ tx: { body: { certificates } } }) => certificates || []), Cardano.CertificateType.StakeKeyRegistration, address);
|
|
35
|
+
const isRegistering = isLastStakeKeyCertOfType(certificatesInFlight, Cardano.CertificateType.StakeKeyRegistration, address);
|
|
36
|
+
const isUnregistering = isLastStakeKeyCertOfType(certificatesInFlight, Cardano.CertificateType.StakeKeyDeregistration, address);
|
|
37
|
+
return isRegistering
|
|
38
|
+
? StakeKeyStatus.Registering
|
|
39
|
+
: isUnregistering
|
|
40
|
+
? StakeKeyStatus.Unregistering
|
|
41
|
+
: isRegistered
|
|
42
|
+
? StakeKeyStatus.Registered
|
|
43
|
+
: StakeKeyStatus.Unregistered;
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
const accountCertificateTransactions = (transactions$, rewardAccount) => {
|
|
47
|
+
const stakeKeyHash = Cardano.Ed25519KeyHash.fromRewardAccount(rewardAccount);
|
|
48
|
+
return transactions$.pipe(map((transactions) => transactions
|
|
49
|
+
.map(({ tx, epoch }) => ({
|
|
50
|
+
certificates: (tx.body.certificates || [])
|
|
51
|
+
.filter((cert) => [...RegAndDeregCertificateTypes, Cardano.CertificateType.StakeDelegation].includes(cert.__typename))
|
|
52
|
+
.filter((cert) => cert.stakeKeyHash === stakeKeyHash),
|
|
53
|
+
epoch
|
|
54
|
+
}))
|
|
55
|
+
.filter(({ certificates }) => certificates.length > 0)), distinctUntilChanged((a, b) => isEqual(a, b)));
|
|
56
|
+
};
|
|
57
|
+
export const getStakePoolIdAtEpoch = (transactions) => (atEpoch) => {
|
|
58
|
+
const certificatesUpToEpoch = transactions
|
|
59
|
+
.filter(({ epoch }) => epoch < atEpoch - 2)
|
|
60
|
+
.map(({ certificates }) => certificates);
|
|
61
|
+
if (!isLastStakeKeyCertOfType(certificatesUpToEpoch, Cardano.CertificateType.StakeKeyRegistration))
|
|
62
|
+
return;
|
|
63
|
+
const delegationTxCertificates = findLast(certificatesUpToEpoch, (certs) => includesAnyCertificate(certs, [Cardano.CertificateType.StakeDelegation]));
|
|
64
|
+
if (!delegationTxCertificates)
|
|
65
|
+
return;
|
|
66
|
+
return findLast(delegationTxCertificates.filter(isDelegationCertificate))?.poolId;
|
|
67
|
+
};
|
|
68
|
+
export const createDelegateeTracker = (stakePoolProvider, epoch$, certificates$) => combineLatest([certificates$, epoch$]).pipe(switchMap(([transactions, lastEpoch]) => {
|
|
69
|
+
const stakePoolIds = [lastEpoch + 1, lastEpoch + 2, lastEpoch + 3].map(getStakePoolIdAtEpoch(transactions));
|
|
70
|
+
return stakePoolProvider(uniq(stakePoolIds.filter(isNotNil))).pipe(map((stakePools) => stakePoolIds.map((poolId) => stakePools.find((pool) => pool.id === poolId) || undefined)), map(([currentEpoch, nextEpoch, nextNextEpoch]) => ({ currentEpoch, nextEpoch, nextNextEpoch })));
|
|
71
|
+
}), distinctUntilChanged((a, b) => isEqual(a, b)));
|
|
72
|
+
export const addressKeyStatuses = (addresses, transactions$, transactionsInFlight$) => combineLatest([transactions$, transactionsInFlight$]).pipe(map(getAccountsKeyStatus(addresses)), distinctUntilChanged(shallowArrayEquals));
|
|
73
|
+
export const addressDelegatees = (addresses, transactions$, stakePoolProvider, epoch$) => combineLatest(addresses.map((address) => createDelegateeTracker(stakePoolProvider, epoch$, accountCertificateTransactions(transactions$, address))));
|
|
74
|
+
export const addressRewards = (rewardAccounts, transactionsInFlight$, rewardsProvider, balancesStore) => combineLatest([
|
|
75
|
+
concat(balancesStore.getValues(rewardAccounts), rewardsProvider(rewardAccounts).pipe(tap((balances) => {
|
|
76
|
+
for (const [i, rewardAccount] of rewardAccounts.entries()) {
|
|
77
|
+
balancesStore.setValue(rewardAccount, balances[i]);
|
|
78
|
+
}
|
|
79
|
+
}))),
|
|
80
|
+
transactionsInFlight$
|
|
81
|
+
]).pipe(map(([totalRewards, transactionsInFlight]) => totalRewards.map((total, i) => total - transactionsInFlight.reduce((sum, tx) => sum + getWithdrawalQuantity(tx, rewardAccounts[i]), 0n))), distinctUntilChanged(deepEquals));
|
|
82
|
+
export const toRewardAccounts = (addresses) => ([statuses, delegatees, rewards]) => addresses.map((address, i) => ({
|
|
83
|
+
address,
|
|
84
|
+
delegatee: delegatees[i],
|
|
85
|
+
keyStatus: statuses[i],
|
|
86
|
+
rewardBalance: rewards[i]
|
|
87
|
+
}));
|
|
88
|
+
export const createRewardAccountsTracker = ({ rewardAccountAddresses$, stakePoolProvider, rewardsProvider, epoch$, balancesStore, transactions$, transactionsInFlight$ }) => rewardAccountAddresses$.pipe(switchMap((rewardAccounts) => combineLatest([
|
|
89
|
+
addressKeyStatuses(rewardAccounts, transactions$, transactionsInFlight$),
|
|
90
|
+
addressDelegatees(rewardAccounts, transactions$, stakePoolProvider, epoch$),
|
|
91
|
+
addressRewards(rewardAccounts, transactionsInFlight$, rewardsProvider, balancesStore)
|
|
92
|
+
]).pipe(map(toRewardAccounts(rewardAccounts)))));
|
|
93
|
+
//# sourceMappingURL=RewardAccounts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RewardAccounts.js","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/RewardAccounts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Cardano, EpochRewards } from '@cardano-sdk/core';
|
|
2
|
+
import { KeyValueStore } from '../../persistence';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { RetryBackoffConfig } from 'backoff-rxjs';
|
|
5
|
+
import { RewardsHistory } from '../types';
|
|
6
|
+
import { TrackedRewardsProvider } from '../ProviderTracker';
|
|
7
|
+
import { TxWithEpoch } from './types';
|
|
8
|
+
export declare const createRewardsHistoryProvider: (rewardsProvider: TrackedRewardsProvider, retryBackoffConfig: RetryBackoffConfig) => (rewardAccounts: Cardano.RewardAccount[], lowerBound: Cardano.Epoch | null) => Observable<Map<Cardano.RewardAccount, EpochRewards[]>>;
|
|
9
|
+
export declare type RewardsHistoryProvider = ReturnType<typeof createRewardsHistoryProvider>;
|
|
10
|
+
export declare const createRewardsHistoryTracker: (transactions$: Observable<TxWithEpoch[]>, rewardAccounts$: Observable<Cardano.RewardAccount[]>, rewardsHistoryProvider: RewardsHistoryProvider, rewardsHistoryStore: KeyValueStore<Cardano.RewardAccount, EpochRewards[]>) => Observable<RewardsHistory>;
|
|
11
|
+
//# sourceMappingURL=RewardsHistory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RewardsHistory.d.ts","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/RewardsHistory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAkD,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAyD,MAAM,MAAM,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAStC,eAAO,MAAM,4BAA4B,oBACrB,sBAAsB,sBAAsB,kBAAkB,sBAE9D,QAAQ,aAAa,EAAE,cAC3B,QAAQ,KAAK,GAAG,IAAI,KAC/B,WAAW,IAAI,QAAQ,aAAa,EAAE,YAAY,EAAE,CAAC,CAavD,CAAC;AAEJ,oBAAY,sBAAsB,GAAG,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAkBrF,eAAO,MAAM,2BAA2B,kBACvB,WAAW,WAAW,EAAE,CAAC,mBACvB,WAAW,QAAQ,aAAa,EAAE,CAAC,0BAC5B,sBAAsB,uBACzB,cAAc,QAAQ,aAAa,EAAE,YAAY,EAAE,CAAC,KACxE,WAAW,cAAc,CAyCvB,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { BigIntMath, isNotNil } from '@cardano-sdk/util';
|
|
2
|
+
import { Cardano, createTxInspector, signedCertificatesInspector } from '@cardano-sdk/core';
|
|
3
|
+
import { concat, distinctUntilChanged, map, of, switchMap, tap } from 'rxjs';
|
|
4
|
+
import { coldObservableProvider } from '../util';
|
|
5
|
+
import first from 'lodash/first';
|
|
6
|
+
import flatten from 'lodash/flatten';
|
|
7
|
+
import groupBy from 'lodash/groupBy';
|
|
8
|
+
const sumRewards = (arrayOfRewards) => BigIntMath.sum(arrayOfRewards.map(({ rewards }) => rewards));
|
|
9
|
+
const avgReward = (arrayOfRewards) => sumRewards(arrayOfRewards) / BigInt(arrayOfRewards.length);
|
|
10
|
+
export const createRewardsHistoryProvider = (rewardsProvider, retryBackoffConfig) => (rewardAccounts, lowerBound) => {
|
|
11
|
+
if (lowerBound) {
|
|
12
|
+
return coldObservableProvider({
|
|
13
|
+
provider: () => rewardsProvider.rewardsHistory({
|
|
14
|
+
epochs: { lowerBound },
|
|
15
|
+
rewardAccounts
|
|
16
|
+
}),
|
|
17
|
+
retryBackoffConfig
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
rewardsProvider.setStatInitialized(rewardsProvider.stats.rewardsHistory$);
|
|
21
|
+
return of(new Map());
|
|
22
|
+
};
|
|
23
|
+
const firstDelegationEpoch$ = (transactions$, rewardAccounts) => transactions$.pipe(map((transactions) => first(transactions.filter(({ tx }) => {
|
|
24
|
+
const inspectTx = createTxInspector({
|
|
25
|
+
signedCertificates: signedCertificatesInspector(rewardAccounts, [Cardano.CertificateType.StakeDelegation])
|
|
26
|
+
});
|
|
27
|
+
return inspectTx(tx).signedCertificates.length > 0;
|
|
28
|
+
}))), map((tx) => (isNotNil(tx) ? tx.epoch + 3 : null)), distinctUntilChanged());
|
|
29
|
+
export const createRewardsHistoryTracker = (transactions$, rewardAccounts$, rewardsHistoryProvider, rewardsHistoryStore) => rewardAccounts$
|
|
30
|
+
.pipe(switchMap((rewardAccounts) => concat(rewardsHistoryStore
|
|
31
|
+
.getValues(rewardAccounts)
|
|
32
|
+
.pipe(map((rewards) => new Map(rewardAccounts.map((rewardAccount, i) => [rewardAccount, rewards[i]])))), firstDelegationEpoch$(transactions$, rewardAccounts).pipe(switchMap((firstEpoch) => rewardsHistoryProvider(rewardAccounts, firstEpoch)), tap((allRewards) => rewardsHistoryStore.setAll([...allRewards.entries()].map(([key, value]) => ({ key, value }))))))))
|
|
33
|
+
.pipe(map((rewardsByAccount) => {
|
|
34
|
+
const allRewards = flatten([...rewardsByAccount.values()]);
|
|
35
|
+
if (allRewards.length === 0) {
|
|
36
|
+
return {
|
|
37
|
+
all: [],
|
|
38
|
+
avgReward: null,
|
|
39
|
+
lastReward: null,
|
|
40
|
+
lifetimeRewards: 0n
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
const rewardsByEpoch = groupBy(allRewards, ({ epoch }) => epoch);
|
|
44
|
+
const epochs = Object.keys(rewardsByEpoch)
|
|
45
|
+
.map((epoch) => Number(epoch))
|
|
46
|
+
.sort();
|
|
47
|
+
const all = epochs.map((epoch) => ({ epoch, rewards: sumRewards(rewardsByEpoch[epoch]) }));
|
|
48
|
+
return {
|
|
49
|
+
all,
|
|
50
|
+
avgReward: avgReward(allRewards),
|
|
51
|
+
lastReward: all[all.length - 1],
|
|
52
|
+
lifetimeRewards: sumRewards(allRewards)
|
|
53
|
+
};
|
|
54
|
+
}));
|
|
55
|
+
//# sourceMappingURL=RewardsHistory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RewardsHistory.js","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/RewardsHistory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Cardano } from '@cardano-sdk/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
export declare const RegAndDeregCertificateTypes: Cardano.CertificateType[];
|
|
4
|
+
export declare const stakeKeyCertficates: (certificates?: Cardano.Certificate[] | undefined) => Cardano.StakeAddressCertificate[];
|
|
5
|
+
export declare const includesAnyCertificate: (haystack: Cardano.Certificate[], needle: Cardano.CertificateType[]) => boolean;
|
|
6
|
+
export declare const isLastStakeKeyCertOfType: (transactionsCertificates: Cardano.Certificate[][], certType: Cardano.CertificateType.StakeKeyRegistration | Cardano.CertificateType.StakeKeyDeregistration, rewardAccount?: Cardano.RewardAccount | undefined) => boolean;
|
|
7
|
+
export declare const transactionsWithCertificates: (transactions$: Observable<Cardano.TxAlonzo[]>, rewardAccounts$: Observable<Cardano.RewardAccount[]>, certificateTypes: Cardano.CertificateType[]) => Observable<Cardano.TxAlonzo[]>;
|
|
8
|
+
//# sourceMappingURL=transactionCertificates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionCertificates.d.ts","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/transactionCertificates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkD,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAE,UAAU,EAA4C,MAAM,MAAM,CAAC;AAK5E,eAAO,MAAM,2BAA2B,2BAGvC,CAAC;AAEF,eAAO,MAAM,mBAAmB,yFAGvB,CAAC;AAEV,eAAO,MAAM,sBAAsB,aAAc,QAAQ,WAAW,EAAE,UAAU,QAAQ,eAAe,EAAE,YAChC,CAAC;AAE1E,eAAO,MAAM,wBAAwB,6BACT,QAAQ,WAAW,EAAE,EAAE,YACvC,QAAQ,eAAe,CAAC,oBAAoB,GAAG,QAAQ,eAAe,CAAC,sBAAsB,+DAgBxG,CAAC;AAEF,eAAO,MAAM,4BAA4B,kBACxB,WAAW,QAAQ,QAAQ,EAAE,CAAC,mBAC5B,WAAW,QAAQ,aAAa,EAAE,CAAC,oBAClC,QAAQ,eAAe,EAAE,mCAY1C,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Cardano, createTxInspector, signedCertificatesInspector } from '@cardano-sdk/core';
|
|
2
|
+
import { combineLatest, distinctUntilChanged, map } from 'rxjs';
|
|
3
|
+
import { isNotNil } from '@cardano-sdk/util';
|
|
4
|
+
import { transactionsEquals } from '../util/equals';
|
|
5
|
+
import last from 'lodash/last';
|
|
6
|
+
export const RegAndDeregCertificateTypes = [
|
|
7
|
+
Cardano.CertificateType.StakeKeyRegistration,
|
|
8
|
+
Cardano.CertificateType.StakeKeyDeregistration
|
|
9
|
+
];
|
|
10
|
+
export const stakeKeyCertficates = (certificates) => certificates?.filter((certificate) => RegAndDeregCertificateTypes.includes(certificate.__typename)) || [];
|
|
11
|
+
export const includesAnyCertificate = (haystack, needle) => haystack.some(({ __typename }) => needle.includes(__typename)) || false;
|
|
12
|
+
export const isLastStakeKeyCertOfType = (transactionsCertificates, certType, rewardAccount) => {
|
|
13
|
+
const stakeKeyHash = rewardAccount ? Cardano.Ed25519KeyHash.fromRewardAccount(rewardAccount) : null;
|
|
14
|
+
const lastRegOrDereg = last(transactionsCertificates
|
|
15
|
+
.map((certificates) => {
|
|
16
|
+
const allStakeKeyCertificates = stakeKeyCertficates(certificates);
|
|
17
|
+
const addressStakeKeyCertificates = stakeKeyHash
|
|
18
|
+
? allStakeKeyCertificates.filter(({ stakeKeyHash: certStakeKeyHash }) => stakeKeyHash === certStakeKeyHash)
|
|
19
|
+
: allStakeKeyCertificates;
|
|
20
|
+
return last(addressStakeKeyCertificates);
|
|
21
|
+
})
|
|
22
|
+
.filter(isNotNil));
|
|
23
|
+
return lastRegOrDereg?.__typename === certType;
|
|
24
|
+
};
|
|
25
|
+
export const transactionsWithCertificates = (transactions$, rewardAccounts$, certificateTypes) => combineLatest([transactions$, rewardAccounts$]).pipe(map(([transactions, rewardAccounts]) => transactions.filter((tx) => {
|
|
26
|
+
const inspectTx = createTxInspector({
|
|
27
|
+
signedCertificates: signedCertificatesInspector(rewardAccounts, certificateTypes)
|
|
28
|
+
});
|
|
29
|
+
return inspectTx(tx).signedCertificates.length > 0;
|
|
30
|
+
})), distinctUntilChanged(transactionsEquals));
|
|
31
|
+
//# sourceMappingURL=transactionCertificates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionCertificates.js","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/transactionCertificates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAc,aAAa,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,IAAI,MAAM,aAAa,CAAC;AAE/B,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,OAAO,CAAC,eAAe,CAAC,oBAAoB;IAC5C,OAAO,CAAC,eAAe,CAAC,sBAAsB;CAC/C,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,YAAoC,EAAE,EAAE,CAC1E,YAAY,EAAE,MAAM,CAAC,CAAC,WAAW,EAAkD,EAAE,CACnF,2BAA2B,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAC7D,IAAI,EAAE,CAAC;AAEV,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAA+B,EAAE,MAAiC,EAAE,EAAE,CAC3G,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,CAAC;AAE1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,wBAAiD,EACjD,QAAuG,EACvG,aAAqC,EACrC,EAAE;IACF,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpG,MAAM,cAAc,GAAG,IAAI,CACzB,wBAAwB;SACrB,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;QACpB,MAAM,uBAAuB,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAClE,MAAM,2BAA2B,GAAG,YAAY;YAC9C,CAAC,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,YAAY,KAAK,gBAAgB,CAAC;YAC3G,CAAC,CAAC,uBAAuB,CAAC;QAC5B,OAAO,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC,CAAC;SACD,MAAM,CAAC,QAAQ,CAAC,CACpB,CAAC;IACF,OAAO,cAAc,EAAE,UAAU,KAAK,QAAQ,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,aAA6C,EAC7C,eAAoD,EACpD,gBAA2C,EAC3C,EAAE,CACF,aAAa,CAAC,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,CAClD,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,EAAE,CACrC,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;IACzB,MAAM,SAAS,GAAG,iBAAiB,CAAC;QAClC,kBAAkB,EAAE,2BAA2B,CAAC,cAAc,EAAE,gBAAgB,CAAC;KAClF,CAAC,CAAC;IACH,OAAO,SAAS,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;AACrD,CAAC,CAAC,CACH,EACD,oBAAoB,CAAC,kBAAkB,CAAC,CACzC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/services/DelegationTracker/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Cardano, EpochInfo, TimeSettings } from '@cardano-sdk/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { TrackerSubject } from '@cardano-sdk/util-rxjs';
|
|
4
|
+
export declare const currentEpochTracker: (tip$: Observable<Cardano.Tip>, timeSettings$: Observable<TimeSettings[]>) => TrackerSubject<EpochInfo>;
|
|
5
|
+
//# sourceMappingURL=EpochTracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EpochTracker.d.ts","sourceRoot":"","sources":["../../../src/services/EpochTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAA2B,MAAM,mBAAmB,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAwC,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,eAAO,MAAM,mBAAmB,SACxB,WAAW,QAAQ,GAAG,CAAC,iBACd,WAAW,YAAY,EAAE,CAAC,KACxC,eAAe,SAAS,CASxB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createSlotEpochInfoCalc } from '@cardano-sdk/core';
|
|
2
|
+
import { distinctUntilChanged, map, switchMap } from 'rxjs';
|
|
3
|
+
import { TrackerSubject } from '@cardano-sdk/util-rxjs';
|
|
4
|
+
import { epochInfoEquals } from './util';
|
|
5
|
+
export const currentEpochTracker = (tip$, timeSettings$) => new TrackerSubject(timeSettings$.pipe(switchMap((timeSettings) => {
|
|
6
|
+
const slotEpochInfoCalc = createSlotEpochInfoCalc(timeSettings);
|
|
7
|
+
return tip$.pipe(map(({ slot }) => slotEpochInfoCalc(slot)));
|
|
8
|
+
}), distinctUntilChanged(epochInfoEquals)));
|
|
9
|
+
//# sourceMappingURL=EpochTracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EpochTracker.js","sourceRoot":"","sources":["../../../src/services/EpochTracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC9F,OAAO,EAAc,oBAAoB,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,IAA6B,EAC7B,aAAyC,EACd,EAAE,CAC7B,IAAI,cAAc,CAChB,aAAa,CAAC,IAAI,CAChB,SAAS,CAAC,CAAC,YAAY,EAAE,EAAE;IACzB,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAC;IAChE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC,EACF,oBAAoB,CAAC,eAAe,CAAC,CACtC,CACF,CAAC"}
|