camstreamerlib 4.0.0-beta.9 → 4.0.0-beta.90

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 (360) hide show
  1. package/README.md +143 -38
  2. package/cjs/CamOverlayAPI.d.ts +579 -340
  3. package/cjs/CamOverlayAPI.js +121 -151
  4. package/cjs/CamScripterAPI.d.ts +44 -17
  5. package/cjs/CamScripterAPI.js +50 -34
  6. package/cjs/CamStreamerAPI.d.ts +588 -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 +95 -43
  13. package/cjs/VapixAPI.js +314 -232
  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 +6 -5
  39. package/cjs/node/DefaultClient.js +10 -12
  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} +2343 -836
  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 +110 -109
  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 +3839 -0
  93. package/cjs/types/CamStreamerAPI/CamStreamerAPI.js +75 -0
  94. package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +202 -0
  95. package/cjs/types/CamStreamerAPI/facebookSchema.js +11 -0
  96. package/cjs/types/CamStreamerAPI/hlsSchema.d.ts +202 -0
  97. package/cjs/types/CamStreamerAPI/hlsSchema.js +11 -0
  98. package/cjs/types/CamStreamerAPI/index.d.ts +9 -0
  99. package/cjs/types/CamStreamerAPI/index.js +25 -0
  100. package/cjs/types/CamStreamerAPI/mpegDvbSchema.d.ts +250 -0
  101. package/cjs/types/CamStreamerAPI/mpegDvbSchema.js +27 -0
  102. package/cjs/types/{CamStreamerAPI.d.ts → CamStreamerAPI/oldStreamSchema.d.ts} +96 -27
  103. package/cjs/types/CamStreamerAPI/oldStreamSchema.js +53 -0
  104. package/cjs/types/CamStreamerAPI/rtmpSchema.d.ts +202 -0
  105. package/cjs/types/CamStreamerAPI/rtmpSchema.js +11 -0
  106. package/cjs/types/CamStreamerAPI/sdCardSchema.d.ts +202 -0
  107. package/cjs/types/CamStreamerAPI/sdCardSchema.js +11 -0
  108. package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +369 -0
  109. package/cjs/types/CamStreamerAPI/streamCommonTypes.js +64 -0
  110. package/cjs/types/CamStreamerAPI/windySchema.d.ts +202 -0
  111. package/cjs/types/CamStreamerAPI/windySchema.js +11 -0
  112. package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +202 -0
  113. package/cjs/types/CamStreamerAPI/youtubeSchema.js +11 -0
  114. package/cjs/types/CamSwitcherAPI.d.ts +189 -110
  115. package/cjs/types/CamSwitcherAPI.js +38 -1
  116. package/cjs/{events → types}/GenetecAgent.d.ts +47 -47
  117. package/cjs/types/GenetecAgent.js +31 -0
  118. package/cjs/types/PlaneTrackerAPI.d.ts +980 -0
  119. package/cjs/types/PlaneTrackerAPI.js +333 -0
  120. package/cjs/types/VapixAPI.d.ts +338 -248
  121. package/cjs/types/VapixAPI.js +66 -11
  122. package/cjs/types/VapixEvents.d.ts +15 -0
  123. package/cjs/types/VapixEvents.js +2 -0
  124. package/cjs/types/common.d.ts +18 -5
  125. package/cjs/types/common.js +5 -2
  126. package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
  127. package/cjs/types/ws/CamOverlayEvents.js +19 -0
  128. package/cjs/types/ws/CamStreamerEvents.d.ts +249 -0
  129. package/cjs/types/ws/CamStreamerEvents.js +32 -0
  130. package/cjs/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  131. package/cjs/types/ws/PlaneTrackerEvents.js +207 -0
  132. package/cjs/web/DefaultClient.d.ts +7 -8
  133. package/cjs/web/DefaultClient.js +25 -9
  134. package/cjs/web/WsClient.d.ts +9 -5
  135. package/cjs/web/WsClient.js +16 -18
  136. package/cjs/ws/CamOverlayEvents.d.ts +8 -0
  137. package/cjs/ws/CamOverlayEvents.js +24 -0
  138. package/cjs/ws/CamStreamerEvents.d.ts +8 -0
  139. package/cjs/ws/CamStreamerEvents.js +24 -0
  140. package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
  141. package/cjs/ws/CamSwitcherEvents.js +24 -0
  142. package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
  143. package/cjs/ws/PlaneTrackerEvents.js +30 -0
  144. package/esm/CamOverlayAPI.js +120 -150
  145. package/esm/CamScripterAPI.js +48 -32
  146. package/esm/CamStreamerAPI.js +166 -40
  147. package/esm/CamSwitcherAPI.js +136 -120
  148. package/esm/PlaneTrackerAPI.js +250 -0
  149. package/esm/VapixAPI.js +314 -232
  150. package/esm/{CreatePackage.js → bin/CreatePackage.js} +16 -16
  151. package/esm/errors/errors.js +120 -6
  152. package/esm/index.js +20 -7
  153. package/esm/internal/ProxyClient.js +28 -34
  154. package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +26 -20
  155. package/esm/internal/types.js +1 -0
  156. package/esm/internal/utils.js +11 -1
  157. package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +26 -18
  158. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  159. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
  160. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
  161. package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
  162. package/esm/node/DefaultClient.js +10 -12
  163. package/esm/node/Digest.test.js +11 -0
  164. package/esm/node/HttpRequestSender.js +14 -4
  165. package/esm/node/HttpServer.js +1 -1
  166. package/esm/node/TimeZoneDaemon.js +25 -0
  167. package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
  168. package/esm/node/WsClient.js +22 -15
  169. package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
  170. package/esm/node/events/GenetecAgent.js +120 -0
  171. package/esm/node/index.js +18 -2
  172. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +76 -0
  173. package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.js +3 -4
  174. package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.js +3 -4
  175. package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
  176. package/esm/{models → types}/CamOverlayAPI/index.js +2 -4
  177. package/esm/{models → types}/CamOverlayAPI/infotickerSchema.js +3 -4
  178. package/esm/{models → types}/CamOverlayAPI/pipSchema.js +4 -5
  179. package/esm/{models → types}/CamOverlayAPI/ptzCompassSchema.js +4 -4
  180. package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
  181. package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
  182. package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
  183. package/esm/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +32 -17
  184. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
  185. package/esm/types/CamOverlayDrawingAPI.js +1 -0
  186. package/esm/types/CamOverlayPainter.js +11 -0
  187. package/esm/types/CamScripterAPI.js +23 -7
  188. package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
  189. package/esm/types/CamStreamerAPI/CamStreamerAPI.js +65 -0
  190. package/esm/types/CamStreamerAPI/facebookSchema.js +5 -0
  191. package/esm/types/CamStreamerAPI/hlsSchema.js +5 -0
  192. package/esm/types/CamStreamerAPI/index.js +9 -0
  193. package/esm/types/CamStreamerAPI/mpegDvbSchema.js +21 -0
  194. package/esm/types/CamStreamerAPI/oldStreamSchema.js +50 -0
  195. package/esm/types/CamStreamerAPI/rtmpSchema.js +5 -0
  196. package/esm/types/CamStreamerAPI/sdCardSchema.js +5 -0
  197. package/esm/types/CamStreamerAPI/streamCommonTypes.js +61 -0
  198. package/esm/types/CamStreamerAPI/windySchema.js +5 -0
  199. package/esm/types/CamStreamerAPI/youtubeSchema.js +5 -0
  200. package/esm/types/CamSwitcherAPI.js +38 -1
  201. package/esm/types/GenetecAgent.js +28 -0
  202. package/esm/types/PlaneTrackerAPI.js +330 -0
  203. package/esm/types/VapixAPI.js +65 -10
  204. package/esm/types/VapixEvents.js +1 -0
  205. package/esm/types/common.js +4 -1
  206. package/esm/types/ws/CamOverlayEvents.js +16 -0
  207. package/esm/types/ws/CamStreamerEvents.js +29 -0
  208. package/esm/types/ws/PlaneTrackerEvents.js +204 -0
  209. package/esm/web/DefaultClient.js +25 -9
  210. package/esm/web/WsClient.js +16 -18
  211. package/esm/ws/CamOverlayEvents.js +20 -0
  212. package/esm/ws/CamStreamerEvents.js +20 -0
  213. package/esm/ws/CamSwitcherEvents.js +20 -0
  214. package/esm/ws/PlaneTrackerEvents.js +26 -0
  215. package/package.json +44 -11
  216. package/{esm → types}/CamOverlayAPI.d.ts +579 -340
  217. package/types/CamScripterAPI.d.ts +46 -0
  218. package/types/CamStreamerAPI.d.ts +590 -0
  219. package/types/CamSwitcherAPI.d.ts +167 -0
  220. package/types/PlaneTrackerAPI.d.ts +241 -0
  221. package/types/VapixAPI.d.ts +118 -0
  222. package/types/bin/CreatePackage.d.ts +1 -0
  223. package/types/errors/errors.d.ts +102 -0
  224. package/types/index.d.ts +27 -0
  225. package/types/internal/ProxyClient.d.ts +10 -0
  226. package/types/internal/WsEvents.d.ts +37 -0
  227. package/types/internal/types.d.ts +47 -0
  228. package/{esm → types}/internal/utils.d.ts +3 -1
  229. package/{esm → types}/internal/versionCompare.d.ts +2 -2
  230. package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
  231. package/{cjs → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
  232. package/{esm → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
  233. package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  234. package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  235. package/types/node/DefaultClient.d.ts +16 -0
  236. package/types/node/Digest.test.d.ts +1 -0
  237. package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
  238. package/{esm → types}/node/HttpServer.d.ts +1 -1
  239. package/types/node/TimeZoneDaemon.d.ts +6 -0
  240. package/types/node/VapixEvents.d.ts +16 -0
  241. package/types/node/WsClient.d.ts +30 -0
  242. package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
  243. package/types/node/events/GenetecAgent.d.ts +16 -0
  244. package/types/node/index.d.ts +18 -0
  245. package/{esm/models/CamOverlayAPI/widgetsSchema.d.ts → types/types/CamOverlayAPI/CamOverlayAPI.d.ts} +2343 -836
  246. package/{esm/models → types/types}/CamOverlayAPI/accuweatherSchema.d.ts +19 -19
  247. package/{esm/models → types/types}/CamOverlayAPI/customGraphicsSchema.d.ts +110 -109
  248. package/{cjs/models → types/types}/CamOverlayAPI/imagesSchema.d.ts +21 -21
  249. package/{esm/models → types/types}/CamOverlayAPI/index.d.ts +2 -4
  250. package/{esm/models → types/types}/CamOverlayAPI/infotickerSchema.d.ts +27 -27
  251. package/{cjs/models → types/types}/CamOverlayAPI/pipSchema.d.ts +23 -23
  252. package/{cjs/models → types/types}/CamOverlayAPI/ptzCompassSchema.d.ts +20 -17
  253. package/{cjs/models → types/types}/CamOverlayAPI/ptzSchema.d.ts +30 -30
  254. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  255. package/{esm/models → types/types}/CamOverlayAPI/screenSharingSchema.d.ts +17 -17
  256. package/{cjs/models/CamOverlayAPI/widgetCommonSchema.d.ts → types/types/CamOverlayAPI/serviceCommonTypes.d.ts} +79 -60
  257. package/{cjs/models → types/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +17 -17
  258. package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
  259. package/types/types/CamOverlayPainter.d.ts +76 -0
  260. package/types/types/CamScripterAPI.d.ts +130 -0
  261. package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  262. package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +3839 -0
  263. package/types/types/CamStreamerAPI/facebookSchema.d.ts +202 -0
  264. package/types/types/CamStreamerAPI/hlsSchema.d.ts +202 -0
  265. package/types/types/CamStreamerAPI/index.d.ts +9 -0
  266. package/types/types/CamStreamerAPI/mpegDvbSchema.d.ts +250 -0
  267. package/{esm/types/CamStreamerAPI.d.ts → types/types/CamStreamerAPI/oldStreamSchema.d.ts} +96 -27
  268. package/types/types/CamStreamerAPI/rtmpSchema.d.ts +202 -0
  269. package/types/types/CamStreamerAPI/sdCardSchema.d.ts +202 -0
  270. package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +369 -0
  271. package/types/types/CamStreamerAPI/windySchema.d.ts +202 -0
  272. package/types/types/CamStreamerAPI/youtubeSchema.d.ts +202 -0
  273. package/{esm → types}/types/CamSwitcherAPI.d.ts +189 -110
  274. package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
  275. package/types/types/PlaneTrackerAPI.d.ts +980 -0
  276. package/{esm → types}/types/VapixAPI.d.ts +338 -248
  277. package/types/types/VapixEvents.d.ts +15 -0
  278. package/{esm → types}/types/common.d.ts +18 -5
  279. package/types/types/ws/CamOverlayEvents.d.ts +88 -0
  280. package/types/types/ws/CamStreamerEvents.d.ts +249 -0
  281. package/types/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  282. package/types/web/DefaultClient.d.ts +8 -0
  283. package/types/web/WsClient.d.ts +17 -0
  284. package/types/ws/CamOverlayEvents.d.ts +8 -0
  285. package/types/ws/CamStreamerEvents.d.ts +8 -0
  286. package/types/ws/CamSwitcherEvents.d.ts +8 -0
  287. package/types/ws/PlaneTrackerEvents.d.ts +9 -0
  288. package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
  289. package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
  290. package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
  291. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  292. package/cjs/CamSwitcherEvents.d.ts +0 -18
  293. package/cjs/VapixEvents.d.ts +0 -43
  294. package/cjs/events/AxisCameraStationEvents.d.ts +0 -9
  295. package/cjs/events/AxisCameraStationEvents.js +0 -48
  296. package/cjs/events/GenetecAgent.js +0 -123
  297. package/cjs/internal/common.d.ts +0 -39
  298. package/cjs/internal/common.js +0 -27
  299. package/cjs/models/CamOverlayAPI/constants.d.ts +0 -11
  300. package/cjs/models/CamOverlayAPI/constants.js +0 -14
  301. package/cjs/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  302. package/cjs/models/CamOverlayAPI/fileSchema.js +0 -17
  303. package/cjs/models/CamOverlayAPI/imagesSchema.js +0 -10
  304. package/cjs/models/CamOverlayAPI/ptzSchema.js +0 -13
  305. package/cjs/models/CamOverlayAPI/screenSharingSchema.js +0 -9
  306. package/cjs/models/CamOverlayAPI/webCameraSharingSchema.js +0 -9
  307. package/cjs/models/CamOverlayAPI/widgetsSchema.js +0 -27
  308. package/cjs/node/WsEventClient.d.ts +0 -13
  309. package/cjs/node/WsEventClient.js +0 -22
  310. package/cjs/types/CamOverlayAPI.d.ts +0 -328
  311. package/cjs/types/CamOverlayAPI.js +0 -26
  312. package/cjs/types/CamStreamerAPI.js +0 -28
  313. package/esm/CamOverlayDrawingAPI.d.ts +0 -86
  314. package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
  315. package/esm/CamScripterAPI.d.ts +0 -19
  316. package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  317. package/esm/CamStreamerAPI.d.ts +0 -16
  318. package/esm/CamSwitcherAPI.d.ts +0 -52
  319. package/esm/CamSwitcherEvents.d.ts +0 -18
  320. package/esm/VapixAPI.d.ts +0 -66
  321. package/esm/VapixEvents.d.ts +0 -43
  322. package/esm/errors/errors.d.ts +0 -37
  323. package/esm/events/AxisCameraStationEvents.d.ts +0 -9
  324. package/esm/events/GenetecAgent.js +0 -119
  325. package/esm/index.d.ts +0 -14
  326. package/esm/internal/ProxyClient.d.ts +0 -11
  327. package/esm/internal/common.d.ts +0 -39
  328. package/esm/internal/common.js +0 -20
  329. package/esm/models/CamOverlayAPI/constants.d.ts +0 -11
  330. package/esm/models/CamOverlayAPI/constants.js +0 -11
  331. package/esm/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  332. package/esm/models/CamOverlayAPI/fileSchema.js +0 -14
  333. package/esm/models/CamOverlayAPI/imagesSchema.js +0 -7
  334. package/esm/models/CamOverlayAPI/ptzSchema.js +0 -10
  335. package/esm/models/CamOverlayAPI/screenSharingSchema.js +0 -6
  336. package/esm/models/CamOverlayAPI/webCameraSharingSchema.js +0 -6
  337. package/esm/models/CamOverlayAPI/widgetsSchema.js +0 -24
  338. package/esm/node/DefaultClient.d.ts +0 -15
  339. package/esm/node/WsClient.d.ts +0 -39
  340. package/esm/node/WsEventClient.d.ts +0 -13
  341. package/esm/node/WsEventClient.js +0 -18
  342. package/esm/types/CamOverlayAPI.d.ts +0 -328
  343. package/esm/types/CamOverlayAPI.js +0 -14
  344. package/esm/types/CamScripterAPI.d.ts +0 -67
  345. package/esm/types/CamStreamerAPI.js +0 -25
  346. package/esm/web/DefaultClient.d.ts +0 -9
  347. package/esm/web/WsClient.d.ts +0 -13
  348. package/esm/web/index.d.ts +0 -2
  349. /package/cjs/{CreatePackage.d.ts → bin/CreatePackage.d.ts} +0 -0
  350. /package/cjs/{internal → node}/Digest.d.ts +0 -0
  351. /package/{esm/CreatePackage.d.ts → cjs/node/Digest.test.d.ts} +0 -0
  352. /package/cjs/types/{CamSwitcherEvents.d.ts → ws/CamSwitcherEvents.d.ts} +0 -0
  353. /package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  354. /package/esm/{internal → node}/Digest.js +0 -0
  355. /package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  356. /package/{esm → types}/internal/constants.d.ts +0 -0
  357. /package/{esm → types}/internal/transformers.d.ts +0 -0
  358. /package/{esm/internal → types/node}/Digest.d.ts +0 -0
  359. /package/{esm/types → types/types/ws}/CamSwitcherEvents.d.ts +0 -0
  360. /package/{esm/node → types/web}/index.d.ts +0 -0
@@ -1,163 +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}/file_preview.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
- const res = await this._get(`${exports.BASE_URL}/fetch_mjpeg_image.cgi?mjpeg_url=${encodeURIComponent(decodeURIComponent(mjpegUrl))}`);
59
- return await this.parseBlobResponse(res);
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;
60
33
  }
61
- async listFiles(fileType) {
62
- const fileDataSchema = zod_1.z.object({
63
- code: zod_1.z.number(),
64
- list: fileSchema_1.fileListSchema,
65
- });
66
- const files = await this._get(`${exports.BASE_URL}/upload_${fileType}.cgi`, {
67
- action: 'list',
68
- });
69
- 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);
70
40
  }
