New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@aarc-dev/core-viem

Package Overview
Dependencies
Maintainers
0
Versions
49
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aarc-dev/core-viem - npm Package Compare versions

Comparing version 0.0.9 to 0.0.10

23

dist/src/AarcCore.d.ts

@@ -1,5 +0,4 @@

import { BalancesData, BalancesResponse, CheckoutOnrampParams, DepositDto, DepositOnRampParams, ExecuteMigrationForwardDto, ExecuteMigrationGaslessDto, ExecuteMigrationNonGaslessDto, IsTokenSupportedResponse, RelayedTxListResponse, SupportedChainInfo, SupportedTokensResponse, TrxStatusResponse } from "./utils/CoreTypes";
import { BalancesData, BalancesResponse, CheckoutDto, CheckoutOnrampParams, CheckoutRouteDto, DepositCalldataResponse, DepositDto, DepositOnRampParams, DepositRouteDto, ExecuteMigrationForwardDto, ExecuteMigrationGaslessDto, ExecuteMigrationNonGaslessDto, IsTokenSupportedResponse, MoonpayOnRampParams, PriceData, RelayedTxListResponse, SupportedChainInfo, SupportedTokensResponse, TrxStatusResponse } from "./utils/CoreTypes";
export declare class AarcCore {
apiKey: string;
private onRampClient;
constructor(apiKey: string, isDebug?: boolean);

@@ -13,3 +12,4 @@ executeMigrationGasless(executeMigrationGaslessDto: ExecuteMigrationGaslessDto): Promise<RelayedTxListResponse[]>;

fetchBalances(eoaAddress: string, chainId: number, fetchBalancesOnly?: boolean, tokenAddresses?: string[]): Promise<BalancesResponse>;
fetchMultiChainBalances(eoaAddress: string, extendedBalances?: boolean): Promise<BalancesData>;
fetchMultiChainBalances(eoaAddress: string, extendedBalances?: boolean, destinationTokenAmount?: string, destinationTokenSymbol?: string): Promise<BalancesData>;
fetchTokenPrice(tokenSymbol: string): Promise<PriceData>;
isTokenSupported(chainId: number, tokenAddress: string): Promise<IsTokenSupportedResponse>;

@@ -20,16 +20,11 @@ getSupportedTokens(chainId: number): Promise<SupportedTokensResponse>;

performDeposit(depositDto: DepositDto): Promise<RelayedTxListResponse[]>;
performCheckout(depositDto: CheckoutDto): Promise<RelayedTxListResponse[]>;
getDepositRoute(depositRouteDto: DepositRouteDto): Promise<DepositCalldataResponse>;
getCheckoutRoute(checkoutRouteDto: CheckoutRouteDto): Promise<import("./utils").CheckoutCalldataResponse>;
executeMigrationForward(executeMigrationForwardDto: ExecuteMigrationForwardDto): Promise<RelayedTxListResponse[]>;
getTransactionStatus(taskId: string): Promise<TrxStatusResponse>;
get generateDepositOnrampUrl(): (onrampData: {
fiatCurrencyCode: string;
fiatAmount: number;
defaultCryptoCurrencyCode?: string;
networks?: string[];
defaultNetwork?: string;
} & DepositOnRampParams) => Promise<string | Error>;
get generateCheckoutOnrampUrl(): (onrampData: {
fiatCurrencyCode: string;
fiatAmount: number;
} & CheckoutOnrampParams) => Promise<string | Error>;
generateDepositOnrampUrl(onrampData: DepositOnRampParams): Promise<string | Error>;
generateCheckoutOnrampUrl(onrampData: CheckoutOnrampParams): Promise<string | Error>;
generateMoonpayOnrampUrl(onrampData: MoonpayOnRampParams): Promise<string | Error>;
}
export default AarcCore;

@@ -9,8 +9,7 @@ "use strict";

