@decaf-ts/for-fabric 0.9.0 → 0.11.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/lib/cjs/bin/cli.cjs +3 -2
- package/lib/cjs/bin/cli.cjs.map +1 -0
- package/lib/cjs/cli-module.cjs +26 -25
- package/lib/cjs/cli-module.cjs.map +1 -0
- package/lib/cjs/cli-utils.cjs +5 -5
- package/lib/cjs/cli-utils.cjs.map +1 -0
- package/lib/cjs/client/FabricClientAdapter.cjs +46 -40
- package/lib/cjs/client/FabricClientAdapter.cjs.map +1 -0
- package/lib/cjs/client/FabricClientDispatch.cjs +8 -7
- package/lib/cjs/client/FabricClientDispatch.cjs.map +1 -0
- package/lib/cjs/client/FabricClientPaginator.cjs +1 -0
- package/lib/cjs/client/FabricClientPaginator.cjs.map +1 -0
- package/lib/cjs/client/FabricClientRepository.cjs +4 -3
- package/lib/cjs/client/FabricClientRepository.cjs.map +1 -0
- package/lib/cjs/client/FabricClientStatement.cjs +1 -0
- package/lib/cjs/client/FabricClientStatement.cjs.map +1 -0
- package/lib/cjs/client/collections/generation.cjs +3 -2
- package/lib/cjs/client/collections/generation.cjs.map +1 -0
- package/lib/cjs/client/collections/index.cjs +1 -0
- package/lib/cjs/client/collections/index.cjs.map +1 -0
- package/lib/cjs/client/constants.cjs +1 -0
- package/lib/cjs/client/constants.cjs.map +1 -0
- package/lib/cjs/client/crypto.cjs +12 -13
- package/lib/cjs/client/crypto.cjs.map +1 -0
- package/lib/cjs/client/erc20/FabricERC20ClientRepository.cjs +7 -6
- package/lib/cjs/client/erc20/FabricERC20ClientRepository.cjs.map +1 -0
- package/lib/cjs/client/erc20/index.cjs +1 -0
- package/lib/cjs/client/erc20/index.cjs.map +1 -0
- package/lib/cjs/client/fabric-fs.cjs +1 -0
- package/lib/cjs/client/fabric-fs.cjs.map +1 -0
- package/lib/cjs/client/fabric-hsm.cjs +3 -2
- package/lib/cjs/client/fabric-hsm.cjs.map +1 -0
- package/lib/cjs/client/ids/id-extraction.cjs +1 -0
- package/lib/cjs/client/ids/id-extraction.cjs.map +1 -0
- package/lib/cjs/client/ids/index.cjs +1 -0
- package/lib/cjs/client/ids/index.cjs.map +1 -0
- package/lib/cjs/client/index.cjs +10 -9
- package/lib/cjs/client/index.cjs.map +1 -0
- package/lib/cjs/client/indexes/generation.cjs +1 -0
- package/lib/cjs/client/indexes/generation.cjs.map +1 -0
- package/lib/cjs/client/indexes/index.cjs +1 -0
- package/lib/cjs/client/indexes/index.cjs.map +1 -0
- package/lib/cjs/client/logging.cjs +1 -0
- package/lib/cjs/client/logging.cjs.map +1 -0
- package/lib/cjs/client/services/FabricEnrollmentService.cjs +17 -32
- package/lib/cjs/client/services/FabricEnrollmentService.cjs.map +1 -0
- package/lib/cjs/client/services/FabricIdentityService.cjs +15 -14
- package/lib/cjs/client/services/FabricIdentityService.cjs.map +1 -0
- package/lib/cjs/client/services/RegistrationRequestBuilder.cjs +11 -5
- package/lib/cjs/client/services/RegistrationRequestBuilder.cjs.map +1 -0
- package/lib/cjs/client/services/constants.cjs +2 -9
- package/lib/cjs/client/services/constants.cjs.map +1 -0
- package/lib/cjs/client/services/index.cjs +1 -0
- package/lib/cjs/client/services/index.cjs.map +1 -0
- package/lib/cjs/client/types.cjs +1 -0
- package/lib/cjs/client/types.cjs.map +1 -0
- package/lib/cjs/client/utils.cjs +1 -0
- package/lib/cjs/client/utils.cjs.map +1 -0
- package/lib/cjs/contract/Address.cjs +14 -8
- package/lib/cjs/contract/Address.cjs.map +1 -0
- package/lib/cjs/contract/AddressContract.cjs +15 -9
- package/lib/cjs/contract/AddressContract.cjs.map +1 -0
- package/lib/cjs/contract/AuditContract.cjs +15 -9
- package/lib/cjs/contract/AuditContract.cjs.map +1 -0
- package/lib/cjs/contract/BatchContract.cjs +15 -9
- package/lib/cjs/contract/BatchContract.cjs.map +1 -0
- package/lib/cjs/contract/MarketContract.cjs +15 -9
- package/lib/cjs/contract/MarketContract.cjs.map +1 -0
- package/lib/cjs/contract/OtherAuditContract.cjs +15 -9
- package/lib/cjs/contract/OtherAuditContract.cjs.map +1 -0
- package/lib/cjs/contract/OtherBatchContract.cjs +15 -9
- package/lib/cjs/contract/OtherBatchContract.cjs.map +1 -0
- package/lib/cjs/contract/OtherMarketContract.cjs +15 -9
- package/lib/cjs/contract/OtherMarketContract.cjs.map +1 -0
- package/lib/cjs/contract/OtherProductContract.cjs +15 -9
- package/lib/cjs/contract/OtherProductContract.cjs.map +1 -0
- package/lib/cjs/contract/OtherProductImageContract.cjs +15 -9
- package/lib/cjs/contract/OtherProductImageContract.cjs.map +1 -0
- package/lib/cjs/contract/OtherProductSharedContract.cjs +15 -9
- package/lib/cjs/contract/OtherProductSharedContract.cjs.map +1 -0
- package/lib/cjs/contract/OtherProductStrengthContract.cjs +15 -9
- package/lib/cjs/contract/OtherProductStrengthContract.cjs.map +1 -0
- package/lib/cjs/contract/Product.cjs +15 -9
- package/lib/cjs/contract/Product.cjs.map +1 -0
- package/lib/cjs/contract/ProductContract.cjs +15 -9
- package/lib/cjs/contract/ProductContract.cjs.map +1 -0
- package/lib/cjs/contract/ProductStrengthContract.cjs +15 -9
- package/lib/cjs/contract/ProductStrengthContract.cjs.map +1 -0
- package/lib/cjs/contract/SegregatedPrivateDocumentContract.cjs +15 -9
- package/lib/cjs/contract/SegregatedPrivateDocumentContract.cjs.map +1 -0
- package/lib/cjs/contract/SegregatedSharedDocumentContract.cjs +15 -9
- package/lib/cjs/contract/SegregatedSharedDocumentContract.cjs.map +1 -0
- package/lib/cjs/contract/User.cjs +13 -7
- package/lib/cjs/contract/User.cjs.map +1 -0
- package/lib/cjs/contract/UserContract.cjs +15 -9
- package/lib/cjs/contract/UserContract.cjs.map +1 -0
- package/lib/cjs/contract/index.cjs +31 -30
- package/lib/cjs/contract/index.cjs.map +1 -0
- package/lib/cjs/contract/logging-context.cjs +1 -0
- package/lib/cjs/contract/logging-context.cjs.map +1 -0
- package/lib/cjs/contract/models/Audit.cjs +17 -11
- package/lib/cjs/contract/models/Audit.cjs.map +1 -0
- package/lib/cjs/contract/models/BaseIdentifiedModel.cjs +15 -9
- package/lib/cjs/contract/models/BaseIdentifiedModel.cjs.map +1 -0
- package/lib/cjs/contract/models/BaseModel.cjs +13 -7
- package/lib/cjs/contract/models/BaseModel.cjs.map +1 -0
- package/lib/cjs/contract/models/Batch.cjs +24 -18
- package/lib/cjs/contract/models/Batch.cjs.map +1 -0
- package/lib/cjs/contract/models/GtinOwner.cjs +18 -12
- package/lib/cjs/contract/models/GtinOwner.cjs.map +1 -0
- package/lib/cjs/contract/models/History.cjs +15 -9
- package/lib/cjs/contract/models/History.cjs.map +1 -0
- package/lib/cjs/contract/models/Leaflet.cjs +25 -19
- package/lib/cjs/contract/models/Leaflet.cjs.map +1 -0
- package/lib/cjs/contract/models/LeafletFile.cjs +19 -13
- package/lib/cjs/contract/models/LeafletFile.cjs.map +1 -0
- package/lib/cjs/contract/models/Market.cjs +19 -13
- package/lib/cjs/contract/models/Market.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherAudit.cjs +20 -14
- package/lib/cjs/contract/models/OtherAudit.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherBatchShared.cjs +27 -21
- package/lib/cjs/contract/models/OtherBatchShared.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherLeaflet.cjs +27 -21
- package/lib/cjs/contract/models/OtherLeaflet.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherLeafletFile.cjs +18 -12
- package/lib/cjs/contract/models/OtherLeafletFile.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherMarket.cjs +21 -15
- package/lib/cjs/contract/models/OtherMarket.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherProduct.cjs +24 -18
- package/lib/cjs/contract/models/OtherProduct.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherProductImage.cjs +22 -16
- package/lib/cjs/contract/models/OtherProductImage.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherProductShared.cjs +32 -26
- package/lib/cjs/contract/models/OtherProductShared.cjs.map +1 -0
- package/lib/cjs/contract/models/OtherProductStrength.cjs +21 -15
- package/lib/cjs/contract/models/OtherProductStrength.cjs.map +1 -0
- package/lib/cjs/contract/models/Product.cjs +24 -18
- package/lib/cjs/contract/models/Product.cjs.map +1 -0
- package/lib/cjs/contract/models/ProductStrength.cjs +19 -13
- package/lib/cjs/contract/models/ProductStrength.cjs.map +1 -0
- package/lib/cjs/contract/models/SegregatedDocument.cjs +23 -17
- package/lib/cjs/contract/models/SegregatedDocument.cjs.map +1 -0
- package/lib/cjs/contract/models/constants.cjs +3 -4
- package/lib/cjs/contract/models/constants.cjs.map +1 -0
- package/lib/cjs/contract/models/decorators-private.cjs +11 -10
- package/lib/cjs/contract/models/decorators-private.cjs.map +1 -0
- package/lib/cjs/contract/models/decorators.cjs +13 -12
- package/lib/cjs/contract/models/decorators.cjs.map +1 -0
- package/lib/cjs/contract/models/gtin.cjs +13 -7
- package/lib/cjs/contract/models/gtin.cjs.map +1 -0
- package/lib/cjs/contract/models/history-dec.cjs +11 -10
- package/lib/cjs/contract/models/history-dec.cjs.map +1 -0
- package/lib/cjs/contracts/ContractAdapter.cjs +27 -26
- package/lib/cjs/contracts/ContractAdapter.cjs.map +1 -0
- package/lib/cjs/contracts/ContractContext.cjs +1 -0
- package/lib/cjs/contracts/ContractContext.cjs.map +1 -0
- package/lib/cjs/contracts/FabricContractDispatch.cjs +1 -0
- package/lib/cjs/contracts/FabricContractDispatch.cjs.map +1 -0
- package/lib/cjs/contracts/FabricContractPaginator.cjs +5 -4
- package/lib/cjs/contracts/FabricContractPaginator.cjs.map +1 -0
- package/lib/cjs/contracts/FabricContractRepository.cjs +8 -7
- package/lib/cjs/contracts/FabricContractRepository.cjs.map +1 -0
- package/lib/cjs/contracts/FabricContractRepositoryObservableHandler.cjs +3 -2
- package/lib/cjs/contracts/FabricContractRepositoryObservableHandler.cjs.map +1 -0
- package/lib/cjs/contracts/FabricContractSequence.cjs +1 -0
- package/lib/cjs/contracts/FabricContractSequence.cjs.map +1 -0
- package/lib/cjs/contracts/FabricContractStatement.cjs +5 -4
- package/lib/cjs/contracts/FabricContractStatement.cjs.map +1 -0
- package/lib/cjs/contracts/MigrationContract.cjs +20 -14
- package/lib/cjs/contracts/MigrationContract.cjs.map +1 -0
- package/lib/cjs/contracts/PrivateSequence.cjs +11 -5
- package/lib/cjs/contracts/PrivateSequence.cjs.map +1 -0
- package/lib/cjs/contracts/auth/decorators.cjs +3 -2
- package/lib/cjs/contracts/auth/decorators.cjs.map +1 -0
- package/lib/cjs/contracts/auth/index.cjs +1 -0
- package/lib/cjs/contracts/auth/index.cjs.map +1 -0
- package/lib/cjs/contracts/crud/crud-contract.cjs +12 -11
- package/lib/cjs/contracts/crud/crud-contract.cjs.map +1 -0
- package/lib/cjs/contracts/crud/index.cjs +1 -0
- package/lib/cjs/contracts/crud/index.cjs.map +1 -0
- package/lib/cjs/contracts/crud/serialized-crud-contract.cjs +13 -7
- package/lib/cjs/contracts/crud/serialized-crud-contract.cjs.map +1 -0
- package/lib/cjs/contracts/erc20/erc20contract.cjs +53 -47
- package/lib/cjs/contracts/erc20/erc20contract.cjs.map +1 -0
- package/lib/cjs/contracts/erc20/index.cjs +3 -2
- package/lib/cjs/contracts/erc20/index.cjs.map +1 -0
- package/lib/cjs/contracts/erc20/models.cjs +11 -5
- package/lib/cjs/contracts/erc20/models.cjs.map +1 -0
- package/lib/cjs/contracts/index.cjs +1 -0
- package/lib/cjs/contracts/index.cjs.map +1 -0
- package/lib/cjs/contracts/logging.cjs +4 -3
- package/lib/cjs/contracts/logging.cjs.map +1 -0
- package/lib/cjs/contracts/overrides.cjs +3 -2
- package/lib/cjs/contracts/overrides.cjs.map +1 -0
- package/lib/cjs/contracts/types.cjs +1 -0
- package/lib/cjs/contracts/types.cjs.map +1 -0
- package/lib/cjs/contracts/uuid.cjs +1 -0
- package/lib/cjs/contracts/uuid.cjs.map +1 -0
- package/lib/cjs/index.cjs +6 -5
- package/lib/cjs/index.cjs.map +1 -0
- package/lib/cjs/shared/ClientSerializer.cjs +1 -0
- package/lib/cjs/shared/ClientSerializer.cjs.map +1 -0
- package/lib/cjs/shared/DeterministicSerializer.cjs +1 -0
- package/lib/cjs/shared/DeterministicSerializer.cjs.map +1 -0
- package/lib/cjs/shared/SimpleDeterministicSerializer.cjs +3 -2
- package/lib/cjs/shared/SimpleDeterministicSerializer.cjs.map +1 -0
- package/lib/cjs/shared/constants.cjs +3 -18
- package/lib/cjs/shared/constants.cjs.map +1 -0
- package/lib/cjs/shared/decorators.cjs +14 -13
- package/lib/cjs/shared/decorators.cjs.map +1 -0
- package/lib/cjs/shared/erc20/erc20-constants.cjs +2 -9
- package/lib/cjs/shared/erc20/erc20-constants.cjs.map +1 -0
- package/lib/cjs/shared/erc20/index.cjs +1 -0
- package/lib/cjs/shared/erc20/index.cjs.map +1 -0
- package/lib/cjs/shared/errors.cjs +1 -0
- package/lib/cjs/shared/errors.cjs.map +1 -0
- package/lib/cjs/shared/events.cjs +1 -0
- package/lib/cjs/shared/events.cjs.map +1 -0
- package/lib/cjs/shared/fabric-types.cjs +1 -0
- package/lib/cjs/shared/fabric-types.cjs.map +1 -0
- package/lib/cjs/shared/index.cjs +1 -0
- package/lib/cjs/shared/index.cjs.map +1 -0
- package/lib/cjs/shared/interfaces/Checkable.cjs +1 -0
- package/lib/cjs/shared/interfaces/Checkable.cjs.map +1 -0
- package/lib/cjs/shared/interfaces/index.cjs +1 -0
- package/lib/cjs/shared/interfaces/index.cjs.map +1 -0
- package/lib/cjs/shared/math.cjs +4 -3
- package/lib/cjs/shared/math.cjs.map +1 -0
- package/lib/cjs/shared/model/FabricBaseModel.cjs +13 -7
- package/lib/cjs/shared/model/FabricBaseModel.cjs.map +1 -0
- package/lib/cjs/shared/model/FabricIdentifiedBaseModel.cjs +15 -9
- package/lib/cjs/shared/model/FabricIdentifiedBaseModel.cjs.map +1 -0
- package/lib/cjs/shared/model/Identity.cjs +16 -10
- package/lib/cjs/shared/model/Identity.cjs.map +1 -0
- package/lib/cjs/shared/model/IdentityCredentials.cjs +11 -5
- package/lib/cjs/shared/model/IdentityCredentials.cjs.map +1 -0
- package/lib/cjs/shared/model/index.cjs +1 -0
- package/lib/cjs/shared/model/index.cjs.map +1 -0
- package/lib/cjs/shared/overrides/Model.cjs +1 -0
- package/lib/cjs/shared/overrides/Model.cjs.map +1 -0
- package/lib/cjs/shared/overrides/index.cjs +1 -0
- package/lib/cjs/shared/overrides/index.cjs.map +1 -0
- package/lib/cjs/shared/overrides/overrides.cjs +11 -10
- package/lib/cjs/shared/overrides/overrides.cjs.map +1 -0
- package/lib/cjs/shared/types.cjs +1 -0
- package/lib/cjs/shared/types.cjs.map +1 -0
- package/lib/cjs/version.cjs +2 -1
- package/lib/cjs/version.cjs.map +1 -0
- package/lib/esm/version.js +1 -1
- package/lib/types/bin/cli.d.cts +1 -0
- package/lib/types/bin/cli.d.mts +1 -0
- package/lib/types/cli-module.d.cts +3 -0
- package/lib/types/cli-module.d.mts +3 -0
- package/lib/types/cli-utils.d.cts +21 -0
- package/lib/types/cli-utils.d.mts +21 -0
- package/lib/types/client/FabricClientAdapter.d.cts +404 -0
- package/lib/types/client/FabricClientAdapter.d.mts +404 -0
- package/lib/types/client/FabricClientDispatch.d.cts +133 -0
- package/lib/types/client/FabricClientDispatch.d.mts +133 -0
- package/lib/types/client/FabricClientPaginator.d.cts +12 -0
- package/lib/types/client/FabricClientPaginator.d.mts +12 -0
- package/lib/types/client/FabricClientRepository.d.cts +71 -0
- package/lib/types/client/FabricClientRepository.d.mts +71 -0
- package/lib/types/client/FabricClientStatement.d.cts +64 -0
- package/lib/types/client/FabricClientStatement.d.mts +64 -0
- package/lib/types/client/collections/generation.d.cts +46 -0
- package/lib/types/client/collections/generation.d.mts +46 -0
- package/lib/types/client/collections/index.d.cts +1 -0
- package/lib/types/client/collections/index.d.mts +1 -0
- package/lib/types/client/constants.d.cts +2 -0
- package/lib/types/client/constants.d.mts +2 -0
- package/lib/types/client/crypto.d.cts +107 -0
- package/lib/types/client/crypto.d.mts +107 -0
- package/lib/types/client/erc20/FabricERC20ClientRepository.d.cts +254 -0
- package/lib/types/client/erc20/FabricERC20ClientRepository.d.mts +254 -0
- package/lib/types/client/erc20/index.d.cts +1 -0
- package/lib/types/client/erc20/index.d.mts +1 -0
- package/lib/types/client/fabric-fs.d.cts +92 -0
- package/lib/types/client/fabric-fs.d.mts +92 -0
- package/lib/types/client/fabric-hsm.d.cts +24 -0
- package/lib/types/client/fabric-hsm.d.mts +24 -0
- package/lib/types/client/ids/id-extraction.d.cts +4 -0
- package/lib/types/client/ids/id-extraction.d.mts +4 -0
- package/lib/types/client/ids/index.d.cts +1 -0
- package/lib/types/client/ids/index.d.mts +1 -0
- package/lib/types/client/index.d.cts +23 -0
- package/lib/types/client/index.d.mts +23 -0
- package/lib/types/client/indexes/generation.d.cts +10 -0
- package/lib/types/client/indexes/generation.d.mts +10 -0
- package/lib/types/client/indexes/index.d.cts +1 -0
- package/lib/types/client/indexes/index.d.mts +1 -0
- package/lib/types/client/logging.d.cts +60 -0
- package/lib/types/client/logging.d.mts +60 -0
- package/lib/types/client/services/FabricEnrollmentService.d.cts +176 -0
- package/lib/types/client/services/FabricEnrollmentService.d.mts +176 -0
- package/lib/types/client/services/FabricIdentityService.d.cts +98 -0
- package/lib/types/client/services/FabricIdentityService.d.mts +98 -0
- package/lib/types/client/services/RegistrationRequestBuilder.d.cts +19 -0
- package/lib/types/client/services/RegistrationRequestBuilder.d.mts +19 -0
- package/lib/types/client/services/constants.d.cts +15 -0
- package/lib/types/client/services/constants.d.mts +15 -0
- package/lib/types/client/services/index.d.cts +4 -0
- package/lib/types/client/services/index.d.mts +4 -0
- package/lib/types/client/types.d.cts +20 -0
- package/lib/types/client/types.d.mts +20 -0
- package/lib/types/client/utils.d.cts +71 -0
- package/lib/types/client/utils.d.mts +71 -0
- package/lib/types/contract/Address.d.cts +13 -0
- package/lib/types/contract/Address.d.mts +13 -0
- package/lib/types/contract/AddressContract.d.cts +5 -0
- package/lib/types/contract/AddressContract.d.mts +5 -0
- package/lib/types/contract/AuditContract.d.cts +5 -0
- package/lib/types/contract/AuditContract.d.mts +5 -0
- package/lib/types/contract/BatchContract.d.cts +5 -0
- package/lib/types/contract/BatchContract.d.mts +5 -0
- package/lib/types/contract/MarketContract.d.cts +5 -0
- package/lib/types/contract/MarketContract.d.mts +5 -0
- package/lib/types/contract/OtherAuditContract.d.cts +5 -0
- package/lib/types/contract/OtherAuditContract.d.mts +5 -0
- package/lib/types/contract/OtherBatchContract.d.cts +5 -0
- package/lib/types/contract/OtherBatchContract.d.mts +5 -0
- package/lib/types/contract/OtherMarketContract.d.cts +5 -0
- package/lib/types/contract/OtherMarketContract.d.mts +5 -0
- package/lib/types/contract/OtherProductContract.d.cts +5 -0
- package/lib/types/contract/OtherProductContract.d.mts +5 -0
- package/lib/types/contract/OtherProductImageContract.d.cts +5 -0
- package/lib/types/contract/OtherProductImageContract.d.mts +5 -0
- package/lib/types/contract/OtherProductSharedContract.d.cts +5 -0
- package/lib/types/contract/OtherProductSharedContract.d.mts +5 -0
- package/lib/types/contract/OtherProductStrengthContract.d.cts +5 -0
- package/lib/types/contract/OtherProductStrengthContract.d.mts +5 -0
- package/lib/types/contract/Product.d.cts +7 -0
- package/lib/types/contract/Product.d.mts +7 -0
- package/lib/types/contract/ProductContract.d.cts +5 -0
- package/lib/types/contract/ProductContract.d.mts +5 -0
- package/lib/types/contract/ProductStrengthContract.d.cts +5 -0
- package/lib/types/contract/ProductStrengthContract.d.mts +5 -0
- package/lib/types/contract/SegregatedPrivateDocumentContract.d.cts +5 -0
- package/lib/types/contract/SegregatedPrivateDocumentContract.d.mts +5 -0
- package/lib/types/contract/SegregatedSharedDocumentContract.d.cts +5 -0
- package/lib/types/contract/SegregatedSharedDocumentContract.d.mts +5 -0
- package/lib/types/contract/User.d.cts +7 -0
- package/lib/types/contract/User.d.mts +7 -0
- package/lib/types/contract/UserContract.d.cts +5 -0
- package/lib/types/contract/UserContract.d.mts +5 -0
- package/lib/types/contract/index.d.cts +2 -0
- package/lib/types/contract/index.d.mts +2 -0
- package/lib/types/contract/logging-context.d.cts +8 -0
- package/lib/types/contract/logging-context.d.mts +8 -0
- package/lib/types/contract/models/Audit.d.cts +13 -0
- package/lib/types/contract/models/Audit.d.mts +13 -0
- package/lib/types/contract/models/BaseIdentifiedModel.d.cts +7 -0
- package/lib/types/contract/models/BaseIdentifiedModel.d.mts +7 -0
- package/lib/types/contract/models/BaseModel.d.cts +7 -0
- package/lib/types/contract/models/BaseModel.d.mts +7 -0
- package/lib/types/contract/models/Batch.d.cts +18 -0
- package/lib/types/contract/models/Batch.d.mts +18 -0
- package/lib/types/contract/models/GtinOwner.d.cts +8 -0
- package/lib/types/contract/models/GtinOwner.d.mts +8 -0
- package/lib/types/contract/models/History.d.cts +9 -0
- package/lib/types/contract/models/History.d.mts +9 -0
- package/lib/types/contract/models/Leaflet.d.cts +12 -0
- package/lib/types/contract/models/Leaflet.d.mts +12 -0
- package/lib/types/contract/models/LeafletFile.d.cts +9 -0
- package/lib/types/contract/models/LeafletFile.d.mts +9 -0
- package/lib/types/contract/models/Market.d.cts +12 -0
- package/lib/types/contract/models/Market.d.mts +12 -0
- package/lib/types/contract/models/OtherAudit.d.cts +15 -0
- package/lib/types/contract/models/OtherAudit.d.mts +15 -0
- package/lib/types/contract/models/OtherBatchShared.d.cts +18 -0
- package/lib/types/contract/models/OtherBatchShared.d.mts +18 -0
- package/lib/types/contract/models/OtherLeaflet.d.cts +16 -0
- package/lib/types/contract/models/OtherLeaflet.d.mts +16 -0
- package/lib/types/contract/models/OtherLeafletFile.d.cts +10 -0
- package/lib/types/contract/models/OtherLeafletFile.d.mts +10 -0
- package/lib/types/contract/models/OtherMarket.d.cts +13 -0
- package/lib/types/contract/models/OtherMarket.d.mts +13 -0
- package/lib/types/contract/models/OtherProduct.d.cts +12 -0
- package/lib/types/contract/models/OtherProduct.d.mts +12 -0
- package/lib/types/contract/models/OtherProductImage.d.cts +9 -0
- package/lib/types/contract/models/OtherProductImage.d.mts +9 -0
- package/lib/types/contract/models/OtherProductShared.d.cts +18 -0
- package/lib/types/contract/models/OtherProductShared.d.mts +18 -0
- package/lib/types/contract/models/OtherProductStrength.d.cts +12 -0
- package/lib/types/contract/models/OtherProductStrength.d.mts +12 -0
- package/lib/types/contract/models/Product.d.cts +15 -0
- package/lib/types/contract/models/Product.d.mts +15 -0
- package/lib/types/contract/models/ProductStrength.d.cts +11 -0
- package/lib/types/contract/models/ProductStrength.d.mts +11 -0
- package/lib/types/contract/models/SegregatedDocument.d.cts +18 -0
- package/lib/types/contract/models/SegregatedDocument.d.mts +18 -0
- package/lib/types/contract/models/constants.d.cts +24 -0
- package/lib/types/contract/models/constants.d.mts +24 -0
- package/lib/types/contract/models/decorators-private.d.cts +16 -0
- package/lib/types/contract/models/decorators-private.d.mts +16 -0
- package/lib/types/contract/models/decorators.d.cts +28 -0
- package/lib/types/contract/models/decorators.d.mts +28 -0
- package/lib/types/contract/models/gtin.d.cts +8 -0
- package/lib/types/contract/models/gtin.d.mts +8 -0
- package/lib/types/contract/models/history-dec.d.cts +6 -0
- package/lib/types/contract/models/history-dec.d.mts +6 -0
- package/lib/types/contracts/ContractAdapter.d.cts +287 -0
- package/lib/types/contracts/ContractAdapter.d.mts +287 -0
- package/lib/types/contracts/ContractContext.d.cts +89 -0
- package/lib/types/contracts/ContractContext.d.mts +89 -0
- package/lib/types/contracts/FabricContractDispatch.d.cts +7 -0
- package/lib/types/contracts/FabricContractDispatch.d.mts +7 -0
- package/lib/types/contracts/FabricContractPaginator.d.cts +105 -0
- package/lib/types/contracts/FabricContractPaginator.d.mts +105 -0
- package/lib/types/contracts/FabricContractRepository.d.cts +119 -0
- package/lib/types/contracts/FabricContractRepository.d.mts +119 -0
- package/lib/types/contracts/FabricContractRepositoryObservableHandler.d.cts +62 -0
- package/lib/types/contracts/FabricContractRepositoryObservableHandler.d.mts +62 -0
- package/lib/types/contracts/FabricContractSequence.d.cts +87 -0
- package/lib/types/contracts/FabricContractSequence.d.mts +87 -0
- package/lib/types/contracts/FabricContractStatement.d.cts +36 -0
- package/lib/types/contracts/FabricContractStatement.d.mts +36 -0
- package/lib/types/contracts/MigrationContract.d.cts +22 -0
- package/lib/types/contracts/MigrationContract.d.mts +22 -0
- package/lib/types/contracts/PrivateSequence.d.cts +15 -0
- package/lib/types/contracts/PrivateSequence.d.mts +15 -0
- package/lib/types/contracts/auth/decorators.d.cts +6 -0
- package/lib/types/contracts/auth/decorators.d.mts +6 -0
- package/lib/types/contracts/auth/index.d.cts +1 -0
- package/lib/types/contracts/auth/index.d.mts +1 -0
- package/lib/types/contracts/crud/crud-contract.d.cts +199 -0
- package/lib/types/contracts/crud/crud-contract.d.mts +199 -0
- package/lib/types/contracts/crud/index.d.cts +2 -0
- package/lib/types/contracts/crud/index.d.mts +2 -0
- package/lib/types/contracts/crud/serialized-crud-contract.d.cts +42 -0
- package/lib/types/contracts/crud/serialized-crud-contract.d.mts +42 -0
- package/lib/types/contracts/erc20/erc20contract.d.cts +152 -0
- package/lib/types/contracts/erc20/erc20contract.d.mts +152 -0
- package/lib/types/contracts/erc20/index.d.cts +2 -0
- package/lib/types/contracts/erc20/index.d.mts +2 -0
- package/lib/types/contracts/erc20/models.d.cts +114 -0
- package/lib/types/contracts/erc20/models.d.mts +114 -0
- package/lib/types/contracts/index.d.cts +20 -0
- package/lib/types/contracts/index.d.mts +20 -0
- package/lib/types/contracts/logging.d.cts +54 -0
- package/lib/types/contracts/logging.d.mts +54 -0
- package/lib/types/contracts/overrides.d.cts +1 -0
- package/lib/types/contracts/overrides.d.mts +1 -0
- package/lib/types/contracts/types.d.cts +38 -0
- package/lib/types/contracts/types.d.mts +38 -0
- package/lib/types/contracts/uuid.d.cts +2 -0
- package/lib/types/contracts/uuid.d.mts +2 -0
- package/lib/types/index.d.cts +8 -0
- package/lib/types/index.d.mts +8 -0
- package/lib/types/shared/ClientSerializer.d.cts +52 -0
- package/lib/types/shared/ClientSerializer.d.mts +52 -0
- package/lib/types/shared/DeterministicSerializer.d.cts +47 -0
- package/lib/types/shared/DeterministicSerializer.d.mts +47 -0
- package/lib/types/shared/SimpleDeterministicSerializer.d.cts +7 -0
- package/lib/types/shared/SimpleDeterministicSerializer.d.mts +7 -0
- package/lib/types/shared/constants.d.cts +35 -0
- package/lib/types/shared/constants.d.mts +35 -0
- package/lib/types/shared/decorators.d.cts +81 -0
- package/lib/types/shared/decorators.d.mts +81 -0
- package/lib/types/shared/erc20/erc20-constants.d.cts +25 -0
- package/lib/types/shared/erc20/erc20-constants.d.mts +25 -0
- package/lib/types/shared/erc20/index.d.cts +1 -0
- package/lib/types/shared/erc20/index.d.mts +1 -0
- package/lib/types/shared/errors.d.cts +140 -0
- package/lib/types/shared/errors.d.mts +140 -0
- package/lib/types/shared/events.d.cts +37 -0
- package/lib/types/shared/events.d.mts +37 -0
- package/lib/types/shared/fabric-types.d.cts +32 -0
- package/lib/types/shared/fabric-types.d.mts +32 -0
- package/lib/types/shared/index.d.cts +21 -0
- package/lib/types/shared/index.d.mts +21 -0
- package/lib/types/shared/interfaces/Checkable.d.cts +23 -0
- package/lib/types/shared/interfaces/Checkable.d.mts +23 -0
- package/lib/types/shared/interfaces/index.d.cts +1 -0
- package/lib/types/shared/interfaces/index.d.mts +1 -0
- package/lib/types/shared/math.d.cts +34 -0
- package/lib/types/shared/math.d.mts +34 -0
- package/lib/types/shared/model/FabricBaseModel.d.cts +7 -0
- package/lib/types/shared/model/FabricBaseModel.d.mts +7 -0
- package/lib/types/shared/model/FabricIdentifiedBaseModel.d.cts +7 -0
- package/lib/types/shared/model/FabricIdentifiedBaseModel.d.mts +7 -0
- package/lib/types/shared/model/Identity.d.cts +42 -0
- package/lib/types/shared/model/Identity.d.mts +42 -0
- package/lib/types/shared/model/IdentityCredentials.d.cts +41 -0
- package/lib/types/shared/model/IdentityCredentials.d.mts +41 -0
- package/lib/types/shared/model/index.d.cts +4 -0
- package/lib/types/shared/model/index.d.mts +4 -0
- package/lib/types/shared/overrides/Model.d.cts +22 -0
- package/lib/types/shared/overrides/Model.d.mts +22 -0
- package/lib/types/shared/overrides/index.d.cts +2 -0
- package/lib/types/shared/overrides/index.d.mts +2 -0
- package/lib/types/shared/overrides/overrides.d.cts +1 -0
- package/lib/types/shared/overrides/overrides.d.mts +1 -0
- package/lib/types/shared/types.d.cts +125 -0
- package/lib/types/shared/types.d.mts +125 -0
- package/lib/types/version.d.cts +2 -0
- package/lib/types/version.d.mts +2 -0
- package/lib/types/version.d.ts +1 -1
- package/package.json +10 -10
- package/lib/cjs/bin/cli.js.map +0 -1
- package/lib/cjs/cli-module.js.map +0 -1
- package/lib/cjs/cli-utils.js.map +0 -1
- package/lib/cjs/client/FabricClientAdapter.js.map +0 -1
- package/lib/cjs/client/FabricClientDispatch.js.map +0 -1
- package/lib/cjs/client/FabricClientPaginator.js.map +0 -1
- package/lib/cjs/client/FabricClientRepository.js.map +0 -1
- package/lib/cjs/client/FabricClientStatement.js.map +0 -1
- package/lib/cjs/client/collections/generation.js.map +0 -1
- package/lib/cjs/client/collections/index.js.map +0 -1
- package/lib/cjs/client/constants.js.map +0 -1
- package/lib/cjs/client/crypto.js.map +0 -1
- package/lib/cjs/client/erc20/FabricERC20ClientRepository.js.map +0 -1
- package/lib/cjs/client/erc20/index.js.map +0 -1
- package/lib/cjs/client/fabric-fs.js.map +0 -1
- package/lib/cjs/client/fabric-hsm.js.map +0 -1
- package/lib/cjs/client/ids/id-extraction.js.map +0 -1
- package/lib/cjs/client/ids/index.js.map +0 -1
- package/lib/cjs/client/index.js.map +0 -1
- package/lib/cjs/client/indexes/generation.js.map +0 -1
- package/lib/cjs/client/indexes/index.js.map +0 -1
- package/lib/cjs/client/logging.js.map +0 -1
- package/lib/cjs/client/services/FabricEnrollmentService.js.map +0 -1
- package/lib/cjs/client/services/FabricIdentityService.js.map +0 -1
- package/lib/cjs/client/services/RegistrationRequestBuilder.js.map +0 -1
- package/lib/cjs/client/services/constants.js.map +0 -1
- package/lib/cjs/client/services/index.js.map +0 -1
- package/lib/cjs/client/types.js.map +0 -1
- package/lib/cjs/client/utils.js.map +0 -1
- package/lib/cjs/contract/Address.js.map +0 -1
- package/lib/cjs/contract/AddressContract.js.map +0 -1
- package/lib/cjs/contract/AuditContract.js.map +0 -1
- package/lib/cjs/contract/BatchContract.js.map +0 -1
- package/lib/cjs/contract/MarketContract.js.map +0 -1
- package/lib/cjs/contract/OtherAuditContract.js.map +0 -1
- package/lib/cjs/contract/OtherBatchContract.js.map +0 -1
- package/lib/cjs/contract/OtherMarketContract.js.map +0 -1
- package/lib/cjs/contract/OtherProductContract.js.map +0 -1
- package/lib/cjs/contract/OtherProductImageContract.js.map +0 -1
- package/lib/cjs/contract/OtherProductSharedContract.js.map +0 -1
- package/lib/cjs/contract/OtherProductStrengthContract.js.map +0 -1
- package/lib/cjs/contract/Product.js.map +0 -1
- package/lib/cjs/contract/ProductContract.js.map +0 -1
- package/lib/cjs/contract/ProductStrengthContract.js.map +0 -1
- package/lib/cjs/contract/SegregatedPrivateDocumentContract.js.map +0 -1
- package/lib/cjs/contract/SegregatedSharedDocumentContract.js.map +0 -1
- package/lib/cjs/contract/User.js.map +0 -1
- package/lib/cjs/contract/UserContract.js.map +0 -1
- package/lib/cjs/contract/index.js.map +0 -1
- package/lib/cjs/contract/logging-context.js.map +0 -1
- package/lib/cjs/contract/models/Audit.js.map +0 -1
- package/lib/cjs/contract/models/BaseIdentifiedModel.js.map +0 -1
- package/lib/cjs/contract/models/BaseModel.js.map +0 -1
- package/lib/cjs/contract/models/Batch.js.map +0 -1
- package/lib/cjs/contract/models/GtinOwner.js.map +0 -1
- package/lib/cjs/contract/models/History.js.map +0 -1
- package/lib/cjs/contract/models/Leaflet.js.map +0 -1
- package/lib/cjs/contract/models/LeafletFile.js.map +0 -1
- package/lib/cjs/contract/models/Market.js.map +0 -1
- package/lib/cjs/contract/models/OtherAudit.js.map +0 -1
- package/lib/cjs/contract/models/OtherBatchShared.js.map +0 -1
- package/lib/cjs/contract/models/OtherLeaflet.js.map +0 -1
- package/lib/cjs/contract/models/OtherLeafletFile.js.map +0 -1
- package/lib/cjs/contract/models/OtherMarket.js.map +0 -1
- package/lib/cjs/contract/models/OtherProduct.js.map +0 -1
- package/lib/cjs/contract/models/OtherProductImage.js.map +0 -1
- package/lib/cjs/contract/models/OtherProductShared.js.map +0 -1
- package/lib/cjs/contract/models/OtherProductStrength.js.map +0 -1
- package/lib/cjs/contract/models/Product.js.map +0 -1
- package/lib/cjs/contract/models/ProductStrength.js.map +0 -1
- package/lib/cjs/contract/models/SegregatedDocument.js.map +0 -1
- package/lib/cjs/contract/models/constants.js.map +0 -1
- package/lib/cjs/contract/models/decorators-private.js.map +0 -1
- package/lib/cjs/contract/models/decorators.js.map +0 -1
- package/lib/cjs/contract/models/gtin.js.map +0 -1
- package/lib/cjs/contract/models/history-dec.js.map +0 -1
- package/lib/cjs/contracts/ContractAdapter.js.map +0 -1
- package/lib/cjs/contracts/ContractContext.js.map +0 -1
- package/lib/cjs/contracts/FabricContractDispatch.js.map +0 -1
- package/lib/cjs/contracts/FabricContractPaginator.js.map +0 -1
- package/lib/cjs/contracts/FabricContractRepository.js.map +0 -1
- package/lib/cjs/contracts/FabricContractRepositoryObservableHandler.js.map +0 -1
- package/lib/cjs/contracts/FabricContractSequence.js.map +0 -1
- package/lib/cjs/contracts/FabricContractStatement.js.map +0 -1
- package/lib/cjs/contracts/MigrationContract.js.map +0 -1
- package/lib/cjs/contracts/PrivateSequence.js.map +0 -1
- package/lib/cjs/contracts/auth/decorators.js.map +0 -1
- package/lib/cjs/contracts/auth/index.js.map +0 -1
- package/lib/cjs/contracts/crud/crud-contract.js.map +0 -1
- package/lib/cjs/contracts/crud/index.js.map +0 -1
- package/lib/cjs/contracts/crud/serialized-crud-contract.js.map +0 -1
- package/lib/cjs/contracts/erc20/erc20contract.js.map +0 -1
- package/lib/cjs/contracts/erc20/index.js.map +0 -1
- package/lib/cjs/contracts/erc20/models.js.map +0 -1
- package/lib/cjs/contracts/index.js.map +0 -1
- package/lib/cjs/contracts/logging.js.map +0 -1
- package/lib/cjs/contracts/overrides.js.map +0 -1
- package/lib/cjs/contracts/types.js.map +0 -1
- package/lib/cjs/contracts/uuid.js.map +0 -1
- package/lib/cjs/index.js.map +0 -1
- package/lib/cjs/shared/ClientSerializer.js.map +0 -1
- package/lib/cjs/shared/DeterministicSerializer.js.map +0 -1
- package/lib/cjs/shared/SimpleDeterministicSerializer.js.map +0 -1
- package/lib/cjs/shared/constants.js.map +0 -1
- package/lib/cjs/shared/decorators.js.map +0 -1
- package/lib/cjs/shared/erc20/erc20-constants.js.map +0 -1
- package/lib/cjs/shared/erc20/index.js.map +0 -1
- package/lib/cjs/shared/errors.js.map +0 -1
- package/lib/cjs/shared/events.js.map +0 -1
- package/lib/cjs/shared/fabric-types.js.map +0 -1
- package/lib/cjs/shared/index.js.map +0 -1
- package/lib/cjs/shared/interfaces/Checkable.js.map +0 -1
- package/lib/cjs/shared/interfaces/index.js.map +0 -1
- package/lib/cjs/shared/math.js.map +0 -1
- package/lib/cjs/shared/model/FabricBaseModel.js.map +0 -1
- package/lib/cjs/shared/model/FabricIdentifiedBaseModel.js.map +0 -1
- package/lib/cjs/shared/model/Identity.js.map +0 -1
- package/lib/cjs/shared/model/IdentityCredentials.js.map +0 -1
- package/lib/cjs/shared/model/index.js.map +0 -1
- package/lib/cjs/shared/overrides/Model.js.map +0 -1
- package/lib/cjs/shared/overrides/index.js.map +0 -1
- package/lib/cjs/shared/overrides/overrides.js.map +0 -1
- package/lib/cjs/shared/types.js.map +0 -1
- package/lib/cjs/version.js.map +0 -1
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { MaybeContextualArg, Paginator, PreparedStatement, SerializedPage } from "@decaf-ts/core";
|
|
2
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
4
|
+
import { FabricClientAdapter } from "./FabricClientAdapter.cjs";
|
|
5
|
+
import { MangoQuery } from "@decaf-ts/for-couchdb";
|
|
6
|
+
export declare class FabricClientPaginator<M extends Model> extends Paginator<M, M[], MangoQuery> {
|
|
7
|
+
bookmark?: string;
|
|
8
|
+
constructor(adapter: FabricClientAdapter, query: MangoQuery | PreparedStatement<any>, size: number, clazz: Constructor<M>);
|
|
9
|
+
protected prepare(rawStatement: MangoQuery): MangoQuery;
|
|
10
|
+
page(page?: number, ...args: MaybeContextualArg<any>): Promise<M[]>;
|
|
11
|
+
static isSerializedPage(obj: SerializedPage<any> | any): any;
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { MaybeContextualArg, Paginator, PreparedStatement, SerializedPage } from "@decaf-ts/core";
|
|
2
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
4
|
+
import { FabricClientAdapter } from "./FabricClientAdapter.js";
|
|
5
|
+
import { MangoQuery } from "@decaf-ts/for-couchdb";
|
|
6
|
+
export declare class FabricClientPaginator<M extends Model> extends Paginator<M, M[], MangoQuery> {
|
|
7
|
+
bookmark?: string;
|
|
8
|
+
constructor(adapter: FabricClientAdapter, query: MangoQuery | PreparedStatement<any>, size: number, clazz: Constructor<M>);
|
|
9
|
+
protected prepare(rawStatement: MangoQuery): MangoQuery;
|
|
10
|
+
page(page?: number, ...args: MaybeContextualArg<any>): Promise<M[]>;
|
|
11
|
+
static isSerializedPage(obj: SerializedPage<any> | any): any;
|
|
12
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { MaybeContextualArg } from "@decaf-ts/core";
|
|
2
|
+
import { ContextOf, DirectionLimitOffset, FlagsOf, ObserverHandler, OrderDirection, Repository, SerializedPage } from "@decaf-ts/core";
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
5
|
+
import { type FabricClientAdapter } from "./FabricClientAdapter.cjs";
|
|
6
|
+
import { PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
7
|
+
/**
|
|
8
|
+
* @description Repository implementation for Fabric client operations
|
|
9
|
+
* @summary Extends the generic Repository to prepare context and arguments for CRUD operations executed via a Fabric client Adapter, wiring RepositoryFlags and Fabric-specific overrides.
|
|
10
|
+
* @template M extends Model - The model type handled by this repository
|
|
11
|
+
* @param {Adapter<any, MangoQuery, FabricFlags, Context<FabricFlags>>} [adapter] - Optional adapter instance used to execute operations
|
|
12
|
+
* @param {Constructor<M>} [clazz] - Optional model constructor used by the repository
|
|
13
|
+
* @return {void}
|
|
14
|
+
* @class FabricClientRepository
|
|
15
|
+
* @example
|
|
16
|
+
* import { Repository } from "@decaf-ts/core";
|
|
17
|
+
* import { FabricClientRepository } from "@decaf-ts/for-fabric";
|
|
18
|
+
*
|
|
19
|
+
* class User extends Model { id!: string; name!: string; }
|
|
20
|
+
* const repo = new FabricClientRepository<User>();
|
|
21
|
+
* const created = await repo.create(new User({ id: "1", name: "Alice" }));
|
|
22
|
+
* const loaded = await repo.read("1");
|
|
23
|
+
*
|
|
24
|
+
* @mermaid
|
|
25
|
+
* sequenceDiagram
|
|
26
|
+
* participant App
|
|
27
|
+
* participant Repo as FabricClientRepository
|
|
28
|
+
* participant Adapter
|
|
29
|
+
* App->>Repo: create(model)
|
|
30
|
+
* Repo->>Repo: createPrefix(model, ...args)
|
|
31
|
+
* Repo->>Adapter: create(table, id, model, flags)
|
|
32
|
+
* Adapter-->>Repo: result
|
|
33
|
+
* Repo-->>App: model
|
|
34
|
+
*/
|
|
35
|
+
export declare class FabricClientRepository<M extends Model, A extends FabricClientAdapter = FabricClientAdapter> extends Repository<M, A> {
|
|
36
|
+
protected _overrides: Partial<FlagsOf<ContextOf<A>>> & {
|
|
37
|
+
ignoreValidation: boolean;
|
|
38
|
+
ignoreHandlers: boolean;
|
|
39
|
+
allowRawStatements: boolean;
|
|
40
|
+
forcePrepareSimpleQueries: boolean;
|
|
41
|
+
forcePrepareComplexQueries: boolean;
|
|
42
|
+
allowGenerationOverride: boolean;
|
|
43
|
+
rebuildWithTransient: boolean;
|
|
44
|
+
};
|
|
45
|
+
constructor(adapter?: A, clazz?: Constructor<M>, force?: boolean);
|
|
46
|
+
override(flags: Partial<FlagsOf<ContextOf<A>>>): this;
|
|
47
|
+
protected ObserverHandler(): ObserverHandler;
|
|
48
|
+
paginateBy(key: keyof M, order: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
|
|
49
|
+
listBy(key: keyof M, order: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
50
|
+
findBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
51
|
+
findOneBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
52
|
+
find(value: string, order?: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
53
|
+
page(value: string, direction?: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
|
|
54
|
+
statement(name: string, ...args: MaybeContextualArg<ContextOf<A>>): Promise<any>;
|
|
55
|
+
private applyAfterRead;
|
|
56
|
+
countOf(key?: keyof M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
|
|
57
|
+
maxOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
|
|
58
|
+
minOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
|
|
59
|
+
avgOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
|
|
60
|
+
sumOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
|
|
61
|
+
distinctOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K][]>;
|
|
62
|
+
groupOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, M[]>>;
|
|
63
|
+
healthcheck(...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, any>>;
|
|
64
|
+
create(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
65
|
+
update(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
66
|
+
protected createAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...any[], ContextOf<A>]>;
|
|
67
|
+
createAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
68
|
+
readAll(keys: PrimaryKeyType[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
69
|
+
updateAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
70
|
+
private ensureLegacyMirrorFlag;
|
|
71
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { MaybeContextualArg } from "@decaf-ts/core";
|
|
2
|
+
import { ContextOf, DirectionLimitOffset, FlagsOf, ObserverHandler, OrderDirection, Repository, SerializedPage } from "@decaf-ts/core";
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
5
|
+
import { type FabricClientAdapter } from "./FabricClientAdapter.js";
|
|
6
|
+
import { PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
7
|
+
/**
|
|
8
|
+
* @description Repository implementation for Fabric client operations
|
|
9
|
+
* @summary Extends the generic Repository to prepare context and arguments for CRUD operations executed via a Fabric client Adapter, wiring RepositoryFlags and Fabric-specific overrides.
|
|
10
|
+
* @template M extends Model - The model type handled by this repository
|
|
11
|
+
* @param {Adapter<any, MangoQuery, FabricFlags, Context<FabricFlags>>} [adapter] - Optional adapter instance used to execute operations
|
|
12
|
+
* @param {Constructor<M>} [clazz] - Optional model constructor used by the repository
|
|
13
|
+
* @return {void}
|
|
14
|
+
* @class FabricClientRepository
|
|
15
|
+
* @example
|
|
16
|
+
* import { Repository } from "@decaf-ts/core";
|
|
17
|
+
* import { FabricClientRepository } from "@decaf-ts/for-fabric";
|
|
18
|
+
*
|
|
19
|
+
* class User extends Model { id!: string; name!: string; }
|
|
20
|
+
* const repo = new FabricClientRepository<User>();
|
|
21
|
+
* const created = await repo.create(new User({ id: "1", name: "Alice" }));
|
|
22
|
+
* const loaded = await repo.read("1");
|
|
23
|
+
*
|
|
24
|
+
* @mermaid
|
|
25
|
+
* sequenceDiagram
|
|
26
|
+
* participant App
|
|
27
|
+
* participant Repo as FabricClientRepository
|
|
28
|
+
* participant Adapter
|
|
29
|
+
* App->>Repo: create(model)
|
|
30
|
+
* Repo->>Repo: createPrefix(model, ...args)
|
|
31
|
+
* Repo->>Adapter: create(table, id, model, flags)
|
|
32
|
+
* Adapter-->>Repo: result
|
|
33
|
+
* Repo-->>App: model
|
|
34
|
+
*/
|
|
35
|
+
export declare class FabricClientRepository<M extends Model, A extends FabricClientAdapter = FabricClientAdapter> extends Repository<M, A> {
|
|
36
|
+
protected _overrides: Partial<FlagsOf<ContextOf<A>>> & {
|
|
37
|
+
ignoreValidation: boolean;
|
|
38
|
+
ignoreHandlers: boolean;
|
|
39
|
+
allowRawStatements: boolean;
|
|
40
|
+
forcePrepareSimpleQueries: boolean;
|
|
41
|
+
forcePrepareComplexQueries: boolean;
|
|
42
|
+
allowGenerationOverride: boolean;
|
|
43
|
+
rebuildWithTransient: boolean;
|
|
44
|
+
};
|
|
45
|
+
constructor(adapter?: A, clazz?: Constructor<M>, force?: boolean);
|
|
46
|
+
override(flags: Partial<FlagsOf<ContextOf<A>>>): this;
|
|
47
|
+
protected ObserverHandler(): ObserverHandler;
|
|
48
|
+
paginateBy(key: keyof M, order: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
|
|
49
|
+
listBy(key: keyof M, order: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
50
|
+
findBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
51
|
+
findOneBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
52
|
+
find(value: string, order?: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
53
|
+
page(value: string, direction?: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
|
|
54
|
+
statement(name: string, ...args: MaybeContextualArg<ContextOf<A>>): Promise<any>;
|
|
55
|
+
private applyAfterRead;
|
|
56
|
+
countOf(key?: keyof M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
|
|
57
|
+
maxOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
|
|
58
|
+
minOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
|
|
59
|
+
avgOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
|
|
60
|
+
sumOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
|
|
61
|
+
distinctOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K][]>;
|
|
62
|
+
groupOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, M[]>>;
|
|
63
|
+
healthcheck(...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, any>>;
|
|
64
|
+
create(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
65
|
+
update(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
|
|
66
|
+
protected createAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...any[], ContextOf<A>]>;
|
|
67
|
+
createAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
68
|
+
readAll(keys: PrimaryKeyType[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
69
|
+
updateAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
70
|
+
private ensureLegacyMirrorFlag;
|
|
71
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { AdapterFlags, Condition, Context, MaybeContextualArg, PreparedStatement, Statement, StatementExecutor } from "@decaf-ts/core";
|
|
2
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { FabricClientAdapter } from "./FabricClientAdapter.cjs";
|
|
4
|
+
import { MangoQuery } from "@decaf-ts/for-couchdb";
|
|
5
|
+
import { FabricClientFlags } from "./types.cjs";
|
|
6
|
+
export declare class FabricClientStatement<M extends Model, R> extends Statement<M, FabricClientAdapter, R, MangoQuery> {
|
|
7
|
+
constructor(adapter: FabricClientAdapter, overrides?: Partial<AdapterFlags>);
|
|
8
|
+
protected squash(ctx: Context<FabricClientFlags>): PreparedStatement<any> | undefined;
|
|
9
|
+
protected executePrepared(...argz: MaybeContextualArg<Context<FabricClientFlags>>): Promise<R>;
|
|
10
|
+
prepare(ctx?: Context<FabricClientFlags>): Promise<StatementExecutor<M, R>>;
|
|
11
|
+
/**
|
|
12
|
+
* @description Processes a record from CouchDB/Fabric
|
|
13
|
+
* @summary Extracts the ID from a CouchDB document and reverts it to a model instance
|
|
14
|
+
*/
|
|
15
|
+
protected processRecord(record: any, ctx: Context<FabricClientFlags>): M;
|
|
16
|
+
/**
|
|
17
|
+
* @description Executes a raw Mango query
|
|
18
|
+
* @summary Sends a raw Mango query to Fabric and processes the results
|
|
19
|
+
*/
|
|
20
|
+
raw<R>(rawInput: MangoQuery, ...args: any[]): Promise<R>;
|
|
21
|
+
/**
|
|
22
|
+
* @description Builds a CouchDB Mango query from the statement
|
|
23
|
+
* @summary Converts the statement's conditions, selectors, and options into a CouchDB Mango query
|
|
24
|
+
*/
|
|
25
|
+
protected build(): MangoQuery;
|
|
26
|
+
/**
|
|
27
|
+
* @description Parses a condition into a CouchDB Mango query selector
|
|
28
|
+
* @summary Converts a Condition object into a CouchDB Mango query selector structure
|
|
29
|
+
*/
|
|
30
|
+
protected parseCondition(condition: Condition<M>): MangoQuery;
|
|
31
|
+
/**
|
|
32
|
+
* @description Builds an aggregate query if aggregation is requested
|
|
33
|
+
* @summary Checks for aggregate operations and returns a special MangoQuery for them
|
|
34
|
+
*/
|
|
35
|
+
private buildAggregateQuery;
|
|
36
|
+
/**
|
|
37
|
+
* @description Creates an aggregate descriptor for a view-based aggregation
|
|
38
|
+
*/
|
|
39
|
+
private createAggregateDescriptor;
|
|
40
|
+
/**
|
|
41
|
+
* @description Creates the special aggregate MangoQuery marker
|
|
42
|
+
*/
|
|
43
|
+
private createAggregateQuery;
|
|
44
|
+
/**
|
|
45
|
+
* @description Gets the adapter cast to FabricClientAdapter for view access
|
|
46
|
+
*/
|
|
47
|
+
private getFabricAdapter;
|
|
48
|
+
/**
|
|
49
|
+
* @description Executes an aggregate query via adapter's view method
|
|
50
|
+
*/
|
|
51
|
+
private executeAggregate;
|
|
52
|
+
/**
|
|
53
|
+
* @description Handles average calculation from sum and count views
|
|
54
|
+
*/
|
|
55
|
+
private handleAverage;
|
|
56
|
+
/**
|
|
57
|
+
* @description Processes the view response based on aggregate kind
|
|
58
|
+
*/
|
|
59
|
+
private processViewResponse;
|
|
60
|
+
/**
|
|
61
|
+
* @description Type guard to check if info is a view-based aggregate
|
|
62
|
+
*/
|
|
63
|
+
private isViewAggregate;
|
|
64
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { AdapterFlags, Condition, Context, MaybeContextualArg, PreparedStatement, Statement, StatementExecutor } from "@decaf-ts/core";
|
|
2
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { FabricClientAdapter } from "./FabricClientAdapter.js";
|
|
4
|
+
import { MangoQuery } from "@decaf-ts/for-couchdb";
|
|
5
|
+
import { FabricClientFlags } from "./types.js";
|
|
6
|
+
export declare class FabricClientStatement<M extends Model, R> extends Statement<M, FabricClientAdapter, R, MangoQuery> {
|
|
7
|
+
constructor(adapter: FabricClientAdapter, overrides?: Partial<AdapterFlags>);
|
|
8
|
+
protected squash(ctx: Context<FabricClientFlags>): PreparedStatement<any> | undefined;
|
|
9
|
+
protected executePrepared(...argz: MaybeContextualArg<Context<FabricClientFlags>>): Promise<R>;
|
|
10
|
+
prepare(ctx?: Context<FabricClientFlags>): Promise<StatementExecutor<M, R>>;
|
|
11
|
+
/**
|
|
12
|
+
* @description Processes a record from CouchDB/Fabric
|
|
13
|
+
* @summary Extracts the ID from a CouchDB document and reverts it to a model instance
|
|
14
|
+
*/
|
|
15
|
+
protected processRecord(record: any, ctx: Context<FabricClientFlags>): M;
|
|
16
|
+
/**
|
|
17
|
+
* @description Executes a raw Mango query
|
|
18
|
+
* @summary Sends a raw Mango query to Fabric and processes the results
|
|
19
|
+
*/
|
|
20
|
+
raw<R>(rawInput: MangoQuery, ...args: any[]): Promise<R>;
|
|
21
|
+
/**
|
|
22
|
+
* @description Builds a CouchDB Mango query from the statement
|
|
23
|
+
* @summary Converts the statement's conditions, selectors, and options into a CouchDB Mango query
|
|
24
|
+
*/
|
|
25
|
+
protected build(): MangoQuery;
|
|
26
|
+
/**
|
|
27
|
+
* @description Parses a condition into a CouchDB Mango query selector
|
|
28
|
+
* @summary Converts a Condition object into a CouchDB Mango query selector structure
|
|
29
|
+
*/
|
|
30
|
+
protected parseCondition(condition: Condition<M>): MangoQuery;
|
|
31
|
+
/**
|
|
32
|
+
* @description Builds an aggregate query if aggregation is requested
|
|
33
|
+
* @summary Checks for aggregate operations and returns a special MangoQuery for them
|
|
34
|
+
*/
|
|
35
|
+
private buildAggregateQuery;
|
|
36
|
+
/**
|
|
37
|
+
* @description Creates an aggregate descriptor for a view-based aggregation
|
|
38
|
+
*/
|
|
39
|
+
private createAggregateDescriptor;
|
|
40
|
+
/**
|
|
41
|
+
* @description Creates the special aggregate MangoQuery marker
|
|
42
|
+
*/
|
|
43
|
+
private createAggregateQuery;
|
|
44
|
+
/**
|
|
45
|
+
* @description Gets the adapter cast to FabricClientAdapter for view access
|
|
46
|
+
*/
|
|
47
|
+
private getFabricAdapter;
|
|
48
|
+
/**
|
|
49
|
+
* @description Executes an aggregate query via adapter's view method
|
|
50
|
+
*/
|
|
51
|
+
private executeAggregate;
|
|
52
|
+
/**
|
|
53
|
+
* @description Handles average calculation from sum and count views
|
|
54
|
+
*/
|
|
55
|
+
private handleAverage;
|
|
56
|
+
/**
|
|
57
|
+
* @description Processes the view response based on aggregate kind
|
|
58
|
+
*/
|
|
59
|
+
private processViewResponse;
|
|
60
|
+
/**
|
|
61
|
+
* @description Type guard to check if info is a view-based aggregate
|
|
62
|
+
*/
|
|
63
|
+
private isViewAggregate;
|
|
64
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
2
|
+
import { CouchDBDesignDoc } from "@decaf-ts/for-couchdb";
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
|
+
export type FabricPolicyIdentity = {
|
|
5
|
+
role: {
|
|
6
|
+
name: string;
|
|
7
|
+
mspId: string;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export type FabricCollection = {
|
|
11
|
+
name: string;
|
|
12
|
+
policy: string;
|
|
13
|
+
requiredPeerCount: number;
|
|
14
|
+
maxPeerCount: number;
|
|
15
|
+
blockToLive: number;
|
|
16
|
+
memberOnlyRead: boolean;
|
|
17
|
+
memberOnlyWrite: boolean;
|
|
18
|
+
endorsementPolicy: {
|
|
19
|
+
identities: FabricPolicyIdentity[];
|
|
20
|
+
rule: string;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export type PrivateCollection = {
|
|
24
|
+
name: string;
|
|
25
|
+
policy: string;
|
|
26
|
+
requiredPeerCount: number;
|
|
27
|
+
maxPeerCount: number;
|
|
28
|
+
blockToLive: number;
|
|
29
|
+
memberOnlyRead: boolean;
|
|
30
|
+
memberOnlyWrite: boolean;
|
|
31
|
+
endorsementPolicy?: {
|
|
32
|
+
signaturePolicy: string;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
export declare function collectionFor(collectionName: string, policy: string, requiredPeerCount: number, maxPeerCount: number, blockToLive: number, memberOnlyRead: boolean, memberOnlyWrite: boolean): PrivateCollection;
|
|
36
|
+
export declare function privateCollectionFor(mspId: string, collectionName?: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
|
|
37
|
+
export declare function sharedCollectionFor(mspIds: string[], collectionName: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
|
|
38
|
+
export declare function extractCollections<M extends Model>(m: Constructor<M>, mspIds: string[], overrides?: {
|
|
39
|
+
privateCols?: Partial<PrivateCollection>;
|
|
40
|
+
sharedCols?: Partial<PrivateCollection>;
|
|
41
|
+
}, mirror?: boolean): Promise<{
|
|
42
|
+
privates: PrivateCollection[];
|
|
43
|
+
shared: PrivateCollection[];
|
|
44
|
+
}>;
|
|
45
|
+
export declare function writeCollections(cols: PrivateCollection[], p?: string, fileName?: string): void;
|
|
46
|
+
export declare function writeCollectionDesignDocs(docs: CouchDBDesignDoc[], p?: string, collection?: string): void;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
2
|
+
import { CouchDBDesignDoc } from "@decaf-ts/for-couchdb";
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
|
+
export type FabricPolicyIdentity = {
|
|
5
|
+
role: {
|
|
6
|
+
name: string;
|
|
7
|
+
mspId: string;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export type FabricCollection = {
|
|
11
|
+
name: string;
|
|
12
|
+
policy: string;
|
|
13
|
+
requiredPeerCount: number;
|
|
14
|
+
maxPeerCount: number;
|
|
15
|
+
blockToLive: number;
|
|
16
|
+
memberOnlyRead: boolean;
|
|
17
|
+
memberOnlyWrite: boolean;
|
|
18
|
+
endorsementPolicy: {
|
|
19
|
+
identities: FabricPolicyIdentity[];
|
|
20
|
+
rule: string;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export type PrivateCollection = {
|
|
24
|
+
name: string;
|
|
25
|
+
policy: string;
|
|
26
|
+
requiredPeerCount: number;
|
|
27
|
+
maxPeerCount: number;
|
|
28
|
+
blockToLive: number;
|
|
29
|
+
memberOnlyRead: boolean;
|
|
30
|
+
memberOnlyWrite: boolean;
|
|
31
|
+
endorsementPolicy?: {
|
|
32
|
+
signaturePolicy: string;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
export declare function collectionFor(collectionName: string, policy: string, requiredPeerCount: number, maxPeerCount: number, blockToLive: number, memberOnlyRead: boolean, memberOnlyWrite: boolean): PrivateCollection;
|
|
36
|
+
export declare function privateCollectionFor(mspId: string, collectionName?: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
|
|
37
|
+
export declare function sharedCollectionFor(mspIds: string[], collectionName: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
|
|
38
|
+
export declare function extractCollections<M extends Model>(m: Constructor<M>, mspIds: string[], overrides?: {
|
|
39
|
+
privateCols?: Partial<PrivateCollection>;
|
|
40
|
+
sharedCols?: Partial<PrivateCollection>;
|
|
41
|
+
}, mirror?: boolean): Promise<{
|
|
42
|
+
privates: PrivateCollection[];
|
|
43
|
+
shared: PrivateCollection[];
|
|
44
|
+
}>;
|
|
45
|
+
export declare function writeCollections(cols: PrivateCollection[], p?: string, fileName?: string): void;
|
|
46
|
+
export declare function writeCollectionDesignDocs(docs: CouchDBDesignDoc[], p?: string, collection?: string): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./generation.cjs";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./generation.js";
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { CryptoKey } from "@peculiar/webcrypto";
|
|
2
|
+
export declare enum BASE_ALPHABET {
|
|
3
|
+
BASE2 = "01",
|
|
4
|
+
BASE8 = "01234567",
|
|
5
|
+
BASE11 = "0123456789a",
|
|
6
|
+
BASE16 = "0123456789abcdef",
|
|
7
|
+
BASE32 = "0123456789ABCDEFGHJKMNPQRSTVWXYZ",
|
|
8
|
+
BASE32_Z = "ybndrfg8ejkmcpqxot1uwisza345h769",
|
|
9
|
+
BASE36 = "0123456789abcdefghijklmnopqrstuvwxyz",
|
|
10
|
+
BASE58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",
|
|
11
|
+
BASE62 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
|
|
12
|
+
BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
|
|
13
|
+
BASE67 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.!~"
|
|
14
|
+
}
|
|
15
|
+
export type keyObject = {
|
|
16
|
+
iv: ArrayBuffer;
|
|
17
|
+
key: CryptoKey;
|
|
18
|
+
};
|
|
19
|
+
export declare enum CRYPTO {
|
|
20
|
+
HASH = "SHA-256",
|
|
21
|
+
ITERATIONS = 1000,
|
|
22
|
+
KEYLENGTH = 48,
|
|
23
|
+
DERIVED_IV_LENGTH = 16,
|
|
24
|
+
DERIVED_KEY_LENGTH = 32,// Because SHA-256 used has a native size of 32 bytes
|
|
25
|
+
ALGORYTHM = "AES-GCM",
|
|
26
|
+
KEY_ALGORYTHM = "PBKDF2"
|
|
27
|
+
}
|
|
28
|
+
export declare class BaseEncoder {
|
|
29
|
+
private alphabet;
|
|
30
|
+
private readonly baseMap;
|
|
31
|
+
private readonly base;
|
|
32
|
+
private readonly leader;
|
|
33
|
+
private readonly factor;
|
|
34
|
+
private readonly iFactor;
|
|
35
|
+
constructor(alphabet: BASE_ALPHABET);
|
|
36
|
+
encode(source: Uint8Array | DataView | any[] | string): string;
|
|
37
|
+
private decodeUnsafe;
|
|
38
|
+
decode(source: string): Uint8Array<ArrayBufferLike>;
|
|
39
|
+
}
|
|
40
|
+
export declare class CryptoUtils {
|
|
41
|
+
private static readonly b58encoder;
|
|
42
|
+
private static readonly logger;
|
|
43
|
+
private constructor();
|
|
44
|
+
static fabricIdFromCertificate(certificate: string): string;
|
|
45
|
+
static encode(str: string): string;
|
|
46
|
+
static decode(str: string): string;
|
|
47
|
+
static stringToArrayBuffer(str: string): ArrayBuffer;
|
|
48
|
+
private static extractKey;
|
|
49
|
+
static extractPrivateKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
|
|
50
|
+
static extractPublicKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
|
|
51
|
+
static sign(privateKey: string, data: Buffer): Promise<string>;
|
|
52
|
+
static verify(certificate: string, signature: Buffer | string, data: Buffer | string): Promise<boolean>;
|
|
53
|
+
static encrypt(certificate: string, data: string | Buffer): Promise<string>;
|
|
54
|
+
private static getSubtleCrypto;
|
|
55
|
+
static decrypt(privateKey: string, data: string | Buffer): Promise<any>;
|
|
56
|
+
/**
|
|
57
|
+
* @summary Util function to get a random master key
|
|
58
|
+
*
|
|
59
|
+
* @description If data is not passed, a random ArrayBuffer will be generated
|
|
60
|
+
*
|
|
61
|
+
* @param {ArrayBuffer} data encrytion data
|
|
62
|
+
*
|
|
63
|
+
* @function getMaster
|
|
64
|
+
*/
|
|
65
|
+
static getMaster(data?: ArrayBuffer): Promise<keyObject>;
|
|
66
|
+
/**
|
|
67
|
+
* @summary Util function to derive a key from another key
|
|
68
|
+
*
|
|
69
|
+
* @param {string} salt
|
|
70
|
+
* @param {CryptoKey} key Original key
|
|
71
|
+
*
|
|
72
|
+
* @function getDerivationKey
|
|
73
|
+
*/
|
|
74
|
+
static getDerivationKey(salt: string, key: CryptoKey): Promise<{
|
|
75
|
+
key: any;
|
|
76
|
+
iv: ArrayBuffer;
|
|
77
|
+
}>;
|
|
78
|
+
/**
|
|
79
|
+
* @summary Util function to get the key and IV from the CrytoKey array
|
|
80
|
+
*
|
|
81
|
+
* @param {ArrayBuffer} derivation
|
|
82
|
+
*
|
|
83
|
+
* @function getKey
|
|
84
|
+
*/
|
|
85
|
+
static getKey(derivation: ArrayBuffer): Promise<{
|
|
86
|
+
key: any;
|
|
87
|
+
iv: ArrayBuffer;
|
|
88
|
+
}>;
|
|
89
|
+
/**
|
|
90
|
+
* @summary Util function to decrypt data
|
|
91
|
+
*
|
|
92
|
+
* @param {string} text
|
|
93
|
+
* @param {keyObject} keyObject
|
|
94
|
+
*
|
|
95
|
+
* @function encrypt
|
|
96
|
+
*/
|
|
97
|
+
static encryptPin(text: string, keyObject: keyObject): Promise<ArrayBuffer>;
|
|
98
|
+
/**
|
|
99
|
+
* @summary Util function to decrypt data
|
|
100
|
+
*
|
|
101
|
+
* @param {BufferSource} encryptedText
|
|
102
|
+
* @param {keyObject} keyObject
|
|
103
|
+
*
|
|
104
|
+
* @function decrypt
|
|
105
|
+
*/
|
|
106
|
+
static decryptPin(encryptedText: ArrayBuffer, keyObject: keyObject): Promise<string>;
|
|
107
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { CryptoKey } from "@peculiar/webcrypto";
|
|
2
|
+
export declare enum BASE_ALPHABET {
|
|
3
|
+
BASE2 = "01",
|
|
4
|
+
BASE8 = "01234567",
|
|
5
|
+
BASE11 = "0123456789a",
|
|
6
|
+
BASE16 = "0123456789abcdef",
|
|
7
|
+
BASE32 = "0123456789ABCDEFGHJKMNPQRSTVWXYZ",
|
|
8
|
+
BASE32_Z = "ybndrfg8ejkmcpqxot1uwisza345h769",
|
|
9
|
+
BASE36 = "0123456789abcdefghijklmnopqrstuvwxyz",
|
|
10
|
+
BASE58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",
|
|
11
|
+
BASE62 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
|
|
12
|
+
BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
|
|
13
|
+
BASE67 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.!~"
|
|
14
|
+
}
|
|
15
|
+
export type keyObject = {
|
|
16
|
+
iv: ArrayBuffer;
|
|
17
|
+
key: CryptoKey;
|
|
18
|
+
};
|
|
19
|
+
export declare enum CRYPTO {
|
|
20
|
+
HASH = "SHA-256",
|
|
21
|
+
ITERATIONS = 1000,
|
|
22
|
+
KEYLENGTH = 48,
|
|
23
|
+
DERIVED_IV_LENGTH = 16,
|
|
24
|
+
DERIVED_KEY_LENGTH = 32,// Because SHA-256 used has a native size of 32 bytes
|
|
25
|
+
ALGORYTHM = "AES-GCM",
|
|
26
|
+
KEY_ALGORYTHM = "PBKDF2"
|
|
27
|
+
}
|
|
28
|
+
export declare class BaseEncoder {
|
|
29
|
+
private alphabet;
|
|
30
|
+
private readonly baseMap;
|
|
31
|
+
private readonly base;
|
|
32
|
+
private readonly leader;
|
|
33
|
+
private readonly factor;
|
|
34
|
+
private readonly iFactor;
|
|
35
|
+
constructor(alphabet: BASE_ALPHABET);
|
|
36
|
+
encode(source: Uint8Array | DataView | any[] | string): string;
|
|
37
|
+
private decodeUnsafe;
|
|
38
|
+
decode(source: string): Uint8Array<ArrayBufferLike>;
|
|
39
|
+
}
|
|
40
|
+
export declare class CryptoUtils {
|
|
41
|
+
private static readonly b58encoder;
|
|
42
|
+
private static readonly logger;
|
|
43
|
+
private constructor();
|
|
44
|
+
static fabricIdFromCertificate(certificate: string): string;
|
|
45
|
+
static encode(str: string): string;
|
|
46
|
+
static decode(str: string): string;
|
|
47
|
+
static stringToArrayBuffer(str: string): ArrayBuffer;
|
|
48
|
+
private static extractKey;
|
|
49
|
+
static extractPrivateKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
|
|
50
|
+
static extractPublicKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
|
|
51
|
+
static sign(privateKey: string, data: Buffer): Promise<string>;
|
|
52
|
+
static verify(certificate: string, signature: Buffer | string, data: Buffer | string): Promise<boolean>;
|
|
53
|
+
static encrypt(certificate: string, data: string | Buffer): Promise<string>;
|
|
54
|
+
private static getSubtleCrypto;
|
|
55
|
+
static decrypt(privateKey: string, data: string | Buffer): Promise<any>;
|
|
56
|
+
/**
|
|
57
|
+
* @summary Util function to get a random master key
|
|
58
|
+
*
|
|
59
|
+
* @description If data is not passed, a random ArrayBuffer will be generated
|
|
60
|
+
*
|
|
61
|
+
* @param {ArrayBuffer} data encrytion data
|
|
62
|
+
*
|
|
63
|
+
* @function getMaster
|
|
64
|
+
*/
|
|
65
|
+
static getMaster(data?: ArrayBuffer): Promise<keyObject>;
|
|
66
|
+
/**
|
|
67
|
+
* @summary Util function to derive a key from another key
|
|
68
|
+
*
|
|
69
|
+
* @param {string} salt
|
|
70
|
+
* @param {CryptoKey} key Original key
|
|
71
|
+
*
|
|
72
|
+
* @function getDerivationKey
|
|
73
|
+
*/
|
|
74
|
+
static getDerivationKey(salt: string, key: CryptoKey): Promise<{
|
|
75
|
+
key: any;
|
|
76
|
+
iv: ArrayBuffer;
|
|
77
|
+
}>;
|
|
78
|
+
/**
|
|
79
|
+
* @summary Util function to get the key and IV from the CrytoKey array
|
|
80
|
+
*
|
|
81
|
+
* @param {ArrayBuffer} derivation
|
|
82
|
+
*
|
|
83
|
+
* @function getKey
|
|
84
|
+
*/
|
|
85
|
+
static getKey(derivation: ArrayBuffer): Promise<{
|
|
86
|
+
key: any;
|
|
87
|
+
iv: ArrayBuffer;
|
|
88
|
+
}>;
|
|
89
|
+
/**
|
|
90
|
+
* @summary Util function to decrypt data
|
|
91
|
+
*
|
|
92
|
+
* @param {string} text
|
|
93
|
+
* @param {keyObject} keyObject
|
|
94
|
+
*
|
|
95
|
+
* @function encrypt
|
|
96
|
+
*/
|
|
97
|
+
static encryptPin(text: string, keyObject: keyObject): Promise<ArrayBuffer>;
|
|
98
|
+
/**
|
|
99
|
+
* @summary Util function to decrypt data
|
|
100
|
+
*
|
|
101
|
+
* @param {BufferSource} encryptedText
|
|
102
|
+
* @param {keyObject} keyObject
|
|
103
|
+
*
|
|
104
|
+
* @function decrypt
|
|
105
|
+
*/
|
|
106
|
+
static decryptPin(encryptedText: ArrayBuffer, keyObject: keyObject): Promise<string>;
|
|
107
|
+
}
|