@cranberry-money/shared-services
Version:
Platform-agnostic API services with pure functions and dependency injection. Includes auth, portfolios, instruments, countries, sectors, and more.
24 lines • 933 B
JavaScript
import { ACCOUNT_ENDPOINTS } from '@cranberry-money/shared-constants';
let configuredApiClient = null;
export const configureAccounts = (apiClient) => {
configuredApiClient = apiClient;
};
const getConfiguredClient = () => {
if (!configuredApiClient) {
throw new Error('Accounts service not configured. Call configureAccounts(apiClient) before using account functions.');
}
return configuredApiClient;
};
export const getAccounts = () => {
return getConfiguredClient().get(ACCOUNT_ENDPOINTS.BASE);
};
export const createAccount = (data) => {
return getConfiguredClient().post(ACCOUNT_ENDPOINTS.BASE, data);
};
export const updateAccount = (uuid, data) => {
return getConfiguredClient().patch(`${ACCOUNT_ENDPOINTS.BASE}${uuid}/`, data);
};
export const getAccountByUuid = (uuid) => {
return getConfiguredClient().get(`${ACCOUNT_ENDPOINTS.BASE}${uuid}/`);
};
//# sourceMappingURL=accounts.js.map