UNPKG

@ledgerhq/live-common

Version:
52 lines 2.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useGetCurrencyDataQuery = exports.useGetMarketPerformersQuery = exports.marketApi = void 0; const react_1 = require("@reduxjs/toolkit/query/react"); const live_env_1 = require("@ledgerhq/live-env"); const utils_1 = require("../utils"); const timers_1 = require("../utils/timers"); const types_1 = require("./types"); const currencyFormatter_1 = require("../utils/currencyFormatter"); exports.marketApi = (0, react_1.createApi)({ reducerPath: "marketApi", baseQuery: (0, react_1.fetchBaseQuery)({ baseUrl: (0, live_env_1.getEnv)("LEDGER_COUNTERVALUES_API"), }), tagTypes: [types_1.MarketDataTags.Performers, types_1.MarketDataTags.CurrencyData], endpoints: build => ({ getMarketPerformers: build.query({ query: ({ counterCurrency, range, limit = 5, top = 50, sort, supported }) => { const sortParam = `${sort === "asc" ? "positive" : "negative"}-price-change-${(0, utils_1.getRange)(range)}`; return { url: "/v3/markets", params: { to: counterCurrency, limit, top, sort: sortParam, supported, }, }; }, providesTags: [types_1.MarketDataTags.Performers], transformResponse: (response) => response.map(currencyFormatter_1.formatPerformer), keepUnusedDataFor: timers_1.REFETCH_TIME_ONE_MINUTE / 1000, }), getCurrencyData: build.query({ query: ({ id, counterCurrency }) => ({ url: "/v3/markets", params: { to: counterCurrency, ids: id, pageSize: 1, limit: 1, }, }), providesTags: [types_1.MarketDataTags.CurrencyData], transformResponse: (response) => response?.[0] ? (0, currencyFormatter_1.format)(response[0]) : undefined, keepUnusedDataFor: (timers_1.REFETCH_TIME_ONE_MINUTE * timers_1.BASIC_REFETCH) / 1000, }), }), }); exports.useGetMarketPerformersQuery = exports.marketApi.useGetMarketPerformersQuery, exports.useGetCurrencyDataQuery = exports.marketApi.useGetCurrencyDataQuery; //# sourceMappingURL=marketApi.js.map