rubic-sdk
Version:
Simplify dApp creation
52 lines • 2.15 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.UniZenApiService = void 0;
const tx_status_1 = require("../../../../../core/blockchain/web3-public-service/web3-public/models/tx-status");
const injector_1 = require("../../../../../core/injector/injector");
const okuswap_api_1 = require("../../../../on-chain/calculation-manager/providers/aggregators/okuswap/constants/okuswap-api");
class UniZenApiService {
static getQuoteInfo(params, chainId, tradeType) {
return injector_1.Injector.httpClient.get(`${UniZenApiService.apiEndpoint}/${chainId}/quote/${tradeType}`, {
params: { ...params },
headers: { apiKey: okuswap_api_1.RUBIC_X_API_APIKEY }
});
}
static getSwapInfo(params, chainId, tradeType) {
return injector_1.Injector.httpClient.post(`${UniZenApiService.apiEndpoint}/${chainId}/swap/${tradeType}`, params, {
headers: { apiKey: okuswap_api_1.RUBIC_X_API_APIKEY }
});
}
static async getTxStatus(srcTxHash) {
try {
const res = await injector_1.Injector.httpClient.get(`${UniZenApiService.apiEndpoint}/info/tx/${srcTxHash}`, {
headers: { apiKey: okuswap_api_1.RUBIC_X_API_APIKEY }
});
const txStatus = res.status.toLowerCase();
if (txStatus === 'delivered') {
return {
hash: res.dstTxHash,
status: tx_status_1.TX_STATUS.SUCCESS
};
}
if (txStatus === 'failed') {
return {
hash: null,
status: tx_status_1.TX_STATUS.FAIL
};
}
return {
hash: null,
status: tx_status_1.TX_STATUS.PENDING
};
}
catch {
return {
hash: null,
status: tx_status_1.TX_STATUS.PENDING
};
}
}
}
exports.UniZenApiService = UniZenApiService;
UniZenApiService.apiEndpoint = 'https://x-api.rubic.exchange/unizen/trade/v1';
//# sourceMappingURL=unizen-api-service.js.map