@chainflip/utils 0.11.3 → 2.1.0-beta.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/_virtual/rolldown_runtime.cjs +29 -0
- package/dist/addresses.cjs +15 -40
- package/dist/addresses.d.ts +4 -3
- package/dist/addresses.js +14 -15
- package/dist/assertion.cjs +23 -82
- package/dist/assertion.d.ts +3 -2
- package/dist/assertion.js +32 -22
- package/dist/async.cjs +96 -115
- package/dist/async.d.ts +24 -21
- package/dist/async.js +92 -87
- package/dist/base58.cjs +9 -93
- package/dist/base58.d.ts +4 -4
- package/dist/base58.js +9 -13
- package/dist/bytes.cjs +49 -97
- package/dist/bytes.d.ts +4 -4
- package/dist/bytes.js +51 -15
- package/dist/chainflip.cjs +428 -327
- package/dist/chainflip.d.ts +188 -185
- package/dist/chainflip.js +425 -41
- package/dist/consts.cjs +306 -277
- package/dist/consts.d.ts +18 -17
- package/dist/consts.js +296 -243
- package/dist/date.cjs +74 -131
- package/dist/date.d.ts +9 -8
- package/dist/date.js +60 -95
- package/dist/guard.cjs +28 -63
- package/dist/guard.d.ts +10 -9
- package/dist/guard.js +17 -28
- package/dist/math.cjs +7 -32
- package/dist/math.d.ts +3 -2
- package/dist/math.js +6 -7
- package/dist/number.cjs +5 -29
- package/dist/number.d.ts +4 -4
- package/dist/number.js +5 -5
- package/dist/ss58.cjs +62 -794
- package/dist/ss58.d.ts +12 -9
- package/dist/ss58.js +59 -712
- package/dist/string.cjs +29 -66
- package/dist/string.d.ts +4 -4
- package/dist/string.js +20 -33
- package/dist/tickMath.cjs +32 -232
- package/dist/tickMath.d.ts +7 -6
- package/dist/tickMath.js +24 -29
- package/dist/types.cjs +0 -18
- package/dist/types.d.ts +35 -34
- package/dist/types.js +1 -0
- package/dist/url.cjs +16 -37
- package/dist/url.d.ts +5 -4
- package/dist/url.js +16 -13
- package/package.json +5 -5
- package/dist/addresses.d.cts +0 -6
- package/dist/assertion.d.cts +0 -11
- package/dist/async.d.cts +0 -33
- package/dist/base58.d.cts +0 -8
- package/dist/bytes.d.cts +0 -11
- package/dist/chainflip.d.cts +0 -236
- package/dist/chunk-3P6TXYEI.js +0 -15
- package/dist/chunk-HBIFE4XN.js +0 -29
- package/dist/chunk-LJJH7U4M.js +0 -302
- package/dist/chunk-XGNPN5CY.js +0 -61
- package/dist/chunk-ZHIKNZLU.js +0 -66
- package/dist/consts.d.cts +0 -33
- package/dist/date.d.cts +0 -26
- package/dist/guard.d.cts +0 -23
- package/dist/math.d.cts +0 -4
- package/dist/number.d.cts +0 -6
- package/dist/ss58.d.cts +0 -14
- package/dist/string.d.cts +0 -16
- package/dist/tickMath.d.cts +0 -15
- package/dist/types.d.cts +0 -41
- package/dist/url.d.cts +0 -6
package/dist/string.cjs
CHANGED
|
@@ -1,69 +1,32 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
1
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
uncapitalize: () => uncapitalize
|
|
33
|
-
});
|
|
34
|
-
module.exports = __toCommonJS(string_exports);
|
|
35
|
-
var toUpperCase = (str) => str.toUpperCase();
|
|
36
|
-
var toLowerCase = (str) => str.toLowerCase();
|
|
37
|
-
var isInteger = (string) => /^\d+$/.test(string);
|
|
38
|
-
var split = (str, delimiter) => str.split(delimiter);
|
|
39
|
-
var capitalize = (str) => `${str.charAt(0).toUpperCase()}${str.slice(1)}`;
|
|
40
|
-
var uncapitalize = (str) => `${str.charAt(0).toLowerCase()}${str.slice(1)}`;
|
|
41
|
-
var isHex = (str) => /^0x[\da-f]+$/i.test(str);
|
|
42
|
-
var isBytes = (str) => /^(0x)?[\da-f]*$/i.test(str) && str.length % 2 === 0;
|
|
43
|
-
var abbreviate = (text, showLength = 4, space = false) => {
|
|
44
|
-
if (typeof text !== "string") return "";
|
|
45
|
-
const leftPart = text.slice(0, showLength);
|
|
46
|
-
const rightPart = text.slice(text.length - showLength);
|
|
47
|
-
return [leftPart, rightPart].join(space ? ". . ." : "\u2026");
|
|
2
|
+
//#region src/string.ts
|
|
3
|
+
const toUpperCase = (str) => str.toUpperCase();
|
|
4
|
+
const toLowerCase = (str) => str.toLowerCase();
|
|
5
|
+
const isInteger = (string) => /^\d+$/.test(string);
|
|
6
|
+
const split = (str, delimiter) => str.split(delimiter);
|
|
7
|
+
const capitalize = (str) => `${str.charAt(0).toUpperCase()}${str.slice(1)}`;
|
|
8
|
+
const uncapitalize = (str) => `${str.charAt(0).toLowerCase()}${str.slice(1)}`;
|
|
9
|
+
const isHex = (str) => /^0x[\da-f]+$/i.test(str);
|
|
10
|
+
const isBytes = (str) => /^(0x)?[\da-f]*$/i.test(str) && str.length % 2 === 0;
|
|
11
|
+
const abbreviate = (text, showLength = 4, space = false) => {
|
|
12
|
+
if (typeof text !== "string") return "";
|
|
13
|
+
return [text.slice(0, showLength), text.slice(text.length - showLength)].join(space ? ". . ." : "…");
|
|
48
14
|
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
return slicedString;
|
|
15
|
+
const truncateString = (string, numCharacters = 20, ellipsis = true) => {
|
|
16
|
+
if (string.length < numCharacters) return string;
|
|
17
|
+
let slicedString = string.slice(0, numCharacters);
|
|
18
|
+
if (ellipsis) slicedString += "...";
|
|
19
|
+
return slicedString;
|
|
56
20
|
};
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
});
|
|
21
|
+
|
|
22
|
+
//#endregion
|
|
23
|
+
exports.abbreviate = abbreviate;
|
|
24
|
+
exports.capitalize = capitalize;
|
|
25
|
+
exports.isBytes = isBytes;
|
|
26
|
+
exports.isHex = isHex;
|
|
27
|
+
exports.isInteger = isInteger;
|
|
28
|
+
exports.split = split;
|
|
29
|
+
exports.toLowerCase = toLowerCase;
|
|
30
|
+
exports.toUpperCase = toUpperCase;
|
|
31
|
+
exports.truncateString = truncateString;
|
|
32
|
+
exports.uncapitalize = uncapitalize;
|
package/dist/string.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { HexString } from
|
|
2
|
-
import './chainflip.js';
|
|
1
|
+
import { HexString } from "./types.js";
|
|
3
2
|
|
|
3
|
+
//#region src/string.d.ts
|
|
4
4
|
declare const toUpperCase: <const T extends string>(str: T) => Uppercase<T>;
|
|
5
5
|
declare const toLowerCase: <const T extends string>(str: T) => Lowercase<T>;
|
|
6
6
|
declare const isInteger: (string: string) => boolean;
|
|
@@ -12,5 +12,5 @@ declare const isHex: (str: string) => str is HexString;
|
|
|
12
12
|
declare const isBytes: (str: string) => boolean;
|
|
13
13
|
declare const abbreviate: (text: string | undefined | null, showLength?: number, space?: boolean) => string;
|
|
14
14
|
declare const truncateString: (string: string, numCharacters?: number, ellipsis?: boolean) => string;
|
|
15
|
-
|
|
16
|
-
export { abbreviate, capitalize, isBytes, isHex, isInteger, split, toLowerCase, toUpperCase, truncateString, uncapitalize };
|
|
15
|
+
//#endregion
|
|
16
|
+
export { abbreviate, capitalize, isBytes, isHex, isInteger, split, toLowerCase, toUpperCase, truncateString, uncapitalize };
|
package/dist/string.js
CHANGED
|
@@ -1,35 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const rightPart = text.slice(text.length - showLength);
|
|
14
|
-
return [leftPart, rightPart].join(space ? ". . ." : "\u2026");
|
|
1
|
+
//#region src/string.ts
|
|
2
|
+
const toUpperCase = (str) => str.toUpperCase();
|
|
3
|
+
const toLowerCase = (str) => str.toLowerCase();
|
|
4
|
+
const isInteger = (string) => /^\d+$/.test(string);
|
|
5
|
+
const split = (str, delimiter) => str.split(delimiter);
|
|
6
|
+
const capitalize = (str) => `${str.charAt(0).toUpperCase()}${str.slice(1)}`;
|
|
7
|
+
const uncapitalize = (str) => `${str.charAt(0).toLowerCase()}${str.slice(1)}`;
|
|
8
|
+
const isHex = (str) => /^0x[\da-f]+$/i.test(str);
|
|
9
|
+
const isBytes = (str) => /^(0x)?[\da-f]*$/i.test(str) && str.length % 2 === 0;
|
|
10
|
+
const abbreviate = (text, showLength = 4, space = false) => {
|
|
11
|
+
if (typeof text !== "string") return "";
|
|
12
|
+
return [text.slice(0, showLength), text.slice(text.length - showLength)].join(space ? ". . ." : "…");
|
|
15
13
|
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
return slicedString;
|
|
23
|
-
};
|
|
24
|
-
export {
|
|
25
|
-
abbreviate,
|
|
26
|
-
capitalize,
|
|
27
|
-
isBytes,
|
|
28
|
-
isHex,
|
|
29
|
-
isInteger,
|
|
30
|
-
split,
|
|
31
|
-
toLowerCase,
|
|
32
|
-
toUpperCase,
|
|
33
|
-
truncateString,
|
|
34
|
-
uncapitalize
|
|
14
|
+
const truncateString = (string, numCharacters = 20, ellipsis = true) => {
|
|
15
|
+
if (string.length < numCharacters) return string;
|
|
16
|
+
let slicedString = string.slice(0, numCharacters);
|
|
17
|
+
if (ellipsis) slicedString += "...";
|
|
18
|
+
return slicedString;
|
|
35
19
|
};
|
|
20
|
+
|
|
21
|
+
//#endregion
|
|
22
|
+
export { abbreviate, capitalize, isBytes, isHex, isInteger, split, toLowerCase, toUpperCase, truncateString, uncapitalize };
|
package/dist/tickMath.cjs
CHANGED
|
@@ -1,236 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __copyProps = (to, from, except, desc) => {
|
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
|
|
30
|
-
// src/tickMath.ts
|
|
31
|
-
var tickMath_exports = {};
|
|
32
|
-
__export(tickMath_exports, {
|
|
33
|
-
FULL_TICK_RANGE: () => FULL_TICK_RANGE,
|
|
34
|
-
MAX_TICK: () => MAX_TICK,
|
|
35
|
-
MIN_TICK: () => MIN_TICK,
|
|
36
|
-
priceX128ToPrice: () => priceX128ToPrice,
|
|
37
|
-
rateToTick: () => rateToTick,
|
|
38
|
-
sqrtPriceX96ToPrice: () => sqrtPriceX96ToPrice,
|
|
39
|
-
tickToRate: () => tickToRate
|
|
40
|
-
});
|
|
41
|
-
module.exports = __toCommonJS(tickMath_exports);
|
|
42
|
-
var import_bignumber = __toESM(require("bignumber.js"), 1);
|
|
1
|
+
const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_chainflip = require('./chainflip.cjs');
|
|
3
|
+
let bignumber_js = require("bignumber.js");
|
|
4
|
+
bignumber_js = require_rolldown_runtime.__toESM(bignumber_js);
|
|
43
5
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
"Eth",
|
|
51
|
-
// Polkadot
|
|
52
|
-
"Dot",
|
|
53
|
-
// Bitcoin
|
|
54
|
-
"Btc",
|
|
55
|
-
// Arbitrum
|
|
56
|
-
"ArbUsdc",
|
|
57
|
-
"ArbEth",
|
|
58
|
-
// Solana
|
|
59
|
-
"Sol",
|
|
60
|
-
"SolUsdc",
|
|
61
|
-
// Assethub
|
|
62
|
-
"HubDot",
|
|
63
|
-
"HubUsdt",
|
|
64
|
-
"HubUsdc"
|
|
65
|
-
];
|
|
66
|
-
var baseChainflipAssets = chainflipAssets.filter(
|
|
67
|
-
(asset) => asset !== "Usdc"
|
|
68
|
-
);
|
|
69
|
-
var chainflipEvmChains = ["Ethereum", "Arbitrum"];
|
|
70
|
-
var chainflipChains = [
|
|
71
|
-
...chainflipEvmChains,
|
|
72
|
-
"Bitcoin",
|
|
73
|
-
"Polkadot",
|
|
74
|
-
"Solana",
|
|
75
|
-
"Assethub"
|
|
76
|
-
];
|
|
77
|
-
var assetConstants = {
|
|
78
|
-
Eth: {
|
|
79
|
-
chain: "Ethereum",
|
|
80
|
-
symbol: "ETH",
|
|
81
|
-
rpcAsset: "ETH",
|
|
82
|
-
decimals: 18
|
|
83
|
-
},
|
|
84
|
-
Flip: {
|
|
85
|
-
chain: "Ethereum",
|
|
86
|
-
symbol: "FLIP",
|
|
87
|
-
rpcAsset: "FLIP",
|
|
88
|
-
decimals: 18
|
|
89
|
-
},
|
|
90
|
-
Usdc: {
|
|
91
|
-
chain: "Ethereum",
|
|
92
|
-
symbol: "USDC",
|
|
93
|
-
rpcAsset: "USDC",
|
|
94
|
-
decimals: 6
|
|
95
|
-
},
|
|
96
|
-
Usdt: {
|
|
97
|
-
chain: "Ethereum",
|
|
98
|
-
symbol: "USDT",
|
|
99
|
-
rpcAsset: "USDT",
|
|
100
|
-
decimals: 6
|
|
101
|
-
},
|
|
102
|
-
Dot: {
|
|
103
|
-
chain: "Polkadot",
|
|
104
|
-
symbol: "DOT",
|
|
105
|
-
rpcAsset: "DOT",
|
|
106
|
-
decimals: 10
|
|
107
|
-
},
|
|
108
|
-
Btc: {
|
|
109
|
-
chain: "Bitcoin",
|
|
110
|
-
symbol: "BTC",
|
|
111
|
-
rpcAsset: "BTC",
|
|
112
|
-
decimals: 8
|
|
113
|
-
},
|
|
114
|
-
ArbUsdc: {
|
|
115
|
-
chain: "Arbitrum",
|
|
116
|
-
symbol: "USDC",
|
|
117
|
-
rpcAsset: "USDC",
|
|
118
|
-
decimals: 6
|
|
119
|
-
},
|
|
120
|
-
ArbEth: {
|
|
121
|
-
chain: "Arbitrum",
|
|
122
|
-
symbol: "ETH",
|
|
123
|
-
rpcAsset: "ETH",
|
|
124
|
-
decimals: 18
|
|
125
|
-
},
|
|
126
|
-
Sol: {
|
|
127
|
-
chain: "Solana",
|
|
128
|
-
symbol: "SOL",
|
|
129
|
-
rpcAsset: "SOL",
|
|
130
|
-
decimals: 9
|
|
131
|
-
},
|
|
132
|
-
SolUsdc: {
|
|
133
|
-
chain: "Solana",
|
|
134
|
-
symbol: "USDC",
|
|
135
|
-
rpcAsset: "USDC",
|
|
136
|
-
decimals: 6
|
|
137
|
-
},
|
|
138
|
-
HubDot: {
|
|
139
|
-
chain: "Assethub",
|
|
140
|
-
symbol: "DOT",
|
|
141
|
-
rpcAsset: "DOT",
|
|
142
|
-
decimals: 10
|
|
143
|
-
},
|
|
144
|
-
HubUsdc: {
|
|
145
|
-
chain: "Assethub",
|
|
146
|
-
symbol: "USDC",
|
|
147
|
-
rpcAsset: "USDC",
|
|
148
|
-
decimals: 6
|
|
149
|
-
},
|
|
150
|
-
HubUsdt: {
|
|
151
|
-
chain: "Assethub",
|
|
152
|
-
symbol: "USDT",
|
|
153
|
-
rpcAsset: "USDT",
|
|
154
|
-
decimals: 6
|
|
155
|
-
}
|
|
6
|
+
//#region src/tickMath.ts
|
|
7
|
+
const MIN_TICK = -887272;
|
|
8
|
+
const MAX_TICK = -MIN_TICK;
|
|
9
|
+
const FULL_TICK_RANGE = {
|
|
10
|
+
start: MIN_TICK,
|
|
11
|
+
end: MAX_TICK
|
|
156
12
|
};
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
rpcAssets: ["ETH", "FLIP", "USDC", "USDT"],
|
|
162
|
-
gasAsset: "Eth",
|
|
163
|
-
addressType: "Eth",
|
|
164
|
-
blockTimeSeconds: 12
|
|
165
|
-
},
|
|
166
|
-
Polkadot: {
|
|
167
|
-
chainflipAssets: ["Dot"],
|
|
168
|
-
assets: ["DOT"],
|
|
169
|
-
rpcAssets: ["DOT"],
|
|
170
|
-
gasAsset: "Dot",
|
|
171
|
-
addressType: "Dot",
|
|
172
|
-
blockTimeSeconds: 6
|
|
173
|
-
},
|
|
174
|
-
Bitcoin: {
|
|
175
|
-
chainflipAssets: ["Btc"],
|
|
176
|
-
assets: ["BTC"],
|
|
177
|
-
rpcAssets: ["BTC"],
|
|
178
|
-
gasAsset: "Btc",
|
|
179
|
-
addressType: "Btc",
|
|
180
|
-
blockTimeSeconds: 10 * 60
|
|
181
|
-
},
|
|
182
|
-
Arbitrum: {
|
|
183
|
-
chainflipAssets: ["ArbUsdc", "ArbEth"],
|
|
184
|
-
assets: ["USDC", "ETH"],
|
|
185
|
-
rpcAssets: ["USDC", "ETH"],
|
|
186
|
-
gasAsset: "ArbEth",
|
|
187
|
-
addressType: "Arb",
|
|
188
|
-
blockTimeSeconds: 0.26
|
|
189
|
-
},
|
|
190
|
-
Solana: {
|
|
191
|
-
chainflipAssets: ["Sol", "SolUsdc"],
|
|
192
|
-
assets: ["SOL", "USDC"],
|
|
193
|
-
rpcAssets: ["SOL", "USDC"],
|
|
194
|
-
gasAsset: "Sol",
|
|
195
|
-
addressType: "Sol",
|
|
196
|
-
blockTimeSeconds: 0.8
|
|
197
|
-
},
|
|
198
|
-
Assethub: {
|
|
199
|
-
chainflipAssets: ["HubDot", "HubUsdt", "HubUsdc"],
|
|
200
|
-
assets: ["DOT", "USDT", "USDC"],
|
|
201
|
-
rpcAssets: ["DOT", "USDT", "USDC"],
|
|
202
|
-
gasAsset: "HubDot",
|
|
203
|
-
addressType: "Hub",
|
|
204
|
-
blockTimeSeconds: 12
|
|
205
|
-
}
|
|
13
|
+
const tickToRate = (tick, baseAsset) => {
|
|
14
|
+
const baseRate = new bignumber_js.default(1.0001 ** tick);
|
|
15
|
+
const rateDecimals = require_chainflip.assetConstants.Usdc.decimals - require_chainflip.assetConstants[baseAsset].decimals;
|
|
16
|
+
return baseRate.shiftedBy(-rateDecimals).toNumber();
|
|
206
17
|
};
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
const rateDecimals = assetConstants.Usdc.decimals - assetConstants[baseAsset].decimals;
|
|
215
|
-
return baseRate.shiftedBy(-rateDecimals).toNumber();
|
|
216
|
-
};
|
|
217
|
-
var rateToTick = (rate, baseAsset) => {
|
|
218
|
-
const rateDecimals = assetConstants.Usdc.decimals - assetConstants[baseAsset].decimals;
|
|
219
|
-
const rawRate = new import_bignumber.default(rate).shiftedBy(rateDecimals);
|
|
220
|
-
let tick = Math.log(rawRate.toNumber()) / Math.log(1.0001);
|
|
221
|
-
tick = Math.round(tick * 1e6) / 1e6;
|
|
222
|
-
tick = Math.floor(tick);
|
|
223
|
-
return Math.max(MIN_TICK, Math.min(tick, MAX_TICK));
|
|
18
|
+
const rateToTick = (rate, baseAsset) => {
|
|
19
|
+
const rateDecimals = require_chainflip.assetConstants.Usdc.decimals - require_chainflip.assetConstants[baseAsset].decimals;
|
|
20
|
+
const rawRate = new bignumber_js.default(rate).shiftedBy(rateDecimals);
|
|
21
|
+
let tick = Math.log(rawRate.toNumber()) / Math.log(1.0001);
|
|
22
|
+
tick = Math.round(tick * 1e6) / 1e6;
|
|
23
|
+
tick = Math.floor(tick);
|
|
24
|
+
return Math.max(MIN_TICK, Math.min(tick, MAX_TICK));
|
|
224
25
|
};
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
});
|
|
26
|
+
const sqrtPriceX96ToPrice = (amount) => new bignumber_js.default(amount).div(new bignumber_js.default(2).pow(96)).pow(2);
|
|
27
|
+
const priceX128ToPrice = (amount) => new bignumber_js.default(amount).div(new bignumber_js.default(2).pow(128));
|
|
28
|
+
|
|
29
|
+
//#endregion
|
|
30
|
+
exports.FULL_TICK_RANGE = FULL_TICK_RANGE;
|
|
31
|
+
exports.MAX_TICK = MAX_TICK;
|
|
32
|
+
exports.MIN_TICK = MIN_TICK;
|
|
33
|
+
exports.priceX128ToPrice = priceX128ToPrice;
|
|
34
|
+
exports.rateToTick = rateToTick;
|
|
35
|
+
exports.sqrtPriceX96ToPrice = sqrtPriceX96ToPrice;
|
|
36
|
+
exports.tickToRate = tickToRate;
|
package/dist/tickMath.d.ts
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { ChainflipAsset } from "./chainflip.js";
|
|
2
|
+
import BigNumber from "bignumber.js";
|
|
3
3
|
|
|
4
|
+
//#region src/tickMath.d.ts
|
|
4
5
|
declare const MIN_TICK = -887272;
|
|
5
6
|
declare const MAX_TICK: number;
|
|
6
7
|
declare const FULL_TICK_RANGE: {
|
|
7
|
-
|
|
8
|
-
|
|
8
|
+
start: number;
|
|
9
|
+
end: number;
|
|
9
10
|
};
|
|
10
11
|
declare const tickToRate: (tick: number, baseAsset: ChainflipAsset) => number;
|
|
11
12
|
declare const rateToTick: (rate: BigNumber.Value, baseAsset: ChainflipAsset) => number;
|
|
12
13
|
declare const sqrtPriceX96ToPrice: (amount: string) => BigNumber;
|
|
13
14
|
declare const priceX128ToPrice: (amount: string) => BigNumber;
|
|
14
|
-
|
|
15
|
-
export { FULL_TICK_RANGE, MAX_TICK, MIN_TICK, priceX128ToPrice, rateToTick, sqrtPriceX96ToPrice, tickToRate };
|
|
15
|
+
//#endregion
|
|
16
|
+
export { FULL_TICK_RANGE, MAX_TICK, MIN_TICK, priceX128ToPrice, rateToTick, sqrtPriceX96ToPrice, tickToRate };
|
package/dist/tickMath.js
CHANGED
|
@@ -1,33 +1,28 @@
|
|
|
1
|
-
import {
|
|
2
|
-
assetConstants
|
|
3
|
-
} from "./chunk-LJJH7U4M.js";
|
|
4
|
-
|
|
5
|
-
// src/tickMath.ts
|
|
1
|
+
import { assetConstants } from "./chainflip.js";
|
|
6
2
|
import BigNumber from "bignumber.js";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
3
|
+
|
|
4
|
+
//#region src/tickMath.ts
|
|
5
|
+
const MIN_TICK = -887272;
|
|
6
|
+
const MAX_TICK = -MIN_TICK;
|
|
7
|
+
const FULL_TICK_RANGE = {
|
|
8
|
+
start: MIN_TICK,
|
|
9
|
+
end: MAX_TICK
|
|
14
10
|
};
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
tick = Math.round(tick * 1e6) / 1e6;
|
|
20
|
-
tick = Math.floor(tick);
|
|
21
|
-
return Math.max(MIN_TICK, Math.min(tick, MAX_TICK));
|
|
11
|
+
const tickToRate = (tick, baseAsset) => {
|
|
12
|
+
const baseRate = new BigNumber(1.0001 ** tick);
|
|
13
|
+
const rateDecimals = assetConstants.Usdc.decimals - assetConstants[baseAsset].decimals;
|
|
14
|
+
return baseRate.shiftedBy(-rateDecimals).toNumber();
|
|
22
15
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
rateToTick,
|
|
31
|
-
sqrtPriceX96ToPrice,
|
|
32
|
-
tickToRate
|
|
16
|
+
const rateToTick = (rate, baseAsset) => {
|
|
17
|
+
const rateDecimals = assetConstants.Usdc.decimals - assetConstants[baseAsset].decimals;
|
|
18
|
+
const rawRate = new BigNumber(rate).shiftedBy(rateDecimals);
|
|
19
|
+
let tick = Math.log(rawRate.toNumber()) / Math.log(1.0001);
|
|
20
|
+
tick = Math.round(tick * 1e6) / 1e6;
|
|
21
|
+
tick = Math.floor(tick);
|
|
22
|
+
return Math.max(MIN_TICK, Math.min(tick, MAX_TICK));
|
|
33
23
|
};
|
|
24
|
+
const sqrtPriceX96ToPrice = (amount) => new BigNumber(amount).div(new BigNumber(2).pow(96)).pow(2);
|
|
25
|
+
const priceX128ToPrice = (amount) => new BigNumber(amount).div(new BigNumber(2).pow(128));
|
|
26
|
+
|
|
27
|
+
//#endregion
|
|
28
|
+
export { FULL_TICK_RANGE, MAX_TICK, MIN_TICK, priceX128ToPrice, rateToTick, sqrtPriceX96ToPrice, tickToRate };
|
package/dist/types.cjs
CHANGED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __copyProps = (to, from, except, desc) => {
|
|
7
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
-
for (let key of __getOwnPropNames(from))
|
|
9
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
-
}
|
|
12
|
-
return to;
|
|
13
|
-
};
|
|
14
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
-
|
|
16
|
-
// src/types.ts
|
|
17
|
-
var types_exports = {};
|
|
18
|
-
module.exports = __toCommonJS(types_exports);
|
package/dist/types.d.ts
CHANGED
|
@@ -1,41 +1,42 @@
|
|
|
1
|
-
import { ChainflipAsset } from
|
|
1
|
+
import { ChainflipAsset } from "./chainflip.js";
|
|
2
2
|
|
|
3
|
+
//#region src/types.d.ts
|
|
3
4
|
type HexString = `0x${string}`;
|
|
4
5
|
type Bytelike = Uint8Array | number[] | HexString;
|
|
5
6
|
type CcmMetadata<Data = never> = {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
channelMetadata: {
|
|
8
|
+
message: HexString;
|
|
9
|
+
gasBudget: HexString;
|
|
10
|
+
};
|
|
11
|
+
ccmAdditionalData: Data;
|
|
11
12
|
};
|
|
12
13
|
type VaultSwapData<Broker, CcmData = never> = {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
14
|
+
amount: bigint;
|
|
15
|
+
destinationAddress: string;
|
|
16
|
+
inputAsset: ChainflipAsset;
|
|
17
|
+
outputAsset: ChainflipAsset;
|
|
18
|
+
depositChainBlockHeight: number | null;
|
|
19
|
+
brokerFee: {
|
|
20
|
+
account: Broker;
|
|
21
|
+
commissionBps: number;
|
|
22
|
+
};
|
|
23
|
+
affiliateFees: {
|
|
24
|
+
accountIndex: number;
|
|
25
|
+
commissionBps: number;
|
|
26
|
+
}[];
|
|
27
|
+
maxBoostFee: number;
|
|
28
|
+
dcaParams: {
|
|
29
|
+
chunkInterval: number;
|
|
30
|
+
numberOfChunks: number;
|
|
31
|
+
} | null;
|
|
32
|
+
refundParams: {
|
|
33
|
+
refundAddress: string;
|
|
34
|
+
minPrice: bigint;
|
|
35
|
+
retryDuration: number;
|
|
36
|
+
maxOraclePriceSlippage: number | null;
|
|
37
|
+
refundCcmMetadata: CcmMetadata<CcmData> | null;
|
|
38
|
+
};
|
|
39
|
+
ccmDepositMetadata: CcmMetadata<CcmData> | null;
|
|
39
40
|
};
|
|
40
|
-
|
|
41
|
-
export
|
|
41
|
+
//#endregion
|
|
42
|
+
export { Bytelike, HexString, VaultSwapData };
|
package/dist/types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|