@dronedeploy/rocos-js-sdk 3.0.30 → 3.0.31-rc1

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 (33) hide show
  1. package/cjs/api/streams/telemetry/TelemetryStream.js +1 -0
  2. package/cjs/api/streams/telemetry/TelemetryStreamConnect.d.ts +26 -0
  3. package/cjs/api/streams/telemetry/TelemetryStreamConnect.js +145 -0
  4. package/cjs/constants/api.d.ts +0 -3
  5. package/cjs/constants/api.js +2 -5
  6. package/cjs/grpc/connect/teletubby_pb.d.ts +635 -0
  7. package/cjs/grpc/connect/teletubby_pb.js +196 -0
  8. package/cjs/models/IRocosSDKConfig.d.ts +2 -0
  9. package/cjs/models/IStreamConfig.d.ts +3 -0
  10. package/cjs/models/index.d.ts +0 -1
  11. package/cjs/models/index.js +0 -1
  12. package/cjs/services/MapService.d.ts +6 -58
  13. package/cjs/services/MapService.js +4 -68
  14. package/cjs/services/TelemetryService.js +5 -0
  15. package/esm/api/streams/telemetry/TelemetryStream.js +1 -0
  16. package/esm/api/streams/telemetry/TelemetryStreamConnect.d.ts +26 -0
  17. package/esm/api/streams/telemetry/TelemetryStreamConnect.js +141 -0
  18. package/esm/constants/api.d.ts +0 -3
  19. package/esm/constants/api.js +0 -3
  20. package/esm/grpc/connect/teletubby_pb.d.ts +635 -0
  21. package/esm/grpc/connect/teletubby_pb.js +193 -0
  22. package/esm/models/IRocosSDKConfig.d.ts +2 -0
  23. package/esm/models/IStreamConfig.d.ts +3 -0
  24. package/esm/models/index.d.ts +0 -1
  25. package/esm/models/index.js +0 -1
  26. package/esm/services/MapService.d.ts +6 -58
  27. package/esm/services/MapService.js +5 -69
  28. package/esm/services/TelemetryService.js +5 -0
  29. package/package.json +4 -1
  30. package/cjs/models/maps/MapContent.d.ts +0 -26
  31. package/cjs/models/maps/MapContent.js +0 -2
  32. package/esm/models/maps/MapContent.d.ts +0 -26
  33. package/esm/models/maps/MapContent.js +0 -1
@@ -15,6 +15,7 @@ class TelemetryStream extends TelemetryStreamAbstract_1.TelemetryStreamAbstract
15
15
  const port = config.port ? `:${config.port}` : '';
16
16
  const transport = new grpcweb_transport_1.GrpcWebFetchTransport({
17
17
  baseUrl: `${protocol}://${this.url}${port}`,
18
+ format: config.grpcWebFormat,
18
19
  });
19
20
  this.client = new teletubby_pb_client_1.TelemetryGatewayClient(transport);
20
21
  }
