@chainflip/utils 0.4.0 → 0.4.2

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/assertion.js CHANGED
@@ -8,8 +8,8 @@ import {
8
8
  assertSymbol,
9
9
  assertUndefined,
10
10
  unreachable
11
- } from "./chunk-MYP3UYWE.js";
12
- import "./chunk-CZNX6EUV.js";
11
+ } from "./chunk-ZHIKNZLU.js";
12
+ import "./chunk-HBIFE4XN.js";
13
13
  export {
14
14
  assert,
15
15
  assertBigInt,
package/dist/async.cjs CHANGED
@@ -94,7 +94,7 @@ var once = async (target, event, opts) => {
94
94
  target.addEventListener(event, onSuccess, { once: true, signal: opts?.signal });
95
95
  target.addEventListener("error", onError, { once: true, signal: opts?.signal });
96
96
  if (opts?.signal) {
97
- const signal = opts.signal;
97
+ const { signal } = opts;
98
98
  const abort = () => {
99
99
  deferred.reject(new Error("aborted"));
100
100
  };
package/dist/async.d.cts CHANGED
@@ -25,7 +25,7 @@ declare class RateLimiter<T, Args extends unknown[]> {
25
25
  });
26
26
  request(...args: Args): Promise<T>;
27
27
  }
28
- declare const once: <T extends EventTarget, K extends string>(target: T, event: K, opts?: {
28
+ declare const once: (target: EventTarget, event: string, opts?: {
29
29
  signal?: AbortSignal;
30
30
  timeout?: number;
31
31
  }) => Promise<void>;
package/dist/async.d.ts CHANGED
@@ -25,7 +25,7 @@ declare class RateLimiter<T, Args extends unknown[]> {
25
25
  });
26
26
  request(...args: Args): Promise<T>;
27
27
  }
28
- declare const once: <T extends EventTarget, K extends string>(target: T, event: K, opts?: {
28
+ declare const once: (target: EventTarget, event: string, opts?: {
29
29
  signal?: AbortSignal;
30
30
  timeout?: number;
31
31
  }) => Promise<void>;
package/dist/async.js CHANGED
@@ -66,7 +66,7 @@ var once = async (target, event, opts) => {
66
66
  target.addEventListener(event, onSuccess, { once: true, signal: opts?.signal });
67
67
  target.addEventListener("error", onError, { once: true, signal: opts?.signal });
68
68
  if (opts?.signal) {
69
- const signal = opts.signal;
69
+ const { signal } = opts;
70
70
  const abort = () => {
71
71
  deferred.reject(new Error("aborted"));
72
72
  };
package/dist/base58.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  decode,
3
3
  encode
4
- } from "./chunk-UPA7KLTI.js";
5
- import "./chunk-D7RIA7SA.js";
6
- import "./chunk-MYP3UYWE.js";
7
- import "./chunk-CZNX6EUV.js";
4
+ } from "./chunk-CGMSQQDO.js";
5
+ import "./chunk-2KA626OL.js";
6
+ import "./chunk-ZHIKNZLU.js";
7
+ import "./chunk-HBIFE4XN.js";
8
8
  export {
9
9
  decode,
10
10
  encode
package/dist/bytes.js CHANGED
@@ -4,9 +4,9 @@ import {
4
4
  encodeBytesWithCharset,
5
5
  hexToBytes,
6
6
  reverseBytes
7
- } from "./chunk-D7RIA7SA.js";
8
- import "./chunk-MYP3UYWE.js";
9
- import "./chunk-CZNX6EUV.js";
7
+ } from "./chunk-2KA626OL.js";
8
+ import "./chunk-ZHIKNZLU.js";
9
+ import "./chunk-HBIFE4XN.js";
10
10
  export {
11
11
  bytesToHex,
12
12
  decodeBytesWithCharset,
@@ -0,0 +1,169 @@
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
+
20
+ // src/chainflip.ts
21
+ var chainflip_exports = {};
22
+ __export(chainflip_exports, {
23
+ addressTypes: () => addressTypes,
24
+ assetConstants: () => assetConstants,
25
+ baseChainflipAssets: () => baseChainflipAssets,
26
+ chainConstants: () => chainConstants,
27
+ chainflipAssets: () => chainflipAssets,
28
+ chainflipChains: () => chainflipChains,
29
+ chainflipEvmChains: () => chainflipEvmChains,
30
+ chainflipNetworks: () => chainflipNetworks,
31
+ internalAssetToRpcAsset: () => internalAssetToRpcAsset,
32
+ readAssetValue: () => readAssetValue,
33
+ rpcAssets: () => rpcAssets
34
+ });
35
+ module.exports = __toCommonJS(chainflip_exports);
36
+ var chainflipAssets = [
37
+ "Usdc",
38
+ "Usdt",
39
+ "Flip",
40
+ "Dot",
41
+ "Eth",
42
+ "Btc",
43
+ "ArbUsdc",
44
+ "ArbEth",
45
+ "Sol",
46
+ "SolUsdc"
47
+ ];
48
+ var rpcAssets = ["USDC", "USDT", "FLIP", "DOT", "ETH", "BTC", "SOL"];
49
+ var baseChainflipAssets = chainflipAssets.filter(
50
+ (asset) => asset !== "Usdc"
51
+ );
52
+ var chainflipEvmChains = ["Ethereum", "Arbitrum"];
53
+ var chainflipChains = [...chainflipEvmChains, "Bitcoin", "Polkadot", "Solana"];
54
+ var chainflipNetworks = ["backspin", "sisyphos", "perseverance", "mainnet"];
55
+ var addressTypes = ["Eth", "Btc", "Dot", "Arb", "Sol"];
56
+ function readAssetValue(map, asset) {
57
+ const chainValues = map[assetConstants[asset].chain];
58
+ return chainValues[assetConstants[asset].rpcAsset];
59
+ }
60
+ var assetConstants = {
61
+ Eth: {
62
+ chain: "Ethereum",
63
+ rpcAsset: "ETH",
64
+ decimals: 18
65
+ },
66
+ Flip: {
67
+ chain: "Ethereum",
68
+ rpcAsset: "FLIP",
69
+ decimals: 18
70
+ },
71
+ Usdc: {
72
+ chain: "Ethereum",
73
+ rpcAsset: "USDC",
74
+ decimals: 6
75
+ },
76
+ Usdt: {
77
+ chain: "Ethereum",
78
+ rpcAsset: "USDT",
79
+ decimals: 6
80
+ },
81
+ Dot: {
82
+ chain: "Polkadot",
83
+ rpcAsset: "DOT",
84
+ decimals: 10
85
+ },
86
+ Btc: {
87
+ chain: "Bitcoin",
88
+ rpcAsset: "BTC",
89
+ decimals: 8
90
+ },
91
+ ArbUsdc: {
92
+ chain: "Arbitrum",
93
+ rpcAsset: "USDC",
94
+ decimals: 6
95
+ },
96
+ ArbEth: {
97
+ chain: "Arbitrum",
98
+ rpcAsset: "ETH",
99
+ decimals: 18
100
+ },
101
+ Sol: {
102
+ chain: "Solana",
103
+ rpcAsset: "SOL",
104
+ decimals: 9
105
+ },
106
+ SolUsdc: {
107
+ chain: "Solana",
108
+ rpcAsset: "USDC",
109
+ decimals: 6
110
+ }
111
+ };
112
+ var chainConstants = {
113
+ Ethereum: {
114
+ assets: ["Eth", "Flip", "Usdc", "Usdt"],
115
+ gasAsset: "Eth",
116
+ addressType: "Eth",
117
+ blockTimeSeconds: 12
118
+ },
119
+ Polkadot: {
120
+ assets: ["Dot"],
121
+ gasAsset: "Dot",
122
+ addressType: "Dot",
123
+ blockTimeSeconds: 6
124
+ },
125
+ Bitcoin: {
126
+ assets: ["Btc"],
127
+ gasAsset: "Btc",
128
+ addressType: "Btc",
129
+ blockTimeSeconds: 10 * 60
130
+ },
131
+ Arbitrum: {
132
+ assets: ["ArbUsdc", "ArbEth"],
133
+ gasAsset: "ArbEth",
134
+ addressType: "Arb",
135
+ blockTimeSeconds: 0.26
136
+ },
137
+ Solana: {
138
+ assets: ["Sol", "SolUsdc"],
139
+ gasAsset: "Sol",
140
+ addressType: "Sol",
141
+ blockTimeSeconds: 0.8
142
+ }
143
+ };
144
+ var internalAssetToRpcAsset = {
145
+ Eth: { chain: "Ethereum", asset: "ETH" },
146
+ Flip: { chain: "Ethereum", asset: "FLIP" },
147
+ Usdc: { chain: "Ethereum", asset: "USDC" },
148
+ Usdt: { chain: "Ethereum", asset: "USDT" },
149
+ Dot: { chain: "Polkadot", asset: "DOT" },
150
+ Btc: { chain: "Bitcoin", asset: "BTC" },
151
+ ArbUsdc: { chain: "Arbitrum", asset: "USDC" },
152
+ ArbEth: { chain: "Arbitrum", asset: "ETH" },
153
+ Sol: { chain: "Solana", asset: "SOL" },
154
+ SolUsdc: { chain: "Solana", asset: "USDC" }
155
+ };
156
+ // Annotate the CommonJS export names for ESM import in node:
157
+ 0 && (module.exports = {
158
+ addressTypes,
159
+ assetConstants,
160
+ baseChainflipAssets,
161
+ chainConstants,
162
+ chainflipAssets,
163
+ chainflipChains,
164
+ chainflipEvmChains,
165
+ chainflipNetworks,
166
+ internalAssetToRpcAsset,
167
+ readAssetValue,
168
+ rpcAssets
169
+ });
@@ -0,0 +1,120 @@
1
+ declare const chainflipAssets: readonly ["Usdc", "Usdt", "Flip", "Dot", "Eth", "Btc", "ArbUsdc", "ArbEth", "Sol", "SolUsdc"];
2
+ type ChainflipAsset = (typeof chainflipAssets)[number];
3
+ declare const rpcAssets: readonly ["USDC", "USDT", "FLIP", "DOT", "ETH", "BTC", "SOL"];
4
+ type BaseChainflipAsset = Exclude<ChainflipAsset, 'Usdc'>;
5
+ declare const baseChainflipAssets: BaseChainflipAsset[];
6
+ declare const chainflipEvmChains: readonly ["Ethereum", "Arbitrum"];
7
+ type ChainflipEvmChain = (typeof chainflipEvmChains)[number];
8
+ declare const chainflipChains: readonly ["Ethereum", "Arbitrum", "Bitcoin", "Polkadot", "Solana"];
9
+ type ChainflipChain = (typeof chainflipChains)[number];
10
+ declare const chainflipNetworks: readonly ["backspin", "sisyphos", "perseverance", "mainnet"];
11
+ type ChainflipNetwork = (typeof chainflipNetworks)[number];
12
+ declare const addressTypes: readonly ["Eth", "Btc", "Dot", "Arb", "Sol"];
13
+ type AddressType = (typeof addressTypes)[number];
14
+ type AssetOfChain<C extends ChainflipChain> = (typeof chainConstants)[C]['assets'][number];
15
+ type ChainAssetMap<T> = {
16
+ [C in ChainflipChain]: {
17
+ [A in (typeof assetConstants)[AssetOfChain<C>]['rpcAsset']]: T;
18
+ };
19
+ };
20
+ type BaseChainAssetMap<T> = {
21
+ [C in ChainflipChain]: {
22
+ [A in (typeof assetConstants)[Exclude<AssetOfChain<C>, 'Usdc'>]['rpcAsset']]: T;
23
+ };
24
+ };
25
+ type AssetAndChain = {
26
+ [C in ChainflipChain]: {
27
+ chain: C;
28
+ asset: keyof ChainAssetMap<unknown>[C];
29
+ };
30
+ }[ChainflipChain];
31
+ declare function readAssetValue<T>(map: ChainAssetMap<T>, asset: ChainflipAsset | BaseChainflipAsset): T;
32
+ declare function readAssetValue<T>(map: BaseChainAssetMap<T>, asset: BaseChainflipAsset): T;
33
+ declare function readAssetValue<T>(map: ChainAssetMap<T> | BaseChainAssetMap<T>, asset: BaseChainflipAsset): T;
34
+ declare const assetConstants: {
35
+ readonly Eth: {
36
+ readonly chain: "Ethereum";
37
+ readonly rpcAsset: "ETH";
38
+ readonly decimals: 18;
39
+ };
40
+ readonly Flip: {
41
+ readonly chain: "Ethereum";
42
+ readonly rpcAsset: "FLIP";
43
+ readonly decimals: 18;
44
+ };
45
+ readonly Usdc: {
46
+ readonly chain: "Ethereum";
47
+ readonly rpcAsset: "USDC";
48
+ readonly decimals: 6;
49
+ };
50
+ readonly Usdt: {
51
+ readonly chain: "Ethereum";
52
+ readonly rpcAsset: "USDT";
53
+ readonly decimals: 6;
54
+ };
55
+ readonly Dot: {
56
+ readonly chain: "Polkadot";
57
+ readonly rpcAsset: "DOT";
58
+ readonly decimals: 10;
59
+ };
60
+ readonly Btc: {
61
+ readonly chain: "Bitcoin";
62
+ readonly rpcAsset: "BTC";
63
+ readonly decimals: 8;
64
+ };
65
+ readonly ArbUsdc: {
66
+ readonly chain: "Arbitrum";
67
+ readonly rpcAsset: "USDC";
68
+ readonly decimals: 6;
69
+ };
70
+ readonly ArbEth: {
71
+ readonly chain: "Arbitrum";
72
+ readonly rpcAsset: "ETH";
73
+ readonly decimals: 18;
74
+ };
75
+ readonly Sol: {
76
+ readonly chain: "Solana";
77
+ readonly rpcAsset: "SOL";
78
+ readonly decimals: 9;
79
+ };
80
+ readonly SolUsdc: {
81
+ readonly chain: "Solana";
82
+ readonly rpcAsset: "USDC";
83
+ readonly decimals: 6;
84
+ };
85
+ };
86
+ declare const chainConstants: {
87
+ readonly Ethereum: {
88
+ readonly assets: ["Eth", "Flip", "Usdc", "Usdt"];
89
+ readonly gasAsset: "Eth";
90
+ readonly addressType: "Eth";
91
+ readonly blockTimeSeconds: 12;
92
+ };
93
+ readonly Polkadot: {
94
+ readonly assets: ["Dot"];
95
+ readonly gasAsset: "Dot";
96
+ readonly addressType: "Dot";
97
+ readonly blockTimeSeconds: 6;
98
+ };
99
+ readonly Bitcoin: {
100
+ readonly assets: ["Btc"];
101
+ readonly gasAsset: "Btc";
102
+ readonly addressType: "Btc";
103
+ readonly blockTimeSeconds: number;
104
+ };
105
+ readonly Arbitrum: {
106
+ readonly assets: ["ArbUsdc", "ArbEth"];
107
+ readonly gasAsset: "ArbEth";
108
+ readonly addressType: "Arb";
109
+ readonly blockTimeSeconds: 0.26;
110
+ };
111
+ readonly Solana: {
112
+ readonly assets: ["Sol", "SolUsdc"];
113
+ readonly gasAsset: "Sol";
114
+ readonly addressType: "Sol";
115
+ readonly blockTimeSeconds: 0.8;
116
+ };
117
+ };
118
+ declare const internalAssetToRpcAsset: Record<ChainflipAsset, AssetAndChain>;
119
+
120
+ export { type AddressType, type AssetOfChain, type BaseChainAssetMap, type BaseChainflipAsset, type ChainAssetMap, type ChainflipAsset, type ChainflipChain, type ChainflipEvmChain, type ChainflipNetwork, addressTypes, assetConstants, baseChainflipAssets, chainConstants, chainflipAssets, chainflipChains, chainflipEvmChains, chainflipNetworks, internalAssetToRpcAsset, readAssetValue, rpcAssets };
@@ -0,0 +1,120 @@
1
+ declare const chainflipAssets: readonly ["Usdc", "Usdt", "Flip", "Dot", "Eth", "Btc", "ArbUsdc", "ArbEth", "Sol", "SolUsdc"];
2
+ type ChainflipAsset = (typeof chainflipAssets)[number];
3
+ declare const rpcAssets: readonly ["USDC", "USDT", "FLIP", "DOT", "ETH", "BTC", "SOL"];
4
+ type BaseChainflipAsset = Exclude<ChainflipAsset, 'Usdc'>;
5
+ declare const baseChainflipAssets: BaseChainflipAsset[];
6
+ declare const chainflipEvmChains: readonly ["Ethereum", "Arbitrum"];
7
+ type ChainflipEvmChain = (typeof chainflipEvmChains)[number];
8
+ declare const chainflipChains: readonly ["Ethereum", "Arbitrum", "Bitcoin", "Polkadot", "Solana"];
9
+ type ChainflipChain = (typeof chainflipChains)[number];
10
+ declare const chainflipNetworks: readonly ["backspin", "sisyphos", "perseverance", "mainnet"];
11
+ type ChainflipNetwork = (typeof chainflipNetworks)[number];
12
+ declare const addressTypes: readonly ["Eth", "Btc", "Dot", "Arb", "Sol"];
13
+ type AddressType = (typeof addressTypes)[number];
14
+ type AssetOfChain<C extends ChainflipChain> = (typeof chainConstants)[C]['assets'][number];
15
+ type ChainAssetMap<T> = {
16
+ [C in ChainflipChain]: {
17
+ [A in (typeof assetConstants)[AssetOfChain<C>]['rpcAsset']]: T;
18
+ };
19
+ };
20
+ type BaseChainAssetMap<T> = {
21
+ [C in ChainflipChain]: {
22
+ [A in (typeof assetConstants)[Exclude<AssetOfChain<C>, 'Usdc'>]['rpcAsset']]: T;
23
+ };
24
+ };
25
+ type AssetAndChain = {
26
+ [C in ChainflipChain]: {
27
+ chain: C;
28
+ asset: keyof ChainAssetMap<unknown>[C];
29
+ };
30
+ }[ChainflipChain];
31
+ declare function readAssetValue<T>(map: ChainAssetMap<T>, asset: ChainflipAsset | BaseChainflipAsset): T;
32
+ declare function readAssetValue<T>(map: BaseChainAssetMap<T>, asset: BaseChainflipAsset): T;
33
+ declare function readAssetValue<T>(map: ChainAssetMap<T> | BaseChainAssetMap<T>, asset: BaseChainflipAsset): T;
34
+ declare const assetConstants: {
35
+ readonly Eth: {
36
+ readonly chain: "Ethereum";
37
+ readonly rpcAsset: "ETH";
38
+ readonly decimals: 18;
39
+ };
40
+ readonly Flip: {
41
+ readonly chain: "Ethereum";
42
+ readonly rpcAsset: "FLIP";
43
+ readonly decimals: 18;
44
+ };
45
+ readonly Usdc: {
46
+ readonly chain: "Ethereum";
47
+ readonly rpcAsset: "USDC";
48
+ readonly decimals: 6;
49
+ };
50
+ readonly Usdt: {
51
+ readonly chain: "Ethereum";
52
+ readonly rpcAsset: "USDT";
53
+ readonly decimals: 6;
54
+ };
55
+ readonly Dot: {
56
+ readonly chain: "Polkadot";
57
+ readonly rpcAsset: "DOT";
58
+ readonly decimals: 10;
59
+ };
60
+ readonly Btc: {
61
+ readonly chain: "Bitcoin";
62
+ readonly rpcAsset: "BTC";
63
+ readonly decimals: 8;
64
+ };
65
+ readonly ArbUsdc: {
66
+ readonly chain: "Arbitrum";
67
+ readonly rpcAsset: "USDC";
68
+ readonly decimals: 6;
69
+ };
70
+ readonly ArbEth: {
71
+ readonly chain: "Arbitrum";
72
+ readonly rpcAsset: "ETH";
73
+ readonly decimals: 18;
74
+ };
75
+ readonly Sol: {
76
+ readonly chain: "Solana";
77
+ readonly rpcAsset: "SOL";
78
+ readonly decimals: 9;
79
+ };
80
+ readonly SolUsdc: {
81
+ readonly chain: "Solana";
82
+ readonly rpcAsset: "USDC";
83
+ readonly decimals: 6;
84
+ };
85
+ };
86
+ declare const chainConstants: {
87
+ readonly Ethereum: {
88
+ readonly assets: ["Eth", "Flip", "Usdc", "Usdt"];
89
+ readonly gasAsset: "Eth";
90
+ readonly addressType: "Eth";
91
+ readonly blockTimeSeconds: 12;
92
+ };
93
+ readonly Polkadot: {
94
+ readonly assets: ["Dot"];
95
+ readonly gasAsset: "Dot";
96
+ readonly addressType: "Dot";
97
+ readonly blockTimeSeconds: 6;
98
+ };
99
+ readonly Bitcoin: {
100
+ readonly assets: ["Btc"];
101
+ readonly gasAsset: "Btc";
102
+ readonly addressType: "Btc";
103
+ readonly blockTimeSeconds: number;
104
+ };
105
+ readonly Arbitrum: {
106
+ readonly assets: ["ArbUsdc", "ArbEth"];
107
+ readonly gasAsset: "ArbEth";
108
+ readonly addressType: "Arb";
109
+ readonly blockTimeSeconds: 0.26;
110
+ };
111
+ readonly Solana: {
112
+ readonly assets: ["Sol", "SolUsdc"];
113
+ readonly gasAsset: "Sol";
114
+ readonly addressType: "Sol";
115
+ readonly blockTimeSeconds: 0.8;
116
+ };
117
+ };
118
+ declare const internalAssetToRpcAsset: Record<ChainflipAsset, AssetAndChain>;
119
+
120
+ export { type AddressType, type AssetOfChain, type BaseChainAssetMap, type BaseChainflipAsset, type ChainAssetMap, type ChainflipAsset, type ChainflipChain, type ChainflipEvmChain, type ChainflipNetwork, addressTypes, assetConstants, baseChainflipAssets, chainConstants, chainflipAssets, chainflipChains, chainflipEvmChains, chainflipNetworks, internalAssetToRpcAsset, readAssetValue, rpcAssets };
@@ -0,0 +1,26 @@
1
+ import {
2
+ addressTypes,
3
+ assetConstants,
4
+ baseChainflipAssets,
5
+ chainConstants,
6
+ chainflipAssets,
7
+ chainflipChains,
8
+ chainflipEvmChains,
9
+ chainflipNetworks,
10
+ internalAssetToRpcAsset,
11
+ readAssetValue,
12
+ rpcAssets
13
+ } from "./chunk-FKSZD3R5.js";
14
+ export {
15
+ addressTypes,
16
+ assetConstants,
17
+ baseChainflipAssets,
18
+ chainConstants,
19
+ chainflipAssets,
20
+ chainflipChains,
21
+ chainflipEvmChains,
22
+ chainflipNetworks,
23
+ internalAssetToRpcAsset,
24
+ readAssetValue,
25
+ rpcAssets
26
+ };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  assert
3
- } from "./chunk-MYP3UYWE.js";
3
+ } from "./chunk-ZHIKNZLU.js";
4
4
 
5
5
  // src/bytes.ts
6
6
  var bytesToHex = (input) => {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  decodeBytesWithCharset,
3
3
  encodeBytesWithCharset
4
- } from "./chunk-D7RIA7SA.js";
4
+ } from "./chunk-2KA626OL.js";
5
5
 
6
6
  // src/base58.ts
7
7
  var charset = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
@@ -0,0 +1,135 @@
1
+ // src/chainflip.ts
2
+ var chainflipAssets = [
3
+ "Usdc",
4
+ "Usdt",
5
+ "Flip",
6
+ "Dot",
7
+ "Eth",
8
+ "Btc",
9
+ "ArbUsdc",
10
+ "ArbEth",
11
+ "Sol",
12
+ "SolUsdc"
13
+ ];
14
+ var rpcAssets = ["USDC", "USDT", "FLIP", "DOT", "ETH", "BTC", "SOL"];
15
+ var baseChainflipAssets = chainflipAssets.filter(
16
+ (asset) => asset !== "Usdc"
17
+ );
18
+ var chainflipEvmChains = ["Ethereum", "Arbitrum"];
19
+ var chainflipChains = [...chainflipEvmChains, "Bitcoin", "Polkadot", "Solana"];
20
+ var chainflipNetworks = ["backspin", "sisyphos", "perseverance", "mainnet"];
21
+ var addressTypes = ["Eth", "Btc", "Dot", "Arb", "Sol"];
22
+ function readAssetValue(map, asset) {
23
+ const chainValues = map[assetConstants[asset].chain];
24
+ return chainValues[assetConstants[asset].rpcAsset];
25
+ }
26
+ var assetConstants = {
27
+ Eth: {
28
+ chain: "Ethereum",
29
+ rpcAsset: "ETH",
30
+ decimals: 18
31
+ },
32
+ Flip: {
33
+ chain: "Ethereum",
34
+ rpcAsset: "FLIP",
35
+ decimals: 18
36
+ },
37
+ Usdc: {
38
+ chain: "Ethereum",
39
+ rpcAsset: "USDC",
40
+ decimals: 6
41
+ },
42
+ Usdt: {
43
+ chain: "Ethereum",
44
+ rpcAsset: "USDT",
45
+ decimals: 6
46
+ },
47
+ Dot: {
48
+ chain: "Polkadot",
49
+ rpcAsset: "DOT",
50
+ decimals: 10
51
+ },
52
+ Btc: {
53
+ chain: "Bitcoin",
54
+ rpcAsset: "BTC",
55
+ decimals: 8
56
+ },
57
+ ArbUsdc: {
58
+ chain: "Arbitrum",
59
+ rpcAsset: "USDC",
60
+ decimals: 6
61
+ },
62
+ ArbEth: {
63
+ chain: "Arbitrum",
64
+ rpcAsset: "ETH",
65
+ decimals: 18
66
+ },
67
+ Sol: {
68
+ chain: "Solana",
69
+ rpcAsset: "SOL",
70
+ decimals: 9
71
+ },
72
+ SolUsdc: {
73
+ chain: "Solana",
74
+ rpcAsset: "USDC",
75
+ decimals: 6
76
+ }
77
+ };
78
+ var chainConstants = {
79
+ Ethereum: {
80
+ assets: ["Eth", "Flip", "Usdc", "Usdt"],
81
+ gasAsset: "Eth",
82
+ addressType: "Eth",
83
+ blockTimeSeconds: 12
84
+ },
85
+ Polkadot: {
86
+ assets: ["Dot"],
87
+ gasAsset: "Dot",
88
+ addressType: "Dot",
89
+ blockTimeSeconds: 6
90
+ },
91
+ Bitcoin: {
92
+ assets: ["Btc"],
93
+ gasAsset: "Btc",
94
+ addressType: "Btc",
95
+ blockTimeSeconds: 10 * 60
96
+ },
97
+ Arbitrum: {
98
+ assets: ["ArbUsdc", "ArbEth"],
99
+ gasAsset: "ArbEth",
100
+ addressType: "Arb",
101
+ blockTimeSeconds: 0.26
102
+ },
103
+ Solana: {
104
+ assets: ["Sol", "SolUsdc"],
105
+ gasAsset: "Sol",
106
+ addressType: "Sol",
107
+ blockTimeSeconds: 0.8
108
+ }
109
+ };
110
+ var internalAssetToRpcAsset = {
111
+ Eth: { chain: "Ethereum", asset: "ETH" },
112
+ Flip: { chain: "Ethereum", asset: "FLIP" },
113
+ Usdc: { chain: "Ethereum", asset: "USDC" },
114
+ Usdt: { chain: "Ethereum", asset: "USDT" },
115
+ Dot: { chain: "Polkadot", asset: "DOT" },
116
+ Btc: { chain: "Bitcoin", asset: "BTC" },
117
+ ArbUsdc: { chain: "Arbitrum", asset: "USDC" },
118
+ ArbEth: { chain: "Arbitrum", asset: "ETH" },
119
+ Sol: { chain: "Solana", asset: "SOL" },
120
+ SolUsdc: { chain: "Solana", asset: "USDC" }
121
+ };
122
+
123
+ export {
124
+ chainflipAssets,
125
+ rpcAssets,
126
+ baseChainflipAssets,
127
+ chainflipEvmChains,
128
+ chainflipChains,
129
+ chainflipNetworks,
130
+ addressTypes,
131
+ readAssetValue,
132
+ assetConstants,
133
+ chainConstants,
134
+ internalAssetToRpcAsset
135
+ };
@@ -9,6 +9,9 @@ var isObject = createIsGuard("object");
9
9
  var isUndefined = createIsGuard("undefined");
10
10
  var isNotNullish = (value) => value != null;
11
11
  var isNullish = (value) => value == null;
12
+ var isTruthy = (value) => Boolean(value);
13
+ var isFullfilled = (value) => value.status === "fulfilled";
14
+ var isRejected = (value) => value.status === "rejected";
12
15
 
13
16
  export {
14
17
  isString,
@@ -19,5 +22,8 @@ export {
19
22
  isObject,
20
23
  isUndefined,
21
24
  isNotNullish,
22
- isNullish
25
+ isNullish,
26
+ isTruthy,
27
+ isFullfilled,
28
+ isRejected
23
29
  };