camstreamerlib
Version:
Helper library for CamStreamer ACAP applications.
34 lines (33 loc) • 1.29 kB
JavaScript
import { z } from 'zod';
import { flashStorageTypeSchema, sdCardStorageTypeSchema, storageTypeSchema } from './common';
export const nodeStateSchema = z.object({
node_state: z.union([z.literal('OK'), z.literal('NOT_INSTALLED'), z.literal('NOT_FOUND')]),
});
export const packageInfoListSchema = z.array(z.object({
storage: storageTypeSchema,
manifest: z.object({
package_name: z.string(),
package_menu_name: z.string(),
package_version: z.string(),
vendor: z.string(),
required_camscripter_version: z.string().optional(),
required_camscripter_rbi_version: z.string().optional(),
ui_link: z.string(),
}),
}));
export const packageConfigSchema = z.record(z.string(), z.object({ enabled: z.boolean() }));
export const cameraStorageSchema = z.union([
z.tuple([
z.object({ type: flashStorageTypeSchema, capacity_mb: z.number() }),
z.object({ type: sdCardStorageTypeSchema, capacity_mb: z.number() }),
]),
z.tuple([z.object({ type: flashStorageTypeSchema, capacity_mb: z.number() })]),
]);
export const camscripterApiResponseSchema = z.object({
status: z.number(),
message: z.string(),
});
export const cameraTimeResponseSchema = z.object({
state: z.boolean(),
code: z.number(),
});