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 }); };