UNPKG

@cranberry-money/shared-services

Version:

Platform-agnostic API services with pure functions and dependency injection. Includes auth, portfolios, instruments, countries, sectors, and more.

41 lines 1.42 kB
import { INDUSTRY_ENDPOINTS } from '@cranberry-money/shared-constants'; let configuredApiClient = null; export const configureIndustries = (apiClient) => { configuredApiClient = apiClient; }; const getConfiguredClient = () => { if (!configuredApiClient) { throw new Error('Industries service not configured. Call configureIndustries(apiClient) before using industry functions.'); } return configuredApiClient; }; export const getIndustries = (params) => { const queryParams = {}; if (params?.name) queryParams.name = params.name; if (params?.sector) queryParams.sector = params.sector; if (params?.order_by) queryParams.order_by = params.order_by; if (params?.page) queryParams.page = params.page.toString(); if (params?.page_size) queryParams.page_size = params.page_size.toString(); return getConfiguredClient().get(INDUSTRY_ENDPOINTS.BASE, { params: queryParams }); }; export const getIndustryByUuid = (uuid) => { return getConfiguredClient().get(`${INDUSTRY_ENDPOINTS.BASE}${uuid}/`); }; export const searchIndustries = (searchTerm, params) => { return getIndustries({ ...params, name: searchTerm, }); }; export const getIndustriesBySector = (sectorUuid, params) => { return getIndustries({ ...params, sector: sectorUuid, }); }; //# sourceMappingURL=industries.js.map