@boomerang-io/carbon-addons-boomerang-react
Version:
Carbon Addons for Boomerang apps
29 lines (26 loc) • 1.43 kB
JavaScript
import axios from 'axios';
import { QueryClient } from 'react-query';
/*
IBM Confidential
694970X, 69497O0
© Copyright IBM Corp. 2022, 2024
*/
const queryClient = new QueryClient({
defaultOptions: { queries: { refetchOnWindowFocus: false } },
});
const serviceUrl = {
getLaunchpadUser: ({ baseServicesUrl }) => `${baseServicesUrl}/launchpad/user`,
getPlatformVersion: ({ baseServicesUrl }) => `${baseServicesUrl}/users/platform/version`,
getStatement: ({ baseServicesUrl }) => `${baseServicesUrl}/users/consents`,
getTeamServices: ({ baseServicesUrl, teamId }) => `${baseServicesUrl}/launchpad/teams/${teamId}/services`,
getUserTeamsServices: ({ baseServicesUrl }) => `${baseServicesUrl}/users/teams/services`,
getUserTeamsServicesAssets: ({ baseServicesUrl }) => `${baseServicesUrl}/users/teams/services/assets`,
resourceUserConsent: ({ baseServicesUrl }) => `${baseServicesUrl}/users/consent`,
resourceUserProfile: ({ baseServicesUrl }) => `${baseServicesUrl}/users/profile`,
};
const resolver = {
query: (url, config) => () => axios.get(url, config).then((response) => response.data),
patchUserProfile: ({ baseServicesUrl, body }) => axios.patch(serviceUrl.resourceUserProfile({ baseServicesUrl }), body),
putUserConsent: ({ baseServicesUrl, body }) => axios.put(serviceUrl.resourceUserConsent({ baseServicesUrl }), body),
};
export { queryClient, resolver, serviceUrl };