@@ -0,0 +1,26 @@
1
+ import { ITelemetryStreamConfig } from '../../../models';
2
+ import { TelemetryAckStatus, TelemetryQueryRequest, TelemetryRequest } from '../../../grpc/teletubby_pb';
3
+ import { TelemetryStreamAbstract } from './TelemetryStreamAbstract';
4
+ /**
5
+ * Connect-protocol telemetry receive stream. Mirrors TelemetryStream (grpc-web) but uses
6
+ * @connectrpc/connect. Selected when config.transport === 'connect'.
7
+ *
8
+ * The shared TelemetryStreamAbstract is typed with the protobuf-ts message types, while the
9
+ * Connect client uses @bufbuild/protobuf types. Both serialise to identical protobuf wire
10
+ * bytes, so we bridge across the boundary with toBinary/fromBinary rather than hand-written
11
+ * field mapping. This keeps all reconnect/subscription/heartbeat logic shared and untouched.
12
+ */
13
+ export declare class TelemetryStreamConnect extends TelemetryStreamAbstract {
14
+ private client;
15
+ private abortController?;
16
+ constructor(config: ITelemetryStreamConfig);
17
+ protected stopInternal(): void;
18
+ protected registerReceiver(): () => void;
19
+ private onError;
20
+ private onEnd;
21
+ private getHeaders;
22
+ protected requestTelemetry(req: TelemetryRequest): Promise<void>;
23
+ protected requestTelemetryQuery(req: TelemetryQueryRequest): Promise<void>;
24
+ protected sendAcknowledgmentInternal(uid: string, status: TelemetryAckStatus, noRetry: boolean): boolean;
25
+ protected sendHeartbeat(): void;
26
+ }
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TelemetryStreamConnect = void 0;
4
+ const connect_1 = require("@connectrpc/connect");
5
+ const models_1 = require("../../../models");
6
+ const teletubby_pb_1 = require("../../../grpc/connect/teletubby_pb");
7
+ const teletubby_pb_2 = require("../../../grpc/teletubby_pb");
8
+ const protobuf_1 = require("@bufbuild/protobuf");
9
+ const RocosLogger_1 = require("../../../logger/RocosLogger");
10
+ const TelemetryStreamAbstract_1 = require("./TelemetryStreamAbstract");
11
+ const connect_web_1 = require("@connectrpc/connect-web");
12
+ /**
13
+ * Connect-protocol telemetry receive stream. Mirrors TelemetryStream (grpc-web) but uses
14
+ * @connectrpc/connect. Selected when config.transport === 'connect'.
15
+ *
16
+ * The shared TelemetryStreamAbstract is typed with the protobuf-ts message types, while the
17
+ * Connect client uses @bufbuild/protobuf types. Both serialise to identical protobuf wire
18
+ * bytes, so we bridge across the boundary with toBinary/fromBinary rather than hand-written
19
+ * field mapping. This keeps all reconnect/subscription/heartbeat logic shared and untouched.
20
+ */
21
+ class TelemetryStreamConnect extends TelemetryStreamAbstract_1.TelemetryStreamAbstract {
22
+ constructor(config) {
23
+ super(config);
24
+ this.logger = RocosLogger_1.RocosLogger.getInstance(`TelemetryStreamConnect(${this.identifier})`);
25
+ const protocol = config.insecure ? 'http' : 'https';
26
+ const port = config.port ? `:${config.port}` : '';
27
+ const transport = (0, connect_web_1.createConnectTransport)({
28
+ baseUrl: `${protocol}://${this.url}${port}`,
29
+ // Binary proto codec. The Connect default is JSON, which fails to decode real telemetry
30
+ // payloads containing control characters (verified against a live robot on dev) and is
31
+ // less efficient. Binary is required for correctness here.
32
+ useBinaryFormat: true,
33
+ });
34
+ this.client = (0, connect_1.createClient)(teletubby_pb_1.TelemetryGateway, transport);
35
+ }
36
+ stopInternal() {
37
+ if (this.abortController) {
38
+ this.logger.info('Starting stop stream process');
39
+ this.abortController.abort();
40
+ this.abortController = undefined;
41
+ this.logger.info('Finished stop stream process');
42
+ }
43
+ }
44
+ registerReceiver() {
45
+ this.logger.info('registerReceiver');
46
+ // Reset counter
47
+ this.receivedMessagesCount = 0;
48
+ const abortController = new AbortController();
49
+ this.abortController = abortController;
50
+ void (async () => {
51
+ try {
52
+ const stream = this.client.registerReceiver((0, protobuf_1.create)(teletubby_pb_1.RegistrationMessageSchema, {}), {
53
+ headers: this.getHeaders(this.projectId),
54
+ signal: abortController.signal,
55
+ });
56
+ for await (const msg of stream) {
57
+ // Bridge connect-es message -> protobuf-ts TelemetryMessage with a direct field map.
58
+ // (Avoids a per-message re-serialize/re-parse; created/seq are int64/uint64 -> string
59
+ // for protobuf-ts's long_type_string config.)
60
+ const ptMsg = teletubby_pb_2.TelemetryMessage.create({
61
+ source: msg.source,
62
+ callsign: msg.callsign,
63
+ payload: msg.payload,
64
+ uid: msg.uid,
65
+ created: msg.created.toString(),
66
+ seq: msg.seq.toString(),
67
+ meta: msg.meta,
68
+ });
69
+ this.onData(ptMsg, false);
70
+ }
71
+ this.onEnd(true);
72
+ }
73
+ catch (e) {
74
+ if (abortController.signal.aborted) {
75
+ this.logger.debug('registerReceiver', 'aborted');
76
+ return;
77
+ }
78
+ void this.onError(e);
79
+ this.onEnd(false);
80
+ }
81
+ })();
82
+ this.listenMessagesAndRenew();
83
+ return () => {
84
+ abortController.abort();
85
+ };
86
+ }
87
+ async onError(e) {
88
+ this.logger.error(`Telemetry Stream Error: ${e}, SubscriberId: ${this.subscriberId}`);
89
+ this.subscriberStatus = models_1.SubscriberStatusEnum.ERROR;
90
+ this.statusStream$.next(this.subscriberStatus);
91
+ }
92
+ onEnd(ok) {
93
+ this.logger.debug('registerReceiver', 'end');
94
+ if (ok) {
95
+ this.stopInternal();
96
+ this.registerReceiver();
97
+ }
98
+ }
99
+ getHeaders(projectId) {
100
+ const result = {
101
+ // Canary marker: the istio VirtualService routes only requests carrying this header to
102
+ // the Connect-Go handler (:8083), leaving existing grpc-web traffic untouched. Harmless
103
+ // when the backend does a full cutover or is hit directly. Must match the chart's
104
+ // virtualService.routes.connect.matchHeader.
105
+ 'x-tt-connect': '1',
106
+ };
107
+ if (this.token) {
108
+ result.authorization = this.token;
109
+ }
110
+ if (projectId) {
111
+ result['r-p'] = projectId;
112
+ }
113
+ return result;
114
+ }
115
+ async requestTelemetry(req) {
116
+ this.logger.debug('Sending telemetry request');
117
+ try {
118
+ const connectReq = (0, protobuf_1.fromBinary)(teletubby_pb_1.TelemetryRequestSchema, teletubby_pb_2.TelemetryRequest.toBinary(req));
119
+ await this.client.requestTelemetry(connectReq, { headers: this.getHeaders(this.projectId) });
120
+ }
121
+ catch (e) {
122
+ this.logger.error('error requestTelemetry ', e);
123
+ throw e;
124
+ }
125
+ }
126
+ async requestTelemetryQuery(req) {
127
+ this.logger.debug('Requesting telemetry with query');
128
+ try {
129
+ const connectReq = (0, protobuf_1.fromBinary)(teletubby_pb_1.TelemetryQueryRequestSchema, teletubby_pb_2.TelemetryQueryRequest.toBinary(req));
130
+ await this.client.requestTelemetryQuery(connectReq, { headers: this.getHeaders(this.projectId) });
131
+ }
132
+ catch (e) {
133
+ this.logger.error('error requestTelemetryQuery ', e);
134
+ throw e;
135
+ }
136
+ }
137
+ sendAcknowledgmentInternal(uid, status, noRetry) {
138
+ this.logger.error('Error can not send Acknowledgment on connect client', { uid, status, noRetry });
139
+ return false;
140
+ }
141
+ sendHeartbeat() {
142
+ // Server-streaming Connect has no client->server channel for heartbeats.
143
+ }
144
+ }
145
+ exports.TelemetryStreamConnect = TelemetryStreamConnect;
@@ -122,12 +122,9 @@ export declare const API_DD_INTEGRATION_ISSUES_URL = "https://{url}/projects/{pr
122
122
  export declare const API_DD_INTEGRATION_LOCATIONS_URL = "https://{url}/projects/{projectId}/dd/locations";
