UNPKG

@cranberry-money/shared-services

Version:

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

60 lines 2.14 kB
import { WITHDRAWAL_REQUEST_ENDPOINTS } from '@cranberry-money/shared-constants'; let configuredApiClient = null; export const configureWithdrawalRequests = (apiClient) => { configuredApiClient = apiClient; }; const getConfiguredClient = () => { if (!configuredApiClient) { throw new Error('Withdrawal requests service not configured. Call configureWithdrawalRequests(apiClient) before using withdrawal requests functions.'); } return configuredApiClient; }; export const getWithdrawalRequests = (params) => { const queryParams = {}; if (params?.account) { queryParams.account = params.account; } if (params?.status) { queryParams.status = params.status; } if (params?.withdrawal_type) { queryParams.withdrawal_type = params.withdrawal_type; } if (params?.start_date) { queryParams.start_date = params.start_date; } if (params?.end_date) { queryParams.end_date = params.end_date; } if (params?.min_amount) { queryParams.min_amount = params.min_amount; } if (params?.max_amount) { queryParams.max_amount = params.max_amount; } if (params?.order_by) { queryParams.order_by = params.order_by; } if (params?.page) { queryParams.page = params.page; } if (params?.page_size) { queryParams.page_size = params.page_size; } return getConfiguredClient().get(WITHDRAWAL_REQUEST_ENDPOINTS.BASE, { params: queryParams, }); }; export const createWithdrawalRequest = (data) => { return getConfiguredClient().post(WITHDRAWAL_REQUEST_ENDPOINTS.BASE, data); }; export const updateWithdrawalRequest = (uuid, data) => { return getConfiguredClient().patch(`${WITHDRAWAL_REQUEST_ENDPOINTS.BASE}${uuid}/`, data); }; export const getWithdrawalRequestByUuid = (uuid) => { return getConfiguredClient().get(`${WITHDRAWAL_REQUEST_ENDPOINTS.BASE}${uuid}/`); }; export const deleteWithdrawalRequest = (uuid) => { return getConfiguredClient().delete(`${WITHDRAWAL_REQUEST_ENDPOINTS.BASE}${uuid}/`); }; //# sourceMappingURL=withdrawalRequests.js.map