@dronedeploy/rocos-js-sdk 0.0.1 → 1.0.0-alpha-2

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 (468) hide show
  1. package/IRocosSDK.d.ts +55 -0
  2. package/IRocosSDK.js +2 -0
  3. package/README.md +108 -0
  4. package/RocosSDK.d.ts +138 -0
  5. package/RocosSDK.js +292 -0
  6. package/api/StreamRegister.d.ts +13 -0
  7. package/api/StreamRegister.js +69 -0
  8. package/api/atoms/StreamHeartbeat.d.ts +27 -0
  9. package/api/atoms/StreamHeartbeat.js +111 -0
  10. package/api/streams/caller/CallerStream.d.ts +13 -0
  11. package/api/streams/caller/CallerStream.js +77 -0
  12. package/api/streams/caller/CallerStreamAbstract.d.ts +23 -0
  13. package/api/streams/caller/CallerStreamAbstract.js +87 -0
  14. package/api/streams/caller/CallerStreamNode.d.ts +13 -0
  15. package/api/streams/caller/CallerStreamNode.js +115 -0
  16. package/api/streams/command/CommandStream.d.ts +10 -0
  17. package/api/streams/command/CommandStream.js +66 -0
  18. package/api/streams/command/CommandStreamAbstract.d.ts +20 -0
  19. package/api/streams/command/CommandStreamAbstract.js +63 -0
  20. package/api/streams/command/CommandStreamNode.d.ts +10 -0
  21. package/api/streams/command/CommandStreamNode.js +69 -0
  22. package/api/streams/control/ControlStream.d.ts +12 -0
  23. package/api/streams/control/ControlStream.js +75 -0
  24. package/api/streams/control/ControlStreamAbstract.d.ts +25 -0
  25. package/api/streams/control/ControlStreamAbstract.js +111 -0
  26. package/api/streams/control/ControlStreamNode.d.ts +12 -0
  27. package/api/streams/control/ControlStreamNode.js +73 -0
  28. package/api/streams/fileAccessor/FileAccessorStream.d.ts +8 -0
  29. package/api/streams/fileAccessor/FileAccessorStream.js +59 -0
  30. package/api/streams/fileAccessor/FileAccessorStreamAbstract.d.ts +21 -0
  31. package/api/streams/fileAccessor/FileAccessorStreamAbstract.js +62 -0
  32. package/api/streams/fileAccessor/FileAccessorStreamNode.d.ts +8 -0
  33. package/api/streams/fileAccessor/FileAccessorStreamNode.js +66 -0
  34. package/api/streams/search/SearchStream.d.ts +13 -0
  35. package/api/streams/search/SearchStream.js +96 -0
  36. package/api/streams/search/SearchStreamAbstract.d.ts +25 -0
  37. package/api/streams/search/SearchStreamAbstract.js +72 -0
  38. package/api/streams/search/SearchStreamNode.d.ts +13 -0
  39. package/api/streams/search/SearchStreamNode.js +118 -0
  40. package/api/streams/telemetry/TelemetryStream.d.ts +17 -0
  41. package/api/streams/telemetry/TelemetryStream.js +97 -0
  42. package/api/streams/telemetry/TelemetryStreamAbstract.d.ts +59 -0
  43. package/api/streams/telemetry/TelemetryStreamAbstract.js +402 -0
  44. package/api/streams/telemetry/TelemetryStreamNode.d.ts +21 -0
  45. package/api/streams/telemetry/TelemetryStreamNode.js +175 -0
  46. package/api/streams/webRTCSignalling/WebRTCSignallingStream.d.ts +39 -0
  47. package/api/streams/webRTCSignalling/WebRTCSignallingStream.js +84 -0
  48. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.d.ts +29 -0
  49. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.js +65 -0
  50. package/constants/api.d.ts +126 -0
  51. package/constants/api.js +126 -0
  52. package/constants/auth.d.ts +2 -0
  53. package/constants/auth.js +2 -0
  54. package/constants/grpc.d.ts +5 -0
  55. package/constants/grpc.js +5 -0
  56. package/constants/identifier.d.ts +6 -0
  57. package/constants/identifier.js +6 -0
  58. package/constants/timezones.d.ts +2 -0
  59. package/constants/timezones.js +427 -0
  60. package/grpc/conker_pb.client.d.ts +78 -0
  61. package/grpc/conker_pb.client.js +55 -0
  62. package/grpc/conker_pb.d.ts +141 -0
  63. package/grpc/conker_pb.grpc-client.d.ts +81 -0
  64. package/grpc/conker_pb.grpc-client.js +58 -0
  65. package/grpc/conker_pb.js +104 -0
  66. package/grpc/filagree_pb.client.d.ts +68 -0
  67. package/grpc/filagree_pb.client.js +48 -0
  68. package/grpc/filagree_pb.d.ts +404 -0
  69. package/grpc/filagree_pb.grpc-client.d.ts +69 -0
  70. package/grpc/filagree_pb.grpc-client.js +51 -0
  71. package/grpc/filagree_pb.js +329 -0
  72. package/grpc/google/protobuf/descriptor_pb.d.ts +1798 -0
  73. package/grpc/google/protobuf/descriptor_pb.js +2378 -0
  74. package/grpc/google/protobuf/empty_pb.d.ts +23 -0
  75. package/grpc/google/protobuf/empty_pb.js +47 -0
  76. package/grpc/pigeon_pb.client.d.ts +96 -0
  77. package/grpc/pigeon_pb.client.js +72 -0
  78. package/grpc/pigeon_pb.d.ts +207 -0
  79. package/grpc/pigeon_pb.grpc-client.d.ts +98 -0
  80. package/grpc/pigeon_pb.grpc-client.js +68 -0
  81. package/grpc/pigeon_pb.js +144 -0
  82. package/grpc/rambo.uri.v1_pb.d.ts +73 -0
  83. package/grpc/rambo.uri.v1_pb.js +48 -0
  84. package/grpc/rambo.v1_pb.client.d.ts +66 -0
  85. package/grpc/rambo.v1_pb.client.js +48 -0
  86. package/grpc/rambo.v1_pb.d.ts +392 -0
  87. package/grpc/rambo.v1_pb.grpc-client.d.ts +56 -0
  88. package/grpc/rambo.v1_pb.grpc-client.js +44 -0
  89. package/grpc/rambo.v1_pb.js +272 -0
  90. package/grpc/serviette.uri.v1_pb.d.ts +89 -0
  91. package/grpc/serviette.uri.v1_pb.js +62 -0
  92. package/grpc/serviette.v1_pb.client.d.ts +225 -0
  93. package/grpc/serviette.v1_pb.client.js +174 -0
  94. package/grpc/serviette.v1_pb.d.ts +827 -0
  95. package/grpc/serviette.v1_pb.grpc-client.d.ts +215 -0
  96. package/grpc/serviette.v1_pb.grpc-client.js +162 -0
  97. package/grpc/serviette.v1_pb.js +553 -0
  98. package/grpc/slowlane_pb.client.d.ts +61 -0
  99. package/grpc/slowlane_pb.client.js +41 -0
  100. package/grpc/slowlane_pb.d.ts +303 -0
  101. package/grpc/slowlane_pb.grpc-client.d.ts +64 -0
  102. package/grpc/slowlane_pb.grpc-client.js +44 -0
  103. package/grpc/slowlane_pb.js +185 -0
  104. package/grpc/teletubby_pb.client.d.ts +145 -0
  105. package/grpc/teletubby_pb.client.js +104 -0
  106. package/grpc/teletubby_pb.d.ts +634 -0
  107. package/grpc/teletubby_pb.grpc-client.d.ts +152 -0
  108. package/grpc/teletubby_pb.grpc-client.js +100 -0
  109. package/grpc/teletubby_pb.js +1264 -0
  110. package/helpers/arrayRemove.d.ts +1 -0
  111. package/helpers/arrayRemove.js +3 -0
  112. package/helpers/arrayUnique.d.ts +1 -0
  113. package/helpers/arrayUnique.js +3 -0
  114. package/helpers/average.d.ts +1 -0
  115. package/helpers/average.js +6 -0
  116. package/helpers/cleanObject.d.ts +1 -0
  117. package/helpers/cleanObject.js +18 -0
  118. package/helpers/cleanObject.spec.d.ts +1 -0
  119. package/helpers/cleanObject.spec.js +53 -0
  120. package/helpers/enviroment.d.ts +8 -0
  121. package/helpers/enviroment.js +13 -0
  122. package/helpers/flattenCallsignsLookup.d.ts +2 -0
  123. package/helpers/flattenCallsignsLookup.js +6 -0
  124. package/helpers/flattenObject.d.ts +1 -0
  125. package/helpers/flattenObject.js +13 -0
  126. package/helpers/flattenObject.spec.d.ts +1 -0
  127. package/helpers/flattenObject.spec.js +29 -0
  128. package/helpers/flattenOneOf.d.ts +67 -0
  129. package/helpers/flattenOneOf.js +29 -0
  130. package/helpers/flattenOneOf.spec.d.ts +1 -0
  131. package/helpers/flattenOneOf.spec.js +157 -0
  132. package/helpers/formatServiceUrl.d.ts +1 -0
  133. package/helpers/formatServiceUrl.js +7 -0
  134. package/helpers/formatServiceUrl.spec.d.ts +1 -0
  135. package/helpers/formatServiceUrl.spec.js +16 -0
  136. package/helpers/generateUUID.d.ts +1 -0
  137. package/helpers/generateUUID.js +4 -0
  138. package/helpers/getSubscriptionsDifference.d.ts +10 -0
  139. package/helpers/getSubscriptionsDifference.js +35 -0
  140. package/helpers/getUniqueConfigKey.d.ts +7 -0
  141. package/helpers/getUniqueConfigKey.js +14 -0
  142. package/helpers/getUniqueId.d.ts +9 -0
  143. package/helpers/getUniqueId.js +11 -0
  144. package/helpers/getUnixTimeMs.d.ts +1 -0
  145. package/helpers/getUnixTimeMs.js +4 -0
  146. package/helpers/index.d.ts +3 -0
  147. package/helpers/index.js +3 -0
  148. package/helpers/nanosecondToMillisecond.d.ts +1 -0
  149. package/helpers/nanosecondToMillisecond.js +6 -0
  150. package/helpers/randomString.d.ts +1 -0
  151. package/helpers/randomString.js +3 -0
  152. package/helpers/standardDeviation.d.ts +1 -0
  153. package/helpers/standardDeviation.js +12 -0
  154. package/helpers/standardDeviation.spec.d.ts +1 -0
  155. package/helpers/standardDeviation.spec.js +11 -0
  156. package/helpers/stringToUint8Array.d.ts +1 -0
  157. package/helpers/stringToUint8Array.js +10 -0
  158. package/helpers/uint8ArrayToString.d.ts +1 -0
  159. package/helpers/uint8ArrayToString.js +10 -0
  160. package/index.d.ts +7 -0
  161. package/index.js +7 -0
  162. package/logger/RocosLogger.d.ts +7 -0
  163. package/logger/RocosLogger.js +37 -0
  164. package/models/CallsignStatus.d.ts +6 -0
  165. package/models/CallsignStatus.js +7 -0
  166. package/models/ExportDataQuery.d.ts +8 -0
  167. package/models/ExportDataQuery.js +13 -0
  168. package/models/ExternalProject.d.ts +6 -0
  169. package/models/ExternalProject.js +2 -0
  170. package/models/IBaseService.d.ts +4 -0
  171. package/models/IBaseService.js +1 -0
  172. package/models/IConfigGroup.d.ts +5 -0
  173. package/models/IConfigGroup.js +1 -0
  174. package/models/IDebugLevel.d.ts +2 -0
  175. package/models/IDebugLevel.js +1 -0
  176. package/models/IExportDataQuery.d.ts +9 -0
  177. package/models/IExportDataQuery.js +1 -0
  178. package/models/IFunctionConfig.d.ts +8 -0
  179. package/models/IFunctionConfig.js +1 -0
  180. package/models/IInvitation.d.ts +6 -0
  181. package/models/IInvitation.js +1 -0
  182. package/models/IInvitationExists.d.ts +4 -0
  183. package/models/IInvitationExists.js +1 -0
  184. package/models/IOperation.d.ts +6 -0
  185. package/models/IOperation.js +1 -0
  186. package/models/IPersonalAccessToken.d.ts +16 -0
  187. package/models/IPersonalAccessToken.js +1 -0
  188. package/models/IProject.d.ts +4 -0
  189. package/models/IProject.js +1 -0
  190. package/models/IProjectApplication.d.ts +6 -0
  191. package/models/IProjectApplication.js +1 -0
  192. package/models/IRobot.d.ts +18 -0
  193. package/models/IRobot.js +1 -0
  194. package/models/IRobotConfig.d.ts +8 -0
  195. package/models/IRobotConfig.js +1 -0
  196. package/models/IRobotPlugin.d.ts +3 -0
  197. package/models/IRobotPlugin.js +1 -0
  198. package/models/IRobotSettings.d.ts +28 -0
  199. package/models/IRobotSettings.js +1 -0
  200. package/models/IRobotTemplate.d.ts +10 -0
  201. package/models/IRobotTemplate.js +1 -0
  202. package/models/IRocosSDKConfig.d.ts +19 -0
  203. package/models/IRocosSDKConfig.js +1 -0
  204. package/models/ISource.d.ts +8 -0
  205. package/models/ISource.js +1 -0
  206. package/models/IStream.d.ts +9 -0
  207. package/models/IStream.js +1 -0
  208. package/models/IStreamConfig.d.ts +9 -0
  209. package/models/IStreamConfig.js +1 -0
  210. package/models/IStreamOptions.d.ts +7 -0
  211. package/models/IStreamOptions.js +1 -0
  212. package/models/IStreamSource.d.ts +8 -0
  213. package/models/IStreamSource.js +1 -0
  214. package/models/ISubscriberStatus.d.ts +5 -0
  215. package/models/ISubscriberStatus.js +1 -0
  216. package/models/ITelemetryStreamConfig.d.ts +7 -0
  217. package/models/ITelemetryStreamConfig.js +1 -0
  218. package/models/IToken.d.ts +9 -0
  219. package/models/IToken.js +1 -0
  220. package/models/IWidget.d.ts +25 -0
  221. package/models/IWidget.js +1 -0
  222. package/models/IWidgetLineGroup.d.ts +8 -0
  223. package/models/IWidgetLineGroup.js +1 -0
  224. package/models/ResponseLevelEnum.d.ts +10 -0
  225. package/models/ResponseLevelEnum.js +11 -0
  226. package/models/Robot.d.ts +20 -0
  227. package/models/Robot.js +8 -0
  228. package/models/RobotConfig.d.ts +10 -0
  229. package/models/RobotConfig.js +5 -0
  230. package/models/RobotPlugin.d.ts +5 -0
  231. package/models/RobotPlugin.js +5 -0
  232. package/models/RobotTemplate.d.ts +12 -0
  233. package/models/RobotTemplate.js +25 -0
  234. package/models/RocosError.d.ts +30 -0
  235. package/models/RocosError.js +39 -0
  236. package/models/ServiceEnum.d.ts +26 -0
  237. package/models/ServiceEnum.js +27 -0
  238. package/models/Stream.d.ts +10 -0
  239. package/models/Stream.js +11 -0
  240. package/models/StreamOptions.d.ts +9 -0
  241. package/models/StreamOptions.js +33 -0
  242. package/models/StreamSource.d.ts +10 -0
  243. package/models/StreamSource.js +11 -0
  244. package/models/SubscriberStatusEnum.d.ts +6 -0
  245. package/models/SubscriberStatusEnum.js +7 -0
  246. package/models/Token.d.ts +40 -0
  247. package/models/Token.js +78 -0
  248. package/models/Token.spec.d.ts +1 -0
  249. package/models/Token.spec.js +108 -0
  250. package/models/Widget.d.ts +27 -0
  251. package/models/Widget.js +12 -0
  252. package/models/WidgetLineGroup.d.ts +10 -0
  253. package/models/WidgetLineGroup.js +5 -0
  254. package/models/asset-storage/AssetModelItem.d.ts +29 -0
  255. package/models/asset-storage/AssetModelItem.js +1 -0
  256. package/models/caller/IRocosCallerMessageChunk.d.ts +10 -0
  257. package/models/caller/IRocosCallerMessageChunk.js +1 -0
  258. package/models/caller/IRocosCallerMessageChunks.d.ts +4 -0
  259. package/models/caller/IRocosCallerMessageChunks.js +1 -0
  260. package/models/caller/IRocosCallerMessageHeartbeat.d.ts +3 -0
  261. package/models/caller/IRocosCallerMessageHeartbeat.js +1 -0
  262. package/models/caller/IRocosCallerMessageResponse.d.ts +10 -0
  263. package/models/caller/IRocosCallerMessageResponse.js +1 -0
  264. package/models/caller/IRocosCallerMessageResponseAck.d.ts +16 -0
  265. package/models/caller/IRocosCallerMessageResponseAck.js +13 -0
  266. package/models/caller/IRocosCallerMessageResponseResult.d.ts +15 -0
  267. package/models/caller/IRocosCallerMessageResponseResult.js +12 -0
  268. package/models/caller/IRocosCallerMessageResponseReturn.d.ts +8 -0
  269. package/models/caller/IRocosCallerMessageResponseReturn.js +1 -0
  270. package/models/caller/IRocosCallerMessageResponseUid.d.ts +10 -0
  271. package/models/caller/IRocosCallerMessageResponseUid.js +7 -0
  272. package/models/caller/IRocosCallerMessageResponses.d.ts +4 -0
  273. package/models/caller/IRocosCallerMessageResponses.js +1 -0
  274. package/models/caller/RocosCallerResultStatus.d.ts +11 -0
  275. package/models/caller/RocosCallerResultStatus.js +12 -0
  276. package/models/caller/RocosResponseLevel.d.ts +6 -0
  277. package/models/caller/RocosResponseLevel.js +7 -0
  278. package/models/caller/index.d.ts +10 -0
  279. package/models/caller/index.js +10 -0
  280. package/models/callsigns/CallsignsEnums.d.ts +13 -0
  281. package/models/callsigns/CallsignsEnums.js +17 -0
  282. package/models/callsigns/CallsignsLookup.d.ts +8 -0
  283. package/models/callsigns/CallsignsLookup.js +28 -0
  284. package/models/callsigns/CallsignsQuery.d.ts +9 -0
  285. package/models/callsigns/CallsignsQuery.js +14 -0
  286. package/models/callsigns/CallsignsQueryPredicate.d.ts +9 -0
  287. package/models/callsigns/CallsignsQueryPredicate.js +15 -0
  288. package/models/command/IRocosCommandMessageHeartbeat.d.ts +1 -0
  289. package/models/command/IRocosCommandMessageHeartbeat.js +1 -0
  290. package/models/command/IRocosCommandMessageResponse.d.ts +55 -0
  291. package/models/command/IRocosCommandMessageResponse.js +29 -0
  292. package/models/command/RocosCommandResultStatus.d.ts +11 -0
  293. package/models/command/RocosCommandResultStatus.js +12 -0
  294. package/models/command/index.d.ts +4 -0
  295. package/models/command/index.js +4 -0
  296. package/models/file/FileEnums.d.ts +30 -0
  297. package/models/file/FileEnums.js +33 -0
  298. package/models/index.d.ts +75 -0
  299. package/models/index.js +75 -0
  300. package/models/integrations/Overlay.d.ts +49 -0
  301. package/models/integrations/Overlay.js +1 -0
  302. package/models/integrations/Plan.d.ts +324 -0
  303. package/models/integrations/Plan.js +1 -0
  304. package/models/maps/Map.d.ts +13 -0
  305. package/models/maps/Map.js +1 -0
  306. package/models/message/IRocosCallerMessage.d.ts +8 -0
  307. package/models/message/IRocosCallerMessage.js +1 -0
  308. package/models/message/IRocosChangeMessage.d.ts +6 -0
  309. package/models/message/IRocosChangeMessage.js +1 -0
  310. package/models/message/IRocosCommandMessage.d.ts +6 -0
  311. package/models/message/IRocosCommandMessage.js +1 -0
  312. package/models/message/IRocosControlMessage.d.ts +7 -0
  313. package/models/message/IRocosControlMessage.js +1 -0
  314. package/models/message/IRocosOpResultMessage.d.ts +6 -0
  315. package/models/message/IRocosOpResultMessage.js +1 -0
  316. package/models/message/IRocosSearchMessage.d.ts +5 -0
  317. package/models/message/IRocosSearchMessage.js +1 -0
  318. package/models/message/IRocosSearchRowMessage.d.ts +9 -0
  319. package/models/message/IRocosSearchRowMessage.js +1 -0
  320. package/models/message/IRocosSearchStatusMessage.d.ts +4 -0
  321. package/models/message/IRocosSearchStatusMessage.js +1 -0
  322. package/models/message/IRocosTelemetryMessage.d.ts +23 -0
  323. package/models/message/IRocosTelemetryMessage.js +1 -0
  324. package/models/message/IStreamStatusMessage.d.ts +5 -0
  325. package/models/message/IStreamStatusMessage.js +1 -0
  326. package/models/message/RocosCallerMessage.d.ts +10 -0
  327. package/models/message/RocosCallerMessage.js +32 -0
  328. package/models/message/RocosCommandMessage.d.ts +9 -0
  329. package/models/message/RocosCommandMessage.js +13 -0
  330. package/models/message/RocosControlMessage.d.ts +11 -0
  331. package/models/message/RocosControlMessage.js +14 -0
  332. package/models/message/RocosOpResultMessage.d.ts +10 -0
  333. package/models/message/RocosOpResultMessage.js +18 -0
  334. package/models/message/RocosSearchMessage.d.ts +9 -0
  335. package/models/message/RocosSearchMessage.js +24 -0
  336. package/models/message/RocosSearchRowMessage.d.ts +13 -0
  337. package/models/message/RocosSearchRowMessage.js +16 -0
  338. package/models/message/RocosTelemetryMessage.d.ts +10 -0
  339. package/models/message/RocosTelemetryMessage.js +63 -0
  340. package/models/message/index.d.ts +17 -0
  341. package/models/message/index.js +17 -0
  342. package/models/params/ICallerParams.d.ts +16 -0
  343. package/models/params/ICallerParams.js +1 -0
  344. package/models/params/ICommandParams.d.ts +9 -0
  345. package/models/params/ICommandParams.js +1 -0
  346. package/models/params/IControlParams.d.ts +8 -0
  347. package/models/params/IControlParams.js +1 -0
  348. package/models/params/IFileAccessorParams.d.ts +11 -0
  349. package/models/params/IFileAccessorParams.js +1 -0
  350. package/models/params/ISearchParams.d.ts +10 -0
  351. package/models/params/ISearchParams.js +1 -0
  352. package/models/params/ITelemetryParams.d.ts +18 -0
  353. package/models/params/ITelemetryParams.js +1 -0
  354. package/models/params/IWebRTCSignallingParams.d.ts +21 -0
  355. package/models/params/IWebRTCSignallingParams.js +1 -0
  356. package/models/projects/ProjectUser.d.ts +6 -0
  357. package/models/projects/ProjectUser.js +1 -0
  358. package/models/schedule/IScheduleAction.d.ts +13 -0
  359. package/models/schedule/IScheduleAction.js +6 -0
  360. package/models/schedule/IScheduleInfo.d.ts +11 -0
  361. package/models/schedule/IScheduleInfo.js +1 -0
  362. package/models/schedule/IScheduleJob.d.ts +12 -0
  363. package/models/schedule/IScheduleJob.js +1 -0
  364. package/models/search/SearchQueryFilter.d.ts +5 -0
  365. package/models/search/SearchQueryFilter.js +5 -0
  366. package/models/search/SearchStreamQuery.d.ts +15 -0
  367. package/models/search/SearchStreamQuery.js +6 -0
  368. package/models/stream/IBaseStream.d.ts +8 -0
  369. package/models/stream/IBaseStream.js +1 -0
  370. package/models/stream/ICallerStream.d.ts +8 -0
  371. package/models/stream/ICallerStream.js +1 -0
  372. package/models/stream/ICommandStream.d.ts +7 -0
  373. package/models/stream/ICommandStream.js +1 -0
  374. package/models/stream/IControlStream.d.ts +9 -0
  375. package/models/stream/IControlStream.js +1 -0
  376. package/models/stream/IFileAccessorStream.d.ts +9 -0
  377. package/models/stream/IFileAccessorStream.js +1 -0
  378. package/models/stream/ISearchStream.d.ts +11 -0
  379. package/models/stream/ISearchStream.js +1 -0
  380. package/models/stream/ITelemetryStream.d.ts +10 -0
  381. package/models/stream/ITelemetryStream.js +1 -0
  382. package/models/stream/IWebRTCSignallingStream.d.ts +76 -0
  383. package/models/stream/IWebRTCSignallingStream.js +1 -0
  384. package/models/types.d.ts +5 -0
  385. package/models/types.js +1 -0
  386. package/node/RocosSDKNode.d.ts +42 -0
  387. package/node/RocosSDKNode.js +143 -0
  388. package/node/index.d.ts +7 -0
  389. package/node/index.js +7 -0
  390. package/package.json +22 -6
  391. package/services/AssetStorageService.d.ts +99 -0
  392. package/services/AssetStorageService.js +158 -0
  393. package/services/AuthService.d.ts +93 -0
  394. package/services/AuthService.js +235 -0
  395. package/services/AuthService.spec.d.ts +1 -0
  396. package/services/AuthService.spec.js +163 -0
  397. package/services/BaseServiceAbstract.d.ts +36 -0
  398. package/services/BaseServiceAbstract.js +101 -0
  399. package/services/BaseStreamService.d.ts +18 -0
  400. package/services/BaseStreamService.js +47 -0
  401. package/services/CallerService.d.ts +10 -0
  402. package/services/CallerService.js +53 -0
  403. package/services/CallerServiceNode.d.ts +6 -0
  404. package/services/CallerServiceNode.js +7 -0
  405. package/services/CommandService.d.ts +9 -0
  406. package/services/CommandService.js +38 -0
  407. package/services/CommandServiceNode.d.ts +6 -0
  408. package/services/CommandServiceNode.js +7 -0
  409. package/services/ConfigGroupService.d.ts +89 -0
  410. package/services/ConfigGroupService.js +153 -0
  411. package/services/ControlService.d.ts +11 -0
  412. package/services/ControlService.js +57 -0
  413. package/services/ControlServiceNode.d.ts +6 -0
  414. package/services/ControlServiceNode.js +7 -0
  415. package/services/DashboardService.d.ts +97 -0
  416. package/services/DashboardService.js +142 -0
  417. package/services/EventService.d.ts +53 -0
  418. package/services/EventService.js +85 -0
  419. package/services/FileAccessorService.d.ts +11 -0
  420. package/services/FileAccessorService.js +37 -0
  421. package/services/FileAccessorServiceNode.d.ts +6 -0
  422. package/services/FileAccessorServiceNode.js +7 -0
  423. package/services/FunctionService.d.ts +68 -0
  424. package/services/FunctionService.js +99 -0
  425. package/services/IntegrationService.d.ts +48 -0
  426. package/services/IntegrationService.js +72 -0
  427. package/services/MapService.d.ts +109 -0
  428. package/services/MapService.js +149 -0
  429. package/services/PlatformTimeService.d.ts +35 -0
  430. package/services/PlatformTimeService.js +156 -0
  431. package/services/PlatformTimeService.spec.d.ts +1 -0
  432. package/services/PlatformTimeService.spec.js +180 -0
  433. package/services/ProfileService.d.ts +244 -0
  434. package/services/ProfileService.js +362 -0
  435. package/services/ProjectService.d.ts +110 -0
  436. package/services/ProjectService.js +160 -0
  437. package/services/RobotService.d.ts +278 -0
  438. package/services/RobotService.js +460 -0
  439. package/services/ScheduleService.d.ts +22 -0
  440. package/services/ScheduleService.js +36 -0
  441. package/services/SearchService.d.ts +12 -0
  442. package/services/SearchService.js +58 -0
  443. package/services/SearchServiceNode.d.ts +6 -0
  444. package/services/SearchServiceNode.js +7 -0
  445. package/services/SpotProvisioningService.d.ts +14 -0
  446. package/services/SpotProvisioningService.js +43 -0
  447. package/services/SpotProvisioningServiceNode.d.ts +15 -0
  448. package/services/SpotProvisioningServiceNode.js +43 -0
  449. package/services/StreamService.d.ts +98 -0
  450. package/services/StreamService.js +142 -0
  451. package/services/TelemetryService.d.ts +40 -0
  452. package/services/TelemetryService.js +142 -0
  453. package/services/TelemetryService.spec.d.ts +1 -0
  454. package/services/TelemetryService.spec.js +37 -0
  455. package/services/TelemetryServiceNode.d.ts +6 -0
  456. package/services/TelemetryServiceNode.js +7 -0
  457. package/services/TimeSyncerService.d.ts +13 -0
  458. package/services/TimeSyncerService.js +23 -0
  459. package/services/UserService.d.ts +200 -0
  460. package/services/UserService.js +315 -0
  461. package/services/WebRTCSignallingService.d.ts +22 -0
  462. package/services/WebRTCSignallingService.js +78 -0
  463. package/services/WorkflowService.d.ts +71 -0
  464. package/services/WorkflowService.js +118 -0
  465. package/services/index.d.ts +26 -0
  466. package/services/index.js +26 -0
  467. package/store/RocosStore.d.ts +31 -0
  468. package/store/RocosStore.js +47 -0