const Permit2BatchTransfer_abi_1 = require("./utils/abis/Permit2BatchTransfer.abi");
const utils_1 = require("./utils");
const viem_1 = require("viem");
const on_ramp_1 = require("./on-ramp");
class AarcCore {
constructor(apiKey, isDebug = false) {
this.apiKey = apiKey;
this.onRampClient = new on_ramp_1.OnRampClient(apiKey);
Logger_1.Logger.isDebug = isDebug;

@@ -41,3 +40,3 @@ }

const { domain, types, value } = eip712Struct;
domain.version = "1";
domain.version = '1';
// @ts-ignore

@@ -50,3 +49,3 @@ const permitTransferFrom = types.PermitTransferFrom;

domain,
primaryType: "Permit",
primaryType: 'Permit',
types,

@@ -62,3 +61,3 @@ message: value,

const { domain, types, value } = eip712Struct;
domain.version = "1";
domain.version = '1';
// @ts-ignore

@@ -72,4 +71,4 @@ const permitTransferFrom = types.PermitTransferFrom;

types,
primaryType: "Permit",
message: value,
primaryType: 'Permit',
message: value
});

@@ -90,3 +89,3 @@ const dataSet = JSON.parse(element.data);

domain,
primaryType: "Permit",
primaryType: 'Permit',
types,

@@ -104,9 +103,9 @@ message: value,

trx = await senderSigner.sendTransaction({
chain: undefined,
chain: senderSigner.chain,
account,
to: `0x${element.target.split("0x")[1]}`,
to: `0x${element.target.split('0x')[1]}`,
value: element.txType === CoreTypes_1.PERMIT_TX_TYPES.NATIVE
? valueToSend
: BigInt(0),
data: `0x${element.data.split("0x")[1]}`,
data: `0x${element.data.split('0x')[1]}`,
});

@@ -125,7 +124,3 @@ executionResultSet.push({

: "transfer success",
txHash: trx
? typeof trx === "string"
? trx
: ""
: "",
txHash: trx ? (typeof trx === "string" ? trx : "") : "",
});

@@ -171,5 +166,8 @@ }

}
async fetchMultiChainBalances(eoaAddress, extendedBalances = false) {
async fetchMultiChainBalances(eoaAddress, extendedBalances = false, destinationTokenAmount, destinationTokenSymbol) {
return await (0, Helper_1.getMultiChainBalances)(this.apiKey, eoaAddress, extendedBalances);
}
async fetchTokenPrice(tokenSymbol) {
return await (0, Helper_1.getTokenPrice)(this.apiKey, tokenSymbol);
}
async isTokenSupported(chainId, tokenAddress) {

@@ -219,3 +217,3 @@ return await (0, Helper_1.IsTokenSupported)(this.apiKey, chainId, tokenAddress);

const dataSet = JSON.parse(element.data);
domain.version = "1";
domain.version = '1';
// @ts-ignore

@@ -228,3 +226,3 @@ const permitTransferFrom = types.PermitBatchTransferFrom;

domain,
primaryType: "Permit",
primaryType: 'Permit',
types,

@@ -242,3 +240,3 @@ message: value,

abi: Permit2BatchTransfer_abi_1.PERMIT2_BATCH_TRANSFER_ABI,
client: { wallet: senderSigner },
client: { wallet: senderSigner }
});

@@ -251,7 +249,3 @@ const trx = await permit2BatchContract.write.permitTransferFrom(dataSet.permitBatchTransferFrom, dataSet.tokenPermissions, dataSet.owner, signature);

status: "transaction sent",
txHash: trx
? typeof trx === "string"
? trx
: ""
: "",
txHash: trx ? (typeof trx === "string" ? trx : "") : "",
});

@@ -275,9 +269,9 @@ }

trx = await senderSigner.sendTransaction({
chain: undefined,
chain: senderSigner.chain,
account,
to: `0x${element.target.split("0x")[1]}`,
to: `0x${element.target.split('0x')[1]}`,
value: element.txType === CoreTypes_1.PERMIT_TX_TYPES.NATIVE
? valueToSend
: BigInt(0),
data: `0x${element.data.split("0x")[1]}`,
data: `0x${element.data.split('0x')[1]}`,
});

