@tcswap/helpers 4.5.15
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/api/index.cjs +4 -0
- package/dist/api/index.cjs.map +16 -0
- package/dist/api/index.js +4 -0
- package/dist/api/index.js.map +16 -0
- package/dist/chunk-pfmeq01a.js +5 -0
- package/dist/chunk-pfmeq01a.js.map +9 -0
- package/dist/chunk-vb4wtm2w.js +4 -0
- package/dist/chunk-vb4wtm2w.js.map +9 -0
- package/dist/contracts.cjs +4 -0
- package/dist/contracts.cjs.map +10 -0
- package/dist/contracts.js +4 -0
- package/dist/contracts.js.map +10 -0
- package/dist/index.cjs +7 -0
- package/dist/index.cjs.map +30 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +30 -0
- package/dist/tokens.cjs +4 -0
- package/dist/tokens.cjs.map +10 -0
- package/dist/tokens.js +4 -0
- package/dist/tokens.js.map +10 -0
- package/dist/types/api/index.d.ts +502 -0
- package/dist/types/api/index.d.ts.map +1 -0
- package/dist/types/api/memoless/endpoints.d.ts +56 -0
- package/dist/types/api/memoless/endpoints.d.ts.map +1 -0
- package/dist/types/api/memoless/types.d.ts +85 -0
- package/dist/types/api/memoless/types.d.ts.map +1 -0
- package/dist/types/api/midgard/endpoints.d.ts +80 -0
- package/dist/types/api/midgard/endpoints.d.ts.map +1 -0
- package/dist/types/api/midgard/types.d.ts +543 -0
- package/dist/types/api/midgard/types.d.ts.map +1 -0
- package/dist/types/api/thornode/endpoints.d.ts +34 -0
- package/dist/types/api/thornode/endpoints.d.ts.map +1 -0
- package/dist/types/api/thornode/types.d.ts +264 -0
- package/dist/types/api/thornode/types.d.ts.map +1 -0
- package/dist/types/api/uswap/endpoints.d.ts +372 -0
- package/dist/types/api/uswap/endpoints.d.ts.map +1 -0
- package/dist/types/api/uswap/types.d.ts +1487 -0
- package/dist/types/api/uswap/types.d.ts.map +1 -0
- package/dist/types/contracts.d.ts +2 -0
- package/dist/types/contracts.d.ts.map +1 -0
- package/dist/types/index.d.ts +32 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/modules/assetValue.d.ts +82 -0
- package/dist/types/modules/assetValue.d.ts.map +1 -0
- package/dist/types/modules/bigIntArithmetics.d.ts +60 -0
- package/dist/types/modules/bigIntArithmetics.d.ts.map +1 -0
- package/dist/types/modules/feeMultiplier.d.ts +48 -0
- package/dist/types/modules/feeMultiplier.d.ts.map +1 -0
- package/dist/types/modules/requestClient.d.ts +33 -0
- package/dist/types/modules/requestClient.d.ts.map +1 -0
- package/dist/types/modules/uSwapConfig.d.ts +249 -0
- package/dist/types/modules/uSwapConfig.d.ts.map +1 -0
- package/dist/types/modules/uSwapError.d.ts +879 -0
- package/dist/types/modules/uSwapError.d.ts.map +1 -0
- package/dist/types/modules/uSwapNumber.d.ts +10 -0
- package/dist/types/modules/uSwapNumber.d.ts.map +1 -0
- package/dist/types/tokens.d.ts +2 -0
- package/dist/types/tokens.d.ts.map +1 -0
- package/dist/types/types/commonTypes.d.ts +16 -0
- package/dist/types/types/commonTypes.d.ts.map +1 -0
- package/dist/types/types/derivationPath.d.ts +4 -0
- package/dist/types/types/derivationPath.d.ts.map +1 -0
- package/dist/types/types/errors/apiV1.d.ts +2 -0
- package/dist/types/types/errors/apiV1.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +6 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/quotes.d.ts +180 -0
- package/dist/types/types/quotes.d.ts.map +1 -0
- package/dist/types/types/sdk.d.ts +35 -0
- package/dist/types/types/sdk.d.ts.map +1 -0
- package/dist/types/types/wallet.d.ts +130 -0
- package/dist/types/types/wallet.d.ts.map +1 -0
- package/dist/types/utils/asset.d.ts +37 -0
- package/dist/types/utils/asset.d.ts.map +1 -0
- package/dist/types/utils/chains.d.ts +13 -0
- package/dist/types/utils/chains.d.ts.map +1 -0
- package/dist/types/utils/derivationPath.d.ts +21 -0
- package/dist/types/utils/derivationPath.d.ts.map +1 -0
- package/dist/types/utils/explorerUrls.d.ts +10 -0
- package/dist/types/utils/explorerUrls.d.ts.map +1 -0
- package/dist/types/utils/liquidity.d.ts +62 -0
- package/dist/types/utils/liquidity.d.ts.map +1 -0
- package/dist/types/utils/memo.d.ts +65 -0
- package/dist/types/utils/memo.d.ts.map +1 -0
- package/dist/types/utils/others.d.ts +15 -0
- package/dist/types/utils/others.d.ts.map +1 -0
- package/dist/types/utils/validators.d.ts +6 -0
- package/dist/types/utils/validators.d.ts.map +1 -0
- package/dist/types/utils/wallets.d.ts +36 -0
- package/dist/types/utils/wallets.d.ts.map +1 -0
- package/package.json +67 -0
- package/src/api/index.ts +15 -0
- package/src/api/memoless/endpoints.ts +62 -0
- package/src/api/memoless/types.ts +83 -0
- package/src/api/midgard/endpoints.ts +352 -0
- package/src/api/midgard/types.ts +515 -0
- package/src/api/thornode/endpoints.ts +109 -0
- package/src/api/thornode/types.ts +247 -0
- package/src/api/uswap/endpoints.ts +252 -0
- package/src/api/uswap/types.ts +626 -0
- package/src/contracts.ts +1 -0
- package/src/index.ts +32 -0
- package/src/modules/__tests__/assetValue.test.ts +2452 -0
- package/src/modules/__tests__/bigIntArithmetics.test.ts +410 -0
- package/src/modules/__tests__/feeMultiplier.test.ts +131 -0
- package/src/modules/__tests__/uSwapConfig.test.ts +429 -0
- package/src/modules/__tests__/uSwapNumber.test.ts +439 -0
- package/src/modules/assetValue.ts +536 -0
- package/src/modules/bigIntArithmetics.ts +366 -0
- package/src/modules/feeMultiplier.ts +84 -0
- package/src/modules/requestClient.ts +116 -0
- package/src/modules/uSwapConfig.ts +189 -0
- package/src/modules/uSwapError.ts +474 -0
- package/src/modules/uSwapNumber.ts +17 -0
- package/src/tokens.ts +1 -0
- package/src/types/commonTypes.ts +10 -0
- package/src/types/derivationPath.ts +11 -0
- package/src/types/errors/apiV1.ts +0 -0
- package/src/types/index.ts +5 -0
- package/src/types/quotes.ts +182 -0
- package/src/types/sdk.ts +38 -0
- package/src/types/wallet.ts +124 -0
- package/src/utils/__tests__/asset.test.ts +186 -0
- package/src/utils/__tests__/derivationPath.test.ts +142 -0
- package/src/utils/__tests__/explorerUrls.test.ts +59 -0
- package/src/utils/__tests__/liquidity.test.ts +302 -0
- package/src/utils/__tests__/memo.test.ts +99 -0
- package/src/utils/__tests__/others.test.ts +169 -0
- package/src/utils/__tests__/validators.test.ts +84 -0
- package/src/utils/__tests__/wallets.test.ts +625 -0
- package/src/utils/asset.ts +399 -0
- package/src/utils/chains.ts +104 -0
- package/src/utils/derivationPath.ts +101 -0
- package/src/utils/explorerUrls.ts +32 -0
- package/src/utils/liquidity.ts +154 -0
- package/src/utils/memo.ts +102 -0
- package/src/utils/others.ts +64 -0
- package/src/utils/validators.ts +36 -0
- package/src/utils/wallets.ts +238 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assetValue.d.ts","sourceRoot":"","sources":["../../../src/modules/assetValue.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Modifications © 2025 Horizontal Systems.
|
|
3
|
+
*/
|
|
4
|
+
import type { USwapNumber } from "./uSwapNumber";
|
|
5
|
+
type NumberPrimitivesType = {
|
|
6
|
+
bigint: bigint;
|
|
7
|
+
number: number;
|
|
8
|
+
string: string;
|
|
9
|
+
};
|
|
10
|
+
export type NumberPrimitives = bigint | number | string;
|
|
11
|
+
type InitialisationValueType = NumberPrimitives | BigIntArithmetics | USwapNumber;
|
|
12
|
+
type USwapBigIntParams = InitialisationValueType | {
|
|
13
|
+
decimal?: number;
|
|
14
|
+
value: number | string;
|
|
15
|
+
};
|
|
16
|
+
type AllowedNumberTypes = "bigint" | "number" | "string";
|
|
17
|
+
export declare function formatBigIntToSafeValue({ value, bigIntDecimal, decimal, }: {
|
|
18
|
+
value: bigint;
|
|
19
|
+
bigIntDecimal?: number;
|
|
20
|
+
decimal?: number;
|
|
21
|
+
}): string;
|
|
22
|
+
export declare class BigIntArithmetics {
|
|
23
|
+
#private;
|
|
24
|
+
decimalMultiplier: bigint;
|
|
25
|
+
bigIntValue: bigint;
|
|
26
|
+
decimal?: number;
|
|
27
|
+
static fromBigInt(value: bigint, decimal?: number): BigIntArithmetics;
|
|
28
|
+
static shiftDecimals({ value, from, to }: {
|
|
29
|
+
value: InstanceType<typeof USwapNumber>;
|
|
30
|
+
from: number;
|
|
31
|
+
to: number;
|
|
32
|
+
}): BigIntArithmetics;
|
|
33
|
+
constructor(params: USwapBigIntParams);
|
|
34
|
+
set(value: USwapBigIntParams): this;
|
|
35
|
+
add(...args: InitialisationValueType[]): this;
|
|
36
|
+
sub(...args: InitialisationValueType[]): this;
|
|
37
|
+
mul(...args: InitialisationValueType[]): this;
|
|
38
|
+
div(...args: InitialisationValueType[]): this;
|
|
39
|
+
gt(value: InitialisationValueType): boolean;
|
|
40
|
+
gte(value: InitialisationValueType): boolean;
|
|
41
|
+
lt(value: InitialisationValueType): boolean;
|
|
42
|
+
lte(value: InitialisationValueType): boolean;
|
|
43
|
+
eqValue(value: InitialisationValueType): boolean;
|
|
44
|
+
getValue<T extends AllowedNumberTypes>(type: T, decimal?: number): NumberPrimitivesType[T];
|
|
45
|
+
getBaseValue<T extends AllowedNumberTypes>(type: T, decimal?: number): NumberPrimitivesType[T];
|
|
46
|
+
getBigIntValue(value: InitialisationValueType, decimal?: number): bigint;
|
|
47
|
+
toSignificant(significantDigits?: number): string;
|
|
48
|
+
toFixed(fixedDigits?: number): string;
|
|
49
|
+
toAbbreviation(digits?: number): string;
|
|
50
|
+
toCurrency(currency?: string, { currencyPosition, decimal, decimalSeparator, thousandSeparator, trimTrailingZeros, }?: {
|
|
51
|
+
currencyPosition?: string | undefined;
|
|
52
|
+
decimal?: number | undefined;
|
|
53
|
+
decimalSeparator?: string | undefined;
|
|
54
|
+
thousandSeparator?: string | undefined;
|
|
55
|
+
trimTrailingZeros?: boolean | undefined;
|
|
56
|
+
}): string;
|
|
57
|
+
formatBigIntToSafeValue(value: bigint, decimal?: number): string;
|
|
58
|
+
}
|
|
59
|
+
export {};
|
|
60
|
+
//# sourceMappingURL=bigIntArithmetics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bigIntArithmetics.d.ts","sourceRoot":"","sources":["../../../src/modules/bigIntArithmetics.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,KAAK,oBAAoB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AACxD,KAAK,uBAAuB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,WAAW,CAAC;AAElF,KAAK,iBAAiB,GAAG,uBAAuB,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAChG,KAAK,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAKzD,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,aAA+B,EAC/B,OAAyB,GAC1B,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,UAuBA;AAED,qBAAa,iBAAiB;;IAC5B,iBAAiB,EAAE,MAAM,CAAa;IACtC,WAAW,SAAM;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAOjD,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;QAAE,KAAK,EAAE,YAAY,CAAC,OAAO,WAAW,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE;gBAInG,MAAM,EAAE,iBAAiB;IAarC,GAAG,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAQnC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,GAAG,CAAC,GAAG,IAAI,EAAE,uBAAuB,EAAE;IAItC,EAAE,CAAC,KAAK,EAAE,uBAAuB;IAIjC,GAAG,CAAC,KAAK,EAAE,uBAAuB;IAIlC,EAAE,CAAC,KAAK,EAAE,uBAAuB;IAIjC,GAAG,CAAC,KAAK,EAAE,uBAAuB;IAIlC,OAAO,CAAC,KAAK,EAAE,uBAAuB;IAItC,QAAQ,CAAC,CAAC,SAAS,kBAAkB,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC;IAyB1F,YAAY,CAAC,CAAC,SAAS,kBAAkB,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC;IAU9F,cAAc,CAAC,KAAK,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,MAAM;IAU/D,aAAa,CAAC,iBAAiB,SAAI;IAiBnC,OAAO,CAAC,WAAW,SAAI;IA4BvB,cAAc,CAAC,MAAM,SAAI;IAWzB,UAAU,CACR,QAAQ,SAAM,EACd,EACE,gBAA0B,EAC1B,OAAW,EACX,gBAAsB,EACtB,iBAAuB,EACvB,iBAAwB,GACzB;;;;;;KAAK;IAiBR,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAmFxD"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Modifications © 2025 Horizontal Systems.
|
|
3
|
+
*/
|
|
4
|
+
import { FeeOption } from "../types";
|
|
5
|
+
export interface FeeMultiplierConfig {
|
|
6
|
+
[FeeOption.Average]: number;
|
|
7
|
+
[FeeOption.Fast]: number;
|
|
8
|
+
[FeeOption.Fastest]: number;
|
|
9
|
+
}
|
|
10
|
+
declare const DEFAULT_FEE_MULTIPLIERS: FeeMultiplierConfig;
|
|
11
|
+
/**
|
|
12
|
+
* Get fee multiplier for the given fee option.
|
|
13
|
+
* Checks USwapConfig for custom multipliers first, then falls back to defaults.
|
|
14
|
+
*
|
|
15
|
+
* @param feeOption - The fee option (Average, Fast, Fastest)
|
|
16
|
+
* @returns The fee multiplier as a number
|
|
17
|
+
*/
|
|
18
|
+
export declare function getFeeMultiplier(feeOption?: FeeOption): number;
|
|
19
|
+
/**
|
|
20
|
+
* Get fee multiplier as BigInt for EVM calculations.
|
|
21
|
+
* Returns numerator and denominator for precise BigInt arithmetic.
|
|
22
|
+
*
|
|
23
|
+
* @param feeOption - The fee option (Average, Fast, Fastest)
|
|
24
|
+
* @returns Object with numerator and denominator for BigInt calculations
|
|
25
|
+
*/
|
|
26
|
+
export declare function getFeeMultiplierAsBigInt(feeOption?: FeeOption): {
|
|
27
|
+
numerator: bigint;
|
|
28
|
+
denominator: bigint;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Apply fee multiplier to a BigInt value (for EVM chains).
|
|
32
|
+
*
|
|
33
|
+
* @param value - The base fee value as BigInt
|
|
34
|
+
* @param feeOption - The fee option (Average, Fast, Fastest)
|
|
35
|
+
* @returns The multiplied fee value as BigInt
|
|
36
|
+
*/
|
|
37
|
+
export declare function applyFeeMultiplierToBigInt(value: bigint, feeOption?: FeeOption): bigint;
|
|
38
|
+
/**
|
|
39
|
+
* Apply fee multiplier to a number value (for non-EVM chains).
|
|
40
|
+
*
|
|
41
|
+
* @param value - The base fee value as number
|
|
42
|
+
* @param feeOption - The fee option (Average, Fast, Fastest)
|
|
43
|
+
* @param floor - Whether to floor the result (default: false)
|
|
44
|
+
* @returns The multiplied fee value as number
|
|
45
|
+
*/
|
|
46
|
+
export declare function applyFeeMultiplier(value: number, feeOption?: FeeOption, floor?: boolean): number;
|
|
47
|
+
export { DEFAULT_FEE_MULTIPLIERS };
|
|
48
|
+
//# sourceMappingURL=feeMultiplier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feeMultiplier.d.ts","sourceRoot":"","sources":["../../../src/modules/feeMultiplier.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrC,MAAM,WAAW,mBAAmB;IAClC,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC5B,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACzB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,QAAA,MAAM,uBAAuB,EAAE,mBAI9B,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,SAA6B,GAAG,MAAM,CAQjF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,GAAE,SAA6B,GAAG;IAClF,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CASA;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,SAA6B,UAGjG;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,SAA6B,EAAE,KAAK,UAAQ,GAAG,MAAM,CAIjH;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Modifications © 2025 Horizontal Systems.
|
|
3
|
+
*/
|
|
4
|
+
export type RetryConfig = {
|
|
5
|
+
maxRetries?: number;
|
|
6
|
+
baseDelay?: number;
|
|
7
|
+
maxDelay?: number;
|
|
8
|
+
backoffMultiplier?: number;
|
|
9
|
+
};
|
|
10
|
+
export type RequestOptions = RequestInit & {
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated @V4 Use onSuccess instead - will be removed in next major
|
|
13
|
+
*/
|
|
14
|
+
responseHandler?: (response: any) => any;
|
|
15
|
+
json?: unknown;
|
|
16
|
+
onError?: (error: any) => any;
|
|
17
|
+
onSuccess?: (response: any) => any;
|
|
18
|
+
searchParams?: Record<string, string>;
|
|
19
|
+
dynamicHeader?: () => Record<string, string> | {};
|
|
20
|
+
retry?: RetryConfig;
|
|
21
|
+
timeoutMs?: number;
|
|
22
|
+
abortController?: AbortController;
|
|
23
|
+
};
|
|
24
|
+
export declare const RequestClient: {
|
|
25
|
+
extend: (extendOptions: RequestOptions) => {
|
|
26
|
+
extend: (newOptions: RequestOptions) => /*elided*/ any;
|
|
27
|
+
get: <T>(url: string, options?: RequestOptions) => Promise<T>;
|
|
28
|
+
post: <T>(url: string, options?: RequestOptions) => Promise<T>;
|
|
29
|
+
};
|
|
30
|
+
get: <T>(url: string, options?: RequestOptions) => Promise<T>;
|
|
31
|
+
post: <T>(url: string, options?: RequestOptions) => Promise<T>;
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=requestClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requestClient.d.ts","sourceRoot":"","sources":["../../../src/modules/requestClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,MAAM,WAAW,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACzC;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,CAAC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;IAC9B,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;IAClD,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAqFF,eAAO,MAAM,aAAa;4BACA,cAAc;6BACf,cAAc;cApEO,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;eAAzD,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;;UAAzD,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;WAAzD,CAAC,OAAO,MAAM,YAAW,cAAc,KAAQ,OAAO,CAAC,CAAC,CAAC;CA0EtG,CAAC"}
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Modifications © 2025 Horizontal Systems.
|
|
3
|
+
*/
|
|
4
|
+
import { type Chain } from "@tcswap/types";
|
|
5
|
+
import type { BalanceResponse, QuoteRequest, QuoteResponse, QuoteResponseRoute } from "../api";
|
|
6
|
+
import { WalletOption } from "../types";
|
|
7
|
+
import type { FeeMultiplierConfig } from "./feeMultiplier";
|
|
8
|
+
export type USwapConfigIntegrations = {
|
|
9
|
+
chainflip?: {
|
|
10
|
+
useSDKBroker?: boolean;
|
|
11
|
+
brokerUrl: string;
|
|
12
|
+
};
|
|
13
|
+
coinbase?: {
|
|
14
|
+
appName: string;
|
|
15
|
+
appLogoUrl?: string | null;
|
|
16
|
+
darkMode?: boolean;
|
|
17
|
+
linkAPIUrl?: string;
|
|
18
|
+
overrideIsMetaMask?: boolean;
|
|
19
|
+
overrideIsCoinbaseWallet?: boolean;
|
|
20
|
+
overrideIsCoinbaseBrowser?: boolean;
|
|
21
|
+
headlessMode?: boolean;
|
|
22
|
+
reloadOnDisconnect?: boolean;
|
|
23
|
+
};
|
|
24
|
+
nearWalletSelector?: {
|
|
25
|
+
contractId?: string;
|
|
26
|
+
};
|
|
27
|
+
trezor?: {
|
|
28
|
+
email: string;
|
|
29
|
+
appUrl: string;
|
|
30
|
+
};
|
|
31
|
+
keepKey?: {
|
|
32
|
+
name: string;
|
|
33
|
+
imageUrl: string;
|
|
34
|
+
basePath: string;
|
|
35
|
+
url: string;
|
|
36
|
+
};
|
|
37
|
+
radix: {
|
|
38
|
+
dAppDefinitionAddress: string;
|
|
39
|
+
applicationName: string;
|
|
40
|
+
applicationVersion: string;
|
|
41
|
+
network: {
|
|
42
|
+
networkId: number;
|
|
43
|
+
networkName: string;
|
|
44
|
+
dashboardBase: string;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
export type CustomApiEndpoints = {
|
|
49
|
+
getBalance: ({ chain, address }: {
|
|
50
|
+
chain: Chain;
|
|
51
|
+
address: string;
|
|
52
|
+
}) => Promise<BalanceResponse>;
|
|
53
|
+
getQuote: (json: QuoteRequest) => Promise<QuoteResponse>;
|
|
54
|
+
getRouteWithTx: (json: {
|
|
55
|
+
routeId: string;
|
|
56
|
+
}) => Promise<QuoteResponseRoute>;
|
|
57
|
+
};
|
|
58
|
+
declare const initialState: {
|
|
59
|
+
apiKeys: {
|
|
60
|
+
blockchair: string;
|
|
61
|
+
keepKey: string;
|
|
62
|
+
memoless: string;
|
|
63
|
+
passkeys: string;
|
|
64
|
+
uSwap: string;
|
|
65
|
+
walletConnectProjectId: string;
|
|
66
|
+
xaman: string;
|
|
67
|
+
};
|
|
68
|
+
chains: Chain[];
|
|
69
|
+
endpoints: CustomApiEndpoints;
|
|
70
|
+
envs: {
|
|
71
|
+
apiUrl: string;
|
|
72
|
+
devApiUrl: string;
|
|
73
|
+
experimental_apiKey: string | null;
|
|
74
|
+
experimental_apiUrlQuote: string | null;
|
|
75
|
+
experimental_apiUrlSwap: string | null;
|
|
76
|
+
isDev: boolean;
|
|
77
|
+
isStagenet: boolean;
|
|
78
|
+
memolessApiUrl: string;
|
|
79
|
+
};
|
|
80
|
+
feeMultipliers: FeeMultiplierConfig | undefined;
|
|
81
|
+
integrations: USwapConfigIntegrations;
|
|
82
|
+
requestOptions: {
|
|
83
|
+
retry: {
|
|
84
|
+
backoffMultiplier: number;
|
|
85
|
+
baseDelay: number;
|
|
86
|
+
maxDelay: number;
|
|
87
|
+
maxRetries: number;
|
|
88
|
+
};
|
|
89
|
+
timeoutMs: number;
|
|
90
|
+
};
|
|
91
|
+
rpcUrls: {
|
|
92
|
+
ARB: string[];
|
|
93
|
+
AURORA: string[];
|
|
94
|
+
AVAX: string[];
|
|
95
|
+
BASE: string[];
|
|
96
|
+
BERA: string[];
|
|
97
|
+
BSC: string[];
|
|
98
|
+
BTC: string[];
|
|
99
|
+
BCH: string[];
|
|
100
|
+
BOTANIX: string[];
|
|
101
|
+
ADA: string[];
|
|
102
|
+
FLIP: string[];
|
|
103
|
+
CORE: string[];
|
|
104
|
+
CORN: string[];
|
|
105
|
+
GAIA: string[];
|
|
106
|
+
CRO: string[];
|
|
107
|
+
DASH: string[];
|
|
108
|
+
DOGE: string[];
|
|
109
|
+
ETH: string[];
|
|
110
|
+
GNO: string[];
|
|
111
|
+
HARBOR: string[];
|
|
112
|
+
HYPEREVM: string[];
|
|
113
|
+
KUJI: string[];
|
|
114
|
+
LTC: string[];
|
|
115
|
+
MAYA: string[];
|
|
116
|
+
MEGAETH: string[];
|
|
117
|
+
MONAD: string[];
|
|
118
|
+
NEAR: string[];
|
|
119
|
+
NOBLE: string[];
|
|
120
|
+
OP: string[];
|
|
121
|
+
DOT: string[];
|
|
122
|
+
POL: string[];
|
|
123
|
+
XRD: string[];
|
|
124
|
+
XRP: string[];
|
|
125
|
+
SOL: string[];
|
|
126
|
+
SONIC: string[];
|
|
127
|
+
SUI: string[];
|
|
128
|
+
THOR: string[];
|
|
129
|
+
TON: string[];
|
|
130
|
+
TRON: string[];
|
|
131
|
+
UNI: string[];
|
|
132
|
+
XLAYER: string[];
|
|
133
|
+
ZEC: string[];
|
|
134
|
+
MAYA_HARBOR: string[];
|
|
135
|
+
THOR_STAGENET: string[];
|
|
136
|
+
MAYA_STAGENET: string[];
|
|
137
|
+
};
|
|
138
|
+
wallets: WalletOption[];
|
|
139
|
+
};
|
|
140
|
+
type USwapState = typeof initialState;
|
|
141
|
+
export type USwapConfigState = {
|
|
142
|
+
apiKeys?: Partial<USwapState["apiKeys"]>;
|
|
143
|
+
chains?: USwapState["chains"];
|
|
144
|
+
endpoints?: Partial<CustomApiEndpoints>;
|
|
145
|
+
envs?: Partial<USwapState["envs"]>;
|
|
146
|
+
integrations?: Partial<USwapConfigIntegrations>;
|
|
147
|
+
rpcUrls?: Partial<USwapState["rpcUrls"]>;
|
|
148
|
+
wallets?: USwapState["wallets"];
|
|
149
|
+
feeMultipliers?: FeeMultiplierConfig;
|
|
150
|
+
};
|
|
151
|
+
type USwapConfigStore = USwapState & {
|
|
152
|
+
setApiKey: (key: keyof USwapState["apiKeys"], apiKey: string) => void;
|
|
153
|
+
setConfig: (config: USwapConfigState) => void;
|
|
154
|
+
setEnv: <T extends keyof USwapState["envs"]>(key: T, value: USwapState["envs"][T]) => void;
|
|
155
|
+
setEndpoint: <T extends keyof CustomApiEndpoints>(key: T, endpoint: CustomApiEndpoints[T]) => void;
|
|
156
|
+
setRpcUrl: (chain: keyof USwapState["rpcUrls"], url: string[]) => void;
|
|
157
|
+
setRequestOptions: (options: Partial<USwapState["requestOptions"]>) => void;
|
|
158
|
+
setIntegrationConfig: (integration: keyof USwapState["integrations"], config: USwapConfigIntegrations[keyof USwapConfigIntegrations]) => void;
|
|
159
|
+
setFeeMultipliers: (multipliers: FeeMultiplierConfig) => void;
|
|
160
|
+
};
|
|
161
|
+
export declare const useUSwapStore: import("zustand").UseBoundStore<import("zustand").StoreApi<USwapConfigStore>>;
|
|
162
|
+
export declare const useUSwapConfig: () => {
|
|
163
|
+
apiKeys: {
|
|
164
|
+
blockchair: string;
|
|
165
|
+
keepKey: string;
|
|
166
|
+
memoless: string;
|
|
167
|
+
passkeys: string;
|
|
168
|
+
uSwap: string;
|
|
169
|
+
walletConnectProjectId: string;
|
|
170
|
+
xaman: string;
|
|
171
|
+
};
|
|
172
|
+
chains: Chain[];
|
|
173
|
+
endpoints: CustomApiEndpoints;
|
|
174
|
+
envs: {
|
|
175
|
+
apiUrl: string;
|
|
176
|
+
devApiUrl: string;
|
|
177
|
+
experimental_apiKey: string | null;
|
|
178
|
+
experimental_apiUrlQuote: string | null;
|
|
179
|
+
experimental_apiUrlSwap: string | null;
|
|
180
|
+
isDev: boolean;
|
|
181
|
+
isStagenet: boolean;
|
|
182
|
+
memolessApiUrl: string;
|
|
183
|
+
};
|
|
184
|
+
feeMultipliers: FeeMultiplierConfig | undefined;
|
|
185
|
+
integrations: USwapConfigIntegrations;
|
|
186
|
+
rpcUrls: {
|
|
187
|
+
ARB: string[];
|
|
188
|
+
AURORA: string[];
|
|
189
|
+
AVAX: string[];
|
|
190
|
+
BASE: string[];
|
|
191
|
+
BERA: string[];
|
|
192
|
+
BSC: string[];
|
|
193
|
+
BTC: string[];
|
|
194
|
+
BCH: string[];
|
|
195
|
+
BOTANIX: string[];
|
|
196
|
+
ADA: string[];
|
|
197
|
+
FLIP: string[];
|
|
198
|
+
CORE: string[];
|
|
199
|
+
CORN: string[];
|
|
200
|
+
GAIA: string[];
|
|
201
|
+
CRO: string[];
|
|
202
|
+
DASH: string[];
|
|
203
|
+
DOGE: string[];
|
|
204
|
+
ETH: string[];
|
|
205
|
+
GNO: string[];
|
|
206
|
+
HARBOR: string[];
|
|
207
|
+
HYPEREVM: string[];
|
|
208
|
+
KUJI: string[];
|
|
209
|
+
LTC: string[];
|
|
210
|
+
MAYA: string[];
|
|
211
|
+
MEGAETH: string[];
|
|
212
|
+
MONAD: string[];
|
|
213
|
+
NEAR: string[];
|
|
214
|
+
NOBLE: string[];
|
|
215
|
+
OP: string[];
|
|
216
|
+
DOT: string[];
|
|
217
|
+
POL: string[];
|
|
218
|
+
XRD: string[];
|
|
219
|
+
XRP: string[];
|
|
220
|
+
SOL: string[];
|
|
221
|
+
SONIC: string[];
|
|
222
|
+
SUI: string[];
|
|
223
|
+
THOR: string[];
|
|
224
|
+
TON: string[];
|
|
225
|
+
TRON: string[];
|
|
226
|
+
UNI: string[];
|
|
227
|
+
XLAYER: string[];
|
|
228
|
+
ZEC: string[];
|
|
229
|
+
MAYA_HARBOR: string[];
|
|
230
|
+
THOR_STAGENET: string[];
|
|
231
|
+
MAYA_STAGENET: string[];
|
|
232
|
+
};
|
|
233
|
+
wallets: WalletOption[];
|
|
234
|
+
};
|
|
235
|
+
export declare const USwapConfig: {
|
|
236
|
+
get: <T extends keyof USwapState>(key: T) => USwapConfigStore[T];
|
|
237
|
+
getState: () => USwapConfigStore;
|
|
238
|
+
reinitialize: () => void;
|
|
239
|
+
set: <T extends USwapConfigState>(config: T) => void;
|
|
240
|
+
setApiKey: <T extends keyof USwapState["apiKeys"]>(key: T, apiKey: string) => void;
|
|
241
|
+
setEndpoint: <T extends keyof CustomApiEndpoints>(key: T, endpoint: CustomApiEndpoints[T]) => void;
|
|
242
|
+
setEnv: <T extends keyof USwapState["envs"]>(key: T, value: USwapState["envs"][T]) => void;
|
|
243
|
+
setFeeMultipliers: (multipliers: FeeMultiplierConfig) => void;
|
|
244
|
+
setIntegrationConfig: <T extends keyof USwapState["integrations"]>(integration: T, config: USwapConfigIntegrations[T]) => void;
|
|
245
|
+
setRequestOptions: (options: USwapState["requestOptions"]) => void;
|
|
246
|
+
setRpcUrl: <T extends keyof USwapState["rpcUrls"]>(chain: T, urls: string[]) => void;
|
|
247
|
+
};
|
|
248
|
+
export {};
|
|
249
|
+
//# sourceMappingURL=uSwapConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uSwapConfig.d.ts","sourceRoot":"","sources":["../../../src/modules/uSwapConfig.ts"],"names":[],"mappings":"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"}
|