@super-protocol/sdk-js 2.0.6-beta.2 → 2.0.6-beta.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.
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { ProviderInfo, Origins, TransactionOptions, BlockchainId } from '../types';
|
|
1
|
+
import { ProviderInfo, Origins, TransactionOptions, BlockchainId, TokenAmount } from '../types';
|
|
2
2
|
declare class Provider {
|
|
3
3
|
private static contract;
|
|
4
4
|
providerInfo?: ProviderInfo;
|
|
5
5
|
violationRate?: bigint | string;
|
|
6
|
-
authority?: string;
|
|
7
6
|
valueOffers?: BlockchainId[];
|
|
8
7
|
teeOffers?: BlockchainId[];
|
|
9
8
|
origins?: Origins;
|
|
@@ -34,6 +33,17 @@ declare class Provider {
|
|
|
34
33
|
* Fetch new Origins (createdDate, createdBy, modifiedDate and modifiedBy)
|
|
35
34
|
*/
|
|
36
35
|
getOrigins(): Promise<Origins>;
|
|
36
|
+
/**
|
|
37
|
+
* Fetch calculation of required providers security deposit for offers,
|
|
38
|
+
* if additionalAmount is equal zero then deposit will be calculated for existing offers
|
|
39
|
+
* @param additionalAmount - number of tokens planned to be added and frozen as security deposit
|
|
40
|
+
* @returns required deposit
|
|
41
|
+
*/
|
|
42
|
+
getProviderRequiredSecDepo(additionalAmount?: TokenAmount): Promise<TokenAmount>;
|
|
43
|
+
/**
|
|
44
|
+
* Fetch provider security deposit by provider authority account
|
|
45
|
+
*/
|
|
46
|
+
getSecurityDeposit(): Promise<TokenAmount>;
|
|
37
47
|
isProviderBanned(): Promise<boolean>;
|
|
38
48
|
getOrdersLockedProfitList(): Promise<BlockchainId[]>;
|
|
39
49
|
getTcbLockedProfitList(): Promise<BlockchainId[]>;
|
package/build/models/Provider.js
CHANGED
|
@@ -94,6 +94,25 @@ class Provider {
|
|
|
94
94
|
return (this.origins = origins);
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Fetch calculation of required providers security deposit for offers,
|
|
99
|
+
* if additionalAmount is equal zero then deposit will be calculated for existing offers
|
|
100
|
+
* @param additionalAmount - number of tokens planned to be added and frozen as security deposit
|
|
101
|
+
* @returns required deposit
|
|
102
|
+
*/
|
|
103
|
+
getProviderRequiredSecDepo(additionalAmount = '0') {
|
|
104
|
+
const contract = connectors_1.BlockchainConnector.getInstance().getContract();
|
|
105
|
+
return contract.methods.getProviderRequiredSecDepo(this.providerId, additionalAmount).call();
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Fetch provider security deposit by provider authority account
|
|
109
|
+
*/
|
|
110
|
+
getSecurityDeposit() {
|
|
111
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
112
|
+
const contract = connectors_1.BlockchainConnector.getInstance().getContract();
|
|
113
|
+
return (0, helper_1.convertBigIntToString)(yield contract.methods.getProviderSecurityDeposit(this.providerId).call());
|
|
114
|
+
});
|
|
115
|
+
}
|
|
97
116
|
isProviderBanned() {
|
|
98
117
|
return __awaiter(this, void 0, void 0, function* () {
|
|
99
118
|
const violationRate = yield this.getViolationRate();
|
|
@@ -115,4 +134,4 @@ class Provider {
|
|
|
115
134
|
}
|
|
116
135
|
}
|
|
117
136
|
exports.default = Provider;
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kZWxzL1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBRUEsNENBSXlCO0FBRXpCLDhDQUFvRDtBQUNwRCxtRUFBMkM7QUFDM0MsMEVBQWtEO0FBRWxELE1BQU0sUUFBUTtJQVVaLFlBQVksVUFBa0I7UUFDNUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDdEIsUUFBUSxDQUFDLFFBQVEsR0FBRyxnQ0FBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNyRTtJQUNILENBQUM7SUFFWSxNQUFNLENBQ2pCLFlBQTBCLEVBQzFCLGtCQUF1Qzs7WUFFdkMsSUFBQSx3Q0FBK0IsRUFBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBRXBELE1BQU0sbUJBQVMsQ0FBQyxPQUFPLENBQ3JCLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsRUFDdEQsa0JBQWtCLENBQ25CLENBQUM7UUFDSixDQUFDO0tBQUE7SUFFRDs7T0FFRztJQUNVLE9BQU87O1lBQ2xCLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU87aUJBQ3ZELGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2lCQUNoQyxJQUFJLEVBQUU7aUJBQ04sSUFBSSxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxJQUFBLHNCQUFhLEVBQUMsWUFBWSxDQUFpQixDQUFDLENBQUM7WUFFdkUsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsa0JBQWtCLENBQUMsQ0FBQztRQUNsRCxDQUFDO0tBQUE7SUFFRDs7T0FFRztJQUNJLFlBQVk7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEs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
|
|
@@ -6,12 +6,7 @@ declare class ProviderRegistry {
|
|
|
6
6
|
* Function for fetching list of all providers addresses
|
|
7
7
|
*/
|
|
8
8
|
static getAllProviders(): Promise<string[]>;
|
|
9
|
-
/**
|
|
10
|
-
* Fetch provider security deposit by provider authority account
|
|
11
|
-
*/
|
|
12
|
-
static getSecurityDeposit(providerAuthority: string): Promise<TokenAmount>;
|
|
13
9
|
static isProviderRegistered(providerAuthority: string): Promise<boolean>;
|
|
14
|
-
static getProviderRequiredSecDepo(providerAuthority: string, additionalAmount: TokenAmount): Promise<TokenAmount>;
|
|
15
10
|
/**
|
|
16
11
|
* Refills security provider deposit
|
|
17
12
|
* Call this function with provider authority account (in transactionOptions)
|
|
@@ -27,23 +27,10 @@ class ProviderRegistry {
|
|
|
27
27
|
return this.providers;
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
-
/**
|
|
31
|
-
* Fetch provider security deposit by provider authority account
|
|
32
|
-
*/
|
|
33
|
-
static getSecurityDeposit(providerAuthority) {
|
|
34
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
const contract = connectors_1.BlockchainConnector.getInstance().getContract();
|
|
36
|
-
return (0, helper_1.convertBigIntToString)(yield contract.methods.getProviderSecurityDeposit(providerAuthority).call());
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
30
|
static isProviderRegistered(providerAuthority) {
|
|
40
31
|
const contract = connectors_1.BlockchainConnector.getInstance().getContract();
|
|
41
32
|
return contract.methods.isProviderRegistered(providerAuthority).call();
|
|
42
33
|
}
|
|
43
|
-
static getProviderRequiredSecDepo(providerAuthority, additionalAmount) {
|
|
44
|
-
const contract = connectors_1.BlockchainConnector.getInstance().getContract();
|
|
45
|
-
return contract.methods.getProviderRequiredSecDepo(providerAuthority, additionalAmount).call();
|
|
46
|
-
}
|
|
47
34
|
/**
|
|
48
35
|
* Refills security provider deposit
|
|
49
36
|
* Call this function with provider authority account (in transactionOptions)
|
|
@@ -202,4 +189,4 @@ class ProviderRegistry {
|
|
|
202
189
|
}
|
|
203
190
|
ProviderRegistry.logger = logger_1.default.child({ className: 'ProviderRegistry' });
|
|
204
191
|
exports.default = ProviderRegistry;
|
|
205
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXJSZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0aWNNb2RlbHMvUHJvdmlkZXJSZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUFtQztBQUNuQyw0Q0FBaUY7QUFHakYsOENBQThFO0FBQzlFLG1FQUEyQztBQUUzQyxNQUFNLGdCQUFnQjtJQUtwQjs7T0FFRztJQUNJLE1BQU0sQ0FBTyxlQUFlOztZQUNqQyxNQUFNLFFBQVEsR0FBRyxnQ0FBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNqRSxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sUUFBUSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1lBRW5FLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN4QixDQUFDO0tBQUE7SUFFTSxNQUFNLENBQUMsb0JBQW9CLENBQUMsaUJBQXlCO1FBQzFELE1BQU0sUUFBUSxHQUFHLGdDQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRWpFLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQU8sd0JBQXdCLENBQzFDLE1BQW1CLEVBQ25CLFNBQWlCLEVBQ2pCLGtCQUF1Qzs7WUFFdkMsTUFBTSxRQUFRLEdBQUcsZ0NBQW1CLENBQUMsV0FBVyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakUsSUFBQSx3Q0FBK0IsRUFBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBRXBELE1BQU0sbUJBQVMsQ0FBQyxPQUFPLENBQ3JCLFFBQVEsQ0FBQyxPQUFPLENBQUMsNkJBQTZCLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxFQUNqRSxr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
|