UNPKG

camstreamerlib

Version:

Helper library for CamStreamer ACAP applications.

132 lines (131 loc) 6.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getFileDataSchema = exports.fontFileDataSchema = exports.imageFileDataSchema = exports.getFileListSchema = exports.fontFileListSchema = exports.imageFileListSchema = exports.getFileSchema = exports.fontFileSchema = exports.imageFileSchema = exports.getStorageResponseSchema = exports.fontStorageResponseSchema = exports.imageStorageResponseSchema = exports.getStorageDataListSchema = exports.fontStorageDataListSchema = exports.imageFilestorageDataListSchema = exports.fontFileStorageTypeSchema = exports.imageFileStorageTypeSchema = exports.ImageType = exports.isScoreOverview = exports.isBaseballScoreBoardAutomatic = exports.isBaseballScoreBoard = exports.isScoreBoard = exports.isWebCameraSharing = exports.isScreenSharing = exports.isPtz = exports.isPtzCompass = exports.isPip = exports.isInfoticker = exports.isImages = exports.isCustomGraphics = exports.isAccuweather = exports.serviceListSchema = exports.servicesSchema = exports.wsResponseSchema = void 0; const zod_1 = require("zod"); const infotickerSchema_1 = require("./infotickerSchema"); const accuweatherSchema_1 = require("./accuweatherSchema"); const ptzCompassSchema_1 = require("./ptzCompassSchema"); const imagesSchema_1 = require("./imagesSchema"); const ptzSchema_1 = require("./ptzSchema"); const pipSchema_1 = require("./pipSchema"); const customGraphicsSchema_1 = require("./customGraphicsSchema"); const screenSharingSchema_1 = require("./screenSharingSchema"); const webCameraSharingSchema_1 = require("./webCameraSharingSchema"); const scoreBoardSchema_1 = require("./scoreBoardSchema"); exports.wsResponseSchema = zod_1.z.object({ status: zod_1.z.number(), message: zod_1.z.string(), }); exports.servicesSchema = zod_1.z.discriminatedUnion('name', [ infotickerSchema_1.infoTickerSchema, accuweatherSchema_1.accuweatherSchema, ptzCompassSchema_1.ptzCompassSchema, imagesSchema_1.imagesSchema, ptzSchema_1.ptzSchema, pipSchema_1.pipSchema, customGraphicsSchema_1.customGraphicsSchema, screenSharingSchema_1.screenSharingSchema, webCameraSharingSchema_1.webCameraSharingSchema, scoreBoardSchema_1.scoreBoardSchema, scoreBoardSchema_1.baseballScoreBoardSchema, scoreBoardSchema_1.baseballScoreBoardAutomaticSchema, scoreBoardSchema_1.scoreOverviewSchema, ]); exports.serviceListSchema = zod_1.z.object({ services: zod_1.z.array(exports.servicesSchema), }); const isAccuweather = (service) => service.name === 'accuweather'; exports.isAccuweather = isAccuweather; const isCustomGraphics = (service) => service.name === 'customGraphics'; exports.isCustomGraphics = isCustomGraphics; const isImages = (service) => service.name === 'images'; exports.isImages = isImages; const isInfoticker = (service) => service.name === 'infoticker'; exports.isInfoticker = isInfoticker; const isPip = (service) => service.name === 'pip'; exports.isPip = isPip; const isPtzCompass = (service) => service.name === 'ptzCompass'; exports.isPtzCompass = isPtzCompass; const isPtz = (service) => service.name === 'ptz'; exports.isPtz = isPtz; const isScreenSharing = (service) => service.name === 'screenSharing'; exports.isScreenSharing = isScreenSharing; const isWebCameraSharing = (service) => service.name === 'web_camera'; exports.isWebCameraSharing = isWebCameraSharing; const isScoreBoard = (service) => service.name === 'scoreBoard'; exports.isScoreBoard = isScoreBoard; const isBaseballScoreBoard = (service) => service.name === 'baseballScoreBoard'; exports.isBaseballScoreBoard = isBaseballScoreBoard; const isBaseballScoreBoardAutomatic = (service) => service.name === 'myBallBaseballWidgets'; exports.isBaseballScoreBoardAutomatic = isBaseballScoreBoardAutomatic; const isScoreOverview = (service) => service.name === 'scoreOverview'; exports.isScoreOverview = isScoreOverview; var ImageType; (function (ImageType) { ImageType[ImageType["PNG"] = 0] = "PNG"; ImageType[ImageType["JPEG"] = 1] = "JPEG"; })(ImageType || (exports.ImageType = ImageType = {})); exports.imageFileStorageTypeSchema = zod_1.z.union([ zod_1.z.literal('flash'), zod_1.z.literal('SD0'), zod_1.z.literal('ftp'), zod_1.z.literal('samba'), zod_1.z.literal('url'), ]); exports.fontFileStorageTypeSchema = zod_1.z.union([zod_1.z.literal('flash'), zod_1.z.literal('SD0')]); exports.imageFilestorageDataListSchema = zod_1.z.array(zod_1.z.object({ type: exports.imageFileStorageTypeSchema, state: zod_1.z.string(), })); exports.fontStorageDataListSchema = zod_1.z.array(zod_1.z.object({ type: exports.fontFileStorageTypeSchema, state: zod_1.z.string(), })); const getStorageDataListSchema = (fileType) => { return fileType === 'image' ? exports.imageFilestorageDataListSchema : exports.fontStorageDataListSchema; }; exports.getStorageDataListSchema = getStorageDataListSchema; exports.imageStorageResponseSchema = zod_1.z.object({ code: zod_1.z.number(), list: exports.imageFilestorageDataListSchema, }); exports.fontStorageResponseSchema = zod_1.z.object({ code: zod_1.z.number(), list: exports.fontStorageDataListSchema, }); const getStorageResponseSchema = (fileType) => { return fileType === 'image' ? exports.imageStorageResponseSchema : exports.fontStorageResponseSchema; }; exports.getStorageResponseSchema = getStorageResponseSchema; exports.imageFileSchema = zod_1.z.object({ name: zod_1.z.string(), path: zod_1.z.string().url(), storage: exports.imageFileStorageTypeSchema, }); exports.fontFileSchema = zod_1.z.object({ name: zod_1.z.string(), path: zod_1.z.string().url(), storage: exports.fontFileStorageTypeSchema, }); const getFileSchema = (fileType) => { return fileType === 'image' ? exports.imageFileSchema : exports.fontFileSchema; }; exports.getFileSchema = getFileSchema; exports.imageFileListSchema = zod_1.z.array(exports.imageFileSchema); exports.fontFileListSchema = zod_1.z.array(exports.fontFileSchema); const getFileListSchema = (fileType) => { return fileType === 'image' ? exports.imageFileListSchema : exports.fontFileListSchema; }; exports.getFileListSchema = getFileListSchema; exports.imageFileDataSchema = zod_1.z.object({ code: zod_1.z.number(), list: exports.imageFileListSchema, }); exports.fontFileDataSchema = zod_1.z.object({ code: zod_1.z.number(), list: exports.fontFileListSchema, }); const getFileDataSchema = (fileType) => { return fileType === 'image' ? exports.imageFileDataSchema : exports.fontFileDataSchema; }; exports.getFileDataSchema = getFileDataSchema;