UNPKG

camstreamerlib

Version:

Helper library for CamStreamer ACAP applications.

30 lines (29 loc) 1.96 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fileSchema = exports.bitrateVapixParamsSchema = exports.bitrateModeSchema = exports.keyboardShortcutsSchema = exports.keyboardShortcutSchema = exports.networkCameraListSchema = exports.storageTypeSchema = exports.sdCardStorageTypeSchema = exports.flashStorageTypeSchema = exports.h264ProfileSchema = exports.audioChannelCountSchema = exports.audioChannelSchema = exports.booleanSchema = void 0; const zod_1 = require("zod"); exports.booleanSchema = zod_1.z.union([zod_1.z.literal(0), zod_1.z.literal(1)]); exports.audioChannelSchema = zod_1.z.union([zod_1.z.literal('mono'), zod_1.z.literal('stereo')]); exports.audioChannelCountSchema = zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(2)]); exports.h264ProfileSchema = zod_1.z.union([zod_1.z.literal('high'), zod_1.z.literal('main'), zod_1.z.literal('baseline')]); exports.flashStorageTypeSchema = zod_1.z.literal('FLASH'); exports.sdCardStorageTypeSchema = zod_1.z.literal('SD_DISK'); exports.storageTypeSchema = zod_1.z.union([exports.sdCardStorageTypeSchema, exports.flashStorageTypeSchema]); exports.networkCameraListSchema = zod_1.z.array(zod_1.z.object({ name: zod_1.z.string(), ip: zod_1.z.string(), })); exports.keyboardShortcutSchema = zod_1.z.string().nullable(); exports.keyboardShortcutsSchema = zod_1.z.record(exports.keyboardShortcutSchema); exports.bitrateModeSchema = zod_1.z.union([zod_1.z.literal('VBR'), zod_1.z.literal('MBR'), zod_1.z.literal('ABR')]); exports.bitrateVapixParamsSchema = zod_1.z.object({ bitrateMode: exports.bitrateModeSchema, maximumBitRate: zod_1.z.number(), retentionTime: zod_1.z.number(), bitRateLimit: zod_1.z.number(), }); exports.fileSchema = typeof File !== 'undefined' ? zod_1.z.instanceof(File) : zod_1.z.custom((val) => { return val !== null && typeof val === 'object' && 'name' in val && 'size' in val && 'type' in val; });