@dronedeploy/rocos-js-sdk 3.0.1-alpha.9 → 3.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -29
- package/cjs/IRocosSDK.d.ts +4 -3
- package/cjs/RocosSDK.d.ts +19 -7
- package/cjs/RocosSDK.js +31 -10
- package/cjs/api/streams/caller/CallerStream.js +5 -2
- package/cjs/api/streams/caller/CallerStreamNode.js +2 -1
- package/cjs/api/streams/command/CommandStream.js +5 -2
- package/cjs/api/streams/command/CommandStreamNode.js +2 -1
- package/cjs/api/streams/control/ControlStream.js +5 -2
- package/cjs/api/streams/control/ControlStreamAbstract.d.ts +1 -1
- package/cjs/api/streams/control/ControlStreamNode.js +2 -1
- package/cjs/api/streams/fileAccessor/FileAccessorStream.js +4 -1
- package/cjs/api/streams/fileAccessor/FileAccessorStreamNode.js +3 -1
- package/cjs/api/streams/search/SearchStream.js +5 -2
- package/cjs/api/streams/search/SearchStreamNode.js +2 -1
- package/cjs/api/streams/telemetry/TelemetryStream.js +4 -1
- package/cjs/api/streams/telemetry/TelemetryStreamAbstract.d.ts +1 -1
- package/cjs/api/streams/telemetry/TelemetryStreamNode.js +2 -1
- package/cjs/api/streams/webRTCSignalling/WebRTCSignallingStream.js +5 -2
- package/cjs/constants/api.d.ts +31 -15
- package/cjs/constants/api.js +35 -18
- package/cjs/helpers/cleanObject.js +4 -1
- package/cjs/helpers/getUniqueConfigKey.d.ts +6 -2
- package/cjs/helpers/getUniqueConfigKey.js +7 -2
- package/cjs/helpers/index.d.ts +1 -0
- package/cjs/helpers/index.js +1 -0
- package/cjs/helpers/kscript/Context.d.ts +34 -0
- package/cjs/helpers/kscript/Context.js +52 -0
- package/cjs/helpers/kscript/index.d.ts +1 -0
- package/cjs/helpers/kscript/index.js +27 -0
- package/cjs/helpers/kscript/kscript.d.ts +6 -0
- package/cjs/helpers/kscript/kscript.js +115 -0
- package/cjs/helpers/kscript/nodes/Identifier.d.ts +12 -0
- package/cjs/helpers/kscript/nodes/Identifier.js +20 -0
- package/cjs/helpers/kscript/nodes/Literal.d.ts +11 -0
- package/cjs/helpers/kscript/nodes/Literal.js +22 -0
- package/cjs/helpers/kscript/nodes/Node.d.ts +9 -0
- package/cjs/helpers/kscript/nodes/Node.js +15 -0
- package/cjs/helpers/kscript/nodes/Program.d.ts +11 -0
- package/cjs/helpers/kscript/nodes/Program.js +24 -0
- package/cjs/helpers/kscript/nodes/TemplateLiteral.d.ts +23 -0
- package/cjs/helpers/kscript/nodes/TemplateLiteral.js +35 -0
- package/cjs/helpers/kscript/nodes/expressions/ArrayExpression.d.ts +7 -0
- package/cjs/helpers/kscript/nodes/expressions/ArrayExpression.js +31 -0
- package/cjs/helpers/kscript/nodes/expressions/ArrowFunctionExpression.d.ts +14 -0
- package/cjs/helpers/kscript/nodes/expressions/ArrowFunctionExpression.js +40 -0
- package/cjs/helpers/kscript/nodes/expressions/BinaryExpression.d.ts +16 -0
- package/cjs/helpers/kscript/nodes/expressions/BinaryExpression.js +104 -0
- package/cjs/helpers/kscript/nodes/expressions/CallExpression.d.ts +8 -0
- package/cjs/helpers/kscript/nodes/expressions/CallExpression.js +38 -0
- package/cjs/helpers/kscript/nodes/expressions/ChainExpression.d.ts +16 -0
- package/cjs/helpers/kscript/nodes/expressions/ChainExpression.js +25 -0
- package/cjs/helpers/kscript/nodes/expressions/ConditionalExpression.d.ts +14 -0
- package/cjs/helpers/kscript/nodes/expressions/ConditionalExpression.js +30 -0
- package/cjs/helpers/kscript/nodes/expressions/ExpressionStatement.d.ts +7 -0
- package/cjs/helpers/kscript/nodes/expressions/ExpressionStatement.js +18 -0
- package/cjs/helpers/kscript/nodes/expressions/LogicalExpression.d.ts +10 -0
- package/cjs/helpers/kscript/nodes/expressions/LogicalExpression.js +47 -0
- package/cjs/helpers/kscript/nodes/expressions/MemberExpression.d.ts +44 -0
- package/cjs/helpers/kscript/nodes/expressions/MemberExpression.js +98 -0
- package/cjs/helpers/kscript/nodes/expressions/ObjectExpression.d.ts +11 -0
- package/cjs/helpers/kscript/nodes/expressions/ObjectExpression.js +59 -0
- package/cjs/helpers/kscript/nodes/expressions/UnaryExpression.d.ts +12 -0
- package/cjs/helpers/kscript/nodes/expressions/UnaryExpression.js +44 -0
- package/cjs/helpers/kscript/nodes/expressions/index.d.ts +11 -0
- package/cjs/helpers/kscript/nodes/expressions/index.js +28 -0
- package/cjs/helpers/kscript/nodes/index.d.ts +4 -0
- package/cjs/helpers/kscript/nodes/index.js +10 -0
- package/cjs/helpers/kscript/nodes/nodeTypes.d.ts +33 -0
- package/cjs/helpers/kscript/nodes/nodeTypes.js +29 -0
- package/cjs/helpers/kscript/utils.d.ts +4 -0
- package/cjs/helpers/kscript/utils.js +15 -0
- package/cjs/helpers/websandbox/connection.d.ts +2 -1
- package/cjs/helpers/websandbox/connection.js +6 -5
- package/cjs/helpers/websandbox/frame/frame.js +4 -1
- package/cjs/helpers/websandbox/frame/frame.source.js +1 -1
- package/cjs/helpers/websandbox/frame/worker/manager.d.ts +8 -4
- package/cjs/helpers/websandbox/frame/worker/manager.js +32 -14
- package/cjs/helpers/websandbox/frame/worker/worker.source.js +1 -1
- package/cjs/helpers/websandbox/sandbox.d.ts +1 -1
- package/cjs/helpers/websandbox/sandbox.js +7 -7
- package/cjs/models/IConnectedCallsign.d.ts +10 -0
- package/cjs/models/IConnectedCallsign.js +8 -0
- package/cjs/models/RocosError.d.ts +3 -0
- package/cjs/models/RocosError.js +3 -0
- package/cjs/models/ServiceEnum.d.ts +20 -17
- package/cjs/models/ServiceEnum.js +20 -17
- package/cjs/models/TelemetryStatus.d.ts +12 -0
- package/cjs/models/TelemetryStatus.js +17 -0
- package/cjs/models/Token.d.ts +2 -2
- package/cjs/models/Token.js +5 -5
- package/cjs/models/asset-storage/{AssetModelItem.d.ts → AssetItem.d.ts} +2 -0
- package/cjs/models/device-credentials/DeviceCredentials.d.ts +61 -0
- package/cjs/models/device-credentials/DeviceCredentials.js +2 -0
- package/cjs/models/graph/Position.d.ts +6 -0
- package/cjs/models/graph/Position.js +2 -0
- package/cjs/models/graph/Quaternion.d.ts +6 -0
- package/cjs/models/graph/Quaternion.js +2 -0
- package/cjs/models/graph/Vector3.d.ts +5 -0
- package/cjs/models/graph/Vector3.js +2 -0
- package/cjs/models/graph/index.d.ts +3 -0
- package/cjs/models/graph/index.js +19 -0
- package/cjs/models/index.d.ts +9 -2
- package/cjs/models/index.js +9 -2
- package/cjs/models/integrations/Location.d.ts +24 -0
- package/cjs/models/integrations/Location.js +2 -0
- package/cjs/models/integrations/PaginatedResults.d.ts +4 -0
- package/cjs/models/integrations/PaginatedResults.js +2 -0
- package/cjs/models/maps/Panorama.d.ts +12 -21
- package/cjs/models/projects/ExternalProject.d.ts +10 -0
- package/cjs/models/projects/ExternalProject.js +2 -0
- package/cjs/models/projects/NewProjectRequest.d.ts +8 -0
- package/cjs/models/projects/NewProjectRequest.js +2 -0
- package/cjs/models/target/Target.d.ts +30 -0
- package/cjs/models/target/Target.js +15 -0
- package/cjs/node/RocosSDKNode.d.ts +1 -5
- package/cjs/node/RocosSDKNode.js +9 -9
- package/cjs/services/AssetStorageService.d.ts +9 -1
- package/cjs/services/AssetStorageService.js +12 -1
- package/cjs/services/AuthService.d.ts +12 -1
- package/cjs/services/AuthService.js +25 -1
- package/cjs/services/DeviceCredentialsService.d.ts +15 -0
- package/cjs/services/DeviceCredentialsService.js +56 -0
- package/cjs/services/EnvironmentService.d.ts +34 -0
- package/cjs/services/EnvironmentService.js +56 -0
- package/cjs/services/EvaluatorService.js +1 -1
- package/cjs/services/IntegrationService.d.ts +7 -1
- package/cjs/services/IntegrationService.js +8 -0
- package/cjs/services/MapService.d.ts +18 -8
- package/cjs/services/MapService.js +37 -19
- package/cjs/services/ProfileService.d.ts +24 -0
- package/cjs/services/ProfileService.js +34 -0
- package/cjs/services/ProjectService.d.ts +7 -2
- package/cjs/services/ProjectService.js +7 -3
- package/cjs/services/RTPWebRTCService.d.ts +6 -1
- package/cjs/services/RTPWebRTCService.js +10 -2
- package/cjs/services/RobotService.d.ts +3 -1
- package/cjs/services/RobotService.js +6 -0
- package/cjs/services/SpotProvisioningService.d.ts +1 -1
- package/cjs/services/SpotProvisioningServiceNode.d.ts +1 -1
- package/cjs/services/TargetService.d.ts +17 -0
- package/cjs/services/TargetService.js +66 -0
- package/cjs/services/TelemetryService.d.ts +10 -1
- package/cjs/services/TelemetryService.js +27 -5
- package/cjs/services/WorkflowService.d.ts +18 -8
- package/cjs/services/WorkflowService.js +37 -11
- package/cjs/services/index.d.ts +11 -9
- package/cjs/services/index.js +11 -9
- package/cjs/store/RocosStore.d.ts +1 -2
- package/esm/IRocosSDK.d.ts +4 -3
- package/esm/RocosSDK.d.ts +19 -7
- package/esm/RocosSDK.js +32 -11
- package/esm/api/streams/caller/CallerStream.js +5 -2
- package/esm/api/streams/caller/CallerStreamNode.js +2 -1
- package/esm/api/streams/command/CommandStream.js +5 -2
- package/esm/api/streams/command/CommandStreamNode.js +2 -1
- package/esm/api/streams/control/ControlStream.js +5 -2
- package/esm/api/streams/control/ControlStreamAbstract.d.ts +1 -1
- package/esm/api/streams/control/ControlStreamNode.js +2 -1
- package/esm/api/streams/fileAccessor/FileAccessorStream.js +4 -1
- package/esm/api/streams/fileAccessor/FileAccessorStreamNode.js +3 -1
- package/esm/api/streams/search/SearchStream.js +5 -2
- package/esm/api/streams/search/SearchStreamNode.js +2 -1
- package/esm/api/streams/telemetry/TelemetryStream.js +4 -1
- package/esm/api/streams/telemetry/TelemetryStreamAbstract.d.ts +1 -1
- package/esm/api/streams/telemetry/TelemetryStreamNode.js +2 -1
- package/esm/api/streams/webRTCSignalling/WebRTCSignallingStream.js +5 -2
- package/esm/constants/api.d.ts +31 -15
- package/esm/constants/api.js +31 -15
- package/esm/helpers/cleanObject.js +4 -1
- package/esm/helpers/getUniqueConfigKey.d.ts +6 -2
- package/esm/helpers/getUniqueConfigKey.js +7 -2
- package/esm/helpers/index.d.ts +1 -0
- package/esm/helpers/index.js +1 -0
- package/esm/helpers/kscript/Context.d.ts +34 -0
- package/esm/helpers/kscript/Context.js +49 -0
- package/esm/helpers/kscript/index.d.ts +1 -0
- package/esm/helpers/kscript/index.js +1 -0
- package/esm/helpers/kscript/kscript.d.ts +6 -0
- package/esm/helpers/kscript/kscript.js +107 -0
- package/esm/helpers/kscript/nodes/Identifier.d.ts +12 -0
- package/esm/helpers/kscript/nodes/Identifier.js +14 -0
- package/esm/helpers/kscript/nodes/Literal.d.ts +11 -0
- package/esm/helpers/kscript/nodes/Literal.js +16 -0
- package/esm/helpers/kscript/nodes/Node.d.ts +9 -0
- package/esm/helpers/kscript/nodes/Node.js +12 -0
- package/esm/helpers/kscript/nodes/Program.d.ts +11 -0
- package/esm/helpers/kscript/nodes/Program.js +18 -0
- package/esm/helpers/kscript/nodes/TemplateLiteral.d.ts +23 -0
- package/esm/helpers/kscript/nodes/TemplateLiteral.js +29 -0
- package/esm/helpers/kscript/nodes/expressions/ArrayExpression.d.ts +7 -0
- package/esm/helpers/kscript/nodes/expressions/ArrayExpression.js +25 -0
- package/esm/helpers/kscript/nodes/expressions/ArrowFunctionExpression.d.ts +14 -0
- package/esm/helpers/kscript/nodes/expressions/ArrowFunctionExpression.js +34 -0
- package/esm/helpers/kscript/nodes/expressions/BinaryExpression.d.ts +16 -0
- package/esm/helpers/kscript/nodes/expressions/BinaryExpression.js +98 -0
- package/esm/helpers/kscript/nodes/expressions/CallExpression.d.ts +8 -0
- package/esm/helpers/kscript/nodes/expressions/CallExpression.js +32 -0
- package/esm/helpers/kscript/nodes/expressions/ChainExpression.d.ts +16 -0
- package/esm/helpers/kscript/nodes/expressions/ChainExpression.js +19 -0
- package/esm/helpers/kscript/nodes/expressions/ConditionalExpression.d.ts +14 -0
- package/esm/helpers/kscript/nodes/expressions/ConditionalExpression.js +24 -0
- package/esm/helpers/kscript/nodes/expressions/ExpressionStatement.d.ts +7 -0
- package/esm/helpers/kscript/nodes/expressions/ExpressionStatement.js +12 -0
- package/esm/helpers/kscript/nodes/expressions/LogicalExpression.d.ts +10 -0
- package/esm/helpers/kscript/nodes/expressions/LogicalExpression.js +41 -0
- package/esm/helpers/kscript/nodes/expressions/MemberExpression.d.ts +44 -0
- package/esm/helpers/kscript/nodes/expressions/MemberExpression.js +92 -0
- package/esm/helpers/kscript/nodes/expressions/ObjectExpression.d.ts +11 -0
- package/esm/helpers/kscript/nodes/expressions/ObjectExpression.js +53 -0
- package/esm/helpers/kscript/nodes/expressions/UnaryExpression.d.ts +12 -0
- package/esm/helpers/kscript/nodes/expressions/UnaryExpression.js +38 -0
- package/esm/helpers/kscript/nodes/expressions/index.d.ts +11 -0
- package/esm/helpers/kscript/nodes/expressions/index.js +11 -0
- package/esm/helpers/kscript/nodes/index.d.ts +4 -0
- package/esm/helpers/kscript/nodes/index.js +3 -0
- package/esm/helpers/kscript/nodes/nodeTypes.d.ts +33 -0
- package/esm/helpers/kscript/nodes/nodeTypes.js +24 -0
- package/esm/helpers/kscript/utils.d.ts +4 -0
- package/esm/helpers/kscript/utils.js +11 -0
- package/esm/helpers/websandbox/connection.d.ts +2 -1
- package/esm/helpers/websandbox/connection.js +6 -5
- package/esm/helpers/websandbox/frame/frame.js +4 -1
- package/esm/helpers/websandbox/frame/frame.source.js +1 -1
- package/esm/helpers/websandbox/frame/worker/manager.d.ts +8 -4
- package/esm/helpers/websandbox/frame/worker/manager.js +32 -14
- package/esm/helpers/websandbox/frame/worker/worker.source.js +1 -1
- package/esm/helpers/websandbox/sandbox.d.ts +1 -1
- package/esm/helpers/websandbox/sandbox.js +7 -7
- package/esm/models/IConnectedCallsign.d.ts +10 -0
- package/esm/models/IConnectedCallsign.js +5 -0
- package/esm/models/RocosError.d.ts +3 -0
- package/esm/models/RocosError.js +3 -0
- package/esm/models/ServiceEnum.d.ts +20 -17
- package/esm/models/ServiceEnum.js +20 -17
- package/esm/models/TelemetryStatus.d.ts +12 -0
- package/esm/models/TelemetryStatus.js +14 -0
- package/esm/models/Token.d.ts +2 -2
- package/esm/models/Token.js +5 -5
- package/esm/models/asset-storage/{AssetModelItem.d.ts → AssetItem.d.ts} +2 -0
- package/esm/models/device-credentials/DeviceCredentials.d.ts +61 -0
- package/esm/models/graph/Position.d.ts +6 -0
- package/esm/models/graph/Quaternion.d.ts +6 -0
- package/esm/models/graph/Vector3.d.ts +5 -0
- package/esm/models/graph/index.d.ts +3 -0
- package/esm/models/graph/index.js +3 -0
- package/esm/models/index.d.ts +9 -2
- package/esm/models/index.js +9 -2
- package/esm/models/integrations/Location.d.ts +24 -0
- package/esm/models/integrations/PaginatedResults.d.ts +4 -0
- package/esm/models/maps/Panorama.d.ts +12 -21
- package/esm/models/projects/ExternalProject.d.ts +10 -0
- package/esm/models/projects/NewProjectRequest.d.ts +8 -0
- package/esm/models/target/Target.d.ts +30 -0
- package/esm/models/target/Target.js +9 -0
- package/esm/node/RocosSDKNode.d.ts +1 -5
- package/esm/node/RocosSDKNode.js +10 -10
- package/esm/services/AssetStorageService.d.ts +9 -1
- package/esm/services/AssetStorageService.js +13 -2
- package/esm/services/AuthService.d.ts +12 -1
- package/esm/services/AuthService.js +25 -1
- package/esm/services/BaseServiceAbstract.js +1 -1
- package/esm/services/DeviceCredentialsService.d.ts +15 -0
- package/esm/services/DeviceCredentialsService.js +52 -0
- package/esm/services/EnvironmentService.d.ts +34 -0
- package/esm/services/EnvironmentService.js +52 -0
- package/esm/services/EvaluatorService.js +1 -1
- package/esm/services/IntegrationService.d.ts +7 -1
- package/esm/services/IntegrationService.js +10 -2
- package/esm/services/MapService.d.ts +18 -8
- package/esm/services/MapService.js +38 -20
- package/esm/services/ProfileService.d.ts +24 -0
- package/esm/services/ProfileService.js +35 -1
- package/esm/services/ProjectService.d.ts +7 -2
- package/esm/services/ProjectService.js +9 -5
- package/esm/services/RTPWebRTCService.d.ts +6 -1
- package/esm/services/RTPWebRTCService.js +10 -2
- package/esm/services/RobotService.d.ts +3 -1
- package/esm/services/RobotService.js +8 -2
- package/esm/services/SpotProvisioningService.d.ts +1 -1
- package/esm/services/SpotProvisioningServiceNode.d.ts +1 -1
- package/esm/services/TargetService.d.ts +17 -0
- package/esm/services/TargetService.js +62 -0
- package/esm/services/TelemetryService.d.ts +10 -1
- package/esm/services/TelemetryService.js +28 -6
- package/esm/services/WorkflowService.d.ts +18 -8
- package/esm/services/WorkflowService.js +38 -12
- package/esm/services/index.d.ts +11 -9
- package/esm/services/index.js +11 -9
- package/esm/store/RocosStore.d.ts +1 -2
- package/package.json +2 -2
- package/cjs/helpers/cleanObject.spec.js +0 -55
- package/cjs/helpers/flattenObject.spec.js +0 -31
- package/cjs/helpers/flattenOneOf.spec.js +0 -159
- package/cjs/helpers/formatServiceUrl.spec.js +0 -18
- package/cjs/helpers/getSha256Hex.spec.js +0 -19
- package/cjs/helpers/getSha256HexNode.spec.js +0 -10
- package/cjs/helpers/getURLSearchParams.spec.js +0 -21
- package/cjs/helpers/nanosecondToMillisecond.spec.js +0 -22
- package/cjs/helpers/splitRobotTopic.spec.js +0 -53
- package/cjs/helpers/standardDeviation.spec.d.ts +0 -1
- package/cjs/helpers/standardDeviation.spec.js +0 -13
- package/cjs/helpers/websandbox/frame/worker/manager.spec.d.ts +0 -4
- package/cjs/helpers/websandbox/frame/worker/manager.spec.js +0 -132
- package/cjs/models/CallsignStatus.d.ts +0 -6
- package/cjs/models/CallsignStatus.js +0 -10
- package/cjs/models/ExternalProject.d.ts +0 -6
- package/cjs/models/ExternalProject.js +0 -6
- package/cjs/models/Token.spec.d.ts +0 -1
- package/cjs/models/Token.spec.js +0 -110
- package/cjs/services/AuthService.spec.d.ts +0 -1
- package/cjs/services/AuthService.spec.js +0 -165
- package/cjs/services/CallerService.spec.d.ts +0 -1
- package/cjs/services/CallerService.spec.js +0 -229
- package/cjs/services/FunctionService.d.ts +0 -68
- package/cjs/services/FunctionService.js +0 -103
- package/cjs/services/PlatformTimeService.spec.d.ts +0 -1
- package/cjs/services/PlatformTimeService.spec.js +0 -182
- package/cjs/services/RTPWebRTCService.spec.d.ts +0 -4
- package/cjs/services/RTPWebRTCService.spec.js +0 -171
- package/cjs/services/TelemetryService.spec.d.ts +0 -1
- package/cjs/services/TelemetryService.spec.js +0 -39
- package/esm/helpers/cleanObject.spec.d.ts +0 -1
- package/esm/helpers/cleanObject.spec.js +0 -53
- package/esm/helpers/flattenObject.spec.d.ts +0 -1
- package/esm/helpers/flattenObject.spec.js +0 -29
- package/esm/helpers/flattenOneOf.spec.d.ts +0 -1
- package/esm/helpers/flattenOneOf.spec.js +0 -157
- package/esm/helpers/formatServiceUrl.spec.d.ts +0 -1
- package/esm/helpers/formatServiceUrl.spec.js +0 -16
- package/esm/helpers/getSha256Hex.spec.d.ts +0 -1
- package/esm/helpers/getSha256Hex.spec.js +0 -14
- package/esm/helpers/getSha256HexNode.spec.d.ts +0 -1
- package/esm/helpers/getSha256HexNode.spec.js +0 -8
- package/esm/helpers/getURLSearchParams.spec.d.ts +0 -1
- package/esm/helpers/getURLSearchParams.spec.js +0 -19
- package/esm/helpers/nanosecondToMillisecond.spec.d.ts +0 -1
- package/esm/helpers/nanosecondToMillisecond.spec.js +0 -20
- package/esm/helpers/splitRobotTopic.spec.d.ts +0 -1
- package/esm/helpers/splitRobotTopic.spec.js +0 -51
- package/esm/helpers/standardDeviation.spec.d.ts +0 -1
- package/esm/helpers/standardDeviation.spec.js +0 -11
- package/esm/helpers/websandbox/frame/worker/manager.spec.d.ts +0 -4
- package/esm/helpers/websandbox/frame/worker/manager.spec.js +0 -127
- package/esm/models/CallsignStatus.d.ts +0 -6
- package/esm/models/CallsignStatus.js +0 -7
- package/esm/models/ExternalProject.d.ts +0 -6
- package/esm/models/ExternalProject.js +0 -2
- package/esm/models/Token.spec.d.ts +0 -1
- package/esm/models/Token.spec.js +0 -108
- package/esm/models/asset-storage/AssetModelItem.js +0 -1
- package/esm/services/AuthService.spec.d.ts +0 -1
- package/esm/services/AuthService.spec.js +0 -163
- package/esm/services/CallerService.spec.d.ts +0 -1
- package/esm/services/CallerService.spec.js +0 -227
- package/esm/services/FunctionService.d.ts +0 -68
- package/esm/services/FunctionService.js +0 -99
- package/esm/services/PlatformTimeService.spec.d.ts +0 -1
- package/esm/services/PlatformTimeService.spec.js +0 -180
- package/esm/services/RTPWebRTCService.spec.d.ts +0 -4
- package/esm/services/RTPWebRTCService.spec.js +0 -169
- package/esm/services/TelemetryService.spec.d.ts +0 -1
- package/esm/services/TelemetryService.spec.js +0 -37
- /package/cjs/models/asset-storage/{AssetModelItem.js → AssetItem.js} +0 -0
- /package/{cjs/helpers/cleanObject.spec.d.ts → esm/models/asset-storage/AssetItem.js} +0 -0
- /package/{cjs/helpers/flattenObject.spec.d.ts → esm/models/device-credentials/DeviceCredentials.js} +0 -0
- /package/{cjs/helpers/flattenOneOf.spec.d.ts → esm/models/graph/Position.js} +0 -0
- /package/{cjs/helpers/formatServiceUrl.spec.d.ts → esm/models/graph/Quaternion.js} +0 -0
- /package/{cjs/helpers/getSha256Hex.spec.d.ts → esm/models/graph/Vector3.js} +0 -0
- /package/{cjs/helpers/getSha256HexNode.spec.d.ts → esm/models/integrations/Location.js} +0 -0
- /package/{cjs/helpers/getURLSearchParams.spec.d.ts → esm/models/integrations/PaginatedResults.js} +0 -0
- /package/{cjs/helpers/nanosecondToMillisecond.spec.d.ts → esm/models/projects/ExternalProject.js} +0 -0
- /package/{cjs/helpers/splitRobotTopic.spec.d.ts → esm/models/projects/NewProjectRequest.js} +0 -0
package/cjs/models/Token.d.ts
CHANGED
|
@@ -31,10 +31,10 @@ export declare class Token implements IToken {
|
|
|
31
31
|
isExpiredIn(threshold?: number, unit?: 'minutes' | 'seconds' | 'hours'): boolean;
|
|
32
32
|
isExpired(): boolean;
|
|
33
33
|
private getJWTPayload;
|
|
34
|
-
/** Decode a
|
|
34
|
+
/** Decode a base64url string.
|
|
35
35
|
*
|
|
36
36
|
* Supports both Node.js and browser environments.
|
|
37
37
|
* @private
|
|
38
38
|
*/
|
|
39
|
-
private
|
|
39
|
+
private decodeBase64URL;
|
|
40
40
|
}
|
package/cjs/models/Token.js
CHANGED
|
@@ -54,7 +54,7 @@ class Token {
|
|
|
54
54
|
throw new Error('Invalid token, too many parts');
|
|
55
55
|
}
|
|
56
56
|
const [header, payload] = parts.slice(0, 2).map((part) => {
|
|
57
|
-
return JSON.parse(this.
|
|
57
|
+
return JSON.parse(this.decodeBase64URL(part));
|
|
58
58
|
});
|
|
59
59
|
if (typeof payload !== 'object') {
|
|
60
60
|
throw new Error('Invalid token, payload must be an object');
|
|
@@ -67,16 +67,16 @@ class Token {
|
|
|
67
67
|
}
|
|
68
68
|
return payload;
|
|
69
69
|
}
|
|
70
|
-
/** Decode a
|
|
70
|
+
/** Decode a base64url string.
|
|
71
71
|
*
|
|
72
72
|
* Supports both Node.js and browser environments.
|
|
73
73
|
* @private
|
|
74
74
|
*/
|
|
75
|
-
|
|
75
|
+
decodeBase64URL(base64String) {
|
|
76
76
|
if (enviroment_1.isNode) {
|
|
77
|
-
return Buffer.from(base64String, '
|
|
77
|
+
return Buffer.from(base64String, 'base64url').toString('utf-8');
|
|
78
78
|
}
|
|
79
|
-
return atob(base64String);
|
|
79
|
+
return atob(base64String.replace(/-/g, '+').replace(/_/g, '/'));
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
exports.Token = Token;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Observation } from '../maps/Panorama';
|
|
1
2
|
export interface AssetItemModel {
|
|
2
3
|
metadata?: {
|
|
3
4
|
[key: string]: string;
|
|
@@ -11,4 +12,5 @@ export interface AssetItemModel {
|
|
|
11
12
|
}
|
|
12
13
|
export interface AssetItemWithObservationsModel extends AssetItemModel {
|
|
13
14
|
observationCount?: number;
|
|
15
|
+
observations?: Observation[];
|
|
14
16
|
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
export interface DeviceCredentials {
|
|
2
|
+
[component: string]: {
|
|
3
|
+
[system: string]: DeviceCredential;
|
|
4
|
+
};
|
|
5
|
+
}
|
|
6
|
+
export interface DeviceCredential {
|
|
7
|
+
/**
|
|
8
|
+
* Device ID or username
|
|
9
|
+
*/
|
|
10
|
+
id: string;
|
|
11
|
+
/**
|
|
12
|
+
* Device secret or password
|
|
13
|
+
*/
|
|
14
|
+
key: string;
|
|
15
|
+
}
|
|
16
|
+
export interface DeviceCredentialCreate {
|
|
17
|
+
/**
|
|
18
|
+
* Will automatically be generated if not provided
|
|
19
|
+
*/
|
|
20
|
+
id?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Will automatically be generated if not provided
|
|
23
|
+
*/
|
|
24
|
+
secret?: string;
|
|
25
|
+
/**
|
|
26
|
+
* The agent component the credentials are for e.g. dji, spot, etc.
|
|
27
|
+
*/
|
|
28
|
+
component: string;
|
|
29
|
+
/**
|
|
30
|
+
* The system the credentials are for e.g. mqtt, rtmp, etc.
|
|
31
|
+
*/
|
|
32
|
+
system: string;
|
|
33
|
+
/**
|
|
34
|
+
* Access control list for the credentials
|
|
35
|
+
*/
|
|
36
|
+
acl?: DeviceCredentialACLItem[];
|
|
37
|
+
}
|
|
38
|
+
export interface DeviceCredentialACLItem {
|
|
39
|
+
/**
|
|
40
|
+
* The resource the ACL item is for e.g. /sys/product/{device_sn}/*
|
|
41
|
+
*/
|
|
42
|
+
resource: string;
|
|
43
|
+
/**
|
|
44
|
+
* The action the ACL item is for e.g. allow, deny, ignore
|
|
45
|
+
*/
|
|
46
|
+
action: DeviceCredentialAuthAction;
|
|
47
|
+
}
|
|
48
|
+
export type DeviceCredentialAuthAction = 'allow' | 'deny' | 'ignore';
|
|
49
|
+
export interface DeviceCredentialAuth extends DeviceCredential {
|
|
50
|
+
/**
|
|
51
|
+
* The agent component the credentials are for e.g. dji, spot, etc.
|
|
52
|
+
*/
|
|
53
|
+
component: string;
|
|
54
|
+
/**
|
|
55
|
+
* The system the credentials are for e.g. mqtt, rtmp, etc.
|
|
56
|
+
*/
|
|
57
|
+
system: string;
|
|
58
|
+
}
|
|
59
|
+
export interface DeviceCredentialAuthResult {
|
|
60
|
+
result: 'allow' | 'deny';
|
|
61
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./Position"), exports);
|
|
18
|
+
__exportStar(require("./Quaternion"), exports);
|
|
19
|
+
__exportStar(require("./Vector3"), exports);
|
package/cjs/models/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './asset-storage/
|
|
1
|
+
export * from './asset-storage/AssetItem';
|
|
2
2
|
export * from './asset-storage/SyncIntegrations';
|
|
3
3
|
export * from './schedule/IScheduleInfo';
|
|
4
4
|
export * from './schedule/IScheduleAction';
|
|
@@ -30,13 +30,19 @@ export * from './stream/ITelemetryStream';
|
|
|
30
30
|
export * from './stream/IWebRTCSignallingStream';
|
|
31
31
|
export * from './integrations/Overlay';
|
|
32
32
|
export * from './integrations/Plan';
|
|
33
|
+
export * from './integrations/Location';
|
|
34
|
+
export * from './integrations/PaginatedResults';
|
|
33
35
|
export * from './maps/Map';
|
|
36
|
+
export * from './maps/Panorama';
|
|
34
37
|
export * from './projects/ProjectUser';
|
|
35
|
-
export * from './
|
|
38
|
+
export * from './projects/ExternalProject';
|
|
39
|
+
export * from './projects/NewProjectRequest';
|
|
40
|
+
export * from './target/Target';
|
|
36
41
|
export * from './ExportDataQuery';
|
|
37
42
|
export * from './HttpError';
|
|
38
43
|
export * from './IBaseService';
|
|
39
44
|
export * from './IConfigGroup';
|
|
45
|
+
export * from './IConnectedCallsign';
|
|
40
46
|
export * from './IDebugLevel';
|
|
41
47
|
export * from './IExportDataQuery';
|
|
42
48
|
export * from './IFunctionConfig';
|
|
@@ -72,6 +78,7 @@ export * from './Stream';
|
|
|
72
78
|
export * from './StreamOptions';
|
|
73
79
|
export * from './StreamSource';
|
|
74
80
|
export * from './SubscriberStatusEnum';
|
|
81
|
+
export * from './TelemetryStatus';
|
|
75
82
|
export * from './Token';
|
|
76
83
|
export * from './types';
|
|
77
84
|
export * from './Widget';
|
package/cjs/models/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./asset-storage/
|
|
17
|
+
__exportStar(require("./asset-storage/AssetItem"), exports);
|
|
18
18
|
__exportStar(require("./asset-storage/SyncIntegrations"), exports);
|
|
19
19
|
__exportStar(require("./schedule/IScheduleInfo"), exports);
|
|
20
20
|
__exportStar(require("./schedule/IScheduleAction"), exports);
|
|
@@ -46,13 +46,19 @@ __exportStar(require("./stream/ITelemetryStream"), exports);
|
|
|
46
46
|
__exportStar(require("./stream/IWebRTCSignallingStream"), exports);
|
|
47
47
|
__exportStar(require("./integrations/Overlay"), exports);
|
|
48
48
|
__exportStar(require("./integrations/Plan"), exports);
|
|
49
|
+
__exportStar(require("./integrations/Location"), exports);
|
|
50
|
+
__exportStar(require("./integrations/PaginatedResults"), exports);
|
|
49
51
|
__exportStar(require("./maps/Map"), exports);
|
|
52
|
+
__exportStar(require("./maps/Panorama"), exports);
|
|
50
53
|
__exportStar(require("./projects/ProjectUser"), exports);
|
|
51
|
-
__exportStar(require("./
|
|
54
|
+
__exportStar(require("./projects/ExternalProject"), exports);
|
|
55
|
+
__exportStar(require("./projects/NewProjectRequest"), exports);
|
|
56
|
+
__exportStar(require("./target/Target"), exports);
|
|
52
57
|
__exportStar(require("./ExportDataQuery"), exports);
|
|
53
58
|
__exportStar(require("./HttpError"), exports);
|
|
54
59
|
__exportStar(require("./IBaseService"), exports);
|
|
55
60
|
__exportStar(require("./IConfigGroup"), exports);
|
|
61
|
+
__exportStar(require("./IConnectedCallsign"), exports);
|
|
56
62
|
__exportStar(require("./IDebugLevel"), exports);
|
|
57
63
|
__exportStar(require("./IExportDataQuery"), exports);
|
|
58
64
|
__exportStar(require("./IFunctionConfig"), exports);
|
|
@@ -88,6 +94,7 @@ __exportStar(require("./Stream"), exports);
|
|
|
88
94
|
__exportStar(require("./StreamOptions"), exports);
|
|
89
95
|
__exportStar(require("./StreamSource"), exports);
|
|
90
96
|
__exportStar(require("./SubscriberStatusEnum"), exports);
|
|
97
|
+
__exportStar(require("./TelemetryStatus"), exports);
|
|
91
98
|
__exportStar(require("./Token"), exports);
|
|
92
99
|
__exportStar(require("./types"), exports);
|
|
93
100
|
__exportStar(require("./Widget"), exports);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface Location {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
level?: {
|
|
5
|
+
id: string;
|
|
6
|
+
};
|
|
7
|
+
locationType?: {
|
|
8
|
+
id: string;
|
|
9
|
+
name: string;
|
|
10
|
+
};
|
|
11
|
+
shape: {
|
|
12
|
+
coordinates: Array<{
|
|
13
|
+
lat: number;
|
|
14
|
+
lng: number;
|
|
15
|
+
}>;
|
|
16
|
+
radiusMeters?: number;
|
|
17
|
+
shapeType: string;
|
|
18
|
+
};
|
|
19
|
+
shapeStyle: {
|
|
20
|
+
fillColor: string;
|
|
21
|
+
strokeColor: string;
|
|
22
|
+
fillOpacity: number;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
@@ -1,28 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
x?: number;
|
|
5
|
-
y?: number;
|
|
6
|
-
}
|
|
7
|
-
export interface Quaternion {
|
|
8
|
-
x: number;
|
|
9
|
-
y: number;
|
|
10
|
-
z: number;
|
|
11
|
-
w: number;
|
|
12
|
-
}
|
|
13
|
-
export interface Vector3 {
|
|
14
|
-
x: number;
|
|
15
|
-
y: number;
|
|
16
|
-
z: number;
|
|
17
|
-
}
|
|
18
|
-
export interface Observation {
|
|
1
|
+
import { Position, Quaternion, Vector3 } from '../graph';
|
|
2
|
+
interface ObservationBase {
|
|
3
|
+
name: string;
|
|
19
4
|
panoramaID: string;
|
|
20
|
-
|
|
21
|
-
|
|
5
|
+
assetID?: string;
|
|
6
|
+
type?: 'asset' | 'target';
|
|
22
7
|
data?: Record<string, string>;
|
|
23
|
-
geometry
|
|
8
|
+
geometry?: Position[];
|
|
24
9
|
center?: Position;
|
|
25
10
|
}
|
|
11
|
+
export interface Observation extends ObservationBase {
|
|
12
|
+
id: string;
|
|
13
|
+
}
|
|
14
|
+
export interface CreateObservation extends ObservationBase {
|
|
15
|
+
}
|
|
26
16
|
export interface Panorama {
|
|
27
17
|
transform: {
|
|
28
18
|
parent: string;
|
|
@@ -34,3 +24,4 @@ export interface Panorama {
|
|
|
34
24
|
path: string;
|
|
35
25
|
};
|
|
36
26
|
}
|
|
27
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Quaternion } from '../graph/Quaternion';
|
|
2
|
+
import { Vector3 } from '../graph/Vector3';
|
|
3
|
+
export interface TargetBase {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
data?: Record<string, string>;
|
|
7
|
+
translation?: Vector3;
|
|
8
|
+
rotation?: Quaternion;
|
|
9
|
+
media?: TargetMedia[];
|
|
10
|
+
position?: TargetWgs84 | Vector3;
|
|
11
|
+
frame?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface TargetMedia {
|
|
14
|
+
id: string;
|
|
15
|
+
data: Record<string, string>;
|
|
16
|
+
}
|
|
17
|
+
export interface TargetWgs84 {
|
|
18
|
+
lat: number;
|
|
19
|
+
lon: number;
|
|
20
|
+
alt?: number;
|
|
21
|
+
}
|
|
22
|
+
export declare const isTargetWgs84: (position: TargetWgs84 | Vector3) => position is TargetWgs84;
|
|
23
|
+
export interface Target extends TargetBase {
|
|
24
|
+
type: 'TARGET';
|
|
25
|
+
}
|
|
26
|
+
export declare const isTarget: (target: Target | Asset) => target is Target;
|
|
27
|
+
export interface Asset extends TargetBase {
|
|
28
|
+
type: 'ASSET';
|
|
29
|
+
}
|
|
30
|
+
export declare const isAsset: (target: Target | Asset) => target is Asset;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isAsset = exports.isTarget = exports.isTargetWgs84 = void 0;
|
|
4
|
+
const isTargetWgs84 = (position) => {
|
|
5
|
+
return Boolean(position) && 'lat' in position && 'lon' in position;
|
|
6
|
+
};
|
|
7
|
+
exports.isTargetWgs84 = isTargetWgs84;
|
|
8
|
+
const isTarget = (target) => {
|
|
9
|
+
return target.type === 'TARGET';
|
|
10
|
+
};
|
|
11
|
+
exports.isTarget = isTarget;
|
|
12
|
+
const isAsset = (target) => {
|
|
13
|
+
return target.type === 'ASSET';
|
|
14
|
+
};
|
|
15
|
+
exports.isAsset = isAsset;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EvaluatorService
|
|
1
|
+
import { EvaluatorService } from '../services';
|
|
2
2
|
import { IBaseService, ServiceEnum } from '../models';
|
|
3
3
|
import { CallerServiceNode } from '../services/CallerServiceNode';
|
|
4
4
|
import { CommandServiceNode } from '../services/CommandServiceNode';
|
|
@@ -13,10 +13,6 @@ export declare class RocosSDKNode extends RocosSDK {
|
|
|
13
13
|
* Gets the telemetry service.
|
|
14
14
|
*/
|
|
15
15
|
getTelemetryService(): TelemetryServiceNode;
|
|
16
|
-
/**
|
|
17
|
-
* Gets the scheduler service.
|
|
18
|
-
*/
|
|
19
|
-
getSchedulerService(): ScheduleService;
|
|
20
16
|
/**
|
|
21
17
|
* Gets the service call service.
|
|
22
18
|
*/
|
package/cjs/node/RocosSDKNode.js
CHANGED
|
@@ -27,6 +27,9 @@ class RocosSDKNode extends RocosSDK_1.RocosSDK {
|
|
|
27
27
|
case models_1.ServiceEnum.ROBOT:
|
|
28
28
|
this.services[name] = new services_1.RobotService(config);
|
|
29
29
|
break;
|
|
30
|
+
case models_1.ServiceEnum.ENVIRONMENT:
|
|
31
|
+
this.services[name] = new services_1.EnvironmentService(config);
|
|
32
|
+
break;
|
|
30
33
|
case models_1.ServiceEnum.EVENT:
|
|
31
34
|
this.services[name] = new services_1.EventService(config);
|
|
32
35
|
break;
|
|
@@ -51,9 +54,6 @@ class RocosSDKNode extends RocosSDK_1.RocosSDK {
|
|
|
51
54
|
case models_1.ServiceEnum.DASHBOARD:
|
|
52
55
|
this.services[name] = new services_1.DashboardService(config);
|
|
53
56
|
break;
|
|
54
|
-
case models_1.ServiceEnum.FUNCTION:
|
|
55
|
-
this.services[name] = new services_1.FunctionService(config);
|
|
56
|
-
break;
|
|
57
57
|
case models_1.ServiceEnum.STREAM:
|
|
58
58
|
this.services[name] = new services_1.StreamService(config);
|
|
59
59
|
break;
|
|
@@ -84,6 +84,12 @@ class RocosSDKNode extends RocosSDK_1.RocosSDK {
|
|
|
84
84
|
case models_1.ServiceEnum.MAP:
|
|
85
85
|
this.services[name] = new services_1.MapService(config);
|
|
86
86
|
break;
|
|
87
|
+
case models_1.ServiceEnum.DEVICE_CREDENTIALS:
|
|
88
|
+
this.services[name] = new services_1.DeviceCredentialsService(config);
|
|
89
|
+
break;
|
|
90
|
+
case models_1.ServiceEnum.TARGET:
|
|
91
|
+
this.services[name] = new services_1.TargetService(config);
|
|
92
|
+
break;
|
|
87
93
|
}
|
|
88
94
|
}
|
|
89
95
|
this.logger.debug(`Found service ${name}.`);
|
|
@@ -95,12 +101,6 @@ class RocosSDKNode extends RocosSDK_1.RocosSDK {
|
|
|
95
101
|
getTelemetryService() {
|
|
96
102
|
return this.getService(models_1.ServiceEnum.TELEMETRY);
|
|
97
103
|
}
|
|
98
|
-
/**
|
|
99
|
-
* Gets the scheduler service.
|
|
100
|
-
*/
|
|
101
|
-
getSchedulerService() {
|
|
102
|
-
return this.getService(models_1.ServiceEnum.SCHEDULE);
|
|
103
|
-
}
|
|
104
104
|
/**
|
|
105
105
|
* Gets the service call service.
|
|
106
106
|
*/
|
|
@@ -75,8 +75,16 @@ export declare class AssetStorageService extends BaseServiceAbstract implements
|
|
|
75
75
|
* @param projectId
|
|
76
76
|
* @param start Start date for the query (optional)
|
|
77
77
|
* @param end End date for the query (optional)
|
|
78
|
+
* @param includeObservations If observations should be included in the response (optional)
|
|
78
79
|
*/
|
|
79
|
-
listMappedAssets(projectId: string, start?: Date, end?: Date): Promise<AssetItemWithObservationsModel[]>;
|
|
80
|
+
listMappedAssets(projectId: string, start?: Date, end?: Date, includeObservations?: boolean): Promise<AssetItemWithObservationsModel[]>;
|
|
81
|
+
/**
|
|
82
|
+
* Get mapped asset
|
|
83
|
+
*
|
|
84
|
+
* @param projectId
|
|
85
|
+
* @param assetId
|
|
86
|
+
*/
|
|
87
|
+
getMappedAsset(projectId: string, assetId: string): Promise<AssetItemWithObservationsModel>;
|
|
80
88
|
/**
|
|
81
89
|
* Set Robot Sync Definitions
|
|
82
90
|
* @param projectId
|
|
@@ -127,13 +127,24 @@ class AssetStorageService extends BaseServiceAbstract_1.BaseServiceAbstract {
|
|
|
127
127
|
* @param projectId
|
|
128
128
|
* @param start Start date for the query (optional)
|
|
129
129
|
* @param end End date for the query (optional)
|
|
130
|
+
* @param includeObservations If observations should be included in the response (optional)
|
|
130
131
|
*/
|
|
131
|
-
async listMappedAssets(projectId, start, end) {
|
|
132
|
+
async listMappedAssets(projectId, start, end, includeObservations) {
|
|
132
133
|
return this.callGet((0, formatServiceUrl_1.formatServiceUrl)(api_1.API_PROJECT_MAPPED_ASSETS_PATH_URL, { url: this.config.url, projectId }, this.config.insecure), `Failed to list mapped assets for ${projectId}.`, {
|
|
133
134
|
start: start?.toISOString() ?? '',
|
|
134
135
|
end: end?.toISOString() ?? '',
|
|
136
|
+
includeObservations: includeObservations ? 'true' : 'false',
|
|
135
137
|
});
|
|
136
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Get mapped asset
|
|
141
|
+
*
|
|
142
|
+
* @param projectId
|
|
143
|
+
* @param assetId
|
|
144
|
+
*/
|
|
145
|
+
async getMappedAsset(projectId, assetId) {
|
|
146
|
+
return this.callGet((0, formatServiceUrl_1.formatServiceUrl)(api_1.API_PROJECT_MAPPED_ASSET_PATH_URL, { url: this.config.url, projectId, assetId }, this.config.insecure), `Failed to get mapped asset for ${projectId} and id: ${assetId}.`);
|
|
147
|
+
}
|
|
137
148
|
/**
|
|
138
149
|
* Set Robot Sync Definitions
|
|
139
150
|
* @param projectId
|
|
@@ -1,10 +1,20 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
1
2
|
import { IBaseService, IRocosSDKConfig, RocosError, Token } from '../models';
|
|
2
3
|
import { BaseServiceAbstract } from './BaseServiceAbstract';
|
|
3
4
|
export declare class AuthService extends BaseServiceAbstract implements IBaseService {
|
|
4
5
|
protected config: IRocosSDKConfig;
|
|
5
6
|
private token?;
|
|
6
7
|
private tokenRefreshTimeoutId?;
|
|
8
|
+
private tokenSubject$;
|
|
7
9
|
constructor(config: IRocosSDKConfig);
|
|
10
|
+
/** Observable for token updates
|
|
11
|
+
*
|
|
12
|
+
* This is useful for getting notified when the token changes.
|
|
13
|
+
* i.e. when the token is refreshed from the token refresh checker.
|
|
14
|
+
*
|
|
15
|
+
* It will emit the current token when you subscribe and then emit new tokens when they are set.
|
|
16
|
+
*/
|
|
17
|
+
get token$(): Observable<Token>;
|
|
8
18
|
getStatus(): boolean;
|
|
9
19
|
teardown(): void;
|
|
10
20
|
protected getError(e: RocosError): RocosError;
|
|
@@ -62,9 +72,10 @@ export declare class AuthService extends BaseServiceAbstract implements IBaseSer
|
|
|
62
72
|
* If you want to refresh the token regardless of the expiry time, use `refreshToken`.
|
|
63
73
|
*
|
|
64
74
|
* @param minutes the number of minutes before the token expires to refresh the token
|
|
75
|
+
* @returns true if the token was refreshed
|
|
65
76
|
* @see refreshToken
|
|
66
77
|
*/
|
|
67
|
-
refreshTokenIfExpired(minutes: number): Promise<
|
|
78
|
+
refreshTokenIfExpired(minutes: number): Promise<boolean>;
|
|
68
79
|
/** Start a 5-minute loop to check if the token needs to be refreshed
|
|
69
80
|
*
|
|
70
81
|
* This is useful when you are using GRPC services (i.e. telemetry) which does not automatically refresh the token.
|
|
@@ -2,21 +2,37 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AuthService = void 0;
|
|
4
4
|
const api_1 = require("../constants/api");
|
|
5
|
+
const rxjs_1 = require("rxjs");
|
|
5
6
|
const models_1 = require("../models");
|
|
6
7
|
const BaseServiceAbstract_1 = require("./BaseServiceAbstract");
|
|
7
8
|
const RocosLogger_1 = require("../logger/RocosLogger");
|
|
8
9
|
const RocosStore_1 = require("../store/RocosStore");
|
|
10
|
+
const operators_1 = require("rxjs/operators");
|
|
9
11
|
const formatServiceUrl_1 = require("../helpers/formatServiceUrl");
|
|
10
12
|
const auth_1 = require("../constants/auth");
|
|
11
13
|
class AuthService extends BaseServiceAbstract_1.BaseServiceAbstract {
|
|
12
14
|
constructor(config) {
|
|
13
15
|
super(config);
|
|
14
16
|
this.config = config;
|
|
17
|
+
this.tokenSubject$ = new rxjs_1.BehaviorSubject(null);
|
|
15
18
|
this.config = config;
|
|
16
19
|
this.logger = RocosLogger_1.RocosLogger.getInstance(`AuthService(${this.config.url})`);
|
|
17
20
|
if (this.config.token) {
|
|
18
21
|
this.setToken(this.config.token);
|
|
19
22
|
}
|
|
23
|
+
this.token$.subscribe((token) => {
|
|
24
|
+
RocosStore_1.RocosStore.getChangeSubject().next({ type: 'token', url: this.config.url, data: token.value });
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
/** Observable for token updates
|
|
28
|
+
*
|
|
29
|
+
* This is useful for getting notified when the token changes.
|
|
30
|
+
* i.e. when the token is refreshed from the token refresh checker.
|
|
31
|
+
*
|
|
32
|
+
* It will emit the current token when you subscribe and then emit new tokens when they are set.
|
|
33
|
+
*/
|
|
34
|
+
get token$() {
|
|
35
|
+
return this.tokenSubject$.asObservable().pipe((0, operators_1.filter)(Boolean));
|
|
20
36
|
}
|
|
21
37
|
getStatus() {
|
|
22
38
|
return true;
|
|
@@ -42,7 +58,12 @@ class AuthService extends BaseServiceAbstract_1.BaseServiceAbstract {
|
|
|
42
58
|
}
|
|
43
59
|
this.config.token = this.token.value;
|
|
44
60
|
// output a message for token change
|
|
45
|
-
|
|
61
|
+
if (this.isTokenValid(this.token)) {
|
|
62
|
+
this.tokenSubject$.next(this.token);
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
void this.getToken();
|
|
66
|
+
}
|
|
46
67
|
}
|
|
47
68
|
/**
|
|
48
69
|
* Clear token
|
|
@@ -166,6 +187,7 @@ class AuthService extends BaseServiceAbstract_1.BaseServiceAbstract {
|
|
|
166
187
|
* If you want to refresh the token regardless of the expiry time, use `refreshToken`.
|
|
167
188
|
*
|
|
168
189
|
* @param minutes the number of minutes before the token expires to refresh the token
|
|
190
|
+
* @returns true if the token was refreshed
|
|
169
191
|
* @see refreshToken
|
|
170
192
|
*/
|
|
171
193
|
async refreshTokenIfExpired(minutes) {
|
|
@@ -173,7 +195,9 @@ class AuthService extends BaseServiceAbstract_1.BaseServiceAbstract {
|
|
|
173
195
|
this.logger.info('Token expires in 15 minutes. Refreshing.');
|
|
174
196
|
const newToken = await this.refreshToken();
|
|
175
197
|
this.setToken(newToken);
|
|
198
|
+
return true;
|
|
176
199
|
}
|
|
200
|
+
return false;
|
|
177
201
|
}
|
|
178
202
|
/** Start a 5-minute loop to check if the token needs to be refreshed
|
|
179
203
|
*
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DeviceCredentialAuth, DeviceCredentialAuthResult, DeviceCredentialCreate, DeviceCredentials } from '../models/device-credentials/DeviceCredentials';
|
|
2
|
+
import { IBaseService, IRocosSDKConfig, RocosError } from '../models';
|
|
3
|
+
import { BaseServiceAbstract } from './BaseServiceAbstract';
|
|
4
|
+
/**
|
|
5
|
+
* Manage external devices authenticating with the platform
|
|
6
|
+
*/
|
|
7
|
+
export declare class DeviceCredentialsService extends BaseServiceAbstract implements IBaseService {
|
|
8
|
+
constructor(config: IRocosSDKConfig);
|
|
9
|
+
getStatus(): boolean;
|
|
10
|
+
protected getError(e: Error): RocosError;
|
|
11
|
+
list(projectId: string, callsign: string): Promise<DeviceCredentials>;
|
|
12
|
+
create(projectId: string, callsign: string, credentials: DeviceCredentialCreate, disableValidation?: boolean): Promise<DeviceCredentialCreate>;
|
|
13
|
+
delete(projectId: string, callsign: string, component: string, system: string): Promise<void>;
|
|
14
|
+
auth(credentials: DeviceCredentialAuth): Promise<DeviceCredentialAuthResult>;
|
|
15
|
+
}
|