@rosen-bridge/minimum-fee 0.1.13 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +28 -0
  2. package/dist/lib/MinimumFeeBox.d.ts +56 -0
  3. package/dist/lib/MinimumFeeBox.d.ts.map +1 -0
  4. package/dist/lib/MinimumFeeBox.js +240 -0
  5. package/dist/lib/MinimumFeeBoxBuilder.d.ts +47 -0
  6. package/dist/lib/MinimumFeeBoxBuilder.d.ts.map +1 -0
  7. package/dist/lib/MinimumFeeBoxBuilder.js +149 -0
  8. package/dist/lib/MinimumFeeConfig.d.ts +22 -0
  9. package/dist/lib/MinimumFeeConfig.d.ts.map +1 -0
  10. package/dist/lib/MinimumFeeConfig.js +39 -0
  11. package/dist/lib/constants.d.ts +2 -0
  12. package/dist/lib/constants.d.ts.map +1 -0
  13. package/dist/lib/constants.js +2 -0
  14. package/dist/lib/errors.d.ts +16 -0
  15. package/dist/lib/errors.d.ts.map +1 -0
  16. package/dist/lib/errors.js +26 -0
  17. package/dist/lib/handleApiError.d.ts +18 -0
  18. package/dist/lib/handleApiError.d.ts.map +1 -0
  19. package/dist/lib/handleApiError.js +35 -0
  20. package/dist/lib/index.d.ts +5 -2
  21. package/dist/lib/index.d.ts.map +1 -1
  22. package/dist/lib/index.js +6 -2
  23. package/dist/lib/types.d.ts +21 -14
  24. package/dist/lib/types.d.ts.map +1 -1
  25. package/dist/lib/types.js +21 -2
  26. package/dist/tsconfig.build.tsbuildinfo +1 -0
  27. package/package.json +14 -9
  28. package/dist/lib/BridgeMinimumFee.d.ts +0 -27
  29. package/dist/lib/BridgeMinimumFee.d.ts.map +0 -1
  30. package/dist/lib/BridgeMinimumFee.js +0 -111
  31. package/dist/lib/consts.d.ts +0 -5
  32. package/dist/lib/consts.d.ts.map +0 -1
  33. package/dist/lib/consts.js +0 -5
  34. package/dist/lib/parser.d.ts +0 -12
  35. package/dist/lib/parser.d.ts.map +0 -1
  36. package/dist/lib/parser.js +0 -40
  37. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1,39 @@
