camstreamerlib 4.0.0-beta.10 → 4.0.0-beta.101

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 (408) hide show
  1. package/README.md +143 -38
  2. package/cjs/CamOverlayAPI.d.ts +579 -341
  3. package/cjs/CamOverlayAPI.js +112 -149
  4. package/cjs/CamScripterAPI.d.ts +44 -17
  5. package/cjs/CamScripterAPI.js +50 -34
  6. package/cjs/CamStreamerAPI.d.ts +2080 -14
  7. package/cjs/CamStreamerAPI.js +171 -44
  8. package/cjs/CamSwitcherAPI.d.ts +158 -43
  9. package/cjs/CamSwitcherAPI.js +138 -122
  10. package/cjs/PlaneTrackerAPI.d.ts +241 -0
  11. package/cjs/PlaneTrackerAPI.js +254 -0
  12. package/cjs/VapixAPI.d.ts +84 -44
  13. package/cjs/VapixAPI.js +285 -213
  14. package/cjs/{CreatePackage.js → bin/CreatePackage.js} +44 -18
  15. package/cjs/errors/errors.d.ts +69 -4
  16. package/cjs/errors/errors.js +138 -7
  17. package/cjs/index.d.ts +20 -7
  18. package/cjs/index.js +28 -9
  19. package/cjs/internal/ProxyClient.d.ts +8 -9
  20. package/cjs/internal/ProxyClient.js +28 -34
  21. package/cjs/internal/WsEvents.d.ts +37 -0
  22. package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +28 -22
  23. package/cjs/internal/types.d.ts +47 -0
  24. package/cjs/internal/types.js +2 -0
  25. package/cjs/internal/utils.d.ts +3 -1
  26. package/cjs/internal/utils.js +15 -3
  27. package/cjs/internal/versionCompare.d.ts +2 -2
  28. package/cjs/node/CamOverlayDrawingAPI.d.ts +41 -0
  29. package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +28 -20
  30. package/{esm → cjs/node}/CamOverlayPainter/Frame.d.ts +8 -37
  31. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  32. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.d.ts +5 -21
  33. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
  34. package/cjs/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  35. package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
  36. package/cjs/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  37. package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +13 -13
  38. package/cjs/node/DefaultClient.d.ts +7 -6
  39. package/cjs/node/DefaultClient.js +12 -14
  40. package/cjs/{internal → node}/Digest.js +24 -1
  41. package/cjs/node/Digest.test.js +13 -0
  42. package/cjs/node/HttpRequestSender.d.ts +1 -0
  43. package/cjs/node/HttpRequestSender.js +14 -4
  44. package/cjs/node/HttpServer.d.ts +1 -1
  45. package/cjs/node/HttpServer.js +29 -6
  46. package/cjs/node/TimeZoneDaemon.d.ts +6 -0
  47. package/cjs/node/TimeZoneDaemon.js +29 -0
  48. package/cjs/node/VapixEvents.d.ts +16 -0
  49. package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
  50. package/cjs/node/WsClient.d.ts +9 -18
  51. package/cjs/node/WsClient.js +27 -20
  52. package/cjs/node/events/AxisCameraStationEvents.d.ts +12 -0
  53. package/cjs/node/events/AxisCameraStationEvents.js +53 -0
  54. package/cjs/node/events/GenetecAgent.d.ts +16 -0
  55. package/cjs/node/events/GenetecAgent.js +124 -0
  56. package/cjs/node/index.d.ts +18 -2
  57. package/cjs/node/index.js +39 -5
  58. package/cjs/{models/CamOverlayAPI/widgetsSchema.d.ts → types/CamOverlayAPI/CamOverlayAPI.d.ts} +2356 -849
  59. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +92 -0
  60. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.d.ts +19 -19
  61. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.js +7 -8
  62. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.d.ts +122 -121
  63. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.js +5 -6
  64. package/{esm/models → cjs/types}/CamOverlayAPI/imagesSchema.d.ts +21 -21
  65. package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
  66. package/cjs/{models → types}/CamOverlayAPI/index.d.ts +2 -4
  67. package/cjs/{models → types}/CamOverlayAPI/index.js +2 -4
  68. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.d.ts +27 -27
  69. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.js +6 -7
  70. package/{esm/models → cjs/types}/CamOverlayAPI/pipSchema.d.ts +23 -23
  71. package/cjs/{models → types}/CamOverlayAPI/pipSchema.js +5 -6
  72. package/{esm/models → cjs/types}/CamOverlayAPI/ptzCompassSchema.d.ts +20 -17
  73. package/cjs/{models → types}/CamOverlayAPI/ptzCompassSchema.js +5 -5
  74. package/{esm/models → cjs/types}/CamOverlayAPI/ptzSchema.d.ts +30 -30
  75. package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
  76. package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  77. package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
  78. package/cjs/{models → types}/CamOverlayAPI/screenSharingSchema.d.ts +17 -17
  79. package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
  80. package/{esm/models/CamOverlayAPI/widgetCommonSchema.d.ts → cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts} +79 -60
  81. package/cjs/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +33 -18
  82. package/{esm/models → cjs/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +17 -17
  83. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
  84. package/cjs/types/CamOverlayDrawingAPI.d.ts +48 -0
  85. package/cjs/types/CamOverlayDrawingAPI.js +2 -0
  86. package/cjs/types/CamOverlayPainter.d.ts +76 -0
  87. package/cjs/types/CamOverlayPainter.js +14 -0
  88. package/cjs/types/CamScripterAPI.d.ts +86 -23
  89. package/cjs/types/CamScripterAPI.js +24 -8
  90. package/cjs/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  91. package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
  92. package/cjs/types/CamStreamerAPI/CamStreamerAPI.d.ts +13791 -0
  93. package/cjs/types/CamStreamerAPI/CamStreamerAPI.js +153 -0
  94. package/cjs/types/CamStreamerAPI/churchSchema.d.ts +275 -0
  95. package/cjs/types/CamStreamerAPI/churchSchema.js +11 -0
  96. package/cjs/types/CamStreamerAPI/daCastSchema.d.ts +275 -0
  97. package/cjs/types/CamStreamerAPI/daCastSchema.js +11 -0
  98. package/cjs/types/CamStreamerAPI/dailymotionSchema.d.ts +275 -0
  99. package/cjs/types/CamStreamerAPI/dailymotionSchema.js +11 -0
  100. package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +275 -0
  101. package/cjs/types/CamStreamerAPI/facebookSchema.js +11 -0
  102. package/cjs/types/CamStreamerAPI/gameChangerSchema.d.ts +275 -0
  103. package/cjs/types/CamStreamerAPI/gameChangerSchema.js +11 -0
  104. package/cjs/types/CamStreamerAPI/hlsPullSchema.d.ts +275 -0
  105. package/cjs/types/CamStreamerAPI/hlsPullSchema.js +11 -0
  106. package/cjs/types/CamStreamerAPI/hlsPushSchema.d.ts +275 -0
  107. package/cjs/types/CamStreamerAPI/hlsPushSchema.js +11 -0
  108. package/cjs/types/CamStreamerAPI/ibmSchema.d.ts +275 -0
  109. package/cjs/types/CamStreamerAPI/ibmSchema.js +11 -0
  110. package/cjs/types/CamStreamerAPI/index.d.ts +8 -0
  111. package/cjs/types/CamStreamerAPI/index.js +24 -0
  112. package/cjs/types/CamStreamerAPI/microsoftAzureSchema.d.ts +275 -0
  113. package/cjs/types/CamStreamerAPI/microsoftAzureSchema.js +11 -0
  114. package/cjs/types/CamStreamerAPI/microsoftStreamSchema.d.ts +275 -0
  115. package/cjs/types/CamStreamerAPI/microsoftStreamSchema.js +11 -0
  116. package/cjs/types/CamStreamerAPI/mpegDvbSchema.d.ts +323 -0
  117. package/cjs/types/CamStreamerAPI/mpegDvbSchema.js +27 -0
  118. package/cjs/types/{CamStreamerAPI.d.ts → CamStreamerAPI/oldStreamSchema.d.ts} +100 -31
  119. package/cjs/types/CamStreamerAPI/oldStreamSchema.js +53 -0
  120. package/cjs/types/CamStreamerAPI/rtmpSchema.d.ts +284 -0
  121. package/cjs/types/CamStreamerAPI/rtmpSchema.js +14 -0
  122. package/cjs/types/CamStreamerAPI/sdCardSchema.d.ts +275 -0
  123. package/cjs/types/CamStreamerAPI/sdCardSchema.js +11 -0
  124. package/cjs/types/CamStreamerAPI/srtSchema.d.ts +275 -0
  125. package/cjs/types/CamStreamerAPI/srtSchema.js +11 -0
  126. package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +492 -0
  127. package/cjs/types/CamStreamerAPI/streamCommonTypes.js +85 -0
  128. package/cjs/types/CamStreamerAPI/twitchSchema.d.ts +275 -0
  129. package/cjs/types/CamStreamerAPI/twitchSchema.js +11 -0
  130. package/cjs/types/CamStreamerAPI/vimeoSchema.d.ts +275 -0
  131. package/cjs/types/CamStreamerAPI/vimeoSchema.js +11 -0
  132. package/cjs/types/CamStreamerAPI/windySchema.d.ts +275 -0
  133. package/cjs/types/CamStreamerAPI/windySchema.js +11 -0
  134. package/cjs/types/CamStreamerAPI/wowzaSchema.d.ts +275 -0
  135. package/cjs/types/CamStreamerAPI/wowzaSchema.js +11 -0
  136. package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +317 -0
  137. package/cjs/types/CamStreamerAPI/youtubeSchema.js +25 -0
  138. package/cjs/types/CamSwitcherAPI.d.ts +189 -110
  139. package/cjs/types/CamSwitcherAPI.js +38 -1
  140. package/cjs/{events → types}/GenetecAgent.d.ts +47 -47
  141. package/cjs/types/GenetecAgent.js +31 -0
  142. package/cjs/types/PlaneTrackerAPI.d.ts +980 -0
  143. package/cjs/types/PlaneTrackerAPI.js +333 -0
  144. package/cjs/types/VapixAPI.d.ts +339 -99
  145. package/cjs/types/VapixAPI.js +66 -3
  146. package/cjs/types/VapixEvents.d.ts +15 -0
  147. package/cjs/types/VapixEvents.js +2 -0
  148. package/cjs/types/common.d.ts +18 -5
  149. package/cjs/types/common.js +5 -2
  150. package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
  151. package/cjs/types/ws/CamOverlayEvents.js +19 -0
  152. package/cjs/types/ws/CamStreamerEvents.d.ts +249 -0
  153. package/cjs/types/ws/CamStreamerEvents.js +32 -0
  154. package/cjs/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  155. package/cjs/types/ws/PlaneTrackerEvents.js +207 -0
  156. package/cjs/web/DefaultClient.d.ts +7 -4
  157. package/cjs/web/DefaultClient.js +25 -9
  158. package/cjs/web/WsClient.d.ts +9 -5
  159. package/cjs/web/WsClient.js +16 -18
  160. package/cjs/ws/CamOverlayEvents.d.ts +8 -0
  161. package/cjs/ws/CamOverlayEvents.js +24 -0
  162. package/cjs/ws/CamStreamerEvents.d.ts +8 -0
  163. package/cjs/ws/CamStreamerEvents.js +24 -0
  164. package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
  165. package/cjs/ws/CamSwitcherEvents.js +24 -0
  166. package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
  167. package/cjs/ws/PlaneTrackerEvents.js +30 -0
  168. package/esm/CamOverlayAPI.js +111 -148
  169. package/esm/CamScripterAPI.js +48 -32
  170. package/esm/CamStreamerAPI.js +166 -40
  171. package/esm/CamSwitcherAPI.js +136 -120
  172. package/esm/PlaneTrackerAPI.js +250 -0
  173. package/esm/VapixAPI.js +285 -213
  174. package/esm/{CreatePackage.js → bin/CreatePackage.js} +16 -16
  175. package/esm/errors/errors.js +120 -6
  176. package/esm/index.js +20 -7
  177. package/esm/internal/ProxyClient.js +28 -34
  178. package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +26 -20
  179. package/esm/internal/types.js +1 -0
  180. package/esm/internal/utils.js +11 -1
  181. package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +26 -18
  182. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  183. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
  184. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
  185. package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
  186. package/esm/node/DefaultClient.js +12 -14
  187. package/esm/node/Digest.test.js +11 -0
  188. package/esm/node/HttpRequestSender.js +14 -4
  189. package/esm/node/HttpServer.js +1 -1
  190. package/esm/node/TimeZoneDaemon.js +25 -0
  191. package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
  192. package/esm/node/WsClient.js +22 -15
  193. package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
  194. package/esm/node/events/GenetecAgent.js +120 -0
  195. package/esm/node/index.js +18 -2
  196. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +76 -0
  197. package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.js +3 -4
  198. package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.js +3 -4
  199. package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
  200. package/esm/{models → types}/CamOverlayAPI/index.js +2 -4
  201. package/esm/{models → types}/CamOverlayAPI/infotickerSchema.js +3 -4
  202. package/esm/{models → types}/CamOverlayAPI/pipSchema.js +4 -5
  203. package/esm/{models → types}/CamOverlayAPI/ptzCompassSchema.js +4 -4
  204. package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
  205. package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
  206. package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
  207. package/esm/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +32 -17
  208. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
  209. package/esm/types/CamOverlayDrawingAPI.js +1 -0
  210. package/esm/types/CamOverlayPainter.js +11 -0
  211. package/esm/types/CamScripterAPI.js +23 -7
  212. package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
  213. package/esm/types/CamStreamerAPI/CamStreamerAPI.js +131 -0
  214. package/esm/types/CamStreamerAPI/churchSchema.js +5 -0
  215. package/esm/types/CamStreamerAPI/daCastSchema.js +5 -0
  216. package/esm/types/CamStreamerAPI/dailymotionSchema.js +5 -0
  217. package/esm/types/CamStreamerAPI/facebookSchema.js +5 -0
  218. package/esm/types/CamStreamerAPI/gameChangerSchema.js +5 -0
  219. package/esm/types/CamStreamerAPI/hlsPullSchema.js +5 -0
  220. package/esm/types/CamStreamerAPI/hlsPushSchema.js +5 -0
  221. package/esm/types/CamStreamerAPI/ibmSchema.js +5 -0
  222. package/esm/types/CamStreamerAPI/index.js +8 -0
  223. package/esm/types/CamStreamerAPI/microsoftAzureSchema.js +5 -0
  224. package/esm/types/CamStreamerAPI/microsoftStreamSchema.js +5 -0
  225. package/esm/types/CamStreamerAPI/mpegDvbSchema.js +21 -0
  226. package/esm/types/CamStreamerAPI/oldStreamSchema.js +50 -0
  227. package/esm/types/CamStreamerAPI/rtmpSchema.js +8 -0
  228. package/esm/types/CamStreamerAPI/sdCardSchema.js +5 -0
  229. package/esm/types/CamStreamerAPI/srtSchema.js +5 -0
  230. package/esm/types/CamStreamerAPI/streamCommonTypes.js +82 -0
  231. package/esm/types/CamStreamerAPI/twitchSchema.js +5 -0
  232. package/esm/types/CamStreamerAPI/vimeoSchema.js +5 -0
  233. package/esm/types/CamStreamerAPI/windySchema.js +5 -0
  234. package/esm/types/CamStreamerAPI/wowzaSchema.js +5 -0
  235. package/esm/types/CamStreamerAPI/youtubeSchema.js +19 -0
  236. package/esm/types/CamSwitcherAPI.js +38 -1
  237. package/esm/types/GenetecAgent.js +28 -0
  238. package/esm/types/PlaneTrackerAPI.js +330 -0
  239. package/esm/types/VapixAPI.js +65 -2
  240. package/esm/types/VapixEvents.js +1 -0
  241. package/esm/types/common.js +4 -1
  242. package/esm/types/ws/CamOverlayEvents.js +16 -0
  243. package/esm/types/ws/CamStreamerEvents.js +29 -0
  244. package/esm/types/ws/PlaneTrackerEvents.js +204 -0
  245. package/esm/web/DefaultClient.js +25 -9
  246. package/esm/web/WsClient.js +16 -18
  247. package/esm/ws/CamOverlayEvents.js +20 -0
  248. package/esm/ws/CamStreamerEvents.js +20 -0
  249. package/esm/ws/CamSwitcherEvents.js +20 -0
  250. package/esm/ws/PlaneTrackerEvents.js +26 -0
  251. package/package.json +43 -9
  252. package/{esm → types}/CamOverlayAPI.d.ts +579 -341
  253. package/types/CamScripterAPI.d.ts +46 -0
  254. package/types/CamStreamerAPI.d.ts +2082 -0
  255. package/types/CamSwitcherAPI.d.ts +167 -0
  256. package/types/PlaneTrackerAPI.d.ts +241 -0
  257. package/types/VapixAPI.d.ts +118 -0
  258. package/types/bin/CreatePackage.d.ts +1 -0
  259. package/types/errors/errors.d.ts +102 -0
  260. package/types/index.d.ts +27 -0
  261. package/types/internal/ProxyClient.d.ts +10 -0
  262. package/types/internal/WsEvents.d.ts +37 -0
  263. package/types/internal/types.d.ts +47 -0
  264. package/{esm → types}/internal/utils.d.ts +3 -1
  265. package/{esm → types}/internal/versionCompare.d.ts +2 -2
  266. package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
  267. package/{cjs → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
  268. package/{esm → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
  269. package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  270. package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  271. package/types/node/DefaultClient.d.ts +16 -0
  272. package/types/node/Digest.test.d.ts +1 -0
  273. package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
  274. package/{esm → types}/node/HttpServer.d.ts +1 -1
  275. package/types/node/TimeZoneDaemon.d.ts +6 -0
  276. package/types/node/VapixEvents.d.ts +16 -0
  277. package/types/node/WsClient.d.ts +30 -0
  278. package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
  279. package/types/node/events/GenetecAgent.d.ts +16 -0
  280. package/types/node/index.d.ts +18 -0
  281. package/{esm/models/CamOverlayAPI/widgetsSchema.d.ts → types/types/CamOverlayAPI/CamOverlayAPI.d.ts} +2356 -849
  282. package/{esm/models → types/types}/CamOverlayAPI/accuweatherSchema.d.ts +19 -19
  283. package/{esm/models → types/types}/CamOverlayAPI/customGraphicsSchema.d.ts +122 -121
  284. package/{cjs/models → types/types}/CamOverlayAPI/imagesSchema.d.ts +21 -21
  285. package/{esm/models → types/types}/CamOverlayAPI/index.d.ts +2 -4
  286. package/{esm/models → types/types}/CamOverlayAPI/infotickerSchema.d.ts +27 -27
  287. package/{cjs/models → types/types}/CamOverlayAPI/pipSchema.d.ts +23 -23
  288. package/{cjs/models → types/types}/CamOverlayAPI/ptzCompassSchema.d.ts +20 -17
  289. package/{cjs/models → types/types}/CamOverlayAPI/ptzSchema.d.ts +30 -30
  290. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  291. package/{esm/models → types/types}/CamOverlayAPI/screenSharingSchema.d.ts +17 -17
  292. package/{cjs/models/CamOverlayAPI/widgetCommonSchema.d.ts → types/types/CamOverlayAPI/serviceCommonTypes.d.ts} +79 -60
  293. package/{cjs/models → types/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +17 -17
  294. package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
  295. package/types/types/CamOverlayPainter.d.ts +76 -0
  296. package/types/types/CamScripterAPI.d.ts +130 -0
  297. package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  298. package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +13791 -0
  299. package/types/types/CamStreamerAPI/churchSchema.d.ts +275 -0
  300. package/types/types/CamStreamerAPI/daCastSchema.d.ts +275 -0
  301. package/types/types/CamStreamerAPI/dailymotionSchema.d.ts +275 -0
  302. package/types/types/CamStreamerAPI/facebookSchema.d.ts +275 -0
  303. package/types/types/CamStreamerAPI/gameChangerSchema.d.ts +275 -0
  304. package/types/types/CamStreamerAPI/hlsPullSchema.d.ts +275 -0
  305. package/types/types/CamStreamerAPI/hlsPushSchema.d.ts +275 -0
  306. package/types/types/CamStreamerAPI/ibmSchema.d.ts +275 -0
  307. package/types/types/CamStreamerAPI/index.d.ts +8 -0
  308. package/types/types/CamStreamerAPI/microsoftAzureSchema.d.ts +275 -0
  309. package/types/types/CamStreamerAPI/microsoftStreamSchema.d.ts +275 -0
  310. package/types/types/CamStreamerAPI/mpegDvbSchema.d.ts +323 -0
  311. package/{esm/types/CamStreamerAPI.d.ts → types/types/CamStreamerAPI/oldStreamSchema.d.ts} +100 -31
  312. package/types/types/CamStreamerAPI/rtmpSchema.d.ts +284 -0
  313. package/types/types/CamStreamerAPI/sdCardSchema.d.ts +275 -0
  314. package/types/types/CamStreamerAPI/srtSchema.d.ts +275 -0
  315. package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +492 -0
  316. package/types/types/CamStreamerAPI/twitchSchema.d.ts +275 -0
  317. package/types/types/CamStreamerAPI/vimeoSchema.d.ts +275 -0
  318. package/types/types/CamStreamerAPI/windySchema.d.ts +275 -0
  319. package/types/types/CamStreamerAPI/wowzaSchema.d.ts +275 -0
  320. package/types/types/CamStreamerAPI/youtubeSchema.d.ts +317 -0
  321. package/{esm → types}/types/CamSwitcherAPI.d.ts +189 -110
  322. package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
  323. package/types/types/PlaneTrackerAPI.d.ts +980 -0
  324. package/{esm → types}/types/VapixAPI.d.ts +339 -99
  325. package/types/types/VapixEvents.d.ts +15 -0
  326. package/{esm → types}/types/common.d.ts +18 -5
  327. package/types/types/ws/CamOverlayEvents.d.ts +88 -0
  328. package/types/types/ws/CamStreamerEvents.d.ts +249 -0
  329. package/types/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  330. package/types/web/DefaultClient.d.ts +8 -0
  331. package/types/web/WsClient.d.ts +17 -0
  332. package/types/ws/CamOverlayEvents.d.ts +8 -0
  333. package/types/ws/CamStreamerEvents.d.ts +8 -0
  334. package/types/ws/CamSwitcherEvents.d.ts +8 -0
  335. package/types/ws/PlaneTrackerEvents.d.ts +9 -0
  336. package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
  337. package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
  338. package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
  339. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  340. package/cjs/CamSwitcherEvents.d.ts +0 -18
  341. package/cjs/VapixEvents.d.ts +0 -43
  342. package/cjs/events/AxisCameraStationEvents.d.ts +0 -9
  343. package/cjs/events/AxisCameraStationEvents.js +0 -48
  344. package/cjs/events/GenetecAgent.js +0 -123
  345. package/cjs/internal/common.d.ts +0 -34
  346. package/cjs/internal/common.js +0 -27
  347. package/cjs/models/CamOverlayAPI/constants.d.ts +0 -11
  348. package/cjs/models/CamOverlayAPI/constants.js +0 -14
  349. package/cjs/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  350. package/cjs/models/CamOverlayAPI/fileSchema.js +0 -17
  351. package/cjs/models/CamOverlayAPI/imagesSchema.js +0 -10
  352. package/cjs/models/CamOverlayAPI/ptzSchema.js +0 -13
  353. package/cjs/models/CamOverlayAPI/screenSharingSchema.js +0 -9
  354. package/cjs/models/CamOverlayAPI/webCameraSharingSchema.js +0 -9
  355. package/cjs/models/CamOverlayAPI/widgetsSchema.js +0 -27
  356. package/cjs/node/WsEventClient.d.ts +0 -13
  357. package/cjs/node/WsEventClient.js +0 -22
  358. package/cjs/types/CamOverlayAPI.d.ts +0 -328
  359. package/cjs/types/CamOverlayAPI.js +0 -26
  360. package/cjs/types/CamStreamerAPI.js +0 -28
  361. package/esm/CamOverlayDrawingAPI.d.ts +0 -86
  362. package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
  363. package/esm/CamScripterAPI.d.ts +0 -19
  364. package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  365. package/esm/CamStreamerAPI.d.ts +0 -16
  366. package/esm/CamSwitcherAPI.d.ts +0 -52
  367. package/esm/CamSwitcherEvents.d.ts +0 -18
  368. package/esm/VapixAPI.d.ts +0 -78
  369. package/esm/VapixEvents.d.ts +0 -43
  370. package/esm/errors/errors.d.ts +0 -37
  371. package/esm/events/AxisCameraStationEvents.d.ts +0 -9
  372. package/esm/events/GenetecAgent.js +0 -119
  373. package/esm/index.d.ts +0 -14
  374. package/esm/internal/ProxyClient.d.ts +0 -11
  375. package/esm/internal/common.d.ts +0 -34
  376. package/esm/internal/common.js +0 -20
  377. package/esm/models/CamOverlayAPI/constants.d.ts +0 -11
  378. package/esm/models/CamOverlayAPI/constants.js +0 -11
  379. package/esm/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  380. package/esm/models/CamOverlayAPI/fileSchema.js +0 -14
  381. package/esm/models/CamOverlayAPI/imagesSchema.js +0 -7
  382. package/esm/models/CamOverlayAPI/ptzSchema.js +0 -10
  383. package/esm/models/CamOverlayAPI/screenSharingSchema.js +0 -6
  384. package/esm/models/CamOverlayAPI/webCameraSharingSchema.js +0 -6
  385. package/esm/models/CamOverlayAPI/widgetsSchema.js +0 -24
  386. package/esm/node/DefaultClient.d.ts +0 -15
  387. package/esm/node/WsClient.d.ts +0 -39
  388. package/esm/node/WsEventClient.d.ts +0 -13
  389. package/esm/node/WsEventClient.js +0 -18
  390. package/esm/types/CamOverlayAPI.d.ts +0 -328
  391. package/esm/types/CamOverlayAPI.js +0 -14
  392. package/esm/types/CamScripterAPI.d.ts +0 -67
  393. package/esm/types/CamStreamerAPI.js +0 -25
  394. package/esm/web/DefaultClient.d.ts +0 -5
  395. package/esm/web/WsClient.d.ts +0 -13
  396. package/esm/web/index.d.ts +0 -2
  397. /package/cjs/{CreatePackage.d.ts → bin/CreatePackage.d.ts} +0 -0
  398. /package/cjs/{internal → node}/Digest.d.ts +0 -0
  399. /package/{esm/CreatePackage.d.ts → cjs/node/Digest.test.d.ts} +0 -0
  400. /package/cjs/types/{CamSwitcherEvents.d.ts → ws/CamSwitcherEvents.d.ts} +0 -0
  401. /package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  402. /package/esm/{internal → node}/Digest.js +0 -0
  403. /package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  404. /package/{esm → types}/internal/constants.d.ts +0 -0
  405. /package/{esm → types}/internal/transformers.d.ts +0 -0
  406. /package/{esm/internal → types/node}/Digest.d.ts +0 -0
  407. /package/{esm/types → types/types/ws}/CamSwitcherEvents.d.ts +0 -0
  408. /package/{esm/node → types/web}/index.d.ts +0 -0
@@ -1,161 +1,115 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CamOverlayAPI = exports.BASE_URL = void 0;
4
- const common_1 = require("./internal/common");
5
- const CamOverlayAPI_1 = require("./types/CamOverlayAPI");
3
+ exports.CamOverlayAPI = void 0;
4
+ const utils_1 = require("./internal/utils");
6
5
  const errors_1 = require("./errors/errors");
7
- const common_2 = require("./types/common");
6
+ const common_1 = require("./types/common");
8
7
  const zod_1 = require("zod");
9
- const widgetsSchema_1 = require("./models/CamOverlayAPI/widgetsSchema");
10
- const fileSchema_1 = require("./models/CamOverlayAPI/fileSchema");
11
- const utils_1 = require("./internal/utils");
12
- exports.BASE_URL = '/local/camoverlay/api';
8
+ const ProxyClient_1 = require("./internal/ProxyClient");
9
+ const CamOverlayAPI_1 = require("./types/CamOverlayAPI");
10
+ const BASE_PATH = '/local/camoverlay/api';
13
11
  class CamOverlayAPI {
14
12
  client;
15
13
  constructor(client) {
16
14
  this.client = client;
17
15
  }
18
- static getProxyUrlPath = () => `${exports.BASE_URL}/proxy.cgi`;
19
- static getFilePreviewPath = (path) => `${exports.BASE_URL}/image.cgi?path=${encodeURIComponent(path)}`;
20
- async checkCameraTime() {
21
- const responseSchema = zod_1.z.discriminatedUnion('state', [
22
- zod_1.z.object({
23
- state: zod_1.z.literal(true),
24
- code: zod_1.z.number(),
25
- }),
26
- zod_1.z.object({
27
- state: zod_1.z.literal(false),
28
- code: zod_1.z.number(),
29
- reason: zod_1.z.union([
30
- zod_1.z.literal('INVALID_TIME'),
31
- zod_1.z.literal('COULDNT_RESOLVE_HOST'),
32
- zod_1.z.literal('CONNECTION_ERROR'),
33
- ]),
34
- message: zod_1.z.string(),
35
- }),
36
- ]);
37
- const response = await this._get(`${exports.BASE_URL}/camera_time.cgi`);
38
- const cameraTime = responseSchema.parse(response);
39
- if (!cameraTime.state) {
40
- console.error(`Camera time check failed: ${cameraTime.reason} - ${cameraTime.message}`);
41
- }
42
- return cameraTime.state;
16
+ static getBasePath = () => BASE_PATH;
17
+ static getProxyPath = () => `${BASE_PATH}/proxy.cgi`;
18
+ static getFilePreviewPath = (path) => `${BASE_PATH}/image.cgi?path=${encodeURIComponent(path)}`;
19
+ getClient(proxyParams) {
20
+ return proxyParams ? new ProxyClient_1.ProxyClient(this.client, proxyParams) : this.client;
43
21
  }
44
- async getNetworkCameraList() {
45
- const response = await this._get(`${exports.BASE_URL}/network_camera_list.cgi`);
46
- return common_2.networkCameraListSchema.parse(response.camera_list);
22
+ async checkCameraTime(options) {
23
+ const res = await this._getJson(`${BASE_PATH}/camera_time.cgi`, undefined, options);
24
+ return zod_1.z.boolean().parse(res.state);
47
25
  }
48
- async wsAuthorization() {
49
- const responseSchema = zod_1.z.object({
50
- status: zod_1.z.number(),
51
- message: zod_1.z.string(),
52
- data: zod_1.z.string(),
53
- });
54
- const response = await this._get(`${exports.BASE_URL}/ws_authorization.cgi`);
55
- return responseSchema.parse(response).data;
26
+ async getNetworkCameraList(options) {
27
+ const res = await this._getJson(`${BASE_PATH}/network_camera_list.cgi`, undefined, options);
28
+ return common_1.networkCameraListSchema.parse(res.camera_list);
56
29
  }
57
- async getMjpegStreamImage(mjpegUrl) {
58
- return await this._getBlob(`${exports.BASE_URL}/fetch_mjpeg_image.cgi?mjpeg_url=${encodeURIComponent(decodeURIComponent(mjpegUrl))}`);
30
+ async wsAuthorization(options) {
31
+ const res = await this._getJson(`${BASE_PATH}/ws_authorization.cgi`, undefined, options);
32
+ return CamOverlayAPI_1.wsResponseSchema.parse(res).message;
59
33
  }
60
- async listFiles(fileType) {
61
- const fileDataSchema = zod_1.z.object({
62
- code: zod_1.z.number(),
63
- list: fileSchema_1.fileListSchema,
64
- });
65
- const files = await this._get(`${exports.BASE_URL}/upload_${fileType}.cgi`, {
66
- action: 'list',
67
- });
68
- return fileSchema_1.fileListSchema.parse(files.list);
34
+ async getMjpegStreamImage(mjpegUrl, options) {
35
+ return await this._getBlob(`${BASE_PATH}/fetch_mjpeg_image.cgi`, { mjpeg_url: decodeURIComponent(mjpegUrl) }, options);
36
+ }
37
+ async listFiles(fileType, options) {
38
+ const res = await this._getJson(`${BASE_PATH}/upload_${fileType}.cgi`, { action: 'list' }, options);
39
+ return CamOverlayAPI_1.fileListSchema.parse(res.list);
69
40
  }
70
- async uploadFile(fileType, formData, storage) {
71
- const path = `${exports.BASE_URL}/upload_${fileType}.cgi`;
72
- await this._post(path, formData, {
41
+ async uploadFile(fileType, formData, storage, options) {
42
+ await this._post(`${BASE_PATH}/upload_${fileType}.cgi`, formData, {
73
43
  action: 'upload',
74
44
  storage: storage,
75
- });
45
+ }, options);
76
46
  }
77
- async removeFile(fileType, fileParams) {
78
- const path = `${exports.BASE_URL}/upload_${fileType}.cgi`;
79
- await this._postUrlEncoded(path, {
47
+ async removeFile(fileType, fileParams, options) {
48
+ await this._postUrlEncoded(`${BASE_PATH}/upload_${fileType}.cgi`, {
80
49
  action: 'remove',
81
50
  ...fileParams,
82
- });
51
+ }, options, undefined);
83
52
  }
84
- async getFileStorage(fileType) {
85
- const storageDataListSchema = zod_1.z.array(zod_1.z.object({
86
- type: fileSchema_1.storageSchema,
87
- state: zod_1.z.string(),
88
- }));
89
- const responseSchema = zod_1.z.object({
90
- code: zod_1.z.number(),
91
- list: storageDataListSchema,
92
- });
93
- const data = await this._get(`${exports.BASE_URL}/upload_${fileType}.cgi`, {
94
- action: 'get_storage',
95
- });
96
- if (data.code !== 200) {
97
- throw new Error('Error occured while fetching file storage data');
53
+ async getFileStorage(fileType, options) {
54
+ const res = await this._getJson(`${BASE_PATH}/upload_${fileType}.cgi`, { action: 'get_storage' }, options);
55
+ if (res.code !== 200) {
56
+ throw new errors_1.StorageDataFetchError(res);
98
57
  }
99
- return storageDataListSchema.parse(data.list);
58
+ return CamOverlayAPI_1.storageDataListSchema.parse(res.list);
100
59
  }
101
- async getFilePreviewFromCamera(path) {
102
- return await this._getBlob(CamOverlayAPI.getFilePreviewPath(path));
60
+ async getFilePreviewFromCamera(path, options) {
61
+ return await this._getBlob(CamOverlayAPI.getFilePreviewPath(path), undefined, options);
103
62
  }
104
- async updateInfoticker(serviceID, text) {
105
- await this._get(`${exports.BASE_URL}/infoticker.cgi?service_id=${serviceID}&text=${text}`);
63
+ async updateInfoticker(serviceId, text, options) {
64
+ await this._getJson(`${BASE_PATH}/infoticker.cgi`, { service_id: serviceId, text: text }, options);
106
65
  }
107
- async setEnabled(serviceID, enabled) {
108
- await this._post(`${exports.BASE_URL}/enabled.cgi?id_${serviceID}=${enabled ? 1 : 0}`, '');
66
+ async setEnabled(serviceId, enabled, options) {
67
+ await this._post(`${BASE_PATH}/enabled.cgi`, '', { [`id_${serviceId}`]: enabled ? 1 : 0 }, options);
109
68
  }
110
- async isEnabled(serviceID) {
111
- const res = await this.client.get(`${exports.BASE_URL}/services.cgi?action=get`);
69
+ async isEnabled(serviceId, options) {
70
+ const agent = this.getClient(options?.proxyParams);
71
+ const res = await agent.get({
72
+ path: `${BASE_PATH}/services.cgi`,
73
+ parameters: { action: 'get' },
74
+ timeout: options?.timeout,
75
+ });
112
76
  if (res.ok) {
113
77
  const data = JSON.parse(await res.text());
114
78
  for (const service of data.services) {
115
- if (service.id === serviceID) {
79
+ if (service.id === serviceId) {
116
80
  return service.enabled === 1;
117
81
  }
118
82
  }
119
83
  throw new errors_1.ServiceNotFoundError();
120
84
  }
121
85
  else {
122
- throw new Error(await (0, common_1.responseStringify)(res));
86
+ throw new errors_1.ErrorWithResponse(res);
123
87
  }
124
88
  }
125
- async getSingleWidget(serviceId) {
126
- const data = await this._get(`${exports.BASE_URL}/services.cgi`, {
89
+ async getSingleService(serviceId, options) {
90
+ const res = await this._getJson(`${BASE_PATH}/services.cgi`, {
127
91
  action: 'get',
128
- service_id: serviceId.toString(),
129
- });
130
- return widgetsSchema_1.widgetsSchema.parse(data);
92
+ service_id: serviceId,
93
+ }, options);
94
+ return CamOverlayAPI_1.servicesSchema.parse(res);
131
95
  }
132
- async getWidgets() {
133
- const widgetList = await this._get(`${exports.BASE_URL}/services.cgi`, {
134
- action: 'get',
135
- });
136
- const widgets = widgetList.services;
137
- widgets.forEach((widget) => {
138
- const parsedWidget = widgetsSchema_1.widgetsSchema.safeParse(widget);
139
- if (!parsedWidget.success) {
140
- console.warn(`[SERVICE SCHEMA MISMATCH]: Service ${widget.name} (${widget.id}) does not match the current schema, or is a hidden service.`);
141
- }
142
- });
143
- return widgets;
96
+ async getServices(options) {
97
+ const res = await this._getJson(`${BASE_PATH}/services.cgi`, { action: 'get' }, options);
98
+ const services = CamOverlayAPI_1.serviceListSchema.parse(res).services;
99
+ return services;
144
100
  }
145
- async updateSingleWidget(widget) {
146
- const path = `${exports.BASE_URL}/services.cgi`;
147
- await this._postJsonEncoded(path, JSON.stringify(widget), {
101
+ async updateSingleService(service, options) {
102
+ await this._postJsonEncoded(`${BASE_PATH}/services.cgi`, JSON.stringify(service), {
148
103
  action: 'set',
149
- service_id: widget.id.toString(),
150
- });
104
+ service_id: service.id,
105
+ }, options, undefined);
151
106
  }
152
- async updateWidgets(widgets) {
153
- const path = `${exports.BASE_URL}/services.cgi`;
154
- await this._postJsonEncoded(path, JSON.stringify({ services: widgets }), {
107
+ async updateServices(services, options) {
108
+ await this._postJsonEncoded(`${BASE_PATH}/services.cgi`, JSON.stringify({ services: services }), {
155
109
  action: 'set',
156
- });
110
+ }, options, undefined);
157
111
  }
158
- updateCGText(serviceID, fields) {
112
+ updateCGText(serviceId, fields, options) {
159
113
  const params = {};
160
114
  for (const field of fields) {
161
115
  const name = field.field_name;
@@ -164,93 +118,102 @@ class CamOverlayAPI {
164
118
  params[`${name}_color`] = field.color;
165
119
  }
166
120
  }
167
- return this.promiseCGUpdate(serviceID, 'update_text', params);
121
+ return this.promiseCGUpdate(serviceId, 'update_text', params, undefined, undefined, options);
168
122
  }
169
- updateCGImagePos(serviceID, coordinates = '', x = 0, y = 0) {
123
+ updateCGImagePos(serviceId, coordinates = '', x = 0, y = 0, options) {
170
124
  const params = {
171
125
  coord_system: coordinates,
172
126
  pos_x: x,
173
127
  pos_y: y,
174
128
  };
175
- return this.promiseCGUpdate(serviceID, 'update_image', params);
129
+ return this.promiseCGUpdate(serviceId, 'update_image', params, undefined, undefined, options);
176
130
  }
177
- updateCGImage(serviceID, path, coordinates = '', x = 0, y = 0) {
131
+ updateCGImage(serviceId, path, coordinates = '', x = 0, y = 0, options) {
178
132
  const params = {
179
133
  coord_system: coordinates,
180
134
  pos_x: x,
181
135
  pos_y: y,
182
136
  image: path,
183
137
  };
184
- return this.promiseCGUpdate(serviceID, 'update_image', params);
138
+ return this.promiseCGUpdate(serviceId, 'update_image', params, undefined, undefined, options);
185
139
  }
186
- updateCGImageFromData(serviceID, imageType, imageData, coordinates = '', x = 0, y = 0) {
140
+ updateCGImageFromData(serviceId, imageType, imageData, coordinates = '', x = 0, y = 0, options) {
187
141
  const contentType = imageType === CamOverlayAPI_1.ImageType.PNG ? 'image/png' : 'image/jpeg';
188
142
  const params = {
189
143
  coord_system: coordinates,
190
144
  pos_x: x,
191
145
  pos_y: y,
192
146
  };
193
- return this.promiseCGUpdate(serviceID, 'update_image', params, contentType, imageData);
147
+ return this.promiseCGUpdate(serviceId, 'update_image', params, contentType, imageData, options);
194
148
  }
195
- async promiseCGUpdate(serviceID, action, params = {}, contentType, data) {
196
- const path = `${exports.BASE_URL}/customGraphics.cgi`;
149
+ async promiseCGUpdate(serviceId, action, params = {}, contentType, data, options) {
150
+ const path = `${BASE_PATH}/customGraphics.cgi`;
197
151
  let headers = {};
198
- if (contentType !== undefined && data) {
152
+ if (contentType !== undefined && data !== undefined) {
199
153
  headers = { 'Content-Type': contentType };
200
154
  }
201
- const res = await this.client.post(path, data ?? '', {
202
- action: action,
203
- service_id: serviceID.toString(),
204
- ...params,
205
- }, headers);
155
+ const agent = this.getClient(options?.proxyParams);
156
+ const res = await agent.post({
157
+ path,
158
+ data: data ?? '',
159
+ parameters: {
160
+ action: action,
161
+ service_id: serviceId.toString(),
162
+ ...params,
163
+ },
164
+ headers,
165
+ timeout: options?.timeout,
166
+ });
206
167
  if (!res.ok) {
207
- throw new Error(await (0, common_1.responseStringify)(res));
168
+ throw new errors_1.ErrorWithResponse(res);
208
169
  }
209
170
  }
210
- async _get(...args) {
211
- const res = await this.client.get(...args);
171
+ async _getJson(path, parameters, options) {
172
+ const agent = this.getClient(options?.proxyParams);
173
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
212
174
  if (res.ok) {
213
- return (await res.json());
175
+ return await res.json();
214
176
  }
215
177
  else {
216
- throw new Error(await (0, common_1.responseStringify)(res));
178
+ throw new errors_1.ErrorWithResponse(res);
217
179
  }
218
180
  }
219
- async _post(...args) {
220
- const res = await this.client.post(...args);
181
+ async _post(path, data, parameters, options, headers) {
182
+ const agent = this.getClient(options?.proxyParams);
183
+ const res = await agent.post({ path, data, parameters, headers, timeout: options?.timeout });
221
184
  if (res.ok) {
222
- return (await res.json());
185
+ return await res.json();
223
186
  }
224
187
  else {
225
- throw new Error(await (0, common_1.responseStringify)(res));
188
+ throw new errors_1.ErrorWithResponse(res);
226
189
  }
227
190
  }
228
- async _getBlob(...args) {
229
- const res = await this.client.get(...args);
191
+ async _getBlob(path, parameters, options) {
192
+ const agent = this.getClient(options?.proxyParams);
193
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
230
194
  if (res.ok) {
231
195
  return await this.parseBlobResponse(res);
232
196
  }
233
197
  else {
234
- throw new Error(await (0, common_1.responseStringify)(res));
198
+ throw new errors_1.ErrorWithResponse(res);
235
199
  }
236
200
  }
237
201
  async parseBlobResponse(response) {
238
202
  try {
239
- return await response.blob();
203
+ return (await response.blob());
240
204
  }
241
205
  catch (err) {
242
206
  throw new errors_1.ParsingBlobError(err);
243
207
  }
244
208
  }
245
- async _postUrlEncoded(path, params, headers) {
246
- const data = (0, utils_1.paramToUrl)(params);
209
+ async _postUrlEncoded(path, parameters, options, headers) {
210
+ const data = (0, utils_1.paramToUrl)(parameters);
247
211
  const baseHeaders = { 'Content-Type': 'application/x-www-form-urlencoded' };
248
- return this._post(path, data, {}, { ...baseHeaders, ...headers });
212
+ return this._post(path, data, undefined, options, { ...baseHeaders, ...headers });
249
213
  }
250
- async _postJsonEncoded(...args) {
251
- const [path, data, params, headers] = args;
214
+ async _postJsonEncoded(path, data, parameters, options, headers) {
252
215
  const baseHeaders = { 'Accept': 'application/json', 'Content-Type': 'application/json' };
253
- return this._post(path, data, params, { ...baseHeaders, ...headers });
216
+ return this._post(path, data, parameters, options, { ...baseHeaders, ...headers });
254
217
  }
255
218
  }
256
219
  exports.CamOverlayAPI = CamOverlayAPI;
@@ -1,19 +1,46 @@
1
- import { IClient } from './internal/common';
2
- import { TNodeState, TPackageInfoList, TStorage, TStorageType } from './types/CamScripterAPI';
3
- import { TNetworkCamera } from './types/common';
4
- export declare class CamOverlayAPI<Client extends IClient = IClient> {
5
- client: Client;
1
+ import { ProxyClient } from './internal/ProxyClient';
2
+ import { IClient, TResponse } from './internal/types';
3
+ import { THttpRequestOptions, TProxyParams, TStorageType } from './types/common';
4
+ export declare class CamScripterAPI<Client extends IClient<TResponse, any>> {
5
+ private client;
6
6
  constructor(client: Client);
7
- checkCameraTime(): Promise<boolean>;
8
- getStorageInfo(): Promise<TStorage>;
9
- getNetworkCameraList(): Promise<TNetworkCamera[]>;
10
- getPackageList(): Promise<TPackageInfoList>;
11
- installPackages(formData: FormData, storage: TStorageType): Promise<void>;
12
- uninstallPackage(packageId: string): Promise<void>;
13
- importSettings(packageId: string, formData: FormData): Promise<void>;
14
- exportSettings(packageId: string, formData: FormData): Promise<void>;
15
- getNodejsStatus(): Promise<TNodeState>;
16
- installNodejs(storage: TStorageType): Promise<void>;
17
- private get;
18
- private post;
7
+ static getProxyPath: () => string;
8
+ getClient(proxyParams?: TProxyParams): Client | ProxyClient<Client>;
9
+ checkCameraTime(options?: THttpRequestOptions): Promise<boolean>;
10
+ getNetworkCameraList(options?: THttpRequestOptions): Promise<{
11
+ name: string;
12
+ ip: string;
13
+ }[]>;
14
+ getStorageInfo(options?: THttpRequestOptions): Promise<[{
15
+ type: "FLASH";
16
+ capacity_mb: number;
17
+ }, {
18
+ type: "SD_DISK";
19
+ capacity_mb: number;
20
+ }] | [{
21
+ type: "FLASH";
22
+ capacity_mb: number;
23
+ }]>;
24
+ getPackageList(options?: THttpRequestOptions): Promise<{
25
+ storage: "FLASH" | "SD_DISK";
26
+ manifest: {
27
+ package_name: string;
28
+ package_menu_name: string;
29
+ package_version: string;
30
+ vendor: string;
31
+ ui_link: string;
32
+ required_camscripter_version?: string | undefined;
33
+ required_camscripter_rbi_version?: string | undefined;
34
+ };
35
+ }[]>;
36
+ installPackages(formData: Parameters<Client['post']>[0]['data'], storage: TStorageType, options?: THttpRequestOptions): Promise<void>;
37
+ uninstallPackage(packageId: string, options?: THttpRequestOptions): Promise<void>;
38
+ importSettings(packageId: string, formData: Parameters<Client['post']>[0]['data'], options?: THttpRequestOptions): Promise<void>;
39
+ exportSettings(packageId: string, formData: Parameters<Client['post']>[0]['data'], options?: THttpRequestOptions): Promise<void>;
40
+ getNodejsStatus(options?: THttpRequestOptions): Promise<{
41
+ node_state: "OK" | "NOT_INSTALLED" | "NOT_FOUND";
42
+ }>;
43
+ installNodejs(storage: TStorageType, options?: THttpRequestOptions): Promise<void>;
44
+ private _getJson;
45
+ private _post;
19
46
  }
@@ -1,64 +1,80 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CamOverlayAPI = void 0;
4
- const common_1 = require("./internal/common");
3
+ exports.CamScripterAPI = void 0;
4
+ const errors_1 = require("./errors/errors");
5
+ const ProxyClient_1 = require("./internal/ProxyClient");
5
6
  const CamScripterAPI_1 = require("./types/CamScripterAPI");
6
- const common_2 = require("./types/common");
7
- class CamOverlayAPI {
7
+ const common_1 = require("./types/common");
8
+ const BASE_PATH = '/local/camscripter';
9
+ class CamScripterAPI {
8
10
  client;
9
11
  constructor(client) {
10
12
  this.client = client;
11
13
  }
12
- async checkCameraTime() {
13
- return (await this.get('/local/camscripter/camera_time.cgi')).state;
14
+ static getProxyPath = () => `${BASE_PATH}/proxy.cgi`;
15
+ getClient(proxyParams) {
16
+ return proxyParams ? new ProxyClient_1.ProxyClient(this.client, proxyParams) : this.client;
14
17
  }
15
- async getStorageInfo() {
16
- const data = await this.get(`/local/camscripter/package/get_storage.cgi`);
17
- return CamScripterAPI_1.storageSchema.parse(data);
18
+ async checkCameraTime(options) {
19
+ const res = await this._getJson(`${BASE_PATH}/camera_time.cgi`, undefined, options);
20
+ return CamScripterAPI_1.cameraTimeResponseSchema.parse(res).state;
18
21
  }
19
- async getNetworkCameraList() {
20
- const response = await this.get('/local/camscripter/network_camera_list.cgi');
21
- return common_2.networkCameraListSchema.parse(response.camera_list);
22
+ async getNetworkCameraList(options) {
23
+ const res = await this._getJson(`${BASE_PATH}/network_camera_list.cgi`, undefined, options);
24
+ return common_1.networkCameraListSchema.parse(res.camera_list);
22
25
  }
23
- async getPackageList() {
24
- const data = await this.get('/local/camscripter/package/list.cgi');
25
- return CamScripterAPI_1.packageInfoListSchema.parse(data);
26
+ async getStorageInfo(options) {
27
+ const res = await this._getJson(`${BASE_PATH}/package/get_storage.cgi`, undefined, options);
28
+ return CamScripterAPI_1.cameraStorageSchema.parse(res);
26
29
  }
27
- async installPackages(formData, storage) {
28
- await this.post(`/local/camscripter/package/install.cgi?storage=${storage}`, formData);
30
+ async getPackageList(options) {
31
+ const res = await this._getJson(`${BASE_PATH}/package/list.cgi`, undefined, options);
32
+ return CamScripterAPI_1.packageInfoListSchema.parse(res);
29
33
  }
30
- async uninstallPackage(packageId) {
31
- await this.get(`/local/camscripter/package/remove.cgi?package_name=${packageId}`);
34
+ async installPackages(formData, storage, options) {
35
+ await this._post(`${BASE_PATH}/package/install.cgi`, formData, { storage: storage }, options);
32
36
  }
33
- async importSettings(packageId, formData) {
34
- await this.post(`/local/camscripter/package/data.cgi?action=IMPORT&package_name=${packageId}`, formData);
37
+ async uninstallPackage(packageId, options) {
38
+ await this._getJson(`${BASE_PATH}/package/remove.cgi`, { package_name: packageId }, options);
35
39
  }
36
- async exportSettings(packageId, formData) {
37
- await this.post(`/local/camscripter/package/data.cgi?action=EXPORT&package_name=${packageId}`, formData);
40
+ async importSettings(packageId, formData, options) {
41
+ await this._post(`${BASE_PATH}/package/data.cgi`, formData, {
42
+ action: 'IMPORT',
43
+ package_name: packageId,
44
+ }, options);
38
45
  }
39
- async getNodejsStatus() {
40
- return (await this.get('/local/camscripter/diagnostics.cgi')).node_state;
46
+ async exportSettings(packageId, formData, options) {
47
+ await this._post(`${BASE_PATH}/package/data.cgi`, formData, {
48
+ action: 'EXPORT',
49
+ package_name: packageId,
50
+ }, options);
41
51
  }
42
- async installNodejs(storage) {
43
- await this.get(`/local/camscripter/node_update.cgi?storage=${storage}`);
52
+ async getNodejsStatus(options) {
53
+ const res = await this._getJson(`${BASE_PATH}/diagnostics.cgi`, undefined, options);
54
+ return CamScripterAPI_1.nodeStateSchema.parse(res);
44
55
  }
45
- async get(path, params) {
46
- const res = await this.client.get(path, params);
56
+ async installNodejs(storage, options) {
57
+ await this._getJson(`${BASE_PATH}/node_update.cgi`, { storage: storage }, options);
58
+ }
59
+ async _getJson(path, parameters, options) {
60
+ const agent = this.getClient(options?.proxyParams);
61
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
47
62
  if (res.ok) {
48
63
  return await res.json();
49
64
  }
50
65
  else {
51
- throw new Error(await (0, common_1.responseStringify)(res));
66
+ throw new errors_1.ErrorWithResponse(res);
52
67
  }
53
68
  }
54
- async post(path, data, params) {
55
- const res = await this.client.post(path, data, params);
69
+ async _post(path, data, parameters, options, headers) {
70
+ const agent = this.getClient(options?.proxyParams);
71
+ const res = await agent.post({ path, data, parameters, headers, timeout: options?.timeout });
56
72
  if (res.ok) {
57
73
  return await res.json();
58
74
  }
59
75
  else {
60
- throw new Error(await (0, common_1.responseStringify)(res));
76
+ throw new errors_1.ErrorWithResponse(res);
61
77
  }
62
78
  }
63
79
  }
64
- exports.CamOverlayAPI = CamOverlayAPI;
80
+ exports.CamScripterAPI = CamScripterAPI;