71
- async uploadFile(fileType, formData, storage) {
72
- const path = `${exports.BASE_URL}/upload_${fileType}.cgi`;
73
- await this._post(path, formData, {
41
+ async uploadFile(fileType, formData, storage, options) {
42
+ await this._post(`${BASE_PATH}/upload_${fileType}.cgi`, formData, {
74
43
  action: 'upload',
75
44
  storage: storage,
76
- });
45
+ }, options);
77
46
  }
78
- async removeFile(fileType, fileParams) {
79
- const path = `${exports.BASE_URL}/upload_${fileType}.cgi`;
80
- await this._postUrlEncoded(path, {
47
+ async removeFile(fileType, fileParams, options) {
48
+ await this._postUrlEncoded(`${BASE_PATH}/upload_${fileType}.cgi`, {
81
49
  action: 'remove',
82
50
  ...fileParams,
83
- });
51
+ }, options, undefined);
84
52
  }
85
- async getFileStorage(fileType) {
86
- const storageDataListSchema = zod_1.z.array(zod_1.z.object({
87
- type: fileSchema_1.storageSchema,
88
- state: zod_1.z.string(),
89
- }));
90
- const responseSchema = zod_1.z.object({
91
- code: zod_1.z.number(),
92
- list: storageDataListSchema,
93
- });
94
- const data = await this._get(`${exports.BASE_URL}/upload_${fileType}.cgi`, {
95
- action: 'get_storage',
96
- });
97
- if (data.code !== 200) {
98
- 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);
99
57
  }
100
- return storageDataListSchema.parse(data.list);
58
+ return CamOverlayAPI_1.storageDataListSchema.parse(res.list);
101
59
  }
102
- async getFilePreviewFromCamera(path) {
103
- const response = await this._get(CamOverlayAPI.getFilePreviewPath(path));
104
- return await this.parseBlobResponse(response);
60
+ async getFilePreviewFromCamera(path, options) {
61
+ return await this._getBlob(CamOverlayAPI.getFilePreviewPath(path), undefined, options);
105
62
  }
106
- async updateInfoticker(serviceID, text) {
107
- 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);
108
65
  }
109
- async setEnabled(serviceID, enabled) {
110
- 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);
111
68
  }
