@dronedeploy/rocos-js-sdk 2.6.1 → 3.0.0-alpha.20

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 (618) hide show
  1. package/IRocosSDK.d.ts +3 -26
  2. package/IRocosSDK.js +1 -5
  3. package/README.md +18 -0
  4. package/RocosSDK.d.ts +6 -1
  5. package/RocosSDK.js +103 -95
  6. package/api/StreamRegister.d.ts +1 -1
  7. package/api/StreamRegister.js +23 -12
  8. package/api/atoms/StreamHeartbeat.js +3 -7
  9. package/api/streams/caller/CallerStream.d.ts +6 -6
  10. package/api/streams/caller/CallerStream.js +41 -49
  11. package/api/streams/caller/CallerStreamAbstract.d.ts +6 -11
  12. package/api/streams/caller/CallerStreamAbstract.js +55 -67
  13. package/api/streams/caller/CallerStreamNode.d.ts +6 -6
  14. package/api/streams/caller/CallerStreamNode.js +48 -61
  15. package/api/streams/command/CommandStream.d.ts +2 -4
  16. package/api/streams/command/CommandStream.js +28 -30
  17. package/api/streams/command/CommandStreamAbstract.d.ts +4 -8
  18. package/api/streams/command/CommandStreamAbstract.js +33 -42
  19. package/api/streams/command/CommandStreamNode.d.ts +2 -4
  20. package/api/streams/command/CommandStreamNode.js +16 -40
  21. package/api/streams/control/ControlStream.d.ts +4 -6
  22. package/api/streams/control/ControlStream.js +30 -36
  23. package/api/streams/control/ControlStreamAbstract.d.ts +6 -9
  24. package/api/streams/control/ControlStreamAbstract.js +57 -54
  25. package/api/streams/control/ControlStreamNode.d.ts +3 -5
  26. package/api/streams/control/ControlStreamNode.js +19 -44
  27. package/api/streams/fileAccessor/FileAccessorStream.d.ts +2 -4
  28. package/api/streams/fileAccessor/FileAccessorStream.js +42 -57
  29. package/api/streams/fileAccessor/FileAccessorStreamAbstract.d.ts +4 -9
  30. package/api/streams/fileAccessor/FileAccessorStreamAbstract.js +28 -48
  31. package/api/streams/fileAccessor/FileAccessorStreamNode.d.ts +1 -3
  32. package/api/streams/fileAccessor/FileAccessorStreamNode.js +23 -53
  33. package/api/streams/search/SearchStream.d.ts +2 -5
  34. package/api/streams/search/SearchStream.js +50 -74
  35. package/api/streams/search/SearchStreamAbstract.d.ts +4 -9
  36. package/api/streams/search/SearchStreamAbstract.js +33 -35
  37. package/api/streams/search/SearchStreamNode.d.ts +2 -5
  38. package/api/streams/search/SearchStreamNode.js +23 -48
  39. package/api/streams/telemetry/TelemetryStream.d.ts +4 -4
  40. package/api/streams/telemetry/TelemetryStream.js +49 -78
  41. package/api/streams/telemetry/TelemetryStreamAbstract.d.ts +8 -11
  42. package/api/streams/telemetry/TelemetryStreamAbstract.js +126 -145
  43. package/api/streams/telemetry/TelemetryStreamNode.d.ts +5 -5
  44. package/api/streams/telemetry/TelemetryStreamNode.js +44 -64
  45. package/api/streams/webRTCSignalling/WebRTCSignallingStream.d.ts +5 -10
  46. package/api/streams/webRTCSignalling/WebRTCSignallingStream.js +37 -20
  47. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.d.ts +10 -13
  48. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.js +37 -37
  49. package/constants/api.d.ts +14 -5
  50. package/constants/api.js +130 -126
  51. package/constants/auth.d.ts +2 -0
  52. package/constants/auth.js +2 -0
  53. package/constants/grpc.js +5 -8
  54. package/constants/identifier.js +6 -9
  55. package/constants/timezones.d.ts +1 -1
  56. package/constants/timezones.js +1 -4
  57. package/grpc/conker_pb.client.d.ts +78 -0
  58. package/grpc/conker_pb.client.js +55 -0
  59. package/grpc/conker_pb.d.ts +141 -0
  60. package/grpc/conker_pb.grpc-client.d.ts +81 -0
  61. package/grpc/conker_pb.grpc-client.js +58 -0
  62. package/grpc/conker_pb.js +104 -0
  63. package/grpc/filagree_pb.client.d.ts +68 -0
  64. package/grpc/filagree_pb.client.js +48 -0
  65. package/grpc/filagree_pb.d.ts +404 -0
  66. package/grpc/filagree_pb.grpc-client.d.ts +69 -0
  67. package/grpc/filagree_pb.grpc-client.js +51 -0
  68. package/grpc/filagree_pb.js +329 -0
  69. package/grpc/google/protobuf/descriptor_pb.d.ts +1798 -0
  70. package/grpc/google/protobuf/descriptor_pb.js +2378 -0
  71. package/grpc/google/protobuf/empty_pb.d.ts +23 -0
  72. package/grpc/google/protobuf/empty_pb.js +47 -0
  73. package/grpc/pigeon_pb.client.d.ts +96 -0
  74. package/grpc/pigeon_pb.client.js +72 -0
  75. package/grpc/pigeon_pb.d.ts +207 -0
  76. package/grpc/pigeon_pb.grpc-client.d.ts +98 -0
  77. package/grpc/pigeon_pb.grpc-client.js +68 -0
  78. package/grpc/pigeon_pb.js +144 -0
  79. package/grpc/rambo.uri.v1_pb.d.ts +73 -0
  80. package/grpc/rambo.uri.v1_pb.js +48 -0
  81. package/grpc/rambo.v1_pb.client.d.ts +66 -0
  82. package/grpc/rambo.v1_pb.client.js +48 -0
  83. package/grpc/rambo.v1_pb.d.ts +392 -0
  84. package/grpc/rambo.v1_pb.grpc-client.d.ts +56 -0
  85. package/grpc/rambo.v1_pb.grpc-client.js +44 -0
  86. package/grpc/rambo.v1_pb.js +272 -0
  87. package/grpc/serviette.uri.v1_pb.d.ts +89 -0
  88. package/grpc/serviette.uri.v1_pb.js +62 -0
  89. package/grpc/serviette.v1_pb.client.d.ts +225 -0
  90. package/grpc/serviette.v1_pb.client.js +174 -0
  91. package/grpc/serviette.v1_pb.d.ts +827 -0
  92. package/grpc/serviette.v1_pb.grpc-client.d.ts +215 -0
  93. package/grpc/serviette.v1_pb.grpc-client.js +162 -0
  94. package/grpc/serviette.v1_pb.js +553 -0
  95. package/grpc/slowlane_pb.client.d.ts +61 -0
  96. package/grpc/slowlane_pb.client.js +41 -0
  97. package/grpc/slowlane_pb.d.ts +303 -0
  98. package/grpc/slowlane_pb.grpc-client.d.ts +64 -0
  99. package/grpc/slowlane_pb.grpc-client.js +44 -0
  100. package/grpc/slowlane_pb.js +185 -0
  101. package/grpc/teletubby_pb.client.d.ts +145 -0
  102. package/grpc/teletubby_pb.client.js +104 -0
  103. package/grpc/teletubby_pb.d.ts +634 -0
  104. package/grpc/teletubby_pb.grpc-client.d.ts +152 -0
  105. package/grpc/teletubby_pb.grpc-client.js +100 -0
  106. package/grpc/teletubby_pb.js +1264 -0
  107. package/helpers/arrayRemove.js +2 -6
  108. package/helpers/arrayUnique.js +2 -6
  109. package/helpers/average.js +2 -7
  110. package/helpers/callerMessageHelpers.d.ts +14 -0
  111. package/helpers/callerMessageHelpers.js +86 -0
  112. package/helpers/cleanObject.js +17 -19
  113. package/helpers/cleanObject.spec.d.ts +1 -0
  114. package/helpers/cleanObject.spec.js +53 -0
  115. package/helpers/enviroment.js +4 -11
  116. package/helpers/flattenCallsignsLookup.d.ts +1 -1
  117. package/helpers/flattenCallsignsLookup.js +1 -5
  118. package/helpers/flattenObject.js +1 -5
  119. package/helpers/flattenObject.spec.d.ts +1 -0
  120. package/helpers/flattenObject.spec.js +29 -0
  121. package/helpers/flattenOneOf.d.ts +67 -0
  122. package/helpers/flattenOneOf.js +29 -0
  123. package/helpers/flattenOneOf.spec.d.ts +1 -0
  124. package/helpers/flattenOneOf.spec.js +157 -0
  125. package/helpers/formatServiceUrl.js +1 -5
  126. package/helpers/formatServiceUrl.spec.d.ts +1 -0
  127. package/helpers/formatServiceUrl.spec.js +16 -0
  128. package/helpers/generateUUID.js +3 -7
  129. package/helpers/getSubscriptionsDifference.d.ts +3 -3
  130. package/helpers/getSubscriptionsDifference.js +6 -10
  131. package/helpers/getURLSearchParams.d.ts +2 -0
  132. package/helpers/getURLSearchParams.js +9 -0
  133. package/helpers/getURLSearchParams.spec.d.ts +1 -0
  134. package/helpers/getURLSearchParams.spec.js +19 -0
  135. package/helpers/getUniqueConfigKey.js +1 -6
  136. package/helpers/getUniqueId.js +3 -7
  137. package/helpers/getUnixTimeMs.js +1 -5
  138. package/helpers/index.d.ts +3 -1
  139. package/helpers/index.js +5 -15
  140. package/helpers/nanosecondToMillisecond.d.ts +1 -1
  141. package/helpers/nanosecondToMillisecond.js +11 -6
  142. package/helpers/nanosecondToMillisecond.spec.d.ts +1 -0
  143. package/helpers/nanosecondToMillisecond.spec.js +20 -0
  144. package/helpers/randomString.js +1 -5
  145. package/helpers/standardDeviation.js +4 -8
  146. package/helpers/standardDeviation.spec.d.ts +1 -0
  147. package/helpers/standardDeviation.spec.js +11 -0
  148. package/helpers/stringToUint8Array.js +3 -7
  149. package/helpers/uint8ArrayToString.js +3 -8
  150. package/helpers/websandbox/connection.d.ts +67 -0
  151. package/helpers/websandbox/connection.js +133 -0
  152. package/helpers/websandbox/frame/frame.d.ts +12 -0
  153. package/helpers/websandbox/frame/frame.js +22 -0
  154. package/helpers/websandbox/frame/frame.source.d.ts +2 -0
  155. package/helpers/websandbox/frame/frame.source.js +5 -0
  156. package/helpers/websandbox/frame/index.d.ts +2 -0
  157. package/helpers/websandbox/frame/index.js +2 -0
  158. package/helpers/websandbox/frame/worker/index.d.ts +2 -0
  159. package/helpers/websandbox/frame/worker/index.js +2 -0
  160. package/helpers/websandbox/frame/worker/manager.d.ts +11 -0
  161. package/helpers/websandbox/frame/worker/manager.js +67 -0
  162. package/helpers/websandbox/frame/worker/manager.spec.d.ts +4 -0
  163. package/helpers/websandbox/frame/worker/manager.spec.js +127 -0
  164. package/helpers/websandbox/frame/worker/types.d.ts +11 -0
  165. package/helpers/websandbox/frame/worker/types.js +1 -0
  166. package/helpers/websandbox/frame/worker/worker.d.ts +1 -0
  167. package/helpers/websandbox/frame/worker/worker.js +74 -0
  168. package/helpers/websandbox/frame/worker/worker.source.d.ts +2 -0
  169. package/helpers/websandbox/frame/worker/worker.source.js +4 -0
  170. package/helpers/websandbox/index.d.ts +2 -0
  171. package/helpers/websandbox/index.js +2 -0
  172. package/helpers/websandbox/sandbox.d.ts +57 -0
  173. package/helpers/websandbox/sandbox.js +175 -0
  174. package/helpers/websandbox/types.d.ts +13 -0
  175. package/helpers/websandbox/types.js +1 -0
  176. package/index.js +7 -19
  177. package/logger/RocosLogger.js +18 -44
  178. package/models/CallsignStatus.d.ts +6 -0
  179. package/models/CallsignStatus.js +7 -0
  180. package/models/ExportDataQuery.js +1 -5
  181. package/models/ExternalProject.js +1 -5
  182. package/models/IBaseService.d.ts +1 -0
  183. package/models/IBaseService.js +1 -2
  184. package/models/IConfigGroup.js +1 -2
  185. package/models/IDebugLevel.d.ts +1 -1
  186. package/models/IDebugLevel.js +1 -2
  187. package/models/IExportDataQuery.js +1 -2
  188. package/models/IFunctionConfig.js +1 -2
  189. package/models/IInvitation.d.ts +1 -1
  190. package/models/IInvitation.js +1 -2
  191. package/models/IInvitationExists.js +1 -2
  192. package/models/IOperation.js +1 -2
  193. package/models/IPersonalAccessToken.js +1 -2
  194. package/models/IProject.js +1 -2
  195. package/models/IProjectApplication.js +1 -2
  196. package/models/IRobot.d.ts +1 -0
  197. package/models/IRobot.js +1 -2
  198. package/models/IRobotConfig.js +1 -2
  199. package/models/IRobotPlugin.js +1 -2
  200. package/models/IRobotSettings.d.ts +28 -0
  201. package/models/IRobotSettings.js +1 -0
  202. package/models/IRobotTemplate.js +1 -2
  203. package/models/IRocosSDKConfig.d.ts +3 -9
  204. package/models/IRocosSDKConfig.js +1 -2
  205. package/models/ISource.js +1 -2
  206. package/models/IStream.js +1 -2
  207. package/models/IStreamConfig.js +1 -2
  208. package/models/IStreamOptions.js +1 -2
  209. package/models/IStreamSource.js +1 -2
  210. package/models/ISubscriberStatus.js +1 -2
  211. package/models/ITelemetryStreamConfig.js +1 -2
  212. package/models/IToken.d.ts +7 -3
  213. package/models/IToken.js +1 -2
  214. package/models/IWidget.js +1 -2
  215. package/models/IWidgetLineGroup.js +1 -2
  216. package/models/ResponseLevelEnum.d.ts +4 -0
  217. package/models/ResponseLevelEnum.js +6 -5
  218. package/models/Robot.d.ts +1 -0
  219. package/models/Robot.js +1 -5
  220. package/models/RobotConfig.js +1 -5
  221. package/models/RobotPlugin.js +1 -5
  222. package/models/RobotTemplate.js +9 -14
  223. package/models/RocosError.d.ts +1 -0
  224. package/models/RocosError.js +3 -6
  225. package/models/ServiceEnum.d.ts +2 -1
  226. package/models/ServiceEnum.js +3 -5
  227. package/models/Stream.js +4 -8
  228. package/models/StreamOptions.js +1 -5
  229. package/models/StreamSource.js +3 -7
  230. package/models/SubscriberStatusEnum.js +2 -5
  231. package/models/Token.d.ts +36 -4
  232. package/models/Token.js +74 -11
  233. package/models/Token.spec.d.ts +1 -0
  234. package/models/Token.spec.js +108 -0
  235. package/models/Widget.js +4 -8
  236. package/models/WidgetLineGroup.js +1 -5
  237. package/models/asset-storage/AssetModelItem.d.ts +3 -0
  238. package/models/asset-storage/AssetModelItem.js +1 -2
  239. package/models/caller/IRocosCallerMessageChunk.d.ts +8 -2
  240. package/models/caller/IRocosCallerMessageChunk.js +1 -2
  241. package/models/caller/IRocosCallerMessageChunks.d.ts +2 -3
  242. package/models/caller/IRocosCallerMessageChunks.js +1 -2
  243. package/models/caller/IRocosCallerMessageHeartbeat.d.ts +3 -2
  244. package/models/caller/IRocosCallerMessageHeartbeat.js +1 -2
  245. package/models/caller/IRocosCallerMessageResponse.d.ts +3 -2
  246. package/models/caller/IRocosCallerMessageResponse.js +1 -2
  247. package/models/caller/IRocosCallerMessageResponseAck.d.ts +16 -2
  248. package/models/caller/IRocosCallerMessageResponseAck.js +13 -2
  249. package/models/caller/IRocosCallerMessageResponseResult.d.ts +15 -2
  250. package/models/caller/IRocosCallerMessageResponseResult.js +12 -2
  251. package/models/caller/IRocosCallerMessageResponseReturn.d.ts +8 -0
  252. package/models/caller/IRocosCallerMessageResponseReturn.js +1 -0
  253. package/models/caller/IRocosCallerMessageResponseUid.d.ts +10 -2
  254. package/models/caller/IRocosCallerMessageResponseUid.js +7 -2
  255. package/models/caller/IRocosCallerMessageResponses.d.ts +2 -3
  256. package/models/caller/IRocosCallerMessageResponses.js +1 -2
  257. package/models/caller/RocosCallerResultStatus.d.ts +11 -1
  258. package/models/caller/RocosCallerResultStatus.js +12 -5
  259. package/models/caller/RocosResponseLevel.d.ts +6 -0
  260. package/models/caller/RocosResponseLevel.js +7 -0
  261. package/models/caller/index.d.ts +11 -0
  262. package/models/caller/index.js +11 -0
  263. package/models/callsigns/CallsignsEnums.d.ts +3 -3
  264. package/models/callsigns/CallsignsEnums.js +11 -14
  265. package/models/callsigns/CallsignsLookup.js +10 -15
  266. package/models/callsigns/CallsignsQuery.js +1 -5
  267. package/models/callsigns/CallsignsQueryPredicate.js +1 -5
  268. package/models/command/IRocosCommandMessageHeartbeat.d.ts +1 -2
  269. package/models/command/IRocosCommandMessageHeartbeat.js +1 -2
  270. package/models/command/IRocosCommandMessageResponse.d.ts +55 -2
  271. package/models/command/IRocosCommandMessageResponse.js +29 -2
  272. package/models/command/RocosCommandResultStatus.d.ts +11 -1
  273. package/models/command/RocosCommandResultStatus.js +12 -5
  274. package/models/command/index.d.ts +4 -0
  275. package/models/command/index.js +4 -0
  276. package/models/file/FileEnums.d.ts +4 -4
  277. package/models/file/FileEnums.js +9 -12
  278. package/models/index.d.ts +6 -31
  279. package/models/index.js +76 -113
  280. package/models/integrations/Overlay.js +1 -2
  281. package/models/integrations/Plan.js +1 -2
  282. package/models/maps/Map.d.ts +2 -3
  283. package/models/maps/Map.js +1 -2
  284. package/models/maps/Panorama.d.ts +36 -0
  285. package/models/maps/Panorama.js +1 -0
  286. package/models/message/IRocosCallerMessage.js +1 -2
  287. package/models/message/IRocosChangeMessage.js +1 -2
  288. package/models/message/IRocosCommandMessage.js +1 -2
  289. package/models/message/IRocosControlMessage.js +1 -2
  290. package/models/message/IRocosOpResultMessage.d.ts +2 -2
  291. package/models/message/IRocosOpResultMessage.js +1 -2
  292. package/models/message/IRocosSearchMessage.js +1 -2
  293. package/models/message/IRocosSearchRowMessage.js +1 -2
  294. package/models/message/IRocosSearchStatusMessage.js +1 -2
  295. package/models/message/IRocosTelemetryMessage.d.ts +12 -7
  296. package/models/message/IRocosTelemetryMessage.js +1 -2
  297. package/models/message/IStreamStatusMessage.js +1 -2
  298. package/models/message/RocosCallerMessage.d.ts +2 -4
  299. package/models/message/RocosCallerMessage.js +24 -15
  300. package/models/message/RocosCommandMessage.d.ts +2 -3
  301. package/models/message/RocosCommandMessage.js +5 -8
  302. package/models/message/RocosControlMessage.d.ts +1 -1
  303. package/models/message/RocosControlMessage.js +6 -10
  304. package/models/message/RocosOpResultMessage.d.ts +3 -2
  305. package/models/message/RocosOpResultMessage.js +6 -10
  306. package/models/message/RocosSearchMessage.d.ts +1 -1
  307. package/models/message/RocosSearchMessage.js +5 -9
  308. package/models/message/RocosSearchRowMessage.d.ts +1 -1
  309. package/models/message/RocosSearchRowMessage.js +8 -12
  310. package/models/message/RocosTelemetryMessage.d.ts +9 -23
  311. package/models/message/RocosTelemetryMessage.js +51 -93
  312. package/models/message/index.d.ts +17 -0
  313. package/models/message/index.js +17 -0
  314. package/models/params/ICallerParams.d.ts +12 -1
  315. package/models/params/ICallerParams.js +1 -2
  316. package/models/params/ICommandParams.js +1 -2
  317. package/models/params/IControlParams.d.ts +1 -1
  318. package/models/params/IControlParams.js +1 -2
  319. package/models/params/IFileAccessorParams.js +1 -2
  320. package/models/params/ISearchParams.js +1 -2
  321. package/models/params/ITelemetryParams.d.ts +1 -1
  322. package/models/params/ITelemetryParams.js +1 -2
  323. package/models/params/IWebRTCSignallingParams.js +1 -2
  324. package/models/projects/ProjectUser.js +1 -2
  325. package/models/schedule/IScheduleAction.d.ts +1 -1
  326. package/models/schedule/IScheduleAction.js +2 -5
  327. package/models/schedule/IScheduleInfo.js +1 -2
  328. package/models/schedule/IScheduleJob.js +1 -2
  329. package/models/search/SearchQueryFilter.js +1 -5
  330. package/models/search/SearchStreamQuery.js +1 -5
  331. package/models/stream/IBaseStream.js +1 -2
  332. package/models/stream/ICallerStream.js +1 -2
  333. package/models/stream/ICommandStream.js +1 -2
  334. package/models/stream/IControlStream.js +1 -2
  335. package/models/stream/IFileAccessorStream.d.ts +1 -2
  336. package/models/stream/IFileAccessorStream.js +1 -2
  337. package/models/stream/ISearchStream.js +1 -2
  338. package/models/stream/ITelemetryStream.js +1 -2
  339. package/models/stream/IWebRTCSignallingStream.d.ts +51 -16
  340. package/models/stream/IWebRTCSignallingStream.js +1 -7
  341. package/models/types.d.ts +5 -5
  342. package/models/types.js +1 -2
  343. package/models/workflow/Workflow.d.ts +36 -0
  344. package/models/workflow/Workflow.js +1 -0
  345. package/node/RocosSDKNode.d.ts +6 -1
  346. package/node/RocosSDKNode.js +82 -80
  347. package/node/index.js +7 -19
  348. package/package.json +10 -11
  349. package/services/AssetStorageService.d.ts +23 -1
  350. package/services/AssetStorageService.js +53 -24
  351. package/services/AuthService.d.ts +59 -27
  352. package/services/AuthService.js +167 -86
  353. package/services/AuthService.spec.d.ts +1 -0
  354. package/services/AuthService.spec.js +163 -0
  355. package/services/BaseServiceAbstract.d.ts +11 -13
  356. package/services/BaseServiceAbstract.js +18 -24
  357. package/services/BaseStreamService.d.ts +18 -0
  358. package/services/BaseStreamService.js +47 -0
  359. package/services/CallerService.d.ts +37 -17
  360. package/services/CallerService.js +86 -65
  361. package/services/CallerService.spec.d.ts +1 -0
  362. package/services/CallerService.spec.js +227 -0
  363. package/services/CallerServiceNode.js +4 -8
  364. package/services/CommandService.d.ts +5 -17
  365. package/services/CommandService.js +19 -62
  366. package/services/CommandServiceNode.js +4 -8
  367. package/services/ConfigGroupService.js +17 -21
  368. package/services/ControlService.d.ts +5 -17
  369. package/services/ControlService.js +22 -65
  370. package/services/ControlServiceNode.js +4 -8
  371. package/services/DashboardService.js +20 -24
  372. package/services/EvaluatorService.d.ts +11 -0
  373. package/services/EvaluatorService.js +28 -0
  374. package/services/EventService.js +13 -17
  375. package/services/FileAccessorService.d.ts +4 -18
  376. package/services/FileAccessorService.js +14 -62
  377. package/services/FileAccessorServiceNode.js +4 -8
  378. package/services/FunctionService.js +17 -21
  379. package/services/IntegrationService.js +14 -19
  380. package/services/MapService.d.ts +71 -25
  381. package/services/MapService.js +113 -40
  382. package/services/PlatformTimeService.js +8 -12
  383. package/services/PlatformTimeService.spec.d.ts +1 -0
  384. package/services/PlatformTimeService.spec.js +180 -0
  385. package/services/ProfileService.js +36 -40
  386. package/services/ProjectService.js +23 -27
  387. package/services/RobotService.d.ts +2 -6
  388. package/services/RobotService.js +48 -55
  389. package/services/ScheduleService.js +10 -14
  390. package/services/SearchService.d.ts +4 -17
  391. package/services/SearchService.js +24 -59
  392. package/services/SearchServiceNode.js +4 -8
  393. package/services/SpotProvisioningService.d.ts +1 -1
  394. package/services/SpotProvisioningService.js +16 -16
  395. package/services/SpotProvisioningServiceNode.d.ts +1 -1
  396. package/services/SpotProvisioningServiceNode.js +16 -16
  397. package/services/StreamService.js +26 -30
  398. package/services/TelemetryService.d.ts +15 -17
  399. package/services/TelemetryService.js +103 -93
  400. package/services/TelemetryService.spec.d.ts +1 -0
  401. package/services/TelemetryService.spec.js +37 -0
  402. package/services/TelemetryServiceNode.js +4 -8
  403. package/services/TimeSyncerService.js +9 -13
  404. package/services/UserService.js +37 -41
  405. package/services/WebRTCSignallingService.d.ts +4 -4
  406. package/services/WebRTCSignallingService.js +24 -27
  407. package/services/WorkflowService.d.ts +25 -29
  408. package/services/WorkflowService.js +39 -75
  409. package/services/index.d.ts +1 -0
  410. package/services/index.js +27 -38
  411. package/store/RocosStore.js +9 -15
  412. package/demo/angular/.editorconfig +0 -16
  413. package/demo/angular/.eslintignore +0 -4
  414. package/demo/angular/.eslintrc.json +0 -50
  415. package/demo/angular/README.md +0 -36
  416. package/demo/angular/angular.json +0 -132
  417. package/demo/angular/karma.conf.js +0 -44
  418. package/demo/angular/package.json +0 -41
  419. package/demo/angular/src/app/app.component.css +0 -0
  420. package/demo/angular/src/app/app.component.html +0 -9
  421. package/demo/angular/src/app/app.component.ts +0 -10
  422. package/demo/angular/src/app/app.module.ts +0 -38
  423. package/demo/angular/src/app/components/assets/assets.component.css +0 -0
  424. package/demo/angular/src/app/components/assets/assets.component.html +0 -29
  425. package/demo/angular/src/app/components/assets/assets.component.ts +0 -107
  426. package/demo/angular/src/app/components/auth/auth.component.css +0 -0
  427. package/demo/angular/src/app/components/auth/auth.component.html +0 -27
  428. package/demo/angular/src/app/components/auth/auth.component.ts +0 -33
  429. package/demo/angular/src/app/components/caller/caller.component.css +0 -0
  430. package/demo/angular/src/app/components/caller/caller.component.html +0 -22
  431. package/demo/angular/src/app/components/caller/caller.component.ts +0 -61
  432. package/demo/angular/src/app/components/command/command.component.css +0 -0
  433. package/demo/angular/src/app/components/command/command.component.html +0 -22
  434. package/demo/angular/src/app/components/command/command.component.ts +0 -60
  435. package/demo/angular/src/app/components/integrations/integrations.component.ts +0 -43
  436. package/demo/angular/src/app/components/robots/robots.component.css +0 -0
  437. package/demo/angular/src/app/components/robots/robots.component.html +0 -13
  438. package/demo/angular/src/app/components/robots/robots.component.ts +0 -26
  439. package/demo/angular/src/app/components/sdk/sdk.component.css +0 -0
  440. package/demo/angular/src/app/components/sdk/sdk.component.html +0 -43
  441. package/demo/angular/src/app/components/sdk/sdk.component.ts +0 -50
  442. package/demo/angular/src/app/components/subscription/subscription.component.css +0 -0
  443. package/demo/angular/src/app/components/subscription/subscription.component.html +0 -6
  444. package/demo/angular/src/app/components/subscription/subscription.component.ts +0 -40
  445. package/demo/angular/src/app/components/telemetry/telemetry.component.css +0 -0
  446. package/demo/angular/src/app/components/telemetry/telemetry.component.html +0 -19
  447. package/demo/angular/src/app/components/telemetry/telemetry.component.ts +0 -61
  448. package/demo/angular/src/app/components/token/token.component.css +0 -0
  449. package/demo/angular/src/app/components/token/token.component.html +0 -10
  450. package/demo/angular/src/app/components/token/token.component.ts +0 -18
  451. package/demo/angular/src/app/components/video/p2pvideo/index.ts +0 -646
  452. package/demo/angular/src/app/components/video/video-source.ts +0 -315
  453. package/demo/angular/src/app/components/video/video.component.css +0 -6
  454. package/demo/angular/src/app/components/video/video.component.html +0 -54
  455. package/demo/angular/src/app/components/video/video.component.ts +0 -151
  456. package/demo/angular/src/app/services/sdk.service.ts +0 -193
  457. package/demo/angular/src/assets/.gitkeep +0 -0
  458. package/demo/angular/src/assets/HKGrotesk-Bold.otf +0 -0
  459. package/demo/angular/src/assets/HKGrotesk-Regular.otf +0 -0
  460. package/demo/angular/src/assets/logo.svg +0 -16
  461. package/demo/angular/src/environments/environment.prod.ts +0 -3
  462. package/demo/angular/src/environments/environment.ts +0 -16
  463. package/demo/angular/src/favicon.ico +0 -0
  464. package/demo/angular/src/index.html +0 -15
  465. package/demo/angular/src/main.ts +0 -7
  466. package/demo/angular/src/polyfills.ts +0 -53
  467. package/demo/angular/src/styles.css +0 -198
  468. package/demo/angular/tsconfig.app.json +0 -15
  469. package/demo/angular/tsconfig.json +0 -39
  470. package/demo/html/README.md +0 -8
  471. package/demo/html/assets/HKGrotesk-Bold.otf +0 -0
  472. package/demo/html/assets/HKGrotesk-Regular.otf +0 -0
  473. package/demo/html/assets/logo.svg +0 -16
  474. package/demo/html/favicon.ico +0 -0
  475. package/demo/html/index.html +0 -416
  476. package/demo/html/rocos-js-sdk.js +0 -3
  477. package/demo/html/rocos-js-sdk.js.LICENSE.txt +0 -8
  478. package/demo/html/rocos-js-sdk.js.map +0 -1
  479. package/demo/html/styles.css +0 -190
  480. package/demo/node/README.md +0 -17
  481. package/demo/node/index.js +0 -134
  482. package/demo/node/package.json +0 -8
  483. package/demo/react/.env +0 -1
  484. package/demo/react/.env.dist +0 -1
  485. package/demo/react/.eslintrc.json +0 -46
  486. package/demo/react/README.md +0 -65
  487. package/demo/react/package.json +0 -60
  488. package/demo/react/public/favicon.ico +0 -0
  489. package/demo/react/public/index.html +0 -43
  490. package/demo/react/public/logo192.png +0 -0
  491. package/demo/react/public/logo512.png +0 -0
  492. package/demo/react/public/manifest.json +0 -25
  493. package/demo/react/public/robots.txt +0 -3
  494. package/demo/react/src/App.css +0 -190
  495. package/demo/react/src/App.tsx +0 -31
  496. package/demo/react/src/actions/index.ts +0 -8
  497. package/demo/react/src/actions/sdkActions.ts +0 -62
  498. package/demo/react/src/assets/HKGrotesk-Bold.otf +0 -0
  499. package/demo/react/src/assets/HKGrotesk-Regular.otf +0 -0
  500. package/demo/react/src/assets/logo.svg +0 -16
  501. package/demo/react/src/components/AuthForm.tsx +0 -76
  502. package/demo/react/src/components/CallerBox.tsx +0 -53
  503. package/demo/react/src/components/CallerForm.tsx +0 -98
  504. package/demo/react/src/components/CommandBox.tsx +0 -47
  505. package/demo/react/src/components/CommandForm.tsx +0 -98
  506. package/demo/react/src/components/RobotsForm.tsx +0 -51
  507. package/demo/react/src/components/SubscriptionBox.tsx +0 -55
  508. package/demo/react/src/components/TelemetryForm.tsx +0 -98
  509. package/demo/react/src/components/TokenForm.tsx +0 -39
  510. package/demo/react/src/config.json +0 -14
  511. package/demo/react/src/controllers/RocosSDKController.ts +0 -48
  512. package/demo/react/src/helpers/deepEqual.ts +0 -27
  513. package/demo/react/src/hooks/useInput.ts +0 -29
  514. package/demo/react/src/index.css +0 -11
  515. package/demo/react/src/index.tsx +0 -26
  516. package/demo/react/src/react-app-env.d.ts +0 -1
  517. package/demo/react/src/reducers/sdkReducer.ts +0 -133
  518. package/demo/react/src/reportWebVitals.ts +0 -15
  519. package/demo/react/src/selectors/sdkSelector.ts +0 -11
  520. package/demo/react/src/setupTests.ts +0 -5
  521. package/demo/react/src/store.ts +0 -14
  522. package/demo/react/tsconfig.json +0 -26
  523. package/demo/sdk-sizer/dist/sdk-sizer/3rdpartylicenses.txt +0 -975
  524. package/demo/sdk-sizer/dist/sdk-sizer/favicon.ico +0 -0
  525. package/demo/sdk-sizer/dist/sdk-sizer/index.html +0 -12
  526. package/demo/sdk-sizer/dist/sdk-sizer/main.c9183649ce1856ef.js +0 -2
  527. package/demo/sdk-sizer/dist/sdk-sizer/main.c9183649ce1856ef.js.map +0 -1
  528. package/demo/sdk-sizer/dist/sdk-sizer/polyfills.701c8e5d007909aa.js +0 -2
  529. package/demo/sdk-sizer/dist/sdk-sizer/polyfills.701c8e5d007909aa.js.map +0 -1
  530. package/demo/sdk-sizer/dist/sdk-sizer/runtime.00e20e689f5284a8.js +0 -2
  531. package/demo/sdk-sizer/dist/sdk-sizer/runtime.00e20e689f5284a8.js.map +0 -1
  532. package/demo/sdk-sizer/dist/sdk-sizer/stats.json +0 -1
  533. package/demo/sdk-sizer/dist/sdk-sizer/styles.b45f7e627ac8cbce.css +0 -2
  534. package/demo/sdk-sizer/dist/sdk-sizer/styles.b45f7e627ac8cbce.css.map +0 -1
  535. package/grpc/file-accessor/filagree_grpc_pb.d.ts +0 -41
  536. package/grpc/file-accessor/filagree_grpc_pb.js +0 -121
  537. package/grpc/file-accessor/filagree_pb.d.ts +0 -339
  538. package/grpc/file-accessor/filagree_pb.js +0 -2261
  539. package/grpc/file-accessor/filagree_pb_service.d.ts +0 -115
  540. package/grpc/file-accessor/filagree_pb_service.js +0 -257
  541. package/grpc/rambo/rambo.v1_grpc_pb.d.ts +0 -39
  542. package/grpc/rambo/rambo.v1_grpc_pb.js +0 -73
  543. package/grpc/rambo/rambo.v1_pb.d.ts +0 -365
  544. package/grpc/rambo/rambo.v1_pb.js +0 -2469
  545. package/grpc/rambo/rambo.v1_pb_service.d.ts +0 -76
  546. package/grpc/rambo/rambo.v1_pb_service.js +0 -138
  547. package/grpc/rambo/uri.v1_grpc_pb.d.ts +0 -1
  548. package/grpc/rambo/uri.v1_grpc_pb.js +0 -1
  549. package/grpc/rambo/uri.v1_pb.d.ts +0 -80
  550. package/grpc/rambo/uri.v1_pb.js +0 -563
  551. package/grpc/rambo/uri.v1_pb_service.d.ts +0 -3
  552. package/grpc/rambo/uri.v1_pb_service.js +0 -3
  553. package/grpc/robot-control/conker_grpc_pb.d.ts +0 -46
  554. package/grpc/robot-control/conker_grpc_pb.js +0 -143
  555. package/grpc/robot-control/conker_pb.d.ts +0 -168
  556. package/grpc/robot-control/conker_pb.js +0 -1287
  557. package/grpc/robot-control/conker_pb_service.d.ts +0 -126
  558. package/grpc/robot-control/conker_pb_service.js +0 -301
  559. package/grpc/serviette/common.v1_grpc_pb.d.ts +0 -1
  560. package/grpc/serviette/common.v1_grpc_pb.js +0 -1
  561. package/grpc/serviette/common.v1_pb.d.ts +0 -8
  562. package/grpc/serviette/common.v1_pb.js +0 -45
  563. package/grpc/serviette/common.v1_pb_service.d.ts +0 -3
  564. package/grpc/serviette/common.v1_pb_service.js +0 -3
  565. package/grpc/serviette/serviette.v1_grpc_pb.d.ts +0 -137
  566. package/grpc/serviette/serviette.v1_grpc_pb.js +0 -331
  567. package/grpc/serviette/serviette.v1_pb.d.ts +0 -884
  568. package/grpc/serviette/serviette.v1_pb.js +0 -6363
  569. package/grpc/serviette/serviette.v1_pb_service.d.ts +0 -278
  570. package/grpc/serviette/serviette.v1_pb_service.js +0 -699
  571. package/grpc/serviette/uri.v1_grpc_pb.d.ts +0 -1
  572. package/grpc/serviette/uri.v1_grpc_pb.js +0 -1
  573. package/grpc/serviette/uri.v1_pb.d.ts +0 -102
  574. package/grpc/serviette/uri.v1_pb.js +0 -741
  575. package/grpc/serviette/uri.v1_pb_service.d.ts +0 -3
  576. package/grpc/serviette/uri.v1_pb_service.js +0 -3
  577. package/grpc/slowlane/slowlane_grpc_pb.d.ts +0 -38
  578. package/grpc/slowlane/slowlane_grpc_pb.js +0 -132
  579. package/grpc/slowlane/slowlane_pb.d.ts +0 -373
  580. package/grpc/slowlane/slowlane_pb.js +0 -2908
  581. package/grpc/slowlane/slowlane_pb_service.d.ts +0 -112
  582. package/grpc/slowlane/slowlane_pb_service.js +0 -189
  583. package/grpc/teletubby/teletubby_grpc_pb.d.ts +0 -73
  584. package/grpc/teletubby/teletubby_grpc_pb.js +0 -231
  585. package/grpc/teletubby/teletubby_pb.d.ts +0 -647
  586. package/grpc/teletubby/teletubby_pb.js +0 -4786
  587. package/grpc/teletubby/teletubby_pb_service.d.ts +0 -193
  588. package/grpc/teletubby/teletubby_pb_service.js +0 -436
  589. package/grpc/video/pigeon_grpc_pb.d.ts +0 -59
  590. package/grpc/video/pigeon_grpc_pb.js +0 -180
  591. package/grpc/video/pigeon_pb.d.ts +0 -237
  592. package/grpc/video/pigeon_pb.js +0 -1775
  593. package/grpc/video/pigeon_pb_service.d.ts +0 -152
  594. package/grpc/video/pigeon_pb_service.js +0 -292
  595. package/models/ISignupParams.d.ts +0 -8
  596. package/models/ISignupParams.js +0 -2
  597. package/utils/axisangle.d.ts +0 -18
  598. package/utils/axisangle.js +0 -48
  599. package/utils/eulerangles.d.ts +0 -22
  600. package/utils/eulerangles.js +0 -133
  601. package/utils/helperfunctions.d.ts +0 -5
  602. package/utils/helperfunctions.js +0 -50
  603. package/utils/localtransform.d.ts +0 -17
  604. package/utils/localtransform.js +0 -50
  605. package/utils/localtransformtree.d.ts +0 -17
  606. package/utils/localtransformtree.js +0 -88
  607. package/utils/misc.d.ts +0 -17
  608. package/utils/misc.js +0 -23
  609. package/utils/positionvector.d.ts +0 -13
  610. package/utils/positionvector.js +0 -79
  611. package/utils/quaternion.d.ts +0 -20
  612. package/utils/quaternion.js +0 -62
  613. package/utils/rotationmatrix.d.ts +0 -23
  614. package/utils/rotationmatrix.js +0 -262
  615. package/utils/transformationmatrix.d.ts +0 -12
  616. package/utils/transformationmatrix.js +0 -123
  617. package/utils/vector3.d.ts +0 -11
  618. package/utils/vector3.js +0 -61
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.copysign = exports.frameToFrameTransformationMatrixSeq = void 0;
4
- const transformationmatrix_1 = require("./transformationmatrix");
5
- const mathjs_1 = require("mathjs");
6
- // Calculate the total transformation matrix between the start and end of a branch sequence
7
- function frameToFrameTransformationMatrixSeq(tree, seq, isInverse) {
8
- // Set variables in preperation for iteration down tree
9
- var currentFrame = tree.getFrame(seq[0]);
10
- var currentTransformationMatrix = currentFrame.GetTransformationMatrix();
11
- var totalTransformationMatrix = currentTransformationMatrix;
12
- // Iterate through sequence and apply transformations
13
- // This is under the assumption that the root node is an identity transformation matrix
14
- for (var i = 1; i < seq.length - 1; i++) {
15
- // Set transformation variables for multiplication
16
- var currentFrame = tree.getFrame(seq[i]);
17
- currentTransformationMatrix = currentFrame.GetTransformationMatrix();
18
- // Multiply current transformation matrix with total transformation matrix
19
- var temp = currentTransformationMatrix.Multiply(totalTransformationMatrix);
20
- if (temp instanceof transformationmatrix_1.TransformationMatrix) {
21
- totalTransformationMatrix = temp;
22
- }
23
- else {
24
- throw "Something is terribly wrong";
25
- }
26
- }
27
- if (isInverse) {
28
- // The inverse of a (totalTransformation) matrix that has been created by multiplying several (currentTransformation) matrices together
29
- // is equivalent to multiplying the inverse of each matrix in the reverse order: inv(T1*T2) = inv(T2)*inv(T1)
30
- // Therefore the sequence is always be DOWN the branch (no sequence reversal needed for UP tree transformations)
31
- return new transformationmatrix_1.TransformationMatrix(mathjs_1.inv(totalTransformationMatrix.elements));
32
- }
33
- else {
34
- return totalTransformationMatrix;
35
- }
36
- }
37
- exports.frameToFrameTransformationMatrixSeq = frameToFrameTransformationMatrixSeq;
38
- // copy the sign (+ or -) of num2 for num1
39
- function copysign(num1, num2) {
40
- if (mathjs_1.sign(num2) == -1) {
41
- return mathjs_1.abs(num1) * -1;
42
- }
43
- else if (mathjs_1.sign(num2) == 0) {
44
- return num1;
45
- }
46
- else {
47
- return mathjs_1.abs(num1);
48
- }
49
- }
50
- exports.copysign = copysign;
@@ -1,17 +0,0 @@
1
- import { FrameID } from './misc';
2
- import { LocalTransformTree } from './localtransformtree';
3
- import { PositionVector } from './positionvector';
4
- import { RotationMatrix } from './rotationmatrix';
5
- import { TransformationMatrix } from './transformationmatrix';
6
- export declare class LocalTransform {
7
- origin: PositionVector;
8
- basis: RotationMatrix;
9
- frameID: FrameID;
10
- constructor(origin: PositionVector, basis: RotationMatrix, frameID: FrameID);
11
- ID(): FrameID;
12
- ParentID(tree: LocalTransformTree): FrameID;
13
- GetRotation(): RotationMatrix;
14
- GetPosition(): PositionVector;
15
- GetTransformationMatrix(): TransformationMatrix;
16
- ToFrame(tree: LocalTransformTree, resultFrameID: FrameID): TransformationMatrix;
17
- }
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LocalTransform = void 0;
4
- const transformationmatrix_1 = require("./transformationmatrix");
5
- const helperfunctions_1 = require("./helperfunctions");
6
- // LocalTransform is the implementation of Transform locally within the script
7
- class LocalTransform {
8
- constructor(origin, basis, frameID) {
9
- this.origin = origin;
10
- this.basis = basis;
11
- this.frameID = frameID;
12
- }
13
- ID() { return this.frameID; }
14
- ParentID(tree) { return tree.getParent(this.ID()); }
15
- GetRotation() { return this.basis; }
16
- GetPosition() { return this.origin; }
17
- GetTransformationMatrix() {
18
- return new transformationmatrix_1.TransformationMatrix([[this.basis.elements[0][0], this.basis.elements[0][1], this.basis.elements[0][2], this.origin.elements[0][0]],
19
- [this.basis.elements[1][0], this.basis.elements[1][1], this.basis.elements[1][2], this.origin.elements[1][0]],
20
- [this.basis.elements[2][0], this.basis.elements[2][1], this.basis.elements[2][2], this.origin.elements[2][0]],
21
- [0, 0, 0, 1]]);
22
- }
23
- // ToFrame returns the transformation matrix relative to the new specified frame
24
- ToFrame(tree, resultFrameID) {
25
- var originalFrameID = this.ID();
26
- if (originalFrameID == resultFrameID) {
27
- return this.GetTransformationMatrix();
28
- }
29
- else if (tree.isDescendant(originalFrameID, resultFrameID)) {
30
- return helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(originalFrameID, resultFrameID), false);
31
- }
32
- else if (tree.isAncestor(originalFrameID, resultFrameID)) {
33
- return helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(resultFrameID, originalFrameID), true);
34
- }
35
- else { // Frames are on different branches
36
- var commonNode = tree.getCommonFrameID(originalFrameID, resultFrameID);
37
- // Calculate the transformation matrix of each frame relative to the common node
38
- var totalTM1 = helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(originalFrameID, commonNode), false); // calculate down tree matrix
39
- var totalTM2 = helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(resultFrameID, commonNode), true); // calculate up the tree (inverses)
40
- var totalTM = totalTM2.Multiply(totalTM1);
41
- if (totalTM instanceof transformationmatrix_1.TransformationMatrix) {
42
- return new transformationmatrix_1.TransformationMatrix(totalTM.elements);
43
- }
44
- else {
45
- throw "Erorr occurred";
46
- }
47
- }
48
- }
49
- }
50
- exports.LocalTransform = LocalTransform;
@@ -1,17 +0,0 @@
1
- import { FrameID } from './misc';
2
- import { LocalTransform } from './localtransform';
3
- export declare class LocalTransformTree {
4
- frames: Map<FrameID, LocalTransform>;
5
- parents: Map<FrameID, FrameID>;
6
- children: Map<FrameID, FrameID[]>;
7
- constructor(frames: Map<FrameID, LocalTransform>, parents: Map<FrameID, FrameID>, children: Map<FrameID, FrameID[]>);
8
- getFrame(searchID: FrameID): LocalTransform;
9
- getSeqDown(start: FrameID, end: FrameID): FrameID[];
10
- getCommonFrameID(frame1ID: FrameID, frame2ID: FrameID): FrameID;
11
- getParent(searchID: FrameID): FrameID;
12
- getChildren(searchID: FrameID): FrameID[];
13
- isChild(originalFrameID: FrameID, resultFrameID: FrameID): boolean;
14
- isParent(originalFrameID: FrameID, resultFrameID: FrameID): boolean;
15
- isAncestor(originalFrameID: FrameID, resultFrameID: FrameID): boolean;
16
- isDescendant(originalFrameID: FrameID, resultFrameID: FrameID): boolean;
17
- }
@@ -1,88 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LocalTransformTree = void 0;
4
- class LocalTransformTree {
5
- constructor(frames, parents, children) {
6
- this.frames = frames;
7
- this.parents = parents;
8
- this.children = children;
9
- }
10
- // getFrame returns the specified frame
11
- getFrame(searchID) {
12
- let frame = this.frames.get(searchID);
13
- if (frame == null) {
14
- throw "Frame does not exist with given ID";
15
- }
16
- return frame;
17
- }
18
- // getSeqDown returns the sequence of frame IDs from start to end. If end isn't found, SeqDown returns seq to root
19
- getSeqDown(start, end) {
20
- if (start == end) {
21
- return [start];
22
- }
23
- var currentFrame = this.getFrame(start);
24
- var seq = [];
25
- // traverse down branch from end to start and record sequence
26
- while (true) {
27
- seq.push(currentFrame.frameID);
28
- // if end is found
29
- if (this.getParent(currentFrame.ID()) == end) {
30
- seq.push(end);
31
- break;
32
- }
33
- // Reached root node (frame without parent)
34
- if (this.getParent(currentFrame.ID()) == "") {
35
- break;
36
- }
37
- currentFrame = this.getFrame(this.getParent(currentFrame.ID()));
38
- }
39
- return seq;
40
- }
41
- // getCommonFrameID returns the common frame ID between the specified frames
42
- getCommonFrameID(frame1ID, frame2ID) {
43
- var frame1 = this.getFrame(frame1ID);
44
- var frame2 = this.getFrame(frame2ID);
45
- var frame1Seq = this.getSeqDown(frame1.frameID, "R");
46
- var frame2Seq = this.getSeqDown(frame2.frameID, "R");
47
- // Return first common element (if any) --> O(n^2)
48
- for (var i = 0; i < frame1Seq.length; i++) {
49
- for (var j = 0; j < frame2Seq.length; j++) {
50
- if (frame1Seq[i] == frame2Seq[j]) {
51
- return frame1Seq[i];
52
- }
53
- }
54
- }
55
- throw "No common node between specified frames";
56
- }
57
- // Parent returns the parent ID of the specified frame
58
- getParent(searchID) {
59
- let parents = this.parents.get(searchID);
60
- if (parents == null) {
61
- throw "Frame does not exist with given ID, cannot retrieve children";
62
- }
63
- return parents;
64
- }
65
- // getChildren returns the children of the specified frame
66
- getChildren(searchID) {
67
- let children = this.children.get(searchID);
68
- if (children == null) {
69
- throw "Frame does not exist with given ID, cannot retrieve children";
70
- }
71
- return children;
72
- }
73
- // isChild determines if originalFrameID is a child of resultFrameID
74
- isChild(originalFrameID, resultFrameID) {
75
- return this.getChildren(resultFrameID).includes(originalFrameID);
76
- }
77
- // isParent determines if originalFrameID is the parent of resultFrameID
78
- isParent(originalFrameID, resultFrameID) {
79
- return this.getParent(resultFrameID) == originalFrameID;
80
- }
81
- isAncestor(originalFrameID, resultFrameID) {
82
- return this.getSeqDown(resultFrameID, originalFrameID).includes(originalFrameID);
83
- }
84
- isDescendant(originalFrameID, resultFrameID) {
85
- return this.getSeqDown(originalFrameID, resultFrameID).includes(resultFrameID);
86
- }
87
- }
88
- exports.LocalTransformTree = LocalTransformTree;
package/utils/misc.d.ts DELETED
@@ -1,17 +0,0 @@
1
- export declare class FrameID extends String {
2
- }
3
- export declare enum Seq {
4
- XZX = 0,
5
- XYX = 1,
6
- YXY = 2,
7
- YZY = 3,
8
- ZYZ = 4,
9
- ZXZ = 5,
10
- XZY = 6,
11
- XYZ = 7,
12
- YXZ = 8,
13
- YZX = 9,
14
- ZYX = 10,
15
- ZXY = 11,
16
- NUM = 12
17
- }
package/utils/misc.js DELETED
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Seq = exports.FrameID = void 0;
4
- class FrameID extends String {
5
- }
6
- exports.FrameID = FrameID;
7
- // Seq type for EulerAngles
8
- var Seq;
9
- (function (Seq) {
10
- Seq[Seq["XZX"] = 0] = "XZX";
11
- Seq[Seq["XYX"] = 1] = "XYX";
12
- Seq[Seq["YXY"] = 2] = "YXY";
13
- Seq[Seq["YZY"] = 3] = "YZY";
14
- Seq[Seq["ZYZ"] = 4] = "ZYZ";
15
- Seq[Seq["ZXZ"] = 5] = "ZXZ";
16
- Seq[Seq["XZY"] = 6] = "XZY";
17
- Seq[Seq["XYZ"] = 7] = "XYZ";
18
- Seq[Seq["YXZ"] = 8] = "YXZ";
19
- Seq[Seq["YZX"] = 9] = "YZX";
20
- Seq[Seq["ZYX"] = 10] = "ZYX";
21
- Seq[Seq["ZXY"] = 11] = "ZXY";
22
- Seq[Seq["NUM"] = 12] = "NUM";
23
- })(Seq = exports.Seq || (exports.Seq = {}));
@@ -1,13 +0,0 @@
1
- import { FrameID } from './misc';
2
- import { LocalTransformTree } from './localtransformtree';
3
- export declare class PositionVector {
4
- elements: number[][];
5
- constructor(elements: number[][]);
6
- X(): number;
7
- Y(): number;
8
- Z(): number;
9
- magnitude(): number;
10
- unitVector(): PositionVector;
11
- Multiply(mB: PositionVector): PositionVector;
12
- ToFrame(tree: LocalTransformTree, thisID: FrameID, thatID: FrameID): PositionVector;
13
- }
@@ -1,79 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PositionVector = void 0;
4
- // PositionVector is a 3X1 matrix that contains a vector
5
- class PositionVector {
6
- constructor(elements) {
7
- this.elements = elements;
8
- }
9
- X() { return this.elements[0][0]; }
10
- Y() { return this.elements[1][0]; }
11
- Z() { return this.elements[2][0]; }
12
- // magnitude returns the magnitude of the vector
13
- magnitude() {
14
- var vec = this.elements;
15
- var sum = 0;
16
- for (var i = 0; i < vec.length; i++) {
17
- sum += vec[i][0] ** 2;
18
- }
19
- return sum ** 0.5;
20
- }
21
- // unitVector returns the unit vector of the vector
22
- unitVector() {
23
- var mag = this.magnitude();
24
- var e = this.elements;
25
- return new PositionVector([[e[0][0] / mag], [e[1][0] / mag], [e[2][0] / mag]]);
26
- }
27
- // Multiply multipies with a given matrix
28
- Multiply(mB) {
29
- var matrixA = this.elements;
30
- if (mB instanceof PositionVector) {
31
- var e = mB.elements;
32
- var matrixB = [[e[0][0]], [e[1][0]], [e[2][0]], [1]];
33
- }
34
- else {
35
- throw "Error occurred";
36
- }
37
- var aNumRows = matrixA.length, aNumCols = matrixA[0].length, bNumCols = matrixB[0].length, m = new Array(aNumRows);
38
- for (var r = 0; r < aNumRows; ++r) {
39
- m[r] = new Array(bNumCols);
40
- for (var c = 0; c < bNumCols; ++c) {
41
- m[r][c] = 0;
42
- for (var i = 0; i < aNumCols; ++i) {
43
- m[r][c] += matrixA[r][i] * matrixB[i][c];
44
- }
45
- }
46
- }
47
- var rows = m.length;
48
- var cols = m[0].length;
49
- if (rows == 3 && cols == 1) {
50
- return new PositionVector([[m[0][0]], [m[1][0]], [m[2][0]]]);
51
- }
52
- else {
53
- throw "Error occurred";
54
- }
55
- }
56
- // ToFrame converts the position vector to the specified frame
57
- ToFrame(tree, thisID, thatID) {
58
- var frame1 = tree.getFrame(thisID);
59
- var frame2 = tree.getFrame(thatID);
60
- // Return vector if already in terms of frame
61
- if (frame1.ID() == frame2.ID()) {
62
- return this;
63
- }
64
- // find transformation matrix
65
- var totalTransformationMatrix = frame1.ToFrame(tree, frame2.ID());
66
- var e = this.elements;
67
- // Find new position vector relative to frame 2
68
- var newPosVec = totalTransformationMatrix.Multiply(new PositionVector([[e[0][0]], [e[1][0]], [e[2][0]]]));
69
- // console.log("newPosVec")
70
- // console.log(newPosVec)
71
- if (newPosVec instanceof PositionVector) {
72
- return new PositionVector([[newPosVec.elements[0][0]], [newPosVec.elements[1][0]], [newPosVec.elements[2][0]]]);
73
- }
74
- else {
75
- throw "Error occured";
76
- }
77
- }
78
- }
79
- exports.PositionVector = PositionVector;
@@ -1,20 +0,0 @@
1
- import { FrameID } from './misc';
2
- import { LocalTransformTree } from './localtransformtree';
3
- import { RotationMatrix } from './rotationmatrix';
4
- import { EulerAngles } from './eulerangles';
5
- export declare class Quaternion {
6
- x: number;
7
- y: number;
8
- z: number;
9
- w: number;
10
- constructor(x: number, y: number, z: number, w: number);
11
- X(): number;
12
- Y(): number;
13
- Z(): number;
14
- W(): number;
15
- ToRotm(): RotationMatrix;
16
- ToEul(): EulerAngles;
17
- ToQuat(): Quaternion;
18
- ToAxAng(): import("./axisangle").AxisAngle;
19
- ToFrame(tree: LocalTransformTree, thisID: FrameID, thatID: FrameID): Quaternion;
20
- }
@@ -1,62 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Quaternion = void 0;
4
- const misc_1 = require("./misc");
5
- const helperfunctions_1 = require("./helperfunctions");
6
- const rotationmatrix_1 = require("./rotationmatrix");
7
- const eulerangles_1 = require("./eulerangles");
8
- const mathjs_1 = require("mathjs");
9
- // Quaternion contains the quaternion representation
10
- class Quaternion {
11
- constructor(x, y, z, w) {
12
- this.x = x;
13
- this.y = y;
14
- this.z = z;
15
- this.w = w;
16
- }
17
- X() { return this.x; }
18
- Y() { return this.y; }
19
- Z() { return this.z; }
20
- W() { return this.w; }
21
- // ToRotm returns the RotationMatrix representation of the rotation
22
- ToRotm() {
23
- return new rotationmatrix_1.RotationMatrix([[1 - 2 * this.y ** 2 - 2 * this.z ** 2, 2 * this.x * this.y - 2 * this.z * this.w, 2 * this.x * this.z + 2 * this.y * this.w],
24
- [2 * this.x * this.y + 2 * this.z * this.w, 1 - 2 * this.x ** 2 - 2 * this.z ** 2, 2 * this.y * this.z - 2 * this.x * this.w],
25
- [2 * this.x * this.z - 2 * this.y * this.w, 2 * this.y * this.z + 2 * this.x * this.w, 1 - 2 * this.x ** 2 - 2 * this.y ** 2]]);
26
- }
27
- // ToEul returns the EulerAngles representation of the rotation
28
- ToEul() {
29
- var angles = new eulerangles_1.EulerAngles(0, 0, 0, misc_1.Seq.ZYX);
30
- // roll (x-axis rotation)
31
- var sinr_cosp = 2 * (this.w * this.x + this.y * this.z);
32
- var cosr_cosp = 1 - 2 * (this.x * this.x + this.y * this.y);
33
- angles.gamma = mathjs_1.atan2(sinr_cosp, cosr_cosp);
34
- // pitch (y-axis rotation)
35
- var sinp = 2 * (this.w * this.y - this.z * this.x);
36
- if (mathjs_1.abs(sinp) >= 1)
37
- angles.beta = helperfunctions_1.copysign(mathjs_1.pi / 2, sinp); // use 90 degrees if out of range
38
- else
39
- angles.beta = mathjs_1.asin(sinp);
40
- // yaw (z-axis rotation)
41
- var siny_cosp = 2 * (this.w * this.z + this.x * this.y);
42
- var cosy_cosp = 1 - 2 * (this.y * this.y + this.z * this.z);
43
- angles.alpha = mathjs_1.atan2(siny_cosp, cosy_cosp);
44
- return angles;
45
- }
46
- // ToQuat returns the Quaternion representation of the rotation
47
- ToQuat() {
48
- return this;
49
- }
50
- // ToAxAng returns the AxisAngle representation of the rotation
51
- ToAxAng() {
52
- var rotm = this.ToRotm();
53
- return rotm.ToAxAng();
54
- }
55
- // ToFrame returns the quaternion relative to the new specified frame
56
- ToFrame(tree, thisID, thatID) {
57
- var rotm = this.ToRotm();
58
- var newRotm = rotm.ToFrame(tree, thisID, thatID);
59
- return newRotm.ToQuat();
60
- }
61
- }
62
- exports.Quaternion = Quaternion;
@@ -1,23 +0,0 @@
1
- import { FrameID } from './misc';
2
- import { LocalTransformTree } from './localtransformtree';
3
- import { PositionVector } from './positionvector';
4
- import { Vector3 } from './vector3';
5
- import { EulerAngles } from './eulerangles';
6
- import { Quaternion } from './quaternion';
7
- import { AxisAngle } from './axisangle';
8
- export declare class RotationMatrix {
9
- elements: number[][];
10
- constructor(elements: number[][]);
11
- Col1(): Vector3;
12
- Col2(): Vector3;
13
- Col3(): Vector3;
14
- Row1(): Vector3;
15
- Row2(): Vector3;
16
- Row3(): Vector3;
17
- Multiply(mB: RotationMatrix | PositionVector): RotationMatrix | PositionVector;
18
- ToRotm(): RotationMatrix;
19
- ToEul(): EulerAngles;
20
- ToQuat(): Quaternion;
21
- ToAxAng(): AxisAngle;
22
- ToFrame(tree: LocalTransformTree, thisID: FrameID, thatID: FrameID): RotationMatrix;
23
- }