camstreamerlib
Version:
Helper library for CamStreamer ACAP applications.
93 lines (92 loc) • 4.47 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.fileDataSchema = exports.fileListSchema = exports.fileSchema = exports.storageResponseSchema = exports.storageDataListSchema = exports.fileStorageTypeSchema = 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.fileStorageTypeSchema = 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.storageDataListSchema = zod_1.z.array(zod_1.z.object({
type: exports.fileStorageTypeSchema,
state: zod_1.z.string(),
}));
exports.storageResponseSchema = zod_1.z.object({
code: zod_1.z.number(),
list: exports.storageDataListSchema,
});
exports.fileSchema = zod_1.z.object({
name: zod_1.z.string(),
path: zod_1.z.string().url(),
storage: exports.fileStorageTypeSchema,
});
exports.fileListSchema = zod_1.z.array(exports.fileSchema);
exports.fileDataSchema = zod_1.z.object({
code: zod_1.z.number(),
list: exports.fileListSchema,
});