postchain-client 1.22.0 → 2.0.1
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/README.md +16 -0
- package/built/cjs/index.js +2205 -3742
- package/built/cjs/index.js.map +1 -1
- package/built/esm/index.js +10425 -11683
- package/built/esm/index.js.map +1 -1
- package/built/index.d.ts +3 -8
- package/built/index.js +2 -11
- package/built/index.js.map +1 -1
- package/built/mocks/handlers.d.ts +1 -1
- package/built/mocks/handlers.js +62 -21
- package/built/mocks/handlers.js.map +1 -1
- package/built/src/ICCF/IccfProofTxMaterialBuilder.d.ts +3 -2
- package/built/src/ICCF/IccfProofTxMaterialBuilder.js +23 -10
- package/built/src/ICCF/IccfProofTxMaterialBuilder.js.map +1 -1
- package/built/src/ICCF/types.d.ts +4 -1
- package/built/src/ICCF/utils.js +2 -2
- package/built/src/ICCF/utils.js.map +1 -1
- package/built/src/blockchainClient/blockchainClient.js +56 -53
- package/built/src/blockchainClient/blockchainClient.js.map +1 -1
- package/built/src/blockchainClient/clientStub.js +18 -16
- package/built/src/blockchainClient/clientStub.js.map +1 -1
- package/built/src/blockchainClient/enums.d.ts +5 -0
- package/built/src/blockchainClient/enums.js +6 -0
- package/built/src/blockchainClient/enums.js.map +1 -1
- package/built/src/blockchainClient/errors.d.ts +20 -0
- package/built/src/blockchainClient/errors.js +41 -0
- package/built/src/blockchainClient/errors.js.map +1 -1
- package/built/src/{restclient → blockchainClient}/failoverStrategies.d.ts +14 -0
- package/built/src/{restclient → blockchainClient}/failoverStrategies.js +104 -24
- package/built/src/blockchainClient/failoverStrategies.js.map +1 -0
- package/built/src/blockchainClient/httpUtil.d.ts +4 -0
- package/built/src/{restclient → blockchainClient}/httpUtil.js +27 -23
- package/built/src/blockchainClient/httpUtil.js.map +1 -0
- package/built/src/blockchainClient/interface.d.ts +48 -59
- package/built/src/{restclient → blockchainClient}/nodeManager.d.ts +3 -0
- package/built/src/{restclient → blockchainClient}/nodeManager.js +7 -0
- package/built/src/blockchainClient/nodeManager.js.map +1 -0
- package/built/src/blockchainClient/requestWithFailoverStrategy.d.ts +4 -0
- package/built/src/blockchainClient/requestWithFailoverStrategy.js +31 -0
- package/built/src/blockchainClient/requestWithFailoverStrategy.js.map +1 -0
- package/built/src/blockchainClient/types.d.ts +64 -20
- package/built/src/blockchainClient/utils.d.ts +47 -12
- package/built/src/blockchainClient/utils.js +149 -30
- package/built/src/blockchainClient/utils.js.map +1 -1
- package/built/src/blockchainClient/validation/merkleHash.js +2 -1
- package/built/src/blockchainClient/validation/merkleHash.js.map +1 -1
- package/built/src/blockchainClient/validation/rawGtx.d.ts +2 -0
- package/built/src/blockchainClient/validation/rawGtx.js +22 -0
- package/built/src/blockchainClient/validation/rawGtx.js.map +1 -0
- package/built/src/blockchainClient/validation/requests.d.ts +5 -2
- package/built/src/blockchainClient/validation/requests.js +26 -0
- package/built/src/blockchainClient/validation/requests.js.map +1 -1
- package/built/src/blockchainClient/validation/transactionStatusReponse.d.ts +2 -0
- package/built/src/blockchainClient/validation/transactionStatusReponse.js +24 -0
- package/built/src/blockchainClient/validation/transactionStatusReponse.js.map +1 -0
- package/built/src/blockchainClient/validation/txRid.js +1 -1
- package/built/src/blockchainClient/validation/txRid.js.map +1 -1
- package/built/src/encryption/encryption.d.ts +0 -1
- package/built/src/encryption/encryption.js +0 -2
- package/built/src/encryption/encryption.js.map +1 -1
- package/built/src/formatter.d.ts +5 -7
- package/built/src/formatter.js +10 -29
- package/built/src/formatter.js.map +1 -1
- package/built/src/gtv/index.d.ts +3 -2
- package/built/src/gtv/index.js +4 -6
- package/built/src/gtv/index.js.map +1 -1
- package/built/src/gtx/errors.d.ts +2 -1
- package/built/src/gtx/errors.js.map +1 -1
- package/built/src/gtx/gtx.d.ts +5 -2
- package/built/src/gtx/gtx.js +0 -7
- package/built/src/gtx/gtx.js.map +1 -1
- package/built/src/gtx/serialization.d.ts +0 -1
- package/built/src/gtx/serialization.js +0 -1
- package/built/src/gtx/serialization.js.map +1 -1
- package/built/src/gtx/types.d.ts +0 -8
- package/built/src/logger.d.ts +6 -9
- package/built/src/logger.js +8 -14
- package/built/src/logger.js.map +1 -1
- package/built/src/promiEvent/promiEventEmitter.d.ts +1 -8
- package/built/src/promiEvent/promiEventEmitter.js.map +1 -1
- package/built/src/utils/calculateTransactionRid.d.ts +1 -1
- package/built/src/utils/calculateTransactionRid.js +6 -6
- package/built/src/utils/calculateTransactionRid.js.map +1 -1
- package/built/src/utils/constants.d.ts +4 -0
- package/built/src/utils/constants.js +5 -0
- package/built/src/utils/constants.js.map +1 -0
- package/built/src/utils/decodeTransactionToGtx.d.ts +1 -1
- package/built/src/utils/decodeTransactionToGtx.js +4 -3
- package/built/src/utils/decodeTransactionToGtx.js.map +1 -1
- package/built/src/utils/encodeTransaction.d.ts +1 -1
- package/built/src/utils/encodeTransaction.js +4 -4
- package/built/src/utils/encodeTransaction.js.map +1 -1
- package/built/test/common/mocks.d.ts +118 -0
- package/built/test/common/mocks.js +239 -0
- package/built/test/common/mocks.js.map +1 -0
- package/built/test/{unit/gtx → common}/serializationtestobjects.d.ts +1 -1
- package/built/test/common/serializationtestobjects.js.map +1 -0
- package/built/test/common/setups.d.ts +27 -0
- package/built/test/common/setups.js +137 -0
- package/built/test/common/setups.js.map +1 -0
- package/built/test/{unit → common}/signatures.d.ts +0 -1
- package/built/test/{unit → common}/signatures.js +0 -1
- package/built/test/common/signatures.js.map +1 -0
- package/built/test/common/testData.js.map +1 -0
- package/built/test/{unit/validation → common}/validationMocks.d.ts +22 -2
- package/built/test/{unit/validation → common}/validationMocks.js +13 -1
- package/built/test/common/validationMocks.js.map +1 -0
- package/built/test/integration/clientGetBlockInfo.test.js +51 -0
- package/built/test/integration/clientGetBlockInfo.test.js.map +1 -0
- package/built/test/integration/clientGetRejectedTransactions.test.js +28 -0
- package/built/test/integration/clientGetRejectedTransactions.test.js.map +1 -0
- package/built/test/integration/clientGetTransaction.test.js +29 -0
- package/built/test/integration/clientGetTransaction.test.js.map +1 -0
- package/built/test/integration/clientGetTransactionStatus.test.js +71 -0
- package/built/test/integration/clientGetTransactionStatus.test.js.map +1 -0
- package/built/test/integration/clientGetWaitingTransaction.test.js +34 -0
- package/built/test/integration/clientGetWaitingTransaction.test.js.map +1 -0
- package/built/test/integration/clientGetWaitingTransactions.test.js +28 -0
- package/built/test/integration/clientGetWaitingTransactions.test.js.map +1 -0
- package/built/test/integration/clientIntegration.test.js +95 -0
- package/built/test/integration/clientIntegration.test.js.map +1 -0
- package/built/test/integration/clientQuery.test.js +380 -0
- package/built/test/integration/clientQuery.test.js.map +1 -0
- package/built/test/integration/clientSendTransaction.test.js +86 -0
- package/built/test/integration/clientSendTransaction.test.js.map +1 -0
- package/built/test/integration/clientSignAndSendUniqueTransaction.test.js +75 -0
- package/built/test/integration/clientSignAndSendUniqueTransaction.test.js.map +1 -0
- package/built/test/integration/clientSignTransaction.test.js +77 -0
- package/built/test/integration/clientSignTransaction.test.js.map +1 -0
- package/built/test/integration/{blockchainClientUtils.test.js → clientUtils.test.js} +13 -8
- package/built/test/integration/clientUtils.test.js.map +1 -0
- package/built/test/integration/createClientIntegration.test.js +158 -0
- package/built/test/integration/createClientIntegration.test.js.map +1 -0
- package/built/test/integration/encodeTransaction.test.js +3 -6
- package/built/test/integration/encodeTransaction.test.js.map +1 -1
- package/built/test/integration/getTransactionsInfo.test.js +17 -26
- package/built/test/integration/getTransactionsInfo.test.js.map +1 -1
- package/built/test/integration/signAndSendUniqueTransaction.test.js +26 -19
- package/built/test/integration/signAndSendUniqueTransaction.test.js.map +1 -1
- package/built/test/integrationChromiaNetwork/createIccfProofTx.test.js +59 -0
- package/built/test/integrationChromiaNetwork/createIccfProofTx.test.js.map +1 -0
- package/built/test/{integrationDevnet → integrationChromiaNetwork}/getAnchoringStatusForBlockRid.test.js +9 -15
- package/built/test/integrationChromiaNetwork/getAnchoringStatusForBlockRid.test.js.map +1 -0
- package/built/test/{integrationDevnet → integrationChromiaNetwork}/getTransactionConfirmationLevel.test.js +7 -13
- package/built/test/integrationChromiaNetwork/getTransactionConfirmationLevel.test.js.map +1 -0
- package/built/test/integrationChromiaNetwork/getTransactionStatus.test.js +45 -0
- package/built/test/integrationChromiaNetwork/getTransactionStatus.test.js.map +1 -0
- package/built/test/integrationChromiaNetwork/isBlockAnchored.test.js +35 -0
- package/built/test/integrationChromiaNetwork/isBlockAnchored.test.js.map +1 -0
- package/built/test/integrationChromiaNetwork/merkleHashIntegration.test.d.ts +1 -0
- package/built/test/integrationChromiaNetwork/merkleHashIntegration.test.js +134 -0
- package/built/test/integrationChromiaNetwork/merkleHashIntegration.test.js.map +1 -0
- package/built/test/integrationChromiaNetwork/nodeDiscovery.test.d.ts +1 -0
- package/built/test/integrationChromiaNetwork/nodeDiscovery.test.js +26 -0
- package/built/test/integrationChromiaNetwork/nodeDiscovery.test.js.map +1 -0
- package/built/test/integrationChromiaNetwork/requestWithFailoverStrategy.test.d.ts +1 -0
- package/built/test/integrationChromiaNetwork/requestWithFailoverStrategy.test.js +84 -0
- package/built/test/integrationChromiaNetwork/requestWithFailoverStrategy.test.js.map +1 -0
- package/built/test/integrationChromiaNetwork/signAndSendUniqueTransaction.test.d.ts +1 -0
- package/built/test/{integrationDevnet → integrationChromiaNetwork}/signAndSendUniqueTransaction.test.js +27 -44
- package/built/test/integrationChromiaNetwork/signAndSendUniqueTransaction.test.js.map +1 -0
- package/built/test/manual/iccfManually.test.js +18 -27
- package/built/test/manual/iccfManually.test.js.map +1 -1
- package/built/test/pcctf/getSuites.test.d.ts +1 -0
- package/built/test/pcctf/getSuites.test.js +106 -0
- package/built/test/pcctf/getSuites.test.js.map +1 -0
- package/built/test/pcctf/helpers.d.ts +92 -0
- package/built/test/pcctf/helpers.js +239 -0
- package/built/test/pcctf/helpers.js.map +1 -0
- package/built/test/unit/ICCF/iccf.test.js +63 -158
- package/built/test/unit/ICCF/iccf.test.js.map +1 -1
- package/built/test/unit/ICCF/iccfProofMaterialBuilder.test.d.ts +1 -2
- package/built/test/unit/ICCF/iccfProofMaterialBuilder.test.js +101 -296
- package/built/test/unit/ICCF/iccfProofMaterialBuilder.test.js.map +1 -1
- package/built/test/unit/blockchainClient/client.getRejectedTransactions.test.d.ts +1 -0
- package/built/test/unit/blockchainClient/client.getRejectedTransactions.test.js +48 -0
- package/built/test/unit/blockchainClient/client.getRejectedTransactions.test.js.map +1 -0
- package/built/test/unit/blockchainClient/client.getWaitingTransaction.test.d.ts +1 -0
- package/built/test/unit/blockchainClient/client.getWaitingTransaction.test.js +38 -0
- package/built/test/unit/blockchainClient/client.getWaitingTransaction.test.js.map +1 -0
- package/built/test/unit/blockchainClient/client.getWaitingTransactions.test.d.ts +1 -0
- package/built/test/unit/blockchainClient/client.getWaitingTransactions.test.js +30 -0
- package/built/test/unit/blockchainClient/client.getWaitingTransactions.test.js.map +1 -0
- package/built/test/unit/blockchainClient/client.test.d.ts +1 -0
- package/built/test/unit/blockchainClient/client.test.js +177 -0
- package/built/test/unit/blockchainClient/client.test.js.map +1 -0
- package/built/test/unit/blockchainClient/clientCustomStatusCodes.test.js +26 -32
- package/built/test/unit/blockchainClient/clientCustomStatusCodes.test.js.map +1 -1
- package/built/test/unit/blockchainClient/getAnchoringStatusForBlockRid.test.js +26 -59
- package/built/test/unit/blockchainClient/getAnchoringStatusForBlockRid.test.js.map +1 -1
- package/built/test/unit/blockchainClient/getSystemAnchoringTransactionConfirmation.test.js +21 -38
- package/built/test/unit/blockchainClient/getSystemAnchoringTransactionConfirmation.test.js.map +1 -1
- package/built/test/unit/blockchainClient/getTransactionConfirmationLevel.test.js +77 -127
- package/built/test/unit/blockchainClient/getTransactionConfirmationLevel.test.js.map +1 -1
- package/built/test/unit/blockchainClient/sendTransaction.test.js +352 -675
- package/built/test/unit/blockchainClient/sendTransaction.test.js.map +1 -1
- package/built/test/unit/blockchainClient/setMerkleVersion.test.js +14 -28
- package/built/test/unit/blockchainClient/setMerkleVersion.test.js.map +1 -1
- package/built/test/unit/blockchainClient/signAndSendUniqueTransactionPromiEvents.test.js +31 -98
- package/built/test/unit/blockchainClient/signAndSendUniqueTransactionPromiEvents.test.js.map +1 -1
- package/built/test/unit/blockchainClient/statusPollIntervals.test.js +34 -54
- package/built/test/unit/blockchainClient/statusPollIntervals.test.js.map +1 -1
- package/built/test/unit/blockchainClient/util.test.js +74 -133
- package/built/test/unit/blockchainClient/util.test.js.map +1 -1
- package/built/test/unit/decodeTransactionToGtx.test.js +3 -4
- package/built/test/unit/decodeTransactionToGtx.test.js.map +1 -1
- package/built/test/unit/dump.test.js +2 -3
- package/built/test/unit/dump.test.js.map +1 -1
- package/built/test/unit/encryption/encryption.test.js +23 -32
- package/built/test/unit/encryption/encryption.test.js.map +1 -1
- package/built/test/unit/failoverStrategies.test.js +122 -114
- package/built/test/unit/failoverStrategies.test.js.map +1 -1
- package/built/test/unit/formatter.test.js +38 -42
- package/built/test/unit/formatter.test.js.map +1 -1
- package/built/test/unit/gtv/gtvHash.test.js +5 -6
- package/built/test/unit/gtv/gtvHash.test.js.map +1 -1
- package/built/test/unit/gtx/checkGTXSignature.test.js +5 -7
- package/built/test/unit/gtx/checkGTXSignature.test.js.map +1 -1
- package/built/test/unit/gtx/newSignatureProvider.test.js +9 -10
- package/built/test/unit/gtx/newSignatureProvider.test.js.map +1 -1
- package/built/test/unit/gtx/serialization.test.js +37 -138
- package/built/test/unit/gtx/serialization.test.js.map +1 -1
- package/built/test/unit/httpUtil.test.js +27 -18
- package/built/test/unit/httpUtil.test.js.map +1 -1
- package/built/test/unit/logger.test.js +23 -25
- package/built/test/unit/logger.test.js.map +1 -1
- package/built/test/unit/nodeMananger.test.js +62 -74
- package/built/test/unit/nodeMananger.test.js.map +1 -1
- package/built/test/unit/setOrdering.test.js +9 -9
- package/built/test/unit/setOrdering.test.js.map +1 -1
- package/built/test/unit/stickyNode.test.js +44 -54
- package/built/test/unit/stickyNode.test.js.map +1 -1
- package/built/test/unit/validation/anchoringTransaction.test.js +7 -8
- package/built/test/unit/validation/anchoringTransaction.test.js.map +1 -1
- package/built/test/unit/validation/blockIdentifier.test.js +7 -9
- package/built/test/unit/validation/blockIdentifier.test.js.map +1 -1
- package/built/test/unit/validation/bufferSchema.test.js +4 -5
- package/built/test/unit/validation/bufferSchema.test.js.map +1 -1
- package/built/test/unit/validation/networkSettings.test.js +11 -13
- package/built/test/unit/validation/networkSettings.test.js.map +1 -1
- package/built/test/unit/validation/rawGtx.test.d.ts +1 -0
- package/built/test/unit/validation/rawGtx.test.js +84 -0
- package/built/test/unit/validation/rawGtx.test.js.map +1 -0
- package/built/test/unit/validation/requests.test.js +80 -74
- package/built/test/unit/validation/requests.test.js.map +1 -1
- package/built/test/unit/validation/signMethod.test.js +8 -10
- package/built/test/unit/validation/signMethod.test.js.map +1 -1
- package/built/test/unit/validation/statusObject.test.d.ts +1 -0
- package/built/test/unit/validation/statusObject.test.js +91 -0
- package/built/test/unit/validation/statusObject.test.js.map +1 -0
- package/built/test/unit/validation/txRid.test.js +7 -9
- package/built/test/unit/validation/txRid.test.js.map +1 -1
- package/built/umd/index.js +31711 -31107
- package/built/umd/index.js.map +1 -1
- package/package.json +26 -22
- package/built/src/chromia/chromiaClientProvider.d.ts +0 -9
- package/built/src/chromia/chromiaClientProvider.js +0 -36
- package/built/src/chromia/chromiaClientProvider.js.map +0 -1
- package/built/src/chromia/interfaces.d.ts +0 -4
- package/built/src/chromia/interfaces.js +0 -2
- package/built/src/chromia/interfaces.js.map +0 -1
- package/built/src/constants.d.ts +0 -3
- package/built/src/constants.js +0 -4
- package/built/src/constants.js.map +0 -1
- package/built/src/gtx/gtxclient.d.ts +0 -3
- package/built/src/gtx/gtxclient.js +0 -96
- package/built/src/gtx/gtxclient.js.map +0 -1
- package/built/src/gtx/interfaces.d.ts +0 -91
- package/built/src/gtx/interfaces.js +0 -2
- package/built/src/gtx/interfaces.js.map +0 -1
- package/built/src/merkle/binarytree.d.ts +0 -131
- package/built/src/merkle/binarytree.js +0 -146
- package/built/src/merkle/binarytree.js.map +0 -1
- package/built/src/merkle/binarytreefactory.d.ts +0 -86
- package/built/src/merkle/binarytreefactory.js +0 -251
- package/built/src/merkle/binarytreefactory.js.map +0 -1
- package/built/src/merkle/merkleHelper.d.ts +0 -18
- package/built/src/merkle/merkleHelper.js +0 -110
- package/built/src/merkle/merkleHelper.js.map +0 -1
- package/built/src/merkle/merklehashcalculator.d.ts +0 -37
- package/built/src/merkle/merklehashcalculator.js +0 -73
- package/built/src/merkle/merklehashcalculator.js.map +0 -1
- package/built/src/merkle/path.d.ts +0 -151
- package/built/src/merkle/path.js +0 -306
- package/built/src/merkle/path.js.map +0 -1
- package/built/src/merkle/proof/merklehashcarrier.d.ts +0 -17
- package/built/src/merkle/proof/merklehashcarrier.js +0 -23
- package/built/src/merkle/proof/merklehashcarrier.js.map +0 -1
- package/built/src/merkle/proof/merklehashsummaryfactory.d.ts +0 -53
- package/built/src/merkle/proof/merklehashsummaryfactory.js +0 -82
- package/built/src/merkle/proof/merklehashsummaryfactory.js.map +0 -1
- package/built/src/merkle/proof/merkleproof.d.ts +0 -36
- package/built/src/merkle/proof/merkleproof.js +0 -61
- package/built/src/merkle/proof/merkleproof.js.map +0 -1
- package/built/src/merkle/proof/merkleprooftree.d.ts +0 -124
- package/built/src/merkle/proof/merkleprooftree.js +0 -117
- package/built/src/merkle/proof/merkleprooftree.js.map +0 -1
- package/built/src/merkle/proof/merkleprooftreefactory.d.ts +0 -47
- package/built/src/merkle/proof/merkleprooftreefactory.js +0 -123
- package/built/src/merkle/proof/merkleprooftreefactory.js.map +0 -1
- package/built/src/merkle/types.d.ts +0 -11
- package/built/src/merkle/types.js +0 -2
- package/built/src/merkle/types.js.map +0 -1
- package/built/src/restclient/enums.d.ts +0 -4
- package/built/src/restclient/enums.js +0 -6
- package/built/src/restclient/enums.js.map +0 -1
- package/built/src/restclient/errors.d.ts +0 -33
- package/built/src/restclient/errors.js +0 -63
- package/built/src/restclient/errors.js.map +0 -1
- package/built/src/restclient/failoverStrategies.js.map +0 -1
- package/built/src/restclient/httpUtil.d.ts +0 -6
- package/built/src/restclient/httpUtil.js.map +0 -1
- package/built/src/restclient/interfaces.d.ts +0 -68
- package/built/src/restclient/interfaces.js +0 -2
- package/built/src/restclient/interfaces.js.map +0 -1
- package/built/src/restclient/nodeManager.js.map +0 -1
- package/built/src/restclient/restclient.d.ts +0 -18
- package/built/src/restclient/restclient.js +0 -200
- package/built/src/restclient/restclient.js.map +0 -1
- package/built/src/restclient/restclientutil.d.ts +0 -32
- package/built/src/restclient/restclientutil.js +0 -141
- package/built/src/restclient/restclientutil.js.map +0 -1
- package/built/src/restclient/types.d.ts +0 -78
- package/built/src/restclient/types.js +0 -2
- package/built/src/restclient/types.js.map +0 -1
- package/built/test/integration/blockchainClientIntegration.test.js +0 -1075
- package/built/test/integration/blockchainClientIntegration.test.js.map +0 -1
- package/built/test/integration/blockchainClientUtils.test.js.map +0 -1
- package/built/test/integration/gtxClientIntegration.test.js +0 -334
- package/built/test/integration/gtxClientIntegration.test.js.map +0 -1
- package/built/test/integration/merkleIntegration.test.js +0 -138
- package/built/test/integration/merkleIntegration.test.js.map +0 -1
- package/built/test/integration/objectGenerator.d.ts +0 -3
- package/built/test/integration/objectGenerator.js +0 -17
- package/built/test/integration/objectGenerator.js.map +0 -1
- package/built/test/integration/restClientIntegration.test.js +0 -170
- package/built/test/integration/restClientIntegration.test.js.map +0 -1
- package/built/test/integration/testData.js.map +0 -1
- package/built/test/integrationDevnet/constants.d.ts +0 -1
- package/built/test/integrationDevnet/constants.js +0 -2
- package/built/test/integrationDevnet/constants.js.map +0 -1
- package/built/test/integrationDevnet/getAnchoringStatusForBlockRid.test.js.map +0 -1
- package/built/test/integrationDevnet/getTransactionConfirmationLevel.test.js.map +0 -1
- package/built/test/integrationDevnet/getTransactionStatus.test.js +0 -53
- package/built/test/integrationDevnet/getTransactionStatus.test.js.map +0 -1
- package/built/test/integrationDevnet/signAndSendUniqueTransaction.test.js.map +0 -1
- package/built/test/manual/chromiaClientProviderManually.test.js +0 -28
- package/built/test/manual/chromiaClientProviderManually.test.js.map +0 -1
- package/built/test/manual/restClientManually.test.js +0 -52
- package/built/test/manual/restClientManually.test.js.map +0 -1
- package/built/test/unit/ICCF/util.d.ts +0 -6
- package/built/test/unit/ICCF/util.js +0 -21
- package/built/test/unit/ICCF/util.js.map +0 -1
- package/built/test/unit/blockchainClient/blockchainClient.test.js +0 -287
- package/built/test/unit/blockchainClient/blockchainClient.test.js.map +0 -1
- package/built/test/unit/blockchainClient/helpers/sendTransaction.d.ts +0 -25
- package/built/test/unit/blockchainClient/helpers/sendTransaction.js +0 -56
- package/built/test/unit/blockchainClient/helpers/sendTransaction.js.map +0 -1
- package/built/test/unit/chromiaClientProvider.test.js +0 -70
- package/built/test/unit/chromiaClientProvider.test.js.map +0 -1
- package/built/test/unit/common/mocks.d.ts +0 -34
- package/built/test/unit/common/mocks.js +0 -69
- package/built/test/unit/common/mocks.js.map +0 -1
- package/built/test/unit/gtx/gtxClient.test.js +0 -97
- package/built/test/unit/gtx/gtxClient.test.js.map +0 -1
- package/built/test/unit/gtx/serializationtestobjects.js.map +0 -1
- package/built/test/unit/merkle/merkleHelper/merkleHelperTest.js +0 -87
- package/built/test/unit/merkle/merkleHelper/merkleHelperTest.js.map +0 -1
- package/built/test/unit/requestWithFailoverStrategy.test.js +0 -146
- package/built/test/unit/requestWithFailoverStrategy.test.js.map +0 -1
- package/built/test/unit/restClient.test.js +0 -389
- package/built/test/unit/restClient.test.js.map +0 -1
- package/built/test/unit/restClientUtil.test.js +0 -226
- package/built/test/unit/restClientUtil.test.js.map +0 -1
- package/built/test/unit/signatures.js.map +0 -1
- package/built/test/unit/validation/validationMocks.js.map +0 -1
- package/changelog.md +0 -586
- /package/built/test/{unit/gtx → common}/serializationtestobjects.js +0 -0
- /package/built/test/{integration → common}/testData.d.ts +0 -0
- /package/built/test/{integration → common}/testData.js +0 -0
- /package/built/test/integration/{blockchainClientIntegration.test.d.ts → clientGetBlockInfo.test.d.ts} +0 -0
- /package/built/test/integration/{blockchainClientUtils.test.d.ts → clientGetRejectedTransactions.test.d.ts} +0 -0
- /package/built/test/integration/{gtxClientIntegration.test.d.ts → clientGetTransaction.test.d.ts} +0 -0
- /package/built/test/integration/{merkleIntegration.test.d.ts → clientGetTransactionStatus.test.d.ts} +0 -0
- /package/built/test/integration/{restClientIntegration.test.d.ts → clientGetWaitingTransaction.test.d.ts} +0 -0
- /package/built/test/{integrationDevnet/getAnchoringStatusForBlockRid.test.d.ts → integration/clientGetWaitingTransactions.test.d.ts} +0 -0
- /package/built/test/{integrationDevnet/getTransactionConfirmationLevel.test.d.ts → integration/clientIntegration.test.d.ts} +0 -0
- /package/built/test/{integrationDevnet/getTransactionStatus.test.d.ts → integration/clientQuery.test.d.ts} +0 -0
- /package/built/test/{integrationDevnet/signAndSendUniqueTransaction.test.d.ts → integration/clientSendTransaction.test.d.ts} +0 -0
- /package/built/test/{manual/chromiaClientProviderManually.test.d.ts → integration/clientSignAndSendUniqueTransaction.test.d.ts} +0 -0
- /package/built/test/{manual/restClientManually.test.d.ts → integration/clientSignTransaction.test.d.ts} +0 -0
- /package/built/test/{unit/blockchainClient/blockchainClient.test.d.ts → integration/clientUtils.test.d.ts} +0 -0
- /package/built/test/{unit/chromiaClientProvider.test.d.ts → integration/createClientIntegration.test.d.ts} +0 -0
- /package/built/test/{unit/gtx/gtxClient.test.d.ts → integrationChromiaNetwork/createIccfProofTx.test.d.ts} +0 -0
- /package/built/test/{unit/merkle/merkleHelper/merkleHelperTest.d.ts → integrationChromiaNetwork/getAnchoringStatusForBlockRid.test.d.ts} +0 -0
- /package/built/test/{unit/requestWithFailoverStrategy.test.d.ts → integrationChromiaNetwork/getTransactionConfirmationLevel.test.d.ts} +0 -0
- /package/built/test/{unit/restClient.test.d.ts → integrationChromiaNetwork/getTransactionStatus.test.d.ts} +0 -0
- /package/built/test/{unit/restClientUtil.test.d.ts → integrationChromiaNetwork/isBlockAnchored.test.d.ts} +0 -0
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var BinaryTreeFactory = require('../binarytreefactory').BinaryTreeFactory;
|
|
3
|
-
var MerkleProofTreeFactory = require('./merkleprooftreefactory').MerkleProofTreeFactory;
|
|
4
|
-
var MerkleHashCalculator = require('../merklehashcalculator').MerkleHashCalculator;
|
|
5
|
-
var MerkleProofTree = require('./merkleprooftree').MerkleProofTree;
|
|
6
|
-
var MerkleProofElement = require('./merkleprooftree').MerkleProofElement;
|
|
7
|
-
var ProofHashedLeaf = require('./merkleprooftree').ProofHashedLeaf;
|
|
8
|
-
var ProofValueLeaf = require('./merkleprooftree').ProofValueLeaf;
|
|
9
|
-
var ProofNode = require('./merkleprooftree').ProofNode;
|
|
10
|
-
var MerkleHashSummary = require('./merklehashcarrier').MerkleHashSummary;
|
|
11
|
-
/**
|
|
12
|
-
*
|
|
13
|
-
* @param {BinaryTreeFactory} treeFactory
|
|
14
|
-
* @param {MerkleProofTreeFactory} proofFactory
|
|
15
|
-
*/
|
|
16
|
-
function MerkleHashSummaryFactory(treeFactory, proofFactory) {
|
|
17
|
-
this.treeFactory = treeFactory;
|
|
18
|
-
this.proofFactory = proofFactory;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* @param {any} value
|
|
22
|
-
* @param {MerkleHashCalculator} calculator
|
|
23
|
-
*/
|
|
24
|
-
MerkleHashSummaryFactory.prototype.calculateMerkleRoot = function (value, calculator, merkleHashVersion) {
|
|
25
|
-
var binaryTree = this.treeFactory.build(value, merkleHashVersion);
|
|
26
|
-
var proofTree = this.proofFactory.buildFromBinaryTree(binaryTree, calculator);
|
|
27
|
-
return this.calculateMerkleRootOfTree(proofTree, calculator);
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* @param {MerkleProofTree} value
|
|
31
|
-
* @param {MerkleHashCalculator} calculator
|
|
32
|
-
*/
|
|
33
|
-
MerkleHashSummaryFactory.prototype.calculateMerkleTreeRoot = function (tree, calculator, merkleHashVersion) {
|
|
34
|
-
return this.calculateMerkleRootOfTree(tree, calculator, merkleHashVersion);
|
|
35
|
-
};
|
|
36
|
-
/**
|
|
37
|
-
* @param {MerkleProofTree} proofTree
|
|
38
|
-
* @param {MerkleHashCalculator} calculator
|
|
39
|
-
*/
|
|
40
|
-
MerkleHashSummaryFactory.prototype.calculateMerkleRootOfTree = function (proofTree, calculator, merkleHashVersion) {
|
|
41
|
-
var calculatedSummary = this.calculateMerkleRootInternal(proofTree.root, calculator, merkleHashVersion);
|
|
42
|
-
return new MerkleHashSummary(calculatedSummary);
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* @param {MerkleProofElement} currentElement
|
|
46
|
-
* @param {MerkleHashCalculator} calculator
|
|
47
|
-
*/
|
|
48
|
-
MerkleHashSummaryFactory.prototype.calculateMerkleRootInternal = function (currentElement, calculator, merkleHashVersion) {
|
|
49
|
-
if (currentElement instanceof ProofHashedLeaf) {
|
|
50
|
-
return currentElement.merkleHash;
|
|
51
|
-
}
|
|
52
|
-
else if (currentElement instanceof ProofValueLeaf) {
|
|
53
|
-
var value = currentElement.content;
|
|
54
|
-
if (calculator.isContainerProofValueLeaf(value)) {
|
|
55
|
-
// We have a container value to prove, so need to convert the value to a binary tree, and THEN hash it
|
|
56
|
-
var merkleProofTree = this.buildProofTree(value, calculator, merkleHashVersion);
|
|
57
|
-
return this.calculateMerkleRootInternal(merkleProofTree.root, calculator, merkleHashVersion);
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
// This is a primitive value, just hash it
|
|
61
|
-
return calculator.calculateLeafHash(value, merkleHashVersion);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
else if (currentElement instanceof ProofNode) {
|
|
65
|
-
var left = this.calculateMerkleRootInternal(currentElement.left, calculator, merkleHashVersion);
|
|
66
|
-
var right = this.calculateMerkleRootInternal(currentElement.right, calculator, merkleHashVersion);
|
|
67
|
-
return calculator.calculateNodeHash(currentElement.prefix, left, right);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
throw new Error("Should have handled this type? " + typeof currentElement);
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
/**
|
|
74
|
-
* @param {any} value
|
|
75
|
-
* @param {MerkleHashCalculator} calculator
|
|
76
|
-
*/
|
|
77
|
-
MerkleHashSummaryFactory.prototype.buildProofTree = function (value, calculator, merkleHashVersion) {
|
|
78
|
-
var root = this.treeFactory.build(value, merkleHashVersion);
|
|
79
|
-
return this.proofFactory.buildFromBinaryTree(root, calculator);
|
|
80
|
-
};
|
|
81
|
-
module.exports = { MerkleHashSummaryFactory };
|
|
82
|
-
//# sourceMappingURL=merklehashsummaryfactory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merklehashsummaryfactory.js","sourceRoot":"","sources":["../../../../src/merkle/proof/merklehashsummaryfactory.js"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Calculates the merkle root hash of the structure.
|
|
3
|
-
*
|
|
4
|
-
* @param {any} value
|
|
5
|
-
* @param {MerkleHashCalculator} calculator describes the method we use for hashing and serialization
|
|
6
|
-
* @return the merkle root hash (32 bytes) of the data structure.
|
|
7
|
-
*/
|
|
8
|
-
export function merkleHash(value: any, calculator: MerkleHashCalculator, merkleHashVersion: any): Buffer;
|
|
9
|
-
/**
|
|
10
|
-
*
|
|
11
|
-
* @param {MerkleProofTree} tree
|
|
12
|
-
* @param {MerkleHashCalculator} calculator
|
|
13
|
-
*/
|
|
14
|
-
export function merkleTreeHash(tree: MerkleProofTree, calculator: MerkleHashCalculator, merkleHashVersion: any): Buffer;
|
|
15
|
-
/**
|
|
16
|
-
* Calculates the merkle root hash of the structure
|
|
17
|
-
*
|
|
18
|
-
* @param {any} value
|
|
19
|
-
* @param {MerkleHashCalculator} calculator describes the method we use for hashing and serialization
|
|
20
|
-
* @return the merkle root hash summary
|
|
21
|
-
*/
|
|
22
|
-
export function merkleHashSummary(value: any, calculator: MerkleHashCalculator, merkleHashVersion: any): import("./merklehashcarrier").MerkleHashSummary;
|
|
23
|
-
/**
|
|
24
|
-
*
|
|
25
|
-
* @param {any} value
|
|
26
|
-
* @param {PathSet} pathSet
|
|
27
|
-
* @param {MerkleHashCalculator} calculator
|
|
28
|
-
* @param {number} merkleHashVersion
|
|
29
|
-
*/
|
|
30
|
-
export function generateProof(value: any, pathSet: PathSet, calculator: MerkleHashCalculator, merkleHashVersion: number): MerkleProofTree;
|
|
31
|
-
import MerkleHashCalculator_1 = require("../merklehashcalculator");
|
|
32
|
-
import MerkleHashCalculator = MerkleHashCalculator_1.MerkleHashCalculator;
|
|
33
|
-
import MerkleProofTree_1 = require("./merkleprooftree");
|
|
34
|
-
import MerkleProofTree = MerkleProofTree_1.MerkleProofTree;
|
|
35
|
-
import PathSet_1 = require("../path");
|
|
36
|
-
import PathSet = PathSet_1.PathSet;
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var MerkleHashCalculator = require('../merklehashcalculator').MerkleHashCalculator;
|
|
3
|
-
var MerkleHashSummaryFactory = require('./merklehashsummaryfactory').MerkleHashSummaryFactory;
|
|
4
|
-
var BinaryTreeFactory = require('../binarytreefactory').BinaryTreeFactory;
|
|
5
|
-
var MerkleProofTreeFactory = require('./merkleprooftreefactory').MerkleProofTreeFactory;
|
|
6
|
-
var treeFactory = new BinaryTreeFactory();
|
|
7
|
-
var proofFactory = new MerkleProofTreeFactory();
|
|
8
|
-
var PathSet = require('../path').PathSet;
|
|
9
|
-
var MerkleProofTree = require('./merkleprooftree').MerkleProofTree;
|
|
10
|
-
/**
|
|
11
|
-
* Calculates the merkle root hash of the structure.
|
|
12
|
-
*
|
|
13
|
-
* @param {any} value
|
|
14
|
-
* @param {MerkleHashCalculator} calculator describes the method we use for hashing and serialization
|
|
15
|
-
* @return the merkle root hash (32 bytes) of the data structure.
|
|
16
|
-
*/
|
|
17
|
-
function merkleHash(value, calculator, merkleHashVersion) {
|
|
18
|
-
return merkleHashSummary(value, calculator, merkleHashVersion).merkleHash;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
*
|
|
22
|
-
* @param {MerkleProofTree} tree
|
|
23
|
-
* @param {MerkleHashCalculator} calculator
|
|
24
|
-
*/
|
|
25
|
-
function merkleTreeHash(tree, calculator, merkleHashVersion) {
|
|
26
|
-
return merkleProofHashSummary(tree, calculator, merkleHashVersion).merkleHash;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Calculates the merkle root hash of the structure
|
|
30
|
-
*
|
|
31
|
-
* @param {any} value
|
|
32
|
-
* @param {MerkleHashCalculator} calculator describes the method we use for hashing and serialization
|
|
33
|
-
* @return the merkle root hash summary
|
|
34
|
-
*/
|
|
35
|
-
function merkleHashSummary(value, calculator, merkleHashVersion) {
|
|
36
|
-
var summaryFactory = new MerkleHashSummaryFactory(treeFactory, proofFactory);
|
|
37
|
-
return summaryFactory.calculateMerkleRoot(value, calculator, merkleHashVersion);
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
*
|
|
41
|
-
* @param {MerkleProofTree} tree
|
|
42
|
-
* @param {MerkleHashCalculator} calculator
|
|
43
|
-
* @param {number} merkleHashVersion
|
|
44
|
-
*/
|
|
45
|
-
function merkleProofHashSummary(tree, calculator, merkleHashVersion) {
|
|
46
|
-
var summaryFactory = new MerkleHashSummaryFactory(treeFactory, proofFactory);
|
|
47
|
-
return summaryFactory.calculateMerkleTreeRoot(tree, calculator, merkleHashVersion);
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
*
|
|
51
|
-
* @param {any} value
|
|
52
|
-
* @param {PathSet} pathSet
|
|
53
|
-
* @param {MerkleHashCalculator} calculator
|
|
54
|
-
* @param {number} merkleHashVersion
|
|
55
|
-
*/
|
|
56
|
-
function generateProof(value, pathSet, calculator, merkleHashVersion) {
|
|
57
|
-
var binaryTree = treeFactory.buildWithPath(value, pathSet, merkleHashVersion);
|
|
58
|
-
return proofFactory.buildFromBinaryTree(binaryTree, calculator);
|
|
59
|
-
}
|
|
60
|
-
module.exports = { merkleHash, merkleTreeHash, merkleHashSummary, generateProof };
|
|
61
|
-
//# sourceMappingURL=merkleproof.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merkleproof.js","sourceRoot":"","sources":["../../../../src/merkle/proof/merkleproof.js"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,IAAI,oBAAoB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC,oBAAoB,CAAA;AAClF,IAAI,wBAAwB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC,wBAAwB,CAAA;AAC7F,IAAI,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC,iBAAiB,CAAA;AACzE,IAAI,sBAAsB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC,sBAAsB,CAAA;AACvF,IAAI,WAAW,GAAG,IAAI,iBAAiB,EAAE,CAAA;AACzC,IAAI,YAAY,GAAG,IAAI,sBAAsB,EAAE,CAAA;AAC/C,IAAI,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAA;AACxC,IAAI,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,eAAe,CAAA;AAElE;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,iBAAiB;IACtD,OAAO,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC,UAAU,CAAA;AAC3E,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,iBAAiB;IACzD,OAAO,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC,UAAU,CAAA;AAC/E,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,iBAAiB;IAC7D,IAAI,cAAc,GAAG,IAAI,wBAAwB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAC5E,OAAO,cAAc,CAAC,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAA;AACjF,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,IAAI,EAAE,UAAU,EAAE,iBAAiB;IACjE,IAAI,cAAc,GAAG,IAAI,wBAAwB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAC5E,OAAO,cAAc,CAAC,uBAAuB,CAAC,IAAI,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAA;AACpF,CAAC;AAED;;;;;;EAME;AACF,SAAS,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,iBAAiB;IAClE,IAAI,UAAU,GAAG,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAA;IAC7E,OAAO,YAAY,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,CAAC,OAAO,GAAG,EAAC,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAC,CAAA"}
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
* @param {Buffer} prefix
|
|
4
|
-
* @param {MerkleProofElement} left
|
|
5
|
-
* @param {MerkleProofElement} right
|
|
6
|
-
*/
|
|
7
|
-
export function ProofNode(prefix: Buffer, left: typeof MerkleProofElement, right: typeof MerkleProofElement): void;
|
|
8
|
-
export class ProofNode {
|
|
9
|
-
/**
|
|
10
|
-
*
|
|
11
|
-
* @param {Buffer} prefix
|
|
12
|
-
* @param {MerkleProofElement} left
|
|
13
|
-
* @param {MerkleProofElement} right
|
|
14
|
-
*/
|
|
15
|
-
constructor(prefix: Buffer, left: typeof MerkleProofElement, right: typeof MerkleProofElement);
|
|
16
|
-
prefix: Buffer;
|
|
17
|
-
left: typeof MerkleProofElement;
|
|
18
|
-
right: typeof MerkleProofElement;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
*
|
|
22
|
-
* @param {MerkleProofElement} left
|
|
23
|
-
* @param {MerkleProofElement} right
|
|
24
|
-
*/
|
|
25
|
-
export function ProofNodeSimple(left: typeof MerkleProofElement, right: typeof MerkleProofElement): void;
|
|
26
|
-
export class ProofNodeSimple {
|
|
27
|
-
/**
|
|
28
|
-
*
|
|
29
|
-
* @param {MerkleProofElement} left
|
|
30
|
-
* @param {MerkleProofElement} right
|
|
31
|
-
*/
|
|
32
|
-
constructor(left: typeof MerkleProofElement, right: typeof MerkleProofElement);
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
*
|
|
36
|
-
* @param {Buffer} merkleHash
|
|
37
|
-
*/
|
|
38
|
-
export function ProofHashedLeaf(merkleHash: Buffer): void;
|
|
39
|
-
export class ProofHashedLeaf {
|
|
40
|
-
/**
|
|
41
|
-
*
|
|
42
|
-
* @param {Buffer} merkleHash
|
|
43
|
-
*/
|
|
44
|
-
constructor(merkleHash: Buffer);
|
|
45
|
-
merkleHash: Buffer;
|
|
46
|
-
/**
|
|
47
|
-
* @param {ProofHashedLeaf} other
|
|
48
|
-
*/
|
|
49
|
-
equals(other: ProofHashedLeaf): boolean;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
*
|
|
53
|
-
* @param {*} content
|
|
54
|
-
* @param {SearchablePathElement} pathElem
|
|
55
|
-
*/
|
|
56
|
-
export function ProofValueLeaf(content: any, pathElem: SearchablePathElement): void;
|
|
57
|
-
export class ProofValueLeaf {
|
|
58
|
-
/**
|
|
59
|
-
*
|
|
60
|
-
* @param {*} content
|
|
61
|
-
* @param {SearchablePathElement} pathElem
|
|
62
|
-
*/
|
|
63
|
-
constructor(content: any, pathElem: SearchablePathElement);
|
|
64
|
-
content: any;
|
|
65
|
-
pathElem: SearchablePathElement;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
*
|
|
69
|
-
* @param {MerkleProofElement} left
|
|
70
|
-
* @param {MerkleProofElement} right
|
|
71
|
-
* @param {SearchablePathElement} pathElem
|
|
72
|
-
*/
|
|
73
|
-
export function ProofNodeArrayHead(left: typeof MerkleProofElement, right: typeof MerkleProofElement, pathElem?: SearchablePathElement): void;
|
|
74
|
-
export class ProofNodeArrayHead {
|
|
75
|
-
/**
|
|
76
|
-
*
|
|
77
|
-
* @param {MerkleProofElement} left
|
|
78
|
-
* @param {MerkleProofElement} right
|
|
79
|
-
* @param {SearchablePathElement} pathElem
|
|
80
|
-
*/
|
|
81
|
-
constructor(left: typeof MerkleProofElement, right: typeof MerkleProofElement, pathElem?: SearchablePathElement);
|
|
82
|
-
pathElem: SearchablePathElement;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
*
|
|
86
|
-
* @param {MerkleProofElement} left
|
|
87
|
-
* @param {MerkleProofElement} right
|
|
88
|
-
* @param {SearchablePathElement} pathElem
|
|
89
|
-
*/
|
|
90
|
-
export function ProofNodeDictHead(left: typeof MerkleProofElement, right: typeof MerkleProofElement, pathElem?: SearchablePathElement): void;
|
|
91
|
-
export class ProofNodeDictHead {
|
|
92
|
-
/**
|
|
93
|
-
*
|
|
94
|
-
* @param {MerkleProofElement} left
|
|
95
|
-
* @param {MerkleProofElement} right
|
|
96
|
-
* @param {SearchablePathElement} pathElem
|
|
97
|
-
*/
|
|
98
|
-
constructor(left: typeof MerkleProofElement, right: typeof MerkleProofElement, pathElem?: SearchablePathElement);
|
|
99
|
-
pathElem: SearchablePathElement;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
*
|
|
103
|
-
*/
|
|
104
|
-
export function MerkleProofElement(): void;
|
|
105
|
-
/**
|
|
106
|
-
*
|
|
107
|
-
* @param {MerkleProofElement} root
|
|
108
|
-
*/
|
|
109
|
-
export function MerkleProofTree(root: typeof MerkleProofElement): void;
|
|
110
|
-
export class MerkleProofTree {
|
|
111
|
-
/**
|
|
112
|
-
*
|
|
113
|
-
* @param {MerkleProofElement} root
|
|
114
|
-
*/
|
|
115
|
-
constructor(root: typeof MerkleProofElement);
|
|
116
|
-
root: typeof MerkleProofElement;
|
|
117
|
-
maxLevel(): any;
|
|
118
|
-
/**
|
|
119
|
-
* @param {MerkleProofElement} node
|
|
120
|
-
*/
|
|
121
|
-
maxLevelInternal(node: typeof MerkleProofElement): any;
|
|
122
|
-
}
|
|
123
|
-
import SearchablePathElement_1 = require("../path");
|
|
124
|
-
import SearchablePathElement = SearchablePathElement_1.SearchablePathElement;
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var SearchablePathElement = require('../path').SearchablePathElement;
|
|
3
|
-
var HASH_PREFIX_NODE = require('../binarytree').HASH_PREFIX_NODE;
|
|
4
|
-
var HASH_PREFIX_NODE_ARRAY = require('../binarytree').HASH_PREFIX_NODE_ARRAY;
|
|
5
|
-
var HASH_PREFIX_NODE_DICT = require('../binarytree').HASH_PREFIX_NODE_DICT;
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
*/
|
|
9
|
-
function MerkleProofElement() { }
|
|
10
|
-
/**
|
|
11
|
-
*
|
|
12
|
-
* @param {Buffer} prefix
|
|
13
|
-
* @param {MerkleProofElement} left
|
|
14
|
-
* @param {MerkleProofElement} right
|
|
15
|
-
*/
|
|
16
|
-
function ProofNode(prefix, left, right) {
|
|
17
|
-
this.prefix = prefix;
|
|
18
|
-
this.left = left;
|
|
19
|
-
this.right = right;
|
|
20
|
-
}
|
|
21
|
-
ProofNode.prototype = Object.create(MerkleProofElement.prototype);
|
|
22
|
-
ProofNode.prototype.constructor = ProofNode;
|
|
23
|
-
/**
|
|
24
|
-
*
|
|
25
|
-
* @param {MerkleProofElement} left
|
|
26
|
-
* @param {MerkleProofElement} right
|
|
27
|
-
*/
|
|
28
|
-
function ProofNodeSimple(left, right) {
|
|
29
|
-
ProofNode.call(this, HASH_PREFIX_NODE, left, right);
|
|
30
|
-
}
|
|
31
|
-
ProofNodeSimple.prototype = Object.create(ProofNode.prototype);
|
|
32
|
-
ProofNodeSimple.prototype.constructor = ProofNodeSimple;
|
|
33
|
-
/**
|
|
34
|
-
*
|
|
35
|
-
* @param {*} content
|
|
36
|
-
* @param {SearchablePathElement} pathElem
|
|
37
|
-
*/
|
|
38
|
-
function ProofValueLeaf(content, pathElem) {
|
|
39
|
-
this.content = content;
|
|
40
|
-
this.pathElem = pathElem;
|
|
41
|
-
}
|
|
42
|
-
ProofValueLeaf.prototype = Object.create(MerkleProofElement.prototype);
|
|
43
|
-
ProofValueLeaf.prototype.constructor = ProofValueLeaf;
|
|
44
|
-
/**
|
|
45
|
-
*
|
|
46
|
-
* @param {Buffer} merkleHash
|
|
47
|
-
*/
|
|
48
|
-
function ProofHashedLeaf(merkleHash) {
|
|
49
|
-
this.merkleHash = merkleHash;
|
|
50
|
-
}
|
|
51
|
-
ProofHashedLeaf.prototype = Object.create(MerkleProofElement.prototype);
|
|
52
|
-
ProofHashedLeaf.prototype.constructor = ProofHashedLeaf;
|
|
53
|
-
/**
|
|
54
|
-
* @param {ProofHashedLeaf} other
|
|
55
|
-
*/
|
|
56
|
-
ProofHashedLeaf.prototype.equals = function (other) {
|
|
57
|
-
if (other instanceof ProofHashedLeaf) {
|
|
58
|
-
return this.merkleHash.equals(other.merkleHash);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
return false;
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
*
|
|
66
|
-
* @param {MerkleProofElement} left
|
|
67
|
-
* @param {MerkleProofElement} right
|
|
68
|
-
* @param {SearchablePathElement} pathElem
|
|
69
|
-
*/
|
|
70
|
-
function ProofNodeArrayHead(left, right, pathElem = null) {
|
|
71
|
-
ProofNode.call(this, HASH_PREFIX_NODE_ARRAY, left, right);
|
|
72
|
-
this.pathElem = pathElem;
|
|
73
|
-
}
|
|
74
|
-
ProofNodeArrayHead.prototype = Object.create(ProofNode.prototype);
|
|
75
|
-
ProofNodeArrayHead.prototype.constructor = ProofNodeArrayHead;
|
|
76
|
-
/**
|
|
77
|
-
*
|
|
78
|
-
* @param {MerkleProofElement} left
|
|
79
|
-
* @param {MerkleProofElement} right
|
|
80
|
-
* @param {SearchablePathElement} pathElem
|
|
81
|
-
*/
|
|
82
|
-
function ProofNodeDictHead(left, right, pathElem = null) {
|
|
83
|
-
ProofNode.call(this, HASH_PREFIX_NODE_DICT, left, right);
|
|
84
|
-
this.pathElem = pathElem;
|
|
85
|
-
}
|
|
86
|
-
ProofNodeDictHead.prototype = Object.create(ProofNode.prototype);
|
|
87
|
-
ProofNodeDictHead.prototype.constructor = ProofNodeDictHead;
|
|
88
|
-
/**
|
|
89
|
-
*
|
|
90
|
-
* @param {MerkleProofElement} root
|
|
91
|
-
*/
|
|
92
|
-
function MerkleProofTree(root) {
|
|
93
|
-
this.root = root;
|
|
94
|
-
}
|
|
95
|
-
MerkleProofTree.prototype.maxLevel = function () {
|
|
96
|
-
return this.maxLevelInternal(this.root);
|
|
97
|
-
};
|
|
98
|
-
/**
|
|
99
|
-
* @param {MerkleProofElement} node
|
|
100
|
-
*/
|
|
101
|
-
MerkleProofTree.prototype.maxLevelInternal = function (node) {
|
|
102
|
-
if (node instanceof ProofValueLeaf) {
|
|
103
|
-
return 1;
|
|
104
|
-
}
|
|
105
|
-
else if (node instanceof ProofHashedLeaf) {
|
|
106
|
-
return 1;
|
|
107
|
-
}
|
|
108
|
-
else if (node instanceof ProofNode) {
|
|
109
|
-
return Math.max(this.maxLevelInternal(node.left), this.maxLevelInternal(node.right)) + 1;
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
throw new Error("Should be able to handle node type: " + typeof node);
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
module.exports = { ProofNode, ProofNodeSimple, ProofHashedLeaf, ProofValueLeaf,
|
|
116
|
-
ProofNodeArrayHead, ProofNodeDictHead, MerkleProofElement, MerkleProofTree };
|
|
117
|
-
//# sourceMappingURL=merkleprooftree.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merkleprooftree.js","sourceRoot":"","sources":["../../../../src/merkle/proof/merkleprooftree.js"],"names":[],"mappings":"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"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
*/
|
|
4
|
-
export function MerkleProofTreeFactory(): void;
|
|
5
|
-
export class MerkleProofTreeFactory {
|
|
6
|
-
/**
|
|
7
|
-
* @param {BinaryTree} originalTree
|
|
8
|
-
*/
|
|
9
|
-
buildFromBinaryTree(originalTree: BinaryTree, calculator: any): MerkleProofTree;
|
|
10
|
-
/**
|
|
11
|
-
* @param {BinaryTreeElement} elem
|
|
12
|
-
* @param {*} calculator
|
|
13
|
-
*/
|
|
14
|
-
buildFromBinaryTreeInternal(elem: BinaryTreeElement, calculator: any): any;
|
|
15
|
-
/**
|
|
16
|
-
* @param {Node} node
|
|
17
|
-
*/
|
|
18
|
-
convertNode(node: Node, calculator: any): any;
|
|
19
|
-
/**
|
|
20
|
-
* @param {ArrayHeadNode} node
|
|
21
|
-
*/
|
|
22
|
-
extractSearchablePathElement(node: ArrayHeadNode): any;
|
|
23
|
-
/**
|
|
24
|
-
* @param {Node} node
|
|
25
|
-
* @param {MerkleProofElement} left
|
|
26
|
-
* @param {MerkleProofElement} right
|
|
27
|
-
*/
|
|
28
|
-
buildNodeOfCorrectType(node: Node, left: typeof MerkleProofElement, right: typeof MerkleProofElement): ProofNodeSimple | ProofNodeArrayHead | ProofNodeDictHead;
|
|
29
|
-
}
|
|
30
|
-
import BinaryTree_1 = require("../binarytree");
|
|
31
|
-
import BinaryTree = BinaryTree_1.BinaryTree;
|
|
32
|
-
import MerkleProofTree_1 = require("./merkleprooftree");
|
|
33
|
-
import MerkleProofTree = MerkleProofTree_1.MerkleProofTree;
|
|
34
|
-
import BinaryTreeElement_1 = require("../binarytree");
|
|
35
|
-
import BinaryTreeElement = BinaryTreeElement_1.BinaryTreeElement;
|
|
36
|
-
import Node_1 = require("../binarytree");
|
|
37
|
-
import Node = Node_1.Node;
|
|
38
|
-
import ArrayHeadNode_1 = require("../binarytree");
|
|
39
|
-
import ArrayHeadNode = ArrayHeadNode_1.ArrayHeadNode;
|
|
40
|
-
import MerkleProofElement_1 = require("./merkleprooftree");
|
|
41
|
-
import MerkleProofElement = MerkleProofElement_1.MerkleProofElement;
|
|
42
|
-
import ProofNodeSimple_1 = require("./merkleprooftree");
|
|
43
|
-
import ProofNodeSimple = ProofNodeSimple_1.ProofNodeSimple;
|
|
44
|
-
import ProofNodeArrayHead_1 = require("./merkleprooftree");
|
|
45
|
-
import ProofNodeArrayHead = ProofNodeArrayHead_1.ProofNodeArrayHead;
|
|
46
|
-
import ProofNodeDictHead_1 = require("./merkleprooftree");
|
|
47
|
-
import ProofNodeDictHead = ProofNodeDictHead_1.ProofNodeDictHead;
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const { Buffer } = require('buffer');
|
|
3
|
-
var BinaryTreeElement = require('../binarytree').BinaryTreeElement;
|
|
4
|
-
var Node = require('../binarytree').Node;
|
|
5
|
-
var Leaf = require('../binarytree').Leaf;
|
|
6
|
-
var EmptyLeaf = require('../binarytree').EmptyLeaf;
|
|
7
|
-
var BinaryTree = require('../binarytree').BinaryTree;
|
|
8
|
-
var ProofHashedLeaf = require('./merkleprooftree').ProofHashedLeaf;
|
|
9
|
-
var ProofValueLeaf = require('./merkleprooftree').ProofValueLeaf;
|
|
10
|
-
var MerkleProofElement = require('./merkleprooftree').MerkleProofElement;
|
|
11
|
-
var MerkleProofTree = require('./merkleprooftree').MerkleProofTree;
|
|
12
|
-
var ProofNodeArrayHead = require('./merkleprooftree').ProofNodeArrayHead;
|
|
13
|
-
var ProofNodeDictHead = require('./merkleprooftree').ProofNodeDictHead;
|
|
14
|
-
var PathLeafElement = require('../path').PathLeafElement;
|
|
15
|
-
var SubTreeRootNode = require('../binarytree').SubTreeRootNode;
|
|
16
|
-
var ArrayHeadNode = require('../binarytree').ArrayHeadNode;
|
|
17
|
-
var DictHeadNode = require('../binarytree').DictHeadNode;
|
|
18
|
-
var ProofNodeSimple = require('./merkleprooftree').ProofNodeSimple;
|
|
19
|
-
const EMPTY_HASH = new Buffer.alloc(32);
|
|
20
|
-
/**
|
|
21
|
-
*
|
|
22
|
-
*/
|
|
23
|
-
function MerkleProofTreeFactory() { }
|
|
24
|
-
/**
|
|
25
|
-
* @param {BinaryTree} originalTree
|
|
26
|
-
*/
|
|
27
|
-
MerkleProofTreeFactory.prototype.buildFromBinaryTree = function (originalTree, calculator) {
|
|
28
|
-
var rootElem = this.buildFromBinaryTreeInternal(originalTree.root, calculator);
|
|
29
|
-
return new MerkleProofTree(rootElem);
|
|
30
|
-
};
|
|
31
|
-
/**
|
|
32
|
-
* @param {BinaryTreeElement} elem
|
|
33
|
-
* @param {*} calculator
|
|
34
|
-
*/
|
|
35
|
-
MerkleProofTreeFactory.prototype.buildFromBinaryTreeInternal = function (elem, calculator) {
|
|
36
|
-
if (elem instanceof EmptyLeaf) {
|
|
37
|
-
return new ProofHashedLeaf(EMPTY_HASH);
|
|
38
|
-
}
|
|
39
|
-
else if (elem instanceof Leaf) {
|
|
40
|
-
var pathElem = elem.pathElem;
|
|
41
|
-
if (pathElem != null) {
|
|
42
|
-
if (pathElem instanceof PathLeafElement) {
|
|
43
|
-
return new ProofValueLeaf(elem.content, pathElem.previous);
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
throw new Error("The path and structure don't match. We are at a leaf, but path elem is not a leaf: " + pathElem);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
// make a hash
|
|
51
|
-
var hash = calculator.calculateLeafHash(elem.content);
|
|
52
|
-
return new ProofHashedLeaf(hash);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
else if (elem instanceof SubTreeRootNode) {
|
|
56
|
-
var pathElem = elem.pathElem;
|
|
57
|
-
if (pathElem != null) {
|
|
58
|
-
if (pathElem instanceof PathLeafElement) {
|
|
59
|
-
// Don't convert it
|
|
60
|
-
return new ProofValueLeaf(elem.content, pathElem.previous);
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
return this.convertNode(elem, calculator);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
return this.convertNode(elem, calculator);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
else if (elem instanceof Node) {
|
|
71
|
-
return this.convertNode(elem, calculator);
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
throw new Error("Cannot handle " + elem);
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
/**
|
|
78
|
-
* @param {Node} node
|
|
79
|
-
*/
|
|
80
|
-
MerkleProofTreeFactory.prototype.convertNode = function (node, calculator) {
|
|
81
|
-
var left = this.buildFromBinaryTreeInternal(node.left, calculator);
|
|
82
|
-
var right = this.buildFromBinaryTreeInternal(node.right, calculator);
|
|
83
|
-
if (left instanceof ProofHashedLeaf && right instanceof ProofHashedLeaf) {
|
|
84
|
-
var addedHash = calculator.calculateNodeHash(node.getPrefixByte(), left.merkleHash, right.merkleHash);
|
|
85
|
-
return new ProofHashedLeaf(addedHash);
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
return this.buildNodeOfCorrectType(node, left, right);
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
/**
|
|
92
|
-
* @param {ArrayHeadNode} node
|
|
93
|
-
*/
|
|
94
|
-
MerkleProofTreeFactory.prototype.extractSearchablePathElement = function (node) {
|
|
95
|
-
var pathElem = node.pathElem;
|
|
96
|
-
if (pathElem != null) {
|
|
97
|
-
return pathElem.previous;
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
return null;
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
/**
|
|
104
|
-
* @param {Node} node
|
|
105
|
-
* @param {MerkleProofElement} left
|
|
106
|
-
* @param {MerkleProofElement} right
|
|
107
|
-
*/
|
|
108
|
-
MerkleProofTreeFactory.prototype.buildNodeOfCorrectType = function (node, left, right) {
|
|
109
|
-
if (node instanceof ArrayHeadNode) {
|
|
110
|
-
return new ProofNodeArrayHead(left, right, this.extractSearchablePathElement(node));
|
|
111
|
-
}
|
|
112
|
-
else if (node instanceof DictHeadNode) {
|
|
113
|
-
return new ProofNodeDictHead(left, right, this.extractSearchablePathElement(node));
|
|
114
|
-
}
|
|
115
|
-
else if (node instanceof Node) {
|
|
116
|
-
return new ProofNodeSimple(left, right);
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
throw new Error("Should have taken care of this node type: " + node);
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
module.exports = { MerkleProofTreeFactory };
|
|
123
|
-
//# sourceMappingURL=merkleprooftreefactory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merkleprooftreefactory.js","sourceRoot":"","sources":["../../../../src/merkle/proof/merkleprooftreefactory.js"],"names":[],"mappings":";AAAA,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrC,IAAI,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,iBAAiB,CAAA;AAClE,IAAI,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAA;AACxC,IAAI,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAA;AACxC,IAAI,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,SAAS,CAAA;AAClD,IAAI,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAA;AACpD,IAAI,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,eAAe,CAAA;AAClE,IAAI,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,cAAc,CAAA;AAChE,IAAI,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,kBAAkB,CAAA;AACxE,IAAI,eAAe,GAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC,eAAe,CAAA;AACnE,IAAI,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,kBAAkB,CAAA;AACxE,IAAI,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,iBAAiB,CAAA;AACtE,IAAI,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,eAAe,CAAA;AACxD,IAAI,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,eAAe,CAAA;AAC9D,IAAI,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,aAAa,CAAA;AAC1D,IAAI,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,YAAY,CAAA;AACxD,IAAI,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,eAAe,CAAA;AAElE,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;AACvC;;GAEG;AACH,SAAS,sBAAsB,KAAI,CAAC;AAEpC;;GAEG;AACH,sBAAsB,CAAC,SAAS,CAAC,mBAAmB,GAAG,UAAS,YAAY,EAAE,UAAU;IACtF,IAAI,QAAQ,GAAG,IAAI,CAAC,2BAA2B,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;IAC9E,OAAO,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAA;AACtC,CAAC,CAAA;AACD;;;GAGG;AACH,sBAAsB,CAAC,SAAS,CAAC,2BAA2B,GAAG,UAAS,IAAI,EAAE,UAAU;IACtF,IAAI,IAAI,YAAY,SAAS,EAAE,CAAC;QAC9B,OAAO,IAAI,eAAe,CAAC,UAAU,CAAC,CAAA;IACxC,CAAC;SAAM,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;QAChC,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC5B,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,QAAQ,YAAY,eAAe,EAAE,CAAC;gBACxC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,qFAAqF,GAAG,QAAQ,CAAC,CAAA;YACnH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,cAAc;YACd,IAAI,IAAI,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACrD,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,YAAY,eAAe,EAAE,CAAC;QAC3C,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC5B,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,QAAQ,YAAY,eAAe,EAAE,CAAC;gBACxC,mBAAmB;gBACnB,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;IAC3C,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAC1C,CAAC;AACH,CAAC,CAAA;AAED;;GAEG;AACH,sBAAsB,CAAC,SAAS,CAAC,WAAW,GAAG,UAAS,IAAI,EAAE,UAAU;IACtE,IAAI,IAAI,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;IAClE,IAAI,KAAK,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;IACpE,IAAI,IAAI,YAAY,eAAe,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;QACxE,IAAI,SAAS,GAAG,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;QACrG,OAAO,IAAI,eAAe,CAAC,SAAS,CAAC,CAAA;IACvC,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IACvD,CAAC;AACH,CAAC,CAAA;AAED;;GAEG;AACH,sBAAsB,CAAC,SAAS,CAAC,4BAA4B,GAAG,UAAS,IAAI;IAC3E,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;IAC5B,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACrB,OAAO,QAAQ,CAAC,QAAQ,CAAA;IAC1B,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED;;;;GAIG;AACH,sBAAsB,CAAC,SAAS,CAAC,sBAAsB,GAAG,UAAS,IAAI,EAAE,IAAI,EAAE,KAAK;IAClF,IAAI,IAAI,YAAY,aAAa,EAAE,CAAC;QAClC,OAAO,IAAI,kBAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAA;IACrF,CAAC;SAAM,IAAI,IAAI,YAAY,YAAY,EAAE,CAAC;QACxC,OAAO,IAAI,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAA;IACpF,CAAC;SAAM,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;QAChC,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,4CAA4C,GAAG,IAAI,CAAC,CAAA;IACtE,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,OAAO,GAAG,EAAC,sBAAsB,EAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/merkle/types.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/restclient/enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,MAGX;AAHD,WAAY,MAAM;IAChB,qBAAW,CAAA;IACX,uBAAa,CAAA;AACf,CAAC,EAHW,MAAM,KAAN,MAAM,QAGjB"}
|