@event-inc/link-backend
Version:
Event Inc is a fully managed event bus lets you send and receive data across mission-critical cloud apps, databases and warehouses.
21 lines (17 loc) • 690 B
text/typescript
import { CreateLinkPayload } from '@event-inc/types/links';
import { matchResultAndHandleHttpError } from '@event-inc/utils';
import { identity } from 'ramda';
import { createLinkTokenApi } from '../../apis';
import { getHeaders } from '../getHeaders';
import { Client } from '@event-inc/connections';
export const createLinkToken = async <T extends 'source' | 'destination'>(
client: Client,
payload: CreateLinkPayload<T>
) => {
const secret = client._clientInfo.secret;
const url = client._url;
const headers = getHeaders(secret);
const result = await createLinkTokenApi(headers, url, payload);
const { data } = matchResultAndHandleHttpError(result, identity);
return data;
};