camstreamerlib
Version:
Helper library for CamStreamer ACAP applications.
22 lines (21 loc) • 796 B
JavaScript
import z from 'zod';
import { streamCommonSchema } from './streamCommonTypes';
export const facebookStreamPrivacySchema = z.union([z.literal('public'), z.literal('friends'), z.literal('only_me')]);
const timelinePost = z.object({
postLocation: z.literal('timeline'),
streamPrivacy: facebookStreamPrivacySchema,
});
const pagePost = z.object({
postLocation: z.literal('page'),
page: z.string(),
});
export const facebookSchema = streamCommonSchema.extend({
type: z.literal('facebook'),
description: z.string().optional(),
deleteAfterEnd: z.boolean(),
saveToSdCard: z.boolean(),
statusCameraLed: z.boolean(),
statusCameraOutput: z.string().nullable(),
countdown: z.boolean(),
post: z.discriminatedUnion('postLocation', [timelinePost, pagePost]),
});