@rosen-bridge/minimum-fee 0.1.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.
@@ -0,0 +1,27 @@
1
+ import ExplorerApi from '../network/ExplorerApi';
2
+ import { Fee, FeeConfig } from './types';
3
+ export declare class BridgeMinimumFee {
4
+ protected readonly explorer: ExplorerApi;
5
+ protected readonly feeConfigErgoTreeTemplateHash: string;
6
+ protected readonly feeConfigTokenId: string;
7
+ readonly ratioDivisor: bigint;
8
+ /**
9
+ * initializes class parameters
10
+ * @param explorerBaseUrl base url to explorer api
11
+ * @param feeConfigErgoTreeTemplateHash the ergoTreeTemplateHash of all minimum fee config boxes
12
+ * @param feeConfigTokenId the token id which all minimum fee config boxes contain
13
+ */
14
+ constructor(explorerBaseUrl: string, feeConfigErgoTreeTemplateHash: string, feeConfigTokenId: string);
15
+ /**
16
+ * finds and returns minimum fee config for given token id
17
+ * @param tokenId the token id
18
+ */
19
+ search: (tokenId: string) => Promise<FeeConfig>;
20
+ /**
21
+ * returns minimum fee config for given token on given chain and height
22
+ * @param tokenId the token id
23
+ * @param chain the given chain
24
+ * @param height the given height
25
+ */
26
+ getFee: (tokenId: string, chain: string, height: number) => Promise<Fee>;
27
+ }
@@ -0,0 +1,109 @@
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.BridgeMinimumFee = void 0;
7
+ const ExplorerApi_1 = __importDefault(require("../network/ExplorerApi"));
8
+ const ergo_lib_wasm_nodejs_1 = require("ergo-lib-wasm-nodejs");
9
+ const parser_1 = require("../network/parser");
10
+ class BridgeMinimumFee {
11
+ explorer;
12
+ feeConfigErgoTreeTemplateHash;
13
+ feeConfigTokenId;
14
+ ratioDivisor = 100000n;
15
+ /**
16
+ * initializes class parameters
17
+ * @param explorerBaseUrl base url to explorer api
18
+ * @param feeConfigErgoTreeTemplateHash the ergoTreeTemplateHash of all minimum fee config boxes
19
+ * @param feeConfigTokenId the token id which all minimum fee config boxes contain
20
+ */
21
+ constructor(explorerBaseUrl, feeConfigErgoTreeTemplateHash, feeConfigTokenId) {
22
+ this.explorer = new ExplorerApi_1.default(explorerBaseUrl);
23
+ this.feeConfigErgoTreeTemplateHash = feeConfigErgoTreeTemplateHash;
24
+ this.feeConfigTokenId = feeConfigTokenId;
25
+ }
26
+ /**
27
+ * finds and returns minimum fee config for given token id
28
+ * @param tokenId the token id
29
+ */
30
+ search = async (tokenId) => {
31
+ try {
32
+ // get config box from Explorer
33
+ const boxes = await this.explorer.boxSearch(this.feeConfigErgoTreeTemplateHash, [this.feeConfigTokenId, tokenId]);
34
+ // appropriate log or error for suspects cases
35
+ if (boxes.total < 1)
36
+ throw Error(`Found no config box`);
37
+ if (boxes.total > 1)
38
+ throw Error(`Found more than one config box. Ids: ${boxes.items.map((box) => box.boxId)}`);
39
+ // convert box to ErgoBox
40
+ const box = ergo_lib_wasm_nodejs_1.ErgoBox.from_json(parser_1.JsonBI.stringify(boxes.items[0]));
41
+ // get registers data
42
+ const chains = box.register_value(4)?.to_coll_coll_byte();
43
+ const heights = box
44
+ .register_value(5)
45
+ ?.to_js();
46
+ const bridgeFees = box
47
+ .register_value(6)
48
+ ?.to_js();
49
+ const networkFees = box
50
+ .register_value(7)
51
+ ?.to_js();
52
+ const rsnRatios = box
53
+ .register_value(8)
54
+ ?.to_js();
55
+ // throw error if any registers is undefined
56
+ if (chains === undefined)
57
+ throw Error(`Box [${box.box_id().to_str()}] has no config in R4`);
58
+ if (heights === undefined)
59
+ throw Error(`Box [${box.box_id().to_str()}] has no config in R5`);
60
+ if (bridgeFees === undefined)
61
+ throw Error(`Box [${box.box_id().to_str()}] has no config in R6`);
62
+ if (networkFees === undefined)
63
+ throw Error(`Box [${box.box_id().to_str()}] has no config in R7`);
64
+ if (rsnRatios === undefined)
65
+ throw Error(`Box [${box.box_id().to_str()}] has no config in R8`);
66
+ // create json of config
67
+ const config = {};
68
+ for (let i = 0; i < chains.length; i++) {
69
+ const chain = Buffer.from(chains[i]).toString();
70
+ const chainConfig = {};
71
+ for (let j = 0; j < heights[i].length; j++) {
72
+ const height = heights[i][j];
73
+ chainConfig[height] = {
74
+ bridgeFee: BigInt(bridgeFees[i][j]),
75
+ networkFee: BigInt(networkFees[i][j]),
76
+ rsnRatio: BigInt(rsnRatios[i][j]),
77
+ };
78
+ }
79
+ config[chain] = chainConfig;
80
+ }
81
+ return config;
82
+ }
83
+ catch (e) {
84
+ throw Error(`An error occurred while getting config for token [${tokenId}]: ${e}`);
85
+ }
86
+ };
87
+ /**
88
+ * returns minimum fee config for given token on given chain and height
89
+ * @param tokenId the token id
90
+ * @param chain the given chain
91
+ * @param height the given height
92
+ */
93
+ getFee = async (tokenId, chain, height) => {
94
+ const feeConfig = await this.search(tokenId);
95
+ if (chain in feeConfig) {
96
+ const heights = Object.keys(feeConfig[chain]);
97
+ heights.sort();
98
+ heights.reverse();
99
+ for (const configHeight of heights) {
100
+ if (height >= Number(configHeight))
101
+ return feeConfig[chain][configHeight];
102
+ }
103
+ throw Error(`Failed to get token minimum config: found no config for token [${tokenId}] in chain [${chain}] on height [${height}]`);
104
+ }
105
+ else
106
+ throw Error(`Failed to get token minimum config: token [${tokenId}] has no config for chain [${chain}]`);
107
+ };
108
+ }
109
+ exports.BridgeMinimumFee = BridgeMinimumFee;
@@ -0,0 +1,12 @@
1
+ interface Fee {
2
+ bridgeFee: bigint;
3
+ networkFee: bigint;
4
+ rsnRatio: bigint;
5
+ }
6
+ interface ChainFee {
7
+ [key: string]: Fee;
8
+ }
9
+ interface FeeConfig {
10
+ [key: string]: ChainFee;
11
+ }
12
+ export { Fee, ChainFee, FeeConfig };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ export { BridgeMinimumFee } from './bridgeMinimumFee/BridgeMinimumFee';
2
+ export { FeeConfig, Fee } from './bridgeMinimumFee/types';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BridgeMinimumFee = void 0;
4
+ var BridgeMinimumFee_1 = require("./bridgeMinimumFee/BridgeMinimumFee");
5
+ Object.defineProperty(exports, "BridgeMinimumFee", { enumerable: true, get: function () { return BridgeMinimumFee_1.BridgeMinimumFee; } });
@@ -0,0 +1,15 @@
1
+ import { Boxes } from './types';
2
+ export default class ExplorerApi {
3
+ private explorerApi;
4
+ /**
5
+ * initializes class parameters
6
+ * @param explorerBaseUrl base url to explorer api
7
+ */
8
+ constructor(explorerBaseUrl: string);
9
+ /**
10
+ * searches for a box in explorer
11
+ * @param ergoTreeTemplateHash the ergoTreeTemplateHash of the box
12
+ * @param tokenIds the list of tokens which the box should contains
13
+ */
14
+ boxSearch: (ergoTreeTemplateHash: string, tokenIds: string[]) => Promise<Boxes>;
15
+ }
@@ -0,0 +1,39 @@
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 axios_1 = __importDefault(require("axios"));
7
+ const parser_1 = require("./parser");
8
+ class ExplorerApi {
9
+ explorerApi;
10
+ /**
11
+ * initializes class parameters
12
+ * @param explorerBaseUrl base url to explorer api
13
+ */
14
+ constructor(explorerBaseUrl) {
15
+ this.explorerApi = axios_1.default.create({
16
+ baseURL: explorerBaseUrl,
17
+ timeout: 8000,
18
+ });
19
+ }
20
+ /**
21
+ * searches for a box in explorer
22
+ * @param ergoTreeTemplateHash the ergoTreeTemplateHash of the box
23
+ * @param tokenIds the list of tokens which the box should contains
24
+ */
25
+ boxSearch = async (ergoTreeTemplateHash, tokenIds) => {
26
+ return this.explorerApi
27
+ .post(`/v1/boxes/unspent/search`, {
28
+ ergoTreeTemplateHash: ergoTreeTemplateHash,
29
+ assets: tokenIds,
30
+ }, {
31
+ transformResponse: (data) => parser_1.JsonBI.parse(data),
32
+ })
33
+ .then((res) => res.data)
34
+ .catch((e) => {
35
+ throw Error(`An error occurred while getting boxes for ErgoTreeTemplateHash [${ergoTreeTemplateHash}] containing tokens ${JSON.stringify(tokenIds)}: ${e}`);
36
+ });
37
+ };
38
+ }
39
+ exports.default = ExplorerApi;
@@ -0,0 +1,7 @@
1
+ export declare const JsonBI: {
2
+ parse: (text: string, reviver?: ((this: any, key: string, value: any) => any) | undefined) => any;
3
+ stringify: {
4
+ (value: any, replacer?: ((this: any, key: string, value: any) => any) | undefined, space?: string | number | undefined): string;
5
+ (value: any, replacer?: (string | number)[] | null | undefined, space?: string | number | undefined): string;
6
+ };
7
+ };
@@ -0,0 +1,11 @@
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.JsonBI = void 0;
7
+ const json_bigint_1 = __importDefault(require("json-bigint"));
8
+ exports.JsonBI = (0, json_bigint_1.default)({
9
+ useNativeBigInt: true,
10
+ alwaysParseAsBig: true,
11
+ });
@@ -0,0 +1,24 @@
1
+ interface Asset {
2
+ tokenId: string;
3
+ amount: bigint;
4
+ }
5
+ interface Box {
6
+ boxId: string;
7
+ ergoTree: string;
8
+ address: string;
9
+ value: bigint;
10
+ assets: Asset[];
11
+ additionalRegisters: {
12
+ [key: string]: ExplorerRegister;
13
+ };
14
+ }
15
+ interface Boxes {
16
+ items: Box[];
17
+ total: number;
18
+ }
19
+ interface ExplorerRegister {
20
+ serializedValue: string;
21
+ sigmaType: string;
22
+ renderedValue: string;
23
+ }
24
+ export { Asset, Box, Boxes };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.esnext.full.d.ts","../../../node_modules/axios/index.d.ts","../lib/network/types.ts","../../../node_modules/@types/json-bigint/index.d.ts","../lib/network/parser.ts","../lib/network/explorerapi.ts","../lib/bridgeminimumfee/types.ts","../../../node_modules/ergo-lib-wasm-nodejs/ergo_lib_wasm.d.ts","../lib/bridgeminimumfee/bridgeminimumfee.ts","../lib/index.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/chai/index.d.ts","../../../node_modules/@types/node/ts4.8/assert.d.ts","../../../node_modules/@types/node/ts4.8/assert/strict.d.ts","../../../node_modules/@types/node/ts4.8/globals.d.ts","../../../node_modules/@types/node/ts4.8/async_hooks.d.ts","../../../node_modules/@types/node/ts4.8/buffer.d.ts","../../../node_modules/@types/node/ts4.8/child_process.d.ts","../../../node_modules/@types/node/ts4.8/cluster.d.ts","../../../node_modules/@types/node/ts4.8/console.d.ts","../../../node_modules/@types/node/ts4.8/constants.d.ts","../../../node_modules/@types/node/ts4.8/crypto.d.ts","../../../node_modules/@types/node/ts4.8/dgram.d.ts","../../../node_modules/@types/node/ts4.8/diagnostics_channel.d.ts","../../../node_modules/@types/node/ts4.8/dns.d.ts","../../../node_modules/@types/node/ts4.8/dns/promises.d.ts","../../../node_modules/@types/node/ts4.8/domain.d.ts","../../../node_modules/@types/node/ts4.8/dom-events.d.ts","../../../node_modules/@types/node/ts4.8/events.d.ts","../../../node_modules/@types/node/ts4.8/fs.d.ts","../../../node_modules/@types/node/ts4.8/fs/promises.d.ts","../../../node_modules/@types/node/ts4.8/http.d.ts","../../../node_modules/@types/node/ts4.8/http2.d.ts","../../../node_modules/@types/node/ts4.8/https.d.ts","../../../node_modules/@types/node/ts4.8/inspector.d.ts","../../../node_modules/@types/node/ts4.8/module.d.ts","../../../node_modules/@types/node/ts4.8/net.d.ts","../../../node_modules/@types/node/ts4.8/os.d.ts","../../../node_modules/@types/node/ts4.8/path.d.ts","../../../node_modules/@types/node/ts4.8/perf_hooks.d.ts","../../../node_modules/@types/node/ts4.8/process.d.ts","../../../node_modules/@types/node/ts4.8/punycode.d.ts","../../../node_modules/@types/node/ts4.8/querystring.d.ts","../../../node_modules/@types/node/ts4.8/readline.d.ts","../../../node_modules/@types/node/ts4.8/readline/promises.d.ts","../../../node_modules/@types/node/ts4.8/repl.d.ts","../../../node_modules/@types/node/ts4.8/stream.d.ts","../../../node_modules/@types/node/ts4.8/stream/promises.d.ts","../../../node_modules/@types/node/ts4.8/stream/consumers.d.ts","../../../node_modules/@types/node/ts4.8/stream/web.d.ts","../../../node_modules/@types/node/ts4.8/string_decoder.d.ts","../../../node_modules/@types/node/ts4.8/test.d.ts","../../../node_modules/@types/node/ts4.8/timers.d.ts","../../../node_modules/@types/node/ts4.8/timers/promises.d.ts","../../../node_modules/@types/node/ts4.8/tls.d.ts","../../../node_modules/@types/node/ts4.8/trace_events.d.ts","../../../node_modules/@types/node/ts4.8/tty.d.ts","../../../node_modules/@types/node/ts4.8/url.d.ts","../../../node_modules/@types/node/ts4.8/util.d.ts","../../../node_modules/@types/node/ts4.8/v8.d.ts","../../../node_modules/@types/node/ts4.8/vm.d.ts","../../../node_modules/@types/node/ts4.8/wasi.d.ts","../../../node_modules/@types/node/ts4.8/worker_threads.d.ts","../../../node_modules/@types/node/ts4.8/zlib.d.ts","../../../node_modules/@types/node/ts4.8/globals.global.d.ts","../../../node_modules/@types/node/ts4.8/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/mocha/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/semver/classes/semver.d.ts","../../../node_modules/@types/semver/functions/parse.d.ts","../../../node_modules/@types/semver/functions/valid.d.ts","../../../node_modules/@types/semver/functions/clean.d.ts","../../../node_modules/@types/semver/functions/inc.d.ts","../../../node_modules/@types/semver/functions/diff.d.ts","../../../node_modules/@types/semver/functions/major.d.ts","../../../node_modules/@types/semver/functions/minor.d.ts","../../../node_modules/@types/semver/functions/patch.d.ts","../../../node_modules/@types/semver/functions/prerelease.d.ts","../../../node_modules/@types/semver/functions/compare.d.ts","../../../node_modules/@types/semver/functions/rcompare.d.ts","../../../node_modules/@types/semver/functions/compare-loose.d.ts","../../../node_modules/@types/semver/functions/compare-build.d.ts","../../../node_modules/@types/semver/functions/sort.d.ts","../../../node_modules/@types/semver/functions/rsort.d.ts","../../../node_modules/@types/semver/functions/gt.d.ts","../../../node_modules/@types/semver/functions/lt.d.ts","../../../node_modules/@types/semver/functions/eq.d.ts","../../../node_modules/@types/semver/functions/neq.d.ts","../../../node_modules/@types/semver/functions/gte.d.ts","../../../node_modules/@types/semver/functions/lte.d.ts","../../../node_modules/@types/semver/functions/cmp.d.ts","../../../node_modules/@types/semver/functions/coerce.d.ts","../../../node_modules/@types/semver/classes/comparator.d.ts","../../../node_modules/@types/semver/classes/range.d.ts","../../../node_modules/@types/semver/functions/satisfies.d.ts","../../../node_modules/@types/semver/ranges/max-satisfying.d.ts","../../../node_modules/@types/semver/ranges/min-satisfying.d.ts","../../../node_modules/@types/semver/ranges/to-comparators.d.ts","../../../node_modules/@types/semver/ranges/min-version.d.ts","../../../node_modules/@types/semver/ranges/valid.d.ts","../../../node_modules/@types/semver/ranges/outside.d.ts","../../../node_modules/@types/semver/ranges/gtr.d.ts","../../../node_modules/@types/semver/ranges/ltr.d.ts","../../../node_modules/@types/semver/ranges/intersects.d.ts","../../../node_modules/@types/semver/ranges/simplify.d.ts","../../../node_modules/@types/semver/ranges/subset.d.ts","../../../node_modules/@types/semver/internals/identifiers.d.ts","../../../node_modules/@types/semver/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"d96fa8a56871904776165ceb8e00bd56127e1a017bb2664cae76223b5f815141","d88dc05fd345b7a4e1816bbfd2dd087eefa9b9e36096818c2348f5b246971125",{"version":"d4ad17d2162a56abf5398bcfebf19dfe066f35b5e46f4eb62f125575c2bf022d","signature":"51e1aeff2fcda810b2af5b2bf4fa4000e9c1df9ff0913715d83acad484f10eee"},"a773b5ba6819006289615ef0c5a5d12d34d4cb8b85aed8648f606fe6dfea0440",{"version":"d762aca7b01c601848af49af9ce5ef7d8a61710c9bd2a0193d04b614f751306d","signature":"320f910f8f9d729c01caac6b02aa54f08bc1753a4fcc8f36b7ad1fffa3f7b3b2"},{"version":"e1db7809027c7a0103d9c0418153fcf1833dccfa0c4209fd8105e576d394b429","signature":"517565981278b6b66bbd28fd3465c47bce2a17f3bb191491a0ed3e81e3faf46a"},{"version":"f0a5fdc11ab0ad544dd6353f703cd662cd2903138b5bc86e530631a3d29d6150","signature":"d2127b488f1602d136e27899157a5c47dd3d1ad211cbbf03c97109b22700ffcc"},"c1d9edd816c87933b57e1b78e9c4c2184bef18bb001c7312f20c5c6ff52e2a4a",{"version":"d5abf1cb69dd7a792998497c4a2d41b34ff8166b196c7dcf85962d155ce949ad","signature":"1fba271181c786f3616c917b0316a6616845c04d14684d7397c17eb0ad7e5186"},"46a618807f86d7a932c50a8d35d463b2136fc826635c4a89323aed39b7185cfd","760cb9b76ab53a2f704ee0e731e162bcfc6af609f5e400a668efe2cc7923e4f4","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","7ec238b220ea991b6643e24191b1f552a65956d5f6de4c6144e700b9985265d8","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","dae3d1adc67ac3dbd1cd471889301339ec439837b5df565982345be20c8fca9a","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3",{"version":"127bf414ca8ced28c9738b91a935121009d03bbc136668db980bd1ba18976b2b","affectsGlobalScope":true},"9122ed7070e054b73ebab37c2373a196def2d90e7d1a9a7fcd9d46b0e51fae78","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"02873d070f9cb79f50833fbf4a9a27ac578a2edf8ddb8421eba1b37faba83bfb","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"c0db280fa6b09d7b8d6720a19a47f485956a41ee0e6914f1b704033eb69c6058","affectsGlobalScope":true},"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","93a195fae9f7275e1a0631acffdfae49bb285d96fc8f7f606cb6eb7516dd03f5","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true},"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","fa68e523cb5d3c2f1f02a94ea8ba2a61a9d1c88dc3c163e411311a826be1f9f3","04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","dbe5aa5a5dd8bd1c6a8d11b1310c3f0cdabaacc78a37b394a8c7b14faeb5fb84","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"d4ac44f01d42f541631c5fc88d0ed8efac29a3a3ad9a745d9fd58f8b61ed132e","7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","3163f47436da41706c6e2b3c1511f3b7cce9f9f3905b2f3e01246c48b4ba7d14","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","24ad30a03d6c9266b63540956868dd70fa2dc523d60d780d6586eb0c281946bc",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true},{"version":"f7db71191aa7aac5d6bc927ed6e7075c2763d22c7238227ec0c63c8cf5cb6a8b","affectsGlobalScope":true},"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"652ee9c5103e89102d87bc20d167a02a0e3e5e53665674466c8cfea8a9e418c7","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","a7321c0e96eecb19dcbf178493836474cef21ee3f9345384ce9d74e4be31228d","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","74986224d4bee6bdfe68db653bb46e389101227ad705065a050ea6dbb171897e","427ce5854885cfc34387e09de05c1d5c1acf94c2143e1693f1d9ff54880573e7","bed2c4f96fab3348be4a34d88dcb12578c1b2475b07c6acd369e99e227718d81","e3ba509d3dce019b3190ceb2f3fc88e2610ab717122dabd91a9efaa37804040d","cda0cb09b995489b7f4c57f168cd31b83dcbaa7aad49612734fb3c9c73f6e4f2","ac127e4c6f2b5220b293cc9d2e64ba49781225b792a51cda50f3db8eafba550c",{"version":"81a2875f775bcb131405a8675841414a5c43b2a3334ecf0ec3e3bdc1e685fbe1","affectsGlobalScope":true},"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6",{"version":"3f6d6465811321abc30a1e5f667feed63e5b3917b3d6c8d6645daf96c75f97ba","affectsGlobalScope":true},"93c4fc5b5237c09bc9ed65cb8f0dc1d89034406ab40500b89701341994897142","2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9","2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069","42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff","d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301","77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a","7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc","906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a","5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351","c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6","e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c","e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe","9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0","0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6","71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6","c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d","2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af","479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579","ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54","f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9","86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8","2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954","a2d409a9ffd872d6b9d78ead00baa116bbc73cfa959fce9a2f29d3227876b2a1","b288936f560cd71f4a6002953290de9ff8dfbfbf37f5a9391be5c83322324898","61178a781ef82e0ff54f9430397e71e8f365fc1e3725e0e5346f2de7b0d50dfa","6a6ccb37feb3aad32d9be026a3337db195979cd5727a616fc0f557e974101a54","6eef5113135a0f2bbac8259909a5bbb7666bcde022c28f4ab95145623cbe1f72","38e2b02897c6357bbcff729ef84c736727b45cc152abe95a7567caccdfad2a1d","d6610ea7e0b1a7686dba062a1e5544dd7d34140f4545305b7c6afaebfb348341","3dee35db743bdba2c8d19aece7ac049bde6fa587e195d86547c882784e6ba34c","b15e55c5fa977c2f25ca0b1db52cfa2d1fd4bf0baf90a8b90d4a7678ca462ff1","f41d30972724714763a2698ae949fbc463afb203b5fa7c4ad7e4de0871129a17","843dd7b6a7c6269fd43827303f5cbe65c1fecabc30b4670a50d5a15d57daeeb9","f06d8b8567ee9fd799bf7f806efe93b67683ef24f4dea5b23ef12edff4434d9d","6017384f697ff38bc3ef6a546df5b230c3c31329db84cbfe686c83bec011e2b2","e1a5b30d9248549ca0c0bb1d653bafae20c64c4aa5928cc4cd3017b55c2177b0","a593632d5878f17295bd53e1c77f27bf4c15212822f764a2bfc1702f4b413fa0","a868a534ba1c2ca9060b8a13b0ffbbbf78b4be7b0ff80d8c75b02773f7192c29","da7545aba8f54a50fde23e2ede00158dc8112560d934cee58098dfb03aae9b9d","34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","6aee496bf0ecfbf6731aa8cca32f4b6e92cdc0a444911a7d88410408a45ecc5d","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","28288f5e5f8b7b895ed2abe6359c1da3e0d14a64b5aef985071285671f347c01"],"options":{"composite":true,"declaration":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"outDir":"./","rootDir":"..","skipLibCheck":true,"strict":true,"strictPropertyInitialization":false,"target":99},"fileIdsList":[[68,121],[121],[121,135],[68,69,70,71,72,121],[68,70,121],[92,121,128],[121,130],[121,131],[121,137,140],[75,121],[78,121],[79,84,112,121],[80,91,92,99,109,120,121],[80,81,91,99,121],[82,121],[83,84,92,100,121],[84,109,117,121],[85,87,91,99,121],[86,121],[87,88,121],[91,121],[89,91,121],[91,92,93,109,120,121],[91,92,93,106,109,112,121],[121,125],[94,99,109,120,121],[91,92,94,95,99,109,117,120,121],[94,96,109,117,120,121],[75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127],[91,97,121],[98,120,121],[87,91,99,109,121],[100,121],[101,121],[78,102,121],[103,119,121,125],[104,121],[105,121],[91,106,107,121],[106,108,121,123],[79,91,109,110,111,112,121],[79,109,111,121],[109,110,121],[112,121],[113,121],[91,115,116,121],[115,116,121],[84,99,109,117,121],[118,121],[99,119,121],[79,94,105,120,121],[84,121],[109,121,122],[121,123],[121,124],[79,84,91,93,102,109,120,121,123,125],[109,121,126],[121,145,184],[121,145,169,184],[121,184],[121,145],[121,145,170,184],[121,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183],[121,170,184],[121,186],[121,133,139],[121,137],[121,134,138],[121,136],[62,63,64,65,121],[64,66,121],[59,60,62,121],[61,121],[63,64],[60]],"referencedMap":[[70,1],[68,2],[133,2],[136,3],[135,2],[73,4],[69,1],[71,5],[72,1],[74,2],[129,6],[130,2],[131,7],[132,8],[141,9],[61,2],[142,2],[143,2],[75,10],[76,10],[78,11],[79,12],[80,13],[81,14],[82,15],[83,16],[84,17],[85,18],[86,19],[87,20],[88,20],[90,21],[89,22],[91,21],[92,23],[93,24],[77,25],[127,2],[94,26],[95,27],[96,28],[128,29],[97,30],[98,31],[99,32],[100,33],[101,34],[102,35],[103,36],[104,37],[105,38],[106,39],[107,39],[108,40],[109,41],[111,42],[110,43],[112,44],[113,45],[114,2],[115,46],[116,47],[117,48],[118,49],[119,50],[120,51],[121,52],[122,53],[123,54],[124,55],[125,56],[126,57],[144,2],[169,58],[170,59],[145,60],[148,60],[167,58],[168,58],[158,58],[157,61],[155,58],[150,58],[163,58],[161,58],[165,58],[149,58],[162,58],[166,58],[151,58],[152,58],[164,58],[146,58],[153,58],[154,58],[156,58],[160,58],[171,62],[159,58],[147,58],[184,63],[183,2],[178,62],[180,64],[179,62],[172,62],[173,62],[175,62],[177,62],[181,64],[182,64],[174,64],[176,64],[185,2],[186,2],[187,65],[59,2],[134,2],[65,2],[140,66],[138,67],[139,68],[137,69],[11,2],[12,2],[16,2],[15,2],[2,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[24,2],[3,2],[4,2],[28,2],[25,2],[26,2],[27,2],[29,2],[30,2],[31,2],[5,2],[32,2],[33,2],[34,2],[35,2],[6,2],[36,2],[37,2],[38,2],[39,2],[7,2],[40,2],[45,2],[46,2],[41,2],[42,2],[43,2],[44,2],[8,2],[50,2],[47,2],[48,2],[49,2],[51,2],[9,2],[52,2],[53,2],[54,2],[55,2],[56,2],[1,2],[10,2],[58,2],[57,2],[14,2],[13,2],[66,70],[64,2],[67,71],[63,72],[62,73],[60,2]],"exportedModulesMap":[[70,1],[68,2],[133,2],[136,3],[135,2],[73,4],[69,1],[71,5],[72,1],[74,2],[129,6],[130,2],[131,7],[132,8],[141,9],[61,2],[142,2],[143,2],[75,10],[76,10],[78,11],[79,12],[80,13],[81,14],[82,15],[83,16],[84,17],[85,18],[86,19],[87,20],[88,20],[90,21],[89,22],[91,21],[92,23],[93,24],[77,25],[127,2],[94,26],[95,27],[96,28],[128,29],[97,30],[98,31],[99,32],[100,33],[101,34],[102,35],[103,36],[104,37],[105,38],[106,39],[107,39],[108,40],[109,41],[111,42],[110,43],[112,44],[113,45],[114,2],[115,46],[116,47],[117,48],[118,49],[119,50],[120,51],[121,52],[122,53],[123,54],[124,55],[125,56],[126,57],[144,2],[169,58],[170,59],[145,60],[148,60],[167,58],[168,58],[158,58],[157,61],[155,58],[150,58],[163,58],[161,58],[165,58],[149,58],[162,58],[166,58],[151,58],[152,58],[164,58],[146,58],[153,58],[154,58],[156,58],[160,58],[171,62],[159,58],[147,58],[184,63],[183,2],[178,62],[180,64],[179,62],[172,62],[173,62],[175,62],[177,62],[181,64],[182,64],[174,64],[176,64],[185,2],[186,2],[187,65],[59,2],[134,2],[65,2],[140,66],[138,67],[139,68],[137,69],[11,2],[12,2],[16,2],[15,2],[2,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[24,2],[3,2],[4,2],[28,2],[25,2],[26,2],[27,2],[29,2],[30,2],[31,2],[5,2],[32,2],[33,2],[34,2],[35,2],[6,2],[36,2],[37,2],[38,2],[39,2],[7,2],[40,2],[45,2],[46,2],[41,2],[42,2],[43,2],[44,2],[8,2],[50,2],[47,2],[48,2],[49,2],[51,2],[9,2],[52,2],[53,2],[54,2],[55,2],[56,2],[1,2],[10,2],[58,2],[57,2],[14,2],[13,2],[66,74],[67,71],[63,75]],"semanticDiagnosticsPerFile":[70,68,133,136,135,73,69,71,72,74,129,130,131,132,141,61,142,143,75,76,78,79,80,81,82,83,84,85,86,87,88,90,89,91,92,93,77,127,94,95,96,128,97,98,99,100,101,102,103,104,105,106,107,108,109,111,110,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,144,169,170,145,148,167,168,158,157,155,150,163,161,165,149,162,166,151,152,164,146,153,154,156,160,171,159,147,184,183,178,180,179,172,173,175,177,181,182,174,176,185,186,187,59,134,65,140,138,139,137,11,12,16,15,2,17,18,19,20,21,22,23,24,3,4,28,25,26,27,29,30,31,5,32,33,34,35,6,36,37,38,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,55,56,1,10,58,57,14,13,66,64,67,63,62,60],"latestChangedDtsFile":"./lib/index.d.ts"},"version":"4.8.4"}
package/package.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "@rosen-bridge/minimum-fee",
3
+ "version": "0.1.0",
4
+ "description": "this project gets minimum fee of the bridge for supported tokens from blockchain",
5
+ "main": "dist/lib/index.js",
6
+ "types": "dist/lib/index.d.ts",
7
+ "scripts": {
8
+ "prettify": "prettier --write . --ignore-path .gitignore",
9
+ "lint": "eslint --fix . && npm run prettify",
10
+ "build": "tsc",
11
+ "type-check": "tsc --noEmit",
12
+ "test": "jest --detectOpenHandles",
13
+ "coverage": "c8 npm run test",
14
+ "release": "npm run test && npm run build && npm publish --access public"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "git+https://github.com/rosen-bridge/tokens.git"
19
+ },
20
+ "files": [
21
+ "dist"
22
+ ],
23
+ "license": "GPL-3.0",
24
+ "dependencies": {
25
+ "ergo-lib-wasm-nodejs": "^0.20.1",
26
+ "json-bigint": "^1.0.0"
27
+ },
28
+ "devDependencies": {
29
+ "@types/chai": "^4.3.1",
30
+ "@types/jest": "^29.1.2",
31
+ "@types/json-bigint": "^1.0.1",
32
+ "@types/mocha": "^9.1.1",
33
+ "@types/node": "^18.0.0",
34
+ "@typescript-eslint/eslint-plugin": "^5.30.7",
35
+ "@typescript-eslint/parser": "^5.26.0",
36
+ "axios": "^0.27.2",
37
+ "c8": "^7.11.3",
38
+ "chai": "^4.3.6",
39
+ "eslint": "^8.16.0",
40
+ "eslint-config-prettier": "^8.5.0",
41
+ "jest": "^29.2.0",
42
+ "mocha": "^10.0.0",
43
+ "prettier": "^2.7.1",
44
+ "ts-jest": "^29.0.3",
45
+ "ts-node": "^10.8.1",
46
+ "typescript": "^4.7.4"
47
+ },
48
+ "directories": {
49
+ "lib": "lib",
50
+ "test": "tests"
51
+ },
52
+ "keywords": [
53
+ "rosen"
54
+ ]
55
+ }