@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,262 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RotationMatrix = void 0;
4
- const misc_1 = require("./misc");
5
- const positionvector_1 = require("./positionvector");
6
- const vector3_1 = require("./vector3");
7
- const eulerangles_1 = require("./eulerangles");
8
- const quaternion_1 = require("./quaternion");
9
- const axisangle_1 = require("./axisangle");
10
- const mathjs_1 = require("mathjs");
11
- // RotationMatrix is 3x3 matrix representing rotation
12
- class RotationMatrix {
13
- constructor(elements) {
14
- this.elements = elements;
15
- }
16
- // Col1 returns the first column of the rotation matrix
17
- Col1() {
18
- let e = this.elements;
19
- return new vector3_1.Vector3([[e[0][0]], [e[1][0]], [e[2][0]]]);
20
- }
21
- // Col2 returns the second column of the rotation matrix
22
- Col2() {
23
- let e = this.elements;
24
- return new vector3_1.Vector3([[e[0][1]], [e[1][1]], [e[2][1]]]);
25
- }
26
- // Col3 returns the third column of the rotation matrix
27
- Col3() {
28
- let e = this.elements;
29
- return new vector3_1.Vector3([[e[0][2]], [e[1][2]], [e[2][2]]]);
30
- }
31
- // Row1 returns the first row of the rotation matrix
32
- Row1() {
33
- let e = this.elements;
34
- return new vector3_1.Vector3([[e[0][0]], [e[0][1]], [e[0][2]]]);
35
- }
36
- // Row2 returns the second row of the rotation matrix
37
- Row2() {
38
- let e = this.elements;
39
- return new vector3_1.Vector3([[e[1][0]], [e[1][1]], [e[2][2]]]);
40
- }
41
- // Row3 returns the third row of the rotation matrix
42
- Row3() {
43
- let e = this.elements;
44
- return new vector3_1.Vector3([[e[2][0]], [e[2][1]], [e[2][2]]]);
45
- }
46
- // Multiply multiplies the rotation matrix with given matrix
47
- Multiply(mB) {
48
- var matrixA = this.elements;
49
- var matrixB = mB.elements;
50
- // Multiply the two matrices
51
- var aNumRows = matrixA.length, aNumCols = matrixA[0].length, bNumCols = matrixB[0].length, m = new Array(aNumRows);
52
- for (var r = 0; r < aNumRows; ++r) {
53
- m[r] = new Array(bNumCols);
54
- for (var c = 0; c < bNumCols; ++c) {
55
- m[r][c] = 0;
56
- for (var i = 0; i < aNumCols; ++i) {
57
- m[r][c] += matrixA[r][i] * matrixB[i][c];
58
- }
59
- }
60
- }
61
- var rows = m.length;
62
- var cols = m[0].length;
63
- if (rows == 3 && cols == 3) {
64
- var result = [
65
- [m[0][0], m[0][1], m[0][2]],
66
- [m[1][0], m[1][1], m[1][2]],
67
- [m[2][0], m[2][1], m[2][2]]
68
- ];
69
- return new RotationMatrix(result);
70
- }
71
- else if (rows == 3 && cols == 1) {
72
- return new positionvector_1.PositionVector([[m[0][0]], [m[1][0]], [m[2][0]]]);
73
- }
74
- else {
75
- throw "Error occurred";
76
- }
77
- }
78
- // ToRotm returns the RotationMatrix representation of the rotation
79
- ToRotm() {
80
- return this;
81
- }
82
- // ToEul returns the EulerAngles representation of the rotation
83
- ToEul() {
84
- var rotm = this.elements;
85
- var m00 = rotm[0][0];
86
- var m10 = rotm[1][0];
87
- var m20 = rotm[2][0];
88
- var m01 = rotm[0][1];
89
- //var m11 = rotm[1][1]
90
- var m21 = rotm[2][1];
91
- var m02 = rotm[0][2];
92
- //var m12 = rotm[1][2]
93
- var m22 = rotm[2][2];
94
- // https://www.gregslabaugh.net/publications/euler.pdf
95
- // X: PSI Y: THETA Z: PHI
96
- // A B G
97
- // Uncomment second variables to get second solution
98
- if (m20 != 1 && m20 != -1) {
99
- var theta1 = -mathjs_1.asin(m20);
100
- //var theta2 = pi - theta1
101
- var psi1 = mathjs_1.atan2(m21 / mathjs_1.cos(theta1), (m22 / mathjs_1.cos(theta1)));
102
- //var psi2 = atan2(m12/cos(theta2), (m22/cos(theta2)))
103
- var phi1 = mathjs_1.atan2(m10 / mathjs_1.cos(theta1), (m00 / mathjs_1.cos(theta1)));
104
- //var phi2 = atan2(m01/cos(theta2), (m00/cos(theta2)))
105
- // two possible solutions
106
- var e1 = new eulerangles_1.EulerAngles(phi1, theta1, psi1, misc_1.Seq.ZYX); // convention ZYX
107
- // var e2 = new EulerAngles(phi2, theta2, psi2, "ZYX")
108
- return e1;
109
- }
110
- else {
111
- var phi = 0; // anything
112
- if (m02 == -1) {
113
- var theta = mathjs_1.pi / 2;
114
- var psi = phi + mathjs_1.atan2(m01, m02);
115
- }
116
- else {
117
- var theta = -mathjs_1.pi / 2;
118
- var psi = phi + mathjs_1.atan2(-m01, -20);
119
- }
120
- return new eulerangles_1.EulerAngles(phi, theta, psi, misc_1.Seq.ZYX);
121
- }
122
- }
123
- // ToQuat returns the Quaternion representation of the rotation
124
- ToQuat() {
125
- var rotm = this.elements;
126
- var m00 = rotm[0][0];
127
- var m10 = rotm[1][0];
128
- var m20 = rotm[2][0];
129
- var m01 = rotm[0][1];
130
- var m11 = rotm[1][1];
131
- var m21 = rotm[2][1];
132
- var m02 = rotm[0][2];
133
- var m12 = rotm[1][2];
134
- var m22 = rotm[2][2];
135
- var t;
136
- var quat;
137
- if (m22 < 0) {
138
- if (m00 > m11) {
139
- t = 1 + m00 - m11 - m22;
140
- quat = [t, m10 + m01, m02 + m20, m21 - m12];
141
- }
142
- else {
143
- t = 1 - m00 + m11 - m22;
144
- quat = [m10 + m01, t, m21 + m12, m02 - m20];
145
- }
146
- }
147
- else {
148
- if (m00 < -m11) {
149
- t = 1 - m00 - m11 + m22;
150
- quat = [m02 + m20, m21 + m12, t, m10 - m01];
151
- }
152
- else {
153
- t = 1 + m00 + m11 + m22;
154
- quat = [m21 - m12, m02 - m20, m10 - m01, t];
155
- }
156
- }
157
- var x = quat[0];
158
- var y = quat[1];
159
- var z = quat[2];
160
- var w = quat[3];
161
- x *= 0.5 / Math.sqrt(t);
162
- y *= 0.5 / Math.sqrt(t);
163
- z *= 0.5 / Math.sqrt(t);
164
- w *= 0.5 / Math.sqrt(t);
165
- var result = new quaternion_1.Quaternion(x, y, z, w);
166
- return result;
167
- }
168
- // ToAxAng returns the AxisAngle representation of the rotation
169
- ToAxAng() {
170
- var m = this.elements;
171
- // Credit: https://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToAngle/index.htm
172
- var angle, x, y, z; // variables for result
173
- var epsilon = 0.01; // margin to allow for rounding errors
174
- var epsilon2 = 0.1; // margin to distinguish between 0 and 180 degrees
175
- if ((Math.abs(m[0][1] - m[1][0]) < epsilon)
176
- && (Math.abs(m[0][2] - m[2][0]) < epsilon)
177
- && (Math.abs(m[1][2] - m[2][1]) < epsilon)) {
178
- // singularity found
179
- // first check for identity matrix which must have +1 for all terms
180
- // in leading diagonaland zero in other terms
181
- if ((Math.abs(m[0][1] + m[1][0]) < epsilon2)
182
- && (Math.abs(m[0][2] + m[2][0]) < epsilon2)
183
- && (Math.abs(m[1][2] + m[2][1]) < epsilon2)
184
- && (Math.abs(m[0][0] + m[1][1] + m[2][2] - 3) < epsilon2)) {
185
- // this singularity is identity matrix so angle = 0
186
- return new axisangle_1.AxisAngle(new positionvector_1.PositionVector([[1], [0], [0]]), 0); // zero angle, arbitrary axis
187
- }
188
- // otherwise this singularity is angle = 180
189
- angle = mathjs_1.pi;
190
- var xx = (m[0][0] + 1) / 2;
191
- var yy = (m[1][1] + 1) / 2;
192
- var zz = (m[2][2] + 1) / 2;
193
- var xy = (m[0][1] + m[1][0]) / 4;
194
- var xz = (m[0][2] + m[2][0]) / 4;
195
- var yz = (m[1][2] + m[2][1]) / 4;
196
- if ((xx > yy) && (xx > zz)) { // m[0][0] is the largest diagonal term
197
- if (xx < epsilon) {
198
- x = 0;
199
- y = 0.70710678118;
200
- z = 0.70710678118;
201
- }
202
- else {
203
- x = xx ** 0.5;
204
- y = xy / x;
205
- z = xz / x;
206
- }
207
- }
208
- else if (yy > zz) { // m[1][1] is the largest diagonal term
209
- if (yy < epsilon) {
210
- x = 0.70710678118;
211
- y = 0;
212
- z = 0.70710678118;
213
- }
214
- else {
215
- y = yy ** 0.5;
216
- x = xy / y;
217
- z = yz / y;
218
- }
219
- }
220
- else { // m[2][2] is the largest diagonal term so base result on this
221
- if (zz < epsilon) {
222
- x = 0.70710678118;
223
- y = 0.70710678118;
224
- z = 0;
225
- }
226
- else {
227
- z = zz ** 0.5;
228
- x = xz / z;
229
- y = yz / z;
230
- }
231
- }
232
- return new axisangle_1.AxisAngle(new positionvector_1.PositionVector([[x], [y], [z]]), angle); // return 180 deg rotation
233
- }
234
- // as we have reached here there are no singularities so we can handle normally
235
- var s = ((m[2][1] - m[1][2]) * (m[2][1] - m[1][2])
236
- + (m[0][2] - m[2][0]) * (m[0][2] - m[2][0])
237
- + (m[1][0] - m[0][1]) * (m[1][0] - m[0][1])) ** 0.5; // used to normalise
238
- if (mathjs_1.abs(s) < 0.001)
239
- s = 1;
240
- // prevent divide by zero, should not happen if matrix is orthogonal and should be
241
- // caught by singularity test above, but I've left it in just in case
242
- angle = mathjs_1.acos((m[0][0] + m[1][1] + m[2][2] - 1) / 2);
243
- x = (m[2][1] - m[1][2]) / s;
244
- y = (m[0][2] - m[2][0]) / s;
245
- z = (m[1][0] - m[0][1]) / s;
246
- return new axisangle_1.AxisAngle(new positionvector_1.PositionVector([[x], [y], [z]]), angle); // return 180 deg rotation
247
- }
248
- // ToFrame returns the rotation relative to the new specified frame
249
- ToFrame(tree, thisID, thatID) {
250
- var frame1 = tree.getFrame(thisID);
251
- var frame2 = tree.getFrame(thatID);
252
- var transformationMatrix = frame1.ToFrame(tree, frame2.ID());
253
- var e = transformationMatrix.getRotation().Multiply(this);
254
- if (e instanceof RotationMatrix) {
255
- return new RotationMatrix(e.elements);
256
- }
257
- else {
258
- throw "Error occurred";
259
- }
260
- }
261
- }
262
- exports.RotationMatrix = RotationMatrix;
@@ -1,12 +0,0 @@
1
- import { FrameID } from './misc';
2
- import { LocalTransformTree } from './localtransformtree';
3
- import { PositionVector } from './positionvector';
4
- import { RotationMatrix } from './rotationmatrix';
5
- export declare class TransformationMatrix {
6
- elements: number[][];
7
- constructor(elements: number[][]);
8
- getRotation(): RotationMatrix;
9
- getPosition(): PositionVector;
10
- Multiply(mB: TransformationMatrix | RotationMatrix | PositionVector): TransformationMatrix | RotationMatrix | PositionVector;
11
- ToFrame(tree: LocalTransformTree, originalFrameID: FrameID, resultFrameID: FrameID): TransformationMatrix;
12
- }
@@ -1,123 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TransformationMatrix = void 0;
4
- const positionvector_1 = require("./positionvector");
5
- const rotationmatrix_1 = require("./rotationmatrix");
6
- const helperfunctions_1 = require("./helperfunctions");
7
- // TransformationMatrix is 4x4 transformation matrix
8
- class TransformationMatrix {
9
- constructor(elements) {
10
- this.elements = elements;
11
- }
12
- // getRotation returns the local transform's rotation matrix
13
- getRotation() {
14
- var e = this.elements;
15
- return new rotationmatrix_1.RotationMatrix([[e[0][0], e[0][1], e[0][2]],
16
- [e[1][0], e[1][1], e[1][2]],
17
- [e[2][0], e[2][1], e[2][2]]]);
18
- }
19
- // getPosition returns the local transform's position vector
20
- getPosition() {
21
- var e = this.elements;
22
- return new positionvector_1.PositionVector([[e[0][3]], [e[1][3]], [e[2][3]]]);
23
- }
24
- // Multiply multipies with a given matrix
25
- Multiply(mB) {
26
- var matrixA = this.elements;
27
- if (mB instanceof positionvector_1.PositionVector) {
28
- var e = mB.elements;
29
- var matrixB = [[e[0][0]], [e[1][0]], [e[2][0]], [1]];
30
- }
31
- else if (mB instanceof rotationmatrix_1.RotationMatrix) {
32
- var ele = mB.elements;
33
- var matrixB = [
34
- [ele[0][0], ele[0][1], ele[0][2]],
35
- [ele[1][0], ele[1][1], ele[1][2]],
36
- [ele[2][0], ele[2][1], ele[2][2]],
37
- [0, 0, 1]
38
- ];
39
- }
40
- else if (mB instanceof TransformationMatrix) {
41
- var matrixB = mB.elements;
42
- }
43
- else {
44
- throw "Error occurred";
45
- }
46
- var aNumRows = matrixA.length, aNumCols = matrixA[0].length, bNumCols = matrixB[0].length, m = new Array(aNumRows);
47
- for (var r = 0; r < aNumRows; ++r) {
48
- m[r] = new Array(bNumCols);
49
- for (var c = 0; c < bNumCols; ++c) {
50
- m[r][c] = 0;
51
- for (var i = 0; i < aNumCols; ++i) {
52
- m[r][c] += matrixA[r][i] * matrixB[i][c];
53
- }
54
- }
55
- }
56
- var rows = m.length;
57
- var cols = m[0].length;
58
- if (rows == 4 && cols == 4) {
59
- return new TransformationMatrix(m);
60
- }
61
- else if (rows == 4 && cols == 3) {
62
- var result = [
63
- [m[0][0], m[0][1], m[0][2]],
64
- [m[1][0], m[1][1], m[1][2]],
65
- [m[2][0], m[2][1], m[2][2]]
66
- ];
67
- return new rotationmatrix_1.RotationMatrix(result);
68
- }
69
- else if (rows == 4 && cols == 1) {
70
- return new positionvector_1.PositionVector([[m[0][0]], [m[1][0]], [m[2][0]]]);
71
- }
72
- else {
73
- throw "Error occurred";
74
- }
75
- }
76
- // ToFrame returns the transformation matrix relative to the new specified frame
77
- ToFrame(tree, originalFrameID, resultFrameID) {
78
- if (originalFrameID == resultFrameID) {
79
- return this;
80
- }
81
- else if (tree.isDescendant(originalFrameID, resultFrameID)) {
82
- var trans = helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(originalFrameID, resultFrameID), false);
83
- var totalTM = trans.Multiply(this);
84
- if (totalTM instanceof TransformationMatrix) {
85
- return totalTM;
86
- }
87
- else {
88
- throw "Error occurred";
89
- }
90
- }
91
- else if (tree.isAncestor(originalFrameID, resultFrameID)) {
92
- var trans = helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(resultFrameID, originalFrameID), true);
93
- var totalTM = trans.Multiply(this);
94
- if (totalTM instanceof TransformationMatrix) {
95
- return totalTM;
96
- }
97
- else {
98
- throw "Error occurred";
99
- }
100
- }
101
- else { // Frames are on different branches
102
- var commonNode = tree.getCommonFrameID(originalFrameID, resultFrameID);
103
- // Calculate the transformation matrix of each frame relative to the common node
104
- var totalTM1 = helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(originalFrameID, commonNode), false); // calculate down tree matrix
105
- var totalTM2 = helperfunctions_1.frameToFrameTransformationMatrixSeq(tree, tree.getSeqDown(resultFrameID, commonNode), true); // calculate up the tree (inverses)
106
- var totalTM = totalTM2.Multiply(totalTM1);
107
- if (totalTM instanceof TransformationMatrix) {
108
- // Apply the transformation
109
- var total = totalTM.Multiply(this);
110
- if (total instanceof TransformationMatrix) {
111
- return total;
112
- }
113
- else {
114
- throw "Erorr occurred";
115
- }
116
- }
117
- else {
118
- throw "Error occurred";
119
- }
120
- }
121
- }
122
- }
123
- exports.TransformationMatrix = TransformationMatrix;
@@ -1,11 +0,0 @@
1
- import { PositionVector } from './positionvector';
2
- export declare class Vector3 {
3
- elements: number[][];
4
- constructor(elements: number[][]);
5
- X(): number;
6
- Y(): number;
7
- Z(): number;
8
- magnitude(): number;
9
- unitVector(): Vector3;
10
- Multiply(mB: Vector3 | PositionVector): Vector3 | PositionVector;
11
- }
package/utils/vector3.js DELETED
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Vector3 = void 0;
4
- const positionvector_1 = require("./positionvector");
5
- // Vector3 is a 3X1 matrix that contains a vector
6
- class Vector3 {
7
- constructor(elements) {
8
- this.elements = elements;
9
- }
10
- X() { return this.elements[0][0]; }
11
- Y() { return this.elements[1][0]; }
12
- Z() { return this.elements[2][0]; }
13
- // magnitude returns the magnitude of the vector
14
- magnitude() {
15
- var vec = this.elements;
16
- var sum = 0;
17
- for (var i = 0; i < vec.length; i++) {
18
- sum += vec[i][0] ** 2;
19
- }
20
- return sum ** 0.5;
21
- }
22
- // unitVector returns the unit vector of the vector
23
- unitVector() {
24
- var mag = this.magnitude();
25
- var e = this.elements;
26
- return new Vector3([[e[0][0] / mag], [e[1][0] / mag], [e[2][0] / mag]]);
27
- }
28
- // Multiply multipies with a given matrix
29
- Multiply(mB) {
30
- var matrixA = this.elements;
31
- if (mB instanceof positionvector_1.PositionVector) {
32
- var e = mB.elements;
33
- var matrixB = [[e[0][0]], [e[1][0]], [e[2][0]], [1]];
34
- }
35
- else {
36
- throw "Error occurred";
37
- }
38
- var aNumRows = matrixA.length, aNumCols = matrixA[0].length, bNumCols = matrixB[0].length, m = new Array(aNumRows);
39
- for (var r = 0; r < aNumRows; ++r) {
40
- m[r] = new Array(bNumCols);
41
- for (var c = 0; c < bNumCols; ++c) {
42
- m[r][c] = 0;
43
- for (var i = 0; i < aNumCols; ++i) {
44
- m[r][c] += matrixA[r][i] * matrixB[i][c];
45
- }
46
- }
47
- }
48
- var rows = m.length;
49
- var cols = m[0].length;
50
- if (rows == 3 && cols == 1 && mB instanceof positionvector_1.PositionVector) {
51
- return new positionvector_1.PositionVector([[m[0][0]], [m[1][0]], [m[2][0]]]);
52
- }
53
- else if (rows == 3 && cols == 1 && mB instanceof Vector3) {
54
- return new positionvector_1.PositionVector([[m[0][0]], [m[1][0]], [m[2][0]]]);
55
- }
56
- else {
57
- throw "Error occurred";
58
- }
59
- }
60
- }
61
- exports.Vector3 = Vector3;