@qite/tide-client
Version:
Frontend client for Tide
44 lines (37 loc) • 1.1 kB
text/typescript
import {
TideClientConfig,
WebContactFormRequest,
WebContactHasTagRequest,
} from "../types";
import { post } from "./api";
const ENDPOINT = "/api/web/contact";
const ENDPOINT_CONTACT_FORM = `${ENDPOINT}/contact-form`;
const ENDPOINT_CONTACT_HAS_TAG = `${ENDPOINT}/has-tag`;
/**
* api/web/contact/contact-form
* Processes a contact form.
* @param config
* @param request
* @param signal
* @returns OK if succeeded.
*/
export const contactForm = (
config: TideClientConfig,
request: WebContactFormRequest,
signal?: AbortSignal
): Promise<Response> => {
const url = `${config.host}${ENDPOINT_CONTACT_FORM}`;
const apiKey = config.apiKey;
const body = JSON.stringify(request);
return post(url, apiKey, body, config.token, signal);
};
export const contactHasTag = (
config: TideClientConfig,
request: WebContactHasTagRequest,
signal?: AbortSignal
): Promise<Response> => {
const url = `${config.host}${ENDPOINT_CONTACT_HAS_TAG}`;
const apiKey = config.apiKey;
const body = JSON.stringify(request);
return post(url, apiKey, body, config.token, signal);
};