123
123
  export declare const API_DD_INTEGRATION_LEVELS_URL = "https://{url}/projects/{projectId}/dd/levels";
124
124
  export declare const API_GRAPHS_MAPS_URL = "https://{url}/graphs/projects/{projectId}/maps";
125
- export declare const API_GRAPHS_MAPS_NEW_URL = "https://{url}/graphs/projects/{projectId}/maps/new";
126
125
  export declare const API_GRAPHS_MAPS_DEPLOYED_URL = "https://{url}/graphs/projects/{projectId}/maps/deployed?callsign={callsign}";
127
126
  export declare const API_GRAPHS_MAPS_MERGE_URL = "https://{url}/graphs/projects/{projectId}/maps/merge";
128
127
  export declare const API_GRAPHS_MAP_ID_URL = "https://{url}/graphs/projects/{projectId}/maps/{mapId}";
129
- export declare const API_GRAPHS_MAP_CONTENT_URL = "https://{url}/graphs/projects/{projectId}/maps/{mapId}/content";
130
- export declare const API_GRAPHS_MAP_METADATA_URL = "https://{url}/graphs/projects/{projectId}/maps/{mapId}/metadata";
131
128
  export declare const API_GRAPHS_MAPS_COPY_URL = "https://{url}/graphs/projects/{projectId}/maps/{mapId}/copy";
