@cryptorubic/core 0.0.5 → 0.0.7
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/package.json +1 -1
- package/src/index.js +0 -1
- package/src/lib/blockchains/backend-labels.js +0 -1
- package/src/lib/blockchains/blockchain-id.js +0 -1
- package/src/lib/blockchains/blockchain-name.js +0 -1
- package/src/lib/blockchains/blockchains-info.js +0 -1
- package/src/lib/blockchains/chain-type-storage.js +0 -1
- package/src/lib/blockchains/chain-type.js +0 -1
- package/src/lib/blockchains/wrapped-addresses.js +0 -1
- package/src/lib/models/api/claim-request.interface.d.ts +5 -0
- package/src/lib/models/api/claim-request.interface.js +2 -0
- package/src/lib/models/api/cross-chain-provider.interface.d.ts +12 -0
- package/src/lib/models/api/cross-chain-provider.interface.js +2 -0
- package/src/lib/models/api/error.interface.d.ts +14 -0
- package/src/lib/models/api/error.interface.js +2 -0
- package/src/lib/models/api/estimates.interface.d.ts +11 -0
- package/src/lib/models/api/estimates.interface.js +2 -0
- package/src/lib/models/api/failed-quote.interface.d.ts +16 -0
- package/src/lib/models/api/failed-quote.interface.js +2 -0
- package/src/lib/models/api/fee-info.d.ts +19 -0
- package/src/lib/models/api/fee-info.js +2 -0
- package/src/lib/models/api/fees.interface.d.ts +14 -0
- package/src/lib/models/api/fees.interface.js +2 -0
- package/src/lib/models/api/foreign-blacklist.interface.d.ts +4 -0
- package/src/lib/models/api/foreign-blacklist.interface.js +6 -0
- package/src/lib/models/api/gas-fee.interface.d.ts +6 -0
- package/src/lib/models/api/gas-fee.interface.js +2 -0
- package/src/lib/models/api/on-chain-provider.interface.d.ts +12 -0
- package/src/lib/models/api/on-chain-provider.interface.js +2 -0
- package/src/lib/models/api/percent-fee.interface.d.ts +11 -0
- package/src/lib/models/api/percent-fee.interface.js +2 -0
- package/src/lib/models/api/protocol-fee.interface.d.ts +5 -0
- package/src/lib/models/api/protocol-fee.interface.js +2 -0
- package/src/lib/models/api/provider-chain.interface.d.ts +11 -0
- package/src/lib/models/api/provider-chain.interface.js +2 -0
- package/src/lib/models/api/provider-fee.interface.d.ts +5 -0
- package/src/lib/models/api/provider-fee.interface.js +2 -0
- package/src/lib/models/api/quote-all.interface.d.ts +17 -0
- package/src/lib/models/api/quote-all.interface.js +2 -0
- package/src/lib/models/api/quote-options.interface.d.ts +14 -0
- package/src/lib/models/api/quote-options.interface.js +2 -0
- package/src/lib/models/api/quote-request.interface.d.ts +5 -0
- package/src/lib/models/api/quote-request.interface.js +2 -0
- package/src/lib/models/api/quote-response.interface.d.ts +46 -0
- package/src/lib/models/api/quote-response.interface.js +2 -0
- package/src/lib/models/api/quote-trade.interface.d.ts +8 -0
- package/src/lib/models/api/quote-trade.interface.js +2 -0
- package/src/lib/models/api/routing.interface.d.ts +7 -0
- package/src/lib/models/api/routing.interface.js +2 -0
- package/src/lib/models/api/swap-best-request.interface.d.ts +3 -0
- package/src/lib/models/api/swap-best-request.interface.js +2 -0
- package/src/lib/models/api/swap-request.interface.d.ts +8 -0
- package/src/lib/models/api/swap-request.interface.js +2 -0
- package/src/lib/models/api/swap-response.interface.d.ts +23 -0
- package/src/lib/models/api/swap-response.interface.js +2 -0
- package/src/lib/models/api/swap-type.d.ts +1 -0
- package/src/lib/models/api/swap-type.js +2 -0
- package/src/lib/models/api/token-amount.interface.d.ts +4 -0
- package/src/lib/models/api/token-amount.interface.js +2 -0
- package/src/lib/models/api/token.inerface.d.ts +7 -0
- package/src/lib/models/api/token.inerface.js +2 -0
- package/src/lib/models/api/ton-transaction.interface.d.ts +6 -0
- package/src/lib/models/api/ton-transaction.interface.js +2 -0
- package/src/lib/models/api/transaction.interface.d.ts +11 -0
- package/src/lib/models/api/transaction.interface.js +2 -0
- package/src/lib/models/api/unique-provider-info.interface.d.ts +4 -0
- package/src/lib/models/api/unique-provider-info.interface.js +2 -0
- package/src/lib/models/api/ws-quote-error.interface.d.ts +20 -0
- package/src/lib/models/api/ws-quote-error.interface.js +2 -0
- package/src/lib/models/api/ws-quote-request.interface.d.ts +4 -0
- package/src/lib/models/api/ws-quote-request.interface.js +2 -0
- package/src/lib/models/api/ws-quote-response.interface.d.ts +20 -0
- package/src/lib/models/api/ws-quote-response.interface.js +2 -0
- package/src/lib/models/custom-logger.js +0 -1
- package/src/lib/models/http-client.js +0 -1
- package/src/lib/models/quote-all-response.js +0 -1
- package/src/lib/models/quote-best-response.js +0 -1
- package/src/lib/models/quote-request.js +0 -1
- package/src/lib/models/route.js +0 -1
- package/src/lib/models/swap-request.js +0 -1
- package/src/lib/models/swap-response.js +0 -1
- package/src/lib/providers/cross-chain-trade-type.js +0 -1
- package/src/lib/providers/from-backend-cross-chain-providers.js +0 -1
- package/src/lib/providers/on-chain-trade-type.js +0 -1
- package/src/lib/providers/to-backend-cross-chain-providers.js +0 -1
- package/src/lib/tokens/constants/native-token-list.js +0 -1
- package/src/lib/tokens/constants/wrapped-native-tokens.js +0 -1
- package/src/lib/tokens/price-token-amount-struct.js +0 -1
- package/src/lib/tokens/price-token-amount.js +0 -1
- package/src/lib/tokens/price-token-struct.js +0 -1
- package/src/lib/tokens/price-token.js +0 -1
- package/src/lib/tokens/token-amount-struct.js +0 -1
- package/src/lib/tokens/token-amount.js +0 -1
- package/src/lib/tokens/token-base-struct.js +0 -1
- package/src/lib/tokens/token-struct.js +0 -1
- package/src/lib/tokens/token.js +0 -1
- package/src/lib/utils/cache.decorator.js +0 -1
- package/src/lib/utils/compare-addresses.js +0 -1
- package/src/lib/utils/models/cache-config.js +0 -1
- package/src/lib/utils/models/conditional-result.js +0 -1
- package/src/lib/utils/models/infinite-array.js +0 -1
- package/src/lib/utils/object.js +0 -1
- package/src/index.js.map +0 -1
- package/src/lib/blockchains/backend-labels.js.map +0 -1
- package/src/lib/blockchains/blockchain-id.js.map +0 -1
- package/src/lib/blockchains/blockchain-name.js.map +0 -1
- package/src/lib/blockchains/blockchains-info.js.map +0 -1
- package/src/lib/blockchains/chain-type-storage.js.map +0 -1
- package/src/lib/blockchains/chain-type.js.map +0 -1
- package/src/lib/blockchains/wrapped-addresses.js.map +0 -1
- package/src/lib/models/custom-logger.js.map +0 -1
- package/src/lib/models/http-client.js.map +0 -1
- package/src/lib/models/quote-all-response.js.map +0 -1
- package/src/lib/models/quote-best-response.js.map +0 -1
- package/src/lib/models/quote-request.js.map +0 -1
- package/src/lib/models/route.js.map +0 -1
- package/src/lib/models/swap-request.js.map +0 -1
- package/src/lib/models/swap-response.js.map +0 -1
- package/src/lib/providers/cross-chain-trade-type.js.map +0 -1
- package/src/lib/providers/from-backend-cross-chain-providers.js.map +0 -1
- package/src/lib/providers/on-chain-trade-type.js.map +0 -1
- package/src/lib/providers/to-backend-cross-chain-providers.js.map +0 -1
- package/src/lib/tokens/constants/native-token-list.js.map +0 -1
- package/src/lib/tokens/constants/wrapped-native-tokens.js.map +0 -1
- package/src/lib/tokens/price-token-amount-struct.js.map +0 -1
- package/src/lib/tokens/price-token-amount.js.map +0 -1
- package/src/lib/tokens/price-token-struct.js.map +0 -1
- package/src/lib/tokens/price-token.js.map +0 -1
- package/src/lib/tokens/token-amount-struct.js.map +0 -1
- package/src/lib/tokens/token-amount.js.map +0 -1
- package/src/lib/tokens/token-base-struct.js.map +0 -1
- package/src/lib/tokens/token-struct.js.map +0 -1
- package/src/lib/tokens/token.js.map +0 -1
- package/src/lib/utils/cache.decorator.js.map +0 -1
- package/src/lib/utils/compare-addresses.js.map +0 -1
- package/src/lib/utils/models/cache-config.js.map +0 -1
- package/src/lib/utils/models/conditional-result.js.map +0 -1
- package/src/lib/utils/models/infinite-array.js.map +0 -1
- package/src/lib/utils/object.js.map +0 -1
package/package.json
CHANGED
package/src/index.js
CHANGED
|
@@ -42,4 +42,3 @@ tslib_1.__exportStar(require("./lib/utils/compare-addresses"), exports);
|
|
|
42
42
|
tslib_1.__exportStar(require("./lib/utils/models/infinite-array"), exports);
|
|
43
43
|
tslib_1.__exportStar(require("./lib/utils/models/cache-config"), exports);
|
|
44
44
|
tslib_1.__exportStar(require("./lib/utils/models/conditional-result"), exports);
|
|
45
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ProviderChainInterface } from './provider-chain.interface';
|
|
2
|
+
import { CrossChainTradeType } from '@cryptorubic/core';
|
|
3
|
+
export interface CrossChainProviderInterface {
|
|
4
|
+
/**
|
|
5
|
+
* Cross chain provider name
|
|
6
|
+
*/
|
|
7
|
+
name: CrossChainTradeType;
|
|
8
|
+
/**
|
|
9
|
+
* Chains supported by the provider
|
|
10
|
+
*/
|
|
11
|
+
chains: ProviderChainInterface[];
|
|
12
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface EstimatesInterface {
|
|
2
|
+
destinationTokenAmount: string;
|
|
3
|
+
destinationTokenMinAmount: string;
|
|
4
|
+
destinationWeiAmount: string;
|
|
5
|
+
destinationWeiMinAmount: string;
|
|
6
|
+
destinationUsdAmount?: number;
|
|
7
|
+
destinationUsdMinAmount?: number;
|
|
8
|
+
durationInMinutes: number;
|
|
9
|
+
slippage: number;
|
|
10
|
+
priceImpact: number | null;
|
|
11
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ErrorInterface } from './error.interface';
|
|
2
|
+
import { CrossChainTradeType, OnChainTradeType } from '@cryptorubic/core';
|
|
3
|
+
export interface FailedQuoteInterface {
|
|
4
|
+
/**
|
|
5
|
+
* Type of the trade
|
|
6
|
+
*/
|
|
7
|
+
providerType: CrossChainTradeType | OnChainTradeType;
|
|
8
|
+
/**
|
|
9
|
+
* Error data
|
|
10
|
+
*/
|
|
11
|
+
data: ErrorInterface;
|
|
12
|
+
/**
|
|
13
|
+
* Inner id
|
|
14
|
+
*/
|
|
15
|
+
id: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import BigNumber from 'bignumber.js';
|
|
2
|
+
import { PriceToken } from '@cryptorubic/core';
|
|
3
|
+
export interface FeeInfo {
|
|
4
|
+
rubicProxy: {
|
|
5
|
+
fixedFee: FixedFee;
|
|
6
|
+
platformFee: PlatformFee;
|
|
7
|
+
} | null;
|
|
8
|
+
provider: {
|
|
9
|
+
fixedFee: FixedFee;
|
|
10
|
+
} | null;
|
|
11
|
+
}
|
|
12
|
+
export interface FixedFee {
|
|
13
|
+
amount: BigNumber;
|
|
14
|
+
token: PriceToken;
|
|
15
|
+
}
|
|
16
|
+
export interface PlatformFee {
|
|
17
|
+
percent: number;
|
|
18
|
+
token: PriceToken;
|
|
19
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { GasFeeInterface } from './gas-fee.interface';
|
|
2
|
+
import { ProtocolFeeInterface } from './protocol-fee.interface';
|
|
3
|
+
import { ProviderFeeInterface } from './provider-fee.interface';
|
|
4
|
+
import { TokenInerface } from './token.inerface';
|
|
5
|
+
import { PercentFeeInterface } from './percent-fee.interface';
|
|
6
|
+
export interface FeesInterface {
|
|
7
|
+
gasTokenFees: {
|
|
8
|
+
gas: GasFeeInterface;
|
|
9
|
+
protocol: ProtocolFeeInterface;
|
|
10
|
+
provider: ProviderFeeInterface;
|
|
11
|
+
nativeToken: TokenInerface;
|
|
12
|
+
};
|
|
13
|
+
percentFees: PercentFeeInterface;
|
|
14
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ProviderChainInterface } from './provider-chain.interface';
|
|
2
|
+
import { OnChainTradeType } from '@cryptorubic/core';
|
|
3
|
+
export interface OnChainProviderInterface {
|
|
4
|
+
/**
|
|
5
|
+
* On chain provider name
|
|
6
|
+
*/
|
|
7
|
+
name: OnChainTradeType;
|
|
8
|
+
/**
|
|
9
|
+
* Chains supported by the provider
|
|
10
|
+
*/
|
|
11
|
+
chains: ProviderChainInterface[];
|
|
12
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { QuoteRequestInterface } from './quote-request.interface';
|
|
2
|
+
import { QuoteResponseInterface } from './quote-response.interface';
|
|
3
|
+
import { FailedQuoteInterface } from './failed-quote.interface';
|
|
4
|
+
export interface QuoteAllInterface {
|
|
5
|
+
/**
|
|
6
|
+
* Quote response data
|
|
7
|
+
*/
|
|
8
|
+
quote: QuoteRequestInterface;
|
|
9
|
+
/**
|
|
10
|
+
* Successful routes
|
|
11
|
+
*/
|
|
12
|
+
routes: Omit<QuoteResponseInterface, 'quote'>[];
|
|
13
|
+
/**
|
|
14
|
+
* Failed routes
|
|
15
|
+
*/
|
|
16
|
+
failed?: Omit<FailedQuoteInterface, 'quote'>[];
|
|
17
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ForeignBlacklistInterface } from './foreign-blacklist.interface';
|
|
2
|
+
import { CrossChainTradeType, OnChainTradeType } from '@cryptorubic/core';
|
|
3
|
+
export interface QuoteOptionsInterface {
|
|
4
|
+
integratorAddress?: string;
|
|
5
|
+
fromAddress?: string;
|
|
6
|
+
slippage?: number;
|
|
7
|
+
receiver: string | undefined;
|
|
8
|
+
nativeBlacklist?: (CrossChainTradeType | OnChainTradeType)[];
|
|
9
|
+
preferredProvider?: CrossChainTradeType | OnChainTradeType;
|
|
10
|
+
foreignBlacklist?: ForeignBlacklistInterface;
|
|
11
|
+
timeout?: number;
|
|
12
|
+
enableTestnets?: boolean;
|
|
13
|
+
enableChecks?: boolean;
|
|
14
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { EstimatesInterface } from './estimates.interface';
|
|
2
|
+
import { QuoteRequestInterface } from './quote-request.interface';
|
|
3
|
+
import { RoutingInterface } from './routing.interface';
|
|
4
|
+
import { SwapType } from './swap-type';
|
|
5
|
+
import { TransactionInterface } from './transaction.interface';
|
|
6
|
+
import { ErrorInterface } from './error.interface';
|
|
7
|
+
import { CrossChainTradeType, OnChainTradeType } from '@cryptorubic/core';
|
|
8
|
+
import { FeesInterface } from './fees.interface';
|
|
9
|
+
export interface QuoteResponseInterface {
|
|
10
|
+
/**
|
|
11
|
+
* Trade identifier
|
|
12
|
+
*/
|
|
13
|
+
id: string;
|
|
14
|
+
/**
|
|
15
|
+
* Quote response data
|
|
16
|
+
*/
|
|
17
|
+
quote: QuoteRequestInterface;
|
|
18
|
+
/**
|
|
19
|
+
* Swap type
|
|
20
|
+
*/
|
|
21
|
+
swapType: SwapType;
|
|
22
|
+
/**
|
|
23
|
+
* Provider type
|
|
24
|
+
*/
|
|
25
|
+
providerType: CrossChainTradeType | OnChainTradeType;
|
|
26
|
+
/**
|
|
27
|
+
* Estimates
|
|
28
|
+
*/
|
|
29
|
+
estimate: EstimatesInterface;
|
|
30
|
+
/**
|
|
31
|
+
* Fees
|
|
32
|
+
*/
|
|
33
|
+
fees: FeesInterface;
|
|
34
|
+
/**
|
|
35
|
+
* Routing data
|
|
36
|
+
*/
|
|
37
|
+
routing: RoutingInterface[];
|
|
38
|
+
/**
|
|
39
|
+
* Transaction data
|
|
40
|
+
*/
|
|
41
|
+
transaction: TransactionInterface;
|
|
42
|
+
/**
|
|
43
|
+
* Specific info about quote params provider
|
|
44
|
+
*/
|
|
45
|
+
warnings: ErrorInterface[];
|
|
46
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { QuoteRequestInterface } from './quote-request.interface';
|
|
2
|
+
export interface SwapRequestInterface extends Omit<QuoteRequestInterface, 'fromAddress'> {
|
|
3
|
+
id: string;
|
|
4
|
+
enableChecks?: boolean;
|
|
5
|
+
fromAddress: string;
|
|
6
|
+
receiver: string | undefined;
|
|
7
|
+
signature?: string;
|
|
8
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { EstimatesInterface } from './estimates.interface';
|
|
2
|
+
import { SwapRequestInterface } from './swap-request.interface';
|
|
3
|
+
import { TransactionInterface } from './transaction.interface';
|
|
4
|
+
import { ErrorInterface } from './error.interface';
|
|
5
|
+
import { RoutingInterface } from './routing.interface';
|
|
6
|
+
import { FeesInterface } from './fees.interface';
|
|
7
|
+
import { CrossChainTradeType, OnChainTradeType } from '@cryptorubic/core';
|
|
8
|
+
import { SwapType } from './swap-type';
|
|
9
|
+
import { UniqueProviderInfoInterface } from "./unique-provider-info.interface";
|
|
10
|
+
export interface SwapResponseInterface {
|
|
11
|
+
quote: SwapRequestInterface;
|
|
12
|
+
estimate: EstimatesInterface;
|
|
13
|
+
fees: FeesInterface;
|
|
14
|
+
transaction: TransactionInterface;
|
|
15
|
+
uniqueInfo?: UniqueProviderInfoInterface;
|
|
16
|
+
/**
|
|
17
|
+
* Specific info about quote params provide
|
|
18
|
+
*/
|
|
19
|
+
warnings: ErrorInterface[];
|
|
20
|
+
routing: RoutingInterface[];
|
|
21
|
+
providerType: CrossChainTradeType | OnChainTradeType;
|
|
22
|
+
swapType: SwapType;
|
|
23
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type SwapType = 'cross-chain' | 'on-chain';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TonEncodedConfigInterface } from "./ton-transaction.interface";
|
|
2
|
+
export interface TransactionInterface {
|
|
3
|
+
approvalAddress?: string;
|
|
4
|
+
data?: string;
|
|
5
|
+
to?: string;
|
|
6
|
+
value?: string;
|
|
7
|
+
depositAddress?: string;
|
|
8
|
+
extraFields?: object;
|
|
9
|
+
feeLimit?: number;
|
|
10
|
+
tonMessages?: TonEncodedConfigInterface[];
|
|
11
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ErrorInterface } from './error.interface';
|
|
2
|
+
import { CrossChainTradeType, OnChainTradeType } from '@cryptorubic/core';
|
|
3
|
+
export interface WsQuoteErrorInterface {
|
|
4
|
+
/**
|
|
5
|
+
* Total amount of trades
|
|
6
|
+
*/
|
|
7
|
+
total: number;
|
|
8
|
+
/**
|
|
9
|
+
* Amount of calculated trades
|
|
10
|
+
*/
|
|
11
|
+
calculated: number;
|
|
12
|
+
/**
|
|
13
|
+
* Trade data
|
|
14
|
+
*/
|
|
15
|
+
data: ErrorInterface;
|
|
16
|
+
/**
|
|
17
|
+
* Trade type
|
|
18
|
+
*/
|
|
19
|
+
type: CrossChainTradeType | OnChainTradeType | null;
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { QuoteResponseInterface } from './quote-response.interface';
|
|
2
|
+
import { CrossChainTradeType, OnChainTradeType } from '@cryptorubic/core';
|
|
3
|
+
export interface WsQuoteResponseInterface {
|
|
4
|
+
/**
|
|
5
|
+
* Total amount of trades
|
|
6
|
+
*/
|
|
7
|
+
total: number;
|
|
8
|
+
/**
|
|
9
|
+
* Amount of calculated trades
|
|
10
|
+
*/
|
|
11
|
+
calculated: number;
|
|
12
|
+
/**
|
|
13
|
+
* Trade data
|
|
14
|
+
*/
|
|
15
|
+
trade: QuoteResponseInterface | null;
|
|
16
|
+
/**
|
|
17
|
+
* Trade type
|
|
18
|
+
*/
|
|
19
|
+
type: CrossChainTradeType | OnChainTradeType | null;
|
|
20
|
+
}
|