@super-protocol/sdk-js 3.15.0 → 3.16.0-beta.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 +2 -3
- package/dist/cjs/RIGenerator.js +6 -7
- package/dist/cjs/TeeInputGeneratorBase.d.ts +2 -2
- package/dist/cjs/TeeInputGeneratorBase.js +1 -1
- package/dist/cjs/connectors/BaseConnector.d.ts +2 -3
- package/dist/cjs/connectors/BaseConnector.js +1 -1
- package/dist/cjs/connectors/BlockchainConnector.js +1 -3
- package/dist/cjs/connectors/BlockchainEventsListener.d.ts +2 -2
- package/dist/cjs/connectors/BlockchainEventsListener.js +2 -3
- package/dist/cjs/constants.d.ts +2 -0
- package/dist/cjs/constants.js +6 -2
- package/dist/cjs/contracts/Campaign.d.ts +1078 -0
- package/dist/cjs/contracts/Campaign.js +1401 -0
- package/dist/cjs/contracts/abi.d.ts +406 -245
- package/dist/cjs/contracts/abi.js +511 -307
- package/dist/cjs/contracts/adminCertificateHelperAbi.d.ts +316 -0
- package/dist/cjs/contracts/adminCertificateHelperAbi.js +410 -0
- package/dist/cjs/crypto/Crypto.d.ts +13 -10
- package/dist/cjs/crypto/Crypto.js +17 -14
- 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 +0 -1
- package/dist/cjs/errors/index.js +2 -4
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.js +5 -4
- package/dist/cjs/models/Offer.d.ts +1 -16
- package/dist/cjs/models/Offer.js +1 -51
- package/dist/cjs/models/Order.d.ts +1 -1
- package/dist/cjs/models/Order.js +15 -11
- package/dist/cjs/providers/storage/S3StorageProvider.js +5 -5
- package/dist/cjs/providers/storage/StorageKeyValueAdapter.d.ts +1 -1
- package/dist/cjs/providers/storage/parseStorageCredentials.d.ts +2 -1
- package/dist/cjs/staticModels/AdminCertificateHelper.d.ts +24 -0
- package/dist/cjs/staticModels/AdminCertificateHelper.js +99 -0
- package/dist/cjs/staticModels/Campaign.d.ts +61 -0
- package/dist/cjs/staticModels/Campaign.js +297 -0
- package/dist/cjs/staticModels/Offers.d.ts +0 -1
- package/dist/cjs/staticModels/Offers.js +2 -4
- package/dist/cjs/staticModels/Orders.js +9 -10
- 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 -1
- package/dist/cjs/staticModels/TeeOffers.js +2 -4
- package/dist/cjs/tee/TeeCertificateService.js +8 -1
- package/dist/cjs/types/Campaign.d.ts +45 -0
- package/dist/cjs/types/Campaign.js +16 -0
- package/dist/cjs/types/Offer.d.ts +0 -5
- package/dist/cjs/types/Order.d.ts +20 -25
- package/dist/cjs/types/Order.js +14 -21
- package/dist/cjs/types/index.d.ts +1 -0
- package/dist/cjs/types/index.js +2 -1
- package/dist/cjs/utils/TxManager.js +1 -5
- package/dist/cjs/utils/admin-service.d.ts +13 -0
- package/dist/cjs/utils/admin-service.js +73 -0
- package/dist/cjs/utils/helper.d.ts +3 -0
- package/dist/cjs/utils/helper.js +20 -2
- 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 +0 -1
- package/dist/cjs/utils/helpers/index.js +1 -2
- package/dist/cjs/utils/order/versify.js +7 -1
- package/dist/cjs/utils/rent-calculator/rent-calculator.js +3 -2
- package/dist/cjs/utils/rent-calculator/types.d.ts +1 -0
- package/dist/cjs/utils/types.d.ts +5 -0
- package/dist/mjs/RIGenerator.d.ts +2 -3
- package/dist/mjs/RIGenerator.js +7 -8
- package/dist/mjs/TeeInputGeneratorBase.d.ts +2 -2
- package/dist/mjs/TeeInputGeneratorBase.js +1 -1
- package/dist/mjs/connectors/BaseConnector.d.ts +2 -3
- package/dist/mjs/connectors/BaseConnector.js +1 -1
- package/dist/mjs/connectors/BlockchainConnector.js +1 -3
- package/dist/mjs/connectors/BlockchainEventsListener.d.ts +2 -2
- package/dist/mjs/connectors/BlockchainEventsListener.js +2 -3
- package/dist/mjs/constants.d.ts +2 -0
- package/dist/mjs/constants.js +5 -1
- package/dist/mjs/contracts/Campaign.d.ts +1078 -0
- package/dist/mjs/contracts/Campaign.js +1398 -0
- package/dist/mjs/contracts/abi.d.ts +406 -245
- package/dist/mjs/contracts/abi.js +509 -305
- package/dist/mjs/contracts/adminCertificateHelperAbi.d.ts +316 -0
- package/dist/mjs/contracts/adminCertificateHelperAbi.js +407 -0
- package/dist/mjs/crypto/Crypto.d.ts +13 -10
- package/dist/mjs/crypto/Crypto.js +17 -14
- 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 +0 -1
- package/dist/mjs/errors/index.js +1 -2
- package/dist/mjs/index.d.ts +2 -1
- package/dist/mjs/index.js +3 -2
- package/dist/mjs/models/Offer.d.ts +1 -16
- package/dist/mjs/models/Offer.js +1 -51
- package/dist/mjs/models/Order.d.ts +1 -1
- package/dist/mjs/models/Order.js +15 -11
- package/dist/mjs/providers/storage/S3StorageProvider.js +5 -5
- package/dist/mjs/providers/storage/StorageKeyValueAdapter.d.ts +1 -1
- package/dist/mjs/providers/storage/parseStorageCredentials.d.ts +2 -1
- package/dist/mjs/staticModels/AdminCertificateHelper.d.ts +24 -0
- package/dist/mjs/staticModels/AdminCertificateHelper.js +92 -0
- package/dist/mjs/staticModels/Campaign.d.ts +61 -0
- package/dist/mjs/staticModels/Campaign.js +292 -0
- package/dist/mjs/staticModels/Offers.d.ts +0 -1
- package/dist/mjs/staticModels/Offers.js +2 -4
- package/dist/mjs/staticModels/Orders.js +9 -10
- 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 -1
- package/dist/mjs/staticModels/TeeOffers.js +2 -4
- package/dist/mjs/tee/TeeCertificateService.js +9 -2
- package/dist/mjs/types/Campaign.d.ts +45 -0
- package/dist/mjs/types/Campaign.js +13 -0
- package/dist/mjs/types/Offer.d.ts +0 -5
- package/dist/mjs/types/Order.d.ts +20 -25
- package/dist/mjs/types/Order.js +14 -18
- package/dist/mjs/types/index.d.ts +1 -0
- package/dist/mjs/types/index.js +2 -1
- package/dist/mjs/utils/TxManager.js +1 -5
- package/dist/mjs/utils/admin-service.d.ts +13 -0
- package/dist/mjs/utils/admin-service.js +66 -0
- package/dist/mjs/utils/helper.d.ts +3 -0
- package/dist/mjs/utils/helper.js +17 -2
- 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 +0 -1
- package/dist/mjs/utils/helpers/index.js +1 -2
- package/dist/mjs/utils/order/versify.js +7 -1
- package/dist/mjs/utils/rent-calculator/rent-calculator.js +3 -2
- package/dist/mjs/utils/rent-calculator/types.d.ts +1 -0
- package/dist/mjs/utils/types.d.ts +5 -0
- package/package.json +3 -3
- package/dist/cjs/errors/insufficient-funds.error.d.ts +0 -19
- package/dist/cjs/errors/insufficient-funds.error.js +0 -57
- package/dist/cjs/utils/helpers/streamToBuffer.d.ts +0 -4
- package/dist/cjs/utils/helpers/streamToBuffer.js +0 -13
- package/dist/mjs/errors/insufficient-funds.error.d.ts +0 -19
- package/dist/mjs/errors/insufficient-funds.error.js +0 -53
- package/dist/mjs/utils/helpers/streamToBuffer.d.ts +0 -4
- package/dist/mjs/utils/helpers/streamToBuffer.js +0 -9
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.AdminCertificateHelper = void 0;
|
|
7
|
+
const adminCertificateHelperAbi_js_1 = require("../contracts/adminCertificateHelperAbi.js");
|
|
8
|
+
const store_js_1 = __importDefault(require("../store.js"));
|
|
9
|
+
const helper_js_1 = require("../utils/helper.js");
|
|
10
|
+
const TxManager_js_1 = __importDefault(require("../utils/TxManager.js"));
|
|
11
|
+
class AdminCertificateHelper {
|
|
12
|
+
static contractHttps;
|
|
13
|
+
static _addressHttps;
|
|
14
|
+
static set address(newAddress) {
|
|
15
|
+
AdminCertificateHelper._addressHttps = newAddress;
|
|
16
|
+
const contractHttps = AdminCertificateHelper.createContract(newAddress);
|
|
17
|
+
AdminCertificateHelper.contractHttps = contractHttps;
|
|
18
|
+
}
|
|
19
|
+
static createContract(newAddress) {
|
|
20
|
+
if (!store_js_1.default.web3Https) {
|
|
21
|
+
throw new Error('web3Https is not initialized');
|
|
22
|
+
}
|
|
23
|
+
const httpsContract = new store_js_1.default.web3Https.eth.Contract(adminCertificateHelperAbi_js_1.adminCertificateHelperAbi, newAddress, {
|
|
24
|
+
config: { contractDataInputFill: 'data' },
|
|
25
|
+
});
|
|
26
|
+
return httpsContract;
|
|
27
|
+
}
|
|
28
|
+
static get address() {
|
|
29
|
+
if (!AdminCertificateHelper._addressHttps) {
|
|
30
|
+
throw new Error('AdminCertificateHelper.address is not set');
|
|
31
|
+
}
|
|
32
|
+
return AdminCertificateHelper._addressHttps;
|
|
33
|
+
}
|
|
34
|
+
static async addAdmin(chain, signature, transactionOptions, checkTxBeforeSend = false) {
|
|
35
|
+
const contract = this.getContract();
|
|
36
|
+
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
37
|
+
const blockchainChain = chain.map((cert) => AdminCertificateHelper.certToRawBLockchainCert(cert));
|
|
38
|
+
const blockchainSignature = signature instanceof Buffer ? (0, helper_js_1.toBlockchainHex)(signature) : signature;
|
|
39
|
+
if (checkTxBeforeSend) {
|
|
40
|
+
await TxManager_js_1.default.dryRun(contract.methods.addAdmin(blockchainChain, 0, blockchainSignature), transactionOptions);
|
|
41
|
+
}
|
|
42
|
+
return await TxManager_js_1.default.execute(contract.methods.addAdmin(blockchainChain, 0, blockchainSignature), transactionOptions, AdminCertificateHelper.address);
|
|
43
|
+
}
|
|
44
|
+
static async getSignatureNonce() {
|
|
45
|
+
const contract = this.getContract();
|
|
46
|
+
return Number(await contract.methods.getSignatureNonce().call());
|
|
47
|
+
}
|
|
48
|
+
static async isAdmin(caller) {
|
|
49
|
+
const contract = this.getContract();
|
|
50
|
+
return await contract.methods.isAdmin(caller).call();
|
|
51
|
+
}
|
|
52
|
+
static async getCertVerifier() {
|
|
53
|
+
const contract = this.getContract();
|
|
54
|
+
return await contract.methods.getCertVerifier().call();
|
|
55
|
+
}
|
|
56
|
+
static async getAdminData() {
|
|
57
|
+
const contract = this.getContract();
|
|
58
|
+
const res = (await contract.methods.getAdminData().call());
|
|
59
|
+
const adminRaw = res._admin;
|
|
60
|
+
const certsChainRaw = res._certsChain;
|
|
61
|
+
const rootCertIdRaw = res._rootCertId;
|
|
62
|
+
const certsChain = certsChainRaw.map(AdminCertificateHelper.fromRawBlockchainCert);
|
|
63
|
+
return { admin: adminRaw, certsChain, rootCertId: Number(rootCertIdRaw) };
|
|
64
|
+
}
|
|
65
|
+
static certToRawBLockchainCert(cert) {
|
|
66
|
+
return [
|
|
67
|
+
cert.nonSerializedParts.map(helper_js_1.toBlockchainHex),
|
|
68
|
+
(0, helper_js_1.toBlockchainHex)(cert.expirationDate),
|
|
69
|
+
(0, helper_js_1.toBlockchainHex)(cert.ca),
|
|
70
|
+
(0, helper_js_1.toBlockchainHex)(cert.userData),
|
|
71
|
+
(0, helper_js_1.toBlockchainHex)(cert.publicKey),
|
|
72
|
+
(0, helper_js_1.toBlockchainHex)(cert.serialNumber),
|
|
73
|
+
(0, helper_js_1.toBlockchainHex)(cert.mrEnclave),
|
|
74
|
+
(0, helper_js_1.toBlockchainHex)(cert.mrSigner),
|
|
75
|
+
(0, helper_js_1.toBlockchainHex)(cert.signature),
|
|
76
|
+
];
|
|
77
|
+
}
|
|
78
|
+
static fromRawBlockchainCert(rawCert) {
|
|
79
|
+
return {
|
|
80
|
+
nonSerializedParts: rawCert.nonSerializedParts.map((part) => (0, helper_js_1.fromBlockchainHex)(part)),
|
|
81
|
+
expirationDate: (0, helper_js_1.fromBlockchainHex)(rawCert.expirationDate),
|
|
82
|
+
ca: (0, helper_js_1.fromBlockchainHex)(rawCert.ca),
|
|
83
|
+
userData: (0, helper_js_1.fromBlockchainHexOptional)(rawCert.userData),
|
|
84
|
+
publicKey: (0, helper_js_1.fromBlockchainHex)(rawCert.publicKey),
|
|
85
|
+
serialNumber: (0, helper_js_1.fromBlockchainHex)(rawCert.serialNumber),
|
|
86
|
+
mrEnclave: (0, helper_js_1.fromBlockchainHexOptional)(rawCert.mrEnclave),
|
|
87
|
+
mrSigner: (0, helper_js_1.fromBlockchainHexOptional)(rawCert.mrSigner),
|
|
88
|
+
signature: (0, helper_js_1.fromBlockchainHex)(rawCert.signature),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
static getContract() {
|
|
92
|
+
if (!this.contractHttps) {
|
|
93
|
+
throw new Error('AdminCertificateHelper is no initialized');
|
|
94
|
+
}
|
|
95
|
+
return this.contractHttps;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.AdminCertificateHelper = AdminCertificateHelper;
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWRtaW5DZXJ0aWZpY2F0ZUhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zdGF0aWNNb2RlbHMvQWRtaW5DZXJ0aWZpY2F0ZUhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSw0RkFBc0Y7QUFDdEYsMkRBQWdDO0FBR2hDLGtEQUs0QjtBQUM1Qix5RUFBOEM7QUFvQjlDLE1BQWEsc0JBQXNCO0lBQ3pCLE1BQU0sQ0FBQyxhQUFhLENBQThDO0lBQ2xFLE1BQU0sQ0FBQyxhQUFhLENBQVU7SUFFL0IsTUFBTSxLQUFLLE9BQU8sQ0FBQyxVQUFrQjtRQUMxQyxzQkFBc0IsQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDO1FBQ2xELE1BQU0sYUFBYSxHQUFHLHNCQUFzQixDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4RSxzQkFBc0IsQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQ3ZELENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQWtCO1FBQzdDLElBQUksQ0FBQyxrQkFBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBRUQsTUFBTSxhQUFhLEdBQUcsSUFBSSxrQkFBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLHdEQUF5QixFQUFFLFVBQVUsRUFBRTtZQUM1RixNQUFNLEVBQUUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLEVBQUU7U0FDMUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUVNLE1BQU0sS0FBSyxPQUFPO1FBQ3ZCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7UUFDL0QsQ0FBQztRQUNELE9BQU8sc0JBQXNCLENB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
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Contract, TransactionReceipt } from 'web3';
|
|
2
|
+
import { abi } from '../contracts/Campaign.js';
|
|
3
|
+
import { TransactionOptions, BlockInfo, Status, TotalParticipantInfo, ParticipantScore, MigrationNetwork, TokenAmount, MigrationWithIndex } from '../types/index.js';
|
|
4
|
+
declare class Campaign {
|
|
5
|
+
private static _addressHttps;
|
|
6
|
+
private static _addressWss;
|
|
7
|
+
private static contractHttps?;
|
|
8
|
+
private static contractWss?;
|
|
9
|
+
private static readonly logger;
|
|
10
|
+
static get addressHttps(): string;
|
|
11
|
+
static set addressHttps(newAddress: string);
|
|
12
|
+
static createContract(newAddress: string): [Contract<typeof abi>, Contract<typeof abi>];
|
|
13
|
+
static get addressWss(): string;
|
|
14
|
+
static set addressWss(newAddress: string);
|
|
15
|
+
/**
|
|
16
|
+
* Checks if contract has been initialized, if not - initialize contract
|
|
17
|
+
*/
|
|
18
|
+
private static checkInit;
|
|
19
|
+
private static getContract;
|
|
20
|
+
static isUniqueSrcAddressByParticipant(participant: string, srcAddress: string, contract?: Contract<typeof abi>): Promise<boolean>;
|
|
21
|
+
static isUniqueDstAddress(dstAddress: string, contract?: Contract<typeof abi>): Promise<boolean>;
|
|
22
|
+
static isUniqueSrcAddress(srcAddress: string, contract?: Contract<typeof abi>): Promise<boolean>;
|
|
23
|
+
static getStat(contract?: Contract<typeof abi>): Promise<{
|
|
24
|
+
totalMigrations: number;
|
|
25
|
+
totalDeployedMigrations: number;
|
|
26
|
+
totalNotDeployedMigrations: number;
|
|
27
|
+
}>;
|
|
28
|
+
static getCompetitionSetup(contract?: Contract<typeof abi>): Promise<{
|
|
29
|
+
claimDateAfter: number;
|
|
30
|
+
notValidBeforeTs: number;
|
|
31
|
+
notValidAfterTs: number;
|
|
32
|
+
}>;
|
|
33
|
+
static getParticipantByRank(rank: number, contract?: Contract<typeof abi>): Promise<ParticipantScore>;
|
|
34
|
+
static getParticipantInfo(participant: string, contract?: Contract<typeof abi>): Promise<TotalParticipantInfo>;
|
|
35
|
+
static getTopParticipantsInfo(count: number, contract?: Contract<typeof abi>): Promise<TotalParticipantInfo[]>;
|
|
36
|
+
static getMigrationRange(from: number, to: number, status: Status, contract?: Contract<typeof abi>): Promise<MigrationWithIndex[]>;
|
|
37
|
+
static getMigrationsByIndexes(indexes: number[], contract?: Contract<typeof abi>): Promise<MigrationWithIndex[]>;
|
|
38
|
+
static contentHashExists(contentHash: string, contract?: Contract<typeof abi>): Promise<boolean>;
|
|
39
|
+
static getTotalParticipants(contract?: Contract<typeof abi>): Promise<number>;
|
|
40
|
+
static getTopParticipants(count: number, contract?: Contract<typeof abi>): Promise<ParticipantScore[]>;
|
|
41
|
+
static getParticipantsAroundRank(centerRank: number, range: number, contract?: Contract<typeof abi>): Promise<ParticipantScore[]>;
|
|
42
|
+
static getParticipantsByRange(startRank: number, endRank: number, contract?: Contract<typeof abi>): Promise<ParticipantScore[]>;
|
|
43
|
+
static getTotalMigrations(contract?: Contract<typeof abi>): Promise<number>;
|
|
44
|
+
static registry(transactionOptions?: TransactionOptions, checkTxBeforeSend?: boolean): Promise<TransactionReceipt>;
|
|
45
|
+
static submitMigration(srcNetwork: MigrationNetwork, srcAddress: string, dstAddress: string, srcUrl?: string, dstUrl?: string, transactionOptions?: TransactionOptions, checkTxBeforeSend?: boolean): Promise<TransactionReceipt>;
|
|
46
|
+
static updateMigrationStatusByApp(migrationIndex: number, isDeployed: boolean, transactions: number, transactionOptions?: TransactionOptions, checkTxBeforeSend?: boolean): Promise<TransactionReceipt>;
|
|
47
|
+
static updateMigrationTransactionsByApp(migrationIndex: number, transactions: number, transactionOptions?: TransactionOptions, checkTxBeforeSend?: boolean): Promise<TransactionReceipt>;
|
|
48
|
+
static claimReward(transactionOptions?: TransactionOptions, checkTxBeforeSend?: boolean): Promise<TransactionReceipt>;
|
|
49
|
+
static grantRole(role: string, account: string, transactionOptions?: TransactionOptions, checkTxBeforeSend?: boolean): Promise<TransactionReceipt>;
|
|
50
|
+
static onRegisterUser(callback: onRegisterUser): () => void;
|
|
51
|
+
static onMigrationSubmitted(callback: onMigrationSubmittedCallback): () => void;
|
|
52
|
+
static onMigrationStatusUpdated(callback: onMigrationStatusUpdated): () => void;
|
|
53
|
+
static onMigrationTransactionsUpdated(callback: onMigrationTransactionsUpdated): () => void;
|
|
54
|
+
static onRewardClaimed(callback: onRewardClaimed): () => void;
|
|
55
|
+
}
|
|
56
|
+
export type onRegisterUser = (participant: string, block?: BlockInfo) => void;
|
|
57
|
+
export type onMigrationSubmittedCallback = (participant: string, migrationIndex: number, block?: BlockInfo) => void;
|
|
58
|
+
export type onMigrationStatusUpdated = (migrationIndex: number, status: Status, block?: BlockInfo) => void;
|
|
59
|
+
export type onMigrationTransactionsUpdated = (migrationIndex: number, transactions: number, block?: BlockInfo) => void;
|
|
60
|
+
export type onRewardClaimed = (participant: number, amount: TokenAmount, block?: BlockInfo) => void;
|
|
61
|
+
export default Campaign;
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const web3_1 = require("web3");
|
|
7
|
+
const logger_js_1 = __importDefault(require("../logger.js"));
|
|
8
|
+
const Campaign_js_1 = require("../contracts/Campaign.js");
|
|
9
|
+
const store_js_1 = __importDefault(require("../store.js"));
|
|
10
|
+
const helper_js_1 = require("../utils/helper.js");
|
|
11
|
+
const TxManager_js_1 = __importDefault(require("../utils/TxManager.js"));
|
|
12
|
+
const index_js_1 = require("../connectors/index.js");
|
|
13
|
+
class Campaign {
|
|
14
|
+
static _addressHttps;
|
|
15
|
+
static _addressWss;
|
|
16
|
+
static contractHttps;
|
|
17
|
+
static contractWss;
|
|
18
|
+
static logger = logger_js_1.default.child({ className: 'Campaign' });
|
|
19
|
+
static get addressHttps() {
|
|
20
|
+
return Campaign._addressHttps;
|
|
21
|
+
}
|
|
22
|
+
static set addressHttps(newAddress) {
|
|
23
|
+
Campaign._addressHttps = newAddress;
|
|
24
|
+
const [contractHttps, contractWss] = Campaign.createContract(newAddress);
|
|
25
|
+
Campaign.contractHttps = contractHttps;
|
|
26
|
+
Campaign.contractWss = contractWss;
|
|
27
|
+
}
|
|
28
|
+
static createContract(newAddress) {
|
|
29
|
+
const httpsContract = new store_js_1.default.web3Https.eth.Contract(Campaign_js_1.abi, newAddress, {
|
|
30
|
+
provider: store_js_1.default.web3Https.currentProvider,
|
|
31
|
+
config: { contractDataInputFill: 'data' },
|
|
32
|
+
});
|
|
33
|
+
const wssContract = new store_js_1.default.web3Wss.eth.Contract(Campaign_js_1.abi, newAddress, {
|
|
34
|
+
provider: store_js_1.default.web3Wss.currentProvider,
|
|
35
|
+
config: { contractDataInputFill: 'data' },
|
|
36
|
+
});
|
|
37
|
+
return [httpsContract, wssContract];
|
|
38
|
+
}
|
|
39
|
+
static get addressWss() {
|
|
40
|
+
return Campaign._addressWss;
|
|
41
|
+
}
|
|
42
|
+
static set addressWss(newAddress) {
|
|
43
|
+
Campaign._addressWss = newAddress;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Checks if contract has been initialized, if not - initialize contract
|
|
47
|
+
*/
|
|
48
|
+
static checkInit(wssConnection = false) {
|
|
49
|
+
if (!Campaign.contractHttps) {
|
|
50
|
+
throw Error(`Campaign must be initialized before it can be used`);
|
|
51
|
+
}
|
|
52
|
+
return wssConnection ? Campaign.contractWss : Campaign.contractHttps;
|
|
53
|
+
}
|
|
54
|
+
static getContract(contract) {
|
|
55
|
+
return contract ? contract : Campaign.checkInit();
|
|
56
|
+
}
|
|
57
|
+
static async isUniqueSrcAddressByParticipant(participant, srcAddress, contract) {
|
|
58
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract)
|
|
59
|
+
.methods.isUniqueSrcAddressByParticipant(participant, srcAddress)
|
|
60
|
+
.call());
|
|
61
|
+
}
|
|
62
|
+
static async isUniqueDstAddress(dstAddress, contract) {
|
|
63
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.isUniqueDstAddress(dstAddress).call());
|
|
64
|
+
}
|
|
65
|
+
static async isUniqueSrcAddress(srcAddress, contract) {
|
|
66
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.isUniqueSrcAddress(srcAddress).call());
|
|
67
|
+
}
|
|
68
|
+
static async getStat(contract) {
|
|
69
|
+
const contractResult = await this.getContract(contract).methods.getStat().call();
|
|
70
|
+
const result = {
|
|
71
|
+
totalMigrations: Number(contractResult.totalMigrations),
|
|
72
|
+
totalDeployedMigrations: Number(contractResult._totalDeployedMigrations),
|
|
73
|
+
totalNotDeployedMigrations: Number(contractResult._totalNotDeployedMigrations),
|
|
74
|
+
};
|
|
75
|
+
return result;
|
|
76
|
+
}
|
|
77
|
+
static async getCompetitionSetup(contract) {
|
|
78
|
+
const contractResult = await this.getContract(contract).methods.getCompetitionSetup().call();
|
|
79
|
+
const result = {
|
|
80
|
+
claimDateAfter: Number(contractResult.claimDateAfter),
|
|
81
|
+
notValidBeforeTs: Number(contractResult.notValidBeforeTs),
|
|
82
|
+
notValidAfterTs: Number(contractResult.notValidAfterTs),
|
|
83
|
+
};
|
|
84
|
+
return result;
|
|
85
|
+
}
|
|
86
|
+
static async getParticipantByRank(rank, contract) {
|
|
87
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.getParticipantByRank(rank).call());
|
|
88
|
+
}
|
|
89
|
+
static async getParticipantInfo(participant, contract) {
|
|
90
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.getParticipantInfo(participant).call());
|
|
91
|
+
}
|
|
92
|
+
static async getTopParticipantsInfo(count, contract) {
|
|
93
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.getTopParticipantsInfo(count).call());
|
|
94
|
+
}
|
|
95
|
+
static async getMigrationRange(from, to, status, contract) {
|
|
96
|
+
const contents = (await this.getContract(contract).methods.getMigrationRange(from, to, status).call()).map((migrationWithIndex) => {
|
|
97
|
+
const migration = (0, helper_js_1.cleanWeb3Data)(migrationWithIndex.migration);
|
|
98
|
+
const cleanedContentWithIndex = {
|
|
99
|
+
migration: {
|
|
100
|
+
...migration,
|
|
101
|
+
status: Number(migration.status),
|
|
102
|
+
},
|
|
103
|
+
index: Number(migrationWithIndex.index),
|
|
104
|
+
};
|
|
105
|
+
return cleanedContentWithIndex;
|
|
106
|
+
});
|
|
107
|
+
return contents;
|
|
108
|
+
}
|
|
109
|
+
static async getMigrationsByIndexes(indexes, contract) {
|
|
110
|
+
const contents = (await this.getContract(contract).methods.getMigrationsByIndexes(indexes).call()).map((migrationWithIndex) => {
|
|
111
|
+
const migration = (0, helper_js_1.cleanWeb3Data)(migrationWithIndex.migration);
|
|
112
|
+
const cleanedContentWithIndex = {
|
|
113
|
+
migration: {
|
|
114
|
+
...migration,
|
|
115
|
+
status: Number(migration.status),
|
|
116
|
+
},
|
|
117
|
+
index: Number(migrationWithIndex.index),
|
|
118
|
+
};
|
|
119
|
+
return cleanedContentWithIndex;
|
|
120
|
+
});
|
|
121
|
+
return contents;
|
|
122
|
+
}
|
|
123
|
+
static async contentHashExists(contentHash, contract) {
|
|
124
|
+
return await this.getContract(contract).methods.contentHashExists(contentHash).call();
|
|
125
|
+
}
|
|
126
|
+
static async getTotalParticipants(contract) {
|
|
127
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.getTotalParticipants().call());
|
|
128
|
+
}
|
|
129
|
+
static async getTopParticipants(count, contract) {
|
|
130
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.getTopParticipants(count).call());
|
|
131
|
+
}
|
|
132
|
+
static async getParticipantsAroundRank(centerRank, range, contract) {
|
|
133
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.getParticipantsAroundRank(centerRank, range).call());
|
|
134
|
+
}
|
|
135
|
+
static async getParticipantsByRange(startRank, endRank, contract) {
|
|
136
|
+
return (0, helper_js_1.cleanWeb3Data)(await this.getContract(contract).methods.getParticipantsByRange(startRank, endRank).call());
|
|
137
|
+
}
|
|
138
|
+
static async getTotalMigrations(contract) {
|
|
139
|
+
return Number(await this.getContract(contract).methods.getTotalMigrations().call());
|
|
140
|
+
}
|
|
141
|
+
static async registry(transactionOptions, checkTxBeforeSend = false) {
|
|
142
|
+
const contract = this.checkInit();
|
|
143
|
+
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
144
|
+
if (checkTxBeforeSend) {
|
|
145
|
+
await TxManager_js_1.default.dryRun(contract.methods.registry(), transactionOptions);
|
|
146
|
+
}
|
|
147
|
+
return await TxManager_js_1.default.execute(contract.methods.registry(), transactionOptions, Campaign.addressHttps);
|
|
148
|
+
}
|
|
149
|
+
static async submitMigration(srcNetwork, srcAddress, dstAddress, srcUrl = '', dstUrl = '', transactionOptions, checkTxBeforeSend = false) {
|
|
150
|
+
const contract = this.checkInit();
|
|
151
|
+
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
152
|
+
if (checkTxBeforeSend) {
|
|
153
|
+
await TxManager_js_1.default.dryRun(contract.methods.submitMigration(srcNetwork, srcAddress, dstAddress, srcUrl, dstUrl), transactionOptions);
|
|
154
|
+
}
|
|
155
|
+
return await TxManager_js_1.default.execute(contract.methods.submitMigration(srcNetwork, srcAddress, dstAddress, srcUrl, dstUrl), transactionOptions, Campaign.addressHttps);
|
|
156
|
+
}
|
|
157
|
+
static async updateMigrationStatusByApp(migrationIndex, isDeployed, transactions, transactionOptions, checkTxBeforeSend = false) {
|
|
158
|
+
const contract = this.checkInit();
|
|
159
|
+
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
160
|
+
if (checkTxBeforeSend) {
|
|
161
|
+
await TxManager_js_1.default.dryRun(contract.methods.updateMigrationStatusByApp(migrationIndex, isDeployed, transactions), transactionOptions);
|
|
162
|
+
}
|
|
163
|
+
return await TxManager_js_1.default.execute(contract.methods.updateMigrationStatusByApp(migrationIndex, isDeployed, transactions), transactionOptions, Campaign.addressHttps);
|
|
164
|
+
}
|
|
165
|
+
static async updateMigrationTransactionsByApp(migrationIndex, transactions, transactionOptions, checkTxBeforeSend = false) {
|
|
166
|
+
const contract = this.checkInit();
|
|
167
|
+
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
168
|
+
if (checkTxBeforeSend) {
|
|
169
|
+
await TxManager_js_1.default.dryRun(contract.methods.updateMigrationTransactionsByApp(migrationIndex, transactions), transactionOptions);
|
|
170
|
+
}
|
|
171
|
+
return await TxManager_js_1.default.execute(contract.methods.updateMigrationTransactionsByApp(migrationIndex, transactions), transactionOptions, Campaign.addressHttps);
|
|
172
|
+
}
|
|
173
|
+
static async claimReward(transactionOptions, checkTxBeforeSend = false) {
|
|
174
|
+
const contract = this.checkInit();
|
|
175
|
+
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
176
|
+
if (checkTxBeforeSend) {
|
|
177
|
+
await TxManager_js_1.default.dryRun(contract.methods.claimReward(), transactionOptions);
|
|
178
|
+
}
|
|
179
|
+
return await TxManager_js_1.default.execute(contract.methods.claimReward(), transactionOptions, Campaign.addressHttps);
|
|
180
|
+
}
|
|
181
|
+
static async grantRole(role, account, transactionOptions, checkTxBeforeSend = false) {
|
|
182
|
+
const contract = this.checkInit();
|
|
183
|
+
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
184
|
+
role = web3_1.utils.keccak256(role);
|
|
185
|
+
if (checkTxBeforeSend) {
|
|
186
|
+
await TxManager_js_1.default.dryRun(contract.methods.grantRole(role, account), transactionOptions);
|
|
187
|
+
}
|
|
188
|
+
return await TxManager_js_1.default.execute(contract.methods.grantRole(role, account), transactionOptions, Campaign.addressHttps);
|
|
189
|
+
}
|
|
190
|
+
static onRegisterUser(callback) {
|
|
191
|
+
const listener = index_js_1.BlockchainEventsListener.getInstance();
|
|
192
|
+
const logger = this.logger.child({ method: 'onRegisterUser' });
|
|
193
|
+
const onData = (event) => {
|
|
194
|
+
const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
|
|
195
|
+
callback(parsedEvent.participant, {
|
|
196
|
+
index: Number(event.blockNumber),
|
|
197
|
+
hash: event.blockHash,
|
|
198
|
+
});
|
|
199
|
+
};
|
|
200
|
+
const onError = (error) => {
|
|
201
|
+
logger.warn(error);
|
|
202
|
+
};
|
|
203
|
+
const contract = this.checkInit(true);
|
|
204
|
+
return listener.subscribeEvent({
|
|
205
|
+
onError,
|
|
206
|
+
onData,
|
|
207
|
+
event: 'ParticipantRegistered',
|
|
208
|
+
contract: contract,
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
static onMigrationSubmitted(callback) {
|
|
212
|
+
const listener = index_js_1.BlockchainEventsListener.getInstance();
|
|
213
|
+
const logger = this.logger.child({ method: 'onMigrationSubmitted' });
|
|
214
|
+
const onData = (event) => {
|
|
215
|
+
const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
|
|
216
|
+
callback(parsedEvent.participant, parsedEvent.migrationIndex, {
|
|
217
|
+
index: Number(event.blockNumber),
|
|
218
|
+
hash: event.blockHash,
|
|
219
|
+
});
|
|
220
|
+
};
|
|
221
|
+
const onError = (error) => {
|
|
222
|
+
logger.warn(error);
|
|
223
|
+
};
|
|
224
|
+
const contract = this.checkInit(true);
|
|
225
|
+
return listener.subscribeEvent({
|
|
226
|
+
onError,
|
|
227
|
+
onData,
|
|
228
|
+
event: 'MigrationSubmitted',
|
|
229
|
+
contract: contract,
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
static onMigrationStatusUpdated(callback) {
|
|
233
|
+
const listener = index_js_1.BlockchainEventsListener.getInstance();
|
|
234
|
+
const logger = this.logger.child({ method: 'onMigrationStatusUpdated' });
|
|
235
|
+
const onData = (event) => {
|
|
236
|
+
const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
|
|
237
|
+
callback(parsedEvent.migrationIndex, parsedEvent.status, {
|
|
238
|
+
index: Number(event.blockNumber),
|
|
239
|
+
hash: event.blockHash,
|
|
240
|
+
});
|
|
241
|
+
};
|
|
242
|
+
const onError = (error) => {
|
|
243
|
+
logger.warn(error);
|
|
244
|
+
};
|
|
245
|
+
const contract = this.checkInit(true);
|
|
246
|
+
return listener.subscribeEvent({
|
|
247
|
+
onError,
|
|
248
|
+
onData,
|
|
249
|
+
event: 'MigrationStatusUpdated',
|
|
250
|
+
contract: contract,
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
static onMigrationTransactionsUpdated(callback) {
|
|
254
|
+
const listener = index_js_1.BlockchainEventsListener.getInstance();
|
|
255
|
+
const logger = this.logger.child({ method: 'onMigrationTransactionsUpdated' });
|
|
256
|
+
const onData = (event) => {
|
|
257
|
+
const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
|
|
258
|
+
callback(parsedEvent.migrationIndex, parsedEvent.transactions, {
|
|
259
|
+
index: Number(event.blockNumber),
|
|
260
|
+
hash: event.blockHash,
|
|
261
|
+
});
|
|
262
|
+
};
|
|
263
|
+
const onError = (error) => {
|
|
264
|
+
logger.warn(error);
|
|
265
|
+
};
|
|
266
|
+
const contract = this.checkInit(true);
|
|
267
|
+
return listener.subscribeEvent({
|
|
268
|
+
onError,
|
|
269
|
+
onData,
|
|
270
|
+
event: 'MigrationTransactionsUpdated',
|
|
271
|
+
contract: contract,
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
static onRewardClaimed(callback) {
|
|
275
|
+
const listener = index_js_1.BlockchainEventsListener.getInstance();
|
|
276
|
+
const logger = this.logger.child({ method: 'onRewardClaimed' });
|
|
277
|
+
const onData = (event) => {
|
|
278
|
+
const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
|
|
279
|
+
callback(parsedEvent.participant, parsedEvent.amount, {
|
|
280
|
+
index: Number(event.blockNumber),
|
|
281
|
+
hash: event.blockHash,
|
|
282
|
+
});
|
|
283
|
+
};
|
|
284
|
+
const onError = (error) => {
|
|
285
|
+
logger.warn(error);
|
|
286
|
+
};
|
|
287
|
+
const contract = this.checkInit(true);
|
|
288
|
+
return listener.subscribeEvent({
|
|
289
|
+
onError,
|
|
290
|
+
onData,
|
|
291
|
+
event: 'RewardClaimed',
|
|
292
|
+
contract: contract,
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
exports.default = Campaign;
|
|
297
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FtcGFpZ24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RhdGljTW9kZWxzL0NhbXBhaWduLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQTJEO0FBQzNELDZEQUFzQztBQUN0QywwREFBK0M7QUFDL0MsMkRBQWdDO0FBQ2hDLGtEQUFvRjtBQVlwRix5RUFBOEM7QUFDOUMscURBQWtFO0FBTWxFLE1BQU0sUUFBUTtJQUNKLE1BQU0sQ0FBQyxhQUFhLENBQVM7SUFDN0IsTUFBTSxDQUFDLFdBQVcsQ0FBUztJQUMzQixNQUFNLENBQUMsYUFBYSxDQUF3QjtJQUM1QyxNQUFNLENBQUMsV0FBVyxDQUF3QjtJQUMxQyxNQUFNLENBQVUsTUFBTSxHQUFHLG1CQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFFdEUsTUFBTSxLQUFLLFlBQVk7UUFDNUIsT0FBTyxRQUFRLENBQUMsYUFBYSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxNQUFNLEtBQUssWUFBWSxDQUFDLFVBQWtCO1FBQy9DLFFBQVEsQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDO1FBQ3BDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6RSxRQUFRLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUN2QyxRQUFRLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNyQyxDQUFDO0lBRU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxVQUFrQjtRQUM3QyxNQUFNLGFBQWEsR0FBRyxJQUFJLGtCQUFLLENBQUMsU0FBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsaUJBQUcsRUFBRSxVQUFVLEVBQUU7WUFDdkUsUUFBUSxFQUFFLGtCQUFLLENBQUMsU0FBVSxDQUFDLGVBQWU7WUFDMUMsTUFBTSxFQUFFLEVBQUUscUJBQXFC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
|
|
@@ -12,7 +12,6 @@ const Superpro_js_1 = __importDefault(require("./Superpro.js"));
|
|
|
12
12
|
const TxManager_js_1 = __importDefault(require("../utils/TxManager.js"));
|
|
13
13
|
const index_js_2 = require("../connectors/index.js");
|
|
14
14
|
const OffersCommon_js_1 = __importDefault(require("./OffersCommon.js"));
|
|
15
|
-
const ethers_1 = require("ethers");
|
|
16
15
|
class Offers {
|
|
17
16
|
static logger = logger_js_1.default.child({ className: 'Offers' });
|
|
18
17
|
static get address() {
|
|
@@ -72,7 +71,7 @@ class Offers {
|
|
|
72
71
|
* @returns Promise that resolves when offer is created
|
|
73
72
|
*/
|
|
74
73
|
static async create(params) {
|
|
75
|
-
const { providerAuthorityAccount, offerInfo, externalId = 'default', enabled = false,
|
|
74
|
+
const { providerAuthorityAccount, offerInfo, externalId = 'default', enabled = false, transactionOptions, } = params;
|
|
76
75
|
const contract = index_js_2.BlockchainConnector.getInstance().getContract();
|
|
77
76
|
(0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
|
|
78
77
|
const formattedExternalId = (0, utils_js_1.formatBytes32String)(externalId);
|
|
@@ -89,7 +88,6 @@ class Offers {
|
|
|
89
88
|
offerType: offerType,
|
|
90
89
|
providerAuth: providerAuthorityAccount,
|
|
91
90
|
enabled,
|
|
92
|
-
offerActionAccount: offerActionAccount ?? ethers_1.ethers.constants.AddressZero,
|
|
93
91
|
};
|
|
94
92
|
const newOfferId = await StaticModel_js_1.default.createEntity({
|
|
95
93
|
txExecutorCallback: async () => {
|
|
@@ -252,4 +250,4 @@ class Offers {
|
|
|
252
250
|
}
|
|
253
251
|
}
|
|
254
252
|
exports.default = Offers;
|
|
255
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
253
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2ZmZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0YXRpY01vZGVscy9PZmZlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2REFBc0M7QUFDdEMsc0VBQTJDO0FBQzNDLGtEQUFvRjtBQUNwRixrREFBeUY7QUFDekYsZ0RBWTJCO0FBQzNCLGdFQUFxQztBQUNyQyx5RUFBOEM7QUFDOUMscURBQXVGO0FBTXZGLHdFQUE2QztBQUU3QyxNQUFNLE1BQU07SUFDRixNQUFNLENBQVUsTUFBTSxHQUFHLG1CQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFM0UsTUFBTSxLQUFLLE9BQU87UUFDaEIsT0FBTyxxQkFBUSxDQUFDLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU07UUFDakIsTUFBTSxNQUFNLEdBQUcsTUFBTSx5QkFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUvQyxPQUFPLE1BQU07YUFDVixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssb0JBQVMsQ0FBQyxRQUFRLENBQUM7YUFDcEQsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBcUI7UUFDN0MsTUFBTSxRQUFRLEdBQUcsOEJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakUsT0FBTyxNQUFNLFFBQVEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdELENBQUM7SUFFRDs7T0FFRztJQUNILE1B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
|