132
129
  export declare const API_GRAPHS_MAPS_DEPLOY_URL = "https://{url}/graphs/projects/{projectId}/maps/{mapId}/deploy";
133
130
  export declare const API_GRAPHS_MAPS_GEOJSON_URL = "https://{url}/graphs/projects/{projectId}/maps/{mapId}/geojson";
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.API_PROJECT_ROBOT_EVENT_URL = exports.API_PROJECT_ROBOT_REGISTER_URL = exports.API_PROJECT_ROBOT_DEFINITION_URL = exports.API_PROJECT_ROBOT_ATTRIBUTES_URL = exports.API_PROJECT_ROBOT_ID_URL = exports.API_ACCOUNT_ROBOT_URL = exports.API_PROJECT_ROBOT_URL = exports.API_PROJECT_MAPPED_ASSET_PATH_URL = exports.API_PROJECT_MAPPED_ASSETS_PATH_URL = exports.API_PROJECT_MISSION_ASSET_PATH_URL = exports.API_PROJECT_MISSION_ASSETS_PATH_URL = exports.API_PROJECT_FLOW_ASSET_PATH_URL = exports.API_PROJECT_ROBOT_ASSET_PATH_URL = exports.API_PROJECT_ASSET_INTEGRATION_PATH_URL = exports.API_PROJECT_ASSET_INTEGRATIONS_PATH_URL = exports.API_PROJECT_ASSET_INTEGRATION_PROVIDERS_PATH_URL = exports.API_PROJECT_ASSET_PROFILES_SYNC_DEFINITION_PATH_URL = exports.API_PROJECT_ASSET_ROBOTS_SYNC_DEFINITION_PATH_URL = exports.API_PROJECT_ASSET_PATH_URL = exports.API_PROJECT_ASSET_URL = exports.API_PROJECT_USERS_URL = exports.API_PROJECT_ID_URL = exports.API_PROJECT_URL = exports.API_ACCOUNT_EXTERNAL_PROJECTS_URL = exports.API_ACCOUNT_PROJECT_APPLICATION_ID_URL = exports.API_ACCOUNT_PROJECT_APPLICATION_URL = exports.API_ACCOUNT_PROJECT_USER_ID_URL = exports.API_ACCOUNT_PROJECT_USER_URL = exports.API_ACCOUNT_PROJECT_ID_URL = exports.API_ACCOUNT_PROJECT_URL = exports.API_SERVER_TIME_URL = exports.API_ACCOUNT_SETTINGS_URL = exports.API_AUTH_USER_ACCOUNT_USER_ID_URL = exports.API_AUTH_USER_ACCOUNT_USER_URL = exports.API_ACCOUNT_ACTIVATE_URL = exports.API_ACCOUNT_ID_URL = exports.API_ACCOUNT_URL = exports.API_USER_PAT_TOKEN_URL = exports.API_USER_PAT_URL = exports.API_USER_VERIFY_EMAIL_URL = exports.API_USER_INVITATION_CHECK_URL = exports.API_USER_INVITATION_ACCEPT_URL = exports.API_USER_INVITATION_URL = exports.API_USER_PASSWORD_FORGOT_URL = exports.API_OTP_AUTH_URL = exports.API_OTP_URL = exports.API_USER_TOKEN_URL = exports.API_USER_URL = exports.API_ADMIN_USER_INVITATION_URL = exports.API_APPLICATION_AUTH_URL = void 0;
4
4
  exports.API_PROJECT_STREAM_DATA_URL = exports.API_PROJECT_STREAM_ID_URL = exports.API_PROJECT_STREAM_URL = exports.API_PROJECT_GROUP_TYPE_OWNER_OVERRIDE_URL = exports.API_PROJECT_GROUP_TYPE_OWNER_ID_URL = exports.API_PROJECT_GROUP_TYPE_VERSION_URL = exports.API_PROJECT_GROUP_TYPE_CONFIG_URL = exports.API_PROJECT_GROUP_TYPE_PUBLISH_URL = exports.API_PROJECT_GROUP_TYPE_ID_URL = exports.API_PROJECT_GROUP_TYPE_URL = exports.API_PROJECT_ENVIRONMENT_URL = exports.API_PROJECT_DEFINITION_LIBRARY = exports.API_PROJECT_DEFINITION_IMPORT_LIBRARY = exports.API_PROJECT_DEFINITION_IMPORT = exports.API_PROJECT_DEFINITION_EXPORT = exports.API_PROJECT_DEFINITION_GAMEPAD_URL = exports.API_PROJECT_DEFINITION_TRIGGER_URL = exports.API_PROJECT_DEFINITION_BUTTON_URL = exports.API_PROJECT_DEFINITION_ACTION_URL = exports.API_PROJECT_DEFINITION_EVENT_URL = exports.API_PROJECT_DEFINITION_COMMAND2_URL = exports.API_PROJECT_DEFINITION_COMMAND_URL = exports.API_PROJECT_DEFINITION_AGENT_URL = exports.API_PROJECT_DEFINITION_SETTING_URL = exports.API_PROJECT_DEFINITION_BLOB_URL = exports.API_PROJECT_DEFINITION_DASHBOARD_URL = exports.API_PROJECT_DEFINITION_COPY_URL = exports.API_PROJECT_DEFINITION_STREAM_URL = exports.API_PROJECT_DEFINITION_ID_URL = exports.API_PROJECT_DEFINITION_URL = exports.API_PROJECT_VROBOT_DEPLOY_URL = exports.API_PROJECT_VROBOT_DETAILS_URL = exports.API_PROJECT_COLLECTION_DOCS_URL = exports.API_PROJECT_COLLECTION_ID_URL = exports.API_PROJECT_DASHBOARD_CUSTOM_WIDGET_URL = exports.API_PROJECT_DASHBOARD_WIDGET_URL = exports.API_PROJECT_DASHBOARD_ID_URL = exports.API_PROJECT_DASHBOARD_URL = exports.API_PROJECT_OPERATION_ID_URL = exports.API_PROJECT_OPERATION_URL = exports.API_PROJECT_ROBOT_CONFIGS_CONNECTION_URL = exports.API_PROJECT_ROBOT_CONFIGS_CONNECTIONS_URL = exports.API_PROJECT_ROBOT_GAMEPAD_URL = exports.API_PROJECT_ROBOT_TRIGGER_URL = exports.API_PROJECT_ROBOT_BUTTON_URL = exports.API_PROJECT_ROBOT_COMMAND2_URL = exports.API_PROJECT_ROBOT_COMMAND_URL = exports.API_PROJECT_ROBOT_AGENT_URL = exports.API_PROJECT_ROBOT_SETTING_URL = exports.API_PROJECT_ROBOT_EVENT_HISTORY_URL = void 0;
