@dronedeploy/rocos-js-sdk 0.0.1 → 2.6.1

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 (587) hide show
  1. package/IRocosSDK.d.ts +55 -0
  2. package/IRocosSDK.js +6 -0
  3. package/README.md +90 -0
  4. package/RocosSDK.d.ts +138 -0
  5. package/RocosSDK.js +294 -0
  6. package/api/StreamRegister.d.ts +13 -0
  7. package/api/StreamRegister.js +58 -0
  8. package/api/atoms/StreamHeartbeat.d.ts +27 -0
  9. package/api/atoms/StreamHeartbeat.js +115 -0
  10. package/api/streams/caller/CallerStream.d.ts +13 -0
  11. package/api/streams/caller/CallerStream.js +85 -0
  12. package/api/streams/caller/CallerStreamAbstract.d.ts +28 -0
  13. package/api/streams/caller/CallerStreamAbstract.js +99 -0
  14. package/api/streams/caller/CallerStreamNode.d.ts +13 -0
  15. package/api/streams/caller/CallerStreamNode.js +128 -0
  16. package/api/streams/command/CommandStream.d.ts +12 -0
  17. package/api/streams/command/CommandStream.js +68 -0
  18. package/api/streams/command/CommandStreamAbstract.d.ts +24 -0
  19. package/api/streams/command/CommandStreamAbstract.js +72 -0
  20. package/api/streams/command/CommandStreamNode.d.ts +12 -0
  21. package/api/streams/command/CommandStreamNode.js +93 -0
  22. package/api/streams/control/ControlStream.d.ts +14 -0
  23. package/api/streams/control/ControlStream.js +81 -0
  24. package/api/streams/control/ControlStreamAbstract.d.ts +28 -0
  25. package/api/streams/control/ControlStreamAbstract.js +108 -0
  26. package/api/streams/control/ControlStreamNode.d.ts +14 -0
  27. package/api/streams/control/ControlStreamNode.js +98 -0
  28. package/api/streams/fileAccessor/FileAccessorStream.d.ts +10 -0
  29. package/api/streams/fileAccessor/FileAccessorStream.js +74 -0
  30. package/api/streams/fileAccessor/FileAccessorStreamAbstract.d.ts +26 -0
  31. package/api/streams/fileAccessor/FileAccessorStreamAbstract.js +82 -0
  32. package/api/streams/fileAccessor/FileAccessorStreamNode.d.ts +10 -0
  33. package/api/streams/fileAccessor/FileAccessorStreamNode.js +96 -0
  34. package/api/streams/search/SearchStream.d.ts +16 -0
  35. package/api/streams/search/SearchStream.js +120 -0
  36. package/api/streams/search/SearchStreamAbstract.d.ts +30 -0
  37. package/api/streams/search/SearchStreamAbstract.js +74 -0
  38. package/api/streams/search/SearchStreamNode.d.ts +16 -0
  39. package/api/streams/search/SearchStreamNode.js +143 -0
  40. package/api/streams/telemetry/TelemetryStream.d.ts +17 -0
  41. package/api/streams/telemetry/TelemetryStream.js +126 -0
  42. package/api/streams/telemetry/TelemetryStreamAbstract.d.ts +62 -0
  43. package/api/streams/telemetry/TelemetryStreamAbstract.js +421 -0
  44. package/api/streams/telemetry/TelemetryStreamNode.d.ts +21 -0
  45. package/api/streams/telemetry/TelemetryStreamNode.js +195 -0
  46. package/api/streams/webRTCSignalling/WebRTCSignallingStream.d.ts +44 -0
  47. package/api/streams/webRTCSignalling/WebRTCSignallingStream.js +67 -0
  48. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.d.ts +32 -0
  49. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.js +65 -0
  50. package/constants/api.d.ts +121 -0
  51. package/constants/api.js +126 -0
  52. package/constants/grpc.d.ts +5 -0
  53. package/constants/grpc.js +8 -0
  54. package/constants/identifier.d.ts +6 -0
  55. package/constants/identifier.js +9 -0
  56. package/constants/timezones.d.ts +2 -0
  57. package/constants/timezones.js +430 -0
  58. package/demo/angular/.editorconfig +16 -0
  59. package/demo/angular/.eslintignore +4 -0
  60. package/demo/angular/.eslintrc.json +50 -0
  61. package/demo/angular/README.md +36 -0
  62. package/demo/angular/angular.json +132 -0
  63. package/demo/angular/karma.conf.js +44 -0
  64. package/demo/angular/package.json +41 -0
  65. package/demo/angular/src/app/app.component.css +0 -0
  66. package/demo/angular/src/app/app.component.html +9 -0
  67. package/demo/angular/src/app/app.component.ts +10 -0
  68. package/demo/angular/src/app/app.module.ts +38 -0
  69. package/demo/angular/src/app/components/assets/assets.component.css +0 -0
  70. package/demo/angular/src/app/components/assets/assets.component.html +29 -0
  71. package/demo/angular/src/app/components/assets/assets.component.ts +107 -0
  72. package/demo/angular/src/app/components/auth/auth.component.css +0 -0
  73. package/demo/angular/src/app/components/auth/auth.component.html +27 -0
  74. package/demo/angular/src/app/components/auth/auth.component.ts +33 -0
  75. package/demo/angular/src/app/components/caller/caller.component.css +0 -0
  76. package/demo/angular/src/app/components/caller/caller.component.html +22 -0
  77. package/demo/angular/src/app/components/caller/caller.component.ts +61 -0
  78. package/demo/angular/src/app/components/command/command.component.css +0 -0
  79. package/demo/angular/src/app/components/command/command.component.html +22 -0
  80. package/demo/angular/src/app/components/command/command.component.ts +60 -0
  81. package/demo/angular/src/app/components/integrations/integrations.component.ts +43 -0
  82. package/demo/angular/src/app/components/robots/robots.component.css +0 -0
  83. package/demo/angular/src/app/components/robots/robots.component.html +13 -0
  84. package/demo/angular/src/app/components/robots/robots.component.ts +26 -0
  85. package/demo/angular/src/app/components/sdk/sdk.component.css +0 -0
  86. package/demo/angular/src/app/components/sdk/sdk.component.html +43 -0
  87. package/demo/angular/src/app/components/sdk/sdk.component.ts +50 -0
  88. package/demo/angular/src/app/components/subscription/subscription.component.css +0 -0
  89. package/demo/angular/src/app/components/subscription/subscription.component.html +6 -0
  90. package/demo/angular/src/app/components/subscription/subscription.component.ts +40 -0
  91. package/demo/angular/src/app/components/telemetry/telemetry.component.css +0 -0
  92. package/demo/angular/src/app/components/telemetry/telemetry.component.html +19 -0
  93. package/demo/angular/src/app/components/telemetry/telemetry.component.ts +61 -0
  94. package/demo/angular/src/app/components/token/token.component.css +0 -0
  95. package/demo/angular/src/app/components/token/token.component.html +10 -0
  96. package/demo/angular/src/app/components/token/token.component.ts +18 -0
  97. package/demo/angular/src/app/components/video/p2pvideo/index.ts +646 -0
  98. package/demo/angular/src/app/components/video/video-source.ts +315 -0
  99. package/demo/angular/src/app/components/video/video.component.css +6 -0
  100. package/demo/angular/src/app/components/video/video.component.html +54 -0
  101. package/demo/angular/src/app/components/video/video.component.ts +151 -0
  102. package/demo/angular/src/app/services/sdk.service.ts +193 -0
  103. package/demo/angular/src/assets/.gitkeep +0 -0
  104. package/demo/angular/src/assets/HKGrotesk-Bold.otf +0 -0
  105. package/demo/angular/src/assets/HKGrotesk-Regular.otf +0 -0
  106. package/demo/angular/src/assets/logo.svg +16 -0
  107. package/demo/angular/src/environments/environment.prod.ts +3 -0
  108. package/demo/angular/src/environments/environment.ts +16 -0
  109. package/demo/angular/src/favicon.ico +0 -0
  110. package/demo/angular/src/index.html +15 -0
  111. package/demo/angular/src/main.ts +7 -0
  112. package/demo/angular/src/polyfills.ts +53 -0
  113. package/demo/angular/src/styles.css +198 -0
  114. package/demo/angular/tsconfig.app.json +15 -0
  115. package/demo/angular/tsconfig.json +39 -0
  116. package/demo/html/README.md +8 -0
  117. package/demo/html/assets/HKGrotesk-Bold.otf +0 -0
  118. package/demo/html/assets/HKGrotesk-Regular.otf +0 -0
  119. package/demo/html/assets/logo.svg +16 -0
  120. package/demo/html/favicon.ico +0 -0
  121. package/demo/html/index.html +416 -0
  122. package/demo/html/rocos-js-sdk.js +3 -0
  123. package/demo/html/rocos-js-sdk.js.LICENSE.txt +8 -0
  124. package/demo/html/rocos-js-sdk.js.map +1 -0
  125. package/demo/html/styles.css +190 -0
  126. package/demo/node/README.md +17 -0
  127. package/demo/node/index.js +134 -0
  128. package/demo/node/package.json +8 -0
  129. package/demo/react/.env +1 -0
  130. package/demo/react/.env.dist +1 -0
  131. package/demo/react/.eslintrc.json +46 -0
  132. package/demo/react/README.md +65 -0
  133. package/demo/react/package.json +60 -0
  134. package/demo/react/public/favicon.ico +0 -0
  135. package/demo/react/public/index.html +43 -0
  136. package/demo/react/public/logo192.png +0 -0
  137. package/demo/react/public/logo512.png +0 -0
  138. package/demo/react/public/manifest.json +25 -0
  139. package/demo/react/public/robots.txt +3 -0
  140. package/demo/react/src/App.css +190 -0
  141. package/demo/react/src/App.tsx +31 -0
  142. package/demo/react/src/actions/index.ts +8 -0
  143. package/demo/react/src/actions/sdkActions.ts +62 -0
  144. package/demo/react/src/assets/HKGrotesk-Bold.otf +0 -0
  145. package/demo/react/src/assets/HKGrotesk-Regular.otf +0 -0
  146. package/demo/react/src/assets/logo.svg +16 -0
  147. package/demo/react/src/components/AuthForm.tsx +76 -0
  148. package/demo/react/src/components/CallerBox.tsx +53 -0
  149. package/demo/react/src/components/CallerForm.tsx +98 -0
  150. package/demo/react/src/components/CommandBox.tsx +47 -0
  151. package/demo/react/src/components/CommandForm.tsx +98 -0
  152. package/demo/react/src/components/RobotsForm.tsx +51 -0
  153. package/demo/react/src/components/SubscriptionBox.tsx +55 -0
  154. package/demo/react/src/components/TelemetryForm.tsx +98 -0
  155. package/demo/react/src/components/TokenForm.tsx +39 -0
  156. package/demo/react/src/config.json +14 -0
  157. package/demo/react/src/controllers/RocosSDKController.ts +48 -0
  158. package/demo/react/src/helpers/deepEqual.ts +27 -0
  159. package/demo/react/src/hooks/useInput.ts +29 -0
  160. package/demo/react/src/index.css +11 -0
  161. package/demo/react/src/index.tsx +26 -0
  162. package/demo/react/src/react-app-env.d.ts +1 -0
  163. package/demo/react/src/reducers/sdkReducer.ts +133 -0
  164. package/demo/react/src/reportWebVitals.ts +15 -0
  165. package/demo/react/src/selectors/sdkSelector.ts +11 -0
  166. package/demo/react/src/setupTests.ts +5 -0
  167. package/demo/react/src/store.ts +14 -0
  168. package/demo/react/tsconfig.json +26 -0
  169. package/demo/sdk-sizer/dist/sdk-sizer/3rdpartylicenses.txt +975 -0
  170. package/demo/sdk-sizer/dist/sdk-sizer/favicon.ico +0 -0
  171. package/demo/sdk-sizer/dist/sdk-sizer/index.html +12 -0
  172. package/demo/sdk-sizer/dist/sdk-sizer/main.c9183649ce1856ef.js +2 -0
  173. package/demo/sdk-sizer/dist/sdk-sizer/main.c9183649ce1856ef.js.map +1 -0
  174. package/demo/sdk-sizer/dist/sdk-sizer/polyfills.701c8e5d007909aa.js +2 -0
  175. package/demo/sdk-sizer/dist/sdk-sizer/polyfills.701c8e5d007909aa.js.map +1 -0
  176. package/demo/sdk-sizer/dist/sdk-sizer/runtime.00e20e689f5284a8.js +2 -0
  177. package/demo/sdk-sizer/dist/sdk-sizer/runtime.00e20e689f5284a8.js.map +1 -0
  178. package/demo/sdk-sizer/dist/sdk-sizer/stats.json +1 -0
  179. package/demo/sdk-sizer/dist/sdk-sizer/styles.b45f7e627ac8cbce.css +2 -0
  180. package/demo/sdk-sizer/dist/sdk-sizer/styles.b45f7e627ac8cbce.css.map +1 -0
  181. package/grpc/file-accessor/filagree_grpc_pb.d.ts +41 -0
  182. package/grpc/file-accessor/filagree_grpc_pb.js +121 -0
  183. package/grpc/file-accessor/filagree_pb.d.ts +339 -0
  184. package/grpc/file-accessor/filagree_pb.js +2261 -0
  185. package/grpc/file-accessor/filagree_pb_service.d.ts +115 -0
  186. package/grpc/file-accessor/filagree_pb_service.js +257 -0
  187. package/grpc/rambo/rambo.v1_grpc_pb.d.ts +39 -0
  188. package/grpc/rambo/rambo.v1_grpc_pb.js +73 -0
  189. package/grpc/rambo/rambo.v1_pb.d.ts +365 -0
  190. package/grpc/rambo/rambo.v1_pb.js +2469 -0
  191. package/grpc/rambo/rambo.v1_pb_service.d.ts +76 -0
  192. package/grpc/rambo/rambo.v1_pb_service.js +138 -0
  193. package/grpc/rambo/uri.v1_grpc_pb.d.ts +1 -0
  194. package/grpc/rambo/uri.v1_grpc_pb.js +1 -0
  195. package/grpc/rambo/uri.v1_pb.d.ts +80 -0
  196. package/grpc/rambo/uri.v1_pb.js +563 -0
  197. package/grpc/rambo/uri.v1_pb_service.d.ts +3 -0
  198. package/grpc/rambo/uri.v1_pb_service.js +3 -0
  199. package/grpc/robot-control/conker_grpc_pb.d.ts +46 -0
  200. package/grpc/robot-control/conker_grpc_pb.js +143 -0
  201. package/grpc/robot-control/conker_pb.d.ts +168 -0
  202. package/grpc/robot-control/conker_pb.js +1287 -0
  203. package/grpc/robot-control/conker_pb_service.d.ts +126 -0
  204. package/grpc/robot-control/conker_pb_service.js +301 -0
  205. package/grpc/serviette/common.v1_grpc_pb.d.ts +1 -0
  206. package/grpc/serviette/common.v1_grpc_pb.js +1 -0
  207. package/grpc/serviette/common.v1_pb.d.ts +8 -0
  208. package/grpc/serviette/common.v1_pb.js +45 -0
  209. package/grpc/serviette/common.v1_pb_service.d.ts +3 -0
  210. package/grpc/serviette/common.v1_pb_service.js +3 -0
  211. package/grpc/serviette/serviette.v1_grpc_pb.d.ts +137 -0
  212. package/grpc/serviette/serviette.v1_grpc_pb.js +331 -0
  213. package/grpc/serviette/serviette.v1_pb.d.ts +884 -0
  214. package/grpc/serviette/serviette.v1_pb.js +6363 -0
  215. package/grpc/serviette/serviette.v1_pb_service.d.ts +278 -0
  216. package/grpc/serviette/serviette.v1_pb_service.js +699 -0
  217. package/grpc/serviette/uri.v1_grpc_pb.d.ts +1 -0
  218. package/grpc/serviette/uri.v1_grpc_pb.js +1 -0
  219. package/grpc/serviette/uri.v1_pb.d.ts +102 -0
  220. package/grpc/serviette/uri.v1_pb.js +741 -0
  221. package/grpc/serviette/uri.v1_pb_service.d.ts +3 -0
  222. package/grpc/serviette/uri.v1_pb_service.js +3 -0
  223. package/grpc/slowlane/slowlane_grpc_pb.d.ts +38 -0
  224. package/grpc/slowlane/slowlane_grpc_pb.js +132 -0
  225. package/grpc/slowlane/slowlane_pb.d.ts +373 -0
  226. package/grpc/slowlane/slowlane_pb.js +2908 -0
  227. package/grpc/slowlane/slowlane_pb_service.d.ts +112 -0
  228. package/grpc/slowlane/slowlane_pb_service.js +189 -0
  229. package/grpc/teletubby/teletubby_grpc_pb.d.ts +73 -0
  230. package/grpc/teletubby/teletubby_grpc_pb.js +231 -0
  231. package/grpc/teletubby/teletubby_pb.d.ts +647 -0
  232. package/grpc/teletubby/teletubby_pb.js +4786 -0
  233. package/grpc/teletubby/teletubby_pb_service.d.ts +193 -0
  234. package/grpc/teletubby/teletubby_pb_service.js +436 -0
  235. package/grpc/video/pigeon_grpc_pb.d.ts +59 -0
  236. package/grpc/video/pigeon_grpc_pb.js +180 -0
  237. package/grpc/video/pigeon_pb.d.ts +237 -0
  238. package/grpc/video/pigeon_pb.js +1775 -0
  239. package/grpc/video/pigeon_pb_service.d.ts +152 -0
  240. package/grpc/video/pigeon_pb_service.js +292 -0
  241. package/helpers/arrayRemove.d.ts +1 -0
  242. package/helpers/arrayRemove.js +7 -0
  243. package/helpers/arrayUnique.d.ts +1 -0
  244. package/helpers/arrayUnique.js +7 -0
  245. package/helpers/average.d.ts +1 -0
  246. package/helpers/average.js +11 -0
  247. package/helpers/cleanObject.d.ts +1 -0
  248. package/helpers/cleanObject.js +20 -0
  249. package/helpers/enviroment.d.ts +8 -0
  250. package/helpers/enviroment.js +20 -0
  251. package/helpers/flattenCallsignsLookup.d.ts +2 -0
  252. package/helpers/flattenCallsignsLookup.js +10 -0
  253. package/helpers/flattenObject.d.ts +1 -0
  254. package/helpers/flattenObject.js +17 -0
  255. package/helpers/formatServiceUrl.d.ts +1 -0
  256. package/helpers/formatServiceUrl.js +11 -0
  257. package/helpers/generateUUID.d.ts +1 -0
  258. package/helpers/generateUUID.js +8 -0
  259. package/helpers/getSubscriptionsDifference.d.ts +10 -0
  260. package/helpers/getSubscriptionsDifference.js +39 -0
  261. package/helpers/getUniqueConfigKey.d.ts +7 -0
  262. package/helpers/getUniqueConfigKey.js +19 -0
  263. package/helpers/getUniqueId.d.ts +9 -0
  264. package/helpers/getUniqueId.js +15 -0
  265. package/helpers/getUnixTimeMs.d.ts +1 -0
  266. package/helpers/getUnixTimeMs.js +8 -0
  267. package/helpers/index.d.ts +3 -0
  268. package/helpers/index.js +15 -0
  269. package/helpers/nanosecondToMillisecond.d.ts +1 -0
  270. package/helpers/nanosecondToMillisecond.js +7 -0
  271. package/helpers/randomString.d.ts +1 -0
  272. package/helpers/randomString.js +7 -0
  273. package/helpers/standardDeviation.d.ts +1 -0
  274. package/helpers/standardDeviation.js +16 -0
  275. package/helpers/stringToUint8Array.d.ts +1 -0
  276. package/helpers/stringToUint8Array.js +14 -0
  277. package/helpers/uint8ArrayToString.d.ts +1 -0
  278. package/helpers/uint8ArrayToString.js +15 -0
  279. package/index.d.ts +7 -0
  280. package/index.js +19 -0
  281. package/logger/RocosLogger.d.ts +7 -0
  282. package/logger/RocosLogger.js +63 -0
  283. package/models/ExportDataQuery.d.ts +8 -0
  284. package/models/ExportDataQuery.js +17 -0
  285. package/models/ExternalProject.d.ts +6 -0
  286. package/models/ExternalProject.js +6 -0
  287. package/models/IBaseService.d.ts +3 -0
  288. package/models/IBaseService.js +2 -0
  289. package/models/IConfigGroup.d.ts +5 -0
  290. package/models/IConfigGroup.js +2 -0
  291. package/models/IDebugLevel.d.ts +2 -0
  292. package/models/IDebugLevel.js +2 -0
  293. package/models/IExportDataQuery.d.ts +9 -0
  294. package/models/IExportDataQuery.js +2 -0
  295. package/models/IFunctionConfig.d.ts +8 -0
  296. package/models/IFunctionConfig.js +2 -0
  297. package/models/IInvitation.d.ts +6 -0
  298. package/models/IInvitation.js +2 -0
  299. package/models/IInvitationExists.d.ts +4 -0
  300. package/models/IInvitationExists.js +2 -0
  301. package/models/IOperation.d.ts +6 -0
  302. package/models/IOperation.js +2 -0
  303. package/models/IPersonalAccessToken.d.ts +16 -0
  304. package/models/IPersonalAccessToken.js +2 -0
  305. package/models/IProject.d.ts +4 -0
  306. package/models/IProject.js +2 -0
  307. package/models/IProjectApplication.d.ts +6 -0
  308. package/models/IProjectApplication.js +2 -0
  309. package/models/IRobot.d.ts +17 -0
  310. package/models/IRobot.js +2 -0
  311. package/models/IRobotConfig.d.ts +8 -0
  312. package/models/IRobotConfig.js +2 -0
  313. package/models/IRobotPlugin.d.ts +3 -0
  314. package/models/IRobotPlugin.js +2 -0
  315. package/models/IRobotTemplate.d.ts +10 -0
  316. package/models/IRobotTemplate.js +2 -0
  317. package/models/IRocosSDKConfig.d.ts +25 -0
  318. package/models/IRocosSDKConfig.js +2 -0
  319. package/models/ISignupParams.d.ts +8 -0
  320. package/models/ISignupParams.js +2 -0
  321. package/models/ISource.d.ts +8 -0
  322. package/models/ISource.js +2 -0
  323. package/models/IStream.d.ts +9 -0
  324. package/models/IStream.js +2 -0
  325. package/models/IStreamConfig.d.ts +9 -0
  326. package/models/IStreamConfig.js +2 -0
  327. package/models/IStreamOptions.d.ts +7 -0
  328. package/models/IStreamOptions.js +2 -0
  329. package/models/IStreamSource.d.ts +8 -0
  330. package/models/IStreamSource.js +2 -0
  331. package/models/ISubscriberStatus.d.ts +5 -0
  332. package/models/ISubscriberStatus.js +2 -0
  333. package/models/ITelemetryStreamConfig.d.ts +7 -0
  334. package/models/ITelemetryStreamConfig.js +2 -0
  335. package/models/IToken.d.ts +5 -0
  336. package/models/IToken.js +2 -0
  337. package/models/IWidget.d.ts +25 -0
  338. package/models/IWidget.js +2 -0
  339. package/models/IWidgetLineGroup.d.ts +8 -0
  340. package/models/IWidgetLineGroup.js +2 -0
  341. package/models/ResponseLevelEnum.d.ts +6 -0
  342. package/models/ResponseLevelEnum.js +10 -0
  343. package/models/Robot.d.ts +19 -0
  344. package/models/Robot.js +12 -0
  345. package/models/RobotConfig.d.ts +10 -0
  346. package/models/RobotConfig.js +9 -0
  347. package/models/RobotPlugin.d.ts +5 -0
  348. package/models/RobotPlugin.js +9 -0
  349. package/models/RobotTemplate.d.ts +12 -0
  350. package/models/RobotTemplate.js +30 -0
  351. package/models/RocosError.d.ts +30 -0
  352. package/models/RocosError.js +43 -0
  353. package/models/ServiceEnum.d.ts +26 -0
  354. package/models/ServiceEnum.js +30 -0
  355. package/models/Stream.d.ts +10 -0
  356. package/models/Stream.js +15 -0
  357. package/models/StreamOptions.d.ts +9 -0
  358. package/models/StreamOptions.js +37 -0
  359. package/models/StreamSource.d.ts +10 -0
  360. package/models/StreamSource.js +15 -0
  361. package/models/SubscriberStatusEnum.d.ts +6 -0
  362. package/models/SubscriberStatusEnum.js +10 -0
  363. package/models/Token.d.ts +8 -0
  364. package/models/Token.js +15 -0
  365. package/models/Widget.d.ts +27 -0
  366. package/models/Widget.js +16 -0
  367. package/models/WidgetLineGroup.d.ts +10 -0
  368. package/models/WidgetLineGroup.js +9 -0
  369. package/models/asset-storage/AssetModelItem.d.ts +29 -0
  370. package/models/asset-storage/AssetModelItem.js +2 -0
  371. package/models/caller/IRocosCallerMessageChunk.d.ts +9 -0
  372. package/models/caller/IRocosCallerMessageChunk.js +2 -0
  373. package/models/caller/IRocosCallerMessageChunks.d.ts +5 -0
  374. package/models/caller/IRocosCallerMessageChunks.js +2 -0
  375. package/models/caller/IRocosCallerMessageHeartbeat.d.ts +2 -0
  376. package/models/caller/IRocosCallerMessageHeartbeat.js +2 -0
  377. package/models/caller/IRocosCallerMessageResponse.d.ts +9 -0
  378. package/models/caller/IRocosCallerMessageResponse.js +2 -0
  379. package/models/caller/IRocosCallerMessageResponseAck.d.ts +2 -0
  380. package/models/caller/IRocosCallerMessageResponseAck.js +2 -0
  381. package/models/caller/IRocosCallerMessageResponseResult.d.ts +2 -0
  382. package/models/caller/IRocosCallerMessageResponseResult.js +2 -0
  383. package/models/caller/IRocosCallerMessageResponseUid.d.ts +2 -0
  384. package/models/caller/IRocosCallerMessageResponseUid.js +2 -0
  385. package/models/caller/IRocosCallerMessageResponses.d.ts +5 -0
  386. package/models/caller/IRocosCallerMessageResponses.js +2 -0
  387. package/models/caller/RocosCallerResultStatus.d.ts +1 -0
  388. package/models/caller/RocosCallerResultStatus.js +5 -0
  389. package/models/callsigns/CallsignsEnums.d.ts +13 -0
  390. package/models/callsigns/CallsignsEnums.js +20 -0
  391. package/models/callsigns/CallsignsLookup.d.ts +8 -0
  392. package/models/callsigns/CallsignsLookup.js +33 -0
  393. package/models/callsigns/CallsignsQuery.d.ts +9 -0
  394. package/models/callsigns/CallsignsQuery.js +18 -0
  395. package/models/callsigns/CallsignsQueryPredicate.d.ts +9 -0
  396. package/models/callsigns/CallsignsQueryPredicate.js +19 -0
  397. package/models/command/IRocosCommandMessageHeartbeat.d.ts +2 -0
  398. package/models/command/IRocosCommandMessageHeartbeat.js +2 -0
  399. package/models/command/IRocosCommandMessageResponse.d.ts +2 -0
  400. package/models/command/IRocosCommandMessageResponse.js +2 -0
  401. package/models/command/RocosCommandResultStatus.d.ts +1 -0
  402. package/models/command/RocosCommandResultStatus.js +5 -0
  403. package/models/file/FileEnums.d.ts +30 -0
  404. package/models/file/FileEnums.js +36 -0
  405. package/models/index.d.ts +101 -0
  406. package/models/index.js +113 -0
  407. package/models/integrations/Overlay.d.ts +49 -0
  408. package/models/integrations/Overlay.js +2 -0
  409. package/models/integrations/Plan.d.ts +324 -0
  410. package/models/integrations/Plan.js +2 -0
  411. package/models/maps/Map.d.ts +12 -0
  412. package/models/maps/Map.js +2 -0
  413. package/models/message/IRocosCallerMessage.d.ts +8 -0
  414. package/models/message/IRocosCallerMessage.js +2 -0
  415. package/models/message/IRocosChangeMessage.d.ts +6 -0
  416. package/models/message/IRocosChangeMessage.js +2 -0
  417. package/models/message/IRocosCommandMessage.d.ts +6 -0
  418. package/models/message/IRocosCommandMessage.js +2 -0
  419. package/models/message/IRocosControlMessage.d.ts +7 -0
  420. package/models/message/IRocosControlMessage.js +2 -0
  421. package/models/message/IRocosOpResultMessage.d.ts +6 -0
  422. package/models/message/IRocosOpResultMessage.js +2 -0
  423. package/models/message/IRocosSearchMessage.d.ts +5 -0
  424. package/models/message/IRocosSearchMessage.js +2 -0
  425. package/models/message/IRocosSearchRowMessage.d.ts +9 -0
  426. package/models/message/IRocosSearchRowMessage.js +2 -0
  427. package/models/message/IRocosSearchStatusMessage.d.ts +4 -0
  428. package/models/message/IRocosSearchStatusMessage.js +2 -0
  429. package/models/message/IRocosTelemetryMessage.d.ts +18 -0
  430. package/models/message/IRocosTelemetryMessage.js +2 -0
  431. package/models/message/IStreamStatusMessage.d.ts +5 -0
  432. package/models/message/IStreamStatusMessage.js +2 -0
  433. package/models/message/RocosCallerMessage.d.ts +12 -0
  434. package/models/message/RocosCallerMessage.js +23 -0
  435. package/models/message/RocosCommandMessage.d.ts +10 -0
  436. package/models/message/RocosCommandMessage.js +16 -0
  437. package/models/message/RocosControlMessage.d.ts +11 -0
  438. package/models/message/RocosControlMessage.js +18 -0
  439. package/models/message/RocosOpResultMessage.d.ts +9 -0
  440. package/models/message/RocosOpResultMessage.js +22 -0
  441. package/models/message/RocosSearchMessage.d.ts +9 -0
  442. package/models/message/RocosSearchMessage.js +28 -0
  443. package/models/message/RocosSearchRowMessage.d.ts +13 -0
  444. package/models/message/RocosSearchRowMessage.js +20 -0
  445. package/models/message/RocosTelemetryMessage.d.ts +24 -0
  446. package/models/message/RocosTelemetryMessage.js +105 -0
  447. package/models/params/ICallerParams.d.ts +15 -0
  448. package/models/params/ICallerParams.js +2 -0
  449. package/models/params/ICommandParams.d.ts +9 -0
  450. package/models/params/ICommandParams.js +2 -0
  451. package/models/params/IControlParams.d.ts +8 -0
  452. package/models/params/IControlParams.js +2 -0
  453. package/models/params/IFileAccessorParams.d.ts +11 -0
  454. package/models/params/IFileAccessorParams.js +2 -0
  455. package/models/params/ISearchParams.d.ts +10 -0
  456. package/models/params/ISearchParams.js +2 -0
  457. package/models/params/ITelemetryParams.d.ts +18 -0
  458. package/models/params/ITelemetryParams.js +2 -0
  459. package/models/params/IWebRTCSignallingParams.d.ts +21 -0
  460. package/models/params/IWebRTCSignallingParams.js +2 -0
  461. package/models/projects/ProjectUser.d.ts +6 -0
  462. package/models/projects/ProjectUser.js +2 -0
  463. package/models/schedule/IScheduleAction.d.ts +13 -0
  464. package/models/schedule/IScheduleAction.js +9 -0
  465. package/models/schedule/IScheduleInfo.d.ts +11 -0
  466. package/models/schedule/IScheduleInfo.js +2 -0
  467. package/models/schedule/IScheduleJob.d.ts +12 -0
  468. package/models/schedule/IScheduleJob.js +2 -0
  469. package/models/search/SearchQueryFilter.d.ts +5 -0
  470. package/models/search/SearchQueryFilter.js +9 -0
  471. package/models/search/SearchStreamQuery.d.ts +15 -0
  472. package/models/search/SearchStreamQuery.js +10 -0
  473. package/models/stream/IBaseStream.d.ts +8 -0
  474. package/models/stream/IBaseStream.js +2 -0
  475. package/models/stream/ICallerStream.d.ts +8 -0
  476. package/models/stream/ICallerStream.js +2 -0
  477. package/models/stream/ICommandStream.d.ts +7 -0
  478. package/models/stream/ICommandStream.js +2 -0
  479. package/models/stream/IControlStream.d.ts +9 -0
  480. package/models/stream/IControlStream.js +2 -0
  481. package/models/stream/IFileAccessorStream.d.ts +10 -0
  482. package/models/stream/IFileAccessorStream.js +2 -0
  483. package/models/stream/ISearchStream.d.ts +11 -0
  484. package/models/stream/ISearchStream.js +2 -0
  485. package/models/stream/ITelemetryStream.d.ts +10 -0
  486. package/models/stream/ITelemetryStream.js +2 -0
  487. package/models/stream/IWebRTCSignallingStream.d.ts +41 -0
  488. package/models/stream/IWebRTCSignallingStream.js +7 -0
  489. package/models/types.d.ts +5 -0
  490. package/models/types.js +2 -0
  491. package/node/RocosSDKNode.d.ts +42 -0
  492. package/node/RocosSDKNode.js +148 -0
  493. package/node/index.d.ts +7 -0
  494. package/node/index.js +19 -0
  495. package/package.json +25 -6
  496. package/services/AssetStorageService.d.ts +92 -0
  497. package/services/AssetStorageService.js +153 -0
  498. package/services/AuthService.d.ts +61 -0
  499. package/services/AuthService.js +154 -0
  500. package/services/BaseServiceAbstract.d.ts +38 -0
  501. package/services/BaseServiceAbstract.js +103 -0
  502. package/services/CallerService.d.ts +22 -0
  503. package/services/CallerService.js +96 -0
  504. package/services/CallerServiceNode.d.ts +6 -0
  505. package/services/CallerServiceNode.js +11 -0
  506. package/services/CommandService.d.ts +21 -0
  507. package/services/CommandService.js +81 -0
  508. package/services/CommandServiceNode.d.ts +6 -0
  509. package/services/CommandServiceNode.js +11 -0
  510. package/services/ConfigGroupService.d.ts +89 -0
  511. package/services/ConfigGroupService.js +157 -0
  512. package/services/ControlService.d.ts +23 -0
  513. package/services/ControlService.js +100 -0
  514. package/services/ControlServiceNode.d.ts +6 -0
  515. package/services/ControlServiceNode.js +11 -0
  516. package/services/DashboardService.d.ts +97 -0
  517. package/services/DashboardService.js +146 -0
  518. package/services/EventService.d.ts +53 -0
  519. package/services/EventService.js +89 -0
  520. package/services/FileAccessorService.d.ts +25 -0
  521. package/services/FileAccessorService.js +85 -0
  522. package/services/FileAccessorServiceNode.d.ts +6 -0
  523. package/services/FileAccessorServiceNode.js +11 -0
  524. package/services/FunctionService.d.ts +68 -0
  525. package/services/FunctionService.js +103 -0
  526. package/services/IntegrationService.d.ts +48 -0
  527. package/services/IntegrationService.js +77 -0
  528. package/services/MapService.d.ts +96 -0
  529. package/services/MapService.js +119 -0
  530. package/services/PlatformTimeService.d.ts +35 -0
  531. package/services/PlatformTimeService.js +160 -0
  532. package/services/ProfileService.d.ts +244 -0
  533. package/services/ProfileService.js +366 -0
  534. package/services/ProjectService.d.ts +110 -0
  535. package/services/ProjectService.js +164 -0
  536. package/services/RobotService.d.ts +282 -0
  537. package/services/RobotService.js +467 -0
  538. package/services/ScheduleService.d.ts +22 -0
  539. package/services/ScheduleService.js +40 -0
  540. package/services/SearchService.d.ts +25 -0
  541. package/services/SearchService.js +93 -0
  542. package/services/SearchServiceNode.d.ts +6 -0
  543. package/services/SearchServiceNode.js +11 -0
  544. package/services/SpotProvisioningService.d.ts +14 -0
  545. package/services/SpotProvisioningService.js +43 -0
  546. package/services/SpotProvisioningServiceNode.d.ts +15 -0
  547. package/services/SpotProvisioningServiceNode.js +43 -0
  548. package/services/StreamService.d.ts +98 -0
  549. package/services/StreamService.js +146 -0
  550. package/services/TelemetryService.d.ts +43 -0
  551. package/services/TelemetryService.js +144 -0
  552. package/services/TelemetryServiceNode.d.ts +6 -0
  553. package/services/TelemetryServiceNode.js +11 -0
  554. package/services/TimeSyncerService.d.ts +13 -0
  555. package/services/TimeSyncerService.js +27 -0
  556. package/services/UserService.d.ts +200 -0
  557. package/services/UserService.js +319 -0
  558. package/services/WebRTCSignallingService.d.ts +22 -0
  559. package/services/WebRTCSignallingService.js +81 -0
  560. package/services/WorkflowService.d.ts +71 -0
  561. package/services/WorkflowService.js +122 -0
  562. package/services/index.d.ts +26 -0
  563. package/services/index.js +38 -0
  564. package/store/RocosStore.d.ts +31 -0
  565. package/store/RocosStore.js +53 -0
  566. package/utils/axisangle.d.ts +18 -0
  567. package/utils/axisangle.js +48 -0
  568. package/utils/eulerangles.d.ts +22 -0
  569. package/utils/eulerangles.js +133 -0
  570. package/utils/helperfunctions.d.ts +5 -0
  571. package/utils/helperfunctions.js +50 -0
  572. package/utils/localtransform.d.ts +17 -0
  573. package/utils/localtransform.js +50 -0
  574. package/utils/localtransformtree.d.ts +17 -0
  575. package/utils/localtransformtree.js +88 -0
  576. package/utils/misc.d.ts +17 -0
  577. package/utils/misc.js +23 -0
  578. package/utils/positionvector.d.ts +13 -0
  579. package/utils/positionvector.js +79 -0
  580. package/utils/quaternion.d.ts +20 -0
  581. package/utils/quaternion.js +62 -0
  582. package/utils/rotationmatrix.d.ts +23 -0
  583. package/utils/rotationmatrix.js +262 -0
  584. package/utils/transformationmatrix.d.ts +12 -0
  585. package/utils/transformationmatrix.js +123 -0
  586. package/utils/vector3.d.ts +11 -0
  587. package/utils/vector3.js +61 -0
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RocosSDKNode = void 0;
4
+ const services_1 = require("../services");
5
+ const AssetStorageService_1 = require("../services/AssetStorageService");
6
+ const AuthService_1 = require("../services/AuthService");
7
+ const CallerServiceNode_1 = require("../services/CallerServiceNode");
8
+ const CommandServiceNode_1 = require("../services/CommandServiceNode");
9
+ const ConfigGroupService_1 = require("../services/ConfigGroupService");
10
+ const ControlServiceNode_1 = require("../services/ControlServiceNode");
11
+ const DashboardService_1 = require("../services/DashboardService");
12
+ const EventService_1 = require("../services/EventService");
13
+ const FileAccessorServiceNode_1 = require("../services/FileAccessorServiceNode");
14
+ const FunctionService_1 = require("../services/FunctionService");
15
+ const IntegrationService_1 = require("../services/IntegrationService");
16
+ const ProfileService_1 = require("../services/ProfileService");
17
+ const ProjectService_1 = require("../services/ProjectService");
18
+ const RobotService_1 = require("../services/RobotService");
19
+ const RocosSDK_1 = require("../RocosSDK");
20
+ const SearchServiceNode_1 = require("../services/SearchServiceNode");
21
+ const ServiceEnum_1 = require("../models/ServiceEnum");
22
+ const StreamService_1 = require("../services/StreamService");
23
+ const TelemetryServiceNode_1 = require("../services/TelemetryServiceNode");
24
+ const UserService_1 = require("../services/UserService");
25
+ const WorkflowService_1 = require("../services/WorkflowService");
26
+ class RocosSDKNode extends RocosSDK_1.RocosSDK {
27
+ // eslint-disable-next-line max-lines-per-function
28
+ getService(name) {
29
+ var _a;
30
+ if (!((_a = this.services) === null || _a === void 0 ? void 0 : _a[name])) {
31
+ this.logger.info(`Service ${name} does not exist, creating it now.`);
32
+ switch (name) {
33
+ case ServiceEnum_1.ServiceEnum.AUTH:
34
+ this.services[name] = new AuthService_1.AuthService(this.config);
35
+ break;
36
+ case ServiceEnum_1.ServiceEnum.TELEMETRY:
37
+ this.services[name] = new TelemetryServiceNode_1.TelemetryServiceNode(this.config);
38
+ break;
39
+ case ServiceEnum_1.ServiceEnum.ROBOT:
40
+ this.services[name] = new RobotService_1.RobotService(this.config);
41
+ break;
42
+ case ServiceEnum_1.ServiceEnum.EVENT:
43
+ this.services[name] = new EventService_1.EventService(this.config);
44
+ break;
45
+ case ServiceEnum_1.ServiceEnum.PROJECT:
46
+ this.services[name] = new ProjectService_1.ProjectService(this.config);
47
+ break;
48
+ case ServiceEnum_1.ServiceEnum.CALLER:
49
+ this.services[name] = new CallerServiceNode_1.CallerServiceNode(this.config);
50
+ break;
51
+ case ServiceEnum_1.ServiceEnum.COMMAND:
52
+ this.services[name] = new CommandServiceNode_1.CommandServiceNode(this.config);
53
+ break;
54
+ case ServiceEnum_1.ServiceEnum.CONTROL:
55
+ this.services[name] = new ControlServiceNode_1.ControlServiceNode(this.config);
56
+ break;
57
+ case ServiceEnum_1.ServiceEnum.SEARCH:
58
+ this.services[name] = new SearchServiceNode_1.SearchServiceNode(this.config);
59
+ break;
60
+ case ServiceEnum_1.ServiceEnum.CONFIG_GROUP:
61
+ this.services[name] = new ConfigGroupService_1.ConfigGroupService(this.config);
62
+ break;
63
+ case ServiceEnum_1.ServiceEnum.DASHBOARD:
64
+ this.services[name] = new DashboardService_1.DashboardService(this.config);
65
+ break;
66
+ case ServiceEnum_1.ServiceEnum.FUNCTION:
67
+ this.services[name] = new FunctionService_1.FunctionService(this.config);
68
+ break;
69
+ case ServiceEnum_1.ServiceEnum.STREAM:
70
+ this.services[name] = new StreamService_1.StreamService(this.config);
71
+ break;
72
+ case ServiceEnum_1.ServiceEnum.USER:
73
+ this.services[name] = new UserService_1.UserService(this.config);
74
+ break;
75
+ case ServiceEnum_1.ServiceEnum.WORKFLOW:
76
+ this.services[name] = new WorkflowService_1.WorkflowService(this.config);
77
+ break;
78
+ case ServiceEnum_1.ServiceEnum.ASSET_STORAGE:
79
+ this.services[name] = new AssetStorageService_1.AssetStorageService(this.config);
80
+ break;
81
+ case ServiceEnum_1.ServiceEnum.PROFILE:
82
+ this.services[name] = new ProfileService_1.ProfileService(this.config);
83
+ break;
84
+ case ServiceEnum_1.ServiceEnum.FILE_ACCESSOR:
85
+ this.services[name] = new FileAccessorServiceNode_1.FileAccessorServiceNode(this.config);
86
+ break;
87
+ case ServiceEnum_1.ServiceEnum.SPOT_PROVISIONER:
88
+ this.services[name] = new services_1.SpotProvisioningServiceNode(this.config);
89
+ break;
90
+ case ServiceEnum_1.ServiceEnum.SCHEDULE:
91
+ this.services[name] = new services_1.ScheduleService(this.config);
92
+ break;
93
+ case ServiceEnum_1.ServiceEnum.INTEGRATION:
94
+ this.services[name] = new IntegrationService_1.IntegrationService(this.config);
95
+ break;
96
+ case ServiceEnum_1.ServiceEnum.MAP:
97
+ this.services[name] = new services_1.MapService(this.config);
98
+ break;
99
+ }
100
+ }
101
+ this.logger.debug(`Found service ${name}.`);
102
+ return this.services[name];
103
+ }
104
+ /**
105
+ * Gets the telemetry service.
106
+ */
107
+ getTelemetryService() {
108
+ return this.getService(ServiceEnum_1.ServiceEnum.TELEMETRY);
109
+ }
110
+ /**
111
+ * Gets the scheduler service.
112
+ */
113
+ getSchedulerService() {
114
+ return this.getService(ServiceEnum_1.ServiceEnum.SCHEDULE);
115
+ }
116
+ /**
117
+ * Gets the service call service.
118
+ */
119
+ getCallerService() {
120
+ return this.getService(ServiceEnum_1.ServiceEnum.CALLER);
121
+ }
122
+ /**
123
+ * Gets the command service.
124
+ */
125
+ getCommandService() {
126
+ return this.getService(ServiceEnum_1.ServiceEnum.COMMAND);
127
+ }
128
+ /**
129
+ * Gets the robot control service.
130
+ */
131
+ getControlService() {
132
+ return this.getService(ServiceEnum_1.ServiceEnum.CONTROL);
133
+ }
134
+ /**
135
+ * Gets the search service.
136
+ */
137
+ getSearchService() {
138
+ return this.getService(ServiceEnum_1.ServiceEnum.SEARCH);
139
+ }
140
+ /**
141
+ * Gets the file accessor service
142
+ * @returns FileAccessorServiceNode
143
+ */
144
+ getFileAccessorService() {
145
+ return this.getService(ServiceEnum_1.ServiceEnum.FILE_ACCESSOR);
146
+ }
147
+ }
148
+ exports.RocosSDKNode = RocosSDKNode;
@@ -0,0 +1,7 @@
1
+ export * from './RocosSDKNode';
2
+ export * from '../services/CallerServiceNode';
3
+ export * from '../services/CommandServiceNode';
4
+ export * from '../services/ControlServiceNode';
5
+ export * from '../services/FileAccessorServiceNode';
6
+ export * from '../services/SearchServiceNode';
7
+ export * from '../services/TelemetryServiceNode';
package/node/index.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./RocosSDKNode"), exports);
14
+ __exportStar(require("../services/CallerServiceNode"), exports);
15
+ __exportStar(require("../services/CommandServiceNode"), exports);
16
+ __exportStar(require("../services/ControlServiceNode"), exports);
17
+ __exportStar(require("../services/FileAccessorServiceNode"), exports);
18
+ __exportStar(require("../services/SearchServiceNode"), exports);
19
+ __exportStar(require("../services/TelemetryServiceNode"), exports);
package/package.json CHANGED
@@ -1,11 +1,30 @@
1
1
  {
2
2
  "name": "@dronedeploy/rocos-js-sdk",
3
- "version": "0.0.1",
4
- "description": "placeholder package for now",
3
+ "version": "2.6.1",
4
+ "description": "Javascript SDK for rocos",
5
5
  "main": "index.js",
6
- "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
6
+ "types": "dist/index.d.ts",
7
+ "author": "Rocos",
8
+ "engines": {
9
+ "npm": ">=8.0.0",
10
+ "node": ">=18.13.0"
8
11
  },
9
- "author": "",
10
- "license": "ISC"
12
+ "scripts": {},
13
+ "license": "MIT",
14
+ "devDependencies": {},
15
+ "dependencies": {
16
+ "@grpc/grpc-js": "^1.7.1",
17
+ "@improbable-eng/grpc-web": "^0.14.0",
18
+ "buffer": "^6.0.3",
19
+ "google-protobuf": "^3.15.6",
20
+ "loglevel": "^1.7.1",
21
+ "loglevel-plugin-prefix": "^0.8.4",
22
+ "mathjs": "^9.3.0",
23
+ "uuid": "^8.3.2"
24
+ },
25
+ "peerDependencies": {
26
+ "rxjs": "^6.6.6 || ^7.0.0"
27
+ },
28
+ "repository": {},
29
+ "private": false
11
30
  }