112
- async isEnabled(serviceID) {
113
- 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
+ });
114
76
  if (res.ok) {
115
77
  const data = JSON.parse(await res.text());
116
78
  for (const service of data.services) {
117
- if (service.id === serviceID) {
79
+ if (service.id === serviceId) {
118
80
  return service.enabled === 1;
119
81
  }
120
82
  }
121
83
  throw new errors_1.ServiceNotFoundError();
122
84
  }
123
85
  else {
124
- throw new Error(await (0, common_1.responseStringify)(res));
86
+ throw new errors_1.ErrorWithResponse(res);
125
87
  }
126
88
  }
127
- async getSingleWidget(serviceId) {
128
- 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`, {
129
91
  action: 'get',
130
- service_id: serviceId.toString(),
131
- });
132
- return widgetsSchema_1.widgetsSchema.parse(data);
92
+ service_id: serviceId,
93
+ }, options);
94
+ return CamOverlayAPI_1.servicesSchema.parse(res);
133
95
  }
134
- async getWidgets() {
135
- const widgetList = await this._get(`${exports.BASE_URL}/services.cgi`, {
136
- action: 'get',
137
- });
138
- const widgets = widgetList.services;
139
- widgets.forEach((widget) => {
140
- const parsedWidget = widgetsSchema_1.widgetsSchema.safeParse(widget);
141
- if (!parsedWidget.success) {
142
- console.warn(`[SERVICE SCHEMA MISMATCH]: Service ${widget.name} (${widget.id}) does not match the current schema, or is a hidden service.`);
143
- }
144
- });
145
- 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;
146
100
  }
147
- async updateSingleWidget(widget) {
148
- const path = `${exports.BASE_URL}/services.cgi`;
149
- await this._postJsonEncoded(path, JSON.stringify(widget), {
101
+ async updateSingleService(service, options) {
102
+ await this._postJsonEncoded(`${BASE_PATH}/services.cgi`, JSON.stringify(service), {
150
103
  action: 'set',
151
- service_id: widget.id.toString(),
152
- });
104
+ service_id: service.id,
105
+ }, options, undefined);
153
106
  }
154
- async updateWidgets(widgets) {
155
- const path = `${exports.BASE_URL}/services.cgi`;
156
- 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 }), {
157
109
  action: 'set',
158
- });
110
+ }, options, undefined);
159
111
  }
160
- updateCGText(serviceID, fields) {
112
+ updateCGText(serviceId, fields, options) {
161
113
  const params = {};
162
114
  for (const field of fields) {
163
115
  const name = field.field_name;
@@ -166,84 +118,102 @@ class CamOverlayAPI {
166
118
  params[`${name}_color`] = field.color;
167
119
  }
168
120
  }
169
- return this.promiseCGUpdate(serviceID, 'update_text', params);
121
+ return this.promiseCGUpdate(serviceId, 'update_text', params, undefined, undefined, options);
170
122
  }
171
- updateCGImagePos(serviceID, coordinates = '', x = 0, y = 0) {
123
+ updateCGImagePos(serviceId, coordinates = '', x = 0, y = 0, options) {
172
124
  const params = {
173
125
  coord_system: coordinates,
174
126
  pos_x: x,
175
127
  pos_y: y,
176
128
  };
177
- return this.promiseCGUpdate(serviceID, 'update_image', params);
129
+ return this.promiseCGUpdate(serviceId, 'update_image', params, undefined, undefined, options);
178
130
  }
179
- updateCGImage(serviceID, path, coordinates = '', x = 0, y = 0) {
131
+ updateCGImage(serviceId, path, coordinates = '', x = 0, y = 0, options) {
180
132
  const params = {
181
133
  coord_system: coordinates,
182
134
  pos_x: x,
183
135
  pos_y: y,
184
136
  image: path,
185
137
  };
186
- return this.promiseCGUpdate(serviceID, 'update_image', params);
138
+ return this.promiseCGUpdate(serviceId, 'update_image', params, undefined, undefined, options);
187
139
  }
188
- updateCGImageFromData(serviceID, imageType, imageData, coordinates = '', x = 0, y = 0) {
140
+ updateCGImageFromData(serviceId, imageType, imageData, coordinates = '', x = 0, y = 0, options) {
189
141
  const contentType = imageType === CamOverlayAPI_1.ImageType.PNG ? 'image/png' : 'image/jpeg';
190
142
  const params = {
191
143
  coord_system: coordinates,
192
144
  pos_x: x,
193
145
  pos_y: y,
194
146
  };
195
- return this.promiseCGUpdate(serviceID, 'update_image', params, contentType, imageData);
147
+ return this.promiseCGUpdate(serviceId, 'update_image', params, contentType, imageData, options);
196
148
  }
197
- async promiseCGUpdate(serviceID, action, params = {}, contentType, data) {
198
- const path = `${exports.BASE_URL}/customGraphics.cgi`;
149
+ async promiseCGUpdate(serviceId, action, params = {}, contentType, data, options) {
150
+ const path = `${BASE_PATH}/customGraphics.cgi`;
199
151
  let headers = {};
200
- if (contentType !== undefined && data) {
152
+ if (contentType !== undefined && data !== undefined) {
201
153
  headers = { 'Content-Type': contentType };
202
154
  }
203
- const res = await this.client.post(path, data ?? '', {
204
- action: action,
205
- service_id: serviceID.toString(),
206
- ...params,
207
- }, 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
+ });
208
167
  if (!res.ok) {
209
- throw new Error(await (0, common_1.responseStringify)(res));
168
+ throw new errors_1.ErrorWithResponse(res);
210
169
  }
211
170
  }
212
- async _get(...args) {
213
- 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 });
214
174
  if (res.ok) {
215
- return (await res.json());
175
+ return await res.json();
216
176
  }
217
177
  else {
218
- throw new Error(await (0, common_1.responseStringify)(res));
178
+ throw new errors_1.ErrorWithResponse(res);
219
179
  }
220
180
  }
221
- async _post(...args) {
222
- 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 });
223
184
  if (res.ok) {
224
- return (await res.json());
185
+ return await res.json();
225
186
  }
226
187
  else {
227
- throw new Error(await (0, common_1.responseStringify)(res));
188
+ throw new errors_1.ErrorWithResponse(res);
228
189
  }
229
190
  }
230
- async _postUrlEncoded(path, params, headers) {
231
- const data = (0, utils_1.paramToUrl)(params);
232
- const baseHeaders = { 'Content-Type': 'application/x-www-form-urlencoded' };
233
- return this._post(path, data, {}, { ...baseHeaders, ...headers });
234
- }
235
- async _postJsonEncoded(...args) {
236
- const [path, data, params, headers] = args;
237
- const baseHeaders = { 'Accept': 'application/json', 'Content-Type': 'application/json' };
238
- return this._post(path, data, params, { ...baseHeaders, ...headers });
191
+ async _getBlob(path, parameters, options) {
192
+ const agent = this.getClient(options?.proxyParams);
193
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
194
+ if (res.ok) {
195
+ return await this.parseBlobResponse(res);
196
+ }
197
+ else {
198
+ throw new errors_1.ErrorWithResponse(res);
199
+ }
239
200
  }
240
201
  async parseBlobResponse(response) {
241
202
  try {
242
- return await response.blob();
203
+ return (await response.blob());
243
204
  }
244
205
  catch (err) {
245
206
  throw new errors_1.ParsingBlobError(err);
246
207
  }
247
208
  }
209
+ async _postUrlEncoded(path, parameters, options, headers) {
210
+ const data = (0, utils_1.paramToUrl)(parameters);
211
+ const baseHeaders = { 'Content-Type': 'application/x-www-form-urlencoded' };
212
+ return this._post(path, data, undefined, options, { ...baseHeaders, ...headers });
213
+ }
214
+ async _postJsonEncoded(path, data, parameters, options, headers) {
215
+ const baseHeaders = { 'Accept': 'application/json', 'Content-Type': 'application/json' };
216
+ return this._post(path, data, parameters, options, { ...baseHeaders, ...headers });
217
+ }
248
218
  }
249
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;