@bsv/wallet-toolbox-client 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/src/Wallet.d.ts +83 -0
- package/out/src/Wallet.d.ts.map +1 -0
- package/out/src/Wallet.js +415 -0
- package/out/src/Wallet.js.map +1 -0
- package/out/src/index.client.d.ts +8 -0
- package/out/src/index.client.d.ts.map +1 -0
- package/out/src/index.client.js +47 -0
- package/out/src/index.client.js.map +1 -0
- package/out/src/monitor/Monitor.d.ts +89 -0
- package/out/src/monitor/Monitor.d.ts.map +1 -0
- package/out/src/monitor/Monitor.js +253 -0
- package/out/src/monitor/Monitor.js.map +1 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +53 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.js +197 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -0
- package/out/src/monitor/tasks/TaskClock.d.ts +14 -0
- package/out/src/monitor/tasks/TaskClock.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskClock.js +27 -0
- package/out/src/monitor/tasks/TaskClock.js.map +1 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.d.ts +20 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.js +52 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -0
- package/out/src/monitor/tasks/TaskNewHeader.d.ts +15 -0
- package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskNewHeader.js +45 -0
- package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -0
- package/out/src/monitor/tasks/TaskPurge.d.ts +45 -0
- package/out/src/monitor/tasks/TaskPurge.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskPurge.js +35 -0
- package/out/src/monitor/tasks/TaskPurge.js.map +1 -0
- package/out/src/monitor/tasks/TaskReviewStatus.d.ts +26 -0
- package/out/src/monitor/tasks/TaskReviewStatus.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskReviewStatus.js +44 -0
- package/out/src/monitor/tasks/TaskReviewStatus.js.map +1 -0
- package/out/src/monitor/tasks/TaskSendWaiting.d.ts +32 -0
- package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskSendWaiting.js +99 -0
- package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts +12 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.js +22 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.js.map +1 -0
- package/out/src/monitor/tasks/WalletMonitorTask.d.ts +40 -0
- package/out/src/monitor/tasks/WalletMonitorTask.d.ts.map +1 -0
- package/out/src/monitor/tasks/WalletMonitorTask.js +37 -0
- package/out/src/monitor/tasks/WalletMonitorTask.js.map +1 -0
- package/out/src/sdk/CertOps.d.ts +66 -0
- package/out/src/sdk/CertOps.d.ts.map +1 -0
- package/out/src/sdk/CertOps.js +198 -0
- package/out/src/sdk/CertOps.js.map +1 -0
- package/out/src/sdk/PrivilegedKeyManager.d.ts +125 -0
- package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -0
- package/out/src/sdk/PrivilegedKeyManager.js +293 -0
- package/out/src/sdk/PrivilegedKeyManager.js.map +1 -0
- package/out/src/sdk/StorageSyncReader.d.ts +121 -0
- package/out/src/sdk/StorageSyncReader.d.ts.map +1 -0
- package/out/src/sdk/StorageSyncReader.js +3 -0
- package/out/src/sdk/StorageSyncReader.js.map +1 -0
- package/out/src/sdk/StorageSyncReaderWriter.d.ts +89 -0
- package/out/src/sdk/StorageSyncReaderWriter.d.ts.map +1 -0
- package/out/src/sdk/StorageSyncReaderWriter.js +3 -0
- package/out/src/sdk/StorageSyncReaderWriter.js.map +1 -0
- package/out/src/sdk/WERR_errors.d.ts +90 -0
- package/out/src/sdk/WERR_errors.d.ts.map +1 -0
- package/out/src/sdk/WERR_errors.js +128 -0
- package/out/src/sdk/WERR_errors.js.map +1 -0
- package/out/src/sdk/WalletError.d.ts +45 -0
- package/out/src/sdk/WalletError.d.ts.map +1 -0
- package/out/src/sdk/WalletError.js +122 -0
- package/out/src/sdk/WalletError.js.map +1 -0
- package/out/src/sdk/WalletServices.interfaces.d.ts +325 -0
- package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -0
- package/out/src/sdk/WalletServices.interfaces.js +3 -0
- package/out/src/sdk/WalletServices.interfaces.js.map +1 -0
- package/out/src/sdk/WalletSigner.interfaces.d.ts +10 -0
- package/out/src/sdk/WalletSigner.interfaces.d.ts.map +1 -0
- package/out/src/sdk/WalletSigner.interfaces.js +3 -0
- package/out/src/sdk/WalletSigner.interfaces.js.map +1 -0
- package/out/src/sdk/WalletStorage.interfaces.d.ts +299 -0
- package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -0
- package/out/src/sdk/WalletStorage.interfaces.js +3 -0
- package/out/src/sdk/WalletStorage.interfaces.js.map +1 -0
- package/out/src/sdk/index.d.ts +12 -0
- package/out/src/sdk/index.d.ts.map +1 -0
- package/out/src/sdk/index.js +28 -0
- package/out/src/sdk/index.js.map +1 -0
- package/out/src/sdk/types.d.ts +74 -0
- package/out/src/sdk/types.d.ts.map +1 -0
- package/out/src/sdk/types.js +20 -0
- package/out/src/sdk/types.js.map +1 -0
- package/out/src/sdk/validationHelpers.d.ts +288 -0
- package/out/src/sdk/validationHelpers.d.ts.map +1 -0
- package/out/src/sdk/validationHelpers.js +630 -0
- package/out/src/sdk/validationHelpers.js.map +1 -0
- package/out/src/services/ServiceCollection.d.ts +25 -0
- package/out/src/services/ServiceCollection.d.ts.map +1 -0
- package/out/src/services/ServiceCollection.js +43 -0
- package/out/src/services/ServiceCollection.js.map +1 -0
- package/out/src/services/Services.d.ts +60 -0
- package/out/src/services/Services.d.ts.map +1 -0
- package/out/src/services/Services.js +342 -0
- package/out/src/services/Services.js.map +1 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +15 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.js +51 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.d.ts +98 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.js +38 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +36 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +130 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/index.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/index.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/index.js +19 -0
- package/out/src/services/chaintracker/chaintracks/index.js.map +1 -0
- package/out/src/services/chaintracker/index.d.ts +3 -0
- package/out/src/services/chaintracker/index.d.ts.map +1 -0
- package/out/src/services/chaintracker/index.js +19 -0
- package/out/src/services/chaintracker/index.js.map +1 -0
- package/out/src/services/createDefaultWalletServicesOptions.d.ts +3 -0
- package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -0
- package/out/src/services/createDefaultWalletServicesOptions.js +34 -0
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -0
- package/out/src/services/providers/arcServices.d.ts +62 -0
- package/out/src/services/providers/arcServices.d.ts.map +1 -0
- package/out/src/services/providers/arcServices.js +368 -0
- package/out/src/services/providers/arcServices.js.map +1 -0
- package/out/src/services/providers/echangeRates.d.ts +12 -0
- package/out/src/services/providers/echangeRates.d.ts.map +1 -0
- package/out/src/services/providers/echangeRates.js +237 -0
- package/out/src/services/providers/echangeRates.js.map +1 -0
- package/out/src/services/providers/whatsonchain.d.ts +17 -0
- package/out/src/services/providers/whatsonchain.d.ts.map +1 -0
- package/out/src/services/providers/whatsonchain.js +130 -0
- package/out/src/services/providers/whatsonchain.js.map +1 -0
- package/out/src/signer/WalletSigner.d.ts +11 -0
- package/out/src/signer/WalletSigner.d.ts.map +1 -0
- package/out/src/signer/WalletSigner.js +13 -0
- package/out/src/signer/WalletSigner.js.map +1 -0
- package/out/src/signer/methods/acquireDirectCertificate.d.ts +4 -0
- package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -0
- package/out/src/signer/methods/acquireDirectCertificate.js +47 -0
- package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -0
- package/out/src/signer/methods/createAction.d.ts +7 -0
- package/out/src/signer/methods/createAction.d.ts.map +1 -0
- package/out/src/signer/methods/createAction.js +250 -0
- package/out/src/signer/methods/createAction.js.map +1 -0
- package/out/src/signer/methods/internalizeAction.d.ts +31 -0
- package/out/src/signer/methods/internalizeAction.d.ts.map +1 -0
- package/out/src/signer/methods/internalizeAction.js +95 -0
- package/out/src/signer/methods/internalizeAction.js.map +1 -0
- package/out/src/signer/methods/proveCertificate.d.ts +4 -0
- package/out/src/signer/methods/proveCertificate.d.ts.map +1 -0
- package/out/src/signer/methods/proveCertificate.js +45 -0
- package/out/src/signer/methods/proveCertificate.js.map +1 -0
- package/out/src/signer/methods/signAction.d.ts +6 -0
- package/out/src/signer/methods/signAction.d.ts.map +1 -0
- package/out/src/signer/methods/signAction.js +79 -0
- package/out/src/signer/methods/signAction.js.map +1 -0
- package/out/src/storage/StorageProvider.d.ts +140 -0
- package/out/src/storage/StorageProvider.d.ts.map +1 -0
- package/out/src/storage/StorageProvider.js +539 -0
- package/out/src/storage/StorageProvider.js.map +1 -0
- package/out/src/storage/StorageReader.d.ts +76 -0
- package/out/src/storage/StorageReader.d.ts.map +1 -0
- package/out/src/storage/StorageReader.js +124 -0
- package/out/src/storage/StorageReader.js.map +1 -0
- package/out/src/storage/StorageReaderWriter.d.ts +87 -0
- package/out/src/storage/StorageReaderWriter.d.ts.map +1 -0
- package/out/src/storage/StorageReaderWriter.js +337 -0
- package/out/src/storage/StorageReaderWriter.js.map +1 -0
- package/out/src/storage/StorageSyncReader.d.ts +33 -0
- package/out/src/storage/StorageSyncReader.d.ts.map +1 -0
- package/out/src/storage/StorageSyncReader.js +142 -0
- package/out/src/storage/StorageSyncReader.js.map +1 -0
- package/out/src/storage/WalletStorageManager.d.ts +103 -0
- package/out/src/storage/WalletStorageManager.d.ts.map +1 -0
- package/out/src/storage/WalletStorageManager.js +408 -0
- package/out/src/storage/WalletStorageManager.js.map +1 -0
- package/out/src/storage/index.client.d.ts +7 -0
- package/out/src/storage/index.client.d.ts.map +1 -0
- package/out/src/storage/index.client.js +46 -0
- package/out/src/storage/index.client.js.map +1 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +27 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js +148 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -0
- package/out/src/storage/methods/createAction.d.ts +23 -0
- package/out/src/storage/methods/createAction.d.ts.map +1 -0
- package/out/src/storage/methods/createAction.js +663 -0
- package/out/src/storage/methods/createAction.js.map +1 -0
- package/out/src/storage/methods/generateChange.d.ts +108 -0
- package/out/src/storage/methods/generateChange.d.ts.map +1 -0
- package/out/src/storage/methods/generateChange.js +422 -0
- package/out/src/storage/methods/generateChange.js.map +1 -0
- package/out/src/storage/methods/getBeefForTransaction.d.ts +22 -0
- package/out/src/storage/methods/getBeefForTransaction.d.ts.map +1 -0
- package/out/src/storage/methods/getBeefForTransaction.js +94 -0
- package/out/src/storage/methods/getBeefForTransaction.js.map +1 -0
- package/out/src/storage/methods/getSyncChunk.d.ts +10 -0
- package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -0
- package/out/src/storage/methods/getSyncChunk.js +271 -0
- package/out/src/storage/methods/getSyncChunk.js.map +1 -0
- package/out/src/storage/methods/internalizeAction.d.ts +38 -0
- package/out/src/storage/methods/internalizeAction.d.ts.map +1 -0
- package/out/src/storage/methods/internalizeAction.js +378 -0
- package/out/src/storage/methods/internalizeAction.js.map +1 -0
- package/out/src/storage/methods/listCertificates.d.ts +5 -0
- package/out/src/storage/methods/listCertificates.d.ts.map +1 -0
- package/out/src/storage/methods/listCertificates.js +68 -0
- package/out/src/storage/methods/listCertificates.js.map +1 -0
- package/out/src/storage/methods/processAction.d.ts +35 -0
- package/out/src/storage/methods/processAction.d.ts.map +1 -0
- package/out/src/storage/methods/processAction.js +271 -0
- package/out/src/storage/methods/processAction.js.map +1 -0
- package/out/src/storage/remoting/StorageClient.d.ts +56 -0
- package/out/src/storage/remoting/StorageClient.d.ts.map +1 -0
- package/out/src/storage/remoting/StorageClient.js +181 -0
- package/out/src/storage/remoting/StorageClient.js.map +1 -0
- package/out/src/storage/schema/entities/Certificate.d.ts +43 -0
- package/out/src/storage/schema/entities/Certificate.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Certificate.js +162 -0
- package/out/src/storage/schema/entities/Certificate.js.map +1 -0
- package/out/src/storage/schema/entities/CertificateField.d.ts +32 -0
- package/out/src/storage/schema/entities/CertificateField.d.ts.map +1 -0
- package/out/src/storage/schema/entities/CertificateField.js +114 -0
- package/out/src/storage/schema/entities/CertificateField.js.map +1 -0
- package/out/src/storage/schema/entities/Commission.d.ts +37 -0
- package/out/src/storage/schema/entities/Commission.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Commission.js +130 -0
- package/out/src/storage/schema/entities/Commission.js.map +1 -0
- package/out/src/storage/schema/entities/EntityBase.d.ts +105 -0
- package/out/src/storage/schema/entities/EntityBase.d.ts.map +1 -0
- package/out/src/storage/schema/entities/EntityBase.js +100 -0
- package/out/src/storage/schema/entities/EntityBase.js.map +1 -0
- package/out/src/storage/schema/entities/MergeEntity.d.ts +34 -0
- package/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -0
- package/out/src/storage/schema/entities/MergeEntity.js +57 -0
- package/out/src/storage/schema/entities/MergeEntity.js.map +1 -0
- package/out/src/storage/schema/entities/Output.d.ts +67 -0
- package/out/src/storage/schema/entities/Output.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Output.js +281 -0
- package/out/src/storage/schema/entities/Output.js.map +1 -0
- package/out/src/storage/schema/entities/OutputBasket.d.ts +35 -0
- package/out/src/storage/schema/entities/OutputBasket.d.ts.map +1 -0
- package/out/src/storage/schema/entities/OutputBasket.js +133 -0
- package/out/src/storage/schema/entities/OutputBasket.js.map +1 -0
- package/out/src/storage/schema/entities/OutputTag.d.ts +31 -0
- package/out/src/storage/schema/entities/OutputTag.d.ts.map +1 -0
- package/out/src/storage/schema/entities/OutputTag.js +104 -0
- package/out/src/storage/schema/entities/OutputTag.js.map +1 -0
- package/out/src/storage/schema/entities/OutputTagMap.d.ts +28 -0
- package/out/src/storage/schema/entities/OutputTagMap.d.ts.map +1 -0
- package/out/src/storage/schema/entities/OutputTagMap.js +101 -0
- package/out/src/storage/schema/entities/OutputTagMap.js.map +1 -0
- package/out/src/storage/schema/entities/ProvenTx.d.ts +84 -0
- package/out/src/storage/schema/entities/ProvenTx.d.ts.map +1 -0
- package/out/src/storage/schema/entities/ProvenTx.js +283 -0
- package/out/src/storage/schema/entities/ProvenTx.js.map +1 -0
- package/out/src/storage/schema/entities/ProvenTxReq.d.ts +130 -0
- package/out/src/storage/schema/entities/ProvenTxReq.d.ts.map +1 -0
- package/out/src/storage/schema/entities/ProvenTxReq.js +521 -0
- package/out/src/storage/schema/entities/ProvenTxReq.js.map +1 -0
- package/out/src/storage/schema/entities/SyncState.d.ts +66 -0
- package/out/src/storage/schema/entities/SyncState.d.ts.map +1 -0
- package/out/src/storage/schema/entities/SyncState.js +284 -0
- package/out/src/storage/schema/entities/SyncState.js.map +1 -0
- package/out/src/storage/schema/entities/Transaction.d.ts +67 -0
- package/out/src/storage/schema/entities/Transaction.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Transaction.js +264 -0
- package/out/src/storage/schema/entities/Transaction.js.map +1 -0
- package/out/src/storage/schema/entities/TxLabel.d.ts +31 -0
- package/out/src/storage/schema/entities/TxLabel.d.ts.map +1 -0
- package/out/src/storage/schema/entities/TxLabel.js +104 -0
- package/out/src/storage/schema/entities/TxLabel.js.map +1 -0
- package/out/src/storage/schema/entities/TxLabelMap.d.ts +28 -0
- package/out/src/storage/schema/entities/TxLabelMap.d.ts.map +1 -0
- package/out/src/storage/schema/entities/TxLabelMap.js +103 -0
- package/out/src/storage/schema/entities/TxLabelMap.js.map +1 -0
- package/out/src/storage/schema/entities/User.d.ts +29 -0
- package/out/src/storage/schema/entities/User.d.ts.map +1 -0
- package/out/src/storage/schema/entities/User.js +100 -0
- package/out/src/storage/schema/entities/User.js.map +1 -0
- package/out/src/storage/schema/entities/index.d.ts +17 -0
- package/out/src/storage/schema/entities/index.d.ts.map +1 -0
- package/out/src/storage/schema/entities/index.js +33 -0
- package/out/src/storage/schema/entities/index.js.map +1 -0
- package/out/src/storage/schema/tables/Certificate.d.ts +20 -0
- package/out/src/storage/schema/tables/Certificate.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Certificate.js +3 -0
- package/out/src/storage/schema/tables/Certificate.js.map +1 -0
- package/out/src/storage/schema/tables/CertificateField.d.ts +12 -0
- package/out/src/storage/schema/tables/CertificateField.d.ts.map +1 -0
- package/out/src/storage/schema/tables/CertificateField.js +3 -0
- package/out/src/storage/schema/tables/CertificateField.js.map +1 -0
- package/out/src/storage/schema/tables/Commission.d.ts +13 -0
- package/out/src/storage/schema/tables/Commission.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Commission.js +3 -0
- package/out/src/storage/schema/tables/Commission.js.map +1 -0
- package/out/src/storage/schema/tables/MonitorEvent.d.ts +9 -0
- package/out/src/storage/schema/tables/MonitorEvent.d.ts.map +1 -0
- package/out/src/storage/schema/tables/MonitorEvent.js +3 -0
- package/out/src/storage/schema/tables/MonitorEvent.js.map +1 -0
- package/out/src/storage/schema/tables/Output.d.ts +36 -0
- package/out/src/storage/schema/tables/Output.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Output.js +31 -0
- package/out/src/storage/schema/tables/Output.js.map +1 -0
- package/out/src/storage/schema/tables/OutputBasket.d.ts +12 -0
- package/out/src/storage/schema/tables/OutputBasket.d.ts.map +1 -0
- package/out/src/storage/schema/tables/OutputBasket.js +3 -0
- package/out/src/storage/schema/tables/OutputBasket.js.map +1 -0
- package/out/src/storage/schema/tables/OutputTag.d.ts +10 -0
- package/out/src/storage/schema/tables/OutputTag.d.ts.map +1 -0
- package/out/src/storage/schema/tables/OutputTag.js +3 -0
- package/out/src/storage/schema/tables/OutputTag.js.map +1 -0
- package/out/src/storage/schema/tables/OutputTagMap.d.ts +9 -0
- package/out/src/storage/schema/tables/OutputTagMap.d.ts.map +1 -0
- package/out/src/storage/schema/tables/OutputTagMap.js +3 -0
- package/out/src/storage/schema/tables/OutputTagMap.js.map +1 -0
- package/out/src/storage/schema/tables/ProvenTx.d.ts +14 -0
- package/out/src/storage/schema/tables/ProvenTx.d.ts.map +1 -0
- package/out/src/storage/schema/tables/ProvenTx.js +3 -0
- package/out/src/storage/schema/tables/ProvenTx.js.map +1 -0
- package/out/src/storage/schema/tables/ProvenTxReq.d.ts +64 -0
- package/out/src/storage/schema/tables/ProvenTxReq.d.ts.map +1 -0
- package/out/src/storage/schema/tables/ProvenTxReq.js +3 -0
- package/out/src/storage/schema/tables/ProvenTxReq.js.map +1 -0
- package/out/src/storage/schema/tables/Settings.d.ts +17 -0
- package/out/src/storage/schema/tables/Settings.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Settings.js +3 -0
- package/out/src/storage/schema/tables/Settings.js.map +1 -0
- package/out/src/storage/schema/tables/SyncState.d.ts +18 -0
- package/out/src/storage/schema/tables/SyncState.d.ts.map +1 -0
- package/out/src/storage/schema/tables/SyncState.js +3 -0
- package/out/src/storage/schema/tables/SyncState.js.map +1 -0
- package/out/src/storage/schema/tables/Transaction.d.ts +37 -0
- package/out/src/storage/schema/tables/Transaction.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Transaction.js +21 -0
- package/out/src/storage/schema/tables/Transaction.js.map +1 -0
- package/out/src/storage/schema/tables/TxLabel.d.ts +10 -0
- package/out/src/storage/schema/tables/TxLabel.d.ts.map +1 -0
- package/out/src/storage/schema/tables/TxLabel.js +3 -0
- package/out/src/storage/schema/tables/TxLabel.js.map +1 -0
- package/out/src/storage/schema/tables/TxLabelMap.d.ts +9 -0
- package/out/src/storage/schema/tables/TxLabelMap.d.ts.map +1 -0
- package/out/src/storage/schema/tables/TxLabelMap.js +3 -0
- package/out/src/storage/schema/tables/TxLabelMap.js.map +1 -0
- package/out/src/storage/schema/tables/User.d.ts +16 -0
- package/out/src/storage/schema/tables/User.d.ts.map +1 -0
- package/out/src/storage/schema/tables/User.js +3 -0
- package/out/src/storage/schema/tables/User.js.map +1 -0
- package/out/src/storage/schema/tables/index.d.ts +17 -0
- package/out/src/storage/schema/tables/index.d.ts.map +1 -0
- package/out/src/storage/schema/tables/index.js +33 -0
- package/out/src/storage/schema/tables/index.js.map +1 -0
- package/out/src/utility/ScriptTemplateSABPPP.d.ts +25 -0
- package/out/src/utility/ScriptTemplateSABPPP.d.ts.map +1 -0
- package/out/src/utility/ScriptTemplateSABPPP.js +46 -0
- package/out/src/utility/ScriptTemplateSABPPP.js.map +1 -0
- package/out/src/utility/index.client.d.ts +7 -0
- package/out/src/utility/index.client.d.ts.map +1 -0
- package/out/src/utility/index.client.js +23 -0
- package/out/src/utility/index.client.js.map +1 -0
- package/out/src/utility/parseTxScriptOffsets.d.ts +14 -0
- package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -0
- package/out/src/utility/parseTxScriptOffsets.js +26 -0
- package/out/src/utility/parseTxScriptOffsets.js.map +1 -0
- package/out/src/utility/stampLog.d.ts +18 -0
- package/out/src/utility/stampLog.d.ts.map +1 -0
- package/out/src/utility/stampLog.js +72 -0
- package/out/src/utility/stampLog.js.map +1 -0
- package/out/src/utility/tscProofToMerklePath.d.ts +8 -0
- package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -0
- package/out/src/utility/tscProofToMerklePath.js +41 -0
- package/out/src/utility/tscProofToMerklePath.js.map +1 -0
- package/out/src/utility/utilityHelpers.d.ts +129 -0
- package/out/src/utility/utilityHelpers.d.ts.map +1 -0
- package/out/src/utility/utilityHelpers.js +268 -0
- package/out/src/utility/utilityHelpers.js.map +1 -0
- package/out/src/utility/utilityHelpers.noBuffer.d.ts +9 -0
- package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -0
- package/out/src/utility/utilityHelpers.noBuffer.js +23 -0
- package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -0
- package/out/tsconfig.client.tsbuildinfo +1 -0
- package/package.json +27 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.internalizeAction = internalizeAction;
|
|
4
|
+
const sdk_1 = require("@bsv/sdk");
|
|
5
|
+
const index_client_1 = require("../../index.client");
|
|
6
|
+
/**
|
|
7
|
+
* Internalize Action allows a wallet to take ownership of outputs in a pre-existing transaction.
|
|
8
|
+
* The transaction may, or may not already be known to both the storage and user.
|
|
9
|
+
*
|
|
10
|
+
* Two types of outputs are handled: "wallet payments" and "basket insertions".
|
|
11
|
+
*
|
|
12
|
+
* A "basket insertion" output is considered a custom output and has no effect on the wallet's "balance".
|
|
13
|
+
*
|
|
14
|
+
* A "wallet payment" adds an outputs value to the wallet's change "balance". These outputs are assigned to the "default" basket.
|
|
15
|
+
*
|
|
16
|
+
* Processing starts with simple validation and then checks for a pre-existing transaction.
|
|
17
|
+
* If the transaction is already known to the user, then the outputs are reviewed against the existing outputs treatment,
|
|
18
|
+
* and merge rules are added to the arguments passed to the storage layer.
|
|
19
|
+
* The existing transaction must be in the 'unproven' or 'completed' status. Any other status is an error.
|
|
20
|
+
*
|
|
21
|
+
* When the transaction already exists, the description is updated. The isOutgoing sense is not changed.
|
|
22
|
+
*
|
|
23
|
+
* "basket insertion" Merge Rules:
|
|
24
|
+
* 1. The "default" basket may not be specified as the insertion basket.
|
|
25
|
+
* 2. A change output in the "default" basket may not be target of an insertion into a different basket.
|
|
26
|
+
* 3. These baskets do not affect the wallet's balance and are typed "custom".
|
|
27
|
+
*
|
|
28
|
+
* "wallet payment" Merge Rules:
|
|
29
|
+
* 1. Targetting an existing change "default" basket output results in a no-op. No error. No alterations made.
|
|
30
|
+
* 2. Targetting a previously "custom" non-change output converts it into a change output. This alters the transaction's `amount`, and the wallet balance.
|
|
31
|
+
*
|
|
32
|
+
*/
|
|
33
|
+
async function internalizeAction(wallet, auth, args) {
|
|
34
|
+
const vargs = index_client_1.sdk.validateInternalizeActionArgs(args);
|
|
35
|
+
const { ab, tx, txid } = await validateAtomicBeef();
|
|
36
|
+
const brc29ProtocolID = [2, '3241645161d8'];
|
|
37
|
+
for (const o of vargs.outputs) {
|
|
38
|
+
if (o.outputIndex < 0 || o.outputIndex >= tx.outputs.length)
|
|
39
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('outputIndex', `a valid output index in range 0 to ${tx.outputs.length - 1}`);
|
|
40
|
+
switch (o.protocol) {
|
|
41
|
+
case 'basket insertion':
|
|
42
|
+
setupBasketInsertionForOutput(o, vargs);
|
|
43
|
+
break;
|
|
44
|
+
case 'wallet payment':
|
|
45
|
+
setupWalletPaymentForOutput(o, vargs);
|
|
46
|
+
break;
|
|
47
|
+
default:
|
|
48
|
+
throw new index_client_1.sdk.WERR_INTERNAL(`unexpected protocol ${o.protocol}`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const r = await wallet.storage.internalizeAction(args);
|
|
52
|
+
return r;
|
|
53
|
+
function setupWalletPaymentForOutput(o, dargs) {
|
|
54
|
+
const p = o.paymentRemittance;
|
|
55
|
+
const output = tx.outputs[o.outputIndex];
|
|
56
|
+
if (!p)
|
|
57
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('paymentRemitance', `valid for protocol ${o.protocol}`);
|
|
58
|
+
const keyID = `${p.derivationPrefix} ${p.derivationSuffix}`;
|
|
59
|
+
const privKey = wallet.keyDeriver.derivePrivateKey(brc29ProtocolID, keyID, p.senderIdentityKey);
|
|
60
|
+
const expectedLockScript = new sdk_1.P2PKH().lock(privKey.toAddress());
|
|
61
|
+
if (output.lockingScript.toHex() !== expectedLockScript.toHex())
|
|
62
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('paymentRemitance', `locked by script conforming to BRC-29`);
|
|
63
|
+
}
|
|
64
|
+
function setupBasketInsertionForOutput(o, dargs) {
|
|
65
|
+
/*
|
|
66
|
+
No additional validations...
|
|
67
|
+
*/
|
|
68
|
+
}
|
|
69
|
+
async function validateAtomicBeef() {
|
|
70
|
+
const ab = sdk_1.Beef.fromBinary(vargs.tx);
|
|
71
|
+
// TODO: Add support for known txids...
|
|
72
|
+
const txValid = await ab.verify(await wallet.getServices().getChainTracker(), false);
|
|
73
|
+
if (!txValid || !ab.atomicTxid)
|
|
74
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('tx', 'valid AtomicBEEF');
|
|
75
|
+
const txid = ab.atomicTxid;
|
|
76
|
+
const btx = ab.findTxid(txid);
|
|
77
|
+
if (!btx)
|
|
78
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('tx', `valid AtomicBEEF with newest txid of ${txid}`);
|
|
79
|
+
const tx = btx.tx;
|
|
80
|
+
/*
|
|
81
|
+
for (const i of tx.inputs) {
|
|
82
|
+
if (!i.sourceTXID)
|
|
83
|
+
throw new sdk.WERR_INTERNAL('beef Transactions must have sourceTXIDs')
|
|
84
|
+
if (!i.sourceTransaction) {
|
|
85
|
+
const btx = ab.findTxid(i.sourceTXID)
|
|
86
|
+
if (!btx)
|
|
87
|
+
throw new sdk.WERR_INVALID_PARAMETER('tx', `valid AtomicBEEF and contain input transaction with txid ${i.sourceTXID}`);
|
|
88
|
+
i.sourceTransaction = btx.tx
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
*/
|
|
92
|
+
return { ab, tx, txid };
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=internalizeAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internalizeAction.js","sourceRoot":"","sources":["../../../../../src/signer/methods/internalizeAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ProveCertificateResult } from '@bsv/sdk';
|
|
2
|
+
import { sdk, Wallet } from '../../index.client';
|
|
3
|
+
export declare function proveCertificate(wallet: Wallet, auth: sdk.AuthId, vargs: sdk.ValidProveCertificateArgs): Promise<ProveCertificateResult>;
|
|
4
|
+
//# sourceMappingURL=proveCertificate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proveCertificate.d.ts","sourceRoot":"","sources":["../../../../../src/signer/methods/proveCertificate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACvE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAGhD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,GAAG,CAAC,MAAM,EAChB,KAAK,EAAE,GAAG,CAAC,yBAAyB,GACnC,OAAO,CAAC,sBAAsB,CAAC,CA0CjC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.proveCertificate = proveCertificate;
|
|
4
|
+
const index_client_1 = require("../../index.client");
|
|
5
|
+
async function proveCertificate(wallet, auth, vargs) {
|
|
6
|
+
const lcargs = {
|
|
7
|
+
partial: {
|
|
8
|
+
type: vargs.type,
|
|
9
|
+
serialNumber: vargs.serialNumber,
|
|
10
|
+
certifier: vargs.certifier,
|
|
11
|
+
subject: vargs.subject,
|
|
12
|
+
revocationOutpoint: vargs.revocationOutpoint,
|
|
13
|
+
signature: vargs.signature
|
|
14
|
+
},
|
|
15
|
+
certifiers: [],
|
|
16
|
+
types: [],
|
|
17
|
+
limit: 2,
|
|
18
|
+
offset: 0,
|
|
19
|
+
privileged: false
|
|
20
|
+
};
|
|
21
|
+
const lcr = await wallet.storage.listCertificates(lcargs);
|
|
22
|
+
if (lcr.certificates.length != 1)
|
|
23
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('args', `a unique certificate match`);
|
|
24
|
+
const storageCert = lcr.certificates[0];
|
|
25
|
+
let proveWallet = wallet;
|
|
26
|
+
if (storageCert.subject != wallet.identityKey) {
|
|
27
|
+
// Certificate must have been issued to privileged identity
|
|
28
|
+
if (!wallet.privilegedKeyManager)
|
|
29
|
+
throw new index_client_1.sdk.WERR_INVALID_OPERATION('Wallet is not privileged. proveCertificate fails.');
|
|
30
|
+
proveWallet = wallet.privilegedKeyManager;
|
|
31
|
+
}
|
|
32
|
+
const co = await index_client_1.sdk.CertOps.fromCounterparty(proveWallet, {
|
|
33
|
+
certificate: { ...storageCert },
|
|
34
|
+
keyring: storageCert.keyring,
|
|
35
|
+
counterparty: storageCert.verifier || storageCert.subject
|
|
36
|
+
});
|
|
37
|
+
const e = await co.exportForCounterparty(vargs.verifier, vargs.fieldsToReveal);
|
|
38
|
+
const pr = {
|
|
39
|
+
certificate: e.certificate,
|
|
40
|
+
verifier: e.counterparty,
|
|
41
|
+
keyringForVerifier: e.keyring
|
|
42
|
+
};
|
|
43
|
+
return pr;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=proveCertificate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proveCertificate.js","sourceRoot":"","sources":["../../../../../src/signer/methods/proveCertificate.ts"],"names":[],"mappings":";;AAIA,4CA8CC;AAjDD,qDAAgD;AAGzC,KAAK,UAAU,gBAAgB,CACpC,MAAc,EACd,IAAgB,EAChB,KAAoC;IAEpC,MAAM,MAAM,GAAkC;QAC5C,OAAO,EAAE;YACP,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B;QACD,UAAU,EAAE,EAAE;QACd,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,UAAU,EAAE,KAAK;KAClB,CAAA;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACzD,IAAI,GAAG,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC;QAC9B,MAAM,IAAI,kBAAG,CAAC,sBAAsB,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAA;IAC5E,MAAM,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IACvC,IAAI,WAAW,GAAkB,MAAM,CAAA;IACvC,IAAI,WAAW,CAAC,OAAO,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC9C,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,oBAAoB;YAC9B,MAAM,IAAI,kBAAG,CAAC,sBAAsB,CAClC,mDAAmD,CACpD,CAAA;QACH,WAAW,GAAG,MAAM,CAAC,oBAAoB,CAAA;IAC3C,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,kBAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE;QACzD,WAAW,EAAE,EAAE,GAAG,WAAW,EAAE;QAC/B,OAAO,EAAE,WAAW,CAAC,OAAQ;QAC7B,YAAY,EAAE,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,OAAO;KAC1D,CAAC,CAAA;IACF,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;IAC9E,MAAM,EAAE,GAA2B;QACjC,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,QAAQ,EAAE,CAAC,CAAC,YAAY;QACxB,kBAAkB,EAAE,CAAC,CAAC,OAAO;KAC9B,CAAA;IACD,OAAO,EAAE,CAAA;AACX,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Beef, Transaction as BsvTransaction, SignActionResult, SignActionSpend } from '@bsv/sdk';
|
|
2
|
+
import { PendingSignAction, sdk, Wallet } from '../../index.client';
|
|
3
|
+
export declare function signAction(wallet: Wallet, auth: sdk.AuthId, vargs: sdk.ValidSignActionArgs): Promise<SignActionResult>;
|
|
4
|
+
export declare function makeAtomicBeef(tx: BsvTransaction, beef: number[] | Beef): number[];
|
|
5
|
+
export declare function completeSignedTransaction(prior: PendingSignAction, spends: Record<number, SignActionSpend>, wallet: Wallet): Promise<BsvTransaction>;
|
|
6
|
+
//# sourceMappingURL=signAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signAction.d.ts","sourceRoot":"","sources":["../../../../../src/signer/methods/signAction.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,IAAI,EACJ,WAAW,IAAI,cAAc,EAC7B,gBAAgB,EAChB,eAAe,EAChB,MAAM,UAAU,CAAA;AACjB,OAAO,EAEL,iBAAiB,EAEjB,GAAG,EACH,MAAM,EACP,MAAM,oBAAoB,CAAA;AAG3B,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,GAAG,CAAC,MAAM,EAChB,KAAK,EAAE,GAAG,CAAC,mBAAmB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAsB3B;AAED,wBAAgB,cAAc,CAC5B,EAAE,EAAE,cAAc,EAClB,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,GACpB,MAAM,EAAE,CAIV;AAED,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EACvC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,cAAc,CAAC,CA8DzB"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.signAction = signAction;
|
|
5
|
+
exports.makeAtomicBeef = makeAtomicBeef;
|
|
6
|
+
exports.completeSignedTransaction = completeSignedTransaction;
|
|
7
|
+
const sdk_1 = require("@bsv/sdk");
|
|
8
|
+
const index_client_1 = require("../../index.client");
|
|
9
|
+
const createAction_1 = require("./createAction");
|
|
10
|
+
async function signAction(wallet, auth, vargs) {
|
|
11
|
+
const prior = wallet.pendingSignActions[vargs.reference];
|
|
12
|
+
if (!prior)
|
|
13
|
+
throw new index_client_1.sdk.WERR_NOT_IMPLEMENTED('recovery of out-of-session signAction reference data is not yet implemented.');
|
|
14
|
+
if (!prior.dcr.inputBeef)
|
|
15
|
+
throw new index_client_1.sdk.WERR_INTERNAL('prior.dcr.inputBeef must be valid');
|
|
16
|
+
prior.tx = await completeSignedTransaction(prior, vargs.spends, wallet);
|
|
17
|
+
const sendWithResults = await (0, createAction_1.processAction)(prior, wallet, auth, vargs);
|
|
18
|
+
const r = {
|
|
19
|
+
txid: prior.tx.id('hex'),
|
|
20
|
+
tx: vargs.options.returnTXIDOnly
|
|
21
|
+
? undefined
|
|
22
|
+
: makeAtomicBeef(prior.tx, prior.dcr.inputBeef),
|
|
23
|
+
sendWithResults
|
|
24
|
+
};
|
|
25
|
+
return r;
|
|
26
|
+
}
|
|
27
|
+
function makeAtomicBeef(tx, beef) {
|
|
28
|
+
if (Array.isArray(beef))
|
|
29
|
+
beef = sdk_1.Beef.fromBinary(beef);
|
|
30
|
+
beef.mergeTransaction(tx);
|
|
31
|
+
return beef.toBinaryAtomic(tx.id('hex'));
|
|
32
|
+
}
|
|
33
|
+
async function completeSignedTransaction(prior, spends, wallet) {
|
|
34
|
+
/////////////////////
|
|
35
|
+
// Insert the user provided unlocking scripts from "spends" arg
|
|
36
|
+
/////////////////////
|
|
37
|
+
for (const [key, spend] of Object.entries(spends)) {
|
|
38
|
+
const vin = Number(key);
|
|
39
|
+
const createInput = prior.args.inputs[vin];
|
|
40
|
+
const input = prior.tx.inputs[vin];
|
|
41
|
+
if (!createInput ||
|
|
42
|
+
!input ||
|
|
43
|
+
createInput.unlockingScript ||
|
|
44
|
+
!Number.isInteger(createInput.unlockingScriptLength))
|
|
45
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('args', `spend does not correspond to prior input with valid unlockingScriptLength.`);
|
|
46
|
+
if (spend.unlockingScript.length / 2 > createInput.unlockingScriptLength)
|
|
47
|
+
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('args', `spend unlockingScript length ${spend.unlockingScript.length} exceeds expected length ${createInput.unlockingScriptLength}`);
|
|
48
|
+
input.unlockingScript = (0, index_client_1.asBsvSdkScript)(spend.unlockingScript);
|
|
49
|
+
if (spend.sequenceNumber !== undefined)
|
|
50
|
+
input.sequence = spend.sequenceNumber;
|
|
51
|
+
}
|
|
52
|
+
const results = {
|
|
53
|
+
sdk: {}
|
|
54
|
+
};
|
|
55
|
+
/////////////////////
|
|
56
|
+
// Insert SABPPP unlock templates for wallet signed inputs
|
|
57
|
+
/////////////////////
|
|
58
|
+
for (const pdi of prior.pdi) {
|
|
59
|
+
const sabppp = new index_client_1.ScriptTemplateSABPPP({
|
|
60
|
+
derivationPrefix: pdi.derivationPrefix,
|
|
61
|
+
derivationSuffix: pdi.derivationSuffix,
|
|
62
|
+
keyDeriver: wallet.keyDeriver
|
|
63
|
+
});
|
|
64
|
+
const keys = wallet.getClientChangeKeyPair();
|
|
65
|
+
const lockerPrivKey = keys.privateKey;
|
|
66
|
+
const unlockerPubKey = pdi.unlockerPubKey || keys.publicKey;
|
|
67
|
+
const sourceSatoshis = pdi.sourceSatoshis;
|
|
68
|
+
const lockingScript = (0, index_client_1.asBsvSdkScript)(pdi.lockingScript);
|
|
69
|
+
const unlockTemplate = sabppp.unlock(lockerPrivKey, unlockerPubKey, sourceSatoshis, lockingScript);
|
|
70
|
+
const input = prior.tx.inputs[pdi.vin];
|
|
71
|
+
input.unlockingScriptTemplate = unlockTemplate;
|
|
72
|
+
}
|
|
73
|
+
/////////////////////
|
|
74
|
+
// Sign wallet signed inputs making transaction fully valid.
|
|
75
|
+
/////////////////////
|
|
76
|
+
await prior.tx.sign();
|
|
77
|
+
return prior.tx;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=signAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signAction.js","sourceRoot":"","sources":["../../../../../src/signer/methods/signAction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { AbortActionResult, Beef, InternalizeActionArgs, InternalizeActionResult, ListActionsResult, ListOutputsResult, PubKeyHex, ListCertificatesResult, TrustSelf, RelinquishCertificateArgs, RelinquishOutputArgs } from '@bsv/sdk';
|
|
2
|
+
import { entity, sdk, table } from '../index.client';
|
|
3
|
+
import { GetReqsAndBeefResult } from './methods/processAction';
|
|
4
|
+
import { PostReqsToNetworkResult } from './methods/attemptToPostReqsToNetwork';
|
|
5
|
+
import { StorageReaderWriter, StorageReaderWriterOptions } from './StorageReaderWriter';
|
|
6
|
+
export declare abstract class StorageProvider extends StorageReaderWriter implements sdk.WalletStorageProvider {
|
|
7
|
+
isDirty: boolean;
|
|
8
|
+
_services?: sdk.WalletServices;
|
|
9
|
+
feeModel: sdk.StorageFeeModel;
|
|
10
|
+
commissionSatoshis: number;
|
|
11
|
+
commissionPubKeyHex?: PubKeyHex;
|
|
12
|
+
maxRecursionDepth?: number;
|
|
13
|
+
static defaultOptions(): {
|
|
14
|
+
feeModel: sdk.StorageFeeModel;
|
|
15
|
+
commissionSatoshis: number;
|
|
16
|
+
commissionPubKeyHex: undefined;
|
|
17
|
+
};
|
|
18
|
+
static createStorageBaseOptions(chain: sdk.Chain): StorageProviderOptions;
|
|
19
|
+
constructor(options: StorageProviderOptions);
|
|
20
|
+
abstract reviewStatus(args: {
|
|
21
|
+
agedLimit: Date;
|
|
22
|
+
trx?: sdk.TrxToken;
|
|
23
|
+
}): Promise<{
|
|
24
|
+
log: string;
|
|
25
|
+
}>;
|
|
26
|
+
abstract purgeData(params: sdk.PurgeParams, trx?: sdk.TrxToken): Promise<sdk.PurgeResults>;
|
|
27
|
+
abstract allocateChangeInput(userId: number, basketId: number, targetSatoshis: number, exactSatoshis: number | undefined, excludeSending: boolean, transactionId: number): Promise<table.Output | undefined>;
|
|
28
|
+
abstract getProvenOrRawTx(txid: string, trx?: sdk.TrxToken): Promise<sdk.ProvenOrRawTx>;
|
|
29
|
+
abstract getRawTxOfKnownValidTransaction(txid?: string, offset?: number, length?: number, trx?: sdk.TrxToken): Promise<number[] | undefined>;
|
|
30
|
+
abstract getLabelsForTransactionId(transactionId?: number, trx?: sdk.TrxToken): Promise<table.TxLabel[]>;
|
|
31
|
+
abstract getTagsForOutputId(outputId: number, trx?: sdk.TrxToken): Promise<table.OutputTag[]>;
|
|
32
|
+
abstract listActions(auth: sdk.AuthId, args: sdk.ValidListActionsArgs): Promise<ListActionsResult>;
|
|
33
|
+
abstract listOutputs(auth: sdk.AuthId, args: sdk.ValidListOutputsArgs): Promise<ListOutputsResult>;
|
|
34
|
+
abstract countChangeInputs(userId: number, basketId: number, excludeSending: boolean): Promise<number>;
|
|
35
|
+
abstract findCertificatesAuth(auth: sdk.AuthId, args: sdk.FindCertificatesArgs): Promise<table.Certificate[]>;
|
|
36
|
+
abstract findOutputBasketsAuth(auth: sdk.AuthId, args: sdk.FindOutputBasketsArgs): Promise<table.OutputBasket[]>;
|
|
37
|
+
abstract findOutputsAuth(auth: sdk.AuthId, args: sdk.FindOutputsArgs): Promise<table.Output[]>;
|
|
38
|
+
abstract insertCertificateAuth(auth: sdk.AuthId, certificate: table.CertificateX): Promise<number>;
|
|
39
|
+
isStorageProvider(): boolean;
|
|
40
|
+
setServices(v: sdk.WalletServices): void;
|
|
41
|
+
getServices(): sdk.WalletServices;
|
|
42
|
+
abortAction(auth: sdk.AuthId, args: Partial<table.Transaction>): Promise<AbortActionResult>;
|
|
43
|
+
internalizeAction(auth: sdk.AuthId, args: InternalizeActionArgs): Promise<InternalizeActionResult>;
|
|
44
|
+
/**
|
|
45
|
+
* Given an array of transaction txids with current ProvenTxReq ready-to-share status,
|
|
46
|
+
* lookup their DojoProvenTxReqApi req records.
|
|
47
|
+
* For the txids with reqs and status still ready to send construct a single merged beef.
|
|
48
|
+
*
|
|
49
|
+
* @param txids
|
|
50
|
+
* @param knownTxids
|
|
51
|
+
* @param trx
|
|
52
|
+
*/
|
|
53
|
+
getReqsAndBeefToShareWithWorld(txids: string[], knownTxids: string[], trx?: sdk.TrxToken): Promise<GetReqsAndBeefResult>;
|
|
54
|
+
mergeReqToBeefToShareExternally(req: table.ProvenTxReq, mergeToBeef: Beef, knownTxids: string[], trx?: sdk.TrxToken): Promise<void>;
|
|
55
|
+
/**
|
|
56
|
+
* Checks if txid is a known valid ProvenTx and returns it if found.
|
|
57
|
+
* Next checks if txid is a current ProvenTxReq and returns that if found.
|
|
58
|
+
* If `newReq` is provided and an existing ProvenTxReq isn't found,
|
|
59
|
+
* use `newReq` to create a new ProvenTxReq.
|
|
60
|
+
*
|
|
61
|
+
* This is safe "findOrInsert" operation using retry if unique index constraint
|
|
62
|
+
* is violated by a race condition insert.
|
|
63
|
+
*
|
|
64
|
+
* @param txid
|
|
65
|
+
* @param newReq
|
|
66
|
+
* @param trx
|
|
67
|
+
* @returns
|
|
68
|
+
*/
|
|
69
|
+
getProvenOrReq(txid: string, newReq?: table.ProvenTxReq, trx?: sdk.TrxToken): Promise<sdk.StorageProvenOrReq>;
|
|
70
|
+
updateTransactionsStatus(transactionIds: number[], status: sdk.TransactionStatus): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* For all `status` values besides 'failed', just updates the transaction records status property.
|
|
73
|
+
*
|
|
74
|
+
* For 'status' of 'failed', attempts to make outputs previously allocated as inputs to this transaction usable again.
|
|
75
|
+
*
|
|
76
|
+
* @throws ERR_DOJO_COMPLETED_TX if current status is 'completed' and new status is not 'completed.
|
|
77
|
+
* @throws ERR_DOJO_PROVEN_TX if transaction has proof or provenTxId and new status is not 'completed'.
|
|
78
|
+
*
|
|
79
|
+
* @param status
|
|
80
|
+
* @param transactionId
|
|
81
|
+
* @param userId
|
|
82
|
+
* @param reference
|
|
83
|
+
* @param trx
|
|
84
|
+
*/
|
|
85
|
+
updateTransactionStatus(status: sdk.TransactionStatus, transactionId?: number, userId?: number, reference?: string, trx?: sdk.TrxToken): Promise<void>;
|
|
86
|
+
createAction(auth: sdk.AuthId, args: sdk.ValidCreateActionArgs): Promise<sdk.StorageCreateActionResult>;
|
|
87
|
+
processAction(auth: sdk.AuthId, args: sdk.StorageProcessActionArgs): Promise<sdk.StorageProcessActionResults>;
|
|
88
|
+
attemptToPostReqsToNetwork(reqs: entity.ProvenTxReq[], trx?: sdk.TrxToken): Promise<PostReqsToNetworkResult>;
|
|
89
|
+
listCertificates(auth: sdk.AuthId, args: sdk.ValidListCertificatesArgs): Promise<ListCertificatesResult>;
|
|
90
|
+
verifyKnownValidTransaction(txid: string, trx?: sdk.TrxToken): Promise<boolean>;
|
|
91
|
+
getValidBeefForKnownTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: sdk.TrxToken): Promise<Beef>;
|
|
92
|
+
getValidBeefForTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: sdk.TrxToken): Promise<Beef | undefined>;
|
|
93
|
+
getBeefForTransaction(txid: string, options: sdk.StorageGetBeefOptions): Promise<Beef>;
|
|
94
|
+
findMonitorEventById(id: number, trx?: sdk.TrxToken): Promise<table.MonitorEvent | undefined>;
|
|
95
|
+
relinquishCertificate(auth: sdk.AuthId, args: RelinquishCertificateArgs): Promise<number>;
|
|
96
|
+
relinquishOutput(auth: sdk.AuthId, args: RelinquishOutputArgs): Promise<number>;
|
|
97
|
+
processSyncChunk(args: sdk.RequestSyncChunkArgs, chunk: sdk.SyncChunk): Promise<sdk.ProcessSyncChunkResult>;
|
|
98
|
+
/**
|
|
99
|
+
* Handles storage changes when a valid MerklePath and mined block header are found for a ProvenTxReq txid.
|
|
100
|
+
*
|
|
101
|
+
* Performs the following storage updates (typically):
|
|
102
|
+
* 1. Lookup the exising `ProvenTxReq` record for its rawTx
|
|
103
|
+
* 2. Insert a new ProvenTx record using properties from `args` and rawTx, yielding a new provenTxId
|
|
104
|
+
* 3. Update ProvenTxReq record with status 'completed' and new provenTxId value (and history of status changed)
|
|
105
|
+
* 4. Unpack notify transactionIds from req and update each transaction's status to 'completed', provenTxId value.
|
|
106
|
+
* 5. Update ProvenTxReq history again to record that transactions have been notified.
|
|
107
|
+
* 6. Return results...
|
|
108
|
+
*
|
|
109
|
+
* Alterations of "typically" to handle:
|
|
110
|
+
*/
|
|
111
|
+
updateProvenTxReqWithNewProvenTx(args: sdk.UpdateProvenTxReqWithNewProvenTxArgs): Promise<sdk.UpdateProvenTxReqWithNewProvenTxResult>;
|
|
112
|
+
/**
|
|
113
|
+
* For each spendable output in the 'default' basket of the authenticated user,
|
|
114
|
+
* verify that the output script, satoshis, vout and txid match that of an output
|
|
115
|
+
* still in the mempool of at least one service provider.
|
|
116
|
+
*
|
|
117
|
+
* @returns object with invalidSpendableOutputs array. A good result is an empty array.
|
|
118
|
+
*/
|
|
119
|
+
confirmSpendableOutputs(): Promise<{
|
|
120
|
+
invalidSpendableOutputs: table.Output[];
|
|
121
|
+
}>;
|
|
122
|
+
updateProvenTxReqDynamics(id: number, update: Partial<table.ProvenTxReqDynamics>, trx?: sdk.TrxToken): Promise<number>;
|
|
123
|
+
}
|
|
124
|
+
export interface StorageProviderOptions extends StorageReaderWriterOptions {
|
|
125
|
+
chain: sdk.Chain;
|
|
126
|
+
feeModel: sdk.StorageFeeModel;
|
|
127
|
+
/**
|
|
128
|
+
* Transactions created by this Storage can charge a fee per transaction.
|
|
129
|
+
* A value of zero disables commission fees.
|
|
130
|
+
*/
|
|
131
|
+
commissionSatoshis: number;
|
|
132
|
+
/**
|
|
133
|
+
* If commissionSatoshis is greater than zero, must be a valid public key hex string.
|
|
134
|
+
* The actual locking script for each commission will use a public key derived
|
|
135
|
+
* from this key by information stored in the commissions table.
|
|
136
|
+
*/
|
|
137
|
+
commissionPubKeyHex?: PubKeyHex;
|
|
138
|
+
}
|
|
139
|
+
export declare function validateStorageFeeModel(v?: sdk.StorageFeeModel): sdk.StorageFeeModel;
|
|
140
|
+
//# sourceMappingURL=StorageProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StorageProvider.d.ts","sourceRoot":"","sources":["../../../../src/storage/StorageProvider.ts"],"names":[],"mappings":"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"}
|