1
+ export class MinimumFeeConfig {
2
+ fee;
3
+ constructor() {
4
+ this.fee = {
5
+ heights: {},
6
+ configs: {},
7
+ };
8
+ }
9
+ /**
10
+ * sets fee for a chain
11
+ * @param chain
12
+ * @param height
13
+ * @param chainFee
14
+ */
15
+ setChainConfig = (chain, height, chainFee) => {
16
+ this.fee.heights[chain] = height;
17
+ if (chainFee)
18
+ this.fee.configs[chain] = chainFee;
19
+ else
20
+ delete this.fee.configs[chain];
21
+ return this;
22
+ };
23
+ /**
24
+ * removes fee for a chain
25
+ * @param chain
26
+ */
27
+ removeChainConfig = (chain) => {
28
+ delete this.fee.heights[chain];
29
+ delete this.fee.configs[chain];
30
+ return this;
31
+ };
32
+ /**
33
+ * returns generated fee
34
+ */
35
+ getConfig = () => {
36
+ return this.fee;
37
+ };
38
+ }
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWluaW11bUZlZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9NaW5pbXVtRmVlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxnQkFBZ0I7SUFDakIsR0FBRyxDQUFNO0lBRW5CO1FBQ0UsSUFBSSxDQUFDLEdBQUcsR0FBRztZQUNULE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLEVBQUU7U0FDWixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsY0FBYyxHQUFHLENBQ2YsS0FBYSxFQUNiLE1BQWMsRUFDZCxRQUE4QixFQUNaLEVBQUU7UUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ2pDLElBQUksUUFBUTtZQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLFFBQVEsQ0FBQzs7WUFDNUMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQztJQUVGOzs7T0FHRztJQUNILGlCQUFpQixHQUFHLENBQUMsS0FBYSxFQUFvQixFQUFFO1FBQ3RELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQztJQUVGOztPQUVHO0lBQ0gsU0FBUyxHQUFHLEdBQVEsRUFBRTtRQUNwQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQyxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFpbkZlZSwgRmVlIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBNaW5pbXVtRmVlQ29uZmlnIHtcbiAgcHJvdGVjdGVkIGZlZTogRmVlO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZmVlID0ge1xuICAgICAgaGVpZ2h0czoge30sXG4gICAgICBjb25maWdzOiB7fSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIHNldHMgZmVlIGZvciBhIGNoYWluXG4gICAqIEBwYXJhbSBjaGFpblxuICAgKiBAcGFyYW0gaGVpZ2h0XG4gICAqIEBwYXJhbSBjaGFpbkZlZVxuICAgKi9cbiAgc2V0Q2hhaW5Db25maWcgPSAoXG4gICAgY2hhaW46IHN0cmluZyxcbiAgICBoZWlnaHQ6IG51bWJlcixcbiAgICBjaGFpbkZlZTogQ2hhaW5GZWUgfCB1bmRlZmluZWRcbiAgKTogTWluaW11bUZlZUNvbmZpZyA9PiB7XG4gICAgdGhpcy5mZWUuaGVpZ2h0c1tjaGFpbl0gPSBoZWlnaHQ7XG4gICAgaWYgKGNoYWluRmVlKSB0aGlzLmZlZS5jb25maWdzW2NoYWluXSA9IGNoYWluRmVlO1xuICAgIGVsc2UgZGVsZXRlIHRoaXMuZmVlLmNvbmZpZ3NbY2hhaW5dO1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIC8qKlxuICAgKiByZW1vdmVzIGZlZSBmb3IgYSBjaGFpblxuICAgKiBAcGFyYW0gY2hhaW5cbiAgICovXG4gIHJlbW92ZUNoYWluQ29uZmlnID0gKGNoYWluOiBzdHJpbmcpOiBNaW5pbXVtRmVlQ29uZmlnID0+IHtcbiAgICBkZWxldGUgdGhpcy5mZWUuaGVpZ2h0c1tjaGFpbl07XG4gICAgZGVsZXRlIHRoaXMuZmVlLmNvbmZpZ3NbY2hhaW5dO1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIC8qKlxuICAgKiByZXR1cm5zIGdlbmVyYXRlZCBmZWVcbiAgICovXG4gIGdldENvbmZpZyA9ICgpOiBGZWUgPT4ge1xuICAgIHJldHVybiB0aGlzLmZlZTtcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export declare const ERGO_NATIVE_TOKEN = "erg";
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,QAAQ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const ERGO_NATIVE_TOKEN = 'erg';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgRVJHT19OQVRJVkVfVE9LRU4gPSAnZXJnJztcbiJdfQ==
@@ -0,0 +1,16 @@
1
+ export declare class InvalidConfig extends Error {
2
+ constructor(msg: string);
3
+ }
4
+ export declare class FailedError extends Error {
5
+ constructor(msg: string);
6
+ }
7
+ export declare class NetworkError extends Error {
8
+ constructor(msg: string);
9
+ }
10
+ export declare class UnexpectedApiError extends Error {
11
+ constructor(msg: string);
12
+ }
13
+ export declare class NotFoundError extends Error {
14
+ constructor(msg: string);
15
+ }
16
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,26 @@
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
@@ -0,0 +1,18 @@
1
+ interface ErrorHandler<HandlerReturnType> {
2
+ (error: any): HandlerReturnType;
3
+ }
4
+ /**
5
+ * handle an axios api error, considering different kinds of events which may
6
+ * cause it
7
+ * @param error the error object
8
+ * @param baseMessage string to prepend the actual error message
9
+ * @param overrideHandlers an object for overriding how different kinds of error
10
+ * are handled
11
+ */
12
+ declare const handleApiError: <RespondedStateHandlerReturnType = never, NotRespondedStateHandlerReturnType = never, UnknownStateHandlerReturnType = never>(error: any, baseMessage: string, overrideHandlers?: {
13
+ handleRespondedState?: ErrorHandler<RespondedStateHandlerReturnType> | undefined;
14
+ handleNotRespondedState?: ErrorHandler<NotRespondedStateHandlerReturnType> | undefined;
15
+ handleUnknownState?: ErrorHandler<UnknownStateHandlerReturnType> | undefined;
16
+ } | undefined) => RespondedStateHandlerReturnType | NotRespondedStateHandlerReturnType | UnknownStateHandlerReturnType;
17
+ export default handleApiError;
18
+ //# sourceMappingURL=handleApiError.d.ts.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,35 @@
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==
@@ -1,3 +1,6 @@
1
- export { BridgeMinimumFee } from './BridgeMinimumFee';
2
- export { FeeConfig, Fee } from './types';
1
+ export * from './types';
2
+ export * from './errors';
3
+ export { MinimumFeeConfig } from './MinimumFeeConfig';
4
+ export { MinimumFeeBoxBuilder } from './MinimumFeeBoxBuilder';
5
+ export { MinimumFeeBox } from './MinimumFeeBox';
3
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,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"}
package/dist/lib/index.js CHANGED
@@ -1,2 +1,6 @@
1
- export { BridgeMinimumFee } from './BridgeMinimumFee';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBCcmlkZ2VNaW5pbXVtRmVlIH0gZnJvbSAnLi9CcmlkZ2VNaW5pbXVtRmVlJztcbmV4cG9ydCB7IEZlZUNvbmZpZywgRmVlIH0gZnJvbSAnLi90eXBlcyc7XG4iXX0=
1
+ export * from './types';
2
+ export * from './errors';
3
+ export { MinimumFeeConfig } from './MinimumFeeConfig';
4
+ export { MinimumFeeBoxBuilder } from './MinimumFeeBoxBuilder';
5
+ export { MinimumFeeBox } from './MinimumFeeBox';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2Vycm9ycyc7XG5leHBvcnQgeyBNaW5pbXVtRmVlQ29uZmlnIH0gZnJvbSAnLi9NaW5pbXVtRmVlQ29uZmlnJztcbmV4cG9ydCB7IE1pbmltdW1GZWVCb3hCdWlsZGVyIH0gZnJvbSAnLi9NaW5pbXVtRmVlQm94QnVpbGRlcic7XG5leHBvcnQgeyBNaW5pbXVtRmVlQm94IH0gZnJvbSAnLi9NaW5pbXVtRmVlQm94JztcbiJdfQ==
@@ -1,22 +1,29 @@
1
- interface Fee {
1
+ export interface Fee {
2
+ heights: {
3
+ [key: string]: number;
4
+ };
5
+ configs: {
6
+ [key: string]: ChainFee;
7
+ };
8
+ }
9
+ export interface ChainFee {
2
10
  bridgeFee: bigint;
3
11
  networkFee: bigint;
4
12
  rsnRatio: bigint;
13
+ rsnRatioDivisor: bigint;
5
14
  feeRatio: bigint;
6
15
  }
7
- interface ChainFee {
8
- [key: string]: Fee;
9
- }
10
- interface FeeConfig {
11
- [key: string]: ChainFee;
16
+ export declare class ChainMinimumFee implements ChainFee {
17
+ bridgeFee: bigint;
18
+ networkFee: bigint;
19
+ rsnRatio: bigint;
20
+ rsnRatioDivisor: bigint;
21
+ feeRatio: bigint;
22
+ readonly feeRatioDivisor: bigint;
23
+ constructor(chainFee: ChainFee);
12
24
  }
13
- interface ConfigBox {
14
- chains: Uint8Array[] | undefined;
15
- heights: string[][] | undefined;
16
- bridgeFees: string[][] | undefined;
17
- networkFees: string[][] | undefined;
18
- rsnRatios: string[][] | undefined;
19
- feeRatios: string[][] | undefined;
25
+ export declare enum ErgoNetworkType {
26
+ explorer = "explorer",
27
+ node = "node"
20
28
  }
21
- export { Fee, ChainFee, FeeConfig, ConfigBox };
22
29
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":"AAAA,UAAU,GAAG;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,QAAQ;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,UAAU,SAAS;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC;CACzB;AAED,UAAU,SAAS;IACjB,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IACjC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC;IAChC,UAAU,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC;IACnC,WAAW,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC;IACpC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC;IAClC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC;CACnC;AAED,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":"AAAA,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,CAAU;gBAE9B,QAAQ,EAAE,QAAQ;CAO/B;AAED,oBAAY,eAAe;IACzB,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd"}
package/dist/lib/types.js CHANGED
@@ -1,2 +1,21 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImludGVyZmFjZSBGZWUge1xuICBicmlkZ2VGZWU6IGJpZ2ludDtcbiAgbmV0d29ya0ZlZTogYmlnaW50O1xuICByc25SYXRpbzogYmlnaW50O1xuICBmZWVSYXRpbzogYmlnaW50O1xufVxuXG5pbnRlcmZhY2UgQ2hhaW5GZWUge1xuICBba2V5OiBzdHJpbmddOiBGZWU7XG59XG5cbmludGVyZmFjZSBGZWVDb25maWcge1xuICBba2V5OiBzdHJpbmddOiBDaGFpbkZlZTtcbn1cblxuaW50ZXJmYWNlIENvbmZpZ0JveCB7XG4gIGNoYWluczogVWludDhBcnJheVtdIHwgdW5kZWZpbmVkO1xuICBoZWlnaHRzOiBzdHJpbmdbXVtdIHwgdW5kZWZpbmVkO1xuICBicmlkZ2VGZWVzOiBzdHJpbmdbXVtdIHwgdW5kZWZpbmVkO1xuICBuZXR3b3JrRmVlczogc3RyaW5nW11bXSB8IHVuZGVmaW5lZDtcbiAgcnNuUmF0aW9zOiBzdHJpbmdbXVtdIHwgdW5kZWZpbmVkO1xuICBmZWVSYXRpb3M6IHN0cmluZ1tdW10gfCB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCB7IEZlZSwgQ2hhaW5GZWUsIEZlZUNvbmZpZywgQ29uZmlnQm94IH07XG4iXX0=
1
+ export class ChainMinimumFee {
2
+ bridgeFee;
3
+ networkFee;
4
+ rsnRatio;
5
+ rsnRatioDivisor;
6
+ feeRatio;
7
+ feeRatioDivisor = 10000n;
8
+ constructor(chainFee) {
9
+ this.bridgeFee = chainFee.bridgeFee;
10
+ this.networkFee = chainFee.networkFee;
11
+ this.rsnRatio = chainFee.rsnRatio;
12
+ this.rsnRatioDivisor = chainFee.rsnRatioDivisor;
13
+ this.feeRatio = chainFee.feeRatio;
14
+ }
15
+ }
16
+ export var ErgoNetworkType;
17
+ (function (ErgoNetworkType) {
18
+ ErgoNetworkType["explorer"] = "explorer";
19
+ ErgoNetworkType["node"] = "node";
20
+ })(ErgoNetworkType || (ErgoNetworkType = {}));
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYUEsTUFBTSxPQUFPLGVBQWU7SUFDMUIsU0FBUyxDQUFTO0lBQ2xCLFVBQVUsQ0FBUztJQUNuQixRQUFRLENBQVM7SUFDakIsZUFBZSxDQUFTO0lBQ3hCLFFBQVEsQ0FBUztJQUNSLGVBQWUsR0FBVyxNQUFNLENBQUM7SUFFMUMsWUFBWSxRQUFrQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUNsQyxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDaEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDO0lBQ3BDLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBTixJQUFZLGVBR1g7QUFIRCxXQUFZLGVBQWU7SUFDekIsd0NBQXFCLENBQUE7SUFDckIsZ0NBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRmVlIHtcbiAgaGVpZ2h0czogeyBba2V5OiBzdHJpbmddOiBudW1iZXIgfTtcbiAgY29uZmlnczogeyBba2V5OiBzdHJpbmddOiBDaGFpbkZlZSB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENoYWluRmVlIHtcbiAgYnJpZGdlRmVlOiBiaWdpbnQ7XG4gIG5ldHdvcmtGZWU6IGJpZ2ludDtcbiAgcnNuUmF0aW86IGJpZ2ludDtcbiAgcnNuUmF0aW9EaXZpc29yOiBiaWdpbnQ7XG4gIGZlZVJhdGlvOiBiaWdpbnQ7XG59XG5cbmV4cG9ydCBjbGFzcyBDaGFpbk1pbmltdW1GZWUgaW1wbGVtZW50cyBDaGFpbkZlZSB7XG4gIGJyaWRnZUZlZTogYmlnaW50O1xuICBuZXR3b3JrRmVlOiBiaWdpbnQ7XG4gIHJzblJhdGlvOiBiaWdpbnQ7XG4gIHJzblJhdGlvRGl2aXNvcjogYmlnaW50O1xuICBmZWVSYXRpbzogYmlnaW50O1xuICByZWFkb25seSBmZWVSYXRpb0Rpdmlzb3I6IGJpZ2ludCA9IDEwMDAwbjtcblxuICBjb25zdHJ1Y3RvcihjaGFpbkZlZTogQ2hhaW5GZWUpIHtcbiAgICB0aGlzLmJyaWRnZUZlZSA9IGNoYWluRmVlLmJyaWRnZUZlZTtcbiAgICB0aGlzLm5ldHdvcmtGZWUgPSBjaGFpbkZlZS5uZXR3b3JrRmVlO1xuICAgIHRoaXMucnNuUmF0aW8gPSBjaGFpbkZlZS5yc25SYXRpbztcbiAgICB0aGlzLnJzblJhdGlvRGl2aXNvciA9IGNoYWluRmVlLnJzblJhdGlvRGl2aXNvcjtcbiAgICB0aGlzLmZlZVJhdGlvID0gY2hhaW5GZWUuZmVlUmF0aW87XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gRXJnb05ldHdvcmtUeXBlIHtcbiAgZXhwbG9yZXIgPSAnZXhwbG9yZXInLFxuICBub2RlID0gJ25vZGUnLFxufVxuIl19