camstreamerlib 4.0.0-beta.5 → 4.0.0-beta.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. package/README.md +142 -38
  2. package/cjs/CamOverlayAPI.js +135 -92
  3. package/cjs/CamScripterAPI.js +52 -42
  4. package/cjs/CamStreamerAPI.js +83 -39
  5. package/cjs/CamSwitcherAPI.js +141 -123
  6. package/cjs/PlaneTrackerAPI.js +230 -0
  7. package/cjs/VapixAPI.js +323 -233
  8. package/cjs/{CreatePackage.js → bin/CreatePackage.js} +22 -19
  9. package/cjs/errors/errors.js +78 -1
  10. package/cjs/index.js +27 -5
  11. package/cjs/internal/ProxyClient.js +28 -32
  12. package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +28 -22
  13. package/cjs/internal/types.js +2 -0
  14. package/cjs/internal/utils.js +22 -3
  15. package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +17 -14
  16. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  17. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
  18. package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
  19. package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +16 -13
  20. package/cjs/node/DefaultClient.js +10 -12
  21. package/cjs/{internal → node}/Digest.js +8 -5
  22. package/cjs/node/Digest.test.js +13 -0
  23. package/cjs/node/HttpRequestSender.js +14 -4
  24. package/cjs/node/HttpServer.js +15 -12
  25. package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
  26. package/cjs/node/WsClient.js +30 -20
  27. package/cjs/node/events/AxisCameraStationEvents.js +53 -0
  28. package/cjs/node/events/GenetecAgent.js +123 -0
  29. package/cjs/node/index.js +38 -5
  30. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +92 -0
  31. package/cjs/types/CamOverlayAPI/accuweatherSchema.js +47 -0
  32. package/cjs/types/CamOverlayAPI/customGraphicsSchema.js +72 -0
  33. package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
  34. package/cjs/types/CamOverlayAPI/index.js +27 -0
  35. package/cjs/types/CamOverlayAPI/infotickerSchema.js +26 -0
  36. package/cjs/types/CamOverlayAPI/pipSchema.js +39 -0
  37. package/cjs/types/CamOverlayAPI/ptzCompassSchema.js +25 -0
  38. package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
  39. package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
  40. package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
  41. package/cjs/types/CamOverlayAPI/serviceCommonTypes.js +91 -0
  42. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
  43. package/cjs/types/CamOverlayDrawingAPI.js +2 -0
  44. package/cjs/types/CamOverlayPainter.js +14 -0
  45. package/cjs/types/CamScripterAPI.js +22 -7
  46. package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
  47. package/cjs/types/CamStreamerAPI.js +34 -3
  48. package/cjs/types/CamSwitcherAPI.js +38 -1
  49. package/cjs/types/GenetecAgent.js +31 -0
  50. package/cjs/types/PlaneTrackerAPI.js +302 -0
  51. package/cjs/types/VapixAPI.js +71 -13
  52. package/cjs/types/VapixEvents.js +2 -0
  53. package/cjs/types/ws/CamOverlayEvents.js +19 -0
  54. package/cjs/types/ws/CamStreamerEvents.js +32 -0
  55. package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +8 -0
  56. package/cjs/types/ws/PlaneTrackerEvents.js +118 -0
  57. package/cjs/web/DefaultClient.js +26 -10
  58. package/cjs/web/WsClient.js +16 -18
  59. package/cjs/ws/CamOverlayEvents.js +24 -0
  60. package/cjs/ws/CamStreamerEvents.js +24 -0
  61. package/cjs/ws/CamSwitcherEvents.js +24 -0
  62. package/cjs/ws/PlaneTrackerEvents.js +22 -0
  63. package/esm/CamOverlayAPI.js +131 -88
  64. package/esm/CamScripterAPI.js +48 -38
  65. package/esm/CamStreamerAPI.js +81 -38
  66. package/esm/CamSwitcherAPI.js +137 -119
  67. package/esm/PlaneTrackerAPI.js +226 -0
  68. package/esm/VapixAPI.js +315 -225
  69. package/esm/{CreatePackage.js → bin/CreatePackage.js} +3 -3
  70. package/esm/errors/errors.js +66 -0
  71. package/esm/index.js +19 -4
  72. package/esm/internal/ProxyClient.js +28 -32
  73. package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +26 -20
  74. package/esm/internal/utils.js +17 -1
  75. package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +12 -12
  76. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  77. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
  78. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
  79. package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
  80. package/esm/node/DefaultClient.js +10 -12
  81. package/esm/{internal → node}/Digest.js +1 -1
  82. package/esm/node/Digest.test.js +11 -0
  83. package/esm/node/HttpRequestSender.js +14 -4
  84. package/esm/node/HttpServer.js +5 -5
  85. package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
  86. package/esm/node/WsClient.js +22 -15
  87. package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
  88. package/esm/node/events/GenetecAgent.js +119 -0
  89. package/esm/node/index.js +17 -2
  90. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +76 -0
  91. package/esm/types/CamOverlayAPI/accuweatherSchema.js +44 -0
  92. package/esm/types/CamOverlayAPI/customGraphicsSchema.js +69 -0
  93. package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
  94. package/esm/types/CamOverlayAPI/index.js +11 -0
  95. package/esm/types/CamOverlayAPI/infotickerSchema.js +23 -0
  96. package/esm/types/CamOverlayAPI/pipSchema.js +36 -0
  97. package/esm/types/CamOverlayAPI/ptzCompassSchema.js +22 -0
  98. package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
  99. package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
  100. package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
  101. package/esm/types/CamOverlayAPI/serviceCommonTypes.js +88 -0
  102. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
  103. package/esm/types/CamOverlayPainter.js +11 -0
  104. package/esm/types/CamScripterAPI.js +21 -6
  105. package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
  106. package/esm/types/CamStreamerAPI.js +33 -2
  107. package/esm/types/CamSwitcherAPI.js +38 -1
  108. package/esm/types/GenetecAgent.js +28 -0
  109. package/esm/types/PlaneTrackerAPI.js +299 -0
  110. package/esm/types/VapixAPI.js +70 -12
  111. package/esm/types/VapixEvents.js +1 -0
  112. package/esm/types/ws/CamOverlayEvents.js +16 -0
  113. package/esm/types/ws/CamStreamerEvents.js +29 -0
  114. package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +8 -0
  115. package/esm/types/ws/PlaneTrackerEvents.js +115 -0
  116. package/esm/web/DefaultClient.js +26 -10
  117. package/esm/web/WsClient.js +16 -18
  118. package/esm/ws/CamOverlayEvents.js +20 -0
  119. package/esm/ws/CamStreamerEvents.js +20 -0
  120. package/esm/ws/CamSwitcherEvents.js +20 -0
  121. package/esm/ws/PlaneTrackerEvents.js +18 -0
  122. package/package.json +29 -11
  123. package/types/CamOverlayAPI.d.ts +865 -0
  124. package/types/CamScripterAPI.d.ts +47 -0
  125. package/types/CamStreamerAPI.d.ts +64 -0
  126. package/types/CamSwitcherAPI.d.ts +167 -0
  127. package/types/PlaneTrackerAPI.d.ts +231 -0
  128. package/types/VapixAPI.d.ts +118 -0
  129. package/types/bin/CreatePackage.d.ts +1 -0
  130. package/types/errors/errors.d.ts +68 -0
  131. package/types/index.d.ts +26 -0
  132. package/types/internal/ProxyClient.d.ts +10 -0
  133. package/types/internal/WsEvents.d.ts +39 -0
  134. package/types/internal/types.d.ts +46 -0
  135. package/{cjs → types}/internal/utils.d.ts +4 -1
  136. package/{cjs → types}/internal/versionCompare.d.ts +2 -2
  137. package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
  138. package/{esm → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
  139. package/{cjs → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
  140. package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  141. package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  142. package/types/node/DefaultClient.d.ts +16 -0
  143. package/types/node/Digest.test.d.ts +1 -0
  144. package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
  145. package/{cjs → types}/node/HttpServer.d.ts +2 -2
  146. package/types/node/VapixEvents.d.ts +16 -0
  147. package/types/node/WsClient.d.ts +30 -0
  148. package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
  149. package/types/node/events/GenetecAgent.d.ts +16 -0
  150. package/types/node/index.d.ts +17 -0
  151. package/types/types/CamOverlayAPI/CamOverlayAPI.d.ts +4321 -0
  152. package/types/types/CamOverlayAPI/accuweatherSchema.d.ts +84 -0
  153. package/types/types/CamOverlayAPI/customGraphicsSchema.d.ts +700 -0
  154. package/types/types/CamOverlayAPI/imagesSchema.d.ts +95 -0
  155. package/types/types/CamOverlayAPI/index.d.ts +11 -0
  156. package/types/types/CamOverlayAPI/infotickerSchema.d.ts +96 -0
  157. package/types/types/CamOverlayAPI/pipSchema.d.ts +125 -0
  158. package/types/types/CamOverlayAPI/ptzCompassSchema.d.ts +93 -0
  159. package/types/types/CamOverlayAPI/ptzSchema.d.ts +118 -0
  160. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  161. package/types/types/CamOverlayAPI/screenSharingSchema.d.ts +58 -0
  162. package/types/types/CamOverlayAPI/serviceCommonTypes.d.ts +145 -0
  163. package/types/types/CamOverlayAPI/webCameraSharingSchema.d.ts +58 -0
  164. package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
  165. package/types/types/CamOverlayPainter.d.ts +76 -0
  166. package/types/types/CamScripterAPI.d.ts +130 -0
  167. package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  168. package/types/types/CamStreamerAPI.d.ts +272 -0
  169. package/{esm → types}/types/CamSwitcherAPI.d.ts +115 -36
  170. package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
  171. package/types/types/PlaneTrackerAPI.d.ts +898 -0
  172. package/{cjs → types}/types/VapixAPI.d.ts +647 -465
  173. package/types/types/VapixEvents.d.ts +15 -0
  174. package/{esm → types}/types/common.d.ts +15 -5
  175. package/types/types/ws/CamOverlayEvents.d.ts +88 -0
  176. package/types/types/ws/CamStreamerEvents.d.ts +249 -0
  177. package/{cjs/types → types/types/ws}/CamSwitcherEvents.d.ts +77 -0
  178. package/types/types/ws/PlaneTrackerEvents.d.ts +1037 -0
  179. package/types/web/DefaultClient.d.ts +8 -0
  180. package/types/web/WsClient.d.ts +17 -0
  181. package/types/ws/CamOverlayEvents.d.ts +8 -0
  182. package/types/ws/CamStreamerEvents.d.ts +8 -0
  183. package/types/ws/CamSwitcherEvents.d.ts +8 -0
  184. package/types/ws/PlaneTrackerEvents.d.ts +9 -0
  185. package/cjs/CamOverlayAPI.d.ts +0 -31
  186. package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
  187. package/cjs/CamOverlayPainter/Frame.d.ts +0 -96
  188. package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
  189. package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
  190. package/cjs/CamScripterAPI.d.ts +0 -19
  191. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  192. package/cjs/CamStreamerAPI.d.ts +0 -16
  193. package/cjs/CamSwitcherAPI.d.ts +0 -48
  194. package/cjs/CamSwitcherEvents.d.ts +0 -18
  195. package/cjs/VapixAPI.d.ts +0 -66
  196. package/cjs/VapixEvents.d.ts +0 -43
  197. package/cjs/errors/errors.d.ts +0 -34
  198. package/cjs/events/AxisCameraStationEvents.d.ts +0 -9
  199. package/cjs/events/AxisCameraStationEvents.js +0 -48
  200. package/cjs/events/GenetecAgent.d.ts +0 -174
  201. package/cjs/events/GenetecAgent.js +0 -123
  202. package/cjs/index.d.ts +0 -11
  203. package/cjs/internal/ProxyClient.d.ts +0 -11
  204. package/cjs/internal/common.d.ts +0 -39
  205. package/cjs/internal/common.js +0 -27
  206. package/cjs/node/DefaultClient.d.ts +0 -15
  207. package/cjs/node/HttpRequestSender.d.ts +0 -28
  208. package/cjs/node/WsClient.d.ts +0 -39
  209. package/cjs/node/WsEventClient.d.ts +0 -13
  210. package/cjs/node/WsEventClient.js +0 -22
  211. package/cjs/types/CamOverlayAPI.d.ts +0 -188
  212. package/cjs/types/CamOverlayAPI.js +0 -47
  213. package/cjs/types/CamScripterAPI.d.ts +0 -67
  214. package/cjs/types/CamStreamerAPI.d.ts +0 -139
  215. package/cjs/types/CamSwitcherAPI.d.ts +0 -814
  216. package/cjs/types/common.d.ts +0 -37
  217. package/cjs/web/DefaultClient.d.ts +0 -6
  218. package/cjs/web/WsClient.d.ts +0 -13
  219. package/cjs/web/index.d.ts +0 -2
  220. package/esm/CamOverlayAPI.d.ts +0 -31
  221. package/esm/CamOverlayDrawingAPI.d.ts +0 -86
  222. package/esm/CamOverlayPainter/Painter.d.ts +0 -48
  223. package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
  224. package/esm/CamScripterAPI.d.ts +0 -19
  225. package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  226. package/esm/CamStreamerAPI.d.ts +0 -16
  227. package/esm/CamSwitcherAPI.d.ts +0 -48
  228. package/esm/CamSwitcherEvents.d.ts +0 -18
  229. package/esm/VapixAPI.d.ts +0 -66
  230. package/esm/VapixEvents.d.ts +0 -43
  231. package/esm/errors/errors.d.ts +0 -34
  232. package/esm/events/AxisCameraStationEvents.d.ts +0 -9
  233. package/esm/events/GenetecAgent.js +0 -119
  234. package/esm/index.d.ts +0 -11
  235. package/esm/internal/Digest.d.ts +0 -4
  236. package/esm/internal/ProxyClient.d.ts +0 -11
  237. package/esm/internal/common.d.ts +0 -39
  238. package/esm/internal/common.js +0 -20
  239. package/esm/internal/constants.d.ts +0 -1
  240. package/esm/internal/transformers.d.ts +0 -5
  241. package/esm/internal/utils.d.ts +0 -11
  242. package/esm/internal/versionCompare.d.ts +0 -6
  243. package/esm/node/DefaultClient.d.ts +0 -15
  244. package/esm/node/HttpServer.d.ts +0 -21
  245. package/esm/node/WsClient.d.ts +0 -39
  246. package/esm/node/WsEventClient.d.ts +0 -13
  247. package/esm/node/WsEventClient.js +0 -18
  248. package/esm/node/index.d.ts +0 -2
  249. package/esm/types/CamOverlayAPI.d.ts +0 -188
  250. package/esm/types/CamOverlayAPI.js +0 -44
  251. package/esm/types/CamScripterAPI.d.ts +0 -67
  252. package/esm/types/CamStreamerAPI.d.ts +0 -139
  253. package/esm/types/CamSwitcherEvents.d.ts +0 -491
  254. package/esm/types/VapixAPI.d.ts +0 -1683
  255. package/esm/web/DefaultClient.d.ts +0 -6
  256. package/esm/web/WsClient.d.ts +0 -13
  257. package/esm/web/index.d.ts +0 -2
  258. /package/{cjs/CreatePackage.d.ts → esm/internal/types.js} +0 -0
  259. /package/esm/{CreatePackage.d.ts → types/CamOverlayDrawingAPI.js} +0 -0
  260. /package/{cjs → types}/internal/constants.d.ts +0 -0
  261. /package/{cjs → types}/internal/transformers.d.ts +0 -0
  262. /package/{cjs/internal → types/node}/Digest.d.ts +0 -0
  263. /package/{cjs/node → types/web}/index.d.ts +0 -0
@@ -0,0 +1,129 @@
1
+ import { z } from 'zod';
2
+ import { coordinateSystemSchema, serviceNames } from './serviceCommonTypes';
3
+ export const sportFontSchema = z.union([
4
+ z.literal('classic'),
5
+ z.custom((val) => {
6
+ return typeof val === 'string';
7
+ }),
8
+ ]);
9
+ export const scoreBoardSchema = z.object({
10
+ id: z.number().nonnegative(),
11
+ enabled: z.union([z.literal(0), z.literal(1)]),
12
+ schedule: z.string().optional(),
13
+ cameraList: z.array(z.number()),
14
+ zIndex: z.number().nonnegative(),
15
+ name: z.literal(serviceNames.scoreBoard),
16
+ pos_x: z.number(),
17
+ pos_y: z.number(),
18
+ coordSystem: coordinateSystemSchema,
19
+ width: z.number(),
20
+ height: z.number(),
21
+ scale: z.number(),
22
+ teamHomeShortname: z.string(),
23
+ teamGuestShortname: z.string(),
24
+ teamHomeBackgroundColor: z.string(),
25
+ teamGuestBackgroundColor: z.string(),
26
+ teamHomeTextColor: z.string(),
27
+ teamGuestTextColor: z.string(),
28
+ teamHomeImgPath: z.string(),
29
+ teamGuestImgPath: z.string(),
30
+ teamHomeCurrentScore: z.number(),
31
+ teamGuestCurrentScore: z.number(),
32
+ baseTimeTimestamp: z.number(),
33
+ baseTimePlaytime: z.number(),
34
+ currentPeriodPlaytime: z.number(),
35
+ timeIsRunning: z.boolean(),
36
+ currentPeriodLength: z.number(),
37
+ currentPeriod: z.number(),
38
+ font: sportFontSchema.default('classic'),
39
+ });
40
+ export const baseballScoreBoardSchema = z.object({
41
+ id: z.number().nonnegative(),
42
+ enabled: z.union([z.literal(0), z.literal(1)]),
43
+ schedule: z.string().optional(),
44
+ cameraList: z.array(z.number()),
45
+ zIndex: z.number().nonnegative(),
46
+ name: z.literal(serviceNames.baseballScoreBoard),
47
+ pos_x: z.number(),
48
+ pos_y: z.number(),
49
+ coordSystem: coordinateSystemSchema,
50
+ width: z.number(),
51
+ height: z.number(),
52
+ scale: z.number(),
53
+ matchFinished: z.boolean(),
54
+ bases: z.tuple([z.boolean(), z.boolean(), z.boolean()]),
55
+ homeInning: z.boolean(),
56
+ inning: z.number().nonnegative(),
57
+ outs: z.number().nonnegative(),
58
+ balls: z.number().nonnegative(),
59
+ strikes: z.number().nonnegative(),
60
+ baseTimeTimestamp: z.number(),
61
+ baseTimePlaytime: z.number(),
62
+ timeIsRunning: z.boolean(),
63
+ teamHomeShortname: z.string(),
64
+ teamGuestShortname: z.string(),
65
+ teamHomeBackgroundColor: z.string(),
66
+ teamGuestBackgroundColor: z.string(),
67
+ teamHomeTextColor: z.string(),
68
+ teamGuestTextColor: z.string(),
69
+ teamHomeCurrentScore: z.number(),
70
+ teamGuestCurrentScore: z.number(),
71
+ footerImgPath: z.string().optional(),
72
+ footerText: z.string().optional(),
73
+ footerBackgroundColor: z.string().optional(),
74
+ footerTextColor: z.string().optional(),
75
+ font: sportFontSchema.default('classic'),
76
+ });
77
+ export const baseballScoreBoardAutomaticSchema = z.object({
78
+ id: z.number().nonnegative(),
79
+ enabled: z.union([z.literal(0), z.literal(1)]),
80
+ schedule: z.string().optional(),
81
+ cameraList: z.array(z.number()),
82
+ zIndex: z.number().nonnegative(),
83
+ name: z.literal(serviceNames.myBallBaseballWidgets),
84
+ width: z.number(),
85
+ height: z.number(),
86
+ scale: z.number(),
87
+ matchDetailLink: z.string(),
88
+ matchListLink: z.string(),
89
+ mirrored: z.boolean(),
90
+ pregameWidgetText: z.string(),
91
+ teamHomeBackgroundColor: z.string(),
92
+ teamGuestBackgroundColor: z.string(),
93
+ teamHomeTextColor: z.string(),
94
+ teamGuestTextColor: z.string(),
95
+ homeLogoPath: z.string(),
96
+ guestLogoPath: z.string(),
97
+ footerImgPath: z.string().optional(),
98
+ footerText: z.string().optional(),
99
+ footerBackgroundColor: z.string().optional(),
100
+ footerTextColor: z.string().optional(),
101
+ font: sportFontSchema.default('classic'),
102
+ });
103
+ export const scoreOverviewSchema = z.object({
104
+ id: z.number().nonnegative(),
105
+ enabled: z.union([z.literal(0), z.literal(1)]),
106
+ cameraList: z.array(z.number()),
107
+ zIndex: z.number().nonnegative(),
108
+ name: z.literal(serviceNames.scoreOverview),
109
+ pos_x: z.number(),
110
+ pos_y: z.number(),
111
+ coordSystem: coordinateSystemSchema,
112
+ width: z.number(),
113
+ height: z.number(),
114
+ scale: z.number(),
115
+ teamHomeName: z.string(),
116
+ teamGuestName: z.string(),
117
+ teamHomeBackgroundColor: z.string(),
118
+ teamGuestBackgroundColor: z.string(),
119
+ teamHomeTextColor: z.string(),
120
+ teamGuestTextColor: z.string(),
121
+ teamHomeImgPath: z.string(),
122
+ teamGuestImgPath: z.string(),
123
+ teamHomeCurrentScore: z.number(),
124
+ teamGuestCurrentScore: z.number(),
125
+ scoreVisible: z.boolean(),
126
+ description: z.string(),
127
+ textFont: sportFontSchema.default('classic'),
128
+ scoreFont: z.literal('classic'),
129
+ });
@@ -0,0 +1,5 @@
1
+ import { z } from 'zod';
2
+ import { serviceNames, sharingSchema } from './serviceCommonTypes';
3
+ export const screenSharingSchema = sharingSchema.extend({
4
+ name: z.literal(serviceNames.screenSharing),
5
+ });
@@ -0,0 +1,88 @@
1
+ import { z } from 'zod';
2
+ export const serviceNames = {
3
+ accuweather: 'accuweather',
4
+ infoticker: 'infoticker',
5
+ customGraphics: 'customGraphics',
6
+ ptzCompass: 'ptzCompass',
7
+ images: 'images',
8
+ ptz: 'ptz',
9
+ pip: 'pip',
10
+ screenSharing: 'screenSharing',
11
+ web_camera: 'web_camera',
12
+ scoreBoard: 'scoreBoard',
13
+ baseballScoreBoard: 'baseballScoreBoard',
14
+ myBallBaseballWidgets: 'myBallBaseballWidgets',
15
+ scoreOverview: 'scoreOverview',
16
+ };
17
+ export const coordinateSystemSchema = z.union([
18
+ z.literal('top_left'),
19
+ z.literal('top'),
20
+ z.literal('top_right'),
21
+ z.literal('left'),
22
+ z.literal('center'),
23
+ z.literal('right'),
24
+ z.literal('bottom_left'),
25
+ z.literal('bottom'),
26
+ z.literal('bottom_right'),
27
+ ]);
28
+ export const languageSchema = z.union([
29
+ z.literal('en-us'),
30
+ z.literal('fr-fr'),
31
+ z.literal('ja-jp'),
32
+ z.literal('pt-pt'),
33
+ z.literal('es-es'),
34
+ z.literal('de-de'),
35
+ z.literal('ko-kr'),
36
+ z.literal('zh-hk'),
37
+ z.literal('zh-cn'),
38
+ z.literal('nl-nl'),
39
+ z.literal('cs-cz'),
40
+ z.literal('ru-ru'),
41
+ z.literal('sv-se'),
42
+ ]);
43
+ export const fontSchema = z.union([
44
+ z.literal('classic'),
45
+ z.literal('digital'),
46
+ z.custom((val) => {
47
+ return typeof val === 'string';
48
+ }),
49
+ ]);
50
+ export const weatherUnitSchema = z.union([z.literal('Metric'), z.literal('Imperial')]);
51
+ export const serviceCommonSchema = z.object({
52
+ id: z.number().nonnegative(),
53
+ enabled: z.union([z.literal(0), z.literal(1)]),
54
+ automationType: z.union([
55
+ z.literal('time'),
56
+ z.literal('manual'),
57
+ z.literal('schedule'),
58
+ z.custom((val) => {
59
+ return typeof val === 'string' ? /^input\d+$/.test(val) : false;
60
+ }),
61
+ ]),
62
+ invertInput: z.boolean().optional(),
63
+ cameraList: z.array(z.number()),
64
+ camera: z.number().nonnegative().optional(),
65
+ schedule: z.string().optional(),
66
+ customName: z.string(),
67
+ zIndex: z.number().optional(),
68
+ width: z.number().nonnegative(),
69
+ height: z.number().nonnegative(),
70
+ });
71
+ export const sharingSchema = serviceCommonSchema.extend({
72
+ pos_x: z.number().nonnegative(),
73
+ pos_y: z.number().nonnegative(),
74
+ coordSystem: coordinateSystemSchema,
75
+ screenSize: z.number().positive(),
76
+ fps: z.number(),
77
+ });
78
+ export const overlaySchema = z.object({
79
+ active: z.boolean(),
80
+ coordSystem: coordinateSystemSchema,
81
+ pos_x: z.number(),
82
+ pos_y: z.number(),
83
+ imgPath: z.string(),
84
+ imgName: z.string(),
85
+ duration: z.number(),
86
+ scale: z.number(),
87
+ fps: z.number().optional(),
88
+ });
@@ -0,0 +1,5 @@
1
+ import { z } from 'zod';
2
+ import { serviceNames, sharingSchema } from './serviceCommonTypes';
3
+ export const webCameraSharingSchema = sharingSchema.extend({
4
+ name: z.literal(serviceNames.web_camera),
5
+ });
@@ -0,0 +1,11 @@
1
+ export const COORD = {
2
+ top_left: [-1, -1],
3
+ center_left: [-1, 0],
4
+ bottom_left: [-1, 1],
5
+ top_center: [0, -1],
6
+ center: [0, 0],
7
+ bottom_center: [0, 1],
8
+ top_right: [1, -1],
9
+ center_right: [1, 0],
10
+ bottom_right: [1, 1],
11
+ };
@@ -1,4 +1,7 @@
1
1
  import { z } from 'zod';
2
+ export const nodeStateSchema = z.object({
3
+ node_state: z.union([z.literal('OK'), z.literal('NOT_INSTALLED'), z.literal('NOT_FOUND')]),
4
+ });
2
5
  export const packageInfoListSchema = z.array(z.object({
3
6
  storage: z.union([z.literal('SD_CARD'), z.literal('INTERNAL')]),
4
7
  manifest: z.object({
@@ -6,12 +9,24 @@ export const packageInfoListSchema = z.array(z.object({
6
9
  package_menu_name: z.string(),
7
10
  package_version: z.string(),
8
11
  vendor: z.string(),
9
- required_camscripter_version: z.string(),
10
- required_camscripter_rbi_version: z.string(),
12
+ required_camscripter_version: z.string().optional(),
13
+ required_camscripter_rbi_version: z.string().optional(),
11
14
  ui_link: z.string(),
12
15
  }),
13
16
  }));
14
- export const storageSchema = z.array(z.object({
15
- type: z.union([z.literal('INTERNAL'), z.literal('SD_CARD')]),
16
- capacity_mb: z.number(),
17
- }));
17
+ export const packageConfigSchema = z.record(z.string(), z.object({ enabled: z.boolean() }));
18
+ export const cameraStorageSchema = z.union([
19
+ z.tuple([
20
+ z.object({ type: z.literal('INTERNAL'), capacity_mb: z.number() }),
21
+ z.object({ type: z.literal('SD_CARD'), capacity_mb: z.number() }),
22
+ ]),
23
+ z.tuple([z.object({ type: z.literal('INTERNAL'), capacity_mb: z.number() })]),
24
+ ]);
25
+ export const camscripterApiResponseSchema = z.object({
26
+ status: z.number(),
27
+ message: z.string(),
28
+ });
29
+ export const cameraTimeResponseSchema = z.object({
30
+ state: z.boolean(),
31
+ code: z.number(),
32
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- export const streamAttributesSchema = z.object({
2
+ export const cameraStreamSchema = z.object({
3
3
  enabled: z.string(),
4
4
  active: z.string(),
5
5
  audioSource: z.string(),
@@ -22,4 +22,35 @@ export const streamAttributesSchema = z.object({
22
22
  startTime: z.string(),
23
23
  stopTime: z.string(),
24
24
  });
25
- export const streamListSchema = z.record(z.string(), streamAttributesSchema);
25
+ export const streamSchema = z.object({
26
+ enabled: z.union([z.literal(0), z.literal(1)]),
27
+ active: z.union([z.literal(0), z.literal(1)]),
28
+ audioSource: z.string(),
29
+ avSyncMsec: z.number().int(),
30
+ internalVapixParameters: z.string(),
31
+ userVapixParameters: z.string(),
32
+ outputParameters: z.string(),
33
+ outputType: z.union([z.literal('video'), z.literal('images'), z.literal('none')]),
34
+ mediaServerUrl: z.string(),
35
+ inputType: z.union([z.literal('CSw'), z.literal('CRS'), z.literal('RTSP_URL')]),
36
+ inputUrl: z.string(),
37
+ forceStereo: z.union([z.literal(0), z.literal(1)]),
38
+ streamDelay: z.number().nullable(),
39
+ statusLed: z.number(),
40
+ statusPort: z.string(),
41
+ callApi: z.number().int(),
42
+ trigger: z.string(),
43
+ schedule: z.string(),
44
+ prepareAhead: z.number().int(),
45
+ startTime: z.number().nullable(),
46
+ stopTime: z.number().nullable(),
47
+ });
48
+ export const cameraStreamResponseSchema = z.object({
49
+ data: cameraStreamSchema,
50
+ code: z.number(),
51
+ message: z.string(),
52
+ });
53
+ export const camstreamerServerResponseSchema = z.object({
54
+ code: z.number(),
55
+ message: z.string(),
56
+ });
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { toCamelCase, toCamelCaseDeep } from '../internal/transformers';
3
- import { storageTypeSchema, keyboardShortcutsSchema, h264ProfileSchema, audioChannelCountSchema, } from './common';
3
+ import { storageTypeSchema, keyboardShortcutsSchema, h264ProfileSchema, audioChannelCountSchema, keyboardShortcutSchema, } from './common';
4
4
  const channelTypeSchema = z.union([z.literal('audio'), z.literal('video'), z.literal('av')]);
5
5
  const playlistPlayTypeSchema = z.union([
6
6
  z.literal('PLAY_ALL'),
@@ -132,3 +132,40 @@ export const clipListSchema = z.object({
132
132
  ])),
133
133
  })),
134
134
  });
135
+ export const bitrateModeSchema = z.union([z.literal('VBR'), z.literal('MBR'), z.literal('ABR')]);
136
+ export const bitrateVapixParamsSchema = z.object({
137
+ bitrateMode: bitrateModeSchema,
138
+ maximumBitRate: z.number(),
139
+ retentionTime: z.number(),
140
+ bitRateLimit: z.number(),
141
+ });
142
+ export const cameraOptionsSchema = bitrateVapixParamsSchema
143
+ .extend({
144
+ resolution: z.string(),
145
+ h264Profile: h264ProfileSchema,
146
+ fps: z.number(),
147
+ compression: z.number().min(0).max(100),
148
+ govLength: z.number(),
149
+ bitrateVapixParams: z.string().nullable(),
150
+ audioSampleRate: z.number(),
151
+ audioChannelCount: audioChannelCountSchema,
152
+ keyboard: z.object({
153
+ fromSource: keyboardShortcutSchema,
154
+ none: keyboardShortcutSchema,
155
+ }),
156
+ })
157
+ .partial();
158
+ export const globalAudioSettingsTypeSchema = z.union([z.literal('fromSource'), z.literal('source')]);
159
+ export const globalAudioSettingsSchema = z.object({
160
+ type: globalAudioSettingsTypeSchema,
161
+ source: z.string(),
162
+ storage: z.string().optional(),
163
+ });
164
+ export const secondaryAudioSettingsSchema = z.object({
165
+ type: z.union([z.literal('CLIP'), z.literal('STREAM'), z.literal('NONE')]),
166
+ streamName: z.string().optional(),
167
+ clipName: z.string().optional(),
168
+ storage: storageTypeSchema,
169
+ secondaryAudioLevel: z.number(),
170
+ masterAudioLevel: z.number(),
171
+ });
@@ -0,0 +1,28 @@
1
+ import { z } from 'zod';
2
+ export const successResponseSchema = z.object({
3
+ Rsp: z.object({
4
+ Status: z.literal('Ok'),
5
+ }),
6
+ });
7
+ export const cameraGuidsResponseSchema = z.object({
8
+ Rsp: z.object({
9
+ Status: z.literal('Ok'),
10
+ Result: z.array(z.object({ Guid: z.string() })),
11
+ }),
12
+ });
13
+ export const cameraDetailSchema = z.object({
14
+ Guid: z.string().optional(),
15
+ Name: z.string().optional(),
16
+ EntityType: z.string().optional(),
17
+ });
18
+ export const cameraDetailsResponseSchema = z.object({
19
+ Rsp: z.object({
20
+ Status: z.literal('Ok'),
21
+ Result: z.union([z.array(cameraDetailSchema), cameraDetailSchema]),
22
+ }),
23
+ });
24
+ export const cameraListSchema = z.array(z.object({
25
+ index: z.number(),
26
+ value: z.string(),
27
+ label: z.string(),
28
+ }));