-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.ts
26 lines (19 loc) · 964 Bytes
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import { AxiosRequestConfig } from 'axios';
import { getToken } from 'helpers/authentication';
import { JSONObject, keysToSnakeCase } from 'helpers/json';
import requestManager from 'lib/request/v1/requestManager';
export const authenticatedHeader = (): { Authorization: string } => ({
Authorization: `${getToken()?.tokenType} ${getToken()?.accessToken}`,
});
const defaultRequestOptions = (): AxiosRequestConfig => ({ headers: authenticatedHeader() });
export const getAuth = (path: string, params?: JSONObject) => {
const requestOptions: AxiosRequestConfig = { ...defaultRequestOptions() };
if (params) {
requestOptions.params = keysToSnakeCase(params);
}
return requestManager('get', path, requestOptions);
};
export const postAuth = (path: string, params: JSONObject) => {
const requestOptions: AxiosRequestConfig = { ...defaultRequestOptions(), data: keysToSnakeCase(params) };
return requestManager('post', path, requestOptions);
};