@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.
Files changed (760) hide show
  1. package/dist/cjs/KeyManagement/InMemoryKeyAgent.d.ts +24 -0
  2. package/dist/cjs/KeyManagement/InMemoryKeyAgent.d.ts.map +1 -0
  3. package/dist/cjs/KeyManagement/InMemoryKeyAgent.js +137 -0
  4. package/dist/cjs/KeyManagement/InMemoryKeyAgent.js.map +1 -0
  5. package/dist/cjs/KeyManagement/KeyAgentBase.d.ts +22 -0
  6. package/dist/cjs/KeyManagement/KeyAgentBase.d.ts.map +1 -0
  7. package/dist/cjs/KeyManagement/KeyAgentBase.js +77 -0
  8. package/dist/cjs/KeyManagement/KeyAgentBase.js.map +1 -0
  9. package/dist/cjs/KeyManagement/LedgerKeyAgent.d.ts +43 -0
  10. package/dist/cjs/KeyManagement/LedgerKeyAgent.d.ts.map +1 -0
  11. package/dist/cjs/KeyManagement/LedgerKeyAgent.js +208 -0
  12. package/dist/cjs/KeyManagement/LedgerKeyAgent.js.map +1 -0
  13. package/dist/cjs/KeyManagement/TrezorKeyAgent.d.ts +30 -0
  14. package/dist/cjs/KeyManagement/TrezorKeyAgent.d.ts.map +1 -0
  15. package/dist/cjs/KeyManagement/TrezorKeyAgent.js +134 -0
  16. package/dist/cjs/KeyManagement/TrezorKeyAgent.js.map +1 -0
  17. package/dist/cjs/KeyManagement/cip8/cip30signData.d.ts +22 -0
  18. package/dist/cjs/KeyManagement/cip8/cip30signData.d.ts.map +1 -0
  19. package/dist/cjs/KeyManagement/cip8/cip30signData.js +81 -0
  20. package/dist/cjs/KeyManagement/cip8/cip30signData.js.map +1 -0
  21. package/dist/cjs/KeyManagement/cip8/index.d.ts +2 -0
  22. package/dist/cjs/KeyManagement/cip8/index.d.ts.map +1 -0
  23. package/dist/cjs/KeyManagement/cip8/index.js +18 -0
  24. package/dist/cjs/KeyManagement/cip8/index.js.map +1 -0
  25. package/dist/cjs/KeyManagement/cip8/types.d.ts +4 -0
  26. package/dist/cjs/KeyManagement/cip8/types.d.ts.map +1 -0
  27. package/dist/{services/DelegationTracker → cjs/KeyManagement/cip8}/types.js +0 -0
  28. package/dist/cjs/KeyManagement/cip8/types.js.map +1 -0
  29. package/dist/cjs/KeyManagement/cip8/util.d.ts +7 -0
  30. package/dist/cjs/KeyManagement/cip8/util.d.ts.map +1 -0
  31. package/dist/cjs/KeyManagement/cip8/util.js +10 -0
  32. package/dist/cjs/KeyManagement/cip8/util.js.map +1 -0
  33. package/dist/cjs/KeyManagement/emip3.d.ts +4 -0
  34. package/dist/cjs/KeyManagement/emip3.d.ts.map +1 -0
  35. package/dist/cjs/KeyManagement/emip3.js +48 -0
  36. package/dist/cjs/KeyManagement/emip3.js.map +1 -0
  37. package/dist/cjs/KeyManagement/errors/AuthenticationError.d.ts +6 -0
  38. package/dist/cjs/KeyManagement/errors/AuthenticationError.d.ts.map +1 -0
  39. package/dist/cjs/KeyManagement/errors/AuthenticationError.js +16 -0
  40. package/dist/cjs/KeyManagement/errors/AuthenticationError.js.map +1 -0
  41. package/dist/cjs/KeyManagement/errors/HwMappingError.d.ts +6 -0
  42. package/dist/cjs/KeyManagement/errors/HwMappingError.d.ts.map +1 -0
  43. package/dist/cjs/KeyManagement/errors/HwMappingError.js +16 -0
  44. package/dist/cjs/KeyManagement/errors/HwMappingError.js.map +1 -0
  45. package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.d.ts +5 -0
  46. package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.d.ts.map +1 -0
  47. package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.js +13 -0
  48. package/dist/cjs/KeyManagement/errors/InvalidMnemonicError.js.map +1 -0
  49. package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .d.ts +5 -0
  50. package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .d.ts.map +1 -0
  51. package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .js +15 -0
  52. package/dist/cjs/KeyManagement/errors/InvalidSerializableDataError .js.map +1 -0
  53. package/dist/cjs/KeyManagement/errors/TransportError.d.ts +6 -0
  54. package/dist/cjs/KeyManagement/errors/TransportError.d.ts.map +1 -0
  55. package/dist/cjs/KeyManagement/errors/TransportError.js +16 -0
  56. package/dist/cjs/KeyManagement/errors/TransportError.js.map +1 -0
  57. package/dist/cjs/KeyManagement/errors/index.d.ts +6 -0
  58. package/dist/cjs/KeyManagement/errors/index.d.ts.map +1 -0
  59. package/dist/cjs/KeyManagement/errors/index.js +22 -0
  60. package/dist/cjs/KeyManagement/errors/index.js.map +1 -0
  61. package/dist/cjs/KeyManagement/index.d.ts +12 -0
  62. package/dist/cjs/KeyManagement/index.d.ts.map +1 -0
  63. package/dist/{KeyManagement → cjs/KeyManagement}/index.js +16 -4
  64. package/dist/cjs/KeyManagement/index.js.map +1 -0
  65. package/dist/cjs/KeyManagement/restoreKeyAgent.d.ts +9 -0
  66. package/dist/cjs/KeyManagement/restoreKeyAgent.d.ts.map +1 -0
  67. package/dist/cjs/KeyManagement/restoreKeyAgent.js +31 -0
  68. package/dist/cjs/KeyManagement/restoreKeyAgent.js.map +1 -0
  69. package/dist/cjs/KeyManagement/types.d.ts +122 -0
  70. package/dist/cjs/KeyManagement/types.d.ts.map +1 -0
  71. package/dist/cjs/KeyManagement/types.js +43 -0
  72. package/dist/cjs/KeyManagement/types.js.map +1 -0
  73. package/dist/cjs/KeyManagement/util/bip39.d.ts +8 -0
  74. package/dist/cjs/KeyManagement/util/bip39.d.ts.map +1 -0
  75. package/dist/{KeyManagement/util.js → cjs/KeyManagement/util/bip39.js} +14 -6
  76. package/dist/cjs/KeyManagement/util/bip39.js.map +1 -0
  77. package/dist/cjs/KeyManagement/util/cachedGetPassword.d.ts +4 -0
  78. package/dist/cjs/KeyManagement/util/cachedGetPassword.d.ts.map +1 -0
  79. package/dist/cjs/KeyManagement/util/cachedGetPassword.js +25 -0
  80. package/dist/cjs/KeyManagement/util/cachedGetPassword.js.map +1 -0
  81. package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.d.ts +3 -0
  82. package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.d.ts.map +1 -0
  83. package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.js +26 -0
  84. package/dist/cjs/KeyManagement/util/createAsyncKeyAgent.js.map +1 -0
  85. package/dist/cjs/KeyManagement/util/index.d.ts +8 -0
  86. package/dist/cjs/KeyManagement/util/index.d.ts.map +1 -0
  87. package/dist/cjs/KeyManagement/util/index.js +24 -0
  88. package/dist/cjs/KeyManagement/util/index.js.map +1 -0
  89. package/dist/cjs/KeyManagement/util/key.d.ts +11 -0
  90. package/dist/cjs/KeyManagement/util/key.d.ts.map +1 -0
  91. package/dist/cjs/KeyManagement/util/key.js +30 -0
  92. package/dist/cjs/KeyManagement/util/key.js.map +1 -0
  93. package/dist/cjs/KeyManagement/util/mapHardwareSigningData.d.ts +39 -0
  94. package/dist/cjs/KeyManagement/util/mapHardwareSigningData.d.ts.map +1 -0
  95. package/dist/cjs/KeyManagement/util/mapHardwareSigningData.js +864 -0
  96. package/dist/cjs/KeyManagement/util/mapHardwareSigningData.js.map +1 -0
  97. package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.d.ts +5 -0
  98. package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.d.ts.map +1 -0
  99. package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.js +24 -0
  100. package/dist/cjs/KeyManagement/util/ownSignatureKeyPaths.js.map +1 -0
  101. package/dist/cjs/KeyManagement/util/stubSignTransaction.d.ts +5 -0
  102. package/dist/cjs/KeyManagement/util/stubSignTransaction.d.ts.map +1 -0
  103. package/dist/cjs/KeyManagement/util/stubSignTransaction.js +13 -0
  104. package/dist/cjs/KeyManagement/util/stubSignTransaction.js.map +1 -0
  105. package/dist/cjs/SingleAddressWallet.d.ts +68 -0
  106. package/dist/cjs/SingleAddressWallet.d.ts.map +1 -0
  107. package/dist/cjs/SingleAddressWallet.js +266 -0
  108. package/dist/cjs/SingleAddressWallet.js.map +1 -0
  109. package/dist/cjs/Transaction/createTransactionInternals.d.ts +20 -0
  110. package/dist/cjs/Transaction/createTransactionInternals.d.ts.map +1 -0
  111. package/dist/cjs/Transaction/createTransactionInternals.js +33 -0
  112. package/dist/cjs/Transaction/createTransactionInternals.js.map +1 -0
  113. package/dist/{Transaction → cjs/Transaction}/ensureValidityInterval.d.ts +0 -0
  114. package/dist/cjs/Transaction/ensureValidityInterval.d.ts.map +1 -0
  115. package/dist/{Transaction → cjs/Transaction}/ensureValidityInterval.js +0 -0
  116. package/dist/cjs/Transaction/ensureValidityInterval.js.map +1 -0
  117. package/dist/{Transaction → cjs/Transaction}/index.d.ts +0 -1
  118. package/dist/cjs/Transaction/index.d.ts.map +1 -0
  119. package/dist/{Transaction → cjs/Transaction}/index.js +5 -2
  120. package/dist/cjs/Transaction/index.js.map +1 -0
  121. package/dist/cjs/cip30.d.ts +30 -0
  122. package/dist/cjs/cip30.d.ts.map +1 -0
  123. package/dist/cjs/cip30.js +197 -0
  124. package/dist/cjs/cip30.js.map +1 -0
  125. package/dist/cjs/cip36.d.ts +33 -0
  126. package/dist/cjs/cip36.d.ts.map +1 -0
  127. package/dist/cjs/cip36.js +49 -0
  128. package/dist/cjs/cip36.js.map +1 -0
  129. package/dist/cjs/index.d.ts +10 -0
  130. package/dist/cjs/index.d.ts.map +1 -0
  131. package/dist/{index.js → cjs/index.js} +10 -2
  132. package/dist/cjs/index.js.map +1 -0
  133. package/dist/cjs/package.json +3 -0
  134. package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.d.ts +9 -0
  135. package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.d.ts.map +1 -0
  136. package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.js +25 -0
  137. package/dist/cjs/persistence/inMemoryStores/InMemoryCollectionStore.js.map +1 -0
  138. package/dist/cjs/persistence/inMemoryStores/InMemoryDocumentStore.d.ts +9 -0
  139. package/dist/cjs/persistence/inMemoryStores/InMemoryDocumentStore.d.ts.map +1 -0
  140. package/dist/{services/util/SyncableIntervalTrackerSubject.js → cjs/persistence/inMemoryStores/InMemoryDocumentStore.js} +26 -18
  141. package/dist/cjs/persistence/inMemoryStores/InMemoryDocumentStore.js.map +1 -0
  142. package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts +8 -0
  143. package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts.map +1 -0
  144. package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.js +31 -0
  145. package/dist/cjs/persistence/inMemoryStores/InMemoryKeyValueStore.js.map +1 -0
  146. package/dist/cjs/persistence/inMemoryStores/InMemoryStore.d.ts +7 -0
  147. package/dist/cjs/persistence/inMemoryStores/InMemoryStore.d.ts.map +1 -0
  148. package/dist/cjs/persistence/inMemoryStores/InMemoryStore.js +15 -0
  149. package/dist/cjs/persistence/inMemoryStores/InMemoryStore.js.map +1 -0
  150. package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.d.ts +39 -0
  151. package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.d.ts.map +1 -0
  152. package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.js +95 -0
  153. package/dist/cjs/persistence/inMemoryStores/inMemoryWalletStores.js.map +1 -0
  154. package/dist/cjs/persistence/inMemoryStores/index.d.ts +5 -0
  155. package/dist/cjs/persistence/inMemoryStores/index.d.ts.map +1 -0
  156. package/dist/cjs/persistence/inMemoryStores/index.js +21 -0
  157. package/dist/cjs/persistence/inMemoryStores/index.js.map +1 -0
  158. package/dist/cjs/persistence/index.d.ts +4 -0
  159. package/dist/cjs/persistence/index.d.ts.map +1 -0
  160. package/dist/cjs/persistence/index.js +20 -0
  161. package/dist/cjs/persistence/index.js.map +1 -0
  162. package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.d.ts +16 -0
  163. package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.d.ts.map +1 -0
  164. package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.js +60 -0
  165. package/dist/cjs/persistence/pouchdbStores/PouchdbCollectionStore.js.map +1 -0
  166. package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.d.ts +10 -0
  167. package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.d.ts.map +1 -0
  168. package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.js +45 -0
  169. package/dist/cjs/persistence/pouchdbStores/PouchdbDocumentStore.js.map +1 -0
  170. package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts +11 -0
  171. package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts.map +1 -0
  172. package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.js +53 -0
  173. package/dist/cjs/persistence/pouchdbStores/PouchdbKeyValueStore.js.map +1 -0
  174. package/dist/cjs/persistence/pouchdbStores/PouchdbStore.d.ts +20 -0
  175. package/dist/cjs/persistence/pouchdbStores/PouchdbStore.d.ts.map +1 -0
  176. package/dist/cjs/persistence/pouchdbStores/PouchdbStore.js +69 -0
  177. package/dist/cjs/persistence/pouchdbStores/PouchdbStore.js.map +1 -0
  178. package/dist/cjs/persistence/pouchdbStores/index.d.ts +5 -0
  179. package/dist/cjs/persistence/pouchdbStores/index.d.ts.map +1 -0
  180. package/dist/cjs/persistence/pouchdbStores/index.js +21 -0
  181. package/dist/cjs/persistence/pouchdbStores/index.js.map +1 -0
  182. package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.d.ts +41 -0
  183. package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.d.ts.map +1 -0
  184. package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.js +92 -0
  185. package/dist/cjs/persistence/pouchdbStores/pouchdbWalletStores.js.map +1 -0
  186. package/dist/cjs/persistence/pouchdbStores/util.d.ts +10 -0
  187. package/dist/cjs/persistence/pouchdbStores/util.d.ts.map +1 -0
  188. package/dist/cjs/persistence/pouchdbStores/util.js +52 -0
  189. package/dist/cjs/persistence/pouchdbStores/util.js.map +1 -0
  190. package/dist/cjs/persistence/types.d.ts +43 -0
  191. package/dist/cjs/persistence/types.d.ts.map +1 -0
  192. package/dist/{types.js → cjs/persistence/types.js} +0 -0
  193. package/dist/cjs/persistence/types.js.map +1 -0
  194. package/dist/cjs/services/AssetsTracker.d.ts +18 -0
  195. package/dist/cjs/services/AssetsTracker.d.ts.map +1 -0
  196. package/dist/cjs/services/AssetsTracker.js +22 -0
  197. package/dist/cjs/services/AssetsTracker.js.map +1 -0
  198. package/dist/{services → cjs/services}/BalanceTracker.d.ts +2 -2
  199. package/dist/cjs/services/BalanceTracker.d.ts.map +1 -0
  200. package/dist/cjs/services/BalanceTracker.js +22 -0
  201. package/dist/cjs/services/BalanceTracker.js.map +1 -0
  202. package/dist/cjs/services/DelegationTracker/DelegationTracker.d.ts +31 -0
  203. package/dist/cjs/services/DelegationTracker/DelegationTracker.d.ts.map +1 -0
  204. package/dist/cjs/services/DelegationTracker/DelegationTracker.js +47 -0
  205. package/dist/cjs/services/DelegationTracker/DelegationTracker.js.map +1 -0
  206. package/dist/{services → cjs/services}/DelegationTracker/RewardAccounts.d.ts +13 -12
  207. package/dist/cjs/services/DelegationTracker/RewardAccounts.d.ts.map +1 -0
  208. package/dist/cjs/services/DelegationTracker/RewardAccounts.js +109 -0
  209. package/dist/cjs/services/DelegationTracker/RewardAccounts.js.map +1 -0
  210. package/dist/cjs/services/DelegationTracker/RewardsHistory.d.ts +11 -0
  211. package/dist/cjs/services/DelegationTracker/RewardsHistory.d.ts.map +1 -0
  212. package/dist/cjs/services/DelegationTracker/RewardsHistory.js +63 -0
  213. package/dist/cjs/services/DelegationTracker/RewardsHistory.js.map +1 -0
  214. package/dist/{services → cjs/services}/DelegationTracker/index.d.ts +0 -0
  215. package/dist/cjs/services/DelegationTracker/index.d.ts.map +1 -0
  216. package/dist/{services → cjs/services}/DelegationTracker/index.js +5 -1
  217. package/dist/cjs/services/DelegationTracker/index.js.map +1 -0
  218. package/dist/{services → cjs/services}/DelegationTracker/transactionCertificates.d.ts +2 -3
  219. package/dist/cjs/services/DelegationTracker/transactionCertificates.d.ts.map +1 -0
  220. package/dist/cjs/services/DelegationTracker/transactionCertificates.js +41 -0
  221. package/dist/cjs/services/DelegationTracker/transactionCertificates.js.map +1 -0
  222. package/dist/{services → cjs/services}/DelegationTracker/types.d.ts +0 -0
  223. package/dist/cjs/services/DelegationTracker/types.d.ts.map +1 -0
  224. package/dist/cjs/services/DelegationTracker/types.js +3 -0
  225. package/dist/cjs/services/DelegationTracker/types.js.map +1 -0
  226. package/dist/cjs/services/EpochTracker.d.ts +5 -0
  227. package/dist/cjs/services/EpochTracker.d.ts.map +1 -0
  228. package/dist/cjs/services/EpochTracker.js +13 -0
  229. package/dist/cjs/services/EpochTracker.js.map +1 -0
  230. package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.d.ts +35 -0
  231. package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.d.ts.map +1 -0
  232. package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.js +39 -0
  233. package/dist/cjs/services/ProviderTracker/ProviderStatusTracker.js.map +1 -0
  234. package/dist/cjs/services/ProviderTracker/ProviderTracker.d.ts +14 -0
  235. package/dist/cjs/services/ProviderTracker/ProviderTracker.d.ts.map +1 -0
  236. package/dist/cjs/services/ProviderTracker/ProviderTracker.js +36 -0
  237. package/dist/cjs/services/ProviderTracker/ProviderTracker.js.map +1 -0
  238. package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.d.ts +14 -0
  239. package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.d.ts.map +1 -0
  240. package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.js +27 -0
  241. package/dist/cjs/services/ProviderTracker/TrackedAssetProvider.js.map +1 -0
  242. package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.d.ts +20 -0
  243. package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.d.ts.map +1 -0
  244. package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.js +39 -0
  245. package/dist/cjs/services/ProviderTracker/TrackedChainHistoryProvider.js.map +1 -0
  246. package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts +24 -0
  247. package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts.map +1 -0
  248. package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.js +47 -0
  249. package/dist/cjs/services/ProviderTracker/TrackedNetworkInfoProvider.js.map +1 -0
  250. package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.d.ts +18 -0
  251. package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.d.ts.map +1 -0
  252. package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.js +35 -0
  253. package/dist/cjs/services/ProviderTracker/TrackedRewardsProvider.js.map +1 -0
  254. package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.d.ts +16 -0
  255. package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.d.ts.map +1 -0
  256. package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.js +31 -0
  257. package/dist/cjs/services/ProviderTracker/TrackedStakePoolProvider.js.map +1 -0
  258. package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.d.ts +17 -0
  259. package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.d.ts.map +1 -0
  260. package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.js +32 -0
  261. package/dist/cjs/services/ProviderTracker/TrackedTxSubmitProvider.js.map +1 -0
  262. package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.d.ts +16 -0
  263. package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.d.ts.map +1 -0
  264. package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.js +31 -0
  265. package/dist/cjs/services/ProviderTracker/TrackedUtxoProvider.js.map +1 -0
  266. package/dist/cjs/services/ProviderTracker/index.d.ts +10 -0
  267. package/dist/cjs/services/ProviderTracker/index.d.ts.map +1 -0
  268. package/dist/cjs/services/ProviderTracker/index.js +26 -0
  269. package/dist/cjs/services/ProviderTracker/index.js.map +1 -0
  270. package/dist/cjs/services/TipTracker.d.ts +23 -0
  271. package/dist/cjs/services/TipTracker.d.ts.map +1 -0
  272. package/dist/cjs/services/TipTracker.js +34 -0
  273. package/dist/cjs/services/TipTracker.js.map +1 -0
  274. package/dist/cjs/services/TransactionsTracker.d.ts +25 -0
  275. package/dist/cjs/services/TransactionsTracker.d.ts.map +1 -0
  276. package/dist/cjs/services/TransactionsTracker.js +94 -0
  277. package/dist/cjs/services/TransactionsTracker.js.map +1 -0
  278. package/dist/cjs/services/UtxoTracker.d.ts +21 -0
  279. package/dist/cjs/services/UtxoTracker.d.ts.map +1 -0
  280. package/dist/cjs/services/UtxoTracker.js +41 -0
  281. package/dist/cjs/services/UtxoTracker.js.map +1 -0
  282. package/dist/cjs/services/WalletUtil.d.ts +45 -0
  283. package/dist/cjs/services/WalletUtil.d.ts.map +1 -0
  284. package/dist/cjs/services/WalletUtil.js +82 -0
  285. package/dist/cjs/services/WalletUtil.js.map +1 -0
  286. package/dist/cjs/services/index.d.ts +12 -0
  287. package/dist/cjs/services/index.d.ts.map +1 -0
  288. package/dist/{services → cjs/services}/index.js +9 -2
  289. package/dist/cjs/services/index.js.map +1 -0
  290. package/dist/{services → cjs/services}/types.d.ts +27 -32
  291. package/dist/cjs/services/types.d.ts.map +1 -0
  292. package/dist/cjs/services/types.js +19 -0
  293. package/dist/cjs/services/types.js.map +1 -0
  294. package/dist/cjs/services/util/coldObservableProvider.d.ts +12 -0
  295. package/dist/cjs/services/util/coldObservableProvider.d.ts.map +1 -0
  296. package/dist/cjs/services/util/coldObservableProvider.js +14 -0
  297. package/dist/cjs/services/util/coldObservableProvider.js.map +1 -0
  298. package/dist/cjs/services/util/connectionStatusTracker.d.ts +14 -0
  299. package/dist/cjs/services/util/connectionStatusTracker.d.ts.map +1 -0
  300. package/dist/cjs/services/util/connectionStatusTracker.js +12 -0
  301. package/dist/cjs/services/util/connectionStatusTracker.js.map +1 -0
  302. package/dist/cjs/services/util/equals.d.ts +15 -0
  303. package/dist/cjs/services/util/equals.d.ts.map +1 -0
  304. package/dist/cjs/services/util/equals.js +33 -0
  305. package/dist/cjs/services/util/equals.js.map +1 -0
  306. package/dist/cjs/services/util/index.d.ts +6 -0
  307. package/dist/cjs/services/util/index.d.ts.map +1 -0
  308. package/dist/{services → cjs/services}/util/index.js +7 -3
  309. package/dist/cjs/services/util/index.js.map +1 -0
  310. package/dist/cjs/services/util/persistentTrackerSubjects.d.ts +12 -0
  311. package/dist/cjs/services/util/persistentTrackerSubjects.d.ts.map +1 -0
  312. package/dist/cjs/services/util/persistentTrackerSubjects.js +27 -0
  313. package/dist/cjs/services/util/persistentTrackerSubjects.js.map +1 -0
  314. package/dist/cjs/services/util/trigger.d.ts +5 -0
  315. package/dist/cjs/services/util/trigger.d.ts.map +1 -0
  316. package/dist/cjs/services/util/trigger.js +10 -0
  317. package/dist/cjs/services/util/trigger.js.map +1 -0
  318. package/dist/cjs/setupWallet.d.ts +19 -0
  319. package/dist/cjs/setupWallet.d.ts.map +1 -0
  320. package/dist/cjs/setupWallet.js +13 -0
  321. package/dist/cjs/setupWallet.js.map +1 -0
  322. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  323. package/dist/cjs/types.d.ts +67 -0
  324. package/dist/cjs/types.d.ts.map +1 -0
  325. package/dist/cjs/types.js +3 -0
  326. package/dist/cjs/types.js.map +1 -0
  327. package/dist/esm/KeyManagement/InMemoryKeyAgent.d.ts +24 -0
  328. package/dist/esm/KeyManagement/InMemoryKeyAgent.d.ts.map +1 -0
  329. package/dist/esm/KeyManagement/InMemoryKeyAgent.js +107 -0
  330. package/dist/esm/KeyManagement/InMemoryKeyAgent.js.map +1 -0
  331. package/dist/esm/KeyManagement/KeyAgentBase.d.ts +22 -0
  332. package/dist/esm/KeyManagement/KeyAgentBase.d.ts.map +1 -0
  333. package/dist/esm/KeyManagement/KeyAgentBase.js +73 -0
  334. package/dist/esm/KeyManagement/KeyAgentBase.js.map +1 -0
  335. package/dist/esm/KeyManagement/LedgerKeyAgent.d.ts +43 -0
  336. package/dist/esm/KeyManagement/LedgerKeyAgent.d.ts.map +1 -0
  337. package/dist/esm/KeyManagement/LedgerKeyAgent.js +178 -0
  338. package/dist/esm/KeyManagement/LedgerKeyAgent.js.map +1 -0
  339. package/dist/esm/KeyManagement/TrezorKeyAgent.d.ts +30 -0
  340. package/dist/esm/KeyManagement/TrezorKeyAgent.d.ts.map +1 -0
  341. package/dist/esm/KeyManagement/TrezorKeyAgent.js +127 -0
  342. package/dist/esm/KeyManagement/TrezorKeyAgent.js.map +1 -0
  343. package/dist/esm/KeyManagement/cip8/cip30signData.d.ts +22 -0
  344. package/dist/esm/KeyManagement/cip8/cip30signData.d.ts.map +1 -0
  345. package/dist/esm/KeyManagement/cip8/cip30signData.js +76 -0
  346. package/dist/esm/KeyManagement/cip8/cip30signData.js.map +1 -0
  347. package/dist/esm/KeyManagement/cip8/index.d.ts +2 -0
  348. package/dist/esm/KeyManagement/cip8/index.d.ts.map +1 -0
  349. package/dist/esm/KeyManagement/cip8/index.js +2 -0
  350. package/dist/esm/KeyManagement/cip8/index.js.map +1 -0
  351. package/dist/esm/KeyManagement/cip8/types.d.ts +4 -0
  352. package/dist/esm/KeyManagement/cip8/types.d.ts.map +1 -0
  353. package/dist/esm/KeyManagement/cip8/types.js +2 -0
  354. package/dist/esm/KeyManagement/cip8/types.js.map +1 -0
  355. package/dist/esm/KeyManagement/cip8/util.d.ts +7 -0
  356. package/dist/esm/KeyManagement/cip8/util.d.ts.map +1 -0
  357. package/dist/esm/KeyManagement/cip8/util.js +7 -0
  358. package/dist/esm/KeyManagement/cip8/util.js.map +1 -0
  359. package/dist/esm/KeyManagement/emip3.d.ts +4 -0
  360. package/dist/esm/KeyManagement/emip3.d.ts.map +1 -0
  361. package/dist/esm/KeyManagement/emip3.js +39 -0
  362. package/dist/esm/KeyManagement/emip3.js.map +1 -0
  363. package/dist/esm/KeyManagement/errors/AuthenticationError.d.ts +6 -0
  364. package/dist/esm/KeyManagement/errors/AuthenticationError.d.ts.map +1 -0
  365. package/dist/esm/KeyManagement/errors/AuthenticationError.js +12 -0
  366. package/dist/esm/KeyManagement/errors/AuthenticationError.js.map +1 -0
  367. package/dist/esm/KeyManagement/errors/HwMappingError.d.ts +6 -0
  368. package/dist/esm/KeyManagement/errors/HwMappingError.d.ts.map +1 -0
  369. package/dist/esm/KeyManagement/errors/HwMappingError.js +12 -0
  370. package/dist/esm/KeyManagement/errors/HwMappingError.js.map +1 -0
  371. package/dist/esm/KeyManagement/errors/InvalidMnemonicError.d.ts +5 -0
  372. package/dist/esm/KeyManagement/errors/InvalidMnemonicError.d.ts.map +1 -0
  373. package/dist/esm/KeyManagement/errors/InvalidMnemonicError.js +9 -0
  374. package/dist/esm/KeyManagement/errors/InvalidMnemonicError.js.map +1 -0
  375. package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .d.ts +5 -0
  376. package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .d.ts.map +1 -0
  377. package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .js +11 -0
  378. package/dist/esm/KeyManagement/errors/InvalidSerializableDataError .js.map +1 -0
  379. package/dist/esm/KeyManagement/errors/TransportError.d.ts +6 -0
  380. package/dist/esm/KeyManagement/errors/TransportError.d.ts.map +1 -0
  381. package/dist/esm/KeyManagement/errors/TransportError.js +12 -0
  382. package/dist/esm/KeyManagement/errors/TransportError.js.map +1 -0
  383. package/dist/esm/KeyManagement/errors/index.d.ts +6 -0
  384. package/dist/esm/KeyManagement/errors/index.d.ts.map +1 -0
  385. package/dist/esm/KeyManagement/errors/index.js +6 -0
  386. package/dist/esm/KeyManagement/errors/index.js.map +1 -0
  387. package/dist/esm/KeyManagement/index.d.ts +12 -0
  388. package/dist/esm/KeyManagement/index.d.ts.map +1 -0
  389. package/dist/esm/KeyManagement/index.js +12 -0
  390. package/dist/esm/KeyManagement/index.js.map +1 -0
  391. package/dist/esm/KeyManagement/restoreKeyAgent.d.ts +9 -0
  392. package/dist/esm/KeyManagement/restoreKeyAgent.d.ts.map +1 -0
  393. package/dist/esm/KeyManagement/restoreKeyAgent.js +27 -0
  394. package/dist/esm/KeyManagement/restoreKeyAgent.js.map +1 -0
  395. package/dist/esm/KeyManagement/types.d.ts +122 -0
  396. package/dist/esm/KeyManagement/types.d.ts.map +1 -0
  397. package/dist/esm/KeyManagement/types.js +40 -0
  398. package/dist/esm/KeyManagement/types.js.map +1 -0
  399. package/dist/esm/KeyManagement/util/bip39.d.ts +8 -0
  400. package/dist/esm/KeyManagement/util/bip39.d.ts.map +1 -0
  401. package/dist/esm/KeyManagement/util/bip39.js +8 -0
  402. package/dist/esm/KeyManagement/util/bip39.js.map +1 -0
  403. package/dist/esm/KeyManagement/util/cachedGetPassword.d.ts +4 -0
  404. package/dist/esm/KeyManagement/util/cachedGetPassword.d.ts.map +1 -0
  405. package/dist/esm/KeyManagement/util/cachedGetPassword.js +21 -0
  406. package/dist/esm/KeyManagement/util/cachedGetPassword.js.map +1 -0
  407. package/dist/esm/KeyManagement/util/createAsyncKeyAgent.d.ts +3 -0
  408. package/dist/esm/KeyManagement/util/createAsyncKeyAgent.d.ts.map +1 -0
  409. package/dist/esm/KeyManagement/util/createAsyncKeyAgent.js +22 -0
  410. package/dist/esm/KeyManagement/util/createAsyncKeyAgent.js.map +1 -0
  411. package/dist/esm/KeyManagement/util/index.d.ts +8 -0
  412. package/dist/esm/KeyManagement/util/index.d.ts.map +1 -0
  413. package/dist/esm/KeyManagement/util/index.js +8 -0
  414. package/dist/esm/KeyManagement/util/index.js.map +1 -0
  415. package/dist/esm/KeyManagement/util/key.d.ts +11 -0
  416. package/dist/esm/KeyManagement/util/key.d.ts.map +1 -0
  417. package/dist/esm/KeyManagement/util/key.js +24 -0
  418. package/dist/esm/KeyManagement/util/key.js.map +1 -0
  419. package/dist/esm/KeyManagement/util/mapHardwareSigningData.d.ts +39 -0
  420. package/dist/esm/KeyManagement/util/mapHardwareSigningData.d.ts.map +1 -0
  421. package/dist/esm/KeyManagement/util/mapHardwareSigningData.js +833 -0
  422. package/dist/esm/KeyManagement/util/mapHardwareSigningData.js.map +1 -0
  423. package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.d.ts +5 -0
  424. package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.d.ts.map +1 -0
  425. package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.js +17 -0
  426. package/dist/esm/KeyManagement/util/ownSignatureKeyPaths.js.map +1 -0
  427. package/dist/esm/KeyManagement/util/stubSignTransaction.d.ts +5 -0
  428. package/dist/esm/KeyManagement/util/stubSignTransaction.d.ts.map +1 -0
  429. package/dist/esm/KeyManagement/util/stubSignTransaction.js +9 -0
  430. package/dist/esm/KeyManagement/util/stubSignTransaction.js.map +1 -0
  431. package/dist/esm/SingleAddressWallet.d.ts +68 -0
  432. package/dist/esm/SingleAddressWallet.d.ts.map +1 -0
  433. package/dist/esm/SingleAddressWallet.js +259 -0
  434. package/dist/esm/SingleAddressWallet.js.map +1 -0
  435. package/dist/esm/Transaction/createTransactionInternals.d.ts +20 -0
  436. package/dist/esm/Transaction/createTransactionInternals.d.ts.map +1 -0
  437. package/dist/esm/Transaction/createTransactionInternals.js +29 -0
  438. package/dist/esm/Transaction/createTransactionInternals.js.map +1 -0
  439. package/dist/esm/Transaction/ensureValidityInterval.d.ts +3 -0
  440. package/dist/esm/Transaction/ensureValidityInterval.d.ts.map +1 -0
  441. package/dist/esm/Transaction/ensureValidityInterval.js +2 -0
  442. package/dist/esm/Transaction/ensureValidityInterval.js.map +1 -0
  443. package/dist/esm/Transaction/index.d.ts +3 -0
  444. package/dist/esm/Transaction/index.d.ts.map +1 -0
  445. package/dist/esm/Transaction/index.js +3 -0
  446. package/dist/esm/Transaction/index.js.map +1 -0
  447. package/dist/esm/cip30.d.ts +30 -0
  448. package/dist/esm/cip30.d.ts.map +1 -0
  449. package/dist/esm/cip30.js +193 -0
  450. package/dist/esm/cip30.js.map +1 -0
  451. package/dist/esm/cip36.d.ts +33 -0
  452. package/dist/esm/cip36.d.ts.map +1 -0
  453. package/dist/esm/cip36.js +43 -0
  454. package/dist/esm/cip36.js.map +1 -0
  455. package/dist/esm/index.d.ts +10 -0
  456. package/dist/esm/index.d.ts.map +1 -0
  457. package/dist/{index.d.ts → esm/index.js} +5 -1
  458. package/dist/esm/index.js.map +1 -0
  459. package/dist/esm/package.json +3 -0
  460. package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.d.ts +9 -0
  461. package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.d.ts.map +1 -0
  462. package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.js +21 -0
  463. package/dist/esm/persistence/inMemoryStores/InMemoryCollectionStore.js.map +1 -0
  464. package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.d.ts +9 -0
  465. package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.d.ts.map +1 -0
  466. package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.js +34 -0
  467. package/dist/esm/persistence/inMemoryStores/InMemoryDocumentStore.js.map +1 -0
  468. package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts +8 -0
  469. package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.d.ts.map +1 -0
  470. package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.js +27 -0
  471. package/dist/esm/persistence/inMemoryStores/InMemoryKeyValueStore.js.map +1 -0
  472. package/dist/esm/persistence/inMemoryStores/InMemoryStore.d.ts +7 -0
  473. package/dist/esm/persistence/inMemoryStores/InMemoryStore.d.ts.map +1 -0
  474. package/dist/esm/persistence/inMemoryStores/InMemoryStore.js +11 -0
  475. package/dist/esm/persistence/inMemoryStores/InMemoryStore.js.map +1 -0
  476. package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.d.ts +39 -0
  477. package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.d.ts.map +1 -0
  478. package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.js +76 -0
  479. package/dist/esm/persistence/inMemoryStores/inMemoryWalletStores.js.map +1 -0
  480. package/dist/esm/persistence/inMemoryStores/index.d.ts +5 -0
  481. package/dist/esm/persistence/inMemoryStores/index.d.ts.map +1 -0
  482. package/dist/esm/persistence/inMemoryStores/index.js +5 -0
  483. package/dist/esm/persistence/inMemoryStores/index.js.map +1 -0
  484. package/dist/esm/persistence/index.d.ts +4 -0
  485. package/dist/esm/persistence/index.d.ts.map +1 -0
  486. package/dist/esm/persistence/index.js +4 -0
  487. package/dist/esm/persistence/index.js.map +1 -0
  488. package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.d.ts +16 -0
  489. package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.d.ts.map +1 -0
  490. package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.js +56 -0
  491. package/dist/esm/persistence/pouchdbStores/PouchdbCollectionStore.js.map +1 -0
  492. package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.d.ts +10 -0
  493. package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.d.ts.map +1 -0
  494. package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.js +41 -0
  495. package/dist/esm/persistence/pouchdbStores/PouchdbDocumentStore.js.map +1 -0
  496. package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts +11 -0
  497. package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.d.ts.map +1 -0
  498. package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.js +49 -0
  499. package/dist/esm/persistence/pouchdbStores/PouchdbKeyValueStore.js.map +1 -0
  500. package/dist/esm/persistence/pouchdbStores/PouchdbStore.d.ts +20 -0
  501. package/dist/esm/persistence/pouchdbStores/PouchdbStore.d.ts.map +1 -0
  502. package/dist/esm/persistence/pouchdbStores/PouchdbStore.js +62 -0
  503. package/dist/esm/persistence/pouchdbStores/PouchdbStore.js.map +1 -0
  504. package/dist/esm/persistence/pouchdbStores/index.d.ts +5 -0
  505. package/dist/esm/persistence/pouchdbStores/index.d.ts.map +1 -0
  506. package/dist/esm/persistence/pouchdbStores/index.js +5 -0
  507. package/dist/esm/persistence/pouchdbStores/index.js.map +1 -0
  508. package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.d.ts +41 -0
  509. package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.d.ts.map +1 -0
  510. package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.js +74 -0
  511. package/dist/esm/persistence/pouchdbStores/pouchdbWalletStores.js.map +1 -0
  512. package/dist/esm/persistence/pouchdbStores/util.d.ts +10 -0
  513. package/dist/esm/persistence/pouchdbStores/util.d.ts.map +1 -0
  514. package/dist/esm/persistence/pouchdbStores/util.js +43 -0
  515. package/dist/esm/persistence/pouchdbStores/util.js.map +1 -0
  516. package/dist/esm/persistence/types.d.ts +43 -0
  517. package/dist/esm/persistence/types.d.ts.map +1 -0
  518. package/dist/esm/persistence/types.js +2 -0
  519. package/dist/esm/persistence/types.js.map +1 -0
  520. package/dist/esm/services/AssetsTracker.d.ts +18 -0
  521. package/dist/esm/services/AssetsTracker.d.ts.map +1 -0
  522. package/dist/esm/services/AssetsTracker.js +17 -0
  523. package/dist/esm/services/AssetsTracker.js.map +1 -0
  524. package/dist/esm/services/BalanceTracker.d.ts +5 -0
  525. package/dist/esm/services/BalanceTracker.d.ts.map +1 -0
  526. package/dist/esm/services/BalanceTracker.js +18 -0
  527. package/dist/esm/services/BalanceTracker.js.map +1 -0
  528. package/dist/esm/services/DelegationTracker/DelegationTracker.d.ts +31 -0
  529. package/dist/esm/services/DelegationTracker/DelegationTracker.d.ts.map +1 -0
  530. package/dist/esm/services/DelegationTracker/DelegationTracker.js +41 -0
  531. package/dist/esm/services/DelegationTracker/DelegationTracker.js.map +1 -0
  532. package/dist/esm/services/DelegationTracker/RewardAccounts.d.ts +37 -0
  533. package/dist/esm/services/DelegationTracker/RewardAccounts.d.ts.map +1 -0
  534. package/dist/esm/services/DelegationTracker/RewardAccounts.js +93 -0
  535. package/dist/esm/services/DelegationTracker/RewardAccounts.js.map +1 -0
  536. package/dist/esm/services/DelegationTracker/RewardsHistory.d.ts +11 -0
  537. package/dist/esm/services/DelegationTracker/RewardsHistory.d.ts.map +1 -0
  538. package/dist/esm/services/DelegationTracker/RewardsHistory.js +55 -0
  539. package/dist/esm/services/DelegationTracker/RewardsHistory.js.map +1 -0
  540. package/dist/esm/services/DelegationTracker/index.d.ts +5 -0
  541. package/dist/esm/services/DelegationTracker/index.d.ts.map +1 -0
  542. package/dist/esm/services/DelegationTracker/index.js +5 -0
  543. package/dist/esm/services/DelegationTracker/index.js.map +1 -0
  544. package/dist/esm/services/DelegationTracker/transactionCertificates.d.ts +8 -0
  545. package/dist/esm/services/DelegationTracker/transactionCertificates.d.ts.map +1 -0
  546. package/dist/esm/services/DelegationTracker/transactionCertificates.js +31 -0
  547. package/dist/esm/services/DelegationTracker/transactionCertificates.js.map +1 -0
  548. package/dist/esm/services/DelegationTracker/types.d.ts +6 -0
  549. package/dist/esm/services/DelegationTracker/types.d.ts.map +1 -0
  550. package/dist/esm/services/DelegationTracker/types.js +2 -0
  551. package/dist/esm/services/DelegationTracker/types.js.map +1 -0
  552. package/dist/esm/services/EpochTracker.d.ts +5 -0
  553. package/dist/esm/services/EpochTracker.d.ts.map +1 -0
  554. package/dist/esm/services/EpochTracker.js +9 -0
  555. package/dist/esm/services/EpochTracker.js.map +1 -0
  556. package/dist/esm/services/ProviderTracker/ProviderStatusTracker.d.ts +35 -0
  557. package/dist/esm/services/ProviderTracker/ProviderStatusTracker.d.ts.map +1 -0
  558. package/dist/esm/services/ProviderTracker/ProviderStatusTracker.js +35 -0
  559. package/dist/esm/services/ProviderTracker/ProviderStatusTracker.js.map +1 -0
  560. package/dist/esm/services/ProviderTracker/ProviderTracker.d.ts +14 -0
  561. package/dist/esm/services/ProviderTracker/ProviderTracker.d.ts.map +1 -0
  562. package/dist/esm/services/ProviderTracker/ProviderTracker.js +32 -0
  563. package/dist/esm/services/ProviderTracker/ProviderTracker.js.map +1 -0
  564. package/dist/esm/services/ProviderTracker/TrackedAssetProvider.d.ts +14 -0
  565. package/dist/esm/services/ProviderTracker/TrackedAssetProvider.d.ts.map +1 -0
  566. package/dist/esm/services/ProviderTracker/TrackedAssetProvider.js +22 -0
  567. package/dist/esm/services/ProviderTracker/TrackedAssetProvider.js.map +1 -0
  568. package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.d.ts +20 -0
  569. package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.d.ts.map +1 -0
  570. package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.js +34 -0
  571. package/dist/esm/services/ProviderTracker/TrackedChainHistoryProvider.js.map +1 -0
  572. package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts +24 -0
  573. package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.d.ts.map +1 -0
  574. package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.js +42 -0
  575. package/dist/esm/services/ProviderTracker/TrackedNetworkInfoProvider.js.map +1 -0
  576. package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.d.ts +18 -0
  577. package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.d.ts.map +1 -0
  578. package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.js +30 -0
  579. package/dist/esm/services/ProviderTracker/TrackedRewardsProvider.js.map +1 -0
  580. package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.d.ts +16 -0
  581. package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.d.ts.map +1 -0
  582. package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.js +26 -0
  583. package/dist/esm/services/ProviderTracker/TrackedStakePoolProvider.js.map +1 -0
  584. package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.d.ts +17 -0
  585. package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.d.ts.map +1 -0
  586. package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.js +27 -0
  587. package/dist/esm/services/ProviderTracker/TrackedTxSubmitProvider.js.map +1 -0
  588. package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.d.ts +16 -0
  589. package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.d.ts.map +1 -0
  590. package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.js +26 -0
  591. package/dist/esm/services/ProviderTracker/TrackedUtxoProvider.js.map +1 -0
  592. package/dist/esm/services/ProviderTracker/index.d.ts +10 -0
  593. package/dist/esm/services/ProviderTracker/index.d.ts.map +1 -0
  594. package/dist/esm/services/ProviderTracker/index.js +10 -0
  595. package/dist/esm/services/ProviderTracker/index.js.map +1 -0
  596. package/dist/esm/services/TipTracker.d.ts +23 -0
  597. package/dist/esm/services/TipTracker.d.ts.map +1 -0
  598. package/dist/esm/services/TipTracker.js +30 -0
  599. package/dist/esm/services/TipTracker.js.map +1 -0
  600. package/dist/esm/services/TransactionsTracker.d.ts +25 -0
  601. package/dist/esm/services/TransactionsTracker.d.ts.map +1 -0
  602. package/dist/esm/services/TransactionsTracker.js +86 -0
  603. package/dist/esm/services/TransactionsTracker.js.map +1 -0
  604. package/dist/esm/services/UtxoTracker.d.ts +21 -0
  605. package/dist/esm/services/UtxoTracker.d.ts.map +1 -0
  606. package/dist/esm/services/UtxoTracker.js +36 -0
  607. package/dist/esm/services/UtxoTracker.js.map +1 -0
  608. package/dist/esm/services/WalletUtil.d.ts +45 -0
  609. package/dist/esm/services/WalletUtil.d.ts.map +1 -0
  610. package/dist/esm/services/WalletUtil.js +75 -0
  611. package/dist/esm/services/WalletUtil.js.map +1 -0
  612. package/dist/esm/services/index.d.ts +12 -0
  613. package/dist/esm/services/index.d.ts.map +1 -0
  614. package/dist/{services/index.d.ts → esm/services/index.js} +5 -2
  615. package/dist/esm/services/index.js.map +1 -0
  616. package/dist/esm/services/types.d.ts +76 -0
  617. package/dist/esm/services/types.d.ts.map +1 -0
  618. package/dist/esm/services/types.js +16 -0
  619. package/dist/esm/services/types.js.map +1 -0
  620. package/dist/esm/services/util/coldObservableProvider.d.ts +12 -0
  621. package/dist/esm/services/util/coldObservableProvider.d.ts.map +1 -0
  622. package/dist/esm/services/util/coldObservableProvider.js +10 -0
  623. package/dist/esm/services/util/coldObservableProvider.js.map +1 -0
  624. package/dist/esm/services/util/connectionStatusTracker.d.ts +14 -0
  625. package/dist/esm/services/util/connectionStatusTracker.d.ts.map +1 -0
  626. package/dist/esm/services/util/connectionStatusTracker.js +8 -0
  627. package/dist/esm/services/util/connectionStatusTracker.js.map +1 -0
  628. package/dist/esm/services/util/equals.d.ts +15 -0
  629. package/dist/esm/services/util/equals.d.ts.map +1 -0
  630. package/dist/esm/services/util/equals.js +15 -0
  631. package/dist/esm/services/util/equals.js.map +1 -0
  632. package/dist/esm/services/util/index.d.ts +6 -0
  633. package/dist/esm/services/util/index.d.ts.map +1 -0
  634. package/dist/esm/services/util/index.js +6 -0
  635. package/dist/esm/services/util/index.js.map +1 -0
  636. package/dist/esm/services/util/persistentTrackerSubjects.d.ts +12 -0
  637. package/dist/esm/services/util/persistentTrackerSubjects.d.ts.map +1 -0
  638. package/dist/esm/services/util/persistentTrackerSubjects.js +22 -0
  639. package/dist/esm/services/util/persistentTrackerSubjects.js.map +1 -0
  640. package/dist/esm/services/util/trigger.d.ts +5 -0
  641. package/dist/esm/services/util/trigger.d.ts.map +1 -0
  642. package/dist/esm/services/util/trigger.js +5 -0
  643. package/dist/esm/services/util/trigger.js.map +1 -0
  644. package/dist/esm/setupWallet.d.ts +19 -0
  645. package/dist/esm/setupWallet.d.ts.map +1 -0
  646. package/dist/esm/setupWallet.js +9 -0
  647. package/dist/esm/setupWallet.js.map +1 -0
  648. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  649. package/dist/esm/types.d.ts +67 -0
  650. package/dist/esm/types.d.ts.map +1 -0
  651. package/dist/esm/types.js +2 -0
  652. package/dist/esm/types.js.map +1 -0
  653. package/package.json +65 -16
  654. package/dist/KeyManagement/InMemoryKeyManager.d.ts +0 -9
  655. package/dist/KeyManagement/InMemoryKeyManager.d.ts.map +0 -1
  656. package/dist/KeyManagement/InMemoryKeyManager.js +0 -94
  657. package/dist/KeyManagement/InMemoryKeyManager.js.map +0 -1
  658. package/dist/KeyManagement/errors/InvalidMnemonic.d.ts +0 -5
  659. package/dist/KeyManagement/errors/InvalidMnemonic.d.ts.map +0 -1
  660. package/dist/KeyManagement/errors/InvalidMnemonic.js +0 -13
  661. package/dist/KeyManagement/errors/InvalidMnemonic.js.map +0 -1
  662. package/dist/KeyManagement/errors/index.d.ts +0 -2
  663. package/dist/KeyManagement/errors/index.d.ts.map +0 -1
  664. package/dist/KeyManagement/errors/index.js +0 -6
  665. package/dist/KeyManagement/errors/index.js.map +0 -1
  666. package/dist/KeyManagement/index.d.ts +0 -5
  667. package/dist/KeyManagement/index.d.ts.map +0 -1
  668. package/dist/KeyManagement/index.js.map +0 -1
  669. package/dist/KeyManagement/types.d.ts +0 -30
  670. package/dist/KeyManagement/types.d.ts.map +0 -1
  671. package/dist/KeyManagement/types.js +0 -15
  672. package/dist/KeyManagement/types.js.map +0 -1
  673. package/dist/KeyManagement/util.d.ts +0 -6
  674. package/dist/KeyManagement/util.d.ts.map +0 -1
  675. package/dist/KeyManagement/util.js.map +0 -1
  676. package/dist/SingleAddressWallet.d.ts +0 -45
  677. package/dist/SingleAddressWallet.d.ts.map +0 -1
  678. package/dist/SingleAddressWallet.js +0 -158
  679. package/dist/SingleAddressWallet.js.map +0 -1
  680. package/dist/Transaction/computeImplicitCoin.d.ts +0 -4
  681. package/dist/Transaction/computeImplicitCoin.d.ts.map +0 -1
  682. package/dist/Transaction/computeImplicitCoin.js +0 -21
  683. package/dist/Transaction/computeImplicitCoin.js.map +0 -1
  684. package/dist/Transaction/createTransactionInternals.d.ts +0 -16
  685. package/dist/Transaction/createTransactionInternals.d.ts.map +0 -1
  686. package/dist/Transaction/createTransactionInternals.js +0 -28
  687. package/dist/Transaction/createTransactionInternals.js.map +0 -1
  688. package/dist/Transaction/ensureValidityInterval.d.ts.map +0 -1
  689. package/dist/Transaction/ensureValidityInterval.js.map +0 -1
  690. package/dist/Transaction/index.d.ts.map +0 -1
  691. package/dist/Transaction/index.js.map +0 -1
  692. package/dist/index.d.ts.map +0 -1
  693. package/dist/index.js.map +0 -1
  694. package/dist/services/AssetsTracker.d.ts +0 -16
  695. package/dist/services/AssetsTracker.d.ts.map +0 -1
  696. package/dist/services/AssetsTracker.js +0 -13
  697. package/dist/services/AssetsTracker.js.map +0 -1
  698. package/dist/services/BalanceTracker.d.ts.map +0 -1
  699. package/dist/services/BalanceTracker.js +0 -43
  700. package/dist/services/BalanceTracker.js.map +0 -1
  701. package/dist/services/DelegationTracker/DelegationTracker.d.ts +0 -26
  702. package/dist/services/DelegationTracker/DelegationTracker.d.ts.map +0 -1
  703. package/dist/services/DelegationTracker/DelegationTracker.js +0 -39
  704. package/dist/services/DelegationTracker/DelegationTracker.js.map +0 -1
  705. package/dist/services/DelegationTracker/RewardAccounts.d.ts.map +0 -1
  706. package/dist/services/DelegationTracker/RewardAccounts.js +0 -86
  707. package/dist/services/DelegationTracker/RewardAccounts.js.map +0 -1
  708. package/dist/services/DelegationTracker/RewardsHistory.d.ts +0 -14
  709. package/dist/services/DelegationTracker/RewardsHistory.d.ts.map +0 -1
  710. package/dist/services/DelegationTracker/RewardsHistory.js +0 -27
  711. package/dist/services/DelegationTracker/RewardsHistory.js.map +0 -1
  712. package/dist/services/DelegationTracker/index.d.ts.map +0 -1
  713. package/dist/services/DelegationTracker/index.js.map +0 -1
  714. package/dist/services/DelegationTracker/transactionCertificates.d.ts.map +0 -1
  715. package/dist/services/DelegationTracker/transactionCertificates.js +0 -33
  716. package/dist/services/DelegationTracker/transactionCertificates.js.map +0 -1
  717. package/dist/services/DelegationTracker/types.d.ts.map +0 -1
  718. package/dist/services/DelegationTracker/types.js.map +0 -1
  719. package/dist/services/TransactionError.d.ts +0 -15
  720. package/dist/services/TransactionError.d.ts.map +0 -1
  721. package/dist/services/TransactionError.js +0 -23
  722. package/dist/services/TransactionError.js.map +0 -1
  723. package/dist/services/TransactionsTracker.d.ts +0 -22
  724. package/dist/services/TransactionsTracker.d.ts.map +0 -1
  725. package/dist/services/TransactionsTracker.js +0 -75
  726. package/dist/services/TransactionsTracker.js.map +0 -1
  727. package/dist/services/UtxoTracker.d.ts +0 -18
  728. package/dist/services/UtxoTracker.d.ts.map +0 -1
  729. package/dist/services/UtxoTracker.js +0 -20
  730. package/dist/services/UtxoTracker.js.map +0 -1
  731. package/dist/services/index.d.ts.map +0 -1
  732. package/dist/services/index.js.map +0 -1
  733. package/dist/services/types.d.ts.map +0 -1
  734. package/dist/services/types.js +0 -16
  735. package/dist/services/types.js.map +0 -1
  736. package/dist/services/util/SyncableIntervalTrackerSubject.d.ts +0 -19
  737. package/dist/services/util/SyncableIntervalTrackerSubject.d.ts.map +0 -1
  738. package/dist/services/util/SyncableIntervalTrackerSubject.js.map +0 -1
  739. package/dist/services/util/TrackerSubject.d.ts +0 -14
  740. package/dist/services/util/TrackerSubject.d.ts.map +0 -1
  741. package/dist/services/util/TrackerSubject.js +0 -46
  742. package/dist/services/util/TrackerSubject.js.map +0 -1
  743. package/dist/services/util/coldObservableProvider.d.ts +0 -4
  744. package/dist/services/util/coldObservableProvider.d.ts.map +0 -1
  745. package/dist/services/util/coldObservableProvider.js +0 -14
  746. package/dist/services/util/coldObservableProvider.js.map +0 -1
  747. package/dist/services/util/equals.d.ts +0 -9
  748. package/dist/services/util/equals.d.ts.map +0 -1
  749. package/dist/services/util/equals.js +0 -19
  750. package/dist/services/util/equals.js.map +0 -1
  751. package/dist/services/util/index.d.ts +0 -6
  752. package/dist/services/util/index.d.ts.map +0 -1
  753. package/dist/services/util/index.js.map +0 -1
  754. package/dist/services/util/trigger.d.ts +0 -5
  755. package/dist/services/util/trigger.d.ts.map +0 -1
  756. package/dist/services/util/trigger.js +0 -9
  757. package/dist/services/util/trigger.js.map +0 -1
  758. package/dist/types.d.ts +0 -35
  759. package/dist/types.d.ts.map +0 -1
  760. 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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -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":"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"}
@@ -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,5 @@
1
+ export * from './RewardsHistory';
2
+ export * from './DelegationTracker';
3
+ export * from './RewardAccounts';
4
+ export * from './transactionCertificates';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -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,5 @@
1
+ export * from './RewardsHistory';
2
+ export * from './DelegationTracker';
3
+ export * from './RewardAccounts';
4
+ export * from './transactionCertificates';
5
+ //# sourceMappingURL=index.js.map
@@ -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,6 @@
1
+ import { Cardano } from '@cardano-sdk/core';
2
+ export interface TxWithEpoch {
3
+ tx: Cardano.TxAlonzo;
4
+ epoch: Cardano.Epoch;
5
+ }
6
+ //# sourceMappingURL=types.d.ts.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -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"}