camstreamerlib 4.0.0-beta.13 → 4.0.0-beta.130

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 (354) hide show
  1. package/README.md +143 -38
  2. package/cjs/CamOverlayAPI.d.ts +560 -336
  3. package/cjs/CamOverlayAPI.js +99 -184
  4. package/cjs/CamScripterAPI.d.ts +41 -17
  5. package/cjs/CamScripterAPI.js +50 -56
  6. package/cjs/CamStreamerAPI.d.ts +3139 -14
  7. package/cjs/CamStreamerAPI.js +151 -52
  8. package/cjs/CamSwitcherAPI.d.ts +155 -42
  9. package/cjs/CamSwitcherAPI.js +134 -189
  10. package/cjs/PlaneTrackerAPI.d.ts +236 -0
  11. package/cjs/PlaneTrackerAPI.js +194 -0
  12. package/cjs/VapixAPI.d.ts +84 -43
  13. package/cjs/VapixAPI.js +312 -216
  14. package/cjs/{CreatePackage.js → bin/CreatePackage.js} +44 -18
  15. package/cjs/errors/errors.d.ts +70 -4
  16. package/cjs/errors/errors.js +140 -7
  17. package/cjs/index.d.ts +20 -8
  18. package/cjs/index.js +28 -12
  19. package/cjs/internal/BasicAPI.d.ts +15 -0
  20. package/cjs/internal/BasicAPI.js +93 -0
  21. package/cjs/internal/ProxyClient.d.ts +8 -9
  22. package/cjs/internal/ProxyClient.js +28 -34
  23. package/cjs/internal/WsEvents.d.ts +38 -0
  24. package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +33 -22
  25. package/cjs/internal/constants.d.ts +1 -0
  26. package/cjs/internal/constants.js +2 -1
  27. package/cjs/internal/convertors.d.ts +6 -0
  28. package/cjs/internal/convertors.js +115 -0
  29. package/cjs/internal/types.d.ts +32 -20
  30. package/cjs/internal/utils.d.ts +1 -3
  31. package/cjs/internal/utils.js +1 -12
  32. package/cjs/internal/versionCompare.d.ts +2 -2
  33. package/cjs/node/CamOverlayDrawingAPI.d.ts +41 -0
  34. package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +28 -20
  35. package/{esm → cjs/node}/CamOverlayPainter/Frame.d.ts +8 -37
  36. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  37. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.d.ts +5 -21
  38. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
  39. package/cjs/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  40. package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
  41. package/cjs/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  42. package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +13 -13
  43. package/cjs/node/DefaultClient.d.ts +6 -6
  44. package/cjs/node/DefaultClient.js +12 -16
  45. package/cjs/{internal → node}/Digest.js +24 -1
  46. package/cjs/node/Digest.test.js +13 -0
  47. package/cjs/node/HttpRequestSender.d.ts +1 -0
  48. package/cjs/node/HttpRequestSender.js +14 -4
  49. package/cjs/node/HttpServer.d.ts +1 -1
  50. package/cjs/node/HttpServer.js +29 -6
  51. package/cjs/node/TimeZoneDaemon.d.ts +6 -0
  52. package/cjs/node/TimeZoneDaemon.js +29 -0
  53. package/cjs/node/VapixEvents.d.ts +16 -0
  54. package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
  55. package/cjs/node/WsClient.d.ts +9 -18
  56. package/cjs/node/WsClient.js +27 -20
  57. package/cjs/node/events/AxisCameraStationEvents.d.ts +12 -0
  58. package/cjs/{events → node/events}/AxisCameraStationEvents.js +18 -13
  59. package/cjs/node/events/GenetecAgent.d.ts +16 -0
  60. package/cjs/node/events/GenetecAgent.js +124 -0
  61. package/cjs/node/index.d.ts +18 -2
  62. package/cjs/node/index.js +39 -5
  63. package/cjs/{models/CamOverlayAPI/widgetsSchema.d.ts → types/CamOverlayAPI/CamOverlayAPI.d.ts} +2534 -746
  64. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +131 -0
  65. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.d.ts +15 -15
  66. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.js +7 -8
  67. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.d.ts +106 -105
  68. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.js +5 -6
  69. package/{esm/models → cjs/types}/CamOverlayAPI/imagesSchema.d.ts +17 -17
  70. package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
  71. package/cjs/{models → types}/CamOverlayAPI/index.d.ts +2 -4
  72. package/cjs/{models → types}/CamOverlayAPI/index.js +2 -4
  73. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.d.ts +25 -25
  74. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.js +6 -7
  75. package/{esm/models → cjs/types}/CamOverlayAPI/pipSchema.d.ts +19 -19
  76. package/cjs/{models → types}/CamOverlayAPI/pipSchema.js +5 -6
  77. package/{esm/models → cjs/types}/CamOverlayAPI/ptzCompassSchema.d.ts +16 -13
  78. package/cjs/{models → types}/CamOverlayAPI/ptzCompassSchema.js +5 -5
  79. package/{esm/models → cjs/types}/CamOverlayAPI/ptzSchema.d.ts +26 -26
  80. package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
  81. package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  82. package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
  83. package/cjs/{models → types}/CamOverlayAPI/screenSharingSchema.d.ts +13 -13
  84. package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
  85. package/{esm/models/CamOverlayAPI/widgetCommonSchema.d.ts → cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts} +75 -56
  86. package/cjs/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +33 -18
  87. package/{esm/models → cjs/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +13 -13
  88. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
  89. package/cjs/types/CamOverlayDrawingAPI.d.ts +48 -0
  90. package/cjs/types/CamOverlayDrawingAPI.js +2 -0
  91. package/cjs/types/CamOverlayPainter.d.ts +76 -0
  92. package/cjs/types/CamOverlayPainter.js +14 -0
  93. package/cjs/types/CamScripterAPI.d.ts +86 -23
  94. package/cjs/types/CamScripterAPI.js +24 -8
  95. package/cjs/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  96. package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
  97. package/cjs/types/CamStreamerAPI/CamStreamerAPI.d.ts +22299 -0
  98. package/cjs/types/CamStreamerAPI/CamStreamerAPI.js +165 -0
  99. package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +501 -0
  100. package/cjs/types/CamStreamerAPI/facebookSchema.js +23 -0
  101. package/cjs/types/CamStreamerAPI/index.d.ts +6 -0
  102. package/cjs/types/CamStreamerAPI/index.js +22 -0
  103. package/cjs/types/{CamStreamerAPI.d.ts → CamStreamerAPI/oldStreamSchema.d.ts} +104 -35
  104. package/cjs/types/CamStreamerAPI/oldStreamSchema.js +53 -0
  105. package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +500 -0
  106. package/cjs/types/CamStreamerAPI/streamCommonTypes.js +119 -0
  107. package/cjs/types/CamStreamerAPI/streamsSchema.d.ts +7379 -0
  108. package/cjs/types/CamStreamerAPI/streamsSchema.js +59 -0
  109. package/cjs/types/CamStreamerAPI/windySchema.d.ts +435 -0
  110. package/cjs/types/CamStreamerAPI/windySchema.js +11 -0
  111. package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +468 -0
  112. package/cjs/types/CamStreamerAPI/youtubeSchema.js +22 -0
  113. package/cjs/types/CamSwitcherAPI.d.ts +181 -121
  114. package/cjs/types/CamSwitcherAPI.js +31 -1
  115. package/cjs/{events → types}/GenetecAgent.d.ts +47 -47
  116. package/cjs/types/GenetecAgent.js +31 -0
  117. package/cjs/types/PlaneTrackerAPI.d.ts +980 -0
  118. package/cjs/types/PlaneTrackerAPI.js +333 -0
  119. package/cjs/types/VapixAPI.d.ts +255 -15
  120. package/cjs/types/VapixAPI.js +66 -3
  121. package/cjs/types/VapixEvents.d.ts +15 -0
  122. package/cjs/types/VapixEvents.js +2 -0
  123. package/cjs/types/common.d.ts +43 -3
  124. package/cjs/types/common.js +17 -2
  125. package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
  126. package/cjs/types/ws/CamOverlayEvents.js +19 -0
  127. package/cjs/types/ws/CamStreamerEvents.d.ts +282 -0
  128. package/cjs/types/ws/CamStreamerEvents.js +36 -0
  129. package/cjs/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  130. package/cjs/types/ws/PlaneTrackerEvents.js +207 -0
  131. package/cjs/web/DefaultClient.d.ts +7 -5
  132. package/cjs/web/DefaultClient.js +25 -11
  133. package/cjs/web/WsClient.d.ts +9 -5
  134. package/cjs/web/WsClient.js +16 -18
  135. package/cjs/ws/CamOverlayEvents.d.ts +8 -0
  136. package/cjs/ws/CamOverlayEvents.js +24 -0
  137. package/cjs/ws/CamStreamerEvents.d.ts +8 -0
  138. package/cjs/ws/CamStreamerEvents.js +24 -0
  139. package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
  140. package/cjs/ws/CamSwitcherEvents.js +24 -0
  141. package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
  142. package/cjs/ws/PlaneTrackerEvents.js +30 -0
  143. package/esm/CamOverlayAPI.js +99 -184
  144. package/esm/CamScripterAPI.js +51 -57
  145. package/esm/CamStreamerAPI.js +149 -51
  146. package/esm/CamSwitcherAPI.js +137 -192
  147. package/esm/PlaneTrackerAPI.js +190 -0
  148. package/esm/VapixAPI.js +314 -218
  149. package/esm/{CreatePackage.js → bin/CreatePackage.js} +16 -16
  150. package/esm/errors/errors.js +122 -6
  151. package/esm/index.js +20 -8
  152. package/esm/internal/BasicAPI.js +89 -0
  153. package/esm/internal/ProxyClient.js +28 -34
  154. package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +31 -20
  155. package/esm/internal/constants.js +1 -0
  156. package/esm/internal/convertors.js +108 -0
  157. package/esm/internal/utils.js +0 -9
  158. package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +26 -18
  159. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  160. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
  161. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
  162. package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
  163. package/esm/node/DefaultClient.js +12 -16
  164. package/esm/node/Digest.test.js +11 -0
  165. package/esm/node/HttpRequestSender.js +14 -4
  166. package/esm/node/HttpServer.js +1 -1
  167. package/esm/node/TimeZoneDaemon.js +25 -0
  168. package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
  169. package/esm/node/WsClient.js +22 -15
  170. package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
  171. package/esm/node/events/GenetecAgent.js +120 -0
  172. package/esm/node/index.js +18 -2
  173. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +110 -0
  174. package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.js +3 -4
  175. package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.js +3 -4
  176. package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
  177. package/esm/{models → types}/CamOverlayAPI/index.js +2 -4
  178. package/esm/{models → types}/CamOverlayAPI/infotickerSchema.js +3 -4
  179. package/esm/{models → types}/CamOverlayAPI/pipSchema.js +4 -5
  180. package/esm/{models → types}/CamOverlayAPI/ptzCompassSchema.js +4 -4
  181. package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
  182. package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
  183. package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
  184. package/esm/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +32 -17
  185. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
  186. package/esm/types/CamOverlayDrawingAPI.js +1 -0
  187. package/esm/types/CamOverlayPainter.js +11 -0
  188. package/esm/types/CamScripterAPI.js +23 -7
  189. package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
  190. package/esm/types/CamStreamerAPI/CamStreamerAPI.js +142 -0
  191. package/esm/types/CamStreamerAPI/facebookSchema.js +17 -0
  192. package/esm/types/CamStreamerAPI/index.js +6 -0
  193. package/esm/types/CamStreamerAPI/oldStreamSchema.js +50 -0
  194. package/esm/types/CamStreamerAPI/streamCommonTypes.js +116 -0
  195. package/esm/types/CamStreamerAPI/streamsSchema.js +53 -0
  196. package/esm/types/CamStreamerAPI/windySchema.js +5 -0
  197. package/esm/types/CamStreamerAPI/youtubeSchema.js +16 -0
  198. package/esm/types/CamSwitcherAPI.js +31 -1
  199. package/esm/types/GenetecAgent.js +28 -0
  200. package/esm/types/PlaneTrackerAPI.js +330 -0
  201. package/esm/types/VapixAPI.js +65 -2
  202. package/esm/types/VapixEvents.js +1 -0
  203. package/esm/types/common.js +16 -1
  204. package/esm/types/ws/CamOverlayEvents.js +16 -0
  205. package/esm/types/ws/CamStreamerEvents.js +33 -0
  206. package/esm/types/ws/PlaneTrackerEvents.js +204 -0
  207. package/esm/web/DefaultClient.js +25 -11
  208. package/esm/web/WsClient.js +16 -18
  209. package/esm/ws/CamOverlayEvents.js +20 -0
  210. package/esm/ws/CamStreamerEvents.js +20 -0
  211. package/esm/ws/CamSwitcherEvents.js +20 -0
  212. package/esm/ws/PlaneTrackerEvents.js +26 -0
  213. package/package.json +43 -9
  214. package/{esm → types}/CamOverlayAPI.d.ts +560 -336
  215. package/types/CamScripterAPI.d.ts +43 -0
  216. package/types/CamStreamerAPI.d.ts +3141 -0
  217. package/types/CamSwitcherAPI.d.ts +165 -0
  218. package/types/PlaneTrackerAPI.d.ts +236 -0
  219. package/types/VapixAPI.d.ts +119 -0
  220. package/types/bin/CreatePackage.d.ts +1 -0
  221. package/types/errors/errors.d.ts +103 -0
  222. package/types/index.d.ts +28 -0
  223. package/types/internal/BasicAPI.d.ts +15 -0
  224. package/types/internal/ProxyClient.d.ts +10 -0
  225. package/types/internal/WsEvents.d.ts +38 -0
  226. package/{esm → types}/internal/constants.d.ts +1 -0
  227. package/types/internal/convertors.d.ts +6 -0
  228. package/types/internal/types.d.ts +47 -0
  229. package/{esm → types}/internal/utils.d.ts +1 -3
  230. package/{esm → types}/internal/versionCompare.d.ts +2 -2
  231. package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
  232. package/{cjs → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
  233. package/{esm → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
  234. package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  235. package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  236. package/types/node/DefaultClient.d.ts +16 -0
  237. package/types/node/Digest.test.d.ts +1 -0
  238. package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
  239. package/{esm → types}/node/HttpServer.d.ts +1 -1
  240. package/types/node/TimeZoneDaemon.d.ts +6 -0
  241. package/types/node/VapixEvents.d.ts +16 -0
  242. package/types/node/WsClient.d.ts +30 -0
  243. package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
  244. package/types/node/events/GenetecAgent.d.ts +16 -0
  245. package/types/node/index.d.ts +18 -0
  246. package/{esm/models/CamOverlayAPI/widgetsSchema.d.ts → types/types/CamOverlayAPI/CamOverlayAPI.d.ts} +2534 -746
  247. package/{esm/models → types/types}/CamOverlayAPI/accuweatherSchema.d.ts +15 -15
  248. package/{esm/models → types/types}/CamOverlayAPI/customGraphicsSchema.d.ts +106 -105
  249. package/{cjs/models → types/types}/CamOverlayAPI/imagesSchema.d.ts +17 -17
  250. package/{esm/models → types/types}/CamOverlayAPI/index.d.ts +2 -4
  251. package/{esm/models → types/types}/CamOverlayAPI/infotickerSchema.d.ts +25 -25
  252. package/{cjs/models → types/types}/CamOverlayAPI/pipSchema.d.ts +19 -19
  253. package/{cjs/models → types/types}/CamOverlayAPI/ptzCompassSchema.d.ts +16 -13
  254. package/{cjs/models → types/types}/CamOverlayAPI/ptzSchema.d.ts +26 -26
  255. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  256. package/{esm/models → types/types}/CamOverlayAPI/screenSharingSchema.d.ts +13 -13
  257. package/{cjs/models/CamOverlayAPI/widgetCommonSchema.d.ts → types/types/CamOverlayAPI/serviceCommonTypes.d.ts} +75 -56
  258. package/{cjs/models → types/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +13 -13
  259. package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
  260. package/types/types/CamOverlayPainter.d.ts +76 -0
  261. package/types/types/CamScripterAPI.d.ts +130 -0
  262. package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  263. package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +22299 -0
  264. package/types/types/CamStreamerAPI/facebookSchema.d.ts +501 -0
  265. package/types/types/CamStreamerAPI/index.d.ts +6 -0
  266. package/{esm/types/CamStreamerAPI.d.ts → types/types/CamStreamerAPI/oldStreamSchema.d.ts} +104 -35
  267. package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +500 -0
  268. package/types/types/CamStreamerAPI/streamsSchema.d.ts +7379 -0
  269. package/types/types/CamStreamerAPI/windySchema.d.ts +435 -0
  270. package/types/types/CamStreamerAPI/youtubeSchema.d.ts +468 -0
  271. package/{esm → types}/types/CamSwitcherAPI.d.ts +181 -121
  272. package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
  273. package/types/types/PlaneTrackerAPI.d.ts +980 -0
  274. package/{esm → types}/types/VapixAPI.d.ts +255 -15
  275. package/types/types/VapixEvents.d.ts +15 -0
  276. package/types/types/common.d.ts +77 -0
  277. package/types/types/ws/CamOverlayEvents.d.ts +88 -0
  278. package/types/types/ws/CamStreamerEvents.d.ts +282 -0
  279. package/types/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  280. package/types/web/DefaultClient.d.ts +8 -0
  281. package/types/web/WsClient.d.ts +17 -0
  282. package/types/ws/CamOverlayEvents.d.ts +8 -0
  283. package/types/ws/CamStreamerEvents.d.ts +8 -0
  284. package/types/ws/CamSwitcherEvents.d.ts +8 -0
  285. package/types/ws/PlaneTrackerEvents.d.ts +9 -0
  286. package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
  287. package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
  288. package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
  289. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  290. package/cjs/CamSwitcherEvents.d.ts +0 -18
  291. package/cjs/VapixEvents.d.ts +0 -43
  292. package/cjs/events/AxisCameraStationEvents.d.ts +0 -10
  293. package/cjs/events/GenetecAgent.js +0 -123
  294. package/cjs/models/CamOverlayAPI/constants.d.ts +0 -11
  295. package/cjs/models/CamOverlayAPI/constants.js +0 -14
  296. package/cjs/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  297. package/cjs/models/CamOverlayAPI/fileSchema.js +0 -17
  298. package/cjs/models/CamOverlayAPI/imagesSchema.js +0 -10
  299. package/cjs/models/CamOverlayAPI/ptzSchema.js +0 -13
  300. package/cjs/models/CamOverlayAPI/screenSharingSchema.js +0 -9
  301. package/cjs/models/CamOverlayAPI/webCameraSharingSchema.js +0 -9
  302. package/cjs/models/CamOverlayAPI/widgetsSchema.js +0 -27
  303. package/cjs/node/WsEventClient.d.ts +0 -13
  304. package/cjs/node/WsEventClient.js +0 -22
  305. package/cjs/types/CamOverlayAPI.d.ts +0 -328
  306. package/cjs/types/CamOverlayAPI.js +0 -26
  307. package/cjs/types/CamStreamerAPI.js +0 -28
  308. package/esm/CamOverlayDrawingAPI.d.ts +0 -86
  309. package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
  310. package/esm/CamScripterAPI.d.ts +0 -19
  311. package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  312. package/esm/CamStreamerAPI.d.ts +0 -16
  313. package/esm/CamSwitcherAPI.d.ts +0 -52
  314. package/esm/CamSwitcherEvents.d.ts +0 -18
  315. package/esm/VapixAPI.d.ts +0 -78
  316. package/esm/VapixEvents.d.ts +0 -43
  317. package/esm/errors/errors.d.ts +0 -37
  318. package/esm/events/AxisCameraStationEvents.d.ts +0 -10
  319. package/esm/events/GenetecAgent.js +0 -119
  320. package/esm/index.d.ts +0 -16
  321. package/esm/internal/ProxyClient.d.ts +0 -11
  322. package/esm/internal/types.d.ts +0 -35
  323. package/esm/models/CamOverlayAPI/constants.d.ts +0 -11
  324. package/esm/models/CamOverlayAPI/constants.js +0 -11
  325. package/esm/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  326. package/esm/models/CamOverlayAPI/fileSchema.js +0 -14
  327. package/esm/models/CamOverlayAPI/imagesSchema.js +0 -7
  328. package/esm/models/CamOverlayAPI/ptzSchema.js +0 -10
  329. package/esm/models/CamOverlayAPI/screenSharingSchema.js +0 -6
  330. package/esm/models/CamOverlayAPI/webCameraSharingSchema.js +0 -6
  331. package/esm/models/CamOverlayAPI/widgetsSchema.js +0 -24
  332. package/esm/node/DefaultClient.d.ts +0 -16
  333. package/esm/node/WsClient.d.ts +0 -39
  334. package/esm/node/WsEventClient.d.ts +0 -13
  335. package/esm/node/WsEventClient.js +0 -18
  336. package/esm/types/CamOverlayAPI.d.ts +0 -328
  337. package/esm/types/CamOverlayAPI.js +0 -14
  338. package/esm/types/CamScripterAPI.d.ts +0 -67
  339. package/esm/types/CamStreamerAPI.js +0 -25
  340. package/esm/types/common.d.ts +0 -37
  341. package/esm/web/DefaultClient.d.ts +0 -6
  342. package/esm/web/WsClient.d.ts +0 -13
  343. package/esm/web/index.d.ts +0 -2
  344. package/cjs/{CreatePackage.d.ts → bin/CreatePackage.d.ts} +0 -0
  345. package/cjs/{internal → node}/Digest.d.ts +0 -0
  346. package/{esm/CreatePackage.d.ts → cjs/node/Digest.test.d.ts} +0 -0
  347. package/{esm/types → cjs/types/ws}/CamSwitcherEvents.d.ts +8 -8
  348. package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  349. package/esm/{internal → node}/Digest.js +0 -0
  350. package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  351. package/{esm → types}/internal/transformers.d.ts +0 -0
  352. package/{esm/internal → types/node}/Digest.d.ts +0 -0
  353. package/{cjs/types → types/types/ws}/CamSwitcherEvents.d.ts +8 -8
  354. /package/{esm/node → types/web}/index.d.ts +0 -0
@@ -0,0 +1,120 @@
1
+ import { ErrorWithResponse } from '../../errors/errors';
2
+ import { pad } from '../../internal/utils';
3
+ import { cameraDetailsResponseSchema, cameraGuidsResponseSchema, successResponseSchema, } from '../../types/GenetecAgent';
4
+ export class GenetecAgent {
5
+ settings;
6
+ baseUrl;
7
+ credentials;
8
+ constructor(options = {}) {
9
+ this.settings = {
10
+ protocol: options.protocol ?? 'http',
11
+ ip: options.ip ?? '127.0.0.1',
12
+ port: options.port ?? 80,
13
+ baseUri: options.baseUri ?? 'WebSdk',
14
+ user: options.user ?? 'root',
15
+ pass: options.pass ?? '',
16
+ appId: options.appId ?? '',
17
+ timeout: options.timeout ?? 10000,
18
+ };
19
+ this.baseUrl = `${this.settings.protocol}://${this.settings.ip}:${this.settings.port}/${this.settings.baseUri}`;
20
+ this.credentials = btoa(`${this.settings.user};${this.settings.appId}:${this.settings.pass}`);
21
+ }
22
+ async checkConnection() {
23
+ const requestOptions = this.getRequestOptions('GET');
24
+ const res = await this.fetchWithTimeout(new URL(this.baseUrl), requestOptions);
25
+ if (!res.ok) {
26
+ throw new ErrorWithResponse(res);
27
+ }
28
+ const responseBody = await res.text();
29
+ const result = await successResponseSchema.safeParseAsync(JSON.parse(responseBody));
30
+ if (!result.success) {
31
+ throw new Error('Genetec connection test failed: ' + JSON.stringify(result.error.issues) + '\n' + responseBody);
32
+ }
33
+ }
34
+ async getAllCameraGuids() {
35
+ const requestOptions = this.getRequestOptions('GET');
36
+ const url = new URL(`${this.baseUrl}/report/EntityConfiguration`);
37
+ url.searchParams.set('q', 'EntityTypes@Camera');
38
+ const res = await this.fetchWithTimeout(url, requestOptions);
39
+ if (!res.ok) {
40
+ throw new ErrorWithResponse(res);
41
+ }
42
+ const responseBody = await res.text();
43
+ const result = await cameraGuidsResponseSchema.safeParseAsync(JSON.parse(responseBody));
44
+ if (!result.success) {
45
+ throw new Error('Genetec get camera guids failed: ' + JSON.stringify(result.error.issues) + '\n' + responseBody);
46
+ }
47
+ return result.data;
48
+ }
49
+ async getCameraDetails(guids, parameters) {
50
+ const params = parameters.join(',');
51
+ const requestOptions = this.getRequestOptions('GET');
52
+ const allCameras = [];
53
+ const chunkSize = 10;
54
+ while (guids.length > 0) {
55
+ const chunk = guids.slice(0, chunkSize);
56
+ guids.splice(0, chunkSize);
57
+ const url = new URL(`${this.baseUrl}/entity`);
58
+ url.searchParams.set('q', chunk.map((item) => `entity=${item.Guid},${params}`).join(','));
59
+ const res = await this.fetchWithTimeout(url, requestOptions);
60
+ if (!res.ok) {
61
+ throw new ErrorWithResponse(res);
62
+ }
63
+ const responseBody = await res.text();
64
+ const result = await cameraDetailsResponseSchema.safeParseAsync(JSON.parse(responseBody));
65
+ if (!result.success) {
66
+ throw new Error('Genetec get camera details failed: ' + JSON.stringify(result.error.issues) + '\n' + responseBody);
67
+ }
68
+ const data = result.data;
69
+ const resultArray = Array.isArray(data.Rsp.Result) ? data.Rsp.Result : [data.Rsp.Result];
70
+ allCameras.push(...resultArray);
71
+ }
72
+ return allCameras;
73
+ }
74
+ async sendBookmark(guids, bookmarkText) {
75
+ const timeStamp = this.getTimeStamp();
76
+ const requestOptions = this.getRequestOptions('POST');
77
+ const url = new URL(`${this.baseUrl}/action`);
78
+ url.searchParams.set('q', guids.map((guid) => `AddCameraBookmark(${guid},${timeStamp},${bookmarkText})`).join(','));
79
+ const res = await this.fetchWithTimeout(url, requestOptions);
80
+ if (!res.ok) {
81
+ throw new ErrorWithResponse(res);
82
+ }
83
+ const responseBody = await res.text();
84
+ const result = await successResponseSchema.safeParseAsync(JSON.parse(responseBody));
85
+ if (!result.success) {
86
+ throw new Error('Genetec send bookmark failed: ' + JSON.stringify(result.error.issues) + '\n' + responseBody);
87
+ }
88
+ }
89
+ getRequestOptions(method) {
90
+ return {
91
+ method,
92
+ headers: new Headers({
93
+ Authorization: `Basic ${this.credentials}`,
94
+ Accept: 'text/json',
95
+ }),
96
+ redirect: 'follow',
97
+ };
98
+ }
99
+ getTimeStamp() {
100
+ const date = new Date();
101
+ const year = date.getUTCFullYear();
102
+ const month = pad(date.getUTCMonth() + 1, 2);
103
+ const day = pad(date.getUTCDate(), 2);
104
+ const hours = pad(date.getUTCHours(), 2);
105
+ const minutes = pad(date.getUTCMinutes(), 2);
106
+ const seconds = pad(date.getUTCSeconds(), 2);
107
+ const miliSeconds = pad(date.getUTCMilliseconds(), 2);
108
+ return `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.${miliSeconds}Z`;
109
+ }
110
+ async fetchWithTimeout(url, options) {
111
+ const controller = new AbortController();
112
+ const timeoutId = setTimeout(() => controller.abort(), this.settings.timeout);
113
+ try {
114
+ return await fetch(url, { ...options, signal: controller.signal });
115
+ }
116
+ finally {
117
+ clearTimeout(timeoutId);
118
+ }
119
+ }
120
+ }
package/esm/node/index.js CHANGED
@@ -1,2 +1,18 @@
1
- export { DefaultClient } from './DefaultClient';
2
- export { WsClient } from './WsClient';
1
+ export * from './DefaultClient';
2
+ export * from './WsClient';
3
+ export * from './HttpServer';
4
+ export * from './HttpRequestSender';
5
+ export * from './events/AxisCameraStationEvents';
6
+ export * from './TimeZoneDaemon';
7
+ export * from './events/GenetecAgent';
8
+ export * from '../types/GenetecAgent';
9
+ export { ResourceManager } from './CamOverlayPainter/ResourceManager';
10
+ export { Painter } from './CamOverlayPainter/Painter';
11
+ export { Frame } from './CamOverlayPainter/Frame';
12
+ export * from '../types/CamOverlayPainter';
13
+ export { CamOverlayDrawingAPI } from './CamOverlayDrawingAPI';
14
+ export * from '../types/CamOverlayDrawingAPI';
15
+ export { CamScripterAPICameraEventsGenerator } from './CamScripterAPICameraEventsGenerator';
16
+ export * from '../types/CamScripterAPICameraEventsGenerator';
17
+ export { VapixEvents } from './VapixEvents';
18
+ export * from '../types/VapixEvents';
@@ -0,0 +1,110 @@
1
+ import { z } from 'zod';
2
+ import { infoTickerSchema } from './infotickerSchema';
3
+ import { accuweatherSchema } from './accuweatherSchema';
4
+ import { ptzCompassSchema } from './ptzCompassSchema';
5
+ import { imagesSchema } from './imagesSchema';
6
+ import { ptzSchema } from './ptzSchema';
7
+ import { pipSchema } from './pipSchema';
8
+ import { customGraphicsSchema } from './customGraphicsSchema';
9
+ import { screenSharingSchema } from './screenSharingSchema';
10
+ import { webCameraSharingSchema } from './webCameraSharingSchema';
11
+ import { baseballScoreBoardAutomaticSchema, baseballScoreBoardSchema, scoreBoardSchema, scoreOverviewSchema, } from './scoreBoardSchema';
12
+ export const wsResponseSchema = z.object({
13
+ status: z.number(),
14
+ message: z.string(),
15
+ });
16
+ export const servicesSchema = z.discriminatedUnion('name', [
17
+ infoTickerSchema,
18
+ accuweatherSchema,
19
+ ptzCompassSchema,
20
+ imagesSchema,
21
+ ptzSchema,
22
+ pipSchema,
23
+ customGraphicsSchema,
24
+ screenSharingSchema,
25
+ webCameraSharingSchema,
26
+ scoreBoardSchema,
27
+ baseballScoreBoardSchema,
28
+ baseballScoreBoardAutomaticSchema,
29
+ scoreOverviewSchema,
30
+ ]);
31
+ export const serviceListSchema = z.object({
32
+ services: z.array(servicesSchema),
33
+ });
34
+ export const isAccuweather = (service) => service.name === 'accuweather';
35
+ export const isCustomGraphics = (service) => service.name === 'customGraphics';
36
+ export const isImages = (service) => service.name === 'images';
37
+ export const isInfoticker = (service) => service.name === 'infoticker';
38
+ export const isPip = (service) => service.name === 'pip';
39
+ export const isPtzCompass = (service) => service.name === 'ptzCompass';
40
+ export const isPtz = (service) => service.name === 'ptz';
41
+ export const isScreenSharing = (service) => service.name === 'screenSharing';
42
+ export const isWebCameraSharing = (service) => service.name === 'web_camera';
43
+ export const isScoreBoard = (service) => service.name === 'scoreBoard';
44
+ export const isBaseballScoreBoard = (service) => service.name === 'baseballScoreBoard';
45
+ export const isBaseballScoreBoardAutomatic = (service) => service.name === 'myBallBaseballWidgets';
46
+ export const isScoreOverview = (service) => service.name === 'scoreOverview';
47
+ export var ImageType;
48
+ (function (ImageType) {
49
+ ImageType[ImageType["PNG"] = 0] = "PNG";
50
+ ImageType[ImageType["JPEG"] = 1] = "JPEG";
51
+ })(ImageType || (ImageType = {}));
52
+ export const imageFileStorageTypeSchema = z.union([
53
+ z.literal('flash'),
54
+ z.literal('SD0'),
55
+ z.literal('ftp'),
56
+ z.literal('samba'),
57
+ z.literal('url'),
58
+ ]);
59
+ export const fontFileStorageTypeSchema = z.union([z.literal('flash'), z.literal('SD0')]);
60
+ export const imageFilestorageDataListSchema = z.array(z.object({
61
+ type: imageFileStorageTypeSchema,
62
+ state: z.string(),
63
+ }));
64
+ export const fontStorageDataListSchema = z.array(z.object({
65
+ type: fontFileStorageTypeSchema,
66
+ state: z.string(),
67
+ }));
68
+ export const getStorageDataListSchema = (fileType) => {
69
+ return fileType === 'image' ? imageFilestorageDataListSchema : fontStorageDataListSchema;
70
+ };
71
+ export const imageStorageResponseSchema = z.object({
72
+ code: z.number(),
73
+ list: imageFilestorageDataListSchema,
74
+ });
75
+ export const fontStorageResponseSchema = z.object({
76
+ code: z.number(),
77
+ list: fontStorageDataListSchema,
78
+ });
79
+ export const getStorageResponseSchema = (fileType) => {
80
+ return fileType === 'image' ? imageStorageResponseSchema : fontStorageResponseSchema;
81
+ };
82
+ export const imageFileSchema = z.object({
83
+ name: z.string(),
84
+ path: z.string().url(),
85
+ storage: imageFileStorageTypeSchema,
86
+ });
87
+ export const fontFileSchema = z.object({
88
+ name: z.string(),
89
+ path: z.string().url(),
90
+ storage: fontFileStorageTypeSchema,
91
+ });
92
+ export const getFileSchema = (fileType) => {
93
+ return fileType === 'image' ? imageFileSchema : fontFileSchema;
94
+ };
95
+ export const imageFileListSchema = z.array(imageFileSchema);
96
+ export const fontFileListSchema = z.array(fontFileSchema);
97
+ export const getFileListSchema = (fileType) => {
98
+ return fileType === 'image' ? imageFileListSchema : fontFileListSchema;
99
+ };
100
+ export const imageFileDataSchema = z.object({
101
+ code: z.number(),
102
+ list: imageFileListSchema,
103
+ });
104
+ export const fontFileDataSchema = z.object({
105
+ code: z.number(),
106
+ list: fontFileListSchema,
107
+ });
108
+ export const getFileDataSchema = (fileType) => {
109
+ return fileType === 'image' ? imageFileDataSchema : fontFileDataSchema;
110
+ };
@@ -1,8 +1,7 @@
1
- import { allowedWidgetNames } from './constants';
2
- import { coordinateSystemSchema, fontSchema, languageSchema, weatherUnitSchema, widgetCommonSchema, } from './widgetCommonSchema';
3
1
  import { z } from 'zod';
4
- export const accuweatherSchema = widgetCommonSchema.extend({
5
- name: z.literal(allowedWidgetNames.accuweather),
2
+ import { serviceNames, coordinateSystemSchema, fontSchema, languageSchema, weatherUnitSchema, serviceCommonSchema, } from './serviceCommonTypes';
3
+ export const accuweatherSchema = serviceCommonSchema.extend({
4
+ name: z.literal(serviceNames.accuweather),
6
5
  location: z.string(),
7
6
  locationName: z.string(),
8
7
  title: z.string(),
@@ -1,6 +1,5 @@
1
- import { allowedWidgetNames } from './constants';
2
- import { coordinateSystemSchema, fontSchema, widgetCommonSchema } from './widgetCommonSchema';
3
1
  import { z } from 'zod';
2
+ import { serviceNames, coordinateSystemSchema, fontSchema, serviceCommonSchema } from './serviceCommonTypes';
4
3
  const mappingZonesCommonSchema = z.object({
5
4
  name: z.string(),
6
5
  pos_x: z.number(),
@@ -49,8 +48,8 @@ const mappingZoneCountdownSchema = mappingZonesCommonSchema.extend({
49
48
  settings: mappingZonesCountdownSettingsSchema,
50
49
  });
51
50
  export const mappingZoneSchema = z.discriminatedUnion('type', [mappingZonePlainSchema, mappingZoneCountdownSchema]);
52
- export const customGraphicsSchema = widgetCommonSchema.extend({
53
- name: z.literal(allowedWidgetNames.customGraphics),
51
+ export const customGraphicsSchema = serviceCommonSchema.extend({
52
+ name: z.literal(serviceNames.customGraphics),
54
53
  pos_x: z.number(),
55
54
  pos_y: z.number(),
56
55
  coordSystem: coordinateSystemSchema,
@@ -0,0 +1,6 @@
1
+ import { z } from 'zod';
2
+ import { serviceNames, overlaySchema, serviceCommonSchema } from './serviceCommonTypes';
3
+ export const imagesSchema = serviceCommonSchema.extend({
4
+ name: z.literal(serviceNames.images),
5
+ overlayList: z.array(overlaySchema),
6
+ });
@@ -1,3 +1,5 @@
1
+ export * from './CamOverlayAPI';
2
+ export * from './serviceCommonTypes';
1
3
  export * from './accuweatherSchema';
2
4
  export * from './customGraphicsSchema';
3
5
  export * from './imagesSchema';
@@ -7,7 +9,3 @@ export * from './ptzCompassSchema';
7
9
  export * from './ptzSchema';
8
10
  export * from './screenSharingSchema';
9
11
  export * from './webCameraSharingSchema';
10
- export * from './widgetCommonSchema';
11
- export * from './widgetsSchema';
12
- export * from './constants';
13
- export * from './fileSchema';
@@ -1,8 +1,7 @@
1
- import { allowedWidgetNames } from './constants';
2
- import { fontSchema, languageSchema, weatherUnitSchema, widgetCommonSchema } from './widgetCommonSchema';
3
1
  import { z } from 'zod';
4
- export const infoTickerSchema = widgetCommonSchema.extend({
5
- name: z.literal(allowedWidgetNames.infoticker),
2
+ import { serviceNames, fontSchema, languageSchema, weatherUnitSchema, serviceCommonSchema } from './serviceCommonTypes';
3
+ export const infoTickerSchema = serviceCommonSchema.extend({
4
+ name: z.literal(serviceNames.infoticker),
6
5
  showClock: z.union([z.literal(0), z.literal(1)]),
7
6
  clockType: z.union([z.literal('12h'), z.literal('24h')]),
8
7
  textColor: z.string(),
@@ -1,8 +1,7 @@
1
- import { allowedWidgetNames } from './constants';
2
- import { coordinateSystemSchema, widgetCommonSchema } from './widgetCommonSchema';
3
1
  import { z } from 'zod';
4
- export const pipSchema = widgetCommonSchema.extend({
5
- name: z.literal(allowedWidgetNames.pip),
2
+ import { serviceNames, coordinateSystemSchema, serviceCommonSchema } from './serviceCommonTypes';
3
+ export const pipSchema = serviceCommonSchema.extend({
4
+ name: z.literal(serviceNames.pip),
6
5
  coordSystem: coordinateSystemSchema,
7
6
  pos_x: z.number(),
8
7
  pos_y: z.number(),
@@ -25,7 +24,7 @@ export const pipSchema = widgetCommonSchema.extend({
25
24
  z.literal('overlays=image'),
26
25
  z.literal('overlays=application'),
27
26
  ]),
28
- rotate: z.union([z.literal(0), z.literal(90), z.literal(180), z.literal(270)]),
27
+ rotate: z.union([z.literal(0), z.literal(90), z.literal(180), z.literal(270)]).default(0),
29
28
  dewarping: z.object({
30
29
  enabled: z.boolean(),
31
30
  rectangle: z.array(z.tuple([z.number(), z.number()])),
@@ -1,8 +1,7 @@
1
- import { allowedWidgetNames } from './constants';
2
- import { coordinateSystemSchema, widgetCommonSchema } from './widgetCommonSchema';
3
1
  import { z } from 'zod';
4
- export const ptzCompassSchema = widgetCommonSchema.extend({
5
- name: z.literal(allowedWidgetNames.ptzCompass),
2
+ import { serviceNames, coordinateSystemSchema, serviceCommonSchema } from './serviceCommonTypes';
3
+ export const ptzCompassSchema = serviceCommonSchema.extend({
4
+ name: z.literal(serviceNames.ptzCompass),
6
5
  pos_x: z.number(),
7
6
  pos_y: z.number(),
8
7
  coordSystem: coordinateSystemSchema,
@@ -20,4 +19,5 @@ export const ptzCompassSchema = widgetCommonSchema.extend({
20
19
  generalIframeWidth: z.number().optional(),
21
20
  generalIframeHeight: z.number().optional(),
22
21
  generalAddress: z.string().optional(),
22
+ showDegrees: z.boolean().default(false),
23
23
  });
@@ -0,0 +1,9 @@
1
+ import { z } from 'zod';
2
+ import { serviceNames, overlaySchema, serviceCommonSchema } from './serviceCommonTypes';
3
+ export const ptzSchema = serviceCommonSchema.extend({
4
+ name: z.literal(serviceNames.ptz),
5
+ ptz_positions: z.record(z.string(), z.object({
6
+ overlayList: z.array(overlaySchema.omit({ active: true, fps: true })),
7
+ loop: z.boolean(),
8
+ })),
9
+ });
@@ -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
+ });
@@ -1,4 +1,19 @@
1
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
+ };
2
17
  export const coordinateSystemSchema = z.union([
3
18
  z.literal('top_left'),
4
19
  z.literal('top'),
@@ -25,7 +40,15 @@ export const languageSchema = z.union([
25
40
  z.literal('ru-ru'),
26
41
  z.literal('sv-se'),
27
42
  ]);
28
- export const widgetCommonSchema = z.object({
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({
29
52
  id: z.number().nonnegative(),
30
53
  enabled: z.union([z.literal(0), z.literal(1)]),
31
54
  automationType: z.union([
@@ -40,19 +63,18 @@ export const widgetCommonSchema = z.object({
40
63
  cameraList: z.array(z.number()),
41
64
  camera: z.number().nonnegative().optional(),
42
65
  schedule: z.string().optional(),
43
- customName: z.string(),
66
+ customName: z.string().default(''),
44
67
  zIndex: z.number().optional(),
45
68
  width: z.number().nonnegative(),
46
69
  height: z.number().nonnegative(),
47
70
  });
48
- export const fontSchema = z.union([
49
- z.literal('classic'),
50
- z.literal('digital'),
51
- z.custom((val) => {
52
- return typeof val === 'string';
53
- }),
54
- ]);
55
- export const weatherUnitSchema = z.union([z.literal('Metric'), z.literal('Imperial')]);
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
+ });
56
78
  export const overlaySchema = z.object({
57
79
  active: z.boolean(),
58
80
  coordSystem: coordinateSystemSchema,
@@ -64,10 +86,3 @@ export const overlaySchema = z.object({
64
86
  scale: z.number(),
65
87
  fps: z.number().optional(),
66
88
  });
67
- export const sharingSchema = widgetCommonSchema.extend({
68
- pos_x: z.number().nonnegative(),
69
- pos_y: z.number().nonnegative(),
70
- coordSystem: coordinateSystemSchema,
71
- screenSize: z.number().positive(),
72
- fps: z.number(),
73
- });
@@ -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 @@
1
+ export {};
@@ -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,17 +1,33 @@
1
1
  import { z } from 'zod';
2
+ import { flashStorageTypeSchema, sdCardStorageTypeSchema, storageTypeSchema } from './common';
3
+ export const nodeStateSchema = z.object({
4
+ node_state: z.union([z.literal('OK'), z.literal('NOT_INSTALLED'), z.literal('NOT_FOUND')]),
5
+ });
2
6
  export const packageInfoListSchema = z.array(z.object({
3
- storage: z.union([z.literal('SD_CARD'), z.literal('INTERNAL')]),
7
+ storage: storageTypeSchema,
4
8
  manifest: z.object({
5
9
  package_name: z.string(),
6
10
  package_menu_name: z.string(),
7
11
  package_version: z.string(),
8
12
  vendor: z.string(),
9
- required_camscripter_version: z.string(),
10
- required_camscripter_rbi_version: z.string(),
13
+ required_camscripter_version: z.string().optional(),
14
+ required_camscripter_rbi_version: z.string().optional(),
11
15
  ui_link: z.string(),
12
16
  }),
13
17
  }));
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
- }));
18
+ export const packageConfigSchema = z.record(z.string(), z.object({ enabled: z.boolean() }));
19
+ export const cameraStorageSchema = z.union([
20
+ z.tuple([
21
+ z.object({ type: flashStorageTypeSchema, capacity_mb: z.number() }),
22
+ z.object({ type: sdCardStorageTypeSchema, capacity_mb: z.number() }),
23
+ ]),
24
+ z.tuple([z.object({ type: flashStorageTypeSchema, capacity_mb: z.number() })]),
25
+ ]);
26
+ export const camscripterApiResponseSchema = z.object({
27
+ status: z.number(),
28
+ message: z.string(),
29
+ });
30
+ export const cameraTimeResponseSchema = z.object({
31
+ state: z.boolean(),
32
+ code: z.number(),
33
+ });
@@ -0,0 +1 @@
1
+ export {};