@wandelbots/nova-js 4.10.0 → 4.11.0-nova-api-dev.26-9-0-dev-8

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/dist/v2/index.mjs CHANGED
@@ -3,7 +3,7 @@ import { i as guardedPageReload, n as loginWithAuth0, o as availableStorage, s a
3
3
  import { a as parseNovaInstanceUrl } from "../converters-DnG1fX23.mjs";
4
4
  import globalAxios, { AxiosError, isAxiosError } from "axios";
5
5
  import * as pathToRegexp from "path-to-regexp";
6
- //#region node_modules/.pnpm/@wandelbots+nova-api@26.7.0/node_modules/@wandelbots/nova-api/dist/v2/index.js
6
+ //#region node_modules/.pnpm/@wandelbots+nova-api@26.9.0-dev.8/node_modules/@wandelbots/nova-api/dist/v2/index.js
7
7
  var v2_exports = /* @__PURE__ */ __exportAll({
8
8
  AbbControllerKindEnum: () => AbbControllerKindEnum,
9
9
  ActionChunkRequestMessageTypeEnum: () => ActionChunkRequestMessageTypeEnum,
@@ -4892,7 +4892,7 @@ const LicenseApiFactory = function(configuration, basePath, axios) {
4892
4892
  */
4893
4893
  var LicenseApi = class extends BaseAPI {
4894
4894
  /**
4895
- * **Required permissions:** `can_manage_license` - Manage license configuration ___ Activates a license using the provided license owner authentication token. The refresh token is used to enable communication with the license provider without requiring user interaction.
4895
+ * **Required permissions:** `can_manage_license` - Manage license configuration ___ Activates a license, either directly using a license key or using the provided license owner authentication token. The refresh token is used to enable communication with the license provider without requiring user interaction.
4896
4896
  * @summary Activate license
4897
4897
  * @param {ActivateLicenseRequest} activateLicenseRequest
4898
4898
  * @param {*} [options] Override http request option.
@@ -5118,7 +5118,7 @@ var MotionGroupApi = class extends BaseAPI {
5118
5118
  */
5119
5119
  const MotionGroupModelsApiAxiosParamCreator = function(configuration) {
5120
5120
  return {
5121
- copyMotionGroupModel: async (motionGroupModel, copyMotionGroupModelRequest, options = {}) => {
5121
+ copyMotionGroupModel: async (motionGroupModel, copyMotionGroupModelRequest, serialNumber, options = {}) => {
5122
5122
  assertParamExists("copyMotionGroupModel", "motionGroupModel", motionGroupModel);
5123
5123
  assertParamExists("copyMotionGroupModel", "copyMotionGroupModelRequest", copyMotionGroupModelRequest);
5124
5124
  const localVarPath = `/experimental/motion-group-models/{motion-group-model}/archive`.replace("{motion-group-model}", encodeURIComponent(String(motionGroupModel)));
@@ -5133,6 +5133,7 @@ const MotionGroupModelsApiAxiosParamCreator = function(configuration) {
5133
5133
  const localVarHeaderParameter = {};
5134
5134
  const localVarQueryParameter = {};
5135
5135
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
5136
+ if (serialNumber !== void 0) localVarQueryParameter["serial_number"] = serialNumber;
5136
5137
  localVarHeaderParameter["Content-Type"] = "application/json";
5137
5138
  localVarHeaderParameter["Accept"] = "application/json";
5138
5139
  setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -5148,7 +5149,7 @@ const MotionGroupModelsApiAxiosParamCreator = function(configuration) {
5148
5149
  options: localVarRequestOptions
5149
5150
  };
5150
5151
  },
5151
- deleteExperimentalMotionGroupModel: async (motionGroupModel, options = {}) => {
5152
+ deleteExperimentalMotionGroupModel: async (motionGroupModel, serialNumber, options = {}) => {
5152
5153
  assertParamExists("deleteExperimentalMotionGroupModel", "motionGroupModel", motionGroupModel);
5153
5154
  const localVarPath = `/experimental/motion-group-models/{motion-group-model}/archive`.replace("{motion-group-model}", encodeURIComponent(String(motionGroupModel)));
5154
5155
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -5162,6 +5163,7 @@ const MotionGroupModelsApiAxiosParamCreator = function(configuration) {
5162
5163
  const localVarHeaderParameter = {};
5163
5164
  const localVarQueryParameter = {};
5164
5165
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
5166
+ if (serialNumber !== void 0) localVarQueryParameter["serial_number"] = serialNumber;
5165
5167
  setSearchParams(localVarUrlObj, localVarQueryParameter);
5166
5168
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
5167
5169
  localVarRequestOptions.headers = {
@@ -5174,7 +5176,7 @@ const MotionGroupModelsApiAxiosParamCreator = function(configuration) {
5174
5176
  options: localVarRequestOptions
5175
5177
  };
5176
5178
  },
5177
- exportMotionGroupModel: async (motionGroupModel, options = {}) => {
5179
+ exportMotionGroupModel: async (motionGroupModel, serialNumber, options = {}) => {
5178
5180
  assertParamExists("exportMotionGroupModel", "motionGroupModel", motionGroupModel);
5179
5181
  const localVarPath = `/experimental/motion-group-models/{motion-group-model}/archive`.replace("{motion-group-model}", encodeURIComponent(String(motionGroupModel)));
5180
5182
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -5188,6 +5190,7 @@ const MotionGroupModelsApiAxiosParamCreator = function(configuration) {
5188
5190
  const localVarHeaderParameter = {};
5189
5191
  const localVarQueryParameter = {};
5190
5192
  await setBearerAuthToObject(localVarHeaderParameter, configuration);
5193
+ if (serialNumber !== void 0) localVarQueryParameter["serial_number"] = serialNumber;
5191
5194
  localVarHeaderParameter["Accept"] = "application/gzip";
5192
5195
  setSearchParams(localVarUrlObj, localVarQueryParameter);
5193
5196
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -5503,20 +5506,20 @@ const MotionGroupModelsApiAxiosParamCreator = function(configuration) {
5503
5506
  const MotionGroupModelsApiFp = function(configuration) {
5504
5507
  const localVarAxiosParamCreator = MotionGroupModelsApiAxiosParamCreator(configuration);
5505
5508
  return {
5506
- async copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, options) {
5507
- const localVarAxiosArgs = await localVarAxiosParamCreator.copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, options);
5509
+ async copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, serialNumber, options) {
5510
+ const localVarAxiosArgs = await localVarAxiosParamCreator.copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, serialNumber, options);
5508
5511
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
5509
5512
  const localVarOperationServerBasePath = operationServerMap["MotionGroupModelsApi.copyMotionGroupModel"]?.[localVarOperationServerIndex]?.url;
5510
5513
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
5511
5514
  },
5512
- async deleteExperimentalMotionGroupModel(motionGroupModel, options) {
5513
- const localVarAxiosArgs = await localVarAxiosParamCreator.deleteExperimentalMotionGroupModel(motionGroupModel, options);
5515
+ async deleteExperimentalMotionGroupModel(motionGroupModel, serialNumber, options) {
5516
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteExperimentalMotionGroupModel(motionGroupModel, serialNumber, options);
5514
5517
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
5515
5518
  const localVarOperationServerBasePath = operationServerMap["MotionGroupModelsApi.deleteExperimentalMotionGroupModel"]?.[localVarOperationServerIndex]?.url;
5516
5519
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
5517
5520
  },
5518
- async exportMotionGroupModel(motionGroupModel, options) {
5519
- const localVarAxiosArgs = await localVarAxiosParamCreator.exportMotionGroupModel(motionGroupModel, options);
5521
+ async exportMotionGroupModel(motionGroupModel, serialNumber, options) {
5522
+ const localVarAxiosArgs = await localVarAxiosParamCreator.exportMotionGroupModel(motionGroupModel, serialNumber, options);
5520
5523
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
5521
5524
  const localVarOperationServerBasePath = operationServerMap["MotionGroupModelsApi.exportMotionGroupModel"]?.[localVarOperationServerIndex]?.url;
5522
5525
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -5595,14 +5598,14 @@ const MotionGroupModelsApiFp = function(configuration) {
5595
5598
  const MotionGroupModelsApiFactory = function(configuration, basePath, axios) {
5596
5599
  const localVarFp = MotionGroupModelsApiFp(configuration);
5597
5600
  return {
5598
- copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, options) {
5599
- return localVarFp.copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, options).then((request) => request(axios, basePath));
5601
+ copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, serialNumber, options) {
5602
+ return localVarFp.copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, serialNumber, options).then((request) => request(axios, basePath));
5600
5603
  },
5601
- deleteExperimentalMotionGroupModel(motionGroupModel, options) {
5602
- return localVarFp.deleteExperimentalMotionGroupModel(motionGroupModel, options).then((request) => request(axios, basePath));
5604
+ deleteExperimentalMotionGroupModel(motionGroupModel, serialNumber, options) {
5605
+ return localVarFp.deleteExperimentalMotionGroupModel(motionGroupModel, serialNumber, options).then((request) => request(axios, basePath));
5603
5606
  },
5604
- exportMotionGroupModel(motionGroupModel, options) {
5605
- return localVarFp.exportMotionGroupModel(motionGroupModel, options).then((request) => request(axios, basePath));
5607
+ exportMotionGroupModel(motionGroupModel, serialNumber, options) {
5608
+ return localVarFp.exportMotionGroupModel(motionGroupModel, serialNumber, options).then((request) => request(axios, basePath));
5606
5609
  },
5607
5610
  getConfigurationForMotionGroup(motionGroupModel, options) {
5608
5611
  return localVarFp.getConfigurationForMotionGroup(motionGroupModel, options).then((request) => request(axios, basePath));
@@ -5648,31 +5651,34 @@ var MotionGroupModelsApi = class extends BaseAPI {
5648
5651
  * @summary Copy Motion Group Model
5649
5652
  * @param {string} motionGroupModel Unique identifier for the model of a motion group, e.g., `UniversalRobots_UR10e`. Get the `model` of a configured motion group with [getOptimizerConfiguration](#/operations/getOptimizerConfiguration).
5650
5653
  * @param {CopyMotionGroupModelRequest} copyMotionGroupModelRequest
5654
+ * @param {string} [serialNumber] Serial number of the robot, optional. If provided, the motion group data is resolved for the robot with this specific serial number.
5651
5655
  * @param {*} [options] Override http request option.
5652
5656
  * @throws {RequiredError}
5653
5657
  */
5654
- copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, options) {
5655
- return MotionGroupModelsApiFp(this.configuration).copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, options).then((request) => request(this.axios, this.basePath));
5658
+ copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, serialNumber, options) {
5659
+ return MotionGroupModelsApiFp(this.configuration).copyMotionGroupModel(motionGroupModel, copyMotionGroupModelRequest, serialNumber, options).then((request) => request(this.axios, this.basePath));
5656
5660
  }
5657
5661
  /**
5658
5662
  * **Required permissions:** `can_access_system` - View system status and metadata ___ Deletes a custom motion group model. Only custom models, where `is_custom` is `true`, can be deleted. Built-in base models cannot be removed.
5659
5663
  * @summary Delete Motion Group Model
5660
5664
  * @param {string} motionGroupModel Unique identifier for the model of a motion group, e.g., `UniversalRobots_UR10e`. Get the `model` of a configured motion group with [getOptimizerConfiguration](#/operations/getOptimizerConfiguration).
5665
+ * @param {string} [serialNumber] Serial number of the robot, optional. If provided, the motion group data is resolved for the robot with this specific serial number.
5661
5666
  * @param {*} [options] Override http request option.
5662
5667
  * @throws {RequiredError}
5663
5668
  */
5664
- deleteExperimentalMotionGroupModel(motionGroupModel, options) {
5665
- return MotionGroupModelsApiFp(this.configuration).deleteExperimentalMotionGroupModel(motionGroupModel, options).then((request) => request(this.axios, this.basePath));
5669
+ deleteExperimentalMotionGroupModel(motionGroupModel, serialNumber, options) {
5670
+ return MotionGroupModelsApiFp(this.configuration).deleteExperimentalMotionGroupModel(motionGroupModel, serialNumber, options).then((request) => request(this.axios, this.basePath));
5666
5671
  }
5667
5672
  /**
5668
5673
  * **Required permissions:** `can_access_system` - View system status and metadata ___ Exports the specified motion group model as a tar.gz archive. The resulting tar.gz file can be imported on another system using the import endpoint.
5669
5674
  * @summary Export Motion Group Model
5670
5675
  * @param {string} motionGroupModel Unique identifier for the model of a motion group, e.g., `UniversalRobots_UR10e`. Get the `model` of a configured motion group with [getOptimizerConfiguration](#/operations/getOptimizerConfiguration).
5676
+ * @param {string} [serialNumber] Serial number of the robot, optional. If provided, the motion group data is resolved for the robot with this specific serial number.
5671
5677
  * @param {*} [options] Override http request option.
5672
5678
  * @throws {RequiredError}
5673
5679
  */
5674
- exportMotionGroupModel(motionGroupModel, options) {
5675
- return MotionGroupModelsApiFp(this.configuration).exportMotionGroupModel(motionGroupModel, options).then((request) => request(this.axios, this.basePath));
5680
+ exportMotionGroupModel(motionGroupModel, serialNumber, options) {
5681
+ return MotionGroupModelsApiFp(this.configuration).exportMotionGroupModel(motionGroupModel, serialNumber, options).then((request) => request(this.axios, this.basePath));
5676
5682
  }
5677
5683
  /**
5678
5684
  * **Required permissions:** `can_access_system` - View system status and metadata ___ Get a robot configuration containing the specified motion group model. This endpoint is designed for Virtual Robot to dynamically add motion groups by model name without needing to know the robot configuration name. Returns the full GCI transcript along with the motion group UID that corresponds to the requested motion group model.
@@ -5754,7 +5760,7 @@ var MotionGroupModelsApi = class extends BaseAPI {
5754
5760
  return MotionGroupModelsApiFp(this.configuration).getMotionGroupModels(options).then((request) => request(this.axios, this.basePath));
5755
5761
  }
5756
5762
  /**
5757
- * **Required permissions:** `can_access_system` - View system status and metadata ___ Returns the catalog of all motion groups with their motion group names and readable names.
5763
+ * **Required permissions:** `can_access_system` - View system status and metadata ___ Returns the catalog of all motion groups with their motion group names, readable names, and (if known) serial numbers.
5758
5764
  * @summary Motion Group Model Catalog
5759
5765
  * @param {*} [options] Override http request option.
5760
5766
  * @throws {RequiredError}
@@ -7915,6 +7921,31 @@ const SystemApiAxiosParamCreator = function(configuration) {
7915
7921
  options: localVarRequestOptions
7916
7922
  };
7917
7923
  },
7924
+ getSystemFeatures: async (options = {}) => {
7925
+ const localVarUrlObj = new URL(`/system/features`, DUMMY_BASE_URL);
7926
+ let baseOptions;
7927
+ if (configuration) baseOptions = configuration.baseOptions;
7928
+ const localVarRequestOptions = {
7929
+ method: "GET",
7930
+ ...baseOptions,
7931
+ ...options
7932
+ };
7933
+ const localVarHeaderParameter = {};
7934
+ const localVarQueryParameter = {};
7935
+ await setBearerAuthToObject(localVarHeaderParameter, configuration);
7936
+ localVarHeaderParameter["Accept"] = "application/json";
7937
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
7938
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
7939
+ localVarRequestOptions.headers = {
7940
+ ...localVarHeaderParameter,
7941
+ ...headersFromBaseOptions,
7942
+ ...options.headers
7943
+ };
7944
+ return {
7945
+ url: toPathString(localVarUrlObj),
7946
+ options: localVarRequestOptions
7947
+ };
7948
+ },
7918
7949
  getSystemStatus: async (options = {}) => {
7919
7950
  const localVarUrlObj = new URL(`/system/status`, DUMMY_BASE_URL);
7920
7951
  let baseOptions;
@@ -8096,6 +8127,12 @@ const SystemApiFp = function(configuration) {
8096
8127
  const localVarOperationServerBasePath = operationServerMap["SystemApi.getNetworkState"]?.[localVarOperationServerIndex]?.url;
8097
8128
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8098
8129
  },
8130
+ async getSystemFeatures(options) {
8131
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getSystemFeatures(options);
8132
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
8133
+ const localVarOperationServerBasePath = operationServerMap["SystemApi.getSystemFeatures"]?.[localVarOperationServerIndex]?.url;
8134
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
8135
+ },
8099
8136
  async getSystemStatus(options) {
8100
8137
  const localVarAxiosArgs = await localVarAxiosParamCreator.getSystemStatus(options);
8101
8138
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
@@ -8155,6 +8192,9 @@ const SystemApiFactory = function(configuration, basePath, axios) {
8155
8192
  getNetworkState(options) {
8156
8193
  return localVarFp.getNetworkState(options).then((request) => request(axios, basePath));
8157
8194
  },
8195
+ getSystemFeatures(options) {
8196
+ return localVarFp.getSystemFeatures(options).then((request) => request(axios, basePath));
8197
+ },
8158
8198
  getSystemStatus(options) {
8159
8199
  return localVarFp.getSystemStatus(options).then((request) => request(axios, basePath));
8160
8200
  },
@@ -8247,6 +8287,15 @@ var SystemApi = class extends BaseAPI {
8247
8287
  return SystemApiFp(this.configuration).getNetworkState(options).then((request) => request(this.axios, this.basePath));
8248
8288
  }
8249
8289
  /**
8290
+ * **Required permissions:** `can_access_system` - View system status and metadata ___ Get the features that are enabled on this Wandelbots NOVA instance. Use the response to offer only the functionality that this instance supports.
8291
+ * @summary Wandelbots NOVA features
8292
+ * @param {*} [options] Override http request option.
8293
+ * @throws {RequiredError}
8294
+ */
8295
+ getSystemFeatures(options) {
8296
+ return SystemApiFp(this.configuration).getSystemFeatures(options).then((request) => request(this.axios, this.basePath));
8297
+ }
8298
+ /**
8250
8299
  * **Required permissions:** `can_access_system` - View system status and metadata ___ Get the status of all system services.
8251
8300
  * @summary Wandelbots NOVA status
8252
8301
  * @param {*} [options] Override http request option.
@@ -8907,7 +8956,7 @@ const TrajectoryPlanningApiFactory = function(configuration, basePath, axios) {
8907
8956
  */
8908
8957
  var TrajectoryPlanningApi = class extends BaseAPI {
8909
8958
  /**
8910
- * **Required permissions:** `can_access_system` - View system status and metadata ___ <!-- theme: warning --> > **Experimental** Updates the process-wide Rerun logging configuration used by planner debug visualization. The viewer URL defaults to the rerun-gateway app from the NOVA app store. Activating logging will impact the performance of all trajectory-planning endpoints. Set `enabled=true` to turn logging on for new operations. Set `rerun_url` only if your setup diverges from the default.
8959
+ * **Required permissions:** `can_access_system` - View system status and metadata ___ <!-- theme: warning --> > **Experimental** Updates the process-wide Rerun logging configuration used by planner debug visualization. Activating logging will impact the performance of all trajectory-planning endpoints. Set `enabled=true` to turn logging on for new operations.
8911
8960
  * @summary Configure Rerun Logging
8912
8961
  * @param {string} cell Unique identifier addressing a cell in all API calls.
8913
8962
  * @param {RerunLoggingConfigurationRequest} rerunLoggingConfigurationRequest
@@ -11262,6 +11311,11 @@ var NovaAPIClient = class {
11262
11311
  };
11263
11312
  //#endregion
11264
11313
  //#region src/lib/Nova.ts
11314
+ /** Whether the page is already showing the given url, ignoring query and hash */
11315
+ function isOnUrl(url) {
11316
+ const trimSlashes = (path) => path.replace(/\/+$/, "");
11317
+ return window.location.origin === url.origin && trimSlashes(window.location.pathname) === trimSlashes(url.pathname);
11318
+ }
11265
11319
  /**
11266
11320
  *
11267
11321
  * Client for connecting to a NOVA instance and controlling robots.
@@ -11308,7 +11362,7 @@ var Nova = class {
11308
11362
  } catch (sessionError) {
11309
11363
  if (isAxiosError(sessionError) && sessionError.response?.status === 403) redirectToAccessDenied = true;
11310
11364
  }
11311
- if (redirectToAccessDenied) {
11365
+ if (redirectToAccessDenied && !isOnUrl(this.instanceUrl)) {
11312
11366
  window.location.href = this.instanceUrl.href;
11313
11367
  return new Promise(() => {});
11314
11368
  }