46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
import { requestJson } from "./endpointClient";
|
|
import { buildHashedQueryUrl } from "./relayClient";
|
|
|
|
export const buildSignedUrl = async (queryUrl, config = {}) => {
|
|
const { baseUrl = "" } = config;
|
|
|
|
return `${baseUrl}${await buildHashedQueryUrl(queryUrl)}`;
|
|
};
|
|
|
|
const signedRequestJson = async ({ method, queryUrl, data, config = {} }) => {
|
|
const { baseUrl, ...requestConfig } = config;
|
|
const signedUrl = await buildSignedUrl(queryUrl, { baseUrl });
|
|
|
|
return requestJson({
|
|
method,
|
|
url: signedUrl,
|
|
data,
|
|
...requestConfig
|
|
});
|
|
};
|
|
|
|
export const getSignedJson = (queryUrl, config = {}) => {
|
|
return signedRequestJson({
|
|
method: "get",
|
|
queryUrl,
|
|
config
|
|
});
|
|
};
|
|
|
|
export const postSignedJson = (queryUrl, data, config = {}) => {
|
|
return signedRequestJson({
|
|
method: "post",
|
|
queryUrl,
|
|
data,
|
|
config
|
|
});
|
|
};
|
|
|
|
export const deleteSignedJson = (queryUrl, config = {}) => {
|
|
return signedRequestJson({
|
|
method: "delete",
|
|
queryUrl,
|
|
config
|
|
});
|
|
};
|