@@ -0,0 +1,92 @@
1
+ import { AssetItemModel, AssetSyncDefinitionModel, AssetSyncDefinitionsModel } from '../models';
2
+ import { RocosError } from '../models/RocosError';
3
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
4
+ import { IBaseService } from '../models/IBaseService';
5
+ import { IRocosSDKConfig } from '../models/IRocosSDKConfig';
6
+ export declare class AssetStorageService extends BaseServiceAbstract implements IBaseService {
7
+ constructor(config: IRocosSDKConfig);
8
+ protected getError(e: Error): RocosError;
9
+ getStatus(): boolean;
10
+ /**
11
+ * Create a new project asset
12
+ *
13
+ * @param projectId - Project Id
14
+ * @param filePath - Path to asset file
15
+ * @param file - File payload
16
+ */
17
+ create(projectId: string, filePath: string, file: File): Promise<any>;
18
+ /**
19
+ * Update a project asset
20
+ *
21
+ * @param projectId - Project Id
22
+ * @param filePath - Path to asset file
23
+ * @param file - File payload
24
+ */
25
+ update(projectId: string, filePath: string, file: File): Promise<any>;
26
+ /**
27
+ * Delete a project asset
28
+ *
29
+ * @param projectId - Project Id
30
+ * @param filePath - Path to asset file
31
+ */
32
+ delete(projectId: string, filePath: string): Promise<any>;
33
+ /**
34
+ * Lost assets for a project or project file path
35
+ *
36
+ * @param projectId - Project Id
37
+ * @param filePath - Path to asset file
38
+ */
39
+ list(projectId: string, filePath?: string): Promise<any>;
40
+ /**
41
+ * Get a project asset
42
+ *
43
+ * @param projectId - Project Id
44
+ * @param filePath - Path to asset file
45
+ */
46
+ getAsset(projectId: string, filePath: string): Promise<any>;
47
+ /**
48
+ * List assets for a robot
49
+ *
50
+ * @param projectId
51
+ * @param callsign
52
+ * @param parent
53
+ * @param signedURL
54
+ */
55
+ listRobotAssets(projectId: string, callsign: string, parent?: string, signedURL?: boolean): Promise<AssetItemModel[]>;
56
+ /**
57
+ * List assets for a flow
58
+ *
59
+ * @param projectId
60
+ * @param flowId
61
+ * @param flowInstance
62
+ * @param parent
63
+ * @param signedURL
64
+ */
65
+ listFlowAssets(projectId: string, flowId: string, flowInstance: string, parent?: string, signedURL?: boolean): Promise<AssetItemModel[]>;
66
+ /**
67
+ * Set Robot Sync Definitions
68
+ * @param projectId
69
+ * @param callsign
70
+ * @param definition
71
+ */
72
+ setRobotSyncDefinitions(projectId: string, callsign: string, definition: AssetSyncDefinitionModel): Promise<AssetSyncDefinitionsModel>;
73
+ /**
74
+ * Get Robot Sync Definitions
75
+ * @param projectId
76
+ * @param callsign
77
+ */
78
+ getRobotSyncDefinitions(projectId: string, callsign: string): Promise<AssetSyncDefinitionsModel>;
79
+ /**
80
+ * Set Profile Sync Definitions
81
+ * @param projectId
82
+ * @param profileId
83
+ * @param definition
84
+ */
85
+ setProfileSyncDefinitions(projectId: string, profileId: string, definition: AssetSyncDefinitionModel): Promise<any>;
86
+ /**
87
+ * Get Profile Sync Definitions
88
+ * @param projectId
89
+ * @param profileId
90
+ */
91
+ getProfileSyncDefinition(projectId: string, profileId: string): Promise<AssetSyncDefinitionsModel>;
92
+ }
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AssetStorageService = void 0;
4
+ const api_1 = require("../constants/api");
5
+ const RocosError_1 = require("../models/RocosError");
6
+ const BaseServiceAbstract_1 = require("./BaseServiceAbstract");
7
+ const RocosLogger_1 = require("../logger/RocosLogger");
8
+ const formatServiceUrl_1 = require("../helpers/formatServiceUrl");
9
+ class AssetStorageService extends BaseServiceAbstract_1.BaseServiceAbstract {
10
+ constructor(config) {
11
+ super(config);
12
+ this.logger = RocosLogger_1.RocosLogger.getInstance(`AssetStorageService(${this.config.url})`);
13
+ }
14
+ getError(e) {
15
+ return new RocosError_1.RocosError(e, RocosError_1.errorCodes.ASSET_STORAGE_SERVICE_ERROR);
16
+ }
17
+ getStatus() {
18
+ return true;
19
+ }
20
+ /**
21
+ * Create a new project asset
22
+ *
23
+ * @param projectId - Project Id
24
+ * @param filePath - Path to asset file
25
+ * @param file - File payload
26
+ */
27
+ // TODO: map the response object
28
+ async create(projectId, filePath, file) {
29
+ const formData = new FormData();
30
+ formData.append('file', file);
31
+ return this.callPut(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), formData, `Failed to create asset for ${projectId}, filePath ${filePath}.`);
32
+ }
33
+ /**
34
+ * Update a project asset
35
+ *
36
+ * @param projectId - Project Id
37
+ * @param filePath - Path to asset file
38
+ * @param file - File payload
39
+ */
40
+ // TODO: map the response object
41
+ async update(projectId, filePath, file) {
42
+ const formData = new FormData();
43
+ formData.append('file', file);
44
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), formData, `Failed to update asset for ${projectId}, filePath ${filePath}.`);
45
+ }
46
+ /**
47
+ * Delete a project asset
48
+ *
49
+ * @param projectId - Project Id
50
+ * @param filePath - Path to asset file
51
+ */
52
+ // TODO: map the response object
53
+ async delete(projectId, filePath) {
54
+ return this.callDelete(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), `Failed to delete asset for ${projectId}, filePath ${filePath}.`);
55
+ }
56
+ /**
57
+ * Lost assets for a project or project file path
58
+ *
59
+ * @param projectId - Project Id
60
+ * @param filePath - Path to asset file
61
+ */
62
+ // TODO: map the response object
63
+ async list(projectId, filePath) {
64
+ let url = '';
65
+ if (filePath) {
66
+ url = formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure);
67
+ }
68
+ else {
69
+ url = formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_URL, { url: this.config.url, projectId }, this.config.insecure);
70
+ }
71
+ return this.callGet(url, `Failed to get asset list for ${projectId}, filePath ${filePath}.`);
72
+ }
73
+ /**
74
+ * Get a project asset
75
+ *
76
+ * @param projectId - Project Id
77
+ * @param filePath - Path to asset file
78
+ */
79
+ // TODO: map the response object
80
+ async getAsset(projectId, filePath) {
81
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), `Failed to get asset for ${projectId}, filePath ${filePath}.`, undefined, {
82
+ responseType: 'blob',
83
+ });
84
+ }
85
+ /**
86
+ * List assets for a robot
87
+ *
88
+ * @param projectId
89
+ * @param callsign
90
+ * @param parent
91
+ * @param signedURL
92
+ */
93
+ async listRobotAssets(projectId, callsign, parent = '/', signedURL = false) {
94
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ROBOT_ASSET_PATH_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), `Failed to get asset for ${projectId}, callsign ${callsign}.`, { parent, signedURL });
95
+ }
96
+ /**
97
+ * List assets for a flow
98
+ *
99
+ * @param projectId
100
+ * @param flowId
101
+ * @param flowInstance
102
+ * @param parent
103
+ * @param signedURL
104
+ */
105
+ async listFlowAssets(projectId, flowId, flowInstance, parent = '/', signedURL = false) {
106
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_FLOW_ASSET_PATH_URL, { url: this.config.url, projectId, flowId, flowInstance }, this.config.insecure), `Failed to get asset for ${projectId}, flow ${flowId}, flow instance ${flowInstance}.`, { parent, signedURL });
107
+ }
108
+ /**
109
+ * Set Robot Sync Definitions
110
+ * @param projectId
111
+ * @param callsign
112
+ * @param definition
113
+ */
114
+ setRobotSyncDefinitions(projectId, callsign, definition) {
115
+ const httpOptions = {
116
+ headers: {
117
+ 'content-type': 'application/json',
118
+ },
119
+ };
120
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_ROBOTS_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), definition, `Failed to update asset for ${projectId}, callsign ${callsign}.`, httpOptions);
121
+ }
122
+ /**
123
+ * Get Robot Sync Definitions
124
+ * @param projectId
125
+ * @param callsign
126
+ */
127
+ getRobotSyncDefinitions(projectId, callsign) {
128
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_ROBOTS_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), `Failed to get asset for ${projectId}, callsign ${callsign}.`, undefined);
129
+ }
130
+ /**
131
+ * Set Profile Sync Definitions
132
+ * @param projectId
133
+ * @param profileId
134
+ * @param definition
135
+ */
136
+ setProfileSyncDefinitions(projectId, profileId, definition) {
137
+ const httpOptions = {
138
+ headers: {
139
+ 'content-type': 'application/json',
140
+ },
141
+ };
142
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_PROFILES_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, profileId }, this.config.insecure), definition, `Failed to update sync-definition for ${projectId}, callsign ${profileId}.`, httpOptions);
143
+ }
144
+ /**
145
+ * Get Profile Sync Definitions
146
+ * @param projectId
147
+ * @param profileId
148
+ */
149
+ getProfileSyncDefinition(projectId, profileId) {
150
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_ASSET_PROFILES_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, profileId }, this.config.insecure), `Failed to get sync-definition for ${projectId}, callsign ${profileId}.`, undefined);
151
+ }
152
+ }
153
+ exports.AssetStorageService = AssetStorageService;
@@ -0,0 +1,61 @@
1
+ import { RocosError } from '../models/RocosError';
2
+ import { BaseServiceAbstract } from './BaseServiceAbstract';
3
+ import { IBaseService } from '../models/IBaseService';
4
+ import { IRocosSDKConfig } from '../models/IRocosSDKConfig';
5
+ import { ISignupParams } from '../models/ISignupParams';
6
+ import { Token } from '../models/Token';
7
+ export declare class AuthService extends BaseServiceAbstract implements IBaseService {
8
+ protected config: IRocosSDKConfig;
9
+ private token?;
10
+ constructor(config: IRocosSDKConfig);
11
+ getStatus(): boolean;
12
+ protected getError(e: RocosError): RocosError;
13
+ /**
14
+ * Set the Auth token
15
+ * @param value - Token value
16
+ * @param expiresIn - Token expiry time
17
+ */
18
+ setToken(value: string, expiresIn: number): void;
19
+ /**
20
+ * Cleat auto token
21
+ */
22
+ clearToken(): void;
23
+ /**
24
+ * Get the authentication token for application Id and application Key.
25
+ */
26
+ getAppToken(): Promise<Token>;
27
+ /**
28
+ * Get the authentication token for logged in username and password
29
+ */
30
+ getUserToken(): Promise<Token>;
31
+ /**
32
+ * Get new auth token for a user
33
+ * @desc This only works for user auth tokens, not appId auth tokens
34
+ */
35
+ getNewUserToken(): Promise<Token>;
36
+ /**
37
+ * Get the authentication token
38
+ */
39
+ getToken(): Promise<Token>;
40
+ /**
41
+ * Login with email and password.
42
+ *
43
+ * @deprecated SDK can only be configured with appId and appKey or an existing token
44
+ * @param email - Email address
45
+ * @param password - Password
46
+ * @param invitationCode - Invitation Code (Optional)
47
+ */
48
+ login(email: string, password: string, invitationCode?: string): Promise<any>;
49
+ /**
50
+ * Sign up
51
+ * @deprecated SDK can only be configured with appId and appKey or an existing token
52
+ * @param params = Signup payload {@link ISignupParams}
53
+ */
54
+ signup(params: ISignupParams): Promise<any>;
55
+ /**
56
+ * Reset users password.
57
+ * @deprecated SDK can only be configured with appId and appKey or an existing token
58
+ * @param model - Reset payload
59
+ */
60
+ resetPassword(model: any): Promise<any>;
61
+ }
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuthService = void 0;
4
+ const api_1 = require("../constants/api");
5
+ const RocosError_1 = require("../models/RocosError");
6
+ const BaseServiceAbstract_1 = require("./BaseServiceAbstract");
7
+ const RocosLogger_1 = require("../logger/RocosLogger");
8
+ const RocosStore_1 = require("../store/RocosStore");
9
+ const Token_1 = require("../models/Token");
10
+ const formatServiceUrl_1 = require("../helpers/formatServiceUrl");
11
+ class AuthService extends BaseServiceAbstract_1.BaseServiceAbstract {
12
+ constructor(config) {
13
+ super(config);
14
+ this.config = config;
15
+ this.config = config;
16
+ this.logger = RocosLogger_1.RocosLogger.getInstance(`AuthService(${this.config.url})`);
17
+ }
18
+ getStatus() {
19
+ return true;
20
+ }
21
+ getError(e) {
22
+ return new RocosError_1.RocosError(e, RocosError_1.errorCodes.AUTH_ERROR, e === null || e === void 0 ? void 0 : e.statusCode);
23
+ }
24
+ /**
25
+ * Set the Auth token
26
+ * @param value - Token value
27
+ * @param expiresIn - Token expiry time
28
+ */
29
+ setToken(value, expiresIn) {
30
+ this.token = new Token_1.Token({ value, expiresIn });
31
+ this.config.token = this.token.value;
32
+ // output a message for token change
33
+ RocosStore_1.RocosStore.getChangeSubject().next({ type: 'token', url: this.config.url, data: this.token.value });
34
+ }
35
+ /**
36
+ * Cleat auto token
37
+ */
38
+ clearToken() {
39
+ this.token = undefined;
40
+ this.config.token = undefined;
41
+ }
42
+ /**
43
+ * Get the authentication token for application Id and application Key.
44
+ */
45
+ async getAppToken() {
46
+ if (!('appId' in this.config) || !this.config.appId || !('appKey' in this.config) || !this.config.appKey) {
47
+ throw new RocosError_1.RocosError('Can not get app token, missing appId and appKey', RocosError_1.errorCodes.AUTH_ERROR);
48
+ }
49
+ const res = await this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_APPLICATION_AUTH_URL, { url: this.config.url }, this.config.insecure), {
50
+ applicationId: this.config.appId,
51
+ secret: this.config.appKey,
52
+ }, 'Failed to get users auth token.', { public: true });
53
+ return new Token_1.Token({ value: res.token, expiresIn: res.expiresIn });
54
+ }
55
+ /**
56
+ * Get the authentication token for logged in username and password
57
+ */
58
+ async getUserToken() {
59
+ if (!('email' in this.config) || !this.config.email || !('password' in this.config) || !this.config.password) {
60
+ throw new RocosError_1.RocosError('Can not get user token, missing email and password', RocosError_1.errorCodes.AUTH_ERROR);
61
+ }
62
+ try {
63
+ // TODO: there is no token expiry returned on user token
64
+ const { token, expiresIn } = await this.login(this.config.email, this.config.password, this.config.invitationCode);
65
+ return new Token_1.Token({ value: token, expiresIn });
66
+ }
67
+ catch (e) {
68
+ const message = 'Failed to get users auth token.';
69
+ this.logger.error(message, e);
70
+ e.message = message;
71
+ throw new RocosError_1.RocosError(e, RocosError_1.errorCodes.AUTH_ERROR);
72
+ }
73
+ }
74
+ /**
75
+ * Get new auth token for a user
76
+ * @desc This only works for user auth tokens, not appId auth tokens
77
+ */
78
+ async getNewUserToken() {
79
+ if (!('token' in this.config)) {
80
+ throw new RocosError_1.RocosError('Can not get new app token, missing token', RocosError_1.errorCodes.AUTH_ERROR);
81
+ }
82
+ const res = await this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_USER_TOKEN_URL, { url: this.config.url }, this.config.insecure), 'Failed to get users auth token.', undefined, { public: true, headers: { Authorization: `Bearer ${this.config.token}` } });
83
+ return new Token_1.Token({ value: res.token });
84
+ }
85
+ /**
86
+ * Get the authentication token
87
+ */
88
+ async getToken() {
89
+ if (this.token && !this.token.isExpired()) {
90
+ return this.token;
91
+ }
92
+ try {
93
+ if ('appId' in this.config && 'appKey' in this.config) {
94
+ this.token = await this.getAppToken();
95
+ }
96
+ else if ('email' in this.config && 'password' in this.config) {
97
+ this.token = await this.getUserToken();
98
+ }
99
+ else if ('token' in this.config) {
100
+ this.token = await this.getNewUserToken();
101
+ }
102
+ else {
103
+ throw new Error('Config invalid');
104
+ }
105
+ this.config.token = this.token.value;
106
+ // output a message for token change
107
+ RocosStore_1.RocosStore.getChangeSubject().next({ type: 'token', url: this.config.url, data: this.token.value });
108
+ return this.token;
109
+ }
110
+ catch (e) {
111
+ const message = 'Failed to get auth token.';
112
+ this.logger.error(message, e);
113
+ e.message = message;
114
+ throw new RocosError_1.RocosError(e, RocosError_1.errorCodes.AUTH_ERROR);
115
+ }
116
+ }
117
+ /**
118
+ * Login with email and password.
119
+ *
120
+ * @deprecated SDK can only be configured with appId and appKey or an existing token
121
+ * @param email - Email address
122
+ * @param password - Password
123
+ * @param invitationCode - Invitation Code (Optional)
124
+ */
125
+ // TODO: map the response object
126
+ async login(email, password, invitationCode) {
127
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_USER_AUTH_URL, { url: this.config.url }, this.config.insecure), {
128
+ email,
129
+ password,
130
+ invitationCode,
131
+ }, 'Failed to login user.', { public: true });
132
+ }
133
+ /**
134
+ * Sign up
135
+ * @deprecated SDK can only be configured with appId and appKey or an existing token
136
+ * @param params = Signup payload {@link ISignupParams}
137
+ */
138
+ // TODO: map the response object
139
+ async signup(params) {
140
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_USER_URL, { url: this.config.url }, this.config.insecure), params, 'Failed to sign up user.', { public: true });
141
+ }
142
+ /**
143
+ * Reset users password.
144
+ * @deprecated SDK can only be configured with appId and appKey or an existing token
145
+ * @param model - Reset payload
146
+ */
147
+ // TODO: map the request model
148
+ // TODO: map the response object
149
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
150
+ async resetPassword(model) {
151
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_USER_PASSWORD_RESET_URL, { url: this.config.url }, this.config.insecure), model, 'Failed to reset password.', { public: true });
152
+ }
153
+ }
154
+ exports.AuthService = AuthService;