@@ -330,7 +324,7 @@ executionResultSet.push({

if (networkId && networkId !== depositDto.fromChainId) {
throw new Error("Invalid signer, conflicting chainId");
throw new Error('Invalid signer, conflicting chainId');
}
const depositResonse = await (0, Helper_1.generateDepositCallData)(depositCallDataDto, this.apiKey);
const approvalTxs = depositResonse.data.approvalTxs;
const executionTxs = depositResonse.data.executionTxs;
const depositResponse = await (0, Helper_1.generateDepositCallData)(depositCallDataDto, this.apiKey);
const approvalTxs = depositResponse.data.approvalTxs;
const executionTxs = depositResponse.data.executionTxs;
for (let index = 0; index < approvalTxs.length; index++) {

@@ -341,6 +335,6 @@ const element = approvalTxs[index];

trx = await senderSigner.sendTransaction({
chain: undefined,
chain: senderSigner.chain,
account,
to: `0x${element.approvalTokenAddress.split("0x")[1]}`,
data: `0x${element.callData.split("0x")[1]}`,
to: `0x${element.approvalTokenAddress.split('0x')[1]}`,
data: `0x${element.callData.split('0x')[1]}`,
value: BigInt(0),

@@ -371,8 +365,6 @@ gasLimit: (_a = element.gasLimit) !== null && _a !== void 0 ? _a : undefined,

trx = await senderSigner.sendTransaction({
chain: undefined,
chain: senderSigner.chain,
account,
to: `0x${element.txTarget.split("0x")[1]}`,
data: element.txData
? `0x${element.txData.split("0x")[1]}`
: "0x",
to: `0x${element.txTarget.split('0x')[1]}`,
data: element.txData ? `0x${element.txData.split('0x')[1]}` : '0x',
value: BigInt(element.value),

@@ -412,2 +404,103 @@ gasLimit: (_b = element.gasLimit) !== null && _b !== void 0 ? _b : undefined,

}
async performCheckout(depositDto) {
var _a, _b;
let callDataResultSet = [];
const { senderSigner, account } = depositDto;
let networkId = await senderSigner.getChainId();
if (networkId && networkId !== depositDto.fromChainId) {
throw new Error('Invalid signer, conflicting chainId');
}
const checkoutResponse = await (0, Helper_1.generateCheckoutCallData)(depositDto, this.apiKey);
const approvalTxs = checkoutResponse.data.approvalTxs;
const executionTxs = checkoutResponse.data.executionTxs;
for (let index = 0; index < approvalTxs.length; index++) {
const element = approvalTxs[index];
let trx;
try {
trx = await senderSigner.sendTransaction({
chain: senderSigner.chain,
account,
to: `0x${element.approvalTokenAddress.split('0x')[1]}`,
data: `0x${element.callData.split('0x')[1]}`,
value: BigInt(0),
gasLimit: (_a = element.gasLimit) !== null && _a !== void 0 ? _a : undefined,
});
callDataResultSet.push({
tokenInfo: [
{
tokenAddress: element.approvalTokenAddress,
amount: BigInt(element.minimumApprovalAmount),
},
],
type: CoreTypes_1.PERMIT_TX_TYPES.ERC20_APPROVAL,
taskId: "",
status: "Tx Sent",
txHash: trx,
});
}
catch (error) {
throw new Error(error);
}
}
for (let index = 0; index < executionTxs.length; index++) {
const element = executionTxs[index];
let trx;
try {
trx = await senderSigner.sendTransaction({
chain: senderSigner.chain,
account,
to: `0x${element.txTarget.split('0x')[1]}`,
data: element.txData ? `0x${element.txData.split('0x')[1]}` : '0x',
value: BigInt(element.value),
gasLimit: (_b = element.gasLimit) !== null && _b !== void 0 ? _b : undefined,
});
callDataResultSet.push({
tokenInfo: [
{
tokenAddress: depositDto.fromTokenAddress,
amount: BigInt(depositDto.toAmount),
},
],
type: CoreTypes_1.PERMIT_TX_TYPES.CHECKOUT,
taskId: "",
status: "Tx Sent",
txHash: trx ? (typeof trx === "string" ? trx : "") : "",
});
}
catch (error) {
Logger_1.Logger.error("Error:", error);
callDataResultSet.push({
tokenInfo: [
{
tokenAddress: depositDto.fromTokenAddress,
amount: BigInt(depositDto.toAmount),
},
],
type: CoreTypes_1.PERMIT_TX_TYPES.CHECKOUT,
taskId: "",
status: error.toString(),
txHash: "",
});
}
}
return callDataResultSet;
}
async getDepositRoute(depositRouteDto) {
try {
const routes = await (0, Helper_1.generateDepositCallData)(depositRouteDto, this.apiKey);
return routes;
}
catch (error) {
throw new Error(error);
}
}
async getCheckoutRoute(checkoutRouteDto) {
try {
const route = await (0, Helper_1.generateCheckoutCallData)(checkoutRouteDto, this.apiKey);
return route;
}
catch (error) {
throw new Error(error);
}
}
async executeMigrationForward(executeMigrationForwardDto) {

@@ -444,3 +537,3 @@ const response = [];

domain,
primaryType: "Permit",
primaryType: 'Permit',
types,

@@ -463,3 +556,3 @@ message: value,

domain,
primaryType: "Permit",
primaryType: 'Permit',
types,

@@ -512,8 +605,54 @@ message: value,

}
get generateDepositOnrampUrl() {
return this.onRampClient.generateDepositOnrampUrl;
async generateDepositOnrampUrl(onrampData) {
var _a;
try {
onrampData.exchangeScreenTitle = (_a = onrampData.exchangeScreenTitle) === null || _a === void 0 ? void 0 : _a.replace(/ /g, "%20");
if (onrampData.chainId in utils_1.OnrampDepositChains) {
const url = `${Constants_1.ONRAMP_BASE_URL}?env=${CoreTypes_1.OnRampEnv.PRODUCTION}&mode=${CoreTypes_1.OnRampMode.DEPOSIT}&network=${utils_1.OnrampDepositChains[onrampData.chainId]}&walletAddress=${onrampData.walletAddress}&exchangeScreenTitle=${onrampData.exchangeScreenTitle}&aarcApiKey=${this.apiKey}&customerId=${onrampData.customerId}&cryptoCurrencyList=${onrampData.cryptoCurrencyList}&networks=${onrampData.networks}&defaultNetwork=${onrampData.defaultNetwork}&cryptoTokenData=${JSON.stringify(onrampData.cryptoTokenData)}&fiatAmount=${onrampData.fiatAmount}&fiatCurrencyCode=${onrampData.fiatCurrencyCode}&countryCode=${onrampData.countryCode}`;
return url;
}
else {
throw new Error("Unsupported chainId");
}
}
catch (error) {
Logger_1.Logger.error("Generate onramp url error: ", error);
throw error;
}
}
get generateCheckoutOnrampUrl() {
return this.onRampClient.generateCheckoutOnrampUrl;
async generateCheckoutOnrampUrl(onrampData) {
var _a;
try {
onrampData.exchangeScreenTitle = (_a = onrampData.exchangeScreenTitle) === null || _a === void 0 ? void 0 : _a.replace(/ /g, "%20");
var env;
var network;
if (onrampData.chainId in utils_1.OnrampMainnetCheckoutChains) {
env = CoreTypes_1.OnRampEnv.PRODUCTION;
network = utils_1.OnrampMainnetCheckoutChains[onrampData.chainId];
}
else if (onrampData.chainId in utils_1.OnrampTestnetCheckoutChains) {
env = CoreTypes_1.OnRampEnv.STAGING;
network = utils_1.OnrampTestnetCheckoutChains[onrampData.chainId];
}
else {
throw new Error("Unsupported chainId");
}
const url = `${Constants_1.ONRAMP_BASE_URL}?env=${env}&mode=${CoreTypes_1.OnRampMode.CHECKOUT}&network=${network}&walletAddress=${onrampData.walletAddress}&estimatedGasLimit=${onrampData.estimatedGasLimit}&smartContractAddress=${onrampData.smartContractAddress}&sourceTokenData=${JSON.stringify(onrampData.sourceTokenData)}&calldata=${onrampData.callData}&cryptoCurrencyData=${JSON.stringify(onrampData.cryptoCurrencyData)}&aarcApiKey=${this.apiKey}&customerId=${onrampData.customerId}`;
return url;
}
catch (error) {
Logger_1.Logger.error("Generate onramp url error: ", error);
throw error;
}
}
async generateMoonpayOnrampUrl(onrampData) {
try {
const url = `${Constants_1.ONRAMP_BASE_URL}?aarcApiKey=${this.apiKey}&walletAddress=${onrampData.walletAddress}&fiatCurrencyCode=${onrampData.fiatCurrencyCode}&fiatAmount=${onrampData.fiatAmount}&defaultCryptoCurrencyCode=${onrampData.defaultCryptoCurrencyCode}&cryptoTokenData=${JSON.stringify(onrampData.cryptoTokenData || {})}&platform=moonpay`;
return url;
}
catch (error) {
Logger_1.Logger.error("Generate onramp url error: ", error);
throw error;
}
}
}

@@ -520,0 +659,0 @@ exports.AarcCore = AarcCore;

@@ -12,3 +12,5 @@ export declare const ONRAMP_BASE_URL = "https://onramp-staging.aarc.xyz";

export declare const GENERATE_DEPOSIT_CALL_DATA_ENDPOINT = "https://bridge-swap.staging.aarc.xyz/deposit-calldata";
export declare const GENERATE_CHECKOUT_CALL_DATA_ENDPOINT = "https://bridge-swap.staging.aarc.xyz/checkout-contract-calldata";
export declare const MULTI_CHAIN_BALANCES_ENDPOINT = "https://bridge-swap.staging.aarc.xyz/bridge-swap/balances";
export declare const TOKEN_PRICE_ENDPOINT = "https://bridge-swap.staging.aarc.xyz/token-price";
export declare const IS_TOKEN_SUPPORTED_ENDPOINT = "https://bridge-swap.staging.aarc.xyz/bridge-swap/token-supported";

@@ -15,0 +17,0 @@ export declare const TOKENS_SUPPORTED_ENDPOINT = "https://bridge-swap.staging.aarc.xyz/bridge-swap/supported-tokens";

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.PERMIT2_CONTRACT_ADDRESS = exports.CHAINS_SUPPORTED_ENDPOINT = exports.TOKENS_SUPPORTED_ENDPOINT = exports.IS_TOKEN_SUPPORTED_ENDPOINT = exports.MULTI_CHAIN_BALANCES_ENDPOINT = exports.GENERATE_DEPOSIT_CALL_DATA_ENDPOINT = exports.TRX_STATUS_ENDPOINT = exports.EXECUTE_FORWARD_CALL_DATA_ENDPOINT = exports.GENERATE_FORWARD_CALL_DATA_ENDPOINT = exports.EXECUTE_GASLESS_CALL_DATA_ENDPOINT = exports.GENERATE_GASLESS_CALL_DATA_ENDPOINT = exports.GENERATE_NON_GASLESS_CALL_DATA_ENDPOINT = exports.BALANCES_ENDPOINT = exports.BRIDGE_SWAP_BASE_URL = exports.MIGRATE_BASE_URL = exports.ONRAMP_BASE_URL = void 0;
exports.PERMIT2_CONTRACT_ADDRESS = exports.CHAINS_SUPPORTED_ENDPOINT = exports.TOKENS_SUPPORTED_ENDPOINT = exports.IS_TOKEN_SUPPORTED_ENDPOINT = exports.TOKEN_PRICE_ENDPOINT = exports.MULTI_CHAIN_BALANCES_ENDPOINT = exports.GENERATE_CHECKOUT_CALL_DATA_ENDPOINT = exports.GENERATE_DEPOSIT_CALL_DATA_ENDPOINT = exports.TRX_STATUS_ENDPOINT = exports.EXECUTE_FORWARD_CALL_DATA_ENDPOINT = exports.GENERATE_FORWARD_CALL_DATA_ENDPOINT = exports.EXECUTE_GASLESS_CALL_DATA_ENDPOINT = exports.GENERATE_GASLESS_CALL_DATA_ENDPOINT = exports.GENERATE_NON_GASLESS_CALL_DATA_ENDPOINT = exports.BALANCES_ENDPOINT = exports.BRIDGE_SWAP_BASE_URL = exports.MIGRATE_BASE_URL = exports.ONRAMP_BASE_URL = void 0;
exports.ONRAMP_BASE_URL = 'https://onramp-staging.aarc.xyz';

@@ -15,3 +15,5 @@ exports.MIGRATE_BASE_URL = "https://migrator.staging.aarc.xyz";

exports.GENERATE_DEPOSIT_CALL_DATA_ENDPOINT = `${exports.BRIDGE_SWAP_BASE_URL}/deposit-calldata`;
exports.GENERATE_CHECKOUT_CALL_DATA_ENDPOINT = `${exports.BRIDGE_SWAP_BASE_URL}/checkout-contract-calldata`;
exports.MULTI_CHAIN_BALANCES_ENDPOINT = `${exports.BRIDGE_SWAP_BASE_URL}/bridge-swap/balances`;
exports.TOKEN_PRICE_ENDPOINT = `${exports.BRIDGE_SWAP_BASE_URL}/token-price`;
exports.IS_TOKEN_SUPPORTED_ENDPOINT = `${exports.BRIDGE_SWAP_BASE_URL}/bridge-swap/token-supported`;

@@ -18,0 +20,0 @@ exports.TOKENS_SUPPORTED_ENDPOINT = `${exports.BRIDGE_SWAP_BASE_URL}/bridge-swap/supported-tokens`;

@@ -153,2 +153,12 @@ import { ChainId } from "./ChainTypes";

};
export type CheckoutCalldataResponse = {
success: boolean;
data: {
approvalTxs: ApprovalTransaction[];
executionTxs: ExecutionTransaction[];
source: string;
gasFee: number;
executionTime: number;
};
};
export type TransferTokenDetails = {

@@ -173,4 +183,3 @@ tokenAddress: string;

};
export type DepositDto = {
senderSigner: WalletClient;
export type DepositRouteDto = {
account: PrivateKeyAccount;

@@ -184,10 +193,34 @@ fromChainId: number;

recipient: string;
destinationPayload?: string;
destinationGasLimit?: number;
routeType?: string;
estimateGas?: boolean;
checkoutToAmount?: string;
checkoutIndex?: number;
};
export type DepositDto = DepositRouteDto & {
senderSigner: WalletClient;
};
export type OutputTokenPreferences = {
receipient?: string;
outputTokenAddress?: string;
};
export type CheckoutRouteDto = {
account: PrivateKeyAccount;
fromChainId: number;
fromTokenAddress: string;
toChainId: number;
toTokenAddress: string;
toAmount: string;
targetContractAddress: string;
checkoutIndex?: number;
fromAddress: string;
destinationPayload: string;
destinationGasLimit: number;
outputTokenPreferences?: OutputTokenPreferences;
routeType?: string;
estimateGas?: boolean;
};
export type CheckoutDto = CheckoutRouteDto & {
senderSigner: WalletClient;
};
export type DepositCallDataDto = Omit<DepositDto, "senderSigner" | "account">;
export type CheckoutCallDataDto = Omit<CheckoutDto, "senderSigner" | "account">;
export type ExecuteMigrationForwardDto = {

@@ -200,2 +233,5 @@ chainId: number;

};
export type PriceData = {
"tokenPrice": string;
};
export type MigrationResponse = {

@@ -215,2 +251,3 @@ tokenAddress: string;

DEPOSIT = "DEPOSIT",
CHECKOUT = "CHECKOUT",
PERMIT = "PERMIT",

@@ -259,2 +296,8 @@ PERMIT2_SINGLE = "PERMIT2_SINGLE",

cryptoCurrencyList?: string[];
networks?: string[];
defaultNetwork?: string;
cryptoTokenData?: cryptoTokenData;
fiatAmount?: string;
fiatCurrencyCode?: string;
countryCode?: string;
}

@@ -425,2 +468,13 @@ export interface CheckoutOnrampParams {

};
export interface cryptoTokenData {
tokenCode: string;
tokenAmount: number | string;
}
export interface MoonpayOnRampParams {
walletAddress: string;
fiatCurrencyCode?: string;
fiatAmount?: string;
defaultCryptoCurrencyCode?: string;
cryptoTokenData?: cryptoTokenData;
}
export {};

@@ -12,2 +12,3 @@ "use strict";

PERMIT_TX_TYPES["DEPOSIT"] = "DEPOSIT";
PERMIT_TX_TYPES["CHECKOUT"] = "CHECKOUT";
PERMIT_TX_TYPES["PERMIT"] = "PERMIT";

@@ -14,0 +15,0 @@ PERMIT_TX_TYPES["PERMIT2_SINGLE"] = "PERMIT2_SINGLE";

@@ -1,2 +0,2 @@

import { BalancesData, BalancesResponse, DepositCallDataDto, DepositCalldataResponse, ForwardCallDataDto, ForwardCalldataRes, GaslessCalldataResponse, IsTokenSupportedResponse, RelayedTxListResponse, SupportedChainInfo, SupportedTokensResponse, TRX_RESPONSE } from "./CoreTypes";
import { BalancesData, BalancesResponse, CheckoutCallDataDto, CheckoutCalldataResponse, DepositCallDataDto, DepositCalldataResponse, ForwardCallDataDto, ForwardCalldataRes, GaslessCalldataResponse, IsTokenSupportedResponse, PriceData, RelayedTxListResponse, SupportedChainInfo, SupportedTokensResponse, TRX_RESPONSE } from "./CoreTypes";
export declare const generateGaslessCallData: (forwardCallDataDto: ForwardCallDataDto, dappApiKey: string) => Promise<GaslessCalldataResponse>;

@@ -7,2 +7,3 @@ export declare const generateNonGaslessCallData: (forwardCallDataDto: ForwardCallDataDto, dappApiKey: string) => Promise<GaslessCalldataResponse>;

export declare const generateForwardCallData: (forwardCallDataDto: ForwardCallDataDto, dappApiKey: string) => Promise<ForwardCalldataRes>;
export declare const generateCheckoutCallData: (depositCallDataDto: CheckoutCallDataDto, dappApiKey: string) => Promise<CheckoutCalldataResponse>;
export declare const executeForwardCallData: (chainId: string, forwardCalldataSet: ForwardCalldataRes, dappApiKey: string) => Promise<RelayedTxListResponse[]>;

@@ -20,1 +21,2 @@ /**

export declare const GetTransactionStatus: (taskId: string) => Promise<any>;
export declare const getTokenPrice: (apiKey: string, tokenSymbol: string) => Promise<PriceData>;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.GetTransactionStatus = exports.GetSupportedChains = exports.GetSupportedTokens = exports.IsTokenSupported = exports.getMultiChainBalances = exports.fetchBalances = exports.executeForwardCallData = exports.generateForwardCallData = exports.generateDepositCallData = exports.executeGaslessCallData = exports.generateNonGaslessCallData = exports.generateGaslessCallData = void 0;
exports.getTokenPrice = exports.GetTransactionStatus = exports.GetSupportedChains = exports.GetSupportedTokens = exports.IsTokenSupported = exports.getMultiChainBalances = exports.fetchBalances = exports.executeForwardCallData = exports.generateCheckoutCallData = exports.generateForwardCallData = exports.generateDepositCallData = exports.executeGaslessCallData = exports.generateNonGaslessCallData = exports.generateGaslessCallData = void 0;
const Constants_1 = require("./Constants");

@@ -110,2 +110,31 @@ const HttpRequest_1 = require("./HttpRequest");

exports.generateForwardCallData = generateForwardCallData;
const generateCheckoutCallData = async (depositCallDataDto, dappApiKey) => {
try {
// Destructure checkoutPreferences and other properties from depositDto
const { outputTokenPreferences, ...rest } = depositCallDataDto;
const callDataDto = {
...rest,
...outputTokenPreferences
};
// Convert depositCallDataDto to a query string
const queryString = (0, querystring_1.stringify)(callDataDto);
// Append query string to the endpoint URL
const url = `${Constants_1.GENERATE_CHECKOUT_CALL_DATA_ENDPOINT}?${queryString}`;
const txResponse = await (0, HttpRequest_1.sendRequest)({
url,
method: HttpRequest_1.HttpMethod.GET,
headers: {
"x-api-key": dappApiKey,
},
});
Logger_1.Logger.log("body ", JSON.stringify(depositCallDataDto));
Logger_1.Logger.log("txResponse from server ", JSON.stringify(txResponse.data));
return txResponse;
}
catch (error) {
Logger_1.Logger.error("error while consuming checkout call data endpoint", error);
throw error;
}
};
exports.generateCheckoutCallData = generateCheckoutCallData;
const executeForwardCallData = async (chainId, forwardCalldataSet, dappApiKey) => {

@@ -240,2 +269,15 @@ try {

exports.GetTransactionStatus = GetTransactionStatus;
const getTokenPrice = async (apiKey, tokenSymbol) => {
const response = await fetch(`${Constants_1.TOKEN_PRICE_ENDPOINT}/${tokenSymbol}`, {
method: "GET",
headers: {
"x-api-key": apiKey,
Accept: "application/json",
"Content-Type": "application/json",
},
});
const json = await response.json();
return json;
};
exports.getTokenPrice = getTokenPrice;
//# sourceMappingURL=Helper.js.map
{
"name": "@aarc-dev/core-viem",
"version": "0.0.9",
"version": "0.0.10",
"description": "",

@@ -5,0 +5,0 @@ "main": "./dist/src/index.js",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc