@vulog/aima-document
Version:
29 lines (24 loc) • 737 B
text/typescript
import { Client } from '@vulog/aima-client';
import { z } from 'zod';
import { DocumentBody, DocumentFull } from './types';
const schema = z.object({
userId: z.string().nonempty().uuid(),
});
export const createOrUpdateDocument = async (
client: Client,
userId: string,
document: DocumentBody
): Promise<DocumentFull> => {
const result = schema.safeParse({ userId });
if (!result.success) {
throw new TypeError('Invalid args', {
cause: result.error.issues,
});
}
return client
.post<DocumentFull>(
`/boapi/proxy/user/fleets/${client.clientOptions.fleetId}/users/${userId}/documents`,
document
)
.then(({ data }) => data);
};