@super-protocol/sdk-js 3.16.6 → 3.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/RIGenerator.d.ts +3 -3
- package/dist/cjs/RIGenerator.js +7 -6
- package/dist/cjs/TIIGenerator.d.ts +3 -4
- package/dist/cjs/TIIGenerator.js +34 -7
- package/dist/cjs/TeeInputGeneratorBase.d.ts +3 -3
- package/dist/cjs/TeeInputGeneratorBase.js +5 -5
- package/dist/cjs/certificates/serializer.d.ts +5 -3
- package/dist/cjs/certificates/serializer.js +26 -11
- package/dist/cjs/certificates/types.d.ts +1 -1
- package/dist/cjs/connectors/BaseConnector.d.ts +3 -3
- package/dist/cjs/connectors/BaseConnector.js +1 -1
- package/dist/cjs/connectors/BlockchainConnector.js +3 -3
- package/dist/cjs/connectors/BlockchainEventsListener.d.ts +2 -2
- package/dist/cjs/connectors/BlockchainEventsListener.js +3 -2
- package/dist/cjs/constants.d.ts +1 -3
- package/dist/cjs/constants.js +3 -7
- package/dist/cjs/contracts/abi.d.ts +1067 -1137
- package/dist/cjs/contracts/abi.js +1408 -1500
- package/dist/cjs/crypto/Crypto.d.ts +10 -13
- package/dist/cjs/crypto/Crypto.js +14 -17
- package/dist/cjs/crypto/nodejs/AES.d.ts +1 -1
- package/dist/cjs/crypto/nodejs/AES.js +2 -2
- package/dist/cjs/crypto/nodejs/ARIA.d.ts +1 -1
- package/dist/cjs/crypto/nodejs/ARIA.js +2 -2
- package/dist/cjs/errors/index.d.ts +1 -0
- package/dist/cjs/errors/index.js +4 -2
- package/dist/cjs/errors/insufficient-funds.error.d.ts +19 -0
- package/dist/cjs/errors/insufficient-funds.error.js +57 -0
- package/dist/cjs/index.d.ts +3 -6
- package/dist/cjs/index.js +6 -9
- package/dist/cjs/models/Offer.d.ts +16 -1
- package/dist/cjs/models/Offer.js +59 -9
- package/dist/cjs/models/Order.d.ts +1 -1
- package/dist/cjs/models/Order.js +11 -15
- package/dist/cjs/models/Provider.d.ts +0 -1
- package/dist/cjs/models/Provider.js +1 -7
- package/dist/cjs/models/TCB.d.ts +1 -28
- package/dist/cjs/models/TCB.js +1 -61
- package/dist/cjs/models/TeeOffer.d.ts +3 -18
- package/dist/cjs/models/TeeOffer.js +20 -106
- package/dist/cjs/providers/storage/S3StorageProvider.js +5 -5
- package/dist/cjs/providers/storage/StorageKeyValueAdapter.d.ts +1 -1
- package/dist/cjs/providers/storage/StorageKeyValueAdapter.js +7 -7
- package/dist/cjs/providers/storage/fs-storage-provider.js +35 -15
- package/dist/cjs/providers/storage/parseStorageCredentials.d.ts +1 -2
- package/dist/cjs/staticModels/Consensus.d.ts +5 -16
- package/dist/cjs/staticModels/Consensus.js +17 -86
- package/dist/cjs/staticModels/Offers.d.ts +4 -1
- package/dist/cjs/staticModels/Offers.js +9 -8
- package/dist/cjs/staticModels/OffersCommon.d.ts +3 -1
- package/dist/cjs/staticModels/OffersCommon.js +6 -2
- package/dist/cjs/staticModels/Orders.js +12 -11
- package/dist/cjs/staticModels/ProviderRewards.js +2 -2
- package/dist/cjs/staticModels/StaticModel.js +5 -5
- package/dist/cjs/staticModels/SuperproToken.d.ts +7 -7
- package/dist/cjs/staticModels/SuperproToken.js +3 -3
- package/dist/cjs/staticModels/TeeOffers.d.ts +1 -7
- package/dist/cjs/staticModels/TeeOffers.js +11 -20
- package/dist/cjs/store.d.ts +0 -1
- package/dist/cjs/store.js +1 -2
- package/dist/cjs/tee/TeeBlockVerifier.d.ts +1 -2
- package/dist/cjs/tee/TeeBlockVerifier.js +17 -24
- package/dist/cjs/tee/TeeCertificateService.d.ts +1 -1
- package/dist/cjs/tee/TeeCertificateService.js +6 -10
- package/dist/cjs/tee/statuses.d.ts +0 -7
- package/dist/cjs/tee/statuses.js +2 -10
- package/dist/cjs/types/Consensus.d.ts +10 -31
- package/dist/cjs/types/Consensus.js +2 -10
- package/dist/cjs/types/Offer.d.ts +5 -0
- package/dist/cjs/types/Order.d.ts +26 -21
- package/dist/cjs/types/Order.js +24 -17
- package/dist/cjs/types/index.d.ts +0 -1
- package/dist/cjs/types/index.js +1 -2
- package/dist/cjs/utils/CryptoKeysTransformer.js +5 -5
- package/dist/cjs/utils/TxManager.js +21 -5
- package/dist/cjs/utils/helper.d.ts +2 -8
- package/dist/cjs/utils/helper.js +6 -75
- package/dist/cjs/utils/helpers/OrderArgsHelper.d.ts +2 -2
- package/dist/cjs/utils/helpers/OrderArgsHelper.js +5 -5
- package/dist/cjs/utils/helpers/index.d.ts +1 -0
- package/dist/cjs/utils/helpers/index.js +2 -1
- package/dist/cjs/utils/helpers/streamToBuffer.d.ts +4 -0
- package/dist/cjs/utils/helpers/streamToBuffer.js +13 -0
- package/dist/cjs/utils/order/process-order.js +3 -4
- package/dist/cjs/utils/order/types.d.ts +0 -1
- package/dist/cjs/utils/order/versify.js +1 -7
- package/dist/cjs/utils/rent-calculator/rent-calculator.js +2 -3
- package/dist/cjs/utils/rent-calculator/types.d.ts +0 -1
- package/dist/cjs/utils/tcb.d.ts +2 -0
- package/dist/cjs/utils/tcb.js +13 -0
- package/dist/cjs/utils/types.d.ts +0 -5
- package/dist/mjs/RIGenerator.d.ts +3 -3
- package/dist/mjs/RIGenerator.js +8 -7
- package/dist/mjs/TIIGenerator.d.ts +3 -4
- package/dist/mjs/TIIGenerator.js +34 -7
- package/dist/mjs/TeeInputGeneratorBase.d.ts +3 -3
- package/dist/mjs/TeeInputGeneratorBase.js +5 -5
- package/dist/mjs/certificates/serializer.d.ts +5 -3
- package/dist/mjs/certificates/serializer.js +26 -11
- package/dist/mjs/certificates/types.d.ts +1 -1
- package/dist/mjs/connectors/BaseConnector.d.ts +3 -3
- package/dist/mjs/connectors/BaseConnector.js +1 -1
- package/dist/mjs/connectors/BlockchainConnector.js +3 -3
- package/dist/mjs/connectors/BlockchainEventsListener.d.ts +2 -2
- package/dist/mjs/connectors/BlockchainEventsListener.js +3 -2
- package/dist/mjs/constants.d.ts +1 -3
- package/dist/mjs/constants.js +2 -6
- package/dist/mjs/contracts/abi.d.ts +1067 -1137
- package/dist/mjs/contracts/abi.js +1406 -1498
- package/dist/mjs/crypto/Crypto.d.ts +10 -13
- package/dist/mjs/crypto/Crypto.js +14 -17
- package/dist/mjs/crypto/nodejs/AES.d.ts +1 -1
- package/dist/mjs/crypto/nodejs/AES.js +2 -2
- package/dist/mjs/crypto/nodejs/ARIA.d.ts +1 -1
- package/dist/mjs/crypto/nodejs/ARIA.js +2 -2
- package/dist/mjs/errors/index.d.ts +1 -0
- package/dist/mjs/errors/index.js +2 -1
- package/dist/mjs/errors/insufficient-funds.error.d.ts +19 -0
- package/dist/mjs/errors/insufficient-funds.error.js +53 -0
- package/dist/mjs/index.d.ts +3 -6
- package/dist/mjs/index.js +4 -7
- package/dist/mjs/models/Offer.d.ts +16 -1
- package/dist/mjs/models/Offer.js +53 -3
- package/dist/mjs/models/Order.d.ts +1 -1
- package/dist/mjs/models/Order.js +11 -15
- package/dist/mjs/models/Provider.d.ts +0 -1
- package/dist/mjs/models/Provider.js +1 -7
- package/dist/mjs/models/TCB.d.ts +1 -28
- package/dist/mjs/models/TCB.js +2 -62
- package/dist/mjs/models/TeeOffer.d.ts +3 -18
- package/dist/mjs/models/TeeOffer.js +13 -99
- package/dist/mjs/providers/storage/S3StorageProvider.js +5 -5
- package/dist/mjs/providers/storage/StorageKeyValueAdapter.d.ts +1 -1
- package/dist/mjs/providers/storage/StorageKeyValueAdapter.js +7 -7
- package/dist/mjs/providers/storage/fs-storage-provider.js +35 -15
- package/dist/mjs/providers/storage/parseStorageCredentials.d.ts +1 -2
- package/dist/mjs/staticModels/Consensus.d.ts +5 -16
- package/dist/mjs/staticModels/Consensus.js +18 -87
- package/dist/mjs/staticModels/Offers.d.ts +4 -1
- package/dist/mjs/staticModels/Offers.js +9 -8
- package/dist/mjs/staticModels/OffersCommon.d.ts +3 -1
- package/dist/mjs/staticModels/OffersCommon.js +6 -2
- package/dist/mjs/staticModels/Orders.js +12 -11
- package/dist/mjs/staticModels/ProviderRewards.js +3 -3
- package/dist/mjs/staticModels/StaticModel.js +5 -5
- package/dist/mjs/staticModels/SuperproToken.d.ts +7 -7
- package/dist/mjs/staticModels/SuperproToken.js +3 -3
- package/dist/mjs/staticModels/TeeOffers.d.ts +1 -7
- package/dist/mjs/staticModels/TeeOffers.js +12 -21
- package/dist/mjs/store.d.ts +0 -1
- package/dist/mjs/store.js +2 -3
- package/dist/mjs/tee/TeeBlockVerifier.d.ts +1 -2
- package/dist/mjs/tee/TeeBlockVerifier.js +17 -24
- package/dist/mjs/tee/TeeCertificateService.d.ts +1 -1
- package/dist/mjs/tee/TeeCertificateService.js +7 -11
- package/dist/mjs/tee/statuses.d.ts +0 -7
- package/dist/mjs/tee/statuses.js +1 -9
- package/dist/mjs/types/Consensus.d.ts +10 -31
- package/dist/mjs/types/Consensus.js +1 -9
- package/dist/mjs/types/Offer.d.ts +5 -0
- package/dist/mjs/types/Order.d.ts +26 -21
- package/dist/mjs/types/Order.js +21 -17
- package/dist/mjs/types/index.d.ts +0 -1
- package/dist/mjs/types/index.js +1 -2
- package/dist/mjs/utils/CryptoKeysTransformer.js +5 -5
- package/dist/mjs/utils/TxManager.js +21 -5
- package/dist/mjs/utils/helper.d.ts +2 -8
- package/dist/mjs/utils/helper.js +5 -68
- package/dist/mjs/utils/helpers/OrderArgsHelper.d.ts +2 -2
- package/dist/mjs/utils/helpers/OrderArgsHelper.js +5 -5
- package/dist/mjs/utils/helpers/index.d.ts +1 -0
- package/dist/mjs/utils/helpers/index.js +2 -1
- package/dist/mjs/utils/helpers/streamToBuffer.d.ts +4 -0
- package/dist/mjs/utils/helpers/streamToBuffer.js +9 -0
- package/dist/mjs/utils/order/process-order.js +3 -4
- package/dist/mjs/utils/order/types.d.ts +0 -1
- package/dist/mjs/utils/order/versify.js +1 -7
- package/dist/mjs/utils/rent-calculator/rent-calculator.js +2 -3
- package/dist/mjs/utils/rent-calculator/types.d.ts +0 -1
- package/dist/mjs/utils/tcb.d.ts +2 -0
- package/dist/mjs/utils/tcb.js +9 -0
- package/dist/mjs/utils/types.d.ts +0 -5
- package/package.json +8 -9
- package/dist/cjs/contracts/Campaign.d.ts +0 -1198
- package/dist/cjs/contracts/Campaign.js +0 -1554
- package/dist/cjs/contracts/CampaignTxPart.d.ts +0 -454
- package/dist/cjs/contracts/CampaignTxPart.js +0 -592
- package/dist/cjs/contracts/adminCertificateHelperAbi.d.ts +0 -316
- package/dist/cjs/contracts/adminCertificateHelperAbi.js +0 -410
- package/dist/cjs/proto/TeeDeviceInfo.d.ts +0 -292
- package/dist/cjs/proto/TeeDeviceInfo.js +0 -491
- package/dist/cjs/staticModels/AdminCertificateHelper.d.ts +0 -24
- package/dist/cjs/staticModels/AdminCertificateHelper.js +0 -99
- package/dist/cjs/staticModels/Campaign.d.ts +0 -63
- package/dist/cjs/staticModels/Campaign.js +0 -318
- package/dist/cjs/staticModels/CampaignTxPart.d.ts +0 -19
- package/dist/cjs/staticModels/CampaignTxPart.js +0 -58
- package/dist/cjs/tee/QuoteValidator.d.ts +0 -46
- package/dist/cjs/tee/QuoteValidator.js +0 -456
- package/dist/cjs/tee/TcbSerializer.d.ts +0 -20
- package/dist/cjs/tee/TcbSerializer.js +0 -27
- package/dist/cjs/types/Campaign.d.ts +0 -55
- package/dist/cjs/types/Campaign.js +0 -17
- package/dist/cjs/utils/admin-service.d.ts +0 -13
- package/dist/cjs/utils/admin-service.js +0 -73
- package/dist/mjs/contracts/Campaign.d.ts +0 -1198
- package/dist/mjs/contracts/Campaign.js +0 -1551
- package/dist/mjs/contracts/CampaignTxPart.d.ts +0 -454
- package/dist/mjs/contracts/CampaignTxPart.js +0 -589
- package/dist/mjs/contracts/adminCertificateHelperAbi.d.ts +0 -316
- package/dist/mjs/contracts/adminCertificateHelperAbi.js +0 -407
- package/dist/mjs/proto/TeeDeviceInfo.d.ts +0 -292
- package/dist/mjs/proto/TeeDeviceInfo.js +0 -485
- package/dist/mjs/staticModels/AdminCertificateHelper.d.ts +0 -24
- package/dist/mjs/staticModels/AdminCertificateHelper.js +0 -92
- package/dist/mjs/staticModels/Campaign.d.ts +0 -63
- package/dist/mjs/staticModels/Campaign.js +0 -313
- package/dist/mjs/staticModels/CampaignTxPart.d.ts +0 -19
- package/dist/mjs/staticModels/CampaignTxPart.js +0 -51
- package/dist/mjs/tee/QuoteValidator.d.ts +0 -46
- package/dist/mjs/tee/QuoteValidator.js +0 -449
- package/dist/mjs/tee/TcbSerializer.d.ts +0 -20
- package/dist/mjs/tee/TcbSerializer.js +0 -23
- package/dist/mjs/types/Campaign.d.ts +0 -55
- package/dist/mjs/types/Campaign.js +0 -14
- package/dist/mjs/utils/admin-service.d.ts +0 -13
- package/dist/mjs/utils/admin-service.js +0 -66
|
@@ -7,6 +7,7 @@ exports.Web3TransactionRevertedByEvmError = void 0;
|
|
|
7
7
|
const NonceTracker_js_1 = __importDefault(require("./NonceTracker.js"));
|
|
8
8
|
const logger_js_1 = __importDefault(require("../logger.js"));
|
|
9
9
|
const store_js_1 = __importDefault(require("../store.js"));
|
|
10
|
+
const index_js_1 = require("../errors/index.js");
|
|
10
11
|
const helper_js_1 = require("./helper.js");
|
|
11
12
|
const Superpro_js_1 = __importDefault(require("../staticModels/Superpro.js"));
|
|
12
13
|
const constants_js_1 = require("../constants.js");
|
|
@@ -204,10 +205,22 @@ class TxManager {
|
|
|
204
205
|
...txData,
|
|
205
206
|
gas: undefined,
|
|
206
207
|
};
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
208
|
+
try {
|
|
209
|
+
const estimatedGas = await TxManager._contractCallHandling(() => transactionCall
|
|
210
|
+
? transactionCall.estimateGas(txDataForEstimate)
|
|
211
|
+
: store_js_1.default.web3Https.eth.estimateGas(txDataForEstimate));
|
|
212
|
+
txData.gas = (0, helper_js_1.multiplyBigIntByNumber)(estimatedGas, store_js_1.default.gasLimitMultiplier);
|
|
213
|
+
}
|
|
214
|
+
catch (e) {
|
|
215
|
+
const revertReason = e?.data?.message || e?.message || 'Unknown reason';
|
|
216
|
+
TxManager.logger.error({
|
|
217
|
+
err: e,
|
|
218
|
+
revertReason,
|
|
219
|
+
// omit calldata to avoid huge logs/PII leakage
|
|
220
|
+
txData: lodash_1.default.omit(txDataForEstimate, ['data']),
|
|
221
|
+
}, `Gas estimation failed${revertReason ? `: ${revertReason}` : ''}`);
|
|
222
|
+
throw e;
|
|
223
|
+
}
|
|
211
224
|
}
|
|
212
225
|
let nonceTracker;
|
|
213
226
|
if (this.nonceTrackers[transactionOptions.from]) {
|
|
@@ -270,6 +283,9 @@ class TxManager {
|
|
|
270
283
|
if (e.message?.includes('Transaction has been reverted by the EVM')) {
|
|
271
284
|
throw new Web3TransactionRevertedByEvmError(e, message);
|
|
272
285
|
}
|
|
286
|
+
else if (index_js_1.InsufficientFundsError.isInsufficientFundsError(e)) {
|
|
287
|
+
throw new index_js_1.InsufficientFundsError(e, message);
|
|
288
|
+
}
|
|
273
289
|
else {
|
|
274
290
|
throw new Web3TransactionError(e, message);
|
|
275
291
|
}
|
|
@@ -277,4 +293,4 @@ class TxManager {
|
|
|
277
293
|
}
|
|
278
294
|
}
|
|
279
295
|
exports.default = TxManager;
|
|
280
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHhNYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL1R4TWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSx3RUFBNkM7QUFDN0MsNkRBQXNDO0FBQ3RDLDJEQUFnQztBQVFoQywyQ0FLcUI7QUFDckIsOEVBQW1EO0FBQ25ELGtEQU95QjtBQUN6QixvREFBNEI7QUFFNUIsNERBQW9DO0FBRXBDLHFFQUErRDtBQVEvRCxNQUFNLG9CQUFxQixTQUFRLEtBQUs7SUFDdEIsYUFBYSxDQUFVO0lBQ3ZDLFlBQVksYUFBc0IsRUFBRSxPQUFlO1FBQ2pELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxJQUFJLEdBQUcsc0JBQXNCLENBQUM7UUFDbkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDckMsQ0FBQztDQUNGO0FBRUQsTUFBYSxpQ0FBa0MsU0FBUSxvQkFBb0I7SUFDekUsWUFBWSxhQUFzQixFQUFFLE9BQWU7UUFDakQsS0FBSyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLG1DQUFtQyxDQUFDO0lBQ2xELENBQUM7Q0FDRjtBQUxELDhFQUtDO0FBT0QsTUFBTSxTQUFTO0lBQ0wsTUFBTSxDQUFDLElBQUksQ0FBTztJQUNsQixNQUFNLENBQUMseUJBQXlCLENBQVU7SUFDMUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxtQkFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzdELE1BQU0sQ0FBQyxhQUFhLEdBQXdDLEVBQUUsQ0FBQztJQUMvRCxNQUFNLENBQUMsTUFBTSxHQUFzQyxFQUFFLENBQUM7SUFDdkQsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFVLEVBQUUsNEJBQXFDLEtBQUs7UUFDdkUsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENB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
|
|
296
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHhNYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL1R4TWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSx3RUFBNkM7QUFDN0MsNkRBQXNDO0FBQ3RDLDJEQUFnQztBQU9oQyxpREFBNEQ7QUFDNUQsMkNBS3FCO0FBQ3JCLDhFQUFtRDtBQUNuRCxrREFPeUI7QUFDekIsb0RBQTRCO0FBRTVCLDREQUFvQztBQUVwQyxxRUFBK0Q7QUFRL0QsTUFBTSxvQkFBcUIsU0FBUSxLQUFLO0lBQ3RCLGFBQWEsQ0FBVTtJQUN2QyxZQUFZLGFBQXNCLEVBQUUsT0FBZTtRQUNqRCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLHNCQUFzQixDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQUVELE1BQWEsaUNBQWtDLFNBQVEsb0JBQW9CO0lBQ3pFLFlBQVksYUFBc0IsRUFBRSxPQUFlO1FBQ2pELEtBQUssQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLElBQUksR0FBRyxtQ0FBbUMsQ0FBQztJQUNsRCxDQUFDO0NBQ0Y7QUFMRCw4RUFLQztBQU9ELE1BQU0sU0FBUztJQUNMLE1BQU0sQ0FBQyxJQUFJLENBQU87SUFDbEIsTUFBTSxDQUFDLHlCQUF5QixDQUFVO0lBQzFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsbUJBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUM3RCxNQUFNLENBQUMsYUFBYSxHQUF3QyxFQUFFLENBQUM7SUFDL0QsTUFBTSxDQUFDLE1BQU0sR0FBc0MsRUFBRSxDQUFDO0lBQ3ZELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBVSxFQUFFLDRCQUFxQyxLQUFLO1FBQ3ZFLElBQUksQ0FBQyxJQUFJ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
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { TransactionOptions } from '../types/Web3.js';
|
|
2
2
|
import Web3, { JsonRpcOptionalRequest } from 'web3';
|
|
3
3
|
import { SlotInfo } from '../types/SlotInfo.js';
|
|
4
|
-
import {
|
|
5
|
-
import { BenchmarkInfo
|
|
4
|
+
import { LoaderSecretAccessPublicKey, LoaderSession, OfferResource, OfferStorageAllocated, OfferStorageRequest, OptionInfo, OptionInfoRaw, OrderUsage, OrderUsageRaw, SecretRequest, SlotUsage, TeeOfferOption, TeeOfferOptionRaw, TeeOfferSlot, ValueOfferSlot, ValueOfferSlotRaw, ConsensusBenchmarkPriceMultipliers, OfferVersion, OfferVersionInfo, OfferVersionInfoRaw, OfferVersionRaw, TeeOfferInfo, TeeOfferInfoRaw, HardwareInfoRaw, HardwareInfo, OfferInfoRaw, OfferInfo, ValueOfferRestrictionsSpecification, OfferType, OfferGroup, Origins } from '../types/index.js';
|
|
5
|
+
import { BenchmarkInfo } from '@super-protocol/dto-js';
|
|
6
6
|
import { BatchResponse, BatchResponseSuccess, ExecuteBatchOptions } from './types.js';
|
|
7
7
|
/**
|
|
8
8
|
* Function for checking if provider action account initialized (required for set methods)
|
|
@@ -27,8 +27,6 @@ export declare const getGasLimitForNetwork: () => bigint;
|
|
|
27
27
|
export declare const createTransactionOptions: (externalTransactionSigner: boolean, options?: TransactionOptions) => Promise<TransactionOptions>;
|
|
28
28
|
export declare const isNodeJS: () => boolean;
|
|
29
29
|
export declare function incrementMethodCall(): (_target: unknown, propertyName: string, propertyDescriptor: PropertyDescriptor) => PropertyDescriptor;
|
|
30
|
-
export declare function packDeviceId(hexedDeviceId: string): string;
|
|
31
|
-
export declare function unpackDeviceId(bytes32: string): string;
|
|
32
30
|
export declare function convertBigIntToString(obj: any): any;
|
|
33
31
|
export declare function convertTeeOfferOptionFromRaw(option: TeeOfferOptionRaw): TeeOfferOption;
|
|
34
32
|
export declare function convertLoaderSecretAccessPublicKeyFromRaw(loaderSecretAccessPublicKeyRaw: LoaderSecretAccessPublicKey): LoaderSecretAccessPublicKey;
|
|
@@ -52,15 +50,11 @@ export declare function convertValueOfferInfo(params: {
|
|
|
52
50
|
offerGroup: OfferGroup;
|
|
53
51
|
restrictions: ValueOfferRestrictionsSpecification;
|
|
54
52
|
}): OfferInfo;
|
|
55
|
-
export declare function formatTcbPublicData(unparsedPublicData: any[]): TcbPublicData[];
|
|
56
53
|
export declare function formatEpochIndexes(epochIndexes: string[]): number[];
|
|
57
54
|
export declare function formatTeeOfferSlot(slot: TeeOfferSlot, coresDenominator: number): TeeOfferSlot;
|
|
58
55
|
export declare function formatOfferSlot(slot: ValueOfferSlotRaw, coresDenominator: number): ValueOfferSlot;
|
|
59
56
|
export declare function createBenchmarkInfo(mark: number, size: number): BenchmarkInfo;
|
|
60
57
|
export declare function formatPriceMultipliers(priceMultipliers: ConsensusBenchmarkPriceMultipliers): ConsensusBenchmarkPriceMultipliers;
|
|
61
|
-
export declare function formatBenchmarks(benchmarks: ConsensusBenchmarkStorage[]): ConsensusBenchmark[];
|
|
62
|
-
export declare function formatBenchmark(benchmark: ConsensusBenchmarkStorage): ConsensusBenchmark;
|
|
63
|
-
export declare function formatBenchmarkTo(benchmark: ConsensusBenchmark): ConsensusBenchmarkStorage;
|
|
64
58
|
export declare function formatUsage(usage: SlotUsage): SlotUsage;
|
|
65
59
|
export declare function convertOrderUsage(usage: OrderUsageRaw, slotInfo: SlotInfo, slotUsage: SlotUsage): OrderUsage;
|
|
66
60
|
export declare function convertOptionInfoFromRaw(optionInfo: OptionInfoRaw): OptionInfo;
|
package/dist/cjs/utils/helper.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.toBlockchainHex = exports.fromBlockchainHex = exports.fromBlockchainHexOptional = exports.isIpAddress = exports.preparePrivateKey = exports.executeBatchAsync = exports.transformComplexObject = exports.cleanWeb3Data = exports.isValidBytes32Hex = exports.packSlotInfo = exports.unpackSlotInfo = exports.convertOptionInfoToRaw = exports.convertOptionInfoFromRaw = exports.convertOrderUsage = exports.formatUsage = exports.
|
|
6
|
+
exports.toBlockchainHex = exports.fromBlockchainHex = exports.fromBlockchainHexOptional = exports.isIpAddress = exports.preparePrivateKey = exports.executeBatchAsync = exports.transformComplexObject = exports.cleanWeb3Data = exports.isValidBytes32Hex = exports.packSlotInfo = exports.unpackSlotInfo = exports.convertOptionInfoToRaw = exports.convertOptionInfoFromRaw = exports.convertOrderUsage = exports.formatUsage = exports.formatPriceMultipliers = exports.createBenchmarkInfo = exports.formatOfferSlot = exports.formatTeeOfferSlot = exports.formatEpochIndexes = exports.convertValueOfferInfo = exports.convertTeeOfferInfo = exports.convertHardwareInfo = exports.convertOfferVersion = exports.convertOfferVersionInfo = exports.convertOrigins = exports.convertOfferStorageRequestFromRaw = exports.convertOfferStorageAllocatedFromRaw = exports.convertSecretRequestFromRaw = exports.convertOfferResourceFromRaw = exports.convertLoaderSessionFromRaw = exports.convertLoaderSecretAccessPublicKeyFromRaw = exports.convertTeeOfferOptionFromRaw = exports.convertBigIntToString = exports.incrementMethodCall = exports.isNodeJS = exports.createTransactionOptions = exports.getGasLimitForNetwork = exports.multiplyBigIntByNumber = exports.getMaxPriorityFeePerGas = exports.getBaseBlockFee = exports.checkForUsingExternalTxManager = exports.checkIfActionAccountInitialized = void 0;
|
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
|
8
8
|
const store_js_1 = __importDefault(require("../store.js"));
|
|
9
9
|
const web3_1 = __importDefault(require("web3"));
|
|
@@ -153,25 +153,6 @@ function incrementMethodCall() {
|
|
|
153
153
|
};
|
|
154
154
|
}
|
|
155
155
|
exports.incrementMethodCall = incrementMethodCall;
|
|
156
|
-
function packDeviceId(hexedDeviceId) {
|
|
157
|
-
const hexRegex = /^[0-9a-fA-F]+$/;
|
|
158
|
-
if (hexedDeviceId.length !== 64) {
|
|
159
|
-
throw new Error('DeviceId must be equal 64 hex symbols');
|
|
160
|
-
}
|
|
161
|
-
if (!hexRegex.test(hexedDeviceId)) {
|
|
162
|
-
throw new Error('DeviceId must be a hexedecimal');
|
|
163
|
-
}
|
|
164
|
-
return '0x' + hexedDeviceId;
|
|
165
|
-
}
|
|
166
|
-
exports.packDeviceId = packDeviceId;
|
|
167
|
-
function unpackDeviceId(bytes32) {
|
|
168
|
-
if (bytes32.length !== 66) {
|
|
169
|
-
throw new Error('DeviceId bytes must be equal 66 symbols');
|
|
170
|
-
}
|
|
171
|
-
// removes '0x'
|
|
172
|
-
return bytes32.slice(2, 66);
|
|
173
|
-
}
|
|
174
|
-
exports.unpackDeviceId = unpackDeviceId;
|
|
175
156
|
function convertBigIntToString(obj) {
|
|
176
157
|
if (obj === null || obj === undefined) {
|
|
177
158
|
return obj;
|
|
@@ -208,19 +189,15 @@ exports.convertTeeOfferOptionFromRaw = convertTeeOfferOptionFromRaw;
|
|
|
208
189
|
function transformPublicKeyFromRaw(publicKey) {
|
|
209
190
|
return {
|
|
210
191
|
...publicKey,
|
|
211
|
-
pointX: typeof publicKey.pointX === 'string'
|
|
212
|
-
|
|
213
|
-
: publicKey.pointX,
|
|
214
|
-
pointY: typeof publicKey.pointY === 'string'
|
|
215
|
-
? ethers_1.ethers.utils.arrayify(publicKey.pointY)
|
|
216
|
-
: publicKey.pointY,
|
|
192
|
+
pointX: typeof publicKey.pointX === 'string' ? ethers_1.ethers.getBytes(publicKey.pointX) : publicKey.pointX,
|
|
193
|
+
pointY: typeof publicKey.pointY === 'string' ? ethers_1.ethers.getBytes(publicKey.pointY) : publicKey.pointY,
|
|
217
194
|
};
|
|
218
195
|
}
|
|
219
196
|
function transformSignatureFromRaw(signature) {
|
|
220
197
|
return {
|
|
221
198
|
...signature,
|
|
222
|
-
r: typeof signature.r === 'string' ? ethers_1.ethers.
|
|
223
|
-
s: typeof signature.s === 'string' ? ethers_1.ethers.
|
|
199
|
+
r: typeof signature.r === 'string' ? ethers_1.ethers.getBytes(signature.r) : signature.r,
|
|
200
|
+
s: typeof signature.s === 'string' ? ethers_1.ethers.getBytes(signature.s) : signature.s,
|
|
224
201
|
};
|
|
225
202
|
}
|
|
226
203
|
function convertLoaderSecretAccessPublicKeyFromRaw(loaderSecretAccessPublicKeyRaw) {
|
|
@@ -345,19 +322,6 @@ function convertValueOfferInfo(params) {
|
|
|
345
322
|
});
|
|
346
323
|
}
|
|
347
324
|
exports.convertValueOfferInfo = convertValueOfferInfo;
|
|
348
|
-
function formatTcbPublicData(unparsedPublicData) {
|
|
349
|
-
const response = [];
|
|
350
|
-
for (const data of unparsedPublicData) {
|
|
351
|
-
response.push({
|
|
352
|
-
checkingTcbIds: data.checkingTcbIds,
|
|
353
|
-
checkingTcbMarks: data.checkingTcbMarks,
|
|
354
|
-
deviceId: data.deviceId,
|
|
355
|
-
properties: data.properties,
|
|
356
|
-
});
|
|
357
|
-
}
|
|
358
|
-
return response;
|
|
359
|
-
}
|
|
360
|
-
exports.formatTcbPublicData = formatTcbPublicData;
|
|
361
325
|
function formatEpochIndexes(epochIndexes) {
|
|
362
326
|
const response = [];
|
|
363
327
|
for (const index of epochIndexes) {
|
|
@@ -403,39 +367,6 @@ function formatPriceMultipliers(priceMultipliers) {
|
|
|
403
367
|
};
|
|
404
368
|
}
|
|
405
369
|
exports.formatPriceMultipliers = formatPriceMultipliers;
|
|
406
|
-
function formatBenchmarks(benchmarks) {
|
|
407
|
-
const result = [];
|
|
408
|
-
for (const benchmark of benchmarks) {
|
|
409
|
-
result.push(formatBenchmark(benchmark));
|
|
410
|
-
}
|
|
411
|
-
return result;
|
|
412
|
-
}
|
|
413
|
-
exports.formatBenchmarks = formatBenchmarks;
|
|
414
|
-
function formatBenchmark(benchmark) {
|
|
415
|
-
return {
|
|
416
|
-
cpu: createBenchmarkInfo(benchmark.cpuMark, benchmark.cpuSize),
|
|
417
|
-
ram: createBenchmarkInfo(benchmark.ramMark, benchmark.ramSize),
|
|
418
|
-
gpu: createBenchmarkInfo(benchmark.gpuMark, benchmark.gpuSize),
|
|
419
|
-
disk: createBenchmarkInfo(benchmark.diskMark, benchmark.diskSize),
|
|
420
|
-
network: createBenchmarkInfo(benchmark.networkMark, benchmark.networkSize),
|
|
421
|
-
};
|
|
422
|
-
}
|
|
423
|
-
exports.formatBenchmark = formatBenchmark;
|
|
424
|
-
function formatBenchmarkTo(benchmark) {
|
|
425
|
-
return {
|
|
426
|
-
cpuSize: benchmark.cpu.size,
|
|
427
|
-
ramSize: benchmark.ram.size,
|
|
428
|
-
gpuSize: benchmark.gpu.size,
|
|
429
|
-
diskSize: benchmark.disk.size,
|
|
430
|
-
networkSize: benchmark.network.size,
|
|
431
|
-
cpuMark: benchmark.cpu.mark,
|
|
432
|
-
ramMark: benchmark.ram.mark,
|
|
433
|
-
gpuMark: benchmark.gpu.mark,
|
|
434
|
-
diskMark: benchmark.disk.mark,
|
|
435
|
-
networkMark: benchmark.network.mark,
|
|
436
|
-
};
|
|
437
|
-
}
|
|
438
|
-
exports.formatBenchmarkTo = formatBenchmarkTo;
|
|
439
370
|
function formatUsage(usage) {
|
|
440
371
|
return {
|
|
441
372
|
priceType: usage.priceType.toString(),
|
|
@@ -620,4 +551,4 @@ const toBlockchainHex = (u) => {
|
|
|
620
551
|
return '0x' + Buffer.from(u).toString('hex');
|
|
621
552
|
};
|
|
622
553
|
exports.toBlockchainHex = toBlockchainHex;
|
|
623
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2hlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxvREFBdUI7QUFDdkIsMkRBQWdDO0FBRWhDLGdEQUFvRDtBQUNwRCxtREFBNkM7QUFFN0MsZ0RBc0MyQjtBQUMzQixrREFjeUI7QUFDekIsbUNBQWdDO0FBQ2hDLG1EQUF1RjtBQUN2RixrREFBMEI7QUFDMUIsc0RBQThEO0FBRzlEOzs7R0FHRztBQUNJLE1BQU0sK0JBQStCLEdBQUcsQ0FBQyxrQkFBdUMsRUFBUSxFQUFFO0lBQy9GLElBQUksQ0FBQyxrQkFBSyxDQUFDLGFBQWEsSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUk7UUFDbkQsTUFBTSxJQUFJLEtBQUssQ0FDYix3SUFBd0ksQ0FDekksQ0FBQztBQUNOLENBQUMsQ0FBQztBQUxXLFFBQUEsK0JBQStCLG1DQUsxQztBQUVGOztHQUVHO0FBQ0ksTUFBTSw4QkFBOEIsR0FBRyxDQUM1QyxrQkFBdUMsRUFDOUIsRUFBRTtJQUNYLCtIQUErSDtJQUMvSCxPQUFPLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUM7QUFDcEMsQ0FBQyxDQUFDO0FBTFcsUUFBQSw4QkFBOEIsa0NBS3pDO0FBRUssTUFBTSxlQUFlLEdBQUcsQ0FBQyxJQUFVLEVBQW1CLEVBQUU7SUFDN0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQXVCLENBQUMsQ0FBQztBQUM1RSxDQUFDLENBQUM7QUFGVyxRQUFBLGVBQWUsbUJBRTFCO0FBRUssTUFBTSx1QkFBdUIsR0FBRyxDQUFDLElBQVUsRUFBbUIsRUFBRTtJQUNyRSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztBQUM1QyxDQUFDLENBQUM7QUFGVyxR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
|
|
554
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2hlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxvREFBdUI7QUFDdkIsMkRBQWdDO0FBRWhDLGdEQUFvRDtBQUNwRCxtREFBNkM7QUFFN0MsZ0RBb0MyQjtBQUMzQixrREFjeUI7QUFDekIsbUNBQWdDO0FBQ2hDLG1EQUFtRTtBQUNuRSxrREFBMEI7QUFDMUIsc0RBQThEO0FBRzlEOzs7R0FHRztBQUNJLE1BQU0sK0JBQStCLEdBQUcsQ0FBQyxrQkFBdUMsRUFBUSxFQUFFO0lBQy9GLElBQUksQ0FBQyxrQkFBSyxDQUFDLGFBQWEsSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUk7UUFDbkQsTUFBTSxJQUFJLEtBQUssQ0FDYix3SUFBd0ksQ0FDekksQ0FBQztBQUNOLENBQUMsQ0FBQztBQUxXLFFBQUEsK0JBQStCLG1DQUsxQztBQUVGOztHQUVHO0FBQ0ksTUFBTSw4QkFBOEIsR0FBRyxDQUM1QyxrQkFBdUMsRUFDOUIsRUFBRTtJQUNYLCtIQUErSDtJQUMvSCxPQUFPLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUM7QUFDcEMsQ0FBQyxDQUFDO0FBTFcsUUFBQSw4QkFBOEIsa0NBS3pDO0FBRUssTUFBTSxlQUFlLEdBQUcsQ0FBQyxJQUFVLEVBQW1CLEVBQUU7SUFDN0QsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQXVCLENBQUMsQ0FBQztBQUM1RSxDQUFDLENBQUM7QUFGVyxRQUFBLGVBQWUsbUJBRTFCO0FBRUssTUFBTSx1QkFBdUIsR0FBRyxDQUFDLElBQVUsRUFBbUIsRUFBRTtJQUNyRSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztBQUM1QyxDQUFDLENBQUM7QUFGVyxR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
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Encryption, StorageProviderResource, TeeOrderEncryptedArgs } from '@super-protocol/dto-js';
|
|
2
2
|
import StorageAccess from '../../types/storage/StorageAccess.js';
|
|
3
3
|
export declare class OrderArgsHelper {
|
|
4
|
-
static decryptOrderArgs<T>(encryptedArgs: string, ecdhPrivateKey: string):
|
|
5
|
-
static encryptOrderArgs(args: unknown, encryption: Encryption):
|
|
4
|
+
static decryptOrderArgs<T>(encryptedArgs: string, ecdhPrivateKey: string): T | undefined;
|
|
5
|
+
static encryptOrderArgs(args: unknown, encryption: Encryption): string;
|
|
6
6
|
static isMoreThanGivenSize(args: Record<string, unknown>, sizeInBytes?: number): boolean;
|
|
7
7
|
static uploadToStorage(params: {
|
|
8
8
|
args: TeeOrderEncryptedArgs;
|
|
@@ -26,18 +26,18 @@ const isEncryptedArgs = (arg) => Boolean(lodash_1.default.isPlainObject(arg) &&
|
|
|
26
26
|
isStringArray(arg.solution) &&
|
|
27
27
|
(!arg.configuration || isEncryptedData(arg.configuration)));
|
|
28
28
|
class OrderArgsHelper {
|
|
29
|
-
static
|
|
29
|
+
static decryptOrderArgs(encryptedArgs, ecdhPrivateKey) {
|
|
30
30
|
if (!encryptedArgs) {
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
33
|
const encrypted = JSON.parse(encryptedArgs);
|
|
34
34
|
encrypted.key = ecdhPrivateKey;
|
|
35
|
-
const decryptedArgsStr =
|
|
35
|
+
const decryptedArgsStr = index_js_1.default.decrypt(encrypted);
|
|
36
36
|
const orderArguments = JSON.parse(decryptedArgsStr);
|
|
37
37
|
return orderArguments;
|
|
38
38
|
}
|
|
39
|
-
static
|
|
40
|
-
const encryptedArgs =
|
|
39
|
+
static encryptOrderArgs(args, encryption) {
|
|
40
|
+
const encryptedArgs = index_js_1.default.encrypt(JSON.stringify(args), encryption);
|
|
41
41
|
return JSON.stringify(encryptedArgs);
|
|
42
42
|
}
|
|
43
43
|
static isMoreThanGivenSize(args, sizeInBytes = 2.5 * 1024) {
|
|
@@ -60,4 +60,4 @@ class OrderArgsHelper {
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
exports.OrderArgsHelper = OrderArgsHelper;
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkZXJBcmdzSGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3V0aWxzL2hlbHBlcnMvT3JkZXJBcmdzSGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUF1QjtBQUV2QixxRUFBMkM7QUFFM0MseUVBQW1FO0FBRW5FLE1BQU0sYUFBYSxHQUFHLENBQUMsSUFBYSxFQUFvQixFQUFFLENBQ3hELEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRWhELE1BQU0sZUFBZSxHQUFHLENBQUMsR0FBWSxFQUFXLEVBQUU7SUFDaEQsSUFBSSxDQUFDLGdCQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDckIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxVQUFVLEdBQWUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUUvQyxPQUFPLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUSxJQUFJLFVBQVUsQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQXlDLEVBQVcsRUFBRSxDQUM3RSxPQUFPLENBQ0wsZ0JBQUMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDO0lBQ2xCLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO0lBQ3ZCLGFBQWEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO0lBQ3hCLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO0lBQzNCLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYSxJQUFJLGVBQWUsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FDN0QsQ0FBQztBQUVKLE1BQWEsZUFBZTtJQUMxQixNQUFNLENBQUMsZ0JBQWdCLENBQUksYUFBcUIsRUFBRSxjQUFzQjtRQUN0RSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbkIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBZSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hELFNBQVMsQ0FBQyxHQUFHLEdBQUcsY0FBYyxDQUFDO1FBRS9CLE1BQU0sZ0JBQWdCLEdBQUcsa0JBQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXBELE9BQU8sY0FBbUIsQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLElBQWEsRUFBRSxVQUFzQjtRQUMzRCxNQUFNLGFBQWEsR0FBRyxrQkFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXZFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsTUFBTSxDQUFDLG1CQUFtQixDQUFDLElBQTZCLEVBQUUsV0FBVyxHQUFHLEdBQUcsR0FBRyxJQUFJO1FBQ2hGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNsQyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRTVDLE9BQU8sSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUM7SUFDbkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFRdEI7UUFDQyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBRWpELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUVELE9BQU8sSUFBQSxnREFBcUIsRUFBQztZQUMzQixJQUFJLEVBQUUsSUFBSTtZQUNWLFFBQVEsRUFBRSxHQUFHO1lBQ2IsTUFBTTtZQUNOLFVBQVU7U0FDWCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFuREQsMENBbURDIn0=
|
|
@@ -20,4 +20,5 @@ __exportStar(require("./uploadObjectToStorage.js"), exports);
|
|
|
20
20
|
__exportStar(require("./promise.js"), exports);
|
|
21
21
|
__exportStar(require("./calculateObjectHash.js"), exports);
|
|
22
22
|
__exportStar(require("./getRawRpc.js"), exports);
|
|
23
|
-
|
|
23
|
+
__exportStar(require("./streamToBuffer.js"), exports);
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdURBQXFDO0FBQ3JDLHVEQUFxQztBQUNyQyw2REFBMkM7QUFDM0MsK0NBQTZCO0FBQzdCLDJEQUF5QztBQUN6QyxpREFBK0I7QUFDL0Isc0RBQW9DIn0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.streamToBuffer = void 0;
|
|
4
|
+
const streamToBuffer = (stream) => {
|
|
5
|
+
const chunks = [];
|
|
6
|
+
return new Promise((resolve, reject) => {
|
|
7
|
+
stream.on('data', (chunk) => chunks.push(Buffer.from(chunk)));
|
|
8
|
+
stream.on('error', (err) => reject(err));
|
|
9
|
+
stream.on('end', () => resolve(Buffer.concat(chunks)));
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
exports.streamToBuffer = streamToBuffer;
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyZWFtVG9CdWZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvaGVscGVycy9zdHJlYW1Ub0J1ZmZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFTyxNQUFNLGNBQWMsR0FBRyxDQUFDLE1BQWdCLEVBQW1CLEVBQUU7SUFDbEUsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO0lBRTVCLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDckMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDOUQsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVJXLFFBQUEsY0FBYyxrQkFRekIifQ==
|
|
@@ -29,9 +29,9 @@ const getResultPublicKeyFromOrderInfo = (orderInfo) => {
|
|
|
29
29
|
}
|
|
30
30
|
};
|
|
31
31
|
const buildResourceResult = async (params) => {
|
|
32
|
-
const { orderId, orderInfo, resource, resourceEncryption, parentOrder
|
|
32
|
+
const { orderId, orderInfo, resource, resourceEncryption, parentOrder } = params;
|
|
33
33
|
if (parentOrder?.offerType === Offer_js_1.OfferType.TeeOffer) {
|
|
34
|
-
return await TIIGenerator_js_1.default.generate(orderId, resource, orderInfo.args, resourceEncryption
|
|
34
|
+
return await TIIGenerator_js_1.default.generate(orderId, resource, orderInfo.args, resourceEncryption);
|
|
35
35
|
}
|
|
36
36
|
const publicKey = getResultPublicKeyFromOrderInfo(orderInfo);
|
|
37
37
|
const content = {
|
|
@@ -61,7 +61,6 @@ const buildOrderResult = async (params) => {
|
|
|
61
61
|
resource: params.orderResult.resource,
|
|
62
62
|
resourceEncryption: params.orderResult.resourceEncryption,
|
|
63
63
|
parentOrder: params.parentOrder,
|
|
64
|
-
pccsApiUrl: params.pccsApiUrl,
|
|
65
64
|
});
|
|
66
65
|
};
|
|
67
66
|
const processOrder = async (params, transactionOptions) => {
|
|
@@ -102,4 +101,4 @@ const processOrder = async (params, transactionOptions) => {
|
|
|
102
101
|
throw new Error(`Unsupported price type: ${priceType}`);
|
|
103
102
|
};
|
|
104
103
|
exports.processOrder = processOrder;
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1vcmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91dGlscy9vcmRlci9wcm9jZXNzLW9yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLDRFQUFpRDtBQUNqRCxxRUFBMkM7QUFDM0MscUVBQTBDO0FBQzFDLG1EQUE0RDtBQUM1RCxtREFBOEQ7QUFDOUQsbURBQXFFO0FBR3JFLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxvQkFBUyxDQUFDLElBQUksRUFBRSxvQkFBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ2pFLE1BQU0sZ0NBQWdDLEdBQUc7SUFDdkMsc0JBQVcsQ0FBQyxHQUFHO0lBQ2Ysc0JBQVcsQ0FBQyxVQUFVO0lBQ3RCLHNCQUFXLENBQUMsU0FBUztDQUN0QixDQUFDO0FBVUYsTUFBTSwrQkFBK0IsR0FBRyxDQUN0QyxTQUF3QyxFQUN6QixFQUFFO0lBQ2pCLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDO0lBRTNDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQWtCLENBQUM7SUFDaEQsQ0FBQztJQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDYixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sbUJBQW1CLEdBQUcsS0FBSyxFQUFFLE1BQXdCLEVBQW1CLEVBQUU7SUFDOUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUVqRixJQUFJLFdB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
|
|
@@ -16,7 +16,6 @@ const versify = async (info, isTeeOffer) => {
|
|
|
16
16
|
: await new Offer_js_1.default(params.offerId).getLastVersionNumber();
|
|
17
17
|
return actualVersion || 0;
|
|
18
18
|
};
|
|
19
|
-
args.outputOfferVersion;
|
|
20
19
|
return {
|
|
21
20
|
...info,
|
|
22
21
|
offerVersion: await getActualOfferVersion({
|
|
@@ -26,11 +25,6 @@ const versify = async (info, isTeeOffer) => {
|
|
|
26
25
|
}),
|
|
27
26
|
args: {
|
|
28
27
|
...args,
|
|
29
|
-
outputOfferVersion: await getActualOfferVersion({
|
|
30
|
-
isTeeOffer,
|
|
31
|
-
offerId: args.outputOfferId,
|
|
32
|
-
offerVersion: args.outputOfferVersion,
|
|
33
|
-
}),
|
|
34
28
|
inputOffersVersions: await Promise.all(args.inputOffersVersions.map((offerVersion, index) => getActualOfferVersion({
|
|
35
29
|
isTeeOffer: false,
|
|
36
30
|
offerId: args.inputOffersIds[index],
|
|
@@ -40,4 +34,4 @@ const versify = async (info, isTeeOffer) => {
|
|
|
40
34
|
};
|
|
41
35
|
};
|
|
42
36
|
exports.versify = versify;
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lmeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91dGlscy9vcmRlci92ZXJzaWZ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLHFFQUEwQztBQUVuQyxNQUFNLE9BQU8sR0FBRyxLQUFLLEVBQUUsSUFBZSxFQUFFLFVBQW1CLEVBQXNCLEVBQUU7SUFDeEYsTUFBTSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBQzdDLE1BQU0scUJBQXFCLEdBQUcsS0FBSyxFQUFFLE1BSXBDLEVBQW1CLEVBQUU7UUFDcEIsSUFBSSxNQUFNLENBQUMsVUFBVSxJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDaEQsT0FBTyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQzdCLENBQUM7UUFFRCxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsWUFBWTtZQUN2QyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVk7WUFDckIsQ0FBQyxDQUFDLE1BQU0sSUFBSSxrQkFBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBRTNELE9BQU8sYUFBYSxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDLENBQUM7SUFFRixPQUFPO1FBQ0wsR0FBRyxJQUFJO1FBQ1AsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7WUFDeEMsVUFBVTtZQUNWLE9BQU87WUFDUCxZQUFZO1NBQ2IsQ0FBQztRQUNGLElBQUksRUFBRTtZQUNKLEdBQUcsSUFBSTtZQUNQLG1CQUFtQixFQUFFLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDcEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUNuRCxxQkFBcUIsQ0FBQztnQkFDcEIsVUFBVSxFQUFFLEtBQUs7Z0JBQ2pCLE9BQU8sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztnQkFDbkMsWUFBWTthQUNiLENBQUMsQ0FDSCxDQUNGO1NBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBdENXLFFBQUEsT0FBTyxXQXNDbEIifQ==
|
|
@@ -29,8 +29,7 @@ class RentCalculator {
|
|
|
29
29
|
}
|
|
30
30
|
calculateThreshold(orderPrice) {
|
|
31
31
|
const deposit = BigInt(this.order.deposit || 0);
|
|
32
|
-
const
|
|
33
|
-
const depositLeft = deposit - outputReserve - BigInt(orderPrice);
|
|
32
|
+
const depositLeft = deposit - BigInt(orderPrice);
|
|
34
33
|
const orderMinimalRentPrice = this.calculateOrderMinimalRentPrice();
|
|
35
34
|
if (orderMinimalRentPrice === 0n) {
|
|
36
35
|
// free order with PerHour type price or order with Fixed price type
|
|
@@ -111,4 +110,4 @@ class RentCalculator {
|
|
|
111
110
|
}
|
|
112
111
|
}
|
|
113
112
|
exports.RentCalculator = RentCalculator;
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVudC1jYWxjdWxhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3V0aWxzL3JlbnQtY2FsY3VsYXRvci9yZW50LWNhbGN1bGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQWlEO0FBR2pELE1BQWEsY0FBYztJQU1OO0lBQ0E7SUFORixpQkFBaUIsQ0FBUztJQUNuQyxzQkFBc0IsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkMsd0JBQXdCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTdDLFlBQ21CLEtBQW9CLEVBQ3BCLFVBQXNCO1FBRHRCLFVBQUssR0FBTCxLQUFLLENBQWU7UUFDcEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUV2QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxXQUFXLElBQUksRUFBRSxDQUFDO1FBQ2hFLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLGNBQWMsSUFBSSxDQUFDLENBQUM7UUFFcEYsSUFBSSxDQUFDLGlCQUFpQjtZQUNwQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxFQUFFLGtCQUFrQixDQUFDO2dCQUNqRixJQUFJLENBQUMsVUFBVSxDQUFDLDJCQUEyQixDQUFDO1FBRTlDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDbkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN4RSxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxH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
|