@super-protocol/sdk-js 2.1.2 → 2.1.3
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/{build → dist/cjs}/TIIGenerator.d.ts +2 -2
- package/dist/cjs/TIIGenerator.js +230 -0
- package/{build → dist/cjs}/analytics/Analytics.d.ts +2 -2
- package/dist/cjs/analytics/Analytics.js +67 -0
- package/{build → dist/cjs}/analytics/AnalyticsError.js +2 -1
- package/{build → dist/cjs}/analytics/eventProviders/BrowserEventProvider.d.ts +1 -1
- package/dist/cjs/analytics/eventProviders/BrowserEventProvider.js +38 -0
- package/dist/cjs/analytics/eventProviders/EventProvider.js +25 -0
- package/{build → dist/cjs}/analytics/eventProviders/NodeEventProvider.d.ts +1 -1
- package/dist/cjs/analytics/eventProviders/NodeEventProvider.js +56 -0
- package/{build → dist/cjs}/analytics/transports/AxiosTransport.d.ts +1 -1
- package/dist/cjs/analytics/transports/AxiosTransport.js +60 -0
- package/{build → dist/cjs}/analytics/transports/FetchTransport.d.ts +1 -1
- package/dist/cjs/analytics/transports/FetchTransport.js +31 -0
- package/{build → dist/cjs}/analytics/types.d.ts +2 -2
- package/{build → dist/cjs}/analytics/types.js +1 -1
- package/{build → dist/cjs}/config.js +1 -1
- package/{build → dist/cjs}/connectors/BaseConnector.d.ts +1 -1
- package/dist/cjs/connectors/BaseConnector.js +41 -0
- package/{build → dist/cjs}/connectors/BlockchainConnector.d.ts +3 -3
- package/dist/cjs/connectors/BlockchainConnector.js +341 -0
- package/{build → dist/cjs}/connectors/BlockchainEventsListener.d.ts +1 -1
- package/dist/cjs/connectors/BlockchainEventsListener.js +103 -0
- package/{build → dist/cjs}/connectors/index.d.ts +2 -2
- package/{build → dist/cjs}/connectors/index.js +5 -5
- package/{build → dist/cjs}/constants.js +1 -1
- package/{build → dist/cjs}/contracts/abi.js +1 -1
- package/dist/cjs/crypto/Crypto.js +100 -0
- package/dist/cjs/crypto/index.d.ts +2 -0
- package/{build → dist/cjs}/crypto/index.js +3 -3
- package/dist/cjs/crypto/nodejs/AES.js +79 -0
- package/dist/cjs/crypto/nodejs/ARIA.js +78 -0
- package/dist/cjs/crypto/nodejs/ECIES.js +56 -0
- package/{build → dist/cjs}/crypto/nodejs/NativeCrypto.d.ts +3 -3
- package/dist/cjs/crypto/nodejs/NativeCrypto.js +165 -0
- package/dist/cjs/crypto/nodejs/RSA-Hybrid.js +94 -0
- package/dist/cjs/index.d.ts +80 -0
- package/dist/cjs/index.js +143 -0
- package/{build → dist/cjs}/logger.js +1 -1
- package/{build → dist/cjs}/models/EtlModel.d.ts +1 -1
- package/dist/cjs/models/EtlModel.js +126 -0
- package/{build → dist/cjs}/models/Offer.d.ts +1 -1
- package/dist/cjs/models/Offer.js +361 -0
- package/{build → dist/cjs}/models/Order.d.ts +1 -1
- package/dist/cjs/models/Order.js +543 -0
- package/{build → dist/cjs}/models/Provider.d.ts +1 -1
- package/dist/cjs/models/Provider.js +119 -0
- package/{build → dist/cjs}/models/TCB.d.ts +1 -1
- package/dist/cjs/models/TCB.js +112 -0
- package/{build → dist/cjs}/models/TeeOffer.d.ts +2 -2
- package/dist/cjs/models/TeeOffer.js +538 -0
- package/dist/cjs/models/index.d.ts +5 -0
- package/dist/cjs/models/index.js +17 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/polyfills.js +7 -0
- package/{build → dist/cjs}/proto/Compression.d.ts +1 -1
- package/dist/cjs/proto/Compression.js +131 -0
- package/{build → dist/cjs}/proto/TRI.d.ts +1 -1
- package/dist/cjs/proto/TRI.js +290 -0
- package/{build → dist/cjs}/proto/TeeProperties.d.ts +1 -1
- package/dist/cjs/proto/TeeProperties.js +397 -0
- package/{build → dist/cjs}/providers/storage/ChunksDownloadDecorator.d.ts +2 -2
- package/dist/cjs/providers/storage/ChunksDownloadDecorator.js +145 -0
- package/{build → dist/cjs}/providers/storage/IStorageProvider.d.ts +1 -1
- package/{build → dist/cjs}/providers/storage/IStorageProvider.js +1 -1
- package/{build → dist/cjs}/providers/storage/S3StorageProvider.d.ts +2 -2
- package/dist/cjs/providers/storage/S3StorageProvider.js +171 -0
- package/{build → dist/cjs}/providers/storage/StorageAdapter.d.ts +2 -2
- package/dist/cjs/providers/storage/StorageAdapter.js +301 -0
- package/{build → dist/cjs}/providers/storage/StorageContentWriter.d.ts +2 -2
- package/dist/cjs/providers/storage/StorageContentWriter.js +168 -0
- package/{build → dist/cjs}/providers/storage/StorageKeyValueAdapter.d.ts +2 -2
- package/dist/cjs/providers/storage/StorageKeyValueAdapter.js +125 -0
- package/{build → dist/cjs}/providers/storage/StorageMetadataReader.d.ts +3 -3
- package/dist/cjs/providers/storage/StorageMetadataReader.js +57 -0
- package/{build → dist/cjs}/providers/storage/StorjAdapter.d.ts +2 -2
- package/dist/cjs/providers/storage/StorjAdapter.js +54 -0
- package/{build → dist/cjs}/providers/storage/StorjStorageProvider.d.ts +2 -3
- package/dist/cjs/providers/storage/StorjStorageProvider.js +145 -0
- package/dist/cjs/providers/storage/getStorageProvider.d.ts +4 -0
- package/dist/cjs/providers/storage/getStorageProvider.js +20 -0
- package/{build → dist/cjs}/providers/storage/types.js +1 -1
- package/{build → dist/cjs}/staticModels/ActiveOffers.d.ts +1 -1
- package/dist/cjs/staticModels/ActiveOffers.js +37 -0
- package/{build → dist/cjs}/staticModels/ActiveOrders.d.ts +1 -1
- package/dist/cjs/staticModels/ActiveOrders.js +76 -0
- package/{build → dist/cjs}/staticModels/Consensus.d.ts +1 -1
- package/dist/cjs/staticModels/Consensus.js +225 -0
- package/{build → dist/cjs}/staticModels/Deposits.d.ts +1 -1
- package/dist/cjs/staticModels/Deposits.js +195 -0
- package/{build → dist/cjs}/staticModels/Marks.d.ts +1 -1
- package/dist/cjs/staticModels/Marks.js +30 -0
- package/dist/cjs/staticModels/ModelPackager.js +49 -0
- package/{build → dist/cjs}/staticModels/Offers.d.ts +2 -2
- package/dist/cjs/staticModels/Offers.js +189 -0
- package/{build → dist/cjs}/staticModels/Orders.d.ts +1 -1
- package/dist/cjs/staticModels/Orders.js +504 -0
- package/{build → dist/cjs}/staticModels/ProviderRegistry.d.ts +1 -1
- package/dist/cjs/staticModels/ProviderRegistry.js +174 -0
- package/{build → dist/cjs}/staticModels/StaticModel.d.ts +2 -2
- package/dist/cjs/staticModels/StaticModel.js +35 -0
- package/{build → dist/cjs}/staticModels/Superpro.d.ts +2 -2
- package/dist/cjs/staticModels/Superpro.js +25 -0
- package/{build → dist/cjs}/staticModels/SuperproToken.d.ts +1 -1
- package/dist/cjs/staticModels/SuperproToken.js +141 -0
- package/{build → dist/cjs}/staticModels/TeeOffers.d.ts +1 -1
- package/dist/cjs/staticModels/TeeOffers.js +314 -0
- package/dist/cjs/store.js +17 -0
- package/{build → dist/cjs}/tee/QuoteParser.d.ts +1 -1
- package/dist/cjs/tee/QuoteParser.js +189 -0
- package/{build → dist/cjs}/tee/QuoteValidator.d.ts +1 -1
- package/dist/cjs/tee/QuoteValidator.js +391 -0
- package/{build → dist/cjs}/tee/errors.js +1 -1
- package/dist/cjs/tee/helpers.js +120 -0
- package/{build → dist/cjs}/tee/interface.d.ts +1 -1
- package/{build → dist/cjs}/tee/interface.js +1 -1
- package/{build → dist/cjs}/tee/statuses.js +4 -4
- package/{build → dist/cjs}/tee/types.d.ts +5 -0
- package/{build → dist/cjs}/tee/types.js +1 -1
- package/{build → dist/cjs}/types/Compressor.js +1 -1
- package/{build → dist/cjs}/types/Consensus.d.ts +1 -1
- package/{build → dist/cjs}/types/Consensus.js +2 -2
- package/{build → dist/cjs}/types/DepositInfo.d.ts +1 -1
- package/{build → dist/cjs}/types/DepositInfo.js +1 -1
- package/{build → dist/cjs}/types/EtlModel.js +1 -1
- package/{build → dist/cjs}/types/Events.d.ts +2 -2
- package/{build → dist/cjs}/types/Events.js +1 -1
- package/dist/cjs/types/HardwareInfo.d.ts +6 -0
- package/{build → dist/cjs}/types/HardwareInfo.js +1 -1
- package/{build → dist/cjs}/types/Marks.js +2 -2
- package/{build → dist/cjs}/types/Offer.d.ts +1 -1
- package/dist/cjs/types/Offer.js +17 -0
- package/{build → dist/cjs}/types/OptionInfo.js +1 -1
- package/{build → dist/cjs}/types/Order.d.ts +1 -1
- package/{build → dist/cjs}/types/Order.js +2 -2
- package/{build → dist/cjs}/types/OrderUsage.d.ts +4 -4
- package/{build → dist/cjs}/types/OrderUsage.js +1 -1
- package/{build → dist/cjs}/types/Origins.js +1 -1
- package/{build → dist/cjs}/types/Provider.js +1 -1
- package/{build → dist/cjs}/types/ResourceLoader.d.ts +1 -1
- package/{build → dist/cjs}/types/ResourceLoader.js +1 -1
- package/{build → dist/cjs}/types/SlotInfo.js +1 -1
- package/{build → dist/cjs}/types/SlotUsage.d.ts +1 -1
- package/{build → dist/cjs}/types/SlotUsage.js +2 -2
- package/{build → dist/cjs}/types/Superpro.js +2 -2
- package/{build → dist/cjs}/types/TeeOfferInfo.d.ts +1 -1
- package/{build → dist/cjs}/types/TeeOfferInfo.js +1 -1
- package/{build → dist/cjs}/types/TeeOfferOption.d.ts +3 -3
- package/{build → dist/cjs}/types/TeeOfferOption.js +1 -1
- package/dist/cjs/types/TeeOfferSlot.d.ts +8 -0
- package/{build → dist/cjs}/types/TeeOfferSlot.js +1 -1
- package/{build → dist/cjs}/types/ValueOfferSlot.d.ts +4 -4
- package/{build → dist/cjs}/types/ValueOfferSlot.js +1 -1
- package/{build → dist/cjs}/types/Web3.js +1 -1
- package/{build → dist/cjs}/types/blockchainConnector/StorageAccess.d.ts +1 -1
- package/{build → dist/cjs}/types/blockchainConnector/StorageAccess.js +1 -1
- package/dist/cjs/types/index.d.ts +22 -0
- package/dist/cjs/types/index.js +39 -0
- package/{build → dist/cjs}/types/storage/StorageAccess.js +1 -1
- package/{build → dist/cjs}/types/storage/StorageFileAccess.d.ts +1 -1
- package/{build → dist/cjs}/types/storage/StorageFileAccess.js +1 -1
- package/{build → dist/cjs}/types/storage/StorageObject.js +1 -1
- package/dist/cjs/utils/Monitoring.js +49 -0
- package/dist/cjs/utils/NonceTracker.js +78 -0
- package/dist/cjs/utils/PubSub.js +35 -0
- package/{build → dist/cjs}/utils/TxManager.d.ts +1 -1
- package/dist/cjs/utils/TxManager.js +169 -0
- package/{build → dist/cjs}/utils/compressors/GzipCompressor.d.ts +2 -2
- package/dist/cjs/utils/compressors/GzipCompressor.js +22 -0
- package/{build → dist/cjs}/utils/compressors/UncompressedCompressor.d.ts +2 -2
- package/dist/cjs/utils/compressors/UncompressedCompressor.js +17 -0
- package/dist/cjs/utils/compressors/index.d.ts +2 -0
- package/{build → dist/cjs}/utils/compressors/index.js +3 -3
- package/{build → dist/cjs}/utils/helper.d.ts +3 -3
- package/dist/cjs/utils/helper.js +289 -0
- package/dist/cjs/utils/helpers/getStreamChunks.js +35 -0
- package/dist/cjs/utils/helpers/index.d.ts +1 -0
- package/{build → dist/cjs}/utils/helpers/index.js +2 -2
- package/dist/cjs/utils/helpers/tryWithInterval.js +39 -0
- package/{build → dist/cjs}/utils/resourceLoaders/BaseResourceLoader.d.ts +1 -1
- package/dist/cjs/utils/resourceLoaders/BaseResourceLoader.js +14 -0
- package/{build → dist/cjs}/utils/resourceLoaders/StorageProviderLoader.d.ts +2 -2
- package/dist/cjs/utils/resourceLoaders/StorageProviderLoader.js +60 -0
- package/{build → dist/cjs}/utils/resourceLoaders/UrlResourceLoader.d.ts +1 -1
- package/dist/cjs/utils/resourceLoaders/UrlResourceLoader.js +51 -0
- package/{build → dist/cjs}/utils/resourceLoaders/getResourceLoader.d.ts +1 -1
- package/dist/cjs/utils/resourceLoaders/getResourceLoader.js +15 -0
- package/dist/cjs/utils/resourceLoaders/index.d.ts +1 -0
- package/{build → dist/cjs}/utils/resourceLoaders/index.js +2 -2
- package/dist/mjs/TIIGenerator.d.ts +22 -0
- package/dist/mjs/TIIGenerator.js +225 -0
- package/dist/mjs/analytics/Analytics.d.ts +15 -0
- package/dist/mjs/analytics/Analytics.js +61 -0
- package/dist/mjs/analytics/AnalyticsError.d.ts +7 -0
- package/dist/mjs/analytics/AnalyticsError.js +8 -0
- package/dist/mjs/analytics/eventProviders/BrowserEventProvider.d.ts +18 -0
- package/dist/mjs/analytics/eventProviders/BrowserEventProvider.js +32 -0
- package/dist/mjs/analytics/eventProviders/EventProvider.d.ts +24 -0
- package/dist/mjs/analytics/eventProviders/EventProvider.js +22 -0
- package/dist/mjs/analytics/eventProviders/NodeEventProvider.d.ts +22 -0
- package/dist/mjs/analytics/eventProviders/NodeEventProvider.js +50 -0
- package/dist/mjs/analytics/transports/AxiosTransport.d.ts +4 -0
- package/dist/mjs/analytics/transports/AxiosTransport.js +31 -0
- package/dist/mjs/analytics/transports/FetchTransport.d.ts +4 -0
- package/dist/mjs/analytics/transports/FetchTransport.js +28 -0
- package/dist/mjs/analytics/types.d.ts +22 -0
- package/dist/mjs/analytics/types.js +2 -0
- package/dist/mjs/config.d.ts +4 -0
- package/dist/mjs/config.js +5 -0
- package/dist/mjs/connectors/BaseConnector.d.ts +36 -0
- package/dist/mjs/connectors/BaseConnector.js +34 -0
- package/dist/mjs/connectors/BlockchainConnector.d.ts +81 -0
- package/dist/mjs/connectors/BlockchainConnector.js +313 -0
- package/dist/mjs/connectors/BlockchainEventsListener.d.ts +15 -0
- package/dist/mjs/connectors/BlockchainEventsListener.js +75 -0
- package/dist/mjs/connectors/index.d.ts +2 -0
- package/dist/mjs/connectors/index.js +3 -0
- package/dist/mjs/constants.d.ts +13 -0
- package/dist/mjs/constants.js +14 -0
- package/dist/mjs/contracts/abi.d.ts +9842 -0
- package/dist/mjs/contracts/abi.js +12844 -0
- package/dist/mjs/crypto/Crypto.d.ts +54 -0
- package/dist/mjs/crypto/Crypto.js +95 -0
- package/dist/mjs/crypto/index.d.ts +2 -0
- package/dist/mjs/crypto/index.js +3 -0
- package/dist/mjs/crypto/nodejs/AES.d.ts +24 -0
- package/dist/mjs/crypto/nodejs/AES.js +74 -0
- package/dist/mjs/crypto/nodejs/ARIA.d.ts +24 -0
- package/dist/mjs/crypto/nodejs/ARIA.js +73 -0
- package/dist/mjs/crypto/nodejs/ECIES.d.ts +6 -0
- package/dist/mjs/crypto/nodejs/ECIES.js +51 -0
- package/dist/mjs/crypto/nodejs/NativeCrypto.d.ts +58 -0
- package/dist/mjs/crypto/nodejs/NativeCrypto.js +163 -0
- package/dist/mjs/crypto/nodejs/RSA-Hybrid.d.ts +15 -0
- package/dist/mjs/crypto/nodejs/RSA-Hybrid.js +89 -0
- package/dist/mjs/index.d.ts +80 -0
- package/dist/mjs/index.js +76 -0
- package/dist/mjs/logger.d.ts +7 -0
- package/dist/mjs/logger.js +7 -0
- package/dist/mjs/models/EtlModel.d.ts +34 -0
- package/dist/mjs/models/EtlModel.js +96 -0
- package/dist/mjs/models/Offer.d.ts +130 -0
- package/dist/mjs/models/Offer.js +356 -0
- package/dist/mjs/models/Order.d.ts +148 -0
- package/dist/mjs/models/Order.js +538 -0
- package/dist/mjs/models/Provider.d.ts +51 -0
- package/dist/mjs/models/Provider.js +114 -0
- package/dist/mjs/models/TCB.d.ts +58 -0
- package/dist/mjs/models/TCB.js +107 -0
- package/dist/mjs/models/TeeOffer.d.ts +204 -0
- package/dist/mjs/models/TeeOffer.js +533 -0
- package/dist/mjs/models/index.d.ts +5 -0
- package/dist/mjs/models/index.js +6 -0
- package/dist/mjs/package.json +1 -0
- package/dist/mjs/polyfills.d.ts +0 -0
- package/dist/mjs/polyfills.js +7 -0
- package/dist/mjs/proto/Compression.d.ts +36 -0
- package/dist/mjs/proto/Compression.js +123 -0
- package/dist/mjs/proto/TRI.d.ts +124 -0
- package/dist/mjs/proto/TRI.js +284 -0
- package/dist/mjs/proto/TeeProperties.d.ts +263 -0
- package/dist/mjs/proto/TeeProperties.js +391 -0
- package/dist/mjs/providers/storage/ChunksDownloadDecorator.d.ts +36 -0
- package/dist/mjs/providers/storage/ChunksDownloadDecorator.js +139 -0
- package/dist/mjs/providers/storage/IStorageProvider.d.ts +15 -0
- package/dist/mjs/providers/storage/IStorageProvider.js +2 -0
- package/dist/mjs/providers/storage/S3StorageProvider.d.ts +25 -0
- package/dist/mjs/providers/storage/S3StorageProvider.js +167 -0
- package/dist/mjs/providers/storage/StorageAdapter.d.ts +60 -0
- package/dist/mjs/providers/storage/StorageAdapter.js +271 -0
- package/dist/mjs/providers/storage/StorageContentWriter.d.ts +46 -0
- package/dist/mjs/providers/storage/StorageContentWriter.js +161 -0
- package/dist/mjs/providers/storage/StorageKeyValueAdapter.d.ts +23 -0
- package/dist/mjs/providers/storage/StorageKeyValueAdapter.js +119 -0
- package/dist/mjs/providers/storage/StorageMetadataReader.d.ts +20 -0
- package/dist/mjs/providers/storage/StorageMetadataReader.js +51 -0
- package/dist/mjs/providers/storage/StorjAdapter.d.ts +19 -0
- package/dist/mjs/providers/storage/StorjAdapter.js +48 -0
- package/dist/mjs/providers/storage/StorjStorageProvider.d.ts +24 -0
- package/dist/mjs/providers/storage/StorjStorageProvider.js +139 -0
- package/dist/mjs/providers/storage/getStorageProvider.d.ts +4 -0
- package/dist/mjs/providers/storage/getStorageProvider.js +15 -0
- package/dist/mjs/providers/storage/types.d.ts +7 -0
- package/dist/mjs/providers/storage/types.js +2 -0
- package/dist/mjs/staticModels/ActiveOffers.d.ts +15 -0
- package/dist/mjs/staticModels/ActiveOffers.js +32 -0
- package/dist/mjs/staticModels/ActiveOrders.d.ts +20 -0
- package/dist/mjs/staticModels/ActiveOrders.js +71 -0
- package/dist/mjs/staticModels/Consensus.d.ts +42 -0
- package/dist/mjs/staticModels/Consensus.js +220 -0
- package/dist/mjs/staticModels/Deposits.d.ts +70 -0
- package/dist/mjs/staticModels/Deposits.js +190 -0
- package/dist/mjs/staticModels/Marks.d.ts +8 -0
- package/dist/mjs/staticModels/Marks.js +25 -0
- package/dist/mjs/staticModels/ModelPackager.d.ts +18 -0
- package/dist/mjs/staticModels/ModelPackager.js +45 -0
- package/dist/mjs/staticModels/Offers.d.ts +65 -0
- package/dist/mjs/staticModels/Offers.js +184 -0
- package/dist/mjs/staticModels/Orders.d.ts +155 -0
- package/dist/mjs/staticModels/Orders.js +499 -0
- package/dist/mjs/staticModels/ProviderRegistry.d.ts +74 -0
- package/dist/mjs/staticModels/ProviderRegistry.js +169 -0
- package/dist/mjs/staticModels/StaticModel.d.ts +8 -0
- package/dist/mjs/staticModels/StaticModel.js +30 -0
- package/dist/mjs/staticModels/Superpro.d.ts +16 -0
- package/dist/mjs/staticModels/Superpro.js +23 -0
- package/dist/mjs/staticModels/SuperproToken.d.ts +48 -0
- package/dist/mjs/staticModels/SuperproToken.js +136 -0
- package/dist/mjs/staticModels/TeeOffers.d.ts +115 -0
- package/dist/mjs/staticModels/TeeOffers.js +309 -0
- package/dist/mjs/store.d.ts +15 -0
- package/dist/mjs/store.js +15 -0
- package/dist/mjs/tee/QuoteParser.d.ts +27 -0
- package/dist/mjs/tee/QuoteParser.js +162 -0
- package/dist/mjs/tee/QuoteValidator.d.ts +38 -0
- package/dist/mjs/tee/QuoteValidator.js +384 -0
- package/dist/mjs/tee/errors.d.ts +6 -0
- package/dist/mjs/tee/errors.js +7 -0
- package/dist/mjs/tee/helpers.d.ts +14 -0
- package/dist/mjs/tee/helpers.js +115 -0
- package/dist/mjs/tee/interface.d.ts +63 -0
- package/dist/mjs/tee/interface.js +2 -0
- package/dist/mjs/tee/statuses.d.ts +21 -0
- package/dist/mjs/tee/statuses.js +25 -0
- package/dist/mjs/tee/types.d.ts +80 -0
- package/dist/mjs/tee/types.js +2 -0
- package/dist/mjs/types/Compressor.d.ts +5 -0
- package/dist/mjs/types/Compressor.js +2 -0
- package/dist/mjs/types/Consensus.d.ts +60 -0
- package/dist/mjs/types/Consensus.js +16 -0
- package/dist/mjs/types/DepositInfo.d.ts +6 -0
- package/dist/mjs/types/DepositInfo.js +2 -0
- package/dist/mjs/types/EtlModel.d.ts +2 -0
- package/dist/mjs/types/EtlModel.js +2 -0
- package/dist/mjs/types/Events.d.ts +34 -0
- package/dist/mjs/types/Events.js +2 -0
- package/dist/mjs/types/HardwareInfo.d.ts +6 -0
- package/dist/mjs/types/HardwareInfo.js +2 -0
- package/dist/mjs/types/Marks.d.ts +9 -0
- package/dist/mjs/types/Marks.js +7 -0
- package/dist/mjs/types/Offer.d.ts +33 -0
- package/dist/mjs/types/Offer.js +14 -0
- package/dist/mjs/types/OptionInfo.d.ts +8 -0
- package/dist/mjs/types/OptionInfo.js +2 -0
- package/dist/mjs/types/Order.d.ts +44 -0
- package/dist/mjs/types/Order.js +12 -0
- package/dist/mjs/types/OrderUsage.d.ts +26 -0
- package/dist/mjs/types/OrderUsage.js +2 -0
- package/dist/mjs/types/Origins.d.ts +6 -0
- package/dist/mjs/types/Origins.js +2 -0
- package/dist/mjs/types/Provider.d.ts +7 -0
- package/dist/mjs/types/Provider.js +2 -0
- package/dist/mjs/types/ResourceLoader.d.ts +28 -0
- package/dist/mjs/types/ResourceLoader.js +2 -0
- package/dist/mjs/types/SlotInfo.d.ts +6 -0
- package/dist/mjs/types/SlotInfo.js +2 -0
- package/dist/mjs/types/SlotUsage.d.ts +11 -0
- package/dist/mjs/types/SlotUsage.js +6 -0
- package/dist/mjs/types/Superpro.d.ts +9 -0
- package/dist/mjs/types/Superpro.js +11 -0
- package/dist/mjs/types/TeeOfferInfo.d.ts +10 -0
- package/dist/mjs/types/TeeOfferInfo.js +2 -0
- package/dist/mjs/types/TeeOfferOption.d.ts +13 -0
- package/dist/mjs/types/TeeOfferOption.js +2 -0
- package/dist/mjs/types/TeeOfferSlot.d.ts +8 -0
- package/dist/mjs/types/TeeOfferSlot.js +2 -0
- package/dist/mjs/types/ValueOfferSlot.d.ts +16 -0
- package/dist/mjs/types/ValueOfferSlot.js +2 -0
- package/dist/mjs/types/Web3.d.ts +62 -0
- package/dist/mjs/types/Web3.js +2 -0
- package/dist/mjs/types/blockchainConnector/StorageAccess.d.ts +8 -0
- package/dist/mjs/types/blockchainConnector/StorageAccess.js +2 -0
- package/dist/mjs/types/index.d.ts +22 -0
- package/dist/mjs/types/index.js +23 -0
- package/dist/mjs/types/storage/StorageAccess.d.ts +7 -0
- package/dist/mjs/types/storage/StorageAccess.js +2 -0
- package/dist/mjs/types/storage/StorageFileAccess.d.ts +5 -0
- package/dist/mjs/types/storage/StorageFileAccess.js +2 -0
- package/dist/mjs/types/storage/StorageObject.d.ts +8 -0
- package/dist/mjs/types/storage/StorageObject.js +2 -0
- package/dist/mjs/utils/Monitoring.d.ts +11 -0
- package/dist/mjs/utils/Monitoring.js +42 -0
- package/dist/mjs/utils/NonceTracker.d.ts +19 -0
- package/dist/mjs/utils/NonceTracker.js +73 -0
- package/dist/mjs/utils/PubSub.d.ts +9 -0
- package/dist/mjs/utils/PubSub.js +32 -0
- package/dist/mjs/utils/TxManager.d.ts +25 -0
- package/dist/mjs/utils/TxManager.js +162 -0
- package/dist/mjs/utils/compressors/GzipCompressor.d.ts +8 -0
- package/dist/mjs/utils/compressors/GzipCompressor.js +15 -0
- package/dist/mjs/utils/compressors/UncompressedCompressor.d.ts +8 -0
- package/dist/mjs/utils/compressors/UncompressedCompressor.js +13 -0
- package/dist/mjs/utils/compressors/index.d.ts +2 -0
- package/dist/mjs/utils/compressors/index.js +3 -0
- package/dist/mjs/utils/helper.d.ts +44 -0
- package/dist/mjs/utils/helper.js +258 -0
- package/dist/mjs/utils/helpers/getStreamChunks.d.ts +9 -0
- package/dist/mjs/utils/helpers/getStreamChunks.js +31 -0
- package/dist/mjs/utils/helpers/index.d.ts +1 -0
- package/dist/mjs/utils/helpers/index.js +2 -0
- package/dist/mjs/utils/helpers/tryWithInterval.d.ts +13 -0
- package/dist/mjs/utils/helpers/tryWithInterval.js +35 -0
- package/dist/mjs/utils/resourceLoaders/BaseResourceLoader.d.ts +10 -0
- package/dist/mjs/utils/resourceLoaders/BaseResourceLoader.js +10 -0
- package/dist/mjs/utils/resourceLoaders/StorageProviderLoader.d.ts +18 -0
- package/dist/mjs/utils/resourceLoaders/StorageProviderLoader.js +53 -0
- package/dist/mjs/utils/resourceLoaders/UrlResourceLoader.d.ts +9 -0
- package/dist/mjs/utils/resourceLoaders/UrlResourceLoader.js +44 -0
- package/dist/mjs/utils/resourceLoaders/getResourceLoader.d.ts +5 -0
- package/dist/mjs/utils/resourceLoaders/getResourceLoader.js +11 -0
- package/dist/mjs/utils/resourceLoaders/index.d.ts +1 -0
- package/dist/mjs/utils/resourceLoaders/index.js +2 -0
- package/package.json +16 -18
- package/build/TIIGenerator.js +0 -246
- package/build/analytics/Analytics.js +0 -74
- package/build/analytics/eventProviders/BrowserEventProvider.js +0 -32
- package/build/analytics/eventProviders/EventProvider.js +0 -14
- package/build/analytics/eventProviders/NodeEventProvider.js +0 -48
- package/build/analytics/transports/AxiosTransport.js +0 -72
- package/build/analytics/transports/FetchTransport.js +0 -42
- package/build/connectors/BaseConnector.js +0 -53
- package/build/connectors/BlockchainConnector.js +0 -358
- package/build/connectors/BlockchainEventsListener.js +0 -114
- package/build/crypto/Crypto.js +0 -119
- package/build/crypto/index.d.ts +0 -2
- package/build/crypto/nodejs/AES.js +0 -94
- package/build/crypto/nodejs/ARIA.js +0 -93
- package/build/crypto/nodejs/ECIES.js +0 -69
- package/build/crypto/nodejs/NativeCrypto.js +0 -183
- package/build/crypto/nodejs/RSA-Hybrid.js +0 -95
- package/build/index.d.ts +0 -79
- package/build/index.js +0 -142
- package/build/models/EtlModel.js +0 -138
- package/build/models/Offer.js +0 -407
- package/build/models/Order.js +0 -577
- package/build/models/Provider.js +0 -137
- package/build/models/TCB.js +0 -135
- package/build/models/TeeOffer.js +0 -600
- package/build/models/index.d.ts +0 -5
- package/build/models/index.js +0 -17
- package/build/polyfills.js +0 -7
- package/build/proto/Compression.js +0 -132
- package/build/proto/TRI.js +0 -293
- package/build/proto/TeeProperties.js +0 -401
- package/build/providers/storage/ChunksDownloadDecorator.js +0 -177
- package/build/providers/storage/S3StorageProvider.js +0 -219
- package/build/providers/storage/StorageAdapter.js +0 -323
- package/build/providers/storage/StorageContentWriter.js +0 -183
- package/build/providers/storage/StorageKeyValueAdapter.js +0 -158
- package/build/providers/storage/StorageMetadataReader.js +0 -68
- package/build/providers/storage/StorjAdapter.js +0 -74
- package/build/providers/storage/StorjStorageProvider.js +0 -207
- package/build/providers/storage/getStorageProvider.d.ts +0 -4
- package/build/providers/storage/getStorageProvider.js +0 -20
- package/build/staticModels/ActiveOffers.js +0 -52
- package/build/staticModels/ActiveOrders.js +0 -91
- package/build/staticModels/Consensus.js +0 -247
- package/build/staticModels/Deposits.js +0 -214
- package/build/staticModels/Marks.js +0 -43
- package/build/staticModels/ModelPackager.js +0 -62
- package/build/staticModels/Offers.js +0 -207
- package/build/staticModels/Orders.js +0 -518
- package/build/staticModels/ProviderRegistry.js +0 -192
- package/build/staticModels/StaticModel.js +0 -46
- package/build/staticModels/Superpro.js +0 -24
- package/build/staticModels/SuperproToken.js +0 -154
- package/build/staticModels/TeeOffers.js +0 -344
- package/build/store.js +0 -17
- package/build/tee/QuoteParser.js +0 -189
- package/build/tee/QuoteValidator.js +0 -414
- package/build/tee/helpers.js +0 -119
- package/build/types/HardwareInfo.d.ts +0 -6
- package/build/types/Offer.js +0 -17
- package/build/types/TeeOfferSlot.d.ts +0 -8
- package/build/types/index.d.ts +0 -22
- package/build/types/index.js +0 -39
- package/build/utils/Monitoring.js +0 -48
- package/build/utils/NonceTracker.js +0 -90
- package/build/utils/PubSub.js +0 -37
- package/build/utils/TxManager.js +0 -179
- package/build/utils/compressors/GzipCompressor.js +0 -29
- package/build/utils/compressors/UncompressedCompressor.js +0 -17
- package/build/utils/compressors/index.d.ts +0 -2
- package/build/utils/helper.js +0 -286
- package/build/utils/helpers/getStreamChunks.js +0 -74
- package/build/utils/helpers/index.d.ts +0 -1
- package/build/utils/helpers/tryWithInterval.js +0 -48
- package/build/utils/resourceLoaders/BaseResourceLoader.js +0 -51
- package/build/utils/resourceLoaders/StorageProviderLoader.js +0 -69
- package/build/utils/resourceLoaders/UrlResourceLoader.js +0 -64
- package/build/utils/resourceLoaders/getResourceLoader.js +0 -15
- package/build/utils/resourceLoaders/index.d.ts +0 -1
- /package/{build → dist/cjs}/analytics/AnalyticsError.d.ts +0 -0
- /package/{build → dist/cjs}/analytics/eventProviders/EventProvider.d.ts +0 -0
- /package/{build → dist/cjs}/config.d.ts +0 -0
- /package/{build → dist/cjs}/constants.d.ts +0 -0
- /package/{build → dist/cjs}/contracts/abi.d.ts +0 -0
- /package/{build → dist/cjs}/crypto/Crypto.d.ts +0 -0
- /package/{build → dist/cjs}/crypto/nodejs/AES.d.ts +0 -0
- /package/{build → dist/cjs}/crypto/nodejs/ARIA.d.ts +0 -0
- /package/{build → dist/cjs}/crypto/nodejs/ECIES.d.ts +0 -0
- /package/{build → dist/cjs}/crypto/nodejs/RSA-Hybrid.d.ts +0 -0
- /package/{build → dist/cjs}/logger.d.ts +0 -0
- /package/{build → dist/cjs}/polyfills.d.ts +0 -0
- /package/{build → dist/cjs}/providers/storage/types.d.ts +0 -0
- /package/{build → dist/cjs}/staticModels/ModelPackager.d.ts +0 -0
- /package/{build → dist/cjs}/store.d.ts +0 -0
- /package/{build → dist/cjs}/tee/errors.d.ts +0 -0
- /package/{build → dist/cjs}/tee/helpers.d.ts +0 -0
- /package/{build → dist/cjs}/tee/statuses.d.ts +0 -0
- /package/{build → dist/cjs}/types/Compressor.d.ts +0 -0
- /package/{build → dist/cjs}/types/EtlModel.d.ts +0 -0
- /package/{build → dist/cjs}/types/Marks.d.ts +0 -0
- /package/{build → dist/cjs}/types/OptionInfo.d.ts +0 -0
- /package/{build → dist/cjs}/types/Origins.d.ts +0 -0
- /package/{build → dist/cjs}/types/Provider.d.ts +0 -0
- /package/{build → dist/cjs}/types/SlotInfo.d.ts +0 -0
- /package/{build → dist/cjs}/types/Superpro.d.ts +0 -0
- /package/{build → dist/cjs}/types/Web3.d.ts +0 -0
- /package/{build → dist/cjs}/types/storage/StorageAccess.d.ts +0 -0
- /package/{build → dist/cjs}/types/storage/StorageObject.d.ts +0 -0
- /package/{build → dist/cjs}/utils/Monitoring.d.ts +0 -0
- /package/{build → dist/cjs}/utils/NonceTracker.d.ts +0 -0
- /package/{build → dist/cjs}/utils/PubSub.d.ts +0 -0
- /package/{build → dist/cjs}/utils/helpers/getStreamChunks.d.ts +0 -0
- /package/{build → dist/cjs}/utils/helpers/tryWithInterval.d.ts +0 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { checkIfActionAccountInitialized, cleanWeb3Data, convertBigIntToString, } from '../utils/helper.js';
|
|
2
|
+
import { BlockchainConnector } from '../connectors/index.js';
|
|
3
|
+
import TxManager from '../utils/TxManager.js';
|
|
4
|
+
import Consensus from '../staticModels/Consensus.js';
|
|
5
|
+
class Provider {
|
|
6
|
+
static contract;
|
|
7
|
+
providerInfo;
|
|
8
|
+
violationRate;
|
|
9
|
+
valueOffers;
|
|
10
|
+
teeOffers;
|
|
11
|
+
origins;
|
|
12
|
+
providerId;
|
|
13
|
+
constructor(providerId) {
|
|
14
|
+
this.providerId = providerId;
|
|
15
|
+
if (!Provider.contract) {
|
|
16
|
+
Provider.contract = BlockchainConnector.getInstance().getContract();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
async modify(providerInfo, transactionOptions) {
|
|
20
|
+
checkIfActionAccountInitialized(transactionOptions);
|
|
21
|
+
await TxManager.execute(Provider.contract.methods.modifyProvider(providerInfo), transactionOptions);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Function for fetching provider info from blockchain
|
|
25
|
+
*/
|
|
26
|
+
async getInfo() {
|
|
27
|
+
const providerInfoParams = await Provider.contract.methods
|
|
28
|
+
.getProviderInfo(this.providerId)
|
|
29
|
+
.call()
|
|
30
|
+
.then((providerInfo) => cleanWeb3Data(providerInfo));
|
|
31
|
+
return (this.providerInfo = providerInfoParams);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Function for fetching provider authority address from blockchain
|
|
35
|
+
*/
|
|
36
|
+
getAuthority() {
|
|
37
|
+
return this.providerId.toString();
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Function for fetching all value offers for this provider
|
|
41
|
+
*/
|
|
42
|
+
async getValueOffers() {
|
|
43
|
+
this.valueOffers = await Provider.contract.methods
|
|
44
|
+
.getProviderValueOffers(this.providerId)
|
|
45
|
+
.call()
|
|
46
|
+
.then((offers) => offers.map((offer) => offer.toString()));
|
|
47
|
+
return this.valueOffers;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Function for fetching all TEE offers for this provider
|
|
51
|
+
*/
|
|
52
|
+
async getTeeOffers() {
|
|
53
|
+
this.teeOffers = await Provider.contract.methods
|
|
54
|
+
.getProviderTeeOffers(this.providerId)
|
|
55
|
+
.call()
|
|
56
|
+
.then((offers) => offers.map((offer) => offer.toString()));
|
|
57
|
+
return this.teeOffers;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Function for fetching violationRate for this provider
|
|
61
|
+
*/
|
|
62
|
+
async getViolationRate() {
|
|
63
|
+
return convertBigIntToString(await Provider.contract.methods.getProviderViolationRate(this.providerId).call());
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Fetch new Origins (createdDate, createdBy, modifiedDate and modifiedBy)
|
|
67
|
+
*/
|
|
68
|
+
async getOrigins() {
|
|
69
|
+
const origins = await Provider.contract.methods
|
|
70
|
+
.getProviderOrigins(this.providerId)
|
|
71
|
+
.call()
|
|
72
|
+
.then((origins) => cleanWeb3Data(origins));
|
|
73
|
+
// Convert blockchain time seconds to js time milliseconds
|
|
74
|
+
origins.createdDate = Number(origins.createdDate) * 1000;
|
|
75
|
+
origins.modifiedDate = Number(origins.modifiedDate) * 1000;
|
|
76
|
+
return (this.origins = origins);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Fetch calculation of required providers security deposit for offers,
|
|
80
|
+
* if additionalAmount is equal zero then deposit will be calculated for existing offers
|
|
81
|
+
* @param additionalAmount - number of tokens planned to be added and frozen as security deposit
|
|
82
|
+
* @returns required deposit
|
|
83
|
+
*/
|
|
84
|
+
getRequiredSecurityDeposit(additionalAmount = '0') {
|
|
85
|
+
const contract = BlockchainConnector.getInstance().getContract();
|
|
86
|
+
return contract.methods.getProviderRequiredSecDepo(this.providerId, additionalAmount).call();
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Fetch provider security deposit by provider authority account
|
|
90
|
+
*/
|
|
91
|
+
async getSecurityDeposit() {
|
|
92
|
+
const contract = BlockchainConnector.getInstance().getContract();
|
|
93
|
+
return convertBigIntToString(await contract.methods.getProviderSecurityDeposit(this.providerId).call());
|
|
94
|
+
}
|
|
95
|
+
async isProviderBanned() {
|
|
96
|
+
const violationRate = await this.getViolationRate();
|
|
97
|
+
const { CONSENSUS_MAX_PENALTIES } = await Consensus.getConstants();
|
|
98
|
+
return Number(violationRate) >= Number(CONSENSUS_MAX_PENALTIES);
|
|
99
|
+
}
|
|
100
|
+
getOrdersLockedProfitList() {
|
|
101
|
+
return Provider.contract.methods
|
|
102
|
+
.getOrdersLockedProfitList(this.providerId)
|
|
103
|
+
.call()
|
|
104
|
+
.then((orders) => orders.map((order) => order.toString()));
|
|
105
|
+
}
|
|
106
|
+
getTcbLockedProfitList() {
|
|
107
|
+
return Provider.contract.methods
|
|
108
|
+
.getTcbLockedProfitList(this.providerId)
|
|
109
|
+
.call()
|
|
110
|
+
.then((tcbIds) => tcbIds.map((tcbId) => tcbId.toString()));
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
export default Provider;
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFDTCwrQkFBK0IsRUFDL0IsYUFBYSxFQUNiLHFCQUFxQixHQUN0QixNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sU0FBUyxNQUFNLHVCQUF1QixDQUFDO0FBQzlDLE9BQU8sU0FBUyxNQUFNLDhCQUE4QixDQUFDO0FBRXJELE1BQU0sUUFBUTtJQUNKLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBRXZDLFlBQVksQ0FBZ0I7SUFDNUIsYUFBYSxDQUFtQjtJQUNoQyxXQUFXLENBQWtCO0lBQzdCLFNBQVMsQ0FBa0I7SUFDM0IsT0FBTyxDQUFXO0lBQ2xCLFVBQVUsQ0FBUztJQUUxQixZQUFZLFVBQWtCO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkIsUUFBUSxDQUFDLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0RSxDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFNLENBQ2pCLFlBQTBCLEVBQzFCLGtCQUF1QztRQUV2QywrQkFBK0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXBELE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FDckIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxFQUN0RCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLE9B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
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { BlockchainId, TcbData, TcbPublicData, TcbUtilityData, TransactionOptions } from '../types/index.js';
|
|
2
|
+
declare class TCB {
|
|
3
|
+
private static readonly logger;
|
|
4
|
+
tcbId: BlockchainId;
|
|
5
|
+
private static contract;
|
|
6
|
+
constructor(tcbId: BlockchainId);
|
|
7
|
+
private applyTcbMarks;
|
|
8
|
+
private setTcbData;
|
|
9
|
+
/**
|
|
10
|
+
* Add data to TeeConfirmationBlock and push it to Consensus
|
|
11
|
+
* @param pb - struct of 'processed' data
|
|
12
|
+
* @param quote - data generated from Enclave
|
|
13
|
+
* @param marks - list of marks
|
|
14
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
15
|
+
*/
|
|
16
|
+
private addToSupply;
|
|
17
|
+
apply(publicData: TcbPublicData, quote: string, publicKey: string, transactionOptions?: TransactionOptions): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Assign TCB from SuspiciousBlocks table to check
|
|
20
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
21
|
+
*/
|
|
22
|
+
assignSuspiciousBlocksToCheck(transactionOptions?: TransactionOptions): Promise<void>;
|
|
23
|
+
/**
|
|
24
|
+
* Assign TCB from LastBlocks table to check
|
|
25
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
26
|
+
*/
|
|
27
|
+
assignLastBlocksToCheck(transactionOptions?: TransactionOptions): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Function stake and lock TCB's reward
|
|
30
|
+
* @param tcbId - TEE Offer's completed and valid TCB contract
|
|
31
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
32
|
+
*/
|
|
33
|
+
claimRewards(transactionOptions?: TransactionOptions): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Function unlock previously locked TCB rewards (by claimRewards)
|
|
36
|
+
* @param tcbId - TCB contract address
|
|
37
|
+
* @param unlockAmount - amount of tokens to unlock, max available amount = TeeOffer.getLockInfo(tcbAddress)
|
|
38
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
39
|
+
*/
|
|
40
|
+
unlockRewards(transactionOptions?: TransactionOptions): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Function for fetching all TCB data
|
|
43
|
+
*/
|
|
44
|
+
get(): Promise<TcbData>;
|
|
45
|
+
/**
|
|
46
|
+
* Function for fetching Public Data from TCB
|
|
47
|
+
*/
|
|
48
|
+
getPublicData(): Promise<TcbPublicData>;
|
|
49
|
+
/**
|
|
50
|
+
* Function for fetching Public Data from TCB
|
|
51
|
+
*/
|
|
52
|
+
getUtilityData(): Promise<TcbUtilityData>;
|
|
53
|
+
/**
|
|
54
|
+
* Function for fetching TCB avaliable reward
|
|
55
|
+
*/
|
|
56
|
+
getRewardAmount(): Promise<bigint>;
|
|
57
|
+
}
|
|
58
|
+
export default TCB;
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import TxManager from '../utils/TxManager.js';
|
|
2
|
+
import { BlockchainConnector } from '../connectors/index.js';
|
|
3
|
+
import { checkIfActionAccountInitialized, cleanWeb3Data, packDeviceId } from '../utils/helper.js';
|
|
4
|
+
import Consensus from '../staticModels/Consensus.js';
|
|
5
|
+
import rootLogger from '../logger.js';
|
|
6
|
+
class TCB {
|
|
7
|
+
static logger = rootLogger.child({ className: 'TCB' });
|
|
8
|
+
tcbId;
|
|
9
|
+
static contract;
|
|
10
|
+
constructor(tcbId) {
|
|
11
|
+
this.tcbId = tcbId;
|
|
12
|
+
if (!TCB.contract) {
|
|
13
|
+
TCB.contract = BlockchainConnector.getInstance().getContract();
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
applyTcbMarks(marks, transactionOptions) {
|
|
17
|
+
return TxManager.execute(TCB.contract.methods.applyTcbMarks(marks, this.tcbId), transactionOptions);
|
|
18
|
+
}
|
|
19
|
+
setTcbData(publicData, quote, publicKey, transactionOptions) {
|
|
20
|
+
checkIfActionAccountInitialized(transactionOptions);
|
|
21
|
+
const fromattedDeviceId = packDeviceId(publicData.deviceId);
|
|
22
|
+
return TxManager.execute(TCB.contract.methods.setTcbData(this.tcbId, publicData.benchmark, publicData.properties, fromattedDeviceId, quote, publicKey), transactionOptions);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Add data to TeeConfirmationBlock and push it to Consensus
|
|
26
|
+
* @param pb - struct of 'processed' data
|
|
27
|
+
* @param quote - data generated from Enclave
|
|
28
|
+
* @param marks - list of marks
|
|
29
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
30
|
+
*/
|
|
31
|
+
addToSupply(transactionOptions) {
|
|
32
|
+
checkIfActionAccountInitialized(transactionOptions);
|
|
33
|
+
return TxManager.execute(TCB.contract.methods.addTcbToSupply(this.tcbId), transactionOptions);
|
|
34
|
+
}
|
|
35
|
+
async apply(publicData, quote, publicKey, transactionOptions) {
|
|
36
|
+
try {
|
|
37
|
+
await this.applyTcbMarks(publicData.checkingTcbMarks, transactionOptions);
|
|
38
|
+
await this.setTcbData(publicData, quote, publicKey, transactionOptions);
|
|
39
|
+
await this.addToSupply(transactionOptions);
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
TCB.logger.debug({ error }, 'Adding TCB to blockchain failed');
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Assign TCB from SuspiciousBlocks table to check
|
|
47
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
48
|
+
*/
|
|
49
|
+
async assignSuspiciousBlocksToCheck(transactionOptions) {
|
|
50
|
+
await TxManager.execute(TCB.contract.methods.assignSuspiciousBlocksToCheck(this.tcbId), transactionOptions);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Assign TCB from LastBlocks table to check
|
|
54
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
55
|
+
*/
|
|
56
|
+
async assignLastBlocksToCheck(transactionOptions) {
|
|
57
|
+
await TxManager.execute(TCB.contract.methods.assignLastBlocksToCheck(this.tcbId), transactionOptions);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Function stake and lock TCB's reward
|
|
61
|
+
* @param tcbId - TEE Offer's completed and valid TCB contract
|
|
62
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
63
|
+
*/
|
|
64
|
+
async claimRewards(transactionOptions) {
|
|
65
|
+
checkIfActionAccountInitialized();
|
|
66
|
+
await TxManager.execute(TCB.contract.methods.claimRewards(this.tcbId), transactionOptions);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Function unlock previously locked TCB rewards (by claimRewards)
|
|
70
|
+
* @param tcbId - TCB contract address
|
|
71
|
+
* @param unlockAmount - amount of tokens to unlock, max available amount = TeeOffer.getLockInfo(tcbAddress)
|
|
72
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
73
|
+
*/
|
|
74
|
+
async unlockRewards(transactionOptions) {
|
|
75
|
+
checkIfActionAccountInitialized();
|
|
76
|
+
await TxManager.execute(TCB.contract.methods.unlockTcbReward(this.tcbId), transactionOptions);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Function for fetching all TCB data
|
|
80
|
+
*/
|
|
81
|
+
async get() {
|
|
82
|
+
const tcb = cleanWeb3Data(await TCB.contract.methods.getTcbById(this.tcbId).call());
|
|
83
|
+
return tcb;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Function for fetching Public Data from TCB
|
|
87
|
+
*/
|
|
88
|
+
async getPublicData() {
|
|
89
|
+
const publicData = await Consensus.getTcbsPublicData([this.tcbId]);
|
|
90
|
+
return publicData[this.tcbId];
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Function for fetching Public Data from TCB
|
|
94
|
+
*/
|
|
95
|
+
async getUtilityData() {
|
|
96
|
+
const utilityData = await Consensus.getTcbsUtilityData([this.tcbId]);
|
|
97
|
+
return utilityData[this.tcbId];
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Function for fetching TCB avaliable reward
|
|
101
|
+
*/
|
|
102
|
+
getRewardAmount() {
|
|
103
|
+
return TCB.contract.methods.getTcbReward(this.tcbId).call();
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
export default TCB;
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVENCLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVscy9UQ0IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxTQUFTLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHN0QsT0FBTyxFQUFFLCtCQUErQixFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRyxPQUFPLFNBQVMsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRCxPQUFPLFVBQVUsTUFBTSxjQUFjLENBQUM7QUFFdEMsTUFBTSxHQUFHO0lBQ0MsTUFBTSxDQUFVLE1BQU0sR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDakUsS0FBSyxDQUFlO0lBQ25CLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBRTlDLFlBQVksS0FBbUI7UUFDN0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixHQUFHLENBQUMsUUFBUSxHQUFHLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2pFLENBQUM7SUFDSCxDQUFDO0lBRU8sYUFBYSxDQUNuQixLQUEwQixFQUMxQixrQkFBdUM7UUFFdkMsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUN0QixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFDckQsa0JBQWtCLENBQ25CLENBQUM7SUFDSixDQUFDO0lBRU8sVUFBVSxDQUNoQixVQUF5QixFQUN6QixLQUFhLEVBQ2IsU0FBaUIsRUFDakIsa0JBQXVDO1FBRXZDLCtCQUErQixDQUFDLGtCQUFrQixDQUFDLENBQUM7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
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { TeeOfferInfo, TransactionOptions, OfferType, Origins, BlockchainId, TokenAmount } from '../types/index.js';
|
|
2
|
+
import { HardwareInfo, TeeOfferOption, TeeOfferSlot, OptionInfo, SlotUsage, SlotInfo } from '../types/index.js';
|
|
3
|
+
import { GetTcbRequest } from '@super-protocol/dto-js';
|
|
4
|
+
declare class TeeOffer {
|
|
5
|
+
private static contract;
|
|
6
|
+
id: BlockchainId;
|
|
7
|
+
violationRate?: bigint | string;
|
|
8
|
+
totalLocked?: TokenAmount;
|
|
9
|
+
offerInfo?: TeeOfferInfo;
|
|
10
|
+
type?: OfferType;
|
|
11
|
+
providerAuthority?: string;
|
|
12
|
+
provider?: string;
|
|
13
|
+
enabled?: boolean;
|
|
14
|
+
tcb?: string;
|
|
15
|
+
tlbAddedTime?: number;
|
|
16
|
+
tcbAddedTime?: number;
|
|
17
|
+
origins?: Origins;
|
|
18
|
+
isCancelable?: boolean;
|
|
19
|
+
minDeposit?: TokenAmount;
|
|
20
|
+
constructor(offerId: BlockchainId);
|
|
21
|
+
/**
|
|
22
|
+
* Function for fetching offer status from the blockchain
|
|
23
|
+
*/
|
|
24
|
+
isEnabled(): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Function for fetching offer hold deposit
|
|
27
|
+
*/
|
|
28
|
+
getMinDeposit(slotId: BlockchainId, slotCount: number, optionsIds: BlockchainId[], optionsCount: number[]): Promise<TokenAmount>;
|
|
29
|
+
/**
|
|
30
|
+
* @returns this TEE offer slots count
|
|
31
|
+
*/
|
|
32
|
+
getSlotsCount(): Promise<number>;
|
|
33
|
+
/**
|
|
34
|
+
* @returns True if offer is cancelable.
|
|
35
|
+
*/
|
|
36
|
+
isOfferCancelable(): Promise<boolean>;
|
|
37
|
+
/**
|
|
38
|
+
* Function for fetching TEE offer info from blockchain
|
|
39
|
+
*/
|
|
40
|
+
getInfo(): Promise<TeeOfferInfo>;
|
|
41
|
+
/**
|
|
42
|
+
* Function for fetching TEE offer hardware info from blockchain
|
|
43
|
+
*/
|
|
44
|
+
getHardwareInfo(): Promise<HardwareInfo>;
|
|
45
|
+
/**
|
|
46
|
+
* Function for fetching tee offer slot by id
|
|
47
|
+
* @param optionId - Slot ID
|
|
48
|
+
*/
|
|
49
|
+
getOptionById(optionId: BlockchainId): Promise<TeeOfferOption>;
|
|
50
|
+
getOptions(begin?: number, end?: number): Promise<TeeOfferOption[]>;
|
|
51
|
+
/**
|
|
52
|
+
* Function for fetching whether tee offer slot exists or not
|
|
53
|
+
* @param optionId - Option ID
|
|
54
|
+
*/
|
|
55
|
+
isOptionExists(optionId: BlockchainId): Promise<boolean>;
|
|
56
|
+
/**
|
|
57
|
+
* Function for add option usage to the tee offer
|
|
58
|
+
* @param optionId - Option ID
|
|
59
|
+
* @param info - New option info
|
|
60
|
+
* @param usage - New slot usage info
|
|
61
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
62
|
+
*/
|
|
63
|
+
addOption(info: OptionInfo, usage: SlotUsage, externalId?: string, transactionOptions?: TransactionOptions): Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* Function for update option info and usage
|
|
66
|
+
* @param optionId - Option ID
|
|
67
|
+
* @param newInfo - New option info
|
|
68
|
+
* @param newUsage - New slot usage info
|
|
69
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
70
|
+
*/
|
|
71
|
+
updateOption(optionId: BlockchainId, newInfo: OptionInfo, newUsage: SlotUsage, transactionOptions?: TransactionOptions): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Function for delete option
|
|
74
|
+
* @param optionId - Option ID
|
|
75
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
76
|
+
*/
|
|
77
|
+
deleteOption(optionId: BlockchainId, transactionOptions?: TransactionOptions): Promise<void>;
|
|
78
|
+
initializeTcb(transactionOptions?: TransactionOptions): Promise<void>;
|
|
79
|
+
private initializeTcbAndAssignBlocks;
|
|
80
|
+
/**
|
|
81
|
+
* Function initialize TCB and returns list of anothers' TCB for their checking
|
|
82
|
+
* @param teeOfferId - id of TEE offer
|
|
83
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
84
|
+
* @returns tcbId and lists of anothers' TCB for their checking
|
|
85
|
+
*/
|
|
86
|
+
getListsForVerification(transactionOptions?: TransactionOptions): Promise<GetTcbRequest>;
|
|
87
|
+
/**
|
|
88
|
+
* Function for fetching whether tee offer slot exists or not
|
|
89
|
+
* @param slotId - Slot ID
|
|
90
|
+
*/
|
|
91
|
+
isSlotExists(slotId: BlockchainId): Promise<boolean>;
|
|
92
|
+
/**
|
|
93
|
+
* Function for fetching tee offer slot by id
|
|
94
|
+
* @param slotId - Slot ID
|
|
95
|
+
*/
|
|
96
|
+
getSlotById(slotId: BlockchainId): Promise<TeeOfferSlot>;
|
|
97
|
+
/**
|
|
98
|
+
* Function for fetching TEE offer slots info from blockchain
|
|
99
|
+
* @param begin - The first element of range.
|
|
100
|
+
* @param end - One past the final element in the range.
|
|
101
|
+
* @returns {Promise<TeeOfferSlot[]>}
|
|
102
|
+
*/
|
|
103
|
+
getSlots(begin?: number, end?: number): Promise<TeeOfferSlot[]>;
|
|
104
|
+
/**
|
|
105
|
+
* Function for add slot usage to the tee offer
|
|
106
|
+
* @param info - New option info
|
|
107
|
+
* @param usage - New slot usage info
|
|
108
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
109
|
+
*/
|
|
110
|
+
addSlot(info: SlotInfo, usage: SlotUsage, externalId?: string, transactionOptions?: TransactionOptions): Promise<void>;
|
|
111
|
+
/**
|
|
112
|
+
* Function for update slot usage to the tee offer
|
|
113
|
+
* @param slotId - Slot ID
|
|
114
|
+
* @param newInfo - New slot info
|
|
115
|
+
* @param newUsage - New slot usage info
|
|
116
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
117
|
+
*/
|
|
118
|
+
updateSlot(slotId: BlockchainId, newInfo: SlotInfo, newUsage: SlotUsage, transactionOptions?: TransactionOptions): Promise<void>;
|
|
119
|
+
/**
|
|
120
|
+
* Function for delete slot usage to the tee offer
|
|
121
|
+
* @param slotId - Slot ID
|
|
122
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
123
|
+
*/
|
|
124
|
+
deleteSlot(slotId: BlockchainId, transactionOptions?: TransactionOptions): Promise<void>;
|
|
125
|
+
/**
|
|
126
|
+
* @param teeOfferId - TEE offer ID
|
|
127
|
+
* @returns {Promise<string>} - Actual TCB ID
|
|
128
|
+
*/
|
|
129
|
+
getActualTcbId(): Promise<BlockchainId>;
|
|
130
|
+
/**
|
|
131
|
+
* Function return last inited TCB of TEE offer
|
|
132
|
+
* @param teeOfferId - id of TEE offer
|
|
133
|
+
* */
|
|
134
|
+
getInitializedTcbId(): Promise<BlockchainId>;
|
|
135
|
+
isTcbCreationAvailable(): Promise<boolean>;
|
|
136
|
+
/**
|
|
137
|
+
* Function for fetching TEE offer provider authority account from blockchain
|
|
138
|
+
*/
|
|
139
|
+
getProviderAuthority(): Promise<string>;
|
|
140
|
+
/**
|
|
141
|
+
* Fetch offer type from blockchain (works for TEE and Value offers)
|
|
142
|
+
*/
|
|
143
|
+
getOfferType(): Promise<OfferType>;
|
|
144
|
+
isTeeOfferVerifying(): Promise<boolean>;
|
|
145
|
+
/**
|
|
146
|
+
* Function for fetching TLB provider from blockchain
|
|
147
|
+
*/
|
|
148
|
+
getTlb(): Promise<string>;
|
|
149
|
+
/**
|
|
150
|
+
* Function for fetching violationRate for this TEE offer
|
|
151
|
+
*/
|
|
152
|
+
getViolationRate(): Promise<bigint | string>;
|
|
153
|
+
/**
|
|
154
|
+
* Fetch new Origins (createdDate, createdBy, modifiedDate and modifiedBy)
|
|
155
|
+
*/
|
|
156
|
+
getOrigins(): Promise<Origins>;
|
|
157
|
+
/**
|
|
158
|
+
* Updates TLB in offer info
|
|
159
|
+
* @param tlb - new TLB
|
|
160
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
161
|
+
*/
|
|
162
|
+
addTlb(tlb: string, transactionOptions?: TransactionOptions): Promise<void>;
|
|
163
|
+
/**
|
|
164
|
+
* Updates name in offer info
|
|
165
|
+
* @param name - new name
|
|
166
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
167
|
+
*/
|
|
168
|
+
setName(name: string, transactionOptions?: TransactionOptions): Promise<void>;
|
|
169
|
+
/**
|
|
170
|
+
* Updates offer info
|
|
171
|
+
* @param newInfo - new offer info
|
|
172
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
173
|
+
*/
|
|
174
|
+
setInfo(newInfo: TeeOfferInfo, transactionOptions?: TransactionOptions): Promise<void>;
|
|
175
|
+
/**
|
|
176
|
+
* Updates offer hardware info
|
|
177
|
+
* @param newHardwareInfo - new offer hardware info
|
|
178
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
179
|
+
*/
|
|
180
|
+
setHardwareInfo(newHardwareInfo: HardwareInfo, transactionOptions?: TransactionOptions): Promise<void>;
|
|
181
|
+
/**
|
|
182
|
+
* Updates description in offer info
|
|
183
|
+
* @param description - new description
|
|
184
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
185
|
+
*/
|
|
186
|
+
setDescription(description: string, transactionOptions?: TransactionOptions): Promise<void>;
|
|
187
|
+
/**
|
|
188
|
+
* Updates argsPublicKey and argsPublicKeyAlgo in order info
|
|
189
|
+
* @param argsPublicKey - new argsPublicKey
|
|
190
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
191
|
+
*/
|
|
192
|
+
setKeys(argsPublicKey: string, transactionOptions?: TransactionOptions): Promise<void>;
|
|
193
|
+
/**
|
|
194
|
+
* Function for disabling TEE offer
|
|
195
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
196
|
+
*/
|
|
197
|
+
disable(transactionOptions?: TransactionOptions): Promise<void>;
|
|
198
|
+
/**
|
|
199
|
+
* Function for enabling TEE offer
|
|
200
|
+
* @param transactionOptions - object what contains alternative action account or gas limit (optional)
|
|
201
|
+
*/
|
|
202
|
+
enable(transactionOptions?: TransactionOptions): Promise<void>;
|
|
203
|
+
}
|
|
204
|
+
export default TeeOffer;
|