5
- exports.API_PROJECT_ROBOT_DEPLOYED_WORKFLOW_URL = exports.API_PROJECT_PROFILE_DEPLOYED_WORKFLOW_URL = exports.API_PROJECT_ROBOT_NO_PROFILE_DEPLOYMENTS_URL = exports.API_PROJECT_PROFILE_DEPLOYMENTS_URL = exports.API_PROJECT_ROBOT_DEPLOYMENTS_URL = exports.API_PROJECT_WORKFLOW_ASSET_ID_URL = exports.API_PROJECT_WORKFLOW_ASSET_URL = exports.API_PROJECT_WORKFLOW_ID_URL = exports.API_PROJECT_WORKFLOW_URL = exports.API_GRAPHS_ASSETS_URL = exports.API_GRAPHS_ASSETS_UPLOAD_URL = exports.API_GRAPHS_TARGETS_URL = exports.API_GRAPHS_TARGET_UPLOAD_URL = exports.API_GRAPHS_OBSERVATION_KEYS_URL = exports.API_GRAPHS_OBSERVATIONS_URL = exports.API_GRAPHS_PANORAMA_OBSERVATIONS_URL = exports.API_GRAPHS_PANORAMA = exports.API_GRAPHS_MAPS_GEOJSON_URL = exports.API_GRAPHS_MAPS_DEPLOY_URL = exports.API_GRAPHS_MAPS_COPY_URL = exports.API_GRAPHS_MAP_METADATA_URL = exports.API_GRAPHS_MAP_CONTENT_URL = exports.API_GRAPHS_MAP_ID_URL = exports.API_GRAPHS_MAPS_MERGE_URL = exports.API_GRAPHS_MAPS_DEPLOYED_URL = exports.API_GRAPHS_MAPS_NEW_URL = exports.API_GRAPHS_MAPS_URL = exports.API_DD_INTEGRATION_LEVELS_URL = exports.API_DD_INTEGRATION_LOCATIONS_URL = exports.API_DD_INTEGRATION_ISSUES_URL = exports.API_DD_INTEGRATION_OVERLAYS_URL = exports.API_DD_INTEGRATION_PLAN_BY_ID_URL = exports.API_DD_INTEGRATION_PLANS_URL = exports.API_SPOTTY_URL = exports.API_PROJECT_SCHEDULES_URL = exports.API_SOURCE_ID_URL = exports.API_SOURCE_URL = exports.API_SOURCE_SCHEMA_URL = exports.API_TEMPLATE_EXPORTER_URL = exports.API_TEMPLATE_PROVISION_ID_URL = exports.API_TEMPLATE_PROVISION_URL = exports.API_TEMPLATE_DEPLOY_URL = exports.API_PROJECT_PROFILE_DASHBOARD_CUSTOM_WIDGET_URL = exports.API_PROJECT_PROFILE_DASHBOARD_ID_URL = exports.API_PROJECT_PROFILE_DASHBOARD_URL = exports.API_PROJECT_CALLSIGN_STREAM_URL = exports.API_PROJECT_ROBOT_DASHBOARD_CUSTOM_WIDGET_URL = exports.API_PROJECT_ROBOT_DASHBOARD_ID_URL = exports.API_PROJECT_ROBOT_DASHBOARD_URL = exports.API_PROJECT_STREAM_CALLSIGN_URL = void 0;
6
- exports.API_PROJECT_ROBOT_TAG_URL = exports.API_PROJECT_PROFILE_TAG_URL = exports.API_PROJECT_PROFILE_TAGS_URL = exports.API_PROJECT_TAG_ROBOTS_URL = exports.API_PROJECT_ROBOT_TAGS_URL = exports.API_DEVICE_CREDENTIALS_AUTH_URL = exports.API_DEVICE_CREDENTIALS_URL = exports.API_LINKED_PROJECT_URL = exports.API_PROJECT_WORKFLOW_IMPORT_URL = exports.API_PROJECT_WORKFLOW_EXPORT_URL = exports.API_PROJECT_WORKFLOW_AFFECTED_URL = void 0;
5
+ exports.API_PROJECT_WORKFLOW_IMPORT_URL = exports.API_PROJECT_WORKFLOW_EXPORT_URL = exports.API_PROJECT_WORKFLOW_AFFECTED_URL = exports.API_PROJECT_ROBOT_DEPLOYED_WORKFLOW_URL = exports.API_PROJECT_PROFILE_DEPLOYED_WORKFLOW_URL = exports.API_PROJECT_ROBOT_NO_PROFILE_DEPLOYMENTS_URL = exports.API_PROJECT_PROFILE_DEPLOYMENTS_URL = exports.API_PROJECT_ROBOT_DEPLOYMENTS_URL = exports.API_PROJECT_WORKFLOW_ASSET_ID_URL = exports.API_PROJECT_WORKFLOW_ASSET_URL = exports.API_PROJECT_WORKFLOW_ID_URL = exports.API_PROJECT_WORKFLOW_URL = exports.API_GRAPHS_ASSETS_URL = exports.API_GRAPHS_ASSETS_UPLOAD_URL = exports.API_GRAPHS_TARGETS_URL = exports.API_GRAPHS_TARGET_UPLOAD_URL = exports.API_GRAPHS_OBSERVATION_KEYS_URL = exports.API_GRAPHS_OBSERVATIONS_URL = exports.API_GRAPHS_PANORAMA_OBSERVATIONS_URL = exports.API_GRAPHS_PANORAMA = exports.API_GRAPHS_MAPS_GEOJSON_URL = exports.API_GRAPHS_MAPS_DEPLOY_URL = exports.API_GRAPHS_MAPS_COPY_URL = exports.API_GRAPHS_MAP_ID_URL = exports.API_GRAPHS_MAPS_MERGE_URL = exports.API_GRAPHS_MAPS_DEPLOYED_URL = exports.API_GRAPHS_MAPS_URL = exports.API_DD_INTEGRATION_LEVELS_URL = exports.API_DD_INTEGRATION_LOCATIONS_URL = exports.API_DD_INTEGRATION_ISSUES_URL = exports.API_DD_INTEGRATION_OVERLAYS_URL = exports.API_DD_INTEGRATION_PLAN_BY_ID_URL = exports.API_DD_INTEGRATION_PLANS_URL = exports.API_SPOTTY_URL = exports.API_PROJECT_SCHEDULES_URL = exports.API_SOURCE_ID_URL = exports.API_SOURCE_URL = exports.API_SOURCE_SCHEMA_URL = exports.API_TEMPLATE_EXPORTER_URL = exports.API_TEMPLATE_PROVISION_ID_URL = exports.API_TEMPLATE_PROVISION_URL = exports.API_TEMPLATE_DEPLOY_URL = exports.API_PROJECT_PROFILE_DASHBOARD_CUSTOM_WIDGET_URL = exports.API_PROJECT_PROFILE_DASHBOARD_ID_URL = exports.API_PROJECT_PROFILE_DASHBOARD_URL = exports.API_PROJECT_CALLSIGN_STREAM_URL = exports.API_PROJECT_ROBOT_DASHBOARD_CUSTOM_WIDGET_URL = exports.API_PROJECT_ROBOT_DASHBOARD_ID_URL = exports.API_PROJECT_ROBOT_DASHBOARD_URL = exports.API_PROJECT_STREAM_CALLSIGN_URL = void 0;
6
+ exports.API_PROJECT_ROBOT_TAG_URL = exports.API_PROJECT_PROFILE_TAG_URL = exports.API_PROJECT_PROFILE_TAGS_URL = exports.API_PROJECT_TAG_ROBOTS_URL = exports.API_PROJECT_ROBOT_TAGS_URL = exports.API_DEVICE_CREDENTIALS_AUTH_URL = exports.API_DEVICE_CREDENTIALS_URL = exports.API_LINKED_PROJECT_URL = void 0;
7
7
  exports.API_APPLICATION_AUTH_URL = 'https://{url}/applications/auth';
