@mojito-inc/core-service
Version:
Mojito Core API service for auction, payment, token
38 lines (35 loc) • 1.83 kB
JavaScript
import { __awaiter } from '../_virtual/_tslib.js';
import { useCallback, useMemo } from 'react';
import { useApolloClient } from '@apollo/client';
import { getUsdConversionQueries, getSupportedCurrenciesQueries, getConversionRateQuery } from './Queries.js';
/**
* Returns the currency conversion service
*
* @remarks
* This method is part of the currency conversion service
*
* @returns {@link ConversionService} signature service
*
*/
const useConversion = () => {
const client = useApolloClient();
const getUSDConversion = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.query(Object.assign(Object.assign({}, options), { query: getUsdConversionQueries, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
const getSupportedCurrency = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.query(Object.assign(Object.assign({}, options), { query: getSupportedCurrenciesQueries, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
const getConversionRate = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.query(Object.assign(Object.assign({}, options), { query: getConversionRateQuery, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
return useMemo(() => {
return { getUSDConversion, getSupportedCurrency, getConversionRate };
}, [getUSDConversion, getSupportedCurrency, getConversionRate]);
};
export { useConversion as default };