@@ -0,0 +1,53 @@
1
+ import { RocosError } from '../models/RocosError';
2
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
3
+ import { IBaseService } from '../models/IBaseService';
4
+ import { IRocosSDKConfig } from '../models/IRocosSDKConfig';
5
+ export declare class EventService extends BaseServiceAbstract implements IBaseService {
6
+ constructor(config: IRocosSDKConfig);
7
+ protected getError(e: Error): RocosError;
8
+ getStatus(): boolean;
9
+ /**
10
+ * Get event definitions for a robot
11
+ *
12
+ * @param projectId - Project Id
13
+ * @param callsign - Robot callsign
14
+ * @param includeCounts - Counter
15
+ * @description - Renamed from getEventDefinitions
16
+ */
17
+ getDefinitions(projectId: string, callsign: string, includeCounts?: number): Promise<any>;
18
+ /**
19
+ * Add event definitions for a robot
20
+ *
21
+ * @param projectId - Project Id
22
+ * @param callsign - Robot callsign
23
+ * @param model - Payload
24
+ * @description - Renamed from AddEventDefinitions
25
+ */
26
+ addDefinitions(projectId: string, callsign: string, model: any): Promise<any>;
27
+ /**
28
+ * Get history for an event
29
+ *
30
+ * @param projectId - Project Id
31
+ * @param callsign - Robot callsign
32
+ * @param eventDefinitionId - Event Definition Id
33
+ * @description - Renamed from getEventHistory
34
+ */
35
+ getHistory(projectId: string, callsign: string, eventDefinitionId: string): Promise<any>;
36
+ /**
37
+ * Get events for a robot definition
38
+ *
39
+ * @param projectId - Project Id
40
+ * @param definitionId - Robot definition Id
41
+ * @description - Renamed from robotDefGetEventDefinitions
42
+ */
43
+ getDefinitionsForRobotDef(projectId: string, definitionId: string): Promise<any>;
44
+ /**
45
+ * Update events for a robot definition
46
+ *
47
+ * @param projectId - Project Id
48
+ * @param definitionId - Robot definition Id
49
+ * @param model - Payload
50
+ * @description - Renamed from robotDefAddEventDefinitions
51
+ */
52
+ addDefinitionsForRobotDef(projectId: string, definitionId: string, model: any): Promise<any>;
53
+ }
@@ -0,0 +1,85 @@
1
+ import { API_PROJECT_DEFINITION_EVENT_URL, API_PROJECT_ROBOT_EVENT_HISTORY_URL, API_PROJECT_ROBOT_EVENT_URL, } from '../constants/api';
2
+ import { RocosError, errorCodes } from '../models/RocosError';
3
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
4
+ import { RocosLogger } from '../logger/RocosLogger';
5
+ import { formatServiceUrl } from '../helpers/formatServiceUrl';
6
+ export class EventService extends BaseServiceAbstract {
7
+ constructor(config) {
8
+ super(config);
9
+ this.logger = RocosLogger.getInstance(`EventService(${this.config.url})`);
10
+ }
11
+ getError(e) {
12
+ return new RocosError(e, errorCodes.EVENT_SERVICE_ERROR);
13
+ }
14
+ getStatus() {
15
+ return true;
16
+ }
17
+ /**
18
+ * Get event definitions for a robot
19
+ *
20
+ * @param projectId - Project Id
21
+ * @param callsign - Robot callsign
22
+ * @param includeCounts - Counter
23
+ * @description - Renamed from getEventDefinitions
24
+ */
25
+ // TODO: map the response object
26
+ async getDefinitions(projectId, callsign, includeCounts = 0) {
27
+ return this.callGet(formatServiceUrl(API_PROJECT_ROBOT_EVENT_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), `Failed to get event definitions list for ${projectId}, callsign ${callsign}.`, { includeCounts });
28
+ }
29
+ /**
30
+ * Add event definitions for a robot
31
+ *
32
+ * @param projectId - Project Id
33
+ * @param callsign - Robot callsign
34
+ * @param model - Payload
35
+ * @description - Renamed from AddEventDefinitions
36
+ */
37
+ // TODO: map the request model
38
+ // TODO: map the response object
39
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
40
+ async addDefinitions(projectId, callsign, model) {
41
+ return this.callPost(formatServiceUrl(API_PROJECT_ROBOT_EVENT_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), model, `Failed to add event definitions for ${projectId}, callsign ${callsign}.`);
42
+ }
43
+ /**
44
+ * Get history for an event
45
+ *
46
+ * @param projectId - Project Id
47
+ * @param callsign - Robot callsign
48
+ * @param eventDefinitionId - Event Definition Id
49
+ * @description - Renamed from getEventHistory
50
+ */
51
+ // TODO: map the response object
52
+ async getHistory(projectId, callsign, eventDefinitionId) {
53
+ return this.callGet(formatServiceUrl(API_PROJECT_ROBOT_EVENT_HISTORY_URL, {
54
+ url: this.config.url,
55
+ projectId,
56
+ callsign,
57
+ eventDefinitionId,
58
+ }, this.config.insecure), `Failed to get event history for ${projectId}, callsign ${callsign}, eventDefinitionId ${eventDefinitionId}.`);
59
+ }
60
+ /**
61
+ * Get events for a robot definition
62
+ *
63
+ * @param projectId - Project Id
64
+ * @param definitionId - Robot definition Id
65
+ * @description - Renamed from robotDefGetEventDefinitions
66
+ */
67
+ // TODO: map the response object
68
+ async getDefinitionsForRobotDef(projectId, definitionId) {
69
+ return this.callGet(formatServiceUrl(API_PROJECT_DEFINITION_EVENT_URL, { url: this.config.url, projectId, definitionId }, this.config.insecure), `Failed to get event definitions list for ${projectId}, definitionId ${definitionId}.`);
70
+ }
71
+ /**
72
+ * Update events for a robot definition
73
+ *
74
+ * @param projectId - Project Id
75
+ * @param definitionId - Robot definition Id
76
+ * @param model - Payload
77
+ * @description - Renamed from robotDefAddEventDefinitions
78
+ */
79
+ // TODO: map the request model
80
+ // TODO: map the response object
81
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
82
+ async addDefinitionsForRobotDef(projectId, definitionId, model) {
83
+ return this.callPost(formatServiceUrl(API_PROJECT_DEFINITION_EVENT_URL, { url: this.config.url, projectId, definitionId }, this.config.insecure), model, `Failed to update event definitions for ${projectId}, definitionId ${definitionId}.`);
84
+ }
85
+ }
@@ -0,0 +1,11 @@
1
+ import { IFileAccessorParams, IFileAccessorReqOpParams, IFileAccessorStream, IRocosOpResultMessage, IRocosSDKConfig, IStreamConfig } from '../models';
2
+ import { BaseStreamService } from './BaseStreamService';
3
+ export declare class FileAccessorService extends BaseStreamService<IFileAccessorStream> {
4
+ constructor(config: IRocosSDKConfig);
5
+ serverReqOp(params: IFileAccessorReqOpParams): Promise<IRocosOpResultMessage[]>;
6
+ listFolder(params: IFileAccessorParams): Promise<IRocosOpResultMessage[]>;
7
+ downloadFile(params: IFileAccessorParams): Promise<IRocosOpResultMessage[]>;
8
+ getDownloadFileLinkByUsingBlob(params: IFileAccessorParams): Promise<any>;
9
+ protected createStream(): Promise<IFileAccessorStream>;
10
+ protected getStream(config: IStreamConfig): IFileAccessorStream;
11
+ }
@@ -0,0 +1,37 @@
1
+ import { BaseStreamService } from './BaseStreamService';
2
+ import { FileAccessorStream } from '../api/streams/fileAccessor/FileAccessorStream';
3
+ import { IDENTIFIER_NAME_FILE_ACCESSOR } from '../constants/identifier';
4
+ export class FileAccessorService extends BaseStreamService {
5
+ constructor(config) {
6
+ super('FileAccessorService', config);
7
+ }
8
+ async serverReqOp(params) {
9
+ const stream = await this.createStream();
10
+ return stream.serverReqOp(params);
11
+ }
12
+ async listFolder(params) {
13
+ const stream = await this.createStream();
14
+ return stream.listFolder(params);
15
+ }
16
+ async downloadFile(params) {
17
+ const stream = await this.createStream();
18
+ return stream.downloadFile(params);
19
+ }
20
+ async getDownloadFileLinkByUsingBlob(params) {
21
+ const stream = await this.createStream();
22
+ return stream.getDownloadFileLinkByUsingBlob(params);
23
+ }
24
+ async createStream() {
25
+ return (await this.createStreamFromConfig(IDENTIFIER_NAME_FILE_ACCESSOR, {
26
+ url: this.config.url,
27
+ token: this.config.token,
28
+ scope: 'default',
29
+ options: this.config.options,
30
+ port: this.config.port,
31
+ insecure: this.config.insecure,
32
+ })).stream;
33
+ }
34
+ getStream(config) {
35
+ return new FileAccessorStream(config);
36
+ }
37
+ }
@@ -0,0 +1,6 @@
1
+ import { FileAccessorService } from './FileAccessorService';
2
+ import { IFileAccessorStream } from '../models/stream/IFileAccessorStream';
3
+ import { IStreamConfig } from '../models/IStreamConfig';
4
+ export declare class FileAccessorServiceNode extends FileAccessorService {
5
+ protected getStream(config: IStreamConfig): IFileAccessorStream;
6
+ }
@@ -0,0 +1,7 @@
1
+ import { FileAccessorService } from './FileAccessorService';
2
+ import { FileAccessorStreamNode } from '../api/streams/fileAccessor/FileAccessorStreamNode';
3
+ export class FileAccessorServiceNode extends FileAccessorService {
4
+ getStream(config) {
5
+ return new FileAccessorStreamNode(config);
6
+ }
7
+ }
@@ -0,0 +1,68 @@
1
+ import { RocosError } from '../models/RocosError';
2
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
3
+ import { IBaseService } from '../models/IBaseService';
4
+ import { IExportDataQuery } from '../models/IExportDataQuery';
5
+ import { IFunctionConfig } from '../models/IFunctionConfig';
6
+ import { IRocosSDKConfig } from '../models/IRocosSDKConfig';
7
+ export declare class FunctionService extends BaseServiceAbstract implements IBaseService {
8
+ constructor(config: IRocosSDKConfig);
9
+ protected getError(e: Error): RocosError;
10
+ getStatus(): boolean;
11
+ /**
12
+ * Export data
13
+ *
14
+ * @param projectId - Project Id
15
+ * @param query - Payload {@link IExportDataQuery}
16
+ */
17
+ exportJobs(projectId: string, query: IExportDataQuery): Promise<any>;
18
+ /**
19
+ * Create a function
20
+ *
21
+ * @param projectId - Project Id
22
+ * @param model - Payload {@link IFunctionConfig}
23
+ */
24
+ create(projectId: string, model: IFunctionConfig): Promise<any>;
25
+ /**
26
+ * Get a functions
27
+ *
28
+ * @param projectId - Project Id
29
+ */
30
+ list(projectId: string): Promise<any>;
31
+ /**
32
+ * Update a function
33
+ *
34
+ * @param projectId - Project Id
35
+ * @param functionId - Function Id
36
+ * @param model - Payload {@link IFunctionConfig}
37
+ */
38
+ update(projectId: string, functionId: string, model: IFunctionConfig): Promise<any>;
39
+ /**
40
+ * Get function
41
+ *
42
+ * @param projectId - Project Id
43
+ * @param functionId - Function Id
44
+ */
45
+ info(projectId: string, functionId: string): Promise<any>;
46
+ /**
47
+ * Delete function
48
+ *
49
+ * @param projectId - Project Id
50
+ * @param functionId - Function Id
51
+ */
52
+ delete(projectId: string, functionId: string): Promise<any>;
53
+ /**
54
+ * Run a function
55
+ *
56
+ * @param projectId - Project Id
57
+ * @param functionId - Function Id
58
+ * @param body - Payload
59
+ */
60
+ run(projectId: string, functionId: string, body?: any): Promise<any>;
61
+ /**
62
+ * Get function pods
63
+ *
64
+ * @param projectId - Project Id
65
+ * @param functionId - Function Id
66
+ */
67
+ pods(projectId: string, functionId: string): Promise<any>;
68
+ }
@@ -0,0 +1,99 @@
1
+ import { API_PROJECT_EXPORT_URL, API_PROJECT_FUNCTION_ID_URL, API_PROJECT_FUNCTION_POD_URL, API_PROJECT_FUNCTION_RUN_URL, API_PROJECT_FUNCTION_URL, } from '../constants/api';
2
+ import { RocosError, errorCodes } from '../models/RocosError';
3
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
4
+ import { ExportDataQuery } from '../models/ExportDataQuery';
5
+ import { RocosLogger } from '../logger/RocosLogger';
6
+ import { formatServiceUrl } from '../helpers/formatServiceUrl';
7
+ export class FunctionService extends BaseServiceAbstract {
8
+ constructor(config) {
9
+ super(config);
10
+ this.logger = RocosLogger.getInstance(`FunctionService(${this.config.url})`);
11
+ }
12
+ getError(e) {
13
+ return new RocosError(e, errorCodes.FUNCTION_SERVICE_ERROR);
14
+ }
15
+ getStatus() {
16
+ return true;
17
+ }
18
+ /**
19
+ * Export data
20
+ *
21
+ * @param projectId - Project Id
22
+ * @param query - Payload {@link IExportDataQuery}
23
+ */
24
+ // TODO: map the response object
25
+ async exportJobs(projectId, query) {
26
+ return this.callPost(formatServiceUrl(API_PROJECT_EXPORT_URL, { url: this.config.url, projectId }, this.config.insecure), new ExportDataQuery(query).toJSON(), `Failed to export data for ${projectId}.`);
27
+ }
28
+ /**
29
+ * Create a function
30
+ *
31
+ * @param projectId - Project Id
32
+ * @param model - Payload {@link IFunctionConfig}
33
+ */
34
+ // TODO: map the response object
35
+ async create(projectId, model) {
36
+ return this.callPost(formatServiceUrl(API_PROJECT_FUNCTION_URL, { url: this.config.url, projectId }, this.config.insecure), model, `Failed to create function for ${projectId}.`);
37
+ }
38
+ /**
39
+ * Get a functions
40
+ *
41
+ * @param projectId - Project Id
42
+ */
43
+ // TODO: map the response object
44
+ async list(projectId) {
45
+ return this.callGet(formatServiceUrl(API_PROJECT_FUNCTION_URL, { url: this.config.url, projectId }, this.config.insecure), `Failed to get functions for ${projectId}.`);
46
+ }
47
+ /**
48
+ * Update a function
49
+ *
50
+ * @param projectId - Project Id
51
+ * @param functionId - Function Id
52
+ * @param model - Payload {@link IFunctionConfig}
53
+ */
54
+ // TODO: map the response object
55
+ async update(projectId, functionId, model) {
56
+ return this.callPut(formatServiceUrl(API_PROJECT_FUNCTION_ID_URL, { url: this.config.url, projectId, functionId }, this.config.insecure), model, `Failed to update function for ${projectId}, functionId ${functionId}.`);
57
+ }
58
+ /**
59
+ * Get function
60
+ *
61
+ * @param projectId - Project Id
62
+ * @param functionId - Function Id
63
+ */
64
+ // TODO: map the response object
65
+ async info(projectId, functionId) {
66
+ return this.callGet(formatServiceUrl(API_PROJECT_FUNCTION_ID_URL, { url: this.config.url, projectId, functionId }, this.config.insecure), `Failed to get function for ${projectId}, functionId ${functionId}.`);
67
+ }
68
+ /**
69
+ * Delete function
70
+ *
71
+ * @param projectId - Project Id
72
+ * @param functionId - Function Id
73
+ */
74
+ // TODO: map the response object
75
+ async delete(projectId, functionId) {
76
+ return this.callDelete(formatServiceUrl(API_PROJECT_FUNCTION_ID_URL, { url: this.config.url, projectId, functionId }, this.config.insecure), `Failed to delete function for ${projectId}, functionId ${functionId}.`);
77
+ }
78
+ /**
79
+ * Run a function
80
+ *
81
+ * @param projectId - Project Id
82
+ * @param functionId - Function Id
83
+ * @param body - Payload
84
+ */
85
+ // TODO: map the response object
86
+ async run(projectId, functionId, body = null) {
87
+ return this.callPost(formatServiceUrl(API_PROJECT_FUNCTION_RUN_URL, { url: this.config.url, projectId, functionId }, this.config.insecure), body, `Failed to run function for ${projectId}, functionId ${functionId}.`);
88
+ }
89
+ /**
90
+ * Get function pods
91
+ *
92
+ * @param projectId - Project Id
93
+ * @param functionId - Function Id
94
+ */
95
+ // TODO: map the response object
96
+ async pods(projectId, functionId) {
97
+ return this.callGet(formatServiceUrl(API_PROJECT_FUNCTION_POD_URL, { url: this.config.url, projectId, functionId }, this.config.insecure), `Failed to ged function pods for ${projectId}, functionId ${functionId}.`);
98
+ }
99
+ }
@@ -0,0 +1,48 @@
1
+ import { IBaseService, IRocosSDKConfig, Overlay, Plan, RocosError } from '../models';
2
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
3
+ /**
4
+ * Integrations to retrieve data from the linked project in DroneDeploy
5
+ */
6
+ export declare class IntegrationService extends BaseServiceAbstract implements IBaseService {
7
+ constructor(config: IRocosSDKConfig);
8
+ getStatus(): boolean;
9
+ protected getError(e: Error): RocosError;
10
+ /**
11
+ * Gets latest plans from the project linked to the provided project ID
12
+ * @param projectId Project ID
13
+ * @returns Plans list (limited to 50)
14
+ */
15
+ getPlans(projectId: string): Promise<Plan[]>;
16
+ /**
17
+ * Gets the plans from the project linked to the provided project ID
18
+ * @param projectId Project ID
19
+ * @param pageStart Page start
20
+ * @returns Plans list (limited to 50) with cursor to next page when available
21
+ */
22
+ getPlansPaged(projectId: string, pageStart?: string): Promise<{
23
+ plans: Plan[];
24
+ pageNext?: string;
25
+ }>;
26
+ /**
27
+ * Gets a plan for a given project (using its linked project)
28
+ * @param projectId Project ID
29
+ * @param planId Requested plan
30
+ * @returns A single plan
31
+ */
32
+ getPlanById(projectId: string, planId: string): Promise<Plan>;
33
+ /**
34
+ * Returns raster overlays such as drawings to be used for mission planning
35
+ * @param projectId Project ID
36
+ * @returns A list of overlays in the project
37
+ */
38
+ getOverlays(projectId: string): Promise<Overlay[]>;
39
+ /**
40
+ * Creates a blank issue in the latest ortho plan available
41
+ * @param projectId Project ID
42
+ * @param location Location of the issue
43
+ */
44
+ createIssue(projectId: string, location: {
45
+ lat: number;
46
+ lng: number;
47
+ }): Promise<void>;
48
+ }
@@ -0,0 +1,72 @@
1
+ import { API_DD_INTEGRATION_ISSUES_URL, API_DD_INTEGRATION_OVERLAYS_URL, API_DD_INTEGRATION_PLANS_URL, API_DD_INTEGRATION_PLAN_BY_ID_URL, } from '../constants/api';
2
+ import { RocosError, errorCodes } from '../models';
3
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
4
+ import { RocosLogger } from '../logger/RocosLogger';
5
+ import { formatServiceUrl } from '../helpers/formatServiceUrl';
6
+ /**
7
+ * Integrations to retrieve data from the linked project in DroneDeploy
8
+ */
9
+ export class IntegrationService extends BaseServiceAbstract {
10
+ constructor(config) {
11
+ super(config);
12
+ this.logger = RocosLogger.getInstance(`IntegrationService(${this.config.url})`);
13
+ }
14
+ getStatus() {
15
+ return true;
16
+ }
17
+ getError(e) {
18
+ return new RocosError(e, errorCodes.INTEGRATIONS_SERVICE_ERROR);
19
+ }
20
+ /**
21
+ * Gets latest plans from the project linked to the provided project ID
22
+ * @param projectId Project ID
23
+ * @returns Plans list (limited to 50)
24
+ */
25
+ async getPlans(projectId) {
26
+ return this.callGet(formatServiceUrl(API_DD_INTEGRATION_PLANS_URL, { url: this.config.url, projectId }, this.config.insecure), 'Failed to get plans.');
27
+ }
28
+ /**
29
+ * Gets the plans from the project linked to the provided project ID
30
+ * @param projectId Project ID
31
+ * @param pageStart Page start
32
+ * @returns Plans list (limited to 50) with cursor to next page when available
33
+ */
34
+ async getPlansPaged(projectId, pageStart) {
35
+ const params = pageStart ? { page_start: pageStart } : undefined;
36
+ const response = await this.callGet(formatServiceUrl(`${API_DD_INTEGRATION_PLANS_URL}`, { url: this.config.url, projectId }, this.config.insecure), 'Failed to get plans.', params, { responseType: 'raw' });
37
+ const pageNext = response.headers.get('x-dd-page-next') ?? undefined;
38
+ const plans = await response.json();
39
+ return {
40
+ plans,
41
+ pageNext,
42
+ };
43
+ }
44
+ /**
45
+ * Gets a plan for a given project (using its linked project)
46
+ * @param projectId Project ID
47
+ * @param planId Requested plan
48
+ * @returns A single plan
49
+ */
50
+ async getPlanById(projectId, planId) {
51
+ return this.callGet(formatServiceUrl(API_DD_INTEGRATION_PLAN_BY_ID_URL, { url: this.config.url, projectId, planId }, this.config.insecure), 'Failed to get plan.');
52
+ }
53
+ /**
54
+ * Returns raster overlays such as drawings to be used for mission planning
55
+ * @param projectId Project ID
56
+ * @returns A list of overlays in the project
57
+ */
58
+ async getOverlays(projectId) {
59
+ return this.callGet(formatServiceUrl(API_DD_INTEGRATION_OVERLAYS_URL, { url: this.config.url, projectId }, this.config.insecure), 'Failed to get overlays.');
60
+ }
61
+ /**
62
+ * Creates a blank issue in the latest ortho plan available
63
+ * @param projectId Project ID
64
+ * @param location Location of the issue
65
+ */
66
+ async createIssue(projectId, location) {
67
+ return this.callPost(formatServiceUrl(API_DD_INTEGRATION_ISSUES_URL, { url: this.config.url, projectId }, this.config.insecure), {
68
+ lat: location.lat,
69
+ lng: location.lng,
70
+ }, 'Failed to create issue.');
71
+ }
72
+ }
@@ -0,0 +1,109 @@
1
+ import { IBaseService, IRocosSDKConfig, Map, RocosError } from '../models';
2
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
3
+ /**
4
+ * Integrations to retrieve data from the linked project in DroneDeploy
5
+ */
6
+ export declare class MapService extends BaseServiceAbstract implements IBaseService {
7
+ constructor(config: IRocosSDKConfig);
8
+ getStatus(): boolean;
9
+ protected getError(e: Error): RocosError;
10
+ /**
11
+ * List maps from the cloud
12
+ *
13
+ * @param projectId Project ID
14
+ * @returns All maps in the cloud
15
+ */
16
+ list(projectId: string): Promise<Map[]>;
17
+ /**
18
+ * List maps from the robot and the cloud
19
+ *
20
+ * @param projectId Project ID
21
+ * @param callsign Robot callsign
22
+ * @returns All maps in the cloud
23
+ */
24
+ list(projectId: string, callsign: string): Promise<Map[]>;
25
+ /** List maps to be deployed to a callsign
26
+ *
27
+ * @param projectId
28
+ * @param callsign
29
+ */
30
+ listDeployedMaps(projectId: string, callsign: string): Promise<Map[]>;
31
+ /**
32
+ * Creates a new map by merging two existing maps
33
+ * @param projectId Project ID
34
+ * @param maps Array of two map IDs to merge
35
+ * @param options Options to create the new map
36
+ */
37
+ merge(projectId: string, maps: [string, string], options: {
38
+ name: string;
39
+ description?: string;
40
+ callsign: string;
41
+ }): Promise<void>;
42
+ /** Returns a map in its canonical form
43
+ *
44
+ * @param projectId Project ID
45
+ * @param mapId Map ID
46
+ */
47
+ get(projectId: string, mapId: string): Promise<Map>;
48
+ /**
49
+ * Updates a maps metadata
50
+ * @param projectId Project ID
51
+ * @param mapId Map ID
52
+ * @param options New metadata
53
+ */
54
+ update(projectId: string, mapId: string, options: {
55
+ name: string;
56
+ description?: string;
57
+ callsign?: string;
58
+ }): Promise<void>;
59
+ /**
60
+ * Begins uploading a map from the agent
61
+ *
62
+ * @param projectId Project ID
63
+ * @param mapId Map ID
64
+ * @param callsign Robot callsign
65
+ * @param hash Map hash
66
+ */
67
+ sendToCloud(projectId: string, mapId: string, callsign: string, hash: string): Promise<void>;
68
+ /**
69
+ * Deletes a map from the cloud and all agents
70
+ * @param projectId
71
+ * @param mapId
72
+ */
73
+ delete(projectId: string, mapId: string): Promise<void>;
74
+ /**
75
+ * Deletes a map from a single agent.
76
+ *
77
+ * If the callsign does not have the map deployed, any local copy of the map will be deleted.
78
+ *
79
+ * @param projectId
80
+ * @param mapId
81
+ * @param callsign
82
+ * @param hash
83
+ */
84
+ delete(projectId: string, mapId: string, callsign: string, hash: string): Promise<void>;
85
+ /**
86
+ * Makes a copy of an uploaded map
87
+ *
88
+ * @param projectId Project ID
89
+ * @param mapId Map ID
90
+ * @param options Options to create the new map
91
+ */
92
+ copy(projectId: string, mapId: string, options: {
93
+ name: string;
94
+ description?: string;
95
+ }): Promise<void>;
96
+ /** Deploy a map from the cloud to a robot
97
+ *
98
+ * @param projectId Project ID
99
+ * @param mapId Map ID
100
+ * @param callsign Robot callsign
101
+ */
102
+ deploy(projectId: string, mapId: string, callsign: string): Promise<void>;
103
+ /** Get a GeoJSON representation of a map
104
+ *
105
+ * @param projectId Project ID
106
+ * @param mapId Map ID
107
+ */
108
+ getGeoJSON(projectId: string, mapId: string): Promise<unknown>;
109
+ }