8
8
  exports.API_ADMIN_USER_INVITATION_URL = 'https://{url}/admin/users/invitations';
9
9
  exports.API_USER_URL = 'https://{url}/users';
@@ -128,12 +128,9 @@ exports.API_DD_INTEGRATION_ISSUES_URL = 'https://{url}/projects/{projectId}/dd/i
128
128
  exports.API_DD_INTEGRATION_LOCATIONS_URL = 'https://{url}/projects/{projectId}/dd/locations';
129
129
  exports.API_DD_INTEGRATION_LEVELS_URL = 'https://{url}/projects/{projectId}/dd/levels';
130
130
  exports.API_GRAPHS_MAPS_URL = 'https://{url}/graphs/projects/{projectId}/maps';
131
- exports.API_GRAPHS_MAPS_NEW_URL = 'https://{url}/graphs/projects/{projectId}/maps/new';
132
131
  exports.API_GRAPHS_MAPS_DEPLOYED_URL = 'https://{url}/graphs/projects/{projectId}/maps/deployed?callsign={callsign}';
133
132
  exports.API_GRAPHS_MAPS_MERGE_URL = 'https://{url}/graphs/projects/{projectId}/maps/merge';
134
133
  exports.API_GRAPHS_MAP_ID_URL = 'https://{url}/graphs/projects/{projectId}/maps/{mapId}';
135
- exports.API_GRAPHS_MAP_CONTENT_URL = 'https://{url}/graphs/projects/{projectId}/maps/{mapId}/content';
136
- exports.API_GRAPHS_MAP_METADATA_URL = 'https://{url}/graphs/projects/{projectId}/maps/{mapId}/metadata';
137
134
  exports.API_GRAPHS_MAPS_COPY_URL = 'https://{url}/graphs/projects/{projectId}/maps/{mapId}/copy';
138
135
  exports.API_GRAPHS_MAPS_DEPLOY_URL = 'https://{url}/graphs/projects/{projectId}/maps/{mapId}/deploy';
139
136
  exports.API_GRAPHS_MAPS_GEOJSON_URL = 'https://{url}/graphs/projects/{projectId}/maps/{mapId}/geojson';