@rosen-bridge/minimum-fee 2.2.3 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/MinimumFeeBox.d.ts.map +1 -0
- package/dist/MinimumFeeBox.js +219 -0
- package/dist/MinimumFeeBoxBuilder.d.ts.map +1 -0
- package/dist/MinimumFeeBoxBuilder.js +138 -0
- package/dist/MinimumFeeConfig.d.ts.map +1 -0
- package/dist/MinimumFeeConfig.js +41 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +3 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +26 -0
- package/dist/{lib/handleApiError.d.ts → handleApiError.d.ts} +4 -4
- package/dist/handleApiError.d.ts.map +1 -0
- package/dist/handleApiError.js +35 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +22 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +111 -0
- package/package.json +10 -14
- package/dist/lib/MinimumFeeBox.d.ts.map +0 -1
- package/dist/lib/MinimumFeeBox.js +0 -219
- package/dist/lib/MinimumFeeBoxBuilder.d.ts.map +0 -1
- package/dist/lib/MinimumFeeBoxBuilder.js +0 -138
- package/dist/lib/MinimumFeeConfig.d.ts.map +0 -1
- package/dist/lib/MinimumFeeConfig.js +0 -41
- package/dist/lib/constants.d.ts.map +0 -1
- package/dist/lib/constants.js +0 -3
- package/dist/lib/errors.d.ts.map +0 -1
- package/dist/lib/errors.js +0 -26
- package/dist/lib/handleApiError.d.ts.map +0 -1
- package/dist/lib/handleApiError.js +0 -35
- package/dist/lib/index.d.ts.map +0 -1
- package/dist/lib/index.js +0 -8
- package/dist/lib/types.d.ts.map +0 -1
- package/dist/lib/types.js +0 -22
- package/dist/lib/utils.d.ts.map +0 -1
- package/dist/lib/utils.js +0 -111
- package/dist/tsconfig.build.tsbuildinfo +0 -1
- /package/dist/{lib/MinimumFeeBox.d.ts → MinimumFeeBox.d.ts} +0 -0
- /package/dist/{lib/MinimumFeeBoxBuilder.d.ts → MinimumFeeBoxBuilder.d.ts} +0 -0
- /package/dist/{lib/MinimumFeeConfig.d.ts → MinimumFeeConfig.d.ts} +0 -0
- /package/dist/{lib/constants.d.ts → constants.d.ts} +0 -0
- /package/dist/{lib/errors.d.ts → errors.d.ts} +0 -0
- /package/dist/{lib/index.d.ts → index.d.ts} +0 -0
- /package/dist/{lib/types.d.ts → types.d.ts} +0 -0
- /package/dist/{lib/utils.d.ts → utils.d.ts} +0 -0
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
import { Address, BoxValue, Contract, ErgoBoxCandidateBuilder, I64, TokenAmount, TokenId, } from 'ergo-lib-wasm-nodejs';
|
|
2
|
-
import { InvalidConfig } from './errors';
|
|
3
|
-
import { ERGO_NATIVE_TOKEN } from './constants';
|
|
4
|
-
import { feeToRegisterValues } from './utils';
|
|
5
|
-
export class MinimumFeeBoxBuilder {
|
|
6
|
-
fees;
|
|
7
|
-
boxValue;
|
|
8
|
-
boxHeight;
|
|
9
|
-
tokenId;
|
|
10
|
-
minimumFeeNFT;
|
|
11
|
-
address;
|
|
12
|
-
constructor(minimumFeeNFT, address) {
|
|
13
|
-
this.fees = [];
|
|
14
|
-
this.minimumFeeNFT = minimumFeeNFT;
|
|
15
|
-
this.address = address;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* adds a feeConfig
|
|
19
|
-
* @param feeConfig
|
|
20
|
-
*/
|
|
21
|
-
addConfig = (feeConfig) => {
|
|
22
|
-
this.fees.push(feeConfig.getConfig());
|
|
23
|
-
return this;
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* removes a config by index
|
|
27
|
-
* @param index
|
|
28
|
-
*/
|
|
29
|
-
removeConfig = (index) => {
|
|
30
|
-
this.fees.splice(index, 1);
|
|
31
|
-
return this;
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* gets current feeConfig
|
|
35
|
-
*/
|
|
36
|
-
getConfigs = () => {
|
|
37
|
-
return this.fees;
|
|
38
|
-
};
|
|
39
|
-
/**
|
|
40
|
-
* sets ErgoBox Erg value
|
|
41
|
-
* @param nanoErg
|
|
42
|
-
* @returns
|
|
43
|
-
*/
|
|
44
|
-
setValue = (nanoErg) => {
|
|
45
|
-
this.boxValue = BoxValue.from_i64(I64.from_str(nanoErg.toString()));
|
|
46
|
-
return this;
|
|
47
|
-
};
|
|
48
|
-
/**
|
|
49
|
-
* sets ErgoBox creationheight
|
|
50
|
-
* @param currentHeight
|
|
51
|
-
*/
|
|
52
|
-
setHeight = (currentHeight) => {
|
|
53
|
-
this.boxHeight = currentHeight;
|
|
54
|
-
return this;
|
|
55
|
-
};
|
|
56
|
-
/**
|
|
57
|
-
* sets config token id
|
|
58
|
-
* @param tokenId
|
|
59
|
-
*/
|
|
60
|
-
setToken = (tokenId) => {
|
|
61
|
-
this.tokenId = tokenId;
|
|
62
|
-
return this;
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* validates some of specified configs
|
|
66
|
-
*/
|
|
67
|
-
validate = () => {
|
|
68
|
-
if (!this.boxValue)
|
|
69
|
-
throw new InvalidConfig(`Box value argument is not defined`);
|
|
70
|
-
if (!this.boxHeight)
|
|
71
|
-
throw new InvalidConfig(`Box creation height argument is not defined`);
|
|
72
|
-
if (!this.tokenId)
|
|
73
|
-
throw new InvalidConfig(`Config token id is not defined`);
|
|
74
|
-
if (this.fees.length === 0)
|
|
75
|
-
throw new InvalidConfig(`No config added. Please add at least one config`);
|
|
76
|
-
for (let i = 0; i < this.fees.length - 1; i++) {
|
|
77
|
-
const chains = Object.keys(this.fees[0].heights);
|
|
78
|
-
chains.forEach((chain) => {
|
|
79
|
-
if (!this.fees[i + 1].heights[chain])
|
|
80
|
-
throw new InvalidConfig(`Expected chain [${chain}] at index [${i + 1}]`);
|
|
81
|
-
if (this.fees[i + 1].heights[chain] < this.fees[i].heights[chain])
|
|
82
|
-
throw new InvalidConfig(`All heights for a chain should be ascending. Heights of chain [${chain}] at indexes [${i},${i + 1}] are invalid [${this.fees[i + 1].heights[chain]} < ${this.fees[i].heights[chain]}]`);
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
/**
|
|
87
|
-
* removes heights and configs of all chains which don't have any configs
|
|
88
|
-
*/
|
|
89
|
-
prune = () => {
|
|
90
|
-
const activeChains = [];
|
|
91
|
-
for (let i = 0; i < this.fees.length; i++) {
|
|
92
|
-
const chains = Object.keys(this.fees[i].heights);
|
|
93
|
-
chains.forEach((chain) => {
|
|
94
|
-
const feeConfig = this.fees[i].configs[chain];
|
|
95
|
-
if (feeConfig &&
|
|
96
|
-
(feeConfig.bridgeFee !== -1n ||
|
|
97
|
-
feeConfig.networkFee !== -1n ||
|
|
98
|
-
feeConfig.rsnRatio !== -1n ||
|
|
99
|
-
feeConfig.rsnRatioDivisor !== -1n ||
|
|
100
|
-
feeConfig.feeRatio !== -1n))
|
|
101
|
-
activeChains.push(chain);
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
for (let i = 0; i < this.fees.length; i++) {
|
|
105
|
-
const chains = Object.keys(this.fees[i].heights);
|
|
106
|
-
chains.forEach((chain) => {
|
|
107
|
-
if (!activeChains.includes(chain)) {
|
|
108
|
-
delete this.fees[i].heights[chain];
|
|
109
|
-
delete this.fees[i].configs[chain];
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
return this;
|
|
114
|
-
};
|
|
115
|
-
/**
|
|
116
|
-
* validates specified configs and builds ErgoBoxCandidate of config box using them
|
|
117
|
-
*/
|
|
118
|
-
build = () => {
|
|
119
|
-
this.validate();
|
|
120
|
-
// add box value, address and creation height
|
|
121
|
-
const boxBuilder = new ErgoBoxCandidateBuilder(this.boxValue, Contract.new(Address.from_base58(this.address).to_ergo_tree()), this.boxHeight);
|
|
122
|
-
// add box tokens
|
|
123
|
-
boxBuilder.add_token(TokenId.from_str(this.minimumFeeNFT), TokenAmount.from_i64(I64.from_str('1')));
|
|
124
|
-
if (this.tokenId !== ERGO_NATIVE_TOKEN)
|
|
125
|
-
boxBuilder.add_token(TokenId.from_str(this.tokenId), TokenAmount.from_i64(I64.from_str('1')));
|
|
126
|
-
// generate register values
|
|
127
|
-
const registerValues = feeToRegisterValues(this.fees);
|
|
128
|
-
// add box registers
|
|
129
|
-
boxBuilder.set_register_value(4, registerValues.R4);
|
|
130
|
-
boxBuilder.set_register_value(5, registerValues.R5);
|
|
131
|
-
boxBuilder.set_register_value(6, registerValues.R6);
|
|
132
|
-
boxBuilder.set_register_value(7, registerValues.R7);
|
|
133
|
-
boxBuilder.set_register_value(8, registerValues.R8);
|
|
134
|
-
boxBuilder.set_register_value(9, registerValues.R9);
|
|
135
|
-
return boxBuilder.build();
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWluaW11bUZlZUJveEJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvTWluaW11bUZlZUJveEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE9BQU8sRUFDUCxRQUFRLEVBQ1IsUUFBUSxFQUNSLHVCQUF1QixFQUN2QixHQUFHLEVBQ0gsV0FBVyxFQUNYLE9BQU8sR0FFUixNQUFNLHNCQUFzQixDQUFDO0FBRzlCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUU5QyxNQUFNLE9BQU8sb0JBQW9CO0lBQ3JCLElBQUksQ0FBYTtJQUNqQixRQUFRLENBQVc7SUFDbkIsU0FBUyxDQUFTO0lBQ2xCLE9BQU8sQ0FBUztJQUNoQixhQUFhLENBQVM7SUFDdEIsT0FBTyxDQUFTO0lBRTFCLFlBQVksYUFBcUIsRUFBRSxPQUFlO1FBQ2hELElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVMsR0FBRyxDQUFDLFNBQTJCLEVBQXdCLEVBQUU7UUFDaEUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUM7SUFFRjs7O09BR0c7SUFDSCxZQUFZLEdBQUcsQ0FBQyxLQUFhLEVBQXdCLEVBQUU7UUFDckQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzNCLE9BQU8s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Q0FBQyxDQUFDO1FBQ3BELFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BELFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXBELE9BQU8sVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzVCLENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWRkcmVzcyxcbiAgQm94VmFsdWUsXG4gIENvbnRyYWN0LFxuICBFcmdvQm94Q2FuZGlkYXRlQnVpbGRlcixcbiAgSTY0LFxuICBUb2tlbkFtb3VudCxcbiAgVG9rZW5JZCxcbiAgRXJnb0JveENhbmRpZGF0ZSxcbn0gZnJvbSAnZXJnby1saWItd2FzbS1ub2RlanMnO1xuaW1wb3J0IHsgTWluaW11bUZlZUNvbmZpZyB9IGZyb20gJy4vTWluaW11bUZlZUNvbmZpZyc7XG5pbXBvcnQgeyBGZWUgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEludmFsaWRDb25maWcgfSBmcm9tICcuL2Vycm9ycyc7XG5pbXBvcnQgeyBFUkdPX05BVElWRV9UT0tFTiB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGZlZVRvUmVnaXN0ZXJWYWx1ZXMgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIE1pbmltdW1GZWVCb3hCdWlsZGVyIHtcbiAgcHJvdGVjdGVkIGZlZXM6IEFycmF5PEZlZT47XG4gIHByb3RlY3RlZCBib3hWYWx1ZTogQm94VmFsdWU7XG4gIHByb3RlY3RlZCBib3hIZWlnaHQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIHRva2VuSWQ6IHN0cmluZztcbiAgcHJvdGVjdGVkIG1pbmltdW1GZWVORlQ6IHN0cmluZztcbiAgcHJvdGVjdGVkIGFkZHJlc3M6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihtaW5pbXVtRmVlTkZUOiBzdHJpbmcsIGFkZHJlc3M6IHN0cmluZykge1xuICAgIHRoaXMuZmVlcyA9IFtdO1xuICAgIHRoaXMubWluaW11bUZlZU5GVCA9IG1pbmltdW1GZWVORlQ7XG4gICAgdGhpcy5hZGRyZXNzID0gYWRkcmVzcztcbiAgfVxuXG4gIC8qKlxuICAgKiBhZGRzIGEgZmVlQ29uZmlnXG4gICAqIEBwYXJhbSBmZWVDb25maWdcbiAgICovXG4gIGFkZENvbmZpZyA9IChmZWVDb25maWc6IE1pbmltdW1GZWVDb25maWcpOiBNaW5pbXVtRmVlQm94QnVpbGRlciA9PiB7XG4gICAgdGhpcy5mZWVzLnB1c2goZmVlQ29uZmlnLmdldENvbmZpZygpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICAvKipcbiAgICogcmVtb3ZlcyBhIGNvbmZpZyBieSBpbmRleFxuICAgKiBAcGFyYW0gaW5kZXhcbiAgICovXG4gIHJlbW92ZUNvbmZpZyA9IChpbmRleDogbnVtYmVyKTogTWluaW11bUZlZUJveEJ1aWxkZXIgPT4ge1xuICAgIHRoaXMuZmVlcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIC8qKlxuICAgKiBnZXRzIGN1cnJlbnQgZmVlQ29uZmlnXG4gICAqL1xuICBnZXRDb25maWdzID0gKCk6IEFycmF5PEZlZT4gPT4ge1xuICAgIHJldHVybiB0aGlzLmZlZXM7XG4gIH07XG5cbiAgLyoqXG4gICAqIHNldHMgRXJnb0JveCBFcmcgdmFsdWVcbiAgICogQHBhcmFtIG5hbm9FcmdcbiAgICogQHJldHVybnNcbiAgICovXG4gIHNldFZhbHVlID0gKG5hbm9Fcmc6IGJpZ2ludCk6IE1pbmltdW1GZWVCb3hCdWlsZGVyID0+IHtcbiAgICB0aGlzLmJveFZhbHVlID0gQm94VmFsdWUuZnJvbV9pNjQoSTY0LmZyb21fc3RyKG5hbm9FcmcudG9TdHJpbmcoKSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIC8qKlxuICAgKiBzZXRzIEVyZ29Cb3ggY3JlYXRpb25oZWlnaHRcbiAgICogQHBhcmFtIGN1cnJlbnRIZWlnaHRcbiAgICovXG4gIHNldEhlaWdodCA9IChjdXJyZW50SGVpZ2h0OiBudW1iZXIpOiBNaW5pbXVtRmVlQm94QnVpbGRlciA9PiB7XG4gICAgdGhpcy5ib3hIZWlnaHQgPSBjdXJyZW50SGVpZ2h0O1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIC8qKlxuICAgKiBzZXRzIGNvbmZpZyB0b2tlbiBpZFxuICAgKiBAcGFyYW0gdG9rZW5JZFxuICAgKi9cbiAgc2V0VG9rZW4gPSAodG9rZW5JZDogc3RyaW5nKTogTWluaW11bUZlZUJveEJ1aWxkZXIgPT4ge1xuICAgIHRoaXMudG9rZW5JZCA9IHRva2VuSWQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgLyoqXG4gICAqIHZhbGlkYXRlcyBzb21lIG9mIHNwZWNpZmllZCBjb25maWdzXG4gICAqL1xuICBwcm90ZWN0ZWQgdmFsaWRhdGUgPSAoKTogdm9pZCA9PiB7XG4gICAgaWYgKCF0aGlzLmJveFZhbHVlKVxuICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWcoYEJveCB2YWx1ZSBhcmd1bWVudCBpcyBub3QgZGVmaW5lZGApO1xuICAgIGlmICghdGhpcy5ib3hIZWlnaHQpXG4gICAgICB0aHJvdyBuZXcgSW52YWxpZENvbmZpZyhgQm94IGNyZWF0aW9uIGhlaWdodCBhcmd1bWVudCBpcyBub3QgZGVmaW5lZGApO1xuICAgIGlmICghdGhpcy50b2tlbklkKVxuICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWcoYENvbmZpZyB0b2tlbiBpZCBpcyBub3QgZGVmaW5lZGApO1xuICAgIGlmICh0aGlzLmZlZXMubGVuZ3RoID09PSAwKVxuICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWcoXG4gICAgICAgIGBObyBjb25maWcgYWRkZWQuIFBsZWFzZSBhZGQgYXQgbGVhc3Qgb25lIGNvbmZpZ2BcbiAgICAgICk7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZmVlcy5sZW5ndGggLSAxOyBpKyspIHtcbiAgICAgIGNvbnN0IGNoYWlucyA9IE9iamVjdC5rZXlzKHRoaXMuZmVlc1swXS5oZWlnaHRzKTtcbiAgICAgIGNoYWlucy5mb3JFYWNoKChjaGFpbikgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuZmVlc1tpICsgMV0uaGVpZ2h0c1tjaGFpbl0pXG4gICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWcoXG4gICAgICAgICAgICBgRXhwZWN0ZWQgY2hhaW4gWyR7Y2hhaW59XSBhdCBpbmRleCBbJHtpICsgMX1dYFxuICAgICAgICAgICk7XG4gICAgICAgIGlmICh0aGlzLmZlZXNbaSArIDFdLmhlaWdodHNbY2hhaW5dIDwgdGhpcy5mZWVzW2ldLmhlaWdodHNbY2hhaW5dKVxuICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkQ29uZmlnKFxuICAgICAgICAgICAgYEFsbCBoZWlnaHRzIGZvciBhIGNoYWluIHNob3VsZCBiZSBhc2NlbmRpbmcuIEhlaWdodHMgb2YgY2hhaW4gWyR7Y2hhaW59XSBhdCBpbmRleGVzIFske2l9LCR7XG4gICAgICAgICAgICAgIGkgKyAxXG4gICAgICAgICAgICB9XSBhcmUgaW52YWxpZCBbJHt0aGlzLmZlZXNbaSArIDFdLmhlaWdodHNbY2hhaW5dfSA8ICR7XG4gICAgICAgICAgICAgIHRoaXMuZmVlc1tpXS5oZWlnaHRzW2NoYWluXVxuICAgICAgICAgICAgfV1gXG4gICAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICAvKipcbiAgICogcmVtb3ZlcyBoZWlnaHRzIGFuZCBjb25maWdzIG9mIGFsbCBjaGFpbnMgd2hpY2ggZG9uJ3QgaGF2ZSBhbnkgY29uZmlnc1xuICAgKi9cbiAgcHJ1bmUgPSAoKTogTWluaW11bUZlZUJveEJ1aWxkZXIgPT4ge1xuICAgIGNvbnN0IGFjdGl2ZUNoYWluczogc3RyaW5nW10gPSBbXTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5mZWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBjaGFpbnMgPSBPYmplY3Qua2V5cyh0aGlzLmZlZXNbaV0uaGVpZ2h0cyk7XG4gICAgICBjaGFpbnMuZm9yRWFjaCgoY2hhaW4pID0+IHtcbiAgICAgICAgY29uc3QgZmVlQ29uZmlnID0gdGhpcy5mZWVzW2ldLmNvbmZpZ3NbY2hhaW5dO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZmVlQ29uZmlnICYmXG4gICAgICAgICAgKGZlZUNvbmZpZy5icmlkZ2VGZWUgIT09IC0xbiB8fFxuICAgICAgICAgICAgZmVlQ29uZmlnLm5ldHdvcmtGZWUgIT09IC0xbiB8fFxuICAgICAgICAgICAgZmVlQ29uZmlnLnJzblJhdGlvICE9PSAtMW4gfHxcbiAgICAgICAgICAgIGZlZUNvbmZpZy5yc25SYXRpb0Rpdmlzb3IgIT09IC0xbiB8fFxuICAgICAgICAgICAgZmVlQ29uZmlnLmZlZVJhdGlvICE9PSAtMW4pXG4gICAgICAgIClcbiAgICAgICAgICBhY3RpdmVDaGFpbnMucHVzaChjaGFpbik7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZmVlcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgY2hhaW5zID0gT2JqZWN0LmtleXModGhpcy5mZWVzW2ldLmhlaWdodHMpO1xuICAgICAgY2hhaW5zLmZvckVhY2goKGNoYWluKSA9PiB7XG4gICAgICAgIGlmICghYWN0aXZlQ2hhaW5zLmluY2x1ZGVzKGNoYWluKSkge1xuICAgICAgICAgIGRlbGV0ZSB0aGlzLmZlZXNbaV0uaGVpZ2h0c1tjaGFpbl07XG4gICAgICAgICAgZGVsZXRlIHRoaXMuZmVlc1tpXS5jb25maWdzW2NoYWluXTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgLyoqXG4gICAqIHZhbGlkYXRlcyBzcGVjaWZpZWQgY29uZmlncyBhbmQgYnVpbGRzIEVyZ29Cb3hDYW5kaWRhdGUgb2YgY29uZmlnIGJveCB1c2luZyB0aGVtXG4gICAqL1xuICBidWlsZCA9ICgpOiBFcmdvQm94Q2FuZGlkYXRlID0+IHtcbiAgICB0aGlzLnZhbGlkYXRlKCk7XG5cbiAgICAvLyBhZGQgYm94IHZhbHVlLCBhZGRyZXNzIGFuZCBjcmVhdGlvbiBoZWlnaHRcbiAgICBjb25zdCBib3hCdWlsZGVyID0gbmV3IEVyZ29Cb3hDYW5kaWRhdGVCdWlsZGVyKFxuICAgICAgdGhpcy5ib3hWYWx1ZSxcbiAgICAgIENvbnRyYWN0Lm5ldyhBZGRyZXNzLmZyb21fYmFzZTU4KHRoaXMuYWRkcmVzcykudG9fZXJnb190cmVlKCkpLFxuICAgICAgdGhpcy5ib3hIZWlnaHRcbiAgICApO1xuXG4gICAgLy8gYWRkIGJveCB0b2tlbnNcbiAgICBib3hCdWlsZGVyLmFkZF90b2tlbihcbiAgICAgIFRva2VuSWQuZnJvbV9zdHIodGhpcy5taW5pbXVtRmVlTkZUKSxcbiAgICAgIFRva2VuQW1vdW50LmZyb21faTY0KEk2NC5mcm9tX3N0cignMScpKVxuICAgICk7XG4gICAgaWYgKHRoaXMudG9rZW5JZCAhPT0gRVJHT19OQVRJVkVfVE9LRU4pXG4gICAgICBib3hCdWlsZGVyLmFkZF90b2tlbihcbiAgICAgICAgVG9rZW5JZC5mcm9tX3N0cih0aGlzLnRva2VuSWQpLFxuICAgICAgICBUb2tlbkFtb3VudC5mcm9tX2k2NChJNjQuZnJvbV9zdHIoJzEnKSlcbiAgICAgICk7XG5cbiAgICAvLyBnZW5lcmF0ZSByZWdpc3RlciB2YWx1ZXNcbiAgICBjb25zdCByZWdpc3RlclZhbHVlcyA9IGZlZVRvUmVnaXN0ZXJWYWx1ZXModGhpcy5mZWVzKTtcblxuICAgIC8vIGFkZCBib3ggcmVnaXN0ZXJzXG4gICAgYm94QnVpbGRlci5zZXRfcmVnaXN0ZXJfdmFsdWUoNCwgcmVnaXN0ZXJWYWx1ZXMuUjQpO1xuICAgIGJveEJ1aWxkZXIuc2V0X3JlZ2lzdGVyX3ZhbHVlKDUsIHJlZ2lzdGVyVmFsdWVzLlI1KTtcbiAgICBib3hCdWlsZGVyLnNldF9yZWdpc3Rlcl92YWx1ZSg2LCByZWdpc3RlclZhbHVlcy5SNik7XG4gICAgYm94QnVpbGRlci5zZXRfcmVnaXN0ZXJfdmFsdWUoNywgcmVnaXN0ZXJWYWx1ZXMuUjcpO1xuICAgIGJveEJ1aWxkZXIuc2V0X3JlZ2lzdGVyX3ZhbHVlKDgsIHJlZ2lzdGVyVmFsdWVzLlI4KTtcbiAgICBib3hCdWlsZGVyLnNldF9yZWdpc3Rlcl92YWx1ZSg5LCByZWdpc3RlclZhbHVlcy5SOSk7XG5cbiAgICByZXR1cm4gYm94QnVpbGRlci5idWlsZCgpO1xuICB9O1xufVxuIl19
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MinimumFeeConfig.d.ts","sourceRoot":"","sources":["../../lib/MinimumFeeConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAExC,qBAAa,gBAAgB;IAC3B,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;gBAEP,GAAG,CAAC,EAAE,GAAG;IASrB;;;;;OAKG;IACH,cAAc,UACL,MAAM,UACL,MAAM,YACJ,QAAQ,GAAG,SAAS,KAC7B,gBAAgB,CAKjB;IAEF;;;OAGG;IACH,iBAAiB,UAAW,MAAM,KAAG,gBAAgB,CAInD;IAEF;;OAEG;IACH,SAAS,QAAO,GAAG,CAEjB;CACH"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
export class MinimumFeeConfig {
|
|
2
|
-
fee;
|
|
3
|
-
constructor(fee) {
|
|
4
|
-
this.fee = fee
|
|
5
|
-
? fee
|
|
6
|
-
: {
|
|
7
|
-
heights: {},
|
|
8
|
-
configs: {},
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* sets fee for a chain
|
|
13
|
-
* @param chain
|
|
14
|
-
* @param height
|
|
15
|
-
* @param chainFee
|
|
16
|
-
*/
|
|
17
|
-
setChainConfig = (chain, height, chainFee) => {
|
|
18
|
-
this.fee.heights[chain] = height;
|
|
19
|
-
if (chainFee)
|
|
20
|
-
this.fee.configs[chain] = chainFee;
|
|
21
|
-
else
|
|
22
|
-
delete this.fee.configs[chain];
|
|
23
|
-
return this;
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* removes fee for a chain
|
|
27
|
-
* @param chain
|
|
28
|
-
*/
|
|
29
|
-
removeChainConfig = (chain) => {
|
|
30
|
-
delete this.fee.heights[chain];
|
|
31
|
-
delete this.fee.configs[chain];
|
|
32
|
-
return this;
|
|
33
|
-
};
|
|
34
|
-
/**
|
|
35
|
-
* returns generated fee
|
|
36
|
-
*/
|
|
37
|
-
getConfig = () => {
|
|
38
|
-
return this.fee;
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWluaW11bUZlZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9NaW5pbXVtRmVlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQkFBZ0I7SUFDakIsR0FBRyxDQUFNO0lBRW5CLFlBQVksR0FBUztRQUNuQixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUc7WUFDWixDQUFDLENBQUMsR0FBRztZQUNMLENBQUMsQ0FBQztnQkFDRSxPQUFPLEVBQUUsRUFBRTtnQkFDWCxPQUFPLEVBQUUsRUFBRTthQUNaLENBQUM7SUFDUixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxjQUFjLEdBQUcsQ0FDZixLQUFhLEVBQ2IsTUFBYyxFQUNkLFFBQThCLEVBQ1osRUFBRTtRQUNwQixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDakMsSUFBSSxRQUFRO1lBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsUUFBUSxDQUFDOztZQUM1QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxDQUFDO0lBRUY7OztPQUdHO0lBQ0gsaUJBQWlCLEdBQUcsQ0FBQyxLQUFhLEVBQW9CLEVBQUU7UUFDdEQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxDQUFDO0lBRUY7O09BRUc7SUFDSCxTQUFTLEdBQUcsR0FBUSxFQUFFO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDLENBQUM7Q0FDSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYWluRmVlLCBGZWUgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIE1pbmltdW1GZWVDb25maWcge1xuICBwcm90ZWN0ZWQgZmVlOiBGZWU7XG5cbiAgY29uc3RydWN0b3IoZmVlPzogRmVlKSB7XG4gICAgdGhpcy5mZWUgPSBmZWVcbiAgICAgID8gZmVlXG4gICAgICA6IHtcbiAgICAgICAgICBoZWlnaHRzOiB7fSxcbiAgICAgICAgICBjb25maWdzOiB7fSxcbiAgICAgICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBzZXRzIGZlZSBmb3IgYSBjaGFpblxuICAgKiBAcGFyYW0gY2hhaW5cbiAgICogQHBhcmFtIGhlaWdodFxuICAgKiBAcGFyYW0gY2hhaW5GZWVcbiAgICovXG4gIHNldENoYWluQ29uZmlnID0gKFxuICAgIGNoYWluOiBzdHJpbmcsXG4gICAgaGVpZ2h0OiBudW1iZXIsXG4gICAgY2hhaW5GZWU6IENoYWluRmVlIHwgdW5kZWZpbmVkXG4gICk6IE1pbmltdW1GZWVDb25maWcgPT4ge1xuICAgIHRoaXMuZmVlLmhlaWdodHNbY2hhaW5dID0gaGVpZ2h0O1xuICAgIGlmIChjaGFpbkZlZSkgdGhpcy5mZWUuY29uZmlnc1tjaGFpbl0gPSBjaGFpbkZlZTtcbiAgICBlbHNlIGRlbGV0ZSB0aGlzLmZlZS5jb25maWdzW2NoYWluXTtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICAvKipcbiAgICogcmVtb3ZlcyBmZWUgZm9yIGEgY2hhaW5cbiAgICogQHBhcmFtIGNoYWluXG4gICAqL1xuICByZW1vdmVDaGFpbkNvbmZpZyA9IChjaGFpbjogc3RyaW5nKTogTWluaW11bUZlZUNvbmZpZyA9PiB7XG4gICAgZGVsZXRlIHRoaXMuZmVlLmhlaWdodHNbY2hhaW5dO1xuICAgIGRlbGV0ZSB0aGlzLmZlZS5jb25maWdzW2NoYWluXTtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICAvKipcbiAgICogcmV0dXJucyBnZW5lcmF0ZWQgZmVlXG4gICAqL1xuICBnZXRDb25maWcgPSAoKTogRmVlID0+IHtcbiAgICByZXR1cm4gdGhpcy5mZWU7XG4gIH07XG59XG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,iBAAiB,SAAS,CAAC"}
|
package/dist/lib/constants.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export const ERGO_NATIVE_TOKEN = 'erg';
|
|
2
|
-
export const FEE_RATIO_DIVISOR = 10000n;
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEVSR09fTkFUSVZFX1RPS0VOID0gJ2VyZyc7XG5leHBvcnQgY29uc3QgRkVFX1JBVElPX0RJVklTT1IgPSAxMDAwMG47XG4iXX0=
|
package/dist/lib/errors.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../lib/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,GAAG,EAAE,MAAM;CAGxB;AAED,qBAAa,WAAY,SAAQ,KAAK;gBACxB,GAAG,EAAE,MAAM;CAGxB;AAED,qBAAa,YAAa,SAAQ,KAAK;gBACzB,GAAG,EAAE,MAAM;CAGxB;AAED,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,GAAG,EAAE,MAAM;CAGxB;AAED,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,GAAG,EAAE,MAAM;CAGxB"}
|
package/dist/lib/errors.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export class InvalidConfig extends Error {
|
|
2
|
-
constructor(msg) {
|
|
3
|
-
super('InvalidConfig: ' + msg);
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
export class FailedError extends Error {
|
|
7
|
-
constructor(msg) {
|
|
8
|
-
super('FailedError: ' + msg);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
export class NetworkError extends Error {
|
|
12
|
-
constructor(msg) {
|
|
13
|
-
super('NetworkError: ' + msg);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
export class UnexpectedApiError extends Error {
|
|
17
|
-
constructor(msg) {
|
|
18
|
-
super('UnexpectedApiError: ' + msg);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
export class NotFoundError extends Error {
|
|
22
|
-
constructor(msg) {
|
|
23
|
-
super('NotFoundError: ' + msg);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYyxTQUFRLEtBQUs7SUFDdEMsWUFBWSxHQUFXO1FBQ3JCLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sV0FBWSxTQUFRLEtBQUs7SUFDcEMsWUFBWSxHQUFXO1FBQ3JCLEtBQUssQ0FBQyxlQUFlLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLFlBQWEsU0FBUSxLQUFLO0lBQ3JDLFlBQVksR0FBVztRQUNyQixLQUFLLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDaEMsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLEtBQUs7SUFDM0MsWUFBWSxHQUFXO1FBQ3JCLEtBQUssQ0FBQyxzQkFBc0IsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUN0QyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sYUFBYyxTQUFRLEtBQUs7SUFDdEMsWUFBWSxHQUFXO1FBQ3JCLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgSW52YWxpZENvbmZpZyBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobXNnOiBzdHJpbmcpIHtcbiAgICBzdXBlcignSW52YWxpZENvbmZpZzogJyArIG1zZyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZhaWxlZEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3Rvcihtc2c6IHN0cmluZykge1xuICAgIHN1cGVyKCdGYWlsZWRFcnJvcjogJyArIG1zZyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE5ldHdvcmtFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobXNnOiBzdHJpbmcpIHtcbiAgICBzdXBlcignTmV0d29ya0Vycm9yOiAnICsgbXNnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVW5leHBlY3RlZEFwaUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3Rvcihtc2c6IHN0cmluZykge1xuICAgIHN1cGVyKCdVbmV4cGVjdGVkQXBpRXJyb3I6ICcgKyBtc2cpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOb3RGb3VuZEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3Rvcihtc2c6IHN0cmluZykge1xuICAgIHN1cGVyKCdOb3RGb3VuZEVycm9yOiAnICsgbXNnKTtcbiAgfVxufVxuIl19
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handleApiError.d.ts","sourceRoot":"","sources":["../../lib/handleApiError.ts"],"names":[],"mappings":"AAEA,UAAU,YAAY,CAAC,iBAAiB;IACtC,CAAC,KAAK,EAAE,GAAG,GAAG,iBAAiB,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc,sIAKX,GAAG,eACG,MAAM;;;;sHAoCpB,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { FailedError, NetworkError, UnexpectedApiError } from './errors';
|
|
2
|
-
/**
|
|
3
|
-
* handle an axios api error, considering different kinds of events which may
|
|
4
|
-
* cause it
|
|
5
|
-
* @param error the error object
|
|
6
|
-
* @param baseMessage string to prepend the actual error message
|
|
7
|
-
* @param overrideHandlers an object for overriding how different kinds of error
|
|
8
|
-
* are handled
|
|
9
|
-
*/
|
|
10
|
-
const handleApiError = (error, baseMessage, overrideHandlers) => {
|
|
11
|
-
const generateErrorMessage = (partialMessage) => `${baseMessage} ${partialMessage}`;
|
|
12
|
-
const handleRespondedState = overrideHandlers?.handleRespondedState ??
|
|
13
|
-
((error) => {
|
|
14
|
-
throw new FailedError(generateErrorMessage(error.response.data.reason));
|
|
15
|
-
});
|
|
16
|
-
const handleNotRespondedState = overrideHandlers?.handleNotRespondedState ??
|
|
17
|
-
((error) => {
|
|
18
|
-
throw new NetworkError(generateErrorMessage(error.message));
|
|
19
|
-
});
|
|
20
|
-
const handleUnknownState = overrideHandlers?.handleUnknownState ??
|
|
21
|
-
((error) => {
|
|
22
|
-
throw new UnexpectedApiError(generateErrorMessage(error.message));
|
|
23
|
-
});
|
|
24
|
-
if (error.response) {
|
|
25
|
-
return handleRespondedState(error);
|
|
26
|
-
}
|
|
27
|
-
else if (error.request) {
|
|
28
|
-
return handleNotRespondedState(error);
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
return handleUnknownState(error);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
export default handleApiError;
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlQXBpRXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvaGFuZGxlQXBpRXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFNekU7Ozs7Ozs7R0FPRztBQUNILE1BQU0sY0FBYyxHQUFHLENBS3JCLEtBQVUsRUFDVixXQUFtQixFQUNuQixnQkFJQyxFQUkrQixFQUFFO0lBQ2xDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxjQUFzQixFQUFFLEVBQUUsQ0FDdEQsR0FBRyxXQUFXLElBQUksY0FBYyxFQUFFLENBQUM7SUFFckMsTUFBTSxvQkFBb0IsR0FDeEIsZ0JBQWdCLEVBQUUsb0JBQW9CO1FBQ3RDLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNkLE1BQU0sSUFBSSxXQUFXLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUMxRSxDQUFDLENBQUMsQ0FBQztJQUNMLE1BQU0sdUJBQXVCLEdBQzNCLGdCQUFnQixFQUFFLHVCQUF1QjtRQUN6QyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDZCxNQUFNLElBQUksWUFBWSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO0lBQ0wsTUFBTSxrQkFBa0IsR0FDdEIsZ0JBQWdCLEVBQUUsa0JBQWtCO1FBQ3BDLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNkLE1BQU0sSUFBSSxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNwRSxDQUFDLENBQUMsQ0FBQztJQUVMLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtRQUNsQixPQUFPLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ3BDO1NBQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFO1FBQ3hCLE9BQU8sdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDdkM7U0FBTTtRQUNMLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDbEM7QUFDSCxDQUFDLENBQUM7QUFFRixlQUFlLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhaWxlZEVycm9yLCBOZXR3b3JrRXJyb3IsIFVuZXhwZWN0ZWRBcGlFcnJvciB9IGZyb20gJy4vZXJyb3JzJztcblxuaW50ZXJmYWNlIEVycm9ySGFuZGxlcjxIYW5kbGVyUmV0dXJuVHlwZT4ge1xuICAoZXJyb3I6IGFueSk6IEhhbmRsZXJSZXR1cm5UeXBlO1xufVxuXG4vKipcbiAqIGhhbmRsZSBhbiBheGlvcyBhcGkgZXJyb3IsIGNvbnNpZGVyaW5nIGRpZmZlcmVudCBraW5kcyBvZiBldmVudHMgd2hpY2ggbWF5XG4gKiBjYXVzZSBpdFxuICogQHBhcmFtIGVycm9yIHRoZSBlcnJvciBvYmplY3RcbiAqIEBwYXJhbSBiYXNlTWVzc2FnZSBzdHJpbmcgdG8gcHJlcGVuZCB0aGUgYWN0dWFsIGVycm9yIG1lc3NhZ2VcbiAqIEBwYXJhbSBvdmVycmlkZUhhbmRsZXJzIGFuIG9iamVjdCBmb3Igb3ZlcnJpZGluZyBob3cgZGlmZmVyZW50IGtpbmRzIG9mIGVycm9yXG4gKiBhcmUgaGFuZGxlZFxuICovXG5jb25zdCBoYW5kbGVBcGlFcnJvciA9IDxcbiAgUmVzcG9uZGVkU3RhdGVIYW5kbGVyUmV0dXJuVHlwZSA9IG5ldmVyLFxuICBOb3RSZXNwb25kZWRTdGF0ZUhhbmRsZXJSZXR1cm5UeXBlID0gbmV2ZXIsXG4gIFVua25vd25TdGF0ZUhhbmRsZXJSZXR1cm5UeXBlID0gbmV2ZXJcbj4oXG4gIGVycm9yOiBhbnksXG4gIGJhc2VNZXNzYWdlOiBzdHJpbmcsXG4gIG92ZXJyaWRlSGFuZGxlcnM/OiB7XG4gICAgaGFuZGxlUmVzcG9uZGVkU3RhdGU/OiBFcnJvckhhbmRsZXI8UmVzcG9uZGVkU3RhdGVIYW5kbGVyUmV0dXJuVHlwZT47XG4gICAgaGFuZGxlTm90UmVzcG9uZGVkU3RhdGU/OiBFcnJvckhhbmRsZXI8Tm90UmVzcG9uZGVkU3RhdGVIYW5kbGVyUmV0dXJuVHlwZT47XG4gICAgaGFuZGxlVW5rbm93blN0YXRlPzogRXJyb3JIYW5kbGVyPFVua25vd25TdGF0ZUhhbmRsZXJSZXR1cm5UeXBlPjtcbiAgfVxuKTpcbiAgfCBSZXNwb25kZWRTdGF0ZUhhbmRsZXJSZXR1cm5UeXBlXG4gIHwgTm90UmVzcG9uZGVkU3RhdGVIYW5kbGVyUmV0dXJuVHlwZVxuICB8IFVua25vd25TdGF0ZUhhbmRsZXJSZXR1cm5UeXBlID0+IHtcbiAgY29uc3QgZ2VuZXJhdGVFcnJvck1lc3NhZ2UgPSAocGFydGlhbE1lc3NhZ2U6IHN0cmluZykgPT5cbiAgICBgJHtiYXNlTWVzc2FnZX0gJHtwYXJ0aWFsTWVzc2FnZX1gO1xuXG4gIGNvbnN0IGhhbmRsZVJlc3BvbmRlZFN0YXRlID1cbiAgICBvdmVycmlkZUhhbmRsZXJzPy5oYW5kbGVSZXNwb25kZWRTdGF0ZSA/P1xuICAgICgoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgdGhyb3cgbmV3IEZhaWxlZEVycm9yKGdlbmVyYXRlRXJyb3JNZXNzYWdlKGVycm9yLnJlc3BvbnNlLmRhdGEucmVhc29uKSk7XG4gICAgfSk7XG4gIGNvbnN0IGhhbmRsZU5vdFJlc3BvbmRlZFN0YXRlID1cbiAgICBvdmVycmlkZUhhbmRsZXJzPy5oYW5kbGVOb3RSZXNwb25kZWRTdGF0ZSA/P1xuICAgICgoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgdGhyb3cgbmV3IE5ldHdvcmtFcnJvcihnZW5lcmF0ZUVycm9yTWVzc2FnZShlcnJvci5tZXNzYWdlKSk7XG4gICAgfSk7XG4gIGNvbnN0IGhhbmRsZVVua25vd25TdGF0ZSA9XG4gICAgb3ZlcnJpZGVIYW5kbGVycz8uaGFuZGxlVW5rbm93blN0YXRlID8/XG4gICAgKChlcnJvcjogYW55KSA9PiB7XG4gICAgICB0aHJvdyBuZXcgVW5leHBlY3RlZEFwaUVycm9yKGdlbmVyYXRlRXJyb3JNZXNzYWdlKGVycm9yLm1lc3NhZ2UpKTtcbiAgICB9KTtcblxuICBpZiAoZXJyb3IucmVzcG9uc2UpIHtcbiAgICByZXR1cm4gaGFuZGxlUmVzcG9uZGVkU3RhdGUoZXJyb3IpO1xuICB9IGVsc2UgaWYgKGVycm9yLnJlcXVlc3QpIHtcbiAgICByZXR1cm4gaGFuZGxlTm90UmVzcG9uZGVkU3RhdGUoZXJyb3IpO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBoYW5kbGVVbmtub3duU3RhdGUoZXJyb3IpO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBoYW5kbGVBcGlFcnJvcjtcbiJdfQ==
|
package/dist/lib/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,cAAc,SAAS,CAAC"}
|
package/dist/lib/index.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export { FEE_RATIO_DIVISOR } from './constants';
|
|
2
|
-
export * from './types';
|
|
3
|
-
export * from './errors';
|
|
4
|
-
export { MinimumFeeConfig } from './MinimumFeeConfig';
|
|
5
|
-
export { MinimumFeeBoxBuilder } from './MinimumFeeBoxBuilder';
|
|
6
|
-
export { MinimumFeeBox } from './MinimumFeeBox';
|
|
7
|
-
export * from './utils';
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2hELGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEZFRV9SQVRJT19ESVZJU09SIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2Vycm9ycyc7XG5leHBvcnQgeyBNaW5pbXVtRmVlQ29uZmlnIH0gZnJvbSAnLi9NaW5pbXVtRmVlQ29uZmlnJztcbmV4cG9ydCB7IE1pbmltdW1GZWVCb3hCdWlsZGVyIH0gZnJvbSAnLi9NaW5pbXVtRmVlQm94QnVpbGRlcic7XG5leHBvcnQgeyBNaW5pbXVtRmVlQm94IH0gZnJvbSAnLi9NaW5pbXVtRmVlQm94JztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuIl19
|
package/dist/lib/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACnC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,CAAC;CACtC;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,eAAgB,YAAW,QAAQ;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAqB;gBAEzC,QAAQ,EAAE,QAAQ;CAO/B;AAED,oBAAY,eAAe;IACzB,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,QAAQ,CAAC;IACb,EAAE,EAAE,QAAQ,CAAC;IACb,EAAE,EAAE,QAAQ,CAAC;IACb,EAAE,EAAE,QAAQ,CAAC;IACb,EAAE,EAAE,QAAQ,CAAC;IACb,EAAE,EAAE,QAAQ,CAAC;CACd"}
|
package/dist/lib/types.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { FEE_RATIO_DIVISOR } from './constants';
|
|
2
|
-
export class ChainMinimumFee {
|
|
3
|
-
bridgeFee;
|
|
4
|
-
networkFee;
|
|
5
|
-
rsnRatio;
|
|
6
|
-
rsnRatioDivisor;
|
|
7
|
-
feeRatio;
|
|
8
|
-
feeRatioDivisor = FEE_RATIO_DIVISOR;
|
|
9
|
-
constructor(chainFee) {
|
|
10
|
-
this.bridgeFee = chainFee.bridgeFee;
|
|
11
|
-
this.networkFee = chainFee.networkFee;
|
|
12
|
-
this.rsnRatio = chainFee.rsnRatio;
|
|
13
|
-
this.rsnRatioDivisor = chainFee.rsnRatioDivisor;
|
|
14
|
-
this.feeRatio = chainFee.feeRatio;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
export var ErgoNetworkType;
|
|
18
|
-
(function (ErgoNetworkType) {
|
|
19
|
-
ErgoNetworkType["explorer"] = "explorer";
|
|
20
|
-
ErgoNetworkType["node"] = "node";
|
|
21
|
-
})(ErgoNetworkType || (ErgoNetworkType = {}));
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBZWhELE1BQU0sT0FBTyxlQUFlO0lBQzFCLFNBQVMsQ0FBUztJQUNsQixVQUFVLENBQVM7SUFDbkIsUUFBUSxDQUFTO0lBQ2pCLGVBQWUsQ0FBUztJQUN4QixRQUFRLENBQVM7SUFDUixlQUFlLEdBQVcsaUJBQWlCLENBQUM7SUFFckQsWUFBWSxRQUFrQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUNsQyxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDaEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDO0lBQ3BDLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBTixJQUFZLGVBR1g7QUFIRCxXQUFZLGVBQWU7SUFDekIsd0NBQXFCLENBQUE7SUFDckIsZ0NBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0YW50IH0gZnJvbSAnZXJnby1saWItd2FzbS1ub2RlanMnO1xuaW1wb3J0IHsgRkVFX1JBVElPX0RJVklTT1IgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmVlIHtcbiAgaGVpZ2h0czogeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfTtcbiAgY29uZmlnczogeyBba2V5OiBzdHJpbmddOiBDaGFpbkZlZSB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYWluRmVlIHtcbiAgYnJpZGdlRmVlOiBiaWdpbnQ7XG4gIG5ldHdvcmtGZWU6IGJpZ2ludDtcbiAgcnNuUmF0aW86IGJpZ2ludDtcbiAgcnNuUmF0aW9EaXZpc29yOiBiaWdpbnQ7XG4gIGZlZVJhdGlvOiBiaWdpbnQ7XG59XG5cbmV4cG9ydCBjbGFzcyBDaGFpbk1pbmltdW1GZWUgaW1wbGVtZW50cyBDaGFpbkZlZSB7XG4gIGJyaWRnZUZlZTogYmlnaW50O1xuICBuZXR3b3JrRmVlOiBiaWdpbnQ7XG4gIHJzblJhdGlvOiBiaWdpbnQ7XG4gIHJzblJhdGlvRGl2aXNvcjogYmlnaW50O1xuICBmZWVSYXRpbzogYmlnaW50O1xuICByZWFkb25seSBmZWVSYXRpb0Rpdmlzb3I6IGJpZ2ludCA9IEZFRV9SQVRJT19ESVZJU09SO1xuXG4gIGNvbnN0cnVjdG9yKGNoYWluRmVlOiBDaGFpbkZlZSkge1xuICAgIHRoaXMuYnJpZGdlRmVlID0gY2hhaW5GZWUuYnJpZGdlRmVlO1xuICAgIHRoaXMubmV0d29ya0ZlZSA9IGNoYWluRmVlLm5ldHdvcmtGZWU7XG4gICAgdGhpcy5yc25SYXRpbyA9IGNoYWluRmVlLnJzblJhdGlvO1xuICAgIHRoaXMucnNuUmF0aW9EaXZpc29yID0gY2hhaW5GZWUucnNuUmF0aW9EaXZpc29yO1xuICAgIHRoaXMuZmVlUmF0aW8gPSBjaGFpbkZlZS5mZWVSYXRpbztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBFcmdvTmV0d29ya1R5cGUge1xuICBleHBsb3JlciA9ICdleHBsb3JlcicsXG4gIG5vZGUgPSAnbm9kZScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0ZXJWYWx1ZXMge1xuICBSNDogQ29uc3RhbnQ7XG4gIFI1OiBDb25zdGFudDtcbiAgUjY6IENvbnN0YW50O1xuICBSNzogQ29uc3RhbnQ7XG4gIFI4OiBDb25zdGFudDtcbiAgUjk6IENvbnN0YW50O1xufVxuIl19
|
package/dist/lib/utils.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAE9B;;;GAGG;AACH,eAAO,MAAM,iBAAiB,QAAS,OAAO,KAAG,MAAM,GAAG,CAiDzD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,SAAU,MAAM,GAAG,CAAC;;;;;;;CA0DnD,CAAC"}
|
package/dist/lib/utils.js
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import { Constant } from 'ergo-lib-wasm-nodejs';
|
|
2
|
-
/**
|
|
3
|
-
* extracts Fee config from box registers
|
|
4
|
-
* @param box
|
|
5
|
-
*/
|
|
6
|
-
export const extractFeeFromBox = (box) => {
|
|
7
|
-
const R4 = box.register_value(4);
|
|
8
|
-
const R5 = box.register_value(5);
|
|
9
|
-
const R6 = box.register_value(6);
|
|
10
|
-
const R7 = box.register_value(7);
|
|
11
|
-
const R8 = box.register_value(8);
|
|
12
|
-
const R9 = box.register_value(9);
|
|
13
|
-
if (!R4 || !R5 || !R6 || !R7 || !R8 || !R9)
|
|
14
|
-
throw Error(`Incomplete register data for minimum-fee config box [${box
|
|
15
|
-
.box_id()
|
|
16
|
-
.to_str()}]`);
|
|
17
|
-
const fees = [];
|
|
18
|
-
const chains = R4.to_coll_coll_byte().map((element) => Buffer.from(element).toString());
|
|
19
|
-
const heights = R5.to_js();
|
|
20
|
-
const bridgeFees = R6.to_js();
|
|
21
|
-
const networkFees = R7.to_js();
|
|
22
|
-
const rsnRatios = R8.to_js();
|
|
23
|
-
const feeRatios = R9.to_js();
|
|
24
|
-
for (let feeIdx = 0; feeIdx < heights.length; feeIdx++) {
|
|
25
|
-
const fee = {
|
|
26
|
-
heights: {},
|
|
27
|
-
configs: {},
|
|
28
|
-
};
|
|
29
|
-
for (let chainIdx = 0; chainIdx < chains.length; chainIdx++) {
|
|
30
|
-
const chain = chains[chainIdx];
|
|
31
|
-
if (heights[feeIdx][chainIdx] === -1)
|
|
32
|
-
continue;
|
|
33
|
-
fee.heights[chain] = heights[feeIdx][chainIdx];
|
|
34
|
-
if (bridgeFees[feeIdx][chainIdx] === '-1')
|
|
35
|
-
continue;
|
|
36
|
-
fee.configs[chain] = {
|
|
37
|
-
bridgeFee: BigInt(bridgeFees[feeIdx][chainIdx]),
|
|
38
|
-
networkFee: BigInt(networkFees[feeIdx][chainIdx]),
|
|
39
|
-
rsnRatio: BigInt(rsnRatios[feeIdx][chainIdx][0]),
|
|
40
|
-
rsnRatioDivisor: BigInt(rsnRatios[feeIdx][chainIdx][1]),
|
|
41
|
-
feeRatio: BigInt(feeRatios[feeIdx][chainIdx]),
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
fees.push(fee);
|
|
45
|
-
}
|
|
46
|
-
return fees;
|
|
47
|
-
};
|
|
48
|
-
/**
|
|
49
|
-
* converts fee config to register values
|
|
50
|
-
* @param fees
|
|
51
|
-
* @returns
|
|
52
|
-
*/
|
|
53
|
-
export const feeToRegisterValues = (fees) => {
|
|
54
|
-
// extract chains
|
|
55
|
-
const chains = [];
|
|
56
|
-
fees.forEach((fee) => {
|
|
57
|
-
Object.keys(fee.heights).forEach((feeChain) => {
|
|
58
|
-
if (!chains.includes(feeChain))
|
|
59
|
-
chains.push(feeChain);
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
chains.sort();
|
|
63
|
-
// extract configs
|
|
64
|
-
const heights = [];
|
|
65
|
-
const bridgeFees = [];
|
|
66
|
-
const networkFees = [];
|
|
67
|
-
const rsnRatios = [];
|
|
68
|
-
const feeRatios = [];
|
|
69
|
-
fees.forEach((fee) => {
|
|
70
|
-
const heightsConfigs = [];
|
|
71
|
-
const bridgeFeesConfigs = [];
|
|
72
|
-
const networkFeesConfigs = [];
|
|
73
|
-
const rsnRatiosConfigs = [];
|
|
74
|
-
const feeRatiosConfigs = [];
|
|
75
|
-
chains.forEach((chain) => {
|
|
76
|
-
if (Object.hasOwn(fee.heights, chain))
|
|
77
|
-
heightsConfigs.push(fee.heights[chain]);
|
|
78
|
-
else
|
|
79
|
-
heightsConfigs.push(-1);
|
|
80
|
-
if (Object.hasOwn(fee.configs, chain)) {
|
|
81
|
-
bridgeFeesConfigs.push(fee.configs[chain].bridgeFee.toString());
|
|
82
|
-
networkFeesConfigs.push(fee.configs[chain].networkFee.toString());
|
|
83
|
-
rsnRatiosConfigs.push([
|
|
84
|
-
fee.configs[chain].rsnRatio.toString(),
|
|
85
|
-
fee.configs[chain].rsnRatioDivisor.toString(),
|
|
86
|
-
]);
|
|
87
|
-
feeRatiosConfigs.push(fee.configs[chain].feeRatio.toString());
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
bridgeFeesConfigs.push('-1');
|
|
91
|
-
networkFeesConfigs.push('-1');
|
|
92
|
-
rsnRatiosConfigs.push(['-1', '-1']);
|
|
93
|
-
feeRatiosConfigs.push('-1');
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
heights.push(heightsConfigs);
|
|
97
|
-
bridgeFees.push(bridgeFeesConfigs);
|
|
98
|
-
networkFees.push(networkFeesConfigs);
|
|
99
|
-
rsnRatios.push(rsnRatiosConfigs);
|
|
100
|
-
feeRatios.push(feeRatiosConfigs);
|
|
101
|
-
});
|
|
102
|
-
return {
|
|
103
|
-
R4: Constant.from_coll_coll_byte(chains.map((chain) => Buffer.from(chain))),
|
|
104
|
-
R5: Constant.from_js(heights),
|
|
105
|
-
R6: Constant.from_js(bridgeFees),
|
|
106
|
-
R7: Constant.from_js(networkFees),
|
|
107
|
-
R8: Constant.from_js(rsnRatios),
|
|
108
|
-
R9: Constant.from_js(feeRatios),
|
|
109
|
-
};
|
|
110
|
-
};
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBVyxNQUFNLHNCQUFzQixDQUFDO0FBR3pEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsR0FBWSxFQUFjLEVBQUU7SUFDNUQsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakMsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFakMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUU7UUFDeEMsTUFBTSxLQUFLLENBQ1Qsd0RBQXdELEdBQUc7YUFDeEQsTUFBTSxFQUFFO2FBQ1IsTUFBTSxFQUFFLEdBQUcsQ0FDZixDQUFDO0lBRUosTUFBTSxJQUFJLEdBQWUsRUFBRSxDQUFDO0lBQzVCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQ3BELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQ2hDLENBQUM7SUFDRixNQUFN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Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RhbnQsIEVyZ29Cb3ggfSBmcm9tICdlcmdvLWxpYi13YXNtLW5vZGVqcyc7XG5pbXBvcnQgeyBGZWUgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBleHRyYWN0cyBGZWUgY29uZmlnIGZyb20gYm94IHJlZ2lzdGVyc1xuICogQHBhcmFtIGJveFxuICovXG5leHBvcnQgY29uc3QgZXh0cmFjdEZlZUZyb21Cb3ggPSAoYm94OiBFcmdvQm94KTogQXJyYXk8RmVlPiA9PiB7XG4gIGNvbnN0IFI0ID0gYm94LnJlZ2lzdGVyX3ZhbHVlKDQpO1xuICBjb25zdCBSNSA9IGJveC5yZWdpc3Rlcl92YWx1ZSg1KTtcbiAgY29uc3QgUjYgPSBib3gucmVnaXN0ZXJfdmFsdWUoNik7XG4gIGNvbnN0IFI3ID0gYm94LnJlZ2lzdGVyX3ZhbHVlKDcpO1xuICBjb25zdCBSOCA9IGJveC5yZWdpc3Rlcl92YWx1ZSg4KTtcbiAgY29uc3QgUjkgPSBib3gucmVnaXN0ZXJfdmFsdWUoOSk7XG5cbiAgaWYgKCFSNCB8fCAhUjUgfHwgIVI2IHx8ICFSNyB8fCAhUjggfHwgIVI5KVxuICAgIHRocm93IEVycm9yKFxuICAgICAgYEluY29tcGxldGUgcmVnaXN0ZXIgZGF0YSBmb3IgbWluaW11bS1mZWUgY29uZmlnIGJveCBbJHtib3hcbiAgICAgICAgLmJveF9pZCgpXG4gICAgICAgIC50b19zdHIoKX1dYFxuICAgICk7XG5cbiAgY29uc3QgZmVlczogQXJyYXk8RmVlPiA9IFtdO1xuICBjb25zdCBjaGFpbnMgPSBSNC50b19jb2xsX2NvbGxfYnl0ZSgpLm1hcCgoZWxlbWVudCkgPT5cbiAgICBCdWZmZXIuZnJvbShlbGVtZW50KS50b1N0cmluZygpXG4gICk7XG4gIGNvbnN0IGhlaWdodHMgPSBSNS50b19qcygpIGFzIEFycmF5PEFycmF5PG51bWJlcj4+O1xuICBjb25zdCBicmlkZ2VGZWVzID0gUjYudG9fanMoKSBhcyBBcnJheTxBcnJheTxzdHJpbmc+PjtcbiAgY29uc3QgbmV0d29ya0ZlZXMgPSBSNy50b19qcygpIGFzIEFycmF5PEFycmF5PHN0cmluZz4+O1xuICBjb25zdCByc25SYXRpb3MgPSBSOC50b19qcygpIGFzIEFycmF5PEFycmF5PEFycmF5PHN0cmluZz4+PjtcbiAgY29uc3QgZmVlUmF0aW9zID0gUjkudG9fanMoKSBhcyBBcnJheTxBcnJheTxzdHJpbmc+PjtcblxuICBmb3IgKGxldCBmZWVJZHggPSAwOyBmZWVJZHggPCBoZWlnaHRzLmxlbmd0aDsgZmVlSWR4KyspIHtcbiAgICBjb25zdCBmZWU6IEZlZSA9IHtcbiAgICAgIGhlaWdodHM6IHt9LFxuICAgICAgY29uZmlnczoge30sXG4gICAgfTtcbiAgICBmb3IgKGxldCBjaGFpbklkeCA9IDA7IGNoYWluSWR4IDwgY2hhaW5zLmxlbmd0aDsgY2hhaW5JZHgrKykge1xuICAgICAgY29uc3QgY2hhaW4gPSBjaGFpbnNbY2hhaW5JZHhdO1xuXG4gICAgICBpZiAoaGVpZ2h0c1tmZWVJZHhdW2NoYWluSWR4XSA9PT0gLTEpIGNvbnRpbnVlO1xuICAgICAgZmVlLmhlaWdodHNbY2hhaW5dID0gaGVpZ2h0c1tmZWVJZHhdW2NoYWluSWR4XTtcblxuICAgICAgaWYgKGJyaWRnZUZlZXNbZmVlSWR4XVtjaGFpbklkeF0gPT09ICctMScpIGNvbnRpbnVlO1xuICAgICAgZmVlLmNvbmZpZ3NbY2hhaW5dID0ge1xuICAgICAgICBicmlkZ2VGZWU6IEJpZ0ludChicmlkZ2VGZWVzW2ZlZUlkeF1bY2hhaW5JZHhdKSxcbiAgICAgICAgbmV0d29ya0ZlZTogQmlnSW50KG5ldHdvcmtGZWVzW2ZlZUlkeF1bY2hhaW5JZHhdKSxcbiAgICAgICAgcnNuUmF0aW86IEJpZ0ludChyc25SYXRpb3NbZmVlSWR4XVtjaGFpbklkeF1bMF0pLFxuICAgICAgICByc25SYXRpb0Rpdmlzb3I6IEJpZ0ludChyc25SYXRpb3NbZmVlSWR4XVtjaGFpbklkeF1bMV0pLFxuICAgICAgICBmZWVSYXRpbzogQmlnSW50KGZlZVJhdGlvc1tmZWVJZHhdW2NoYWluSWR4XSksXG4gICAgICB9O1xuICAgIH1cbiAgICBmZWVzLnB1c2goZmVlKTtcbiAgfVxuXG4gIHJldHVybiBmZWVzO1xufTtcblxuLyoqXG4gKiBjb252ZXJ0cyBmZWUgY29uZmlnIHRvIHJlZ2lzdGVyIHZhbHVlc1xuICogQHBhcmFtIGZlZXNcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBjb25zdCBmZWVUb1JlZ2lzdGVyVmFsdWVzID0gKGZlZXM6IEFycmF5PEZlZT4pID0+IHtcbiAgLy8gIGV4dHJhY3QgY2hhaW5zXG4gIGNvbnN0IGNoYWluczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICBmZWVzLmZvckVhY2goKGZlZSkgPT4ge1xuICAgIE9iamVjdC5rZXlzKGZlZS5oZWlnaHRzKS5mb3JFYWNoKChmZWVDaGFpbikgPT4ge1xuICAgICAgaWYgKCFjaGFpbnMuaW5jbHVkZXMoZmVlQ2hhaW4pKSBjaGFpbnMucHVzaChmZWVDaGFpbik7XG4gICAgfSk7XG4gIH0pO1xuICBjaGFpbnMuc29ydCgpO1xuICAvLyAgZXh0cmFjdCBjb25maWdzXG4gIGNvbnN0IGhlaWdodHM6IEFycmF5PEFycmF5PG51bWJlcj4+ID0gW107XG4gIGNvbnN0IGJyaWRnZUZlZXM6IEFycmF5PEFycmF5PHN0cmluZz4+ID0gW107XG4gIGNvbnN0IG5ldHdvcmtGZWVzOiBBcnJheTxBcnJheTxzdHJpbmc+PiA9IFtdO1xuICBjb25zdCByc25SYXRpb3M6IEFycmF5PEFycmF5PEFycmF5PHN0cmluZz4+PiA9IFtdO1xuICBjb25zdCBmZWVSYXRpb3M6IEFycmF5PEFycmF5PHN0cmluZz4+ID0gW107XG4gIGZlZXMuZm9yRWFjaCgoZmVlKSA9PiB7XG4gICAgY29uc3QgaGVpZ2h0c0NvbmZpZ3M6IEFycmF5PG51bWJlcj4gPSBbXTtcbiAgICBjb25zdCBicmlkZ2VGZWVzQ29uZmlnczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICAgIGNvbnN0IG5ldHdvcmtGZWVzQ29uZmlnczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuICAgIGNvbnN0IHJzblJhdGlvc0NvbmZpZ3M6IEFycmF5PEFycmF5PHN0cmluZz4+ID0gW107XG4gICAgY29uc3QgZmVlUmF0aW9zQ29uZmlnczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gICAgY2hhaW5zLmZvckVhY2goKGNoYWluKSA9PiB7XG4gICAgICBpZiAoT2JqZWN0Lmhhc093bihmZWUuaGVpZ2h0cywgY2hhaW4pKVxuICAgICAgICBoZWlnaHRzQ29uZmlncy5wdXNoKGZlZS5oZWlnaHRzW2NoYWluXSk7XG4gICAgICBlbHNlIGhlaWdodHNDb25maWdzLnB1c2goLTEpO1xuXG4gICAgICBpZiAoT2JqZWN0Lmhhc093bihmZWUuY29uZmlncywgY2hhaW4pKSB7XG4gICAgICAgIGJyaWRnZUZlZXNDb25maWdzLnB1c2goZmVlLmNvbmZpZ3NbY2hhaW5dLmJyaWRnZUZlZS50b1N0cmluZygpKTtcbiAgICAgICAgbmV0d29ya0ZlZXNDb25maWdzLnB1c2goZmVlLmNvbmZpZ3NbY2hhaW5dLm5ldHdvcmtGZWUudG9TdHJpbmcoKSk7XG4gICAgICAgIHJzblJhdGlvc0NvbmZpZ3MucHVzaChbXG4gICAgICAgICAgZmVlLmNvbmZpZ3NbY2hhaW5dLnJzblJhdGlvLnRvU3RyaW5nKCksXG4gICAgICAgICAgZmVlLmNvbmZpZ3NbY2hhaW5dLnJzblJhdGlvRGl2aXNvci50b1N0cmluZygpLFxuICAgICAgICBdKTtcbiAgICAgICAgZmVlUmF0aW9zQ29uZmlncy5wdXNoKGZlZS5jb25maWdzW2NoYWluXS5mZWVSYXRpby50b1N0cmluZygpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyaWRnZUZlZXNDb25maWdzLnB1c2goJy0xJyk7XG4gICAgICAgIG5ldHdvcmtGZWVzQ29uZmlncy5wdXNoKCctMScpO1xuICAgICAgICByc25SYXRpb3NDb25maWdzLnB1c2goWyctMScsICctMSddKTtcbiAgICAgICAgZmVlUmF0aW9zQ29uZmlncy5wdXNoKCctMScpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaGVpZ2h0cy5wdXNoKGhlaWdodHNDb25maWdzKTtcbiAgICBicmlkZ2VGZWVzLnB1c2goYnJpZGdlRmVlc0NvbmZpZ3MpO1xuICAgIG5ldHdvcmtGZWVzLnB1c2gobmV0d29ya0ZlZXNDb25maWdzKTtcbiAgICByc25SYXRpb3MucHVzaChyc25SYXRpb3NDb25maWdzKTtcbiAgICBmZWVSYXRpb3MucHVzaChmZWVSYXRpb3NDb25maWdzKTtcbiAgfSk7XG5cbiAgcmV0dXJuIHtcbiAgICBSNDogQ29uc3RhbnQuZnJvbV9jb2xsX2NvbGxfYnl0ZShjaGFpbnMubWFwKChjaGFpbikgPT4gQnVmZmVyLmZyb20oY2hhaW4pKSksXG4gICAgUjU6IENvbnN0YW50LmZyb21fanMoaGVpZ2h0cyksXG4gICAgUjY6IENvbnN0YW50LmZyb21fanMoYnJpZGdlRmVlcyksXG4gICAgUjc6IENvbnN0YW50LmZyb21fanMobmV0d29ya0ZlZXMpLFxuICAgIFI4OiBDb25zdGFudC5mcm9tX2pzKHJzblJhdGlvcyksXG4gICAgUjk6IENvbnN0YW50LmZyb21fanMoZmVlUmF0aW9zKSxcbiAgfTtcbn07XG4iXX0=
|