@wandelbots/wandelbots-js-react-components 4.0.1 → 4.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.
@@ -1,14 +1,13 @@
1
- import { e as Ae, j as g } from "./externalizeComponent-Dc3fViZA.js";
2
- import { useTheme as Re, Box as ce, Button as qe, Typography as Ue, Chip as De } from "@mui/material";
3
- import { observer as Te } from "mobx-react-lite";
4
- import { useTranslation as _e } from "react-i18next";
5
- import { PlayArrow as be, Stop as ye, Pause as Qe } from "@mui/icons-material";
6
- import m, { isAxiosError as He, AxiosError as Ne } from "axios";
7
- import { reaction as Ke, autorun as $e } from "mobx";
8
- import ie, { useEffect as Je } from "react";
1
+ import { e as we, j as g } from "./externalizeComponent-Dc3fViZA.js";
2
+ import { useTheme as Ae, Box as ce, Button as ke, Typography as Re, Chip as qe } from "@mui/material";
3
+ import { observer as Ue } from "mobx-react-lite";
4
+ import { useTranslation as Te } from "react-i18next";
5
+ import { PlayArrow as Se, Stop as be, Pause as De } from "@mui/icons-material";
6
+ import m, { isAxiosError as Qe, AxiosError as He } from "axios";
7
+ import ie from "react";
9
8
  var J = /* @__PURE__ */ ((e) => (e.IDLE = "idle", e.PREPARING = "preparing", e.STARTING = "starting", e.RUNNING = "running", e.PAUSING = "pausing", e.PAUSED = "paused", e.STOPPING = "stopping", e.COMPLETED = "completed", e.FAILED = "failed", e.STOPPED = "stopped", e.ERROR = "error", e))(J || {});
10
- const dr = Ae(
11
- Te(
9
+ const or = we(
10
+ Ue(
12
11
  ({
13
12
  state: e,
14
13
  onRun: t,
@@ -19,7 +18,7 @@ const dr = Ae(
19
18
  variant: a = "with_pause",
20
19
  className: l
21
20
  }) => {
22
- const c = Re(), { t: i } = _e(), p = () => {
21
+ const c = Ae(), { t: i } = Te(), p = () => {
23
22
  const v = {
24
23
  run: {
25
24
  enabled: e === "idle" || e === "stopped" || e === "paused" || e === "completed" || e === "failed" || e === "error",
@@ -45,14 +44,14 @@ const dr = Ae(
45
44
  }, d = (v) => {
46
45
  const E = { sx: { fontSize: "55px" } };
47
46
  if (a === "without_pause")
48
- return v === 0 ? /* @__PURE__ */ g.jsx(be, { ...E }) : /* @__PURE__ */ g.jsx(ye, { ...E });
47
+ return v === 0 ? /* @__PURE__ */ g.jsx(Se, { ...E }) : /* @__PURE__ */ g.jsx(be, { ...E });
49
48
  switch (v) {
50
49
  case 0:
51
- return /* @__PURE__ */ g.jsx(be, { ...E });
50
+ return /* @__PURE__ */ g.jsx(Se, { ...E });
52
51
  case 1:
53
- return /* @__PURE__ */ g.jsx(Qe, { ...E });
52
+ return /* @__PURE__ */ g.jsx(De, { ...E });
54
53
  case 2:
55
- return /* @__PURE__ */ g.jsx(ye, { ...E });
54
+ return /* @__PURE__ */ g.jsx(be, { ...E });
56
55
  default:
57
56
  return null;
58
57
  }
@@ -88,7 +87,7 @@ const dr = Ae(
88
87
  },
89
88
  children: [
90
89
  /* @__PURE__ */ g.jsx(
91
- qe,
90
+ ke,
92
91
  {
93
92
  variant: "contained",
94
93
  disabled: !v.enabled || e === "preparing" || e === "starting" || e === "pausing" || e === "stopping" && !n,
@@ -114,7 +113,7 @@ const dr = Ae(
114
113
  }
115
114
  ),
116
115
  /* @__PURE__ */ g.jsx(
117
- Ue,
116
+ Re,
118
117
  {
119
118
  variant: "body1",
120
119
  sx: {
@@ -135,15 +134,15 @@ const dr = Ae(
135
134
  );
136
135
  }
137
136
  )
138
- ), hr = Ae(
139
- Te(
137
+ ), nr = we(
138
+ Ue(
140
139
  ({
141
140
  programState: e,
142
141
  safetyState: t,
143
142
  operationMode: r,
144
143
  className: s
145
144
  }) => {
146
- const o = Re(), { t: n } = _e(), a = () => {
145
+ const o = Ae(), { t: n } = Te(), a = () => {
147
146
  if (t === "SAFETY_STATE_DEVICE_EMERGENCY_STOP" || t === "SAFETY_STATE_ROBOT_EMERGENCY_STOP" || t === "SAFETY_STATE_STOP_0" || t === "SAFETY_STATE_STOP_1" || t === "SAFETY_STATE_STOP_2" || t === "SAFETY_STATE_PROTECTIVE_STOP" || t === "SAFETY_STATE_STOP" || t === "SAFETY_STATE_REDUCED" || t === "SAFETY_STATE_MASTERING" || t === "SAFETY_STATE_CONFIRM_SAFETY" || t === "SAFETY_STATE_OPERATOR_SAFETY" || t === "SAFETY_STATE_RECOVERY" || t === "SAFETY_STATE_VIOLATION")
148
147
  return {
149
148
  label: n("ProgramStateIndicator.EStop.lb"),
@@ -232,11 +231,11 @@ const dr = Ae(
232
231
  }
233
232
  })()}`;
234
233
  return /* @__PURE__ */ g.jsx(
235
- De,
234
+ qe,
236
235
  {
237
236
  className: s,
238
237
  label: /* @__PURE__ */ g.jsx(
239
- Ue,
238
+ Re,
240
239
  {
241
240
  variant: "body2",
242
241
  sx: {
@@ -284,14 +283,14 @@ var me = function(e, t) {
284
283
  for (var o in s) s.hasOwnProperty(o) && (r[o] = s[o]);
285
284
  }, me(e, t);
286
285
  };
287
- function je(e, t) {
286
+ function _e(e, t) {
288
287
  me(e, t);
289
288
  function r() {
290
289
  this.constructor = e;
291
290
  }
292
291
  e.prototype = t === null ? Object.create(t) : (r.prototype = t.prototype, new r());
293
292
  }
294
- function ge(e) {
293
+ function Ne(e) {
295
294
  var t = typeof Symbol == "function" && e[Symbol.iterator], r = 0;
296
295
  return t ? t.call(e) : {
297
296
  next: function() {
@@ -299,7 +298,7 @@ function ge(e) {
299
298
  }
300
299
  };
301
300
  }
302
- function We(e, t) {
301
+ function Ke(e, t) {
303
302
  var r = typeof Symbol == "function" && e[Symbol.iterator];
304
303
  if (!r) return e;
305
304
  var s = r.call(e), o, n = [], a;
@@ -316,12 +315,12 @@ function We(e, t) {
316
315
  }
317
316
  return n;
318
317
  }
319
- function Ye() {
318
+ function $e() {
320
319
  for (var e = [], t = 0; t < arguments.length; t++)
321
- e = e.concat(We(arguments[t]));
320
+ e = e.concat(Ke(arguments[t]));
322
321
  return e;
323
322
  }
324
- var Ee = (
323
+ var je = (
325
324
  /** @class */
326
325
  /* @__PURE__ */ (function() {
327
326
  function e(t, r) {
@@ -329,27 +328,27 @@ var Ee = (
329
328
  }
330
329
  return e;
331
330
  })()
332
- ), ze = (
331
+ ), Je = (
333
332
  /** @class */
334
333
  (function(e) {
335
- je(t, e);
334
+ _e(t, e);
336
335
  function t(r, s) {
337
336
  var o = e.call(this, "error", s) || this;
338
337
  return o.message = r.message, o.error = r, o;
339
338
  }
340
339
  return t;
341
- })(Ee)
342
- ), Xe = (
340
+ })(je)
341
+ ), ge = (
343
342
  /** @class */
344
343
  (function(e) {
345
- je(t, e);
344
+ _e(t, e);
346
345
  function t(r, s, o) {
347
346
  r === void 0 && (r = 1e3), s === void 0 && (s = "");
348
347
  var n = e.call(this, "close", o) || this;
349
348
  return n.wasClean = !0, n.code = r, n.reason = s, n;
350
349
  }
351
350
  return t;
352
- })(Ee)
351
+ })(je)
353
352
  );
354
353
  /*!
355
354
  * Reconnecting WebSocket
@@ -357,10 +356,10 @@ var Ee = (
357
356
  * https://github.com/pladaria/reconnecting-websocket
358
357
  * License MIT
359
358
  */
360
- var Ze = function() {
359
+ var We = function() {
361
360
  if (typeof WebSocket < "u")
362
361
  return WebSocket;
363
- }, fe = function(e) {
362
+ }, Ye = function(e) {
364
363
  return typeof e < "u" && !!e && e.CLOSING === 2;
365
364
  }, z = {
366
365
  maxReconnectionDelay: 1e4,
@@ -370,7 +369,7 @@ var Ze = function() {
370
369
  connectionTimeout: 4e3,
371
370
  maxRetries: 1 / 0,
372
371
  maxEnqueuedMessages: 1 / 0
373
- }, et = (
372
+ }, ze = (
374
373
  /** @class */
375
374
  (function() {
376
375
  function e(t, r, s) {
@@ -549,7 +548,7 @@ var Ze = function() {
549
548
  var r, s, o = this._listeners[t.type];
550
549
  if (o)
551
550
  try {
552
- for (var n = ge(o), a = n.next(); !a.done; a = n.next()) {
551
+ for (var n = Ne(o), a = n.next(); !a.done; a = n.next()) {
553
552
  var l = a.value;
554
553
  this._callEventListener(t, l);
555
554
  }
@@ -570,7 +569,7 @@ var Ze = function() {
570
569
  }, e.prototype._debug = function() {
571
570
  for (var t = [], r = 0; r < arguments.length; r++)
572
571
  t[r] = arguments[r];
573
- this._options.debug && console.log.apply(console, Ye(["RWS>"], t));
572
+ this._options.debug && console.log.apply(console, $e(["RWS>"], t));
574
573
  }, e.prototype._getNextDelay = function() {
575
574
  var t = this._options, r = t.reconnectionDelayGrowFactor, s = r === void 0 ? z.reconnectionDelayGrowFactor : r, o = t.minReconnectionDelay, n = o === void 0 ? z.minReconnectionDelay : o, a = t.maxReconnectionDelay, l = a === void 0 ? z.maxReconnectionDelay : a, c = 0;
576
575
  return this._retryCount > 0 && (c = n * Math.pow(s, this._retryCount - 1), c > l && (c = l)), this._debug("next delay", c), c;
@@ -594,12 +593,12 @@ var Ze = function() {
594
593
  var t = this;
595
594
  if (!(this._connectLock || !this._shouldReconnect)) {
596
595
  this._connectLock = !0;
597
- var r = this._options, s = r.maxRetries, o = s === void 0 ? z.maxRetries : s, n = r.connectionTimeout, a = n === void 0 ? z.connectionTimeout : n, l = r.WebSocket, c = l === void 0 ? Ze() : l;
596
+ var r = this._options, s = r.maxRetries, o = s === void 0 ? z.maxRetries : s, n = r.connectionTimeout, a = n === void 0 ? z.connectionTimeout : n, l = r.WebSocket, c = l === void 0 ? We() : l;
598
597
  if (this._retryCount >= o) {
599
598
  this._debug("max retries reached", this._retryCount, ">=", o);
600
599
  return;
601
600
  }
602
- if (this._retryCount++, this._debug("connect", this._retryCount), this._removeListeners(), !fe(c))
601
+ if (this._retryCount++, this._debug("connect", this._retryCount), this._removeListeners(), !Ye(c))
603
602
  throw Error("No valid WebSocket class provided");
604
603
  this._wait().then(function() {
605
604
  return t._getNextUrl(t._url);
@@ -610,12 +609,12 @@ var Ze = function() {
610
609
  });
611
610
  }
612
611
  }, e.prototype._handleTimeout = function() {
613
- this._debug("timeout event"), this._handleError(new ze(Error("TIMEOUT"), this));
612
+ this._debug("timeout event"), this._handleError(new Je(Error("TIMEOUT"), this));
614
613
  }, e.prototype._disconnect = function(t, r) {
615
614
  if (t === void 0 && (t = 1e3), this._clearTimeouts(), !!this._ws) {
616
615
  this._removeListeners();
617
616
  try {
618
- this._ws.close(t, r), this._handleClose(new Xe(t, r, this));
617
+ this._ws.close(t, r), this._handleClose(new ge(t, r, this));
619
618
  } catch {
620
619
  }
621
620
  }
@@ -631,7 +630,7 @@ var Ze = function() {
631
630
  clearTimeout(this._connectTimeout), clearTimeout(this._uptimeTimeout);
632
631
  }, e;
633
632
  })()
634
- ), tt = class extends et {
633
+ ), Xe = class extends ze {
635
634
  constructor(e, t = {}) {
636
635
  console.log("Opening websocket to", e), super(() => this.targetUrl || e, void 0, { startClosed: !0 }), this.opts = t, this.disposed = !1, Object.defineProperty(this, "url", { get() {
637
636
  return this.targetUrl;
@@ -705,7 +704,7 @@ var Ze = function() {
705
704
  this.addEventListener("message", r), this.addEventListener("error", s);
706
705
  });
707
706
  }
708
- }, rt = class {
707
+ }, Ze = class {
709
708
  constructor() {
710
709
  this.available = typeof window < "u" && !!window.localStorage;
711
710
  }
@@ -735,21 +734,21 @@ var Ze = function() {
735
734
  return this.available ? window.localStorage.getItem(e) : null;
736
735
  }
737
736
  };
738
- const oe = new rt();
737
+ const oe = new Ze();
739
738
  function Oe(e, t = {}) {
740
739
  const { scheme: r, defaultScheme: s } = t, o = /^[a-zA-Z]+:\/\//;
741
740
  return r ? (e = e.replace(o, ""), e = `${r}://${e}`) : s && !o.test(e) && (e = `${s}://${e}`), new URL(e);
742
741
  }
743
- function st(e, t = {}) {
742
+ function fe(e, t = {}) {
744
743
  try {
745
744
  return Oe(e, t);
746
745
  } catch {
747
746
  return;
748
747
  }
749
748
  }
750
- function at(e) {
749
+ function et(e) {
751
750
  var t;
752
- return (t = st(e, { defaultScheme: "http" })) != null && t.host.endsWith(".wandelbots.io") ? Oe(e, { defaultScheme: "https" }) : Oe(e, { defaultScheme: "http" });
751
+ return (t = fe(e, { defaultScheme: "http" })) != null && t.host.endsWith(".wandelbots.io") ? Oe(e, { defaultScheme: "https" }) : Oe(e, { defaultScheme: "http" });
753
752
  }
754
753
  const pe = {
755
754
  dev: {
@@ -764,16 +763,16 @@ const pe = {
764
763
  domain: "https://auth.portal.wandelbots.io",
765
764
  clientId: "J7WJUi38xVQdJAEBNRT9Xw1b0fXDb4J2"
766
765
  }
767
- }, lt = (e) => {
766
+ }, tt = (e) => {
768
767
  if (e.host.endsWith(".dev.wandelbots.io")) return pe.dev;
769
768
  if (e.host.endsWith(".stg.wandelbots.io")) return pe.stg;
770
769
  if (e.host.endsWith(".wandelbots.io")) return pe.prod;
771
770
  throw new Error(`Unable to authenticate with NOVA instance "${e}". Auth0 login is only supported for cloud instances with hosts of the form "**.wandelbots.io".`);
772
- }, ot = async (e) => {
771
+ }, rt = async (e) => {
773
772
  if (typeof window > "u") throw new Error("Access token must be set to use NovaClient when not in a browser environment.");
774
773
  if (e.origin === window.location.origin)
775
774
  throw window.location.reload(), new Error("Failed to reload page to get auth details, please refresh manually");
776
- const { Auth0Client: t } = await import("./auth0-spa-js.production.esm-BMSlxZC5.js"), r = lt(e), s = new t({
775
+ const { Auth0Client: t } = await import("./auth0-spa-js.production.esm-BMSlxZC5.js"), r = tt(e), s = new t({
777
776
  domain: r.domain,
778
777
  clientId: r.clientId ?? "",
779
778
  useRefreshTokens: !1,
@@ -788,7 +787,7 @@ const pe = {
788
787
  } else await s.loginWithRedirect();
789
788
  return await s.getTokenSilently();
790
789
  };
791
- function nt(e) {
790
+ function st(e) {
792
791
  var t = [];
793
792
  if (e.length === 0)
794
793
  return "";
@@ -812,12 +811,12 @@ function nt(e) {
812
811
  }
813
812
  function de() {
814
813
  var e;
815
- return typeof arguments[0] == "object" ? e = arguments[0] : e = [].slice.call(arguments), nt(e);
814
+ return typeof arguments[0] == "object" ? e = arguments[0] : e = [].slice.call(arguments), st(e);
816
815
  }
817
- var K = {}, Pe;
818
- function ct() {
819
- if (Pe) return K;
820
- Pe = 1, Object.defineProperty(K, "__esModule", { value: !0 }), K.PathError = K.TokenData = void 0, K.parse = i, K.compile = p, K.match = v, K.pathToRegexp = E, K.stringify = Le;
816
+ var K = {}, ye;
817
+ function at() {
818
+ if (ye) return K;
819
+ ye = 1, Object.defineProperty(K, "__esModule", { value: !0 }), K.PathError = K.TokenData = void 0, K.parse = i, K.compile = p, K.match = v, K.pathToRegexp = E, K.stringify = Me;
821
820
  const e = "/", t = (x) => x, r = /^[$_\p{ID_Start}]$/u, s = /^[$\u200c\u200d\p{ID_Continue}]$/u, o = {
822
821
  // Groups.
823
822
  "{": "{",
@@ -979,8 +978,8 @@ function ct() {
979
978
  for (let N = 1; N < j.length; N++) {
980
979
  if (j[N] === void 0)
981
980
  continue;
982
- const Y = w[N - 1], ke = M[N - 1];
983
- F[Y.name] = ke(j[N]);
981
+ const Y = w[N - 1], Ge = M[N - 1];
982
+ F[Y.name] = Ge(j[N]);
984
983
  }
985
984
  return { path: D, params: F };
986
985
  };
@@ -990,7 +989,7 @@ function ct() {
990
989
  for (const F of W(x, [])) {
991
990
  const N = typeof F == "object" ? F : i(F, R);
992
991
  for (const Y of ee(N.tokens, 0, []))
993
- H.push(Be(Y, U, M, N.originalPath));
992
+ H.push(Ee(Y, U, M, N.originalPath));
994
993
  }
995
994
  let j = `^(?:${H.join("|")})`;
996
995
  return w && (j += `(?:${a(U)}$)?`), j += T ? "$" : `(?=${a(U)}|$)`, { regexp: new RegExp(j, B), keys: M };
@@ -1014,7 +1013,7 @@ function ct() {
1014
1013
  U.push(T);
1015
1014
  yield* ee(x, R + 1, U);
1016
1015
  }
1017
- function Be(x, R, U, T) {
1016
+ function Ee(x, R, U, T) {
1018
1017
  let A = "", w = "", M = !0;
1019
1018
  for (const B of x) {
1020
1019
  if (B.type === "text") {
@@ -1024,19 +1023,19 @@ function ct() {
1024
1023
  if (B.type === "param" || B.type === "wildcard") {
1025
1024
  if (!M && !w)
1026
1025
  throw new c(`Missing text before "${B.name}" ${B.type}`, T);
1027
- B.type === "param" ? A += `(${Me(R, M ? "" : w)}+)` : A += "([\\s\\S]+)", U.push(B), w = "", M = !1;
1026
+ B.type === "param" ? A += `(${Be(R, M ? "" : w)}+)` : A += "([\\s\\S]+)", U.push(B), w = "", M = !1;
1028
1027
  continue;
1029
1028
  }
1030
1029
  }
1031
1030
  return A;
1032
1031
  }
1033
- function Me(x, R) {
1032
+ function Be(x, R) {
1034
1033
  return R.length < 2 ? x.length < 2 ? `[^${a(x + R)}]` : `(?:(?!${a(x)})[^${a(R)}])` : x.length < 2 ? `(?:(?!${a(R)})[^${a(x)}])` : `(?:(?!${a(R)}|${a(x)})[\\s\\S])`;
1035
1034
  }
1036
- function Se(x) {
1035
+ function Ce(x) {
1037
1036
  let R = "", U = 0;
1038
1037
  function T(A) {
1039
- return Fe(A) && Ge(x[U]) ? A : JSON.stringify(A);
1038
+ return Le(A) && Fe(x[U]) ? A : JSON.stringify(A);
1040
1039
  }
1041
1040
  for (; U < x.length; ) {
1042
1041
  const A = x[U++];
@@ -1045,7 +1044,7 @@ function ct() {
1045
1044
  continue;
1046
1045
  }
1047
1046
  if (A.type === "group") {
1048
- R += `{${Se(A.tokens)}}`;
1047
+ R += `{${Ce(A.tokens)}}`;
1049
1048
  continue;
1050
1049
  }
1051
1050
  if (A.type === "param") {
@@ -1060,19 +1059,19 @@ function ct() {
1060
1059
  }
1061
1060
  return R;
1062
1061
  }
1063
- function Le(x) {
1064
- return Se(x.tokens);
1062
+ function Me(x) {
1063
+ return Ce(x.tokens);
1065
1064
  }
1066
- function Fe(x) {
1065
+ function Le(x) {
1067
1066
  const [R, ...U] = x;
1068
1067
  return r.test(R) && U.every((T) => s.test(T));
1069
1068
  }
1070
- function Ge(x) {
1069
+ function Fe(x) {
1071
1070
  return x && x.type === "text" ? !s.test(x.value[0]) : !0;
1072
1071
  }
1073
1072
  return K;
1074
1073
  }
1075
- var it = ct();
1074
+ var lt = at();
1076
1075
  function le(e) {
1077
1076
  "@babel/helpers - typeof";
1078
1077
  return le = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
@@ -1081,7 +1080,7 @@ function le(e) {
1081
1080
  return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1082
1081
  }, le(e);
1083
1082
  }
1084
- function pt(e, t) {
1083
+ function ot(e, t) {
1085
1084
  if (le(e) != "object" || !e) return e;
1086
1085
  var r = e[Symbol.toPrimitive];
1087
1086
  if (r !== void 0) {
@@ -1091,32 +1090,32 @@ function pt(e, t) {
1091
1090
  }
1092
1091
  return (t === "string" ? String : Number)(e);
1093
1092
  }
1094
- function dt(e) {
1095
- var t = pt(e, "string");
1093
+ function nt(e) {
1094
+ var t = ot(e, "string");
1096
1095
  return le(t) == "symbol" ? t : t + "";
1097
1096
  }
1098
- function ht(e, t, r) {
1099
- return (t = dt(t)) in e ? Object.defineProperty(e, t, {
1097
+ function ct(e, t, r) {
1098
+ return (t = nt(t)) in e ? Object.defineProperty(e, t, {
1100
1099
  value: r,
1101
1100
  enumerable: !0,
1102
1101
  configurable: !0,
1103
1102
  writable: !0
1104
1103
  }) : e[t] = r, e;
1105
1104
  }
1106
- const O = "/api/v2".replace(/\/+$/, ""), Ie = {
1105
+ const O = "/api/v2".replace(/\/+$/, ""), Pe = {
1107
1106
  csv: ","
1108
1107
  };
1109
1108
  var L = class {
1110
1109
  constructor(e, t = O, r = m) {
1111
- this.basePath = t, this.axios = r, ht(this, "configuration", void 0), e && (this.configuration = e, this.basePath = e.basePath ?? t);
1110
+ this.basePath = t, this.axios = r, ct(this, "configuration", void 0), e && (this.configuration = e, this.basePath = e.basePath ?? t);
1112
1111
  }
1113
- }, ut = class extends Error {
1112
+ }, it = class extends Error {
1114
1113
  constructor(e, t) {
1115
1114
  super(t), this.field = e, this.name = "RequiredError";
1116
1115
  }
1117
1116
  };
1118
1117
  const V = {}, C = "https://example.com", h = function(e, t, r) {
1119
- if (r == null) throw new ut(t, `Required parameter ${t} was null or undefined when calling ${e}.`);
1118
+ if (r == null) throw new it(t, `Required parameter ${t} was null or undefined when calling ${e}.`);
1120
1119
  }, S = function(e, t) {
1121
1120
  t && (t.username || t.password) && (e.auth = {
1122
1121
  username: t.username,
@@ -1144,13 +1143,13 @@ const y = function(e, ...t) {
1144
1143
  };
1145
1144
  return o.request(a);
1146
1145
  };
1147
- }, ur = {
1146
+ }, cr = {
1148
1147
  Abb: "abb",
1149
1148
  Fanuc: "fanuc",
1150
1149
  Kuka: "kuka",
1151
1150
  Universalrobots: "universalrobots",
1152
1151
  Yaskawa: "yaskawa"
1153
- }, mt = function(e) {
1152
+ }, pt = function(e) {
1154
1153
  return {
1155
1154
  addApp: async (t, r, s, o = {}) => {
1156
1155
  h("addApp", "cell", t), h("addApp", "app", r);
@@ -1280,7 +1279,7 @@ const y = function(e, ...t) {
1280
1279
  }
1281
1280
  };
1282
1281
  }, Z = function(e) {
1283
- const t = mt(e);
1282
+ const t = pt(e);
1284
1283
  return {
1285
1284
  async addApp(r, s, o, n) {
1286
1285
  var i, p;
@@ -1314,7 +1313,7 @@ const y = function(e, ...t) {
1314
1313
  }
1315
1314
  };
1316
1315
  };
1317
- var ve = class extends L {
1316
+ var Ie = class extends L {
1318
1317
  /**
1319
1318
  * Install a basic, containerized web application to the cell to control robots with a customized frontend. #### Prerequisites - A Docker hub account or similar container registry account, with valid credentials. #### Workflow After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](https://docs.wandelbots.io/latest/developing-introduction) for more information. #### Predefined environment variables <!-- theme: NOTE --> > **NOTE** > - `NOVA_API`: The API endpoint accessible from within the application container. > - `NATS_BROKER`: The NATS broker endpoint accessible from within the application container. > - `BASE_PATH`: The application\'s root path, accessible at http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell hosting the deployed application.
1320
1319
  * @summary Add Application
@@ -1385,7 +1384,7 @@ var ve = class extends L {
1385
1384
  return Z(this.configuration).updateApp(e, t, r, s, o).then((n) => n(this.axios, this.basePath));
1386
1385
  }
1387
1386
  };
1388
- const Ot = function(e) {
1387
+ const dt = function(e) {
1389
1388
  return {
1390
1389
  addBusIOService: async (t, r, s, o = {}) => {
1391
1390
  h("addBusIOService", "cell", t), h("addBusIOService", "busIOType", r);
@@ -1767,7 +1766,7 @@ const Ot = function(e) {
1767
1766
  }
1768
1767
  };
1769
1768
  }, G = function(e) {
1770
- const t = Ot(e);
1769
+ const t = dt(e);
1771
1770
  return {
1772
1771
  async addBusIOService(r, s, o, n) {
1773
1772
  var i, p;
@@ -1861,7 +1860,7 @@ const Ot = function(e) {
1861
1860
  }
1862
1861
  };
1863
1862
  };
1864
- var Vt = class extends L {
1863
+ var ht = class extends L {
1865
1864
  /**
1866
1865
  * Add the BUS inputs/outputs service to the cell. Starts a containerized service that enables BUS connections via the specified ethernet port.
1867
1866
  * @summary Add Service
@@ -2057,7 +2056,7 @@ var Vt = class extends L {
2057
2056
  return G(this.configuration).setProfinetIOsFromFile(e, t, r).then((s) => s(this.axios, this.basePath));
2058
2057
  }
2059
2058
  };
2060
- const Ct = function(e) {
2059
+ const ut = function(e) {
2061
2060
  return {
2062
2061
  deleteCell: async (t, r, s = {}) => {
2063
2062
  h("deleteCell", "cell", t);
@@ -2207,7 +2206,7 @@ const Ct = function(e) {
2207
2206
  }
2208
2207
  };
2209
2208
  }, X = function(e) {
2210
- const t = Ct(e);
2209
+ const t = ut(e);
2211
2210
  return {
2212
2211
  async deleteCell(r, s, o) {
2213
2212
  var c, i;
@@ -2246,7 +2245,7 @@ const Ct = function(e) {
2246
2245
  }
2247
2246
  };
2248
2247
  };
2249
- var St = class extends L {
2248
+ var mt = class extends L {
2250
2249
  /**
2251
2250
  * Delete an entire cell.
2252
2251
  * @summary Delete Cell
@@ -2322,7 +2321,7 @@ var St = class extends L {
2322
2321
  return X(this.configuration).updateCell(e, t, r, s).then((o) => o(this.axios, this.basePath));
2323
2322
  }
2324
2323
  };
2325
- const bt = function(e) {
2324
+ const Ot = function(e) {
2326
2325
  return {
2327
2326
  addRobotController: async (t, r, s, o = {}) => {
2328
2327
  h("addRobotController", "cell", t), h("addRobotController", "robotController", r);
@@ -2620,7 +2619,7 @@ const bt = function(e) {
2620
2619
  }
2621
2620
  };
2622
2621
  }, Q = function(e) {
2623
- const t = bt(e);
2622
+ const t = Ot(e);
2624
2623
  return {
2625
2624
  async addRobotController(r, s, o, n) {
2626
2625
  var i, p;
@@ -2694,7 +2693,7 @@ const bt = function(e) {
2694
2693
  }
2695
2694
  };
2696
2695
  };
2697
- var yt = class extends L {
2696
+ var Vt = class extends L {
2698
2697
  /**
2699
2698
  * Add a robot controller to the cell.
2700
2699
  * @summary Add Robot Controller
@@ -2860,7 +2859,7 @@ var yt = class extends L {
2860
2859
  return Q(this.configuration).updateRobotController(e, t, r, s, o).then((n) => n(this.axios, this.basePath));
2861
2860
  }
2862
2861
  };
2863
- const Pt = function(e) {
2862
+ const Ct = function(e) {
2864
2863
  return {
2865
2864
  listIODescriptions: async (t, r, s, o, n, a, l = {}) => {
2866
2865
  h("listIODescriptions", "cell", t), h("listIODescriptions", "controller", r);
@@ -2969,7 +2968,7 @@ const Pt = function(e) {
2969
2968
  }
2970
2969
  };
2971
2970
  }, te = function(e) {
2972
- const t = Pt(e);
2971
+ const t = Ct(e);
2973
2972
  return {
2974
2973
  async listIODescriptions(r, s, o, n, a, l, c) {
2975
2974
  var u, v;
@@ -2998,7 +2997,7 @@ const Pt = function(e) {
2998
2997
  }
2999
2998
  };
3000
2999
  };
3001
- var It = class extends L {
3000
+ var St = class extends L {
3002
3001
  /**
3003
3002
  * Lists the input/output descriptions of the robot controller. The input/output descriptions contain information like name, type and unit.\\ Available inputs/outputs are defined by the robot controller\\ Each input/output has a unique identifier. - If no identifiers and no filters are specified in the request, all available inputs/outputs are retrieved by this endpoint. - If a filter, e.g., `direction`, `value_type`, `group` is applied, only matching inputs/outputs are returned.
3004
3003
  * @summary List Descriptions
@@ -3063,7 +3062,7 @@ var It = class extends L {
3063
3062
  return te(this.configuration).waitForIOEvent(e, t, r, s).then((o) => o(this.axios, this.basePath));
3064
3063
  }
3065
3064
  };
3066
- const vt = function(e) {
3065
+ const bt = function(e) {
3067
3066
  return { executeJogging: async (t, r, s, o = {}) => {
3068
3067
  h("executeJogging", "cell", t), h("executeJogging", "controller", r), h("executeJogging", "executeJoggingRequest", s);
3069
3068
  const n = "/cells/{cell}/controllers/{controller}/execution/jogging".replace("{cell}", encodeURIComponent(String(t))).replace("{controller}", encodeURIComponent(String(r))), a = new URL(n, C);
@@ -3085,15 +3084,15 @@ const vt = function(e) {
3085
3084
  options: c
3086
3085
  };
3087
3086
  } };
3088
- }, xt = function(e) {
3089
- const t = vt(e);
3087
+ }, yt = function(e) {
3088
+ const t = bt(e);
3090
3089
  return { async executeJogging(r, s, o, n) {
3091
3090
  var i, p;
3092
3091
  const a = await t.executeJogging(r, s, o, n), l = (e == null ? void 0 : e.serverIndex) ?? 0, c = (p = (i = V["JoggingApi.executeJogging"]) == null ? void 0 : i[l]) == null ? void 0 : p.url;
3093
3092
  return (d, u) => I(a, m, O, e)(d, c || u);
3094
3093
  } };
3095
3094
  };
3096
- var wt = class extends L {
3095
+ var Pt = class extends L {
3097
3096
  /**
3098
3097
  * <!-- theme: success --> > Websocket endpoint Provides execution control over a dynamically adaptable jogging motion for a motion group. Jogging describes controlling a motion group by sending real-time commands to move either its joints or the TCP. The commands contain target velocities that may change at any time during execution, so the resulting motion cannot be computed upfront. ### Preconditions The motion group is not moved by any other endpoint. ### Requests #### 1. Send `InitializeJoggingRequest` to configure the jogging. - Sets the robot controller mode to control mode. - Claims the motion group for jogging. For robotic arms, TCP is required to ensure that limits, including TCP limits, are respected. #### 2. Send `JointVelocityRequest` or `TcpVelocityRequest` to start the jogging motion. - Commands can only be processed in the cycle rate of the controller - Sending commands faster will not increase the responsiveness of the jogging motion, it will lead to dropped commands - It is recommended to couple sending commands with the [state stream](streamMotionGroupState), which can be subscribed to via nats as well. #### 3. Change or stop the jogging motion - Change the jogging direction and/or velocity during the jogging motion with `JointVelocityRequest` or `TcpVelocityRequest`. - To stop the jogging motion, send zero velocities via either request or `PauseJoggingRequest`. ### Responses - Each request is acknowledged with a corresponding response: - `InitializeJoggingResponse` after `InitializeJoggingRequest` - `JointVelocityResponse` after `JointVelocityRequest` - `TcpVelocityResponse` after `TcpVelocityRequest` - `PauseJoggingResponse` after `PauseJoggingRequest` The responses confirm that the requests were received. They do not signal that the operation was successful; check the [motion group state](streamMotionGroupState) for that. - `MovementErrorResponse` with error details is sent in case of an unexpected error, e.g., controller disconnects during jogging. ### Tips and Tricks - Ensure that the websocket connection remains open until the jogging motion is stopped to avoid unexpected stops.
3099
3098
  * @summary Execute Jogging
@@ -3104,10 +3103,10 @@ var wt = class extends L {
3104
3103
  * @throws {RequiredError}
3105
3104
  */
3106
3105
  executeJogging(e, t, r, s) {
3107
- return xt(this.configuration).executeJogging(e, t, r, s).then((o) => o(this.axios, this.basePath));
3106
+ return yt(this.configuration).executeJogging(e, t, r, s).then((o) => o(this.axios, this.basePath));
3108
3107
  }
3109
3108
  };
3110
- const At = function(e) {
3109
+ const It = function(e) {
3111
3110
  return {
3112
3111
  forwardKinematics: async (t, r, s = {}) => {
3113
3112
  h("forwardKinematics", "cell", t), h("forwardKinematics", "forwardKinematicsRequest", r);
@@ -3152,8 +3151,8 @@ const At = function(e) {
3152
3151
  };
3153
3152
  }
3154
3153
  };
3155
- }, xe = function(e) {
3156
- const t = At(e);
3154
+ }, ve = function(e) {
3155
+ const t = It(e);
3157
3156
  return {
3158
3157
  async forwardKinematics(r, s, o) {
3159
3158
  var c, i;
@@ -3167,7 +3166,7 @@ const At = function(e) {
3167
3166
  }
3168
3167
  };
3169
3168
  };
3170
- var Rt = class extends L {
3169
+ var vt = class extends L {
3171
3170
  /**
3172
3171
  * Returns the TCP poses for a list of given joint positions.
3173
3172
  * @summary Forward kinematics
@@ -3177,7 +3176,7 @@ var Rt = class extends L {
3177
3176
  * @throws {RequiredError}
3178
3177
  */
3179
3178
  forwardKinematics(e, t, r) {
3180
- return xe(this.configuration).forwardKinematics(e, t, r).then((s) => s(this.axios, this.basePath));
3179
+ return ve(this.configuration).forwardKinematics(e, t, r).then((s) => s(this.axios, this.basePath));
3181
3180
  }
3182
3181
  /**
3183
3182
  * Returns the reachable joint positions for a list of given poses.
@@ -3188,10 +3187,10 @@ var Rt = class extends L {
3188
3187
  * @throws {RequiredError}
3189
3188
  */
3190
3189
  inverseKinematics(e, t, r) {
3191
- return xe(this.configuration).inverseKinematics(e, t, r).then((s) => s(this.axios, this.basePath));
3190
+ return ve(this.configuration).inverseKinematics(e, t, r).then((s) => s(this.axios, this.basePath));
3192
3191
  }
3193
3192
  };
3194
- const Ut = function(e) {
3193
+ const xt = function(e) {
3195
3194
  return {
3196
3195
  getCurrentMotionGroupState: async (t, r, s, o, n = {}) => {
3197
3196
  h("getCurrentMotionGroupState", "cell", t), h("getCurrentMotionGroupState", "controller", r), h("getCurrentMotionGroupState", "motionGroup", s);
@@ -3258,7 +3257,7 @@ const Ut = function(e) {
3258
3257
  }
3259
3258
  };
3260
3259
  }, he = function(e) {
3261
- const t = Ut(e);
3260
+ const t = xt(e);
3262
3261
  return {
3263
3262
  async getCurrentMotionGroupState(r, s, o, n, a) {
3264
3263
  var p, d;
@@ -3277,7 +3276,7 @@ const Ut = function(e) {
3277
3276
  }
3278
3277
  };
3279
3278
  };
3280
- var Tt = class extends L {
3279
+ var wt = class extends L {
3281
3280
  /**
3282
3281
  * Returns the current state of the selected motion group including the current joint position, velocity, pose, and more.
3283
3282
  * @summary State
@@ -3318,7 +3317,7 @@ var Tt = class extends L {
3318
3317
  return he(this.configuration).streamMotionGroupState(e, t, r, s, o, n).then((a) => a(this.axios, this.basePath));
3319
3318
  }
3320
3319
  };
3321
- const _t = function(e) {
3320
+ const At = function(e) {
3322
3321
  return {
3323
3322
  getMotionGroupCollisionModel: async (t, r = {}) => {
3324
3323
  h("getMotionGroupCollisionModel", "motionGroupModel", t);
@@ -3426,7 +3425,7 @@ const _t = function(e) {
3426
3425
  }
3427
3426
  };
3428
3427
  }, re = function(e) {
3429
- const t = _t(e);
3428
+ const t = At(e);
3430
3429
  return {
3431
3430
  async getMotionGroupCollisionModel(r, s) {
3432
3431
  var l, c;
@@ -3455,7 +3454,7 @@ const _t = function(e) {
3455
3454
  }
3456
3455
  };
3457
3456
  };
3458
- var jt = class extends L {
3457
+ var Rt = class extends L {
3459
3458
  /**
3460
3459
  * Returns the default collision link chain for a given motion group model. See [getMotionGroupModels](getMotionGroupModels) for supported motion group models. The default link chain is derived from 3D models and optimized for collision detection within NOVA. The default link chain includes link shapes only. It does not include any attached components like wire feeders or sensors. Attach additional shapes to the link reference frames by extending the link dictionaries before further use. Additional shapes may overlap each other per link and may also overlap the respective link\'s default shape.
3461
3460
  * @summary Get Collision Model
@@ -3506,7 +3505,7 @@ var jt = class extends L {
3506
3505
  return re(this.configuration).getMotionGroupUsdModel(e, t).then((r) => r(this.axios, this.basePath));
3507
3506
  }
3508
3507
  };
3509
- const Et = function(e) {
3508
+ const Ut = function(e) {
3510
3509
  return {
3511
3510
  deleteStoredCollider: async (t, r, s = {}) => {
3512
3511
  h("deleteStoredCollider", "cell", t), h("deleteStoredCollider", "collider", r);
@@ -3825,7 +3824,7 @@ const Et = function(e) {
3825
3824
  }
3826
3825
  };
3827
3826
  }, k = function(e) {
3828
- const t = Et(e);
3827
+ const t = Ut(e);
3829
3828
  return {
3830
3829
  async deleteStoredCollider(r, s, o) {
3831
3830
  var c, i;
@@ -3904,7 +3903,7 @@ const Et = function(e) {
3904
3903
  }
3905
3904
  };
3906
3905
  };
3907
- var Bt = class extends L {
3906
+ var Tt = class extends L {
3908
3907
  /**
3909
3908
  * Deletes the stored collider. <!-- theme: danger --> > This will delete persistently stored data.
3910
3909
  * @summary Delete Collider
@@ -4068,7 +4067,7 @@ var Bt = class extends L {
4068
4067
  return k(this.configuration).storeCollisionTool(e, t, r, s).then((o) => o(this.axios, this.basePath));
4069
4068
  }
4070
4069
  };
4071
- const Mt = function(e) {
4070
+ const _t = function(e) {
4072
4071
  return {
4073
4072
  deleteStoredCollisionSetup: async (t, r, s = {}) => {
4074
4073
  h("deleteStoredCollisionSetup", "cell", t), h("deleteStoredCollisionSetup", "setup", r);
@@ -4177,7 +4176,7 @@ const Mt = function(e) {
4177
4176
  }
4178
4177
  };
4179
4178
  }, se = function(e) {
4180
- const t = Mt(e);
4179
+ const t = _t(e);
4181
4180
  return {
4182
4181
  async deleteStoredCollisionSetup(r, s, o) {
4183
4182
  var c, i;
@@ -4206,7 +4205,7 @@ const Mt = function(e) {
4206
4205
  }
4207
4206
  };
4208
4207
  };
4209
- var Lt = class extends L {
4208
+ var jt = class extends L {
4210
4209
  /**
4211
4210
  * Deletes the stored collision setup. <!-- theme: danger --> > This will delete persistently stored data.
4212
4211
  * @summary Delete Collision Setup
@@ -4262,7 +4261,7 @@ var Lt = class extends L {
4262
4261
  return se(this.configuration).storeCollisionSetup(e, t, r, s).then((o) => o(this.axios, this.basePath));
4263
4262
  }
4264
4263
  };
4265
- const Ft = function(e) {
4264
+ const Et = function(e) {
4266
4265
  return {
4267
4266
  clearAllObjects: async (t, r = {}) => {
4268
4267
  h("clearAllObjects", "cell", t);
@@ -4392,7 +4391,7 @@ const Ft = function(e) {
4392
4391
  }
4393
4392
  };
4394
4393
  }, f = function(e) {
4395
- const t = Ft(e);
4394
+ const t = Et(e);
4396
4395
  return {
4397
4396
  async clearAllObjects(r, s) {
4398
4397
  var l, c;
@@ -4426,7 +4425,7 @@ const Ft = function(e) {
4426
4425
  }
4427
4426
  };
4428
4427
  };
4429
- var Gt = class extends L {
4428
+ var Bt = class extends L {
4430
4429
  /**
4431
4430
  * Delete all objects. <!-- theme: danger --> > This will delete ALL your persistently stored data.
4432
4431
  * @summary Clear all Objects
@@ -4494,7 +4493,7 @@ var Gt = class extends L {
4494
4493
  return f(this.configuration).storeObject(e, t, r, s, o).then((n) => n(this.axios, this.basePath));
4495
4494
  }
4496
4495
  };
4497
- const kt = function(e) {
4496
+ const Mt = function(e) {
4498
4497
  return {
4499
4498
  backupConfiguration: async (t, r, s = {}) => {
4500
4499
  const o = new URL("/system/configuration", C);
@@ -4505,7 +4504,7 @@ const kt = function(e) {
4505
4504
  ...n,
4506
4505
  ...s
4507
4506
  }, l = {}, c = {};
4508
- S(a, e), await b(l, e), t && (c.resources = t.join(Ie.csv)), r !== void 0 && (c.metadata = r), y(o, c);
4507
+ S(a, e), await b(l, e), t && (c.resources = t.join(Pe.csv)), r !== void 0 && (c.metadata = r), y(o, c);
4509
4508
  let i = n && n.headers ? n.headers : {};
4510
4509
  return a.headers = {
4511
4510
  ...l,
@@ -4708,7 +4707,7 @@ const kt = function(e) {
4708
4707
  ...n,
4709
4708
  ...s
4710
4709
  }, l = {}, c = {};
4711
- S(a, e), await b(l, e), r && (c.resources = r.join(Ie.csv)), l["Content-Type"] = "application/gzip", y(o, c);
4710
+ S(a, e), await b(l, e), r && (c.resources = r.join(Pe.csv)), l["Content-Type"] = "application/gzip", y(o, c);
4712
4711
  let i = n && n.headers ? n.headers : {};
4713
4712
  return a.headers = {
4714
4713
  ...l,
@@ -4742,7 +4741,7 @@ const kt = function(e) {
4742
4741
  }
4743
4742
  };
4744
4743
  }, $ = function(e) {
4745
- const t = kt(e);
4744
+ const t = Mt(e);
4746
4745
  return {
4747
4746
  async backupConfiguration(r, s, o) {
4748
4747
  var c, i;
@@ -4806,7 +4805,7 @@ const kt = function(e) {
4806
4805
  }
4807
4806
  };
4808
4807
  };
4809
- var qt = class extends L {
4808
+ var Lt = class extends L {
4810
4809
  /**
4811
4810
  * Retrieves a configuration backup based on provided resource identifiers. If an empty array of resources is provided, a backup for all resources will be retrieved.
4812
4811
  * @summary Retrieve Configuration Backup
@@ -4926,7 +4925,7 @@ var qt = class extends L {
4926
4925
  return $(this.configuration).updateNovaVersion(e, t).then((r) => r(this.axios, this.basePath));
4927
4926
  }
4928
4927
  };
4929
- const Dt = function(e) {
4928
+ const Ft = function(e) {
4930
4929
  return {
4931
4930
  addTrajectory: async (t, r, s, o = {}) => {
4932
4931
  h("addTrajectory", "cell", t), h("addTrajectory", "controller", r), h("addTrajectory", "addTrajectoryRequest", s);
@@ -5035,7 +5034,7 @@ const Dt = function(e) {
5035
5034
  }
5036
5035
  };
5037
5036
  }, ae = function(e) {
5038
- const t = Dt(e);
5037
+ const t = Ft(e);
5039
5038
  return {
5040
5039
  async addTrajectory(r, s, o, n) {
5041
5040
  var i, p;
@@ -5064,7 +5063,7 @@ const Dt = function(e) {
5064
5063
  }
5065
5064
  };
5066
5065
  };
5067
- var Qt = class extends L {
5066
+ var Gt = class extends L {
5068
5067
  /**
5069
5068
  * Loads and validates the data of a trajectory into the execution cache, rendering the trajectory executable. <!-- theme: info --> > #### NOTE > > Using the trajectory cache is an optional performance optimization. It is not necessary to use the cache to execute trajectories. The response contains the result of the validation of the trajectory. Validation can lead to three different results: - Fully valid: The whole trajectory can be executed from start to end. The response will contain an unique identifier which is used to move the robot. - Partially valid: Only parts of the trajectory can be executed. The response will contain an unique identifier to move the robot and information about the failure for the part that is not executable. - Invalid: The trajectory can not be executed. The response will tell you the reason of failure. If the trajectory is at least partially valid, the parts of the trajectory that are valid can be executed using the [executeTrajectory](executeTrajectory) endpoint. The workflow is as follows: - Generate a trajectory with [planTrajectory](planTrajectory) or your own motion planner, - Send the trajectory to this endpoint to validate it and get a unique identifier for it, - The unique identifier will appear in the list of available trajectories, see [listTrajectories](listTrajectories) endpoint, if it is at least partially executable. - Execute your trajectory using the [executeTrajectory](executeTrajectory) endpoint.
5070
5069
  * @summary Add Trajectory
@@ -5124,7 +5123,7 @@ var Qt = class extends L {
5124
5123
  return ae(this.configuration).listTrajectories(e, t, r).then((s) => s(this.axios, this.basePath));
5125
5124
  }
5126
5125
  };
5127
- const Ht = function(e) {
5126
+ const kt = function(e) {
5128
5127
  return { executeTrajectory: async (t, r, s, o = {}) => {
5129
5128
  h("executeTrajectory", "cell", t), h("executeTrajectory", "controller", r), h("executeTrajectory", "executeTrajectoryRequest", s);
5130
5129
  const n = "/cells/{cell}/controllers/{controller}/execution/trajectory".replace("{cell}", encodeURIComponent(String(t))).replace("{controller}", encodeURIComponent(String(r))), a = new URL(n, C);
@@ -5146,15 +5145,15 @@ const Ht = function(e) {
5146
5145
  options: c
5147
5146
  };
5148
5147
  } };
5149
- }, Nt = function(e) {
5150
- const t = Ht(e);
5148
+ }, qt = function(e) {
5149
+ const t = kt(e);
5151
5150
  return { async executeTrajectory(r, s, o, n) {
5152
5151
  var i, p;
5153
5152
  const a = await t.executeTrajectory(r, s, o, n), l = (e == null ? void 0 : e.serverIndex) ?? 0, c = (p = (i = V["TrajectoryExecutionApi.executeTrajectory"]) == null ? void 0 : i[l]) == null ? void 0 : p.url;
5154
5153
  return (d, u) => I(a, m, O, e)(d, c || u);
5155
5154
  } };
5156
5155
  };
5157
- var Kt = class extends L {
5156
+ var Dt = class extends L {
5158
5157
  /**
5159
5158
  * <!-- theme: success --> > Websocket endpoint Provides execution control over a previously [planned trajectory](planTrajectory). Enables the caller to attach input/output actions to the trajectory. ### Movement behavior | Virtual controller | Physical controller | |------------------|-------------------| | Desired joint configurations are commanded to each motion group and **applied immediately** | Move to desired **actual joint configuration**, **if possible** | ### Concept of location - The location or path parameter specifies the exact position along a trajectory. - The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g., line, p2p, etc. See [planTrajectory](planTrajectory). - Each integer value of the location corresponds to one motion command, e.g., 3.0 to 3.999 could be a line. ### Preconditions - The motion group\'s control mode is not claimed by any other endpoint. - The motion group\'s joint position are at start location specified with `InitializeMovementRequest`. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send `InitializeMovementRequest` to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time. Pausing the current movement enables you to send another `InitializeMovementRequest` to execute another trajectory on the same connection. #### 2. Send `StartMovementRequest` to start the movement Sets direction of movement, default is forward. #### **Optional** - To pause, send `PauseMovementRequest` before the movement has reached its end location. - Change the movement\'s velocity with `PlaybackSpeedRequest` after initializing the movement with `InitializeMovementRequest`. ### Responses To monitor the state of the movement, listen to the [state stream](streamMotionGroupState). The state is published via nats as well. Field `execute` in the `MotionGroupState` indicates whether a movement is ongoing and carries execution details. Each request has a corresponding acknowledgment response. They signal success or failure of the request. Especially for `PauseMovementResponse`, it does not signal the end of the movement. Additionally, `MovementError` messages can be sent in case of unexpected errors during the execution, e.g., controller disconnects during movement. ### Tips and Tricks - A movement can be paused and resumed by sending `PauseMovementRequest` and `StartMovementRequest`. - Send `PlaybackSpeedRequest` before `StartMovementRequest` to reduce the velocity of the movement before it starts. - Send `PlaybackSpeedRequest` repeatedly to implement a slider. The velocity of the motion group can be adjusted with each controller step. Therefore, if your app needs a slider-like UI to alter the velocity of a currently running movement, you can send `PlaybackSpeedRequest` with different speed values repeatedly during the movement. - A closed trajectory (end and start joint position are equal) can be repeated by sending `StartMovementRequest` after the movement has finished.
5160
5159
  * @summary Execute Trajectory
@@ -5165,10 +5164,10 @@ var Kt = class extends L {
5165
5164
  * @throws {RequiredError}
5166
5165
  */
5167
5166
  executeTrajectory(e, t, r, s) {
5168
- return Nt(this.configuration).executeTrajectory(e, t, r, s).then((o) => o(this.axios, this.basePath));
5167
+ return qt(this.configuration).executeTrajectory(e, t, r, s).then((o) => o(this.axios, this.basePath));
5169
5168
  }
5170
5169
  };
5171
- const $t = function(e) {
5170
+ const Qt = function(e) {
5172
5171
  return {
5173
5172
  planCollisionFree: async (t, r, s = {}) => {
5174
5173
  h("planCollisionFree", "cell", t), h("planCollisionFree", "planCollisionFreeRequest", r);
@@ -5213,8 +5212,8 @@ const $t = function(e) {
5213
5212
  };
5214
5213
  }
5215
5214
  };
5216
- }, we = function(e) {
5217
- const t = $t(e);
5215
+ }, xe = function(e) {
5216
+ const t = Qt(e);
5218
5217
  return {
5219
5218
  async planCollisionFree(r, s, o) {
5220
5219
  var c, i;
@@ -5228,7 +5227,7 @@ const $t = function(e) {
5228
5227
  }
5229
5228
  };
5230
5229
  };
5231
- var Jt = class extends L {
5230
+ var Ht = class extends L {
5232
5231
  /**
5233
5232
  * Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
5234
5233
  * @summary Plan Collision-Free Trajectory
@@ -5238,7 +5237,7 @@ var Jt = class extends L {
5238
5237
  * @throws {RequiredError}
5239
5238
  */
5240
5239
  planCollisionFree(e, t, r) {
5241
- return we(this.configuration).planCollisionFree(e, t, r).then((s) => s(this.axios, this.basePath));
5240
+ return xe(this.configuration).planCollisionFree(e, t, r).then((s) => s(this.axios, this.basePath));
5242
5241
  }
5243
5242
  /**
5244
5243
  * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the response will contain the joint trajectory up until the error, e.g., all samples until a collision occurs. <!-- theme: info --> > #### Exception > > If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
@@ -5249,10 +5248,10 @@ var Jt = class extends L {
5249
5248
  * @throws {RequiredError}
5250
5249
  */
5251
5250
  planTrajectory(e, t, r) {
5252
- return we(this.configuration).planTrajectory(e, t, r).then((s) => s(this.axios, this.basePath));
5251
+ return xe(this.configuration).planTrajectory(e, t, r).then((s) => s(this.axios, this.basePath));
5253
5252
  }
5254
5253
  };
5255
- const gt = function(e) {
5254
+ const Nt = function(e) {
5256
5255
  return {
5257
5256
  addVirtualControllerCoordinateSystem: async (t, r, s, o, n = {}) => {
5258
5257
  h("addVirtualControllerCoordinateSystem", "cell", t), h("addVirtualControllerCoordinateSystem", "controller", r), h("addVirtualControllerCoordinateSystem", "coordinateSystem", s), h("addVirtualControllerCoordinateSystem", "coordinateSystemData", o);
@@ -5571,7 +5570,7 @@ const gt = function(e) {
5571
5570
  }
5572
5571
  };
5573
5572
  }, q = function(e) {
5574
- const t = gt(e);
5573
+ const t = Nt(e);
5575
5574
  return {
5576
5575
  async addVirtualControllerCoordinateSystem(r, s, o, n, a) {
5577
5576
  var p, d;
@@ -5650,7 +5649,7 @@ const gt = function(e) {
5650
5649
  }
5651
5650
  };
5652
5651
  };
5653
- var Wt = class extends L {
5652
+ var Kt = class extends L {
5654
5653
  /**
5655
5654
  * Adds a coordinate system to the robot controller. <!-- theme: info --> > #### NOTE > > When a new coordinate system is added, the **virtual robot is restarted** to apply the new configuration. > > During this restart: > - Robot visualization can temporarily disappear or appear outdated in the UI. > - Coordinate system changes are not immediately visible in visualizations. > - All connections to virtual robot are closed and re-established, which introduces a short delay before the system is fully operational again. > > The API call itself does **not wait until the restart and re-synchronization are complete**. > This means that immediately after a successful response, the new coordinate system may not yet be available for visualization or program execution.
5656
5655
  * @summary Add Coordinate Systems
@@ -5835,7 +5834,7 @@ var Wt = class extends L {
5835
5834
  return q(this.configuration).setVirtualControllerMounting(e, t, r, s, o).then((n) => n(this.axios, this.basePath));
5836
5835
  }
5837
5836
  };
5838
- const Yt = function(e) {
5837
+ const $t = function(e) {
5839
5838
  return {
5840
5839
  externalJointsStream: async (t, r, s, o = {}) => {
5841
5840
  h("externalJointsStream", "cell", t), h("externalJointsStream", "controller", r), h("externalJointsStream", "externalJointStreamRequest", s);
@@ -5923,7 +5922,7 @@ const Yt = function(e) {
5923
5922
  }
5924
5923
  };
5925
5924
  }, ne = function(e) {
5926
- const t = Yt(e);
5925
+ const t = $t(e);
5927
5926
  return {
5928
5927
  async externalJointsStream(r, s, o, n) {
5929
5928
  var i, p;
@@ -5947,7 +5946,7 @@ const Yt = function(e) {
5947
5946
  }
5948
5947
  };
5949
5948
  };
5950
- var zt = class extends L {
5949
+ var Jt = class extends L {
5951
5950
  /**
5952
5951
  * <!-- theme: success --> > Websocket endpoint Sends the **commanded** state, e.g., joint positions, velocities, accelerations, torques, for each motion group of the virtual controller and sets the joint configuration. Use [planTrajectory](planTrajectory) and [executeTrajectory](executeTrajectory) to move motion groups on virtual controllers. Learn more about the [movement behavior of virtual controllers in comparison to physical controllers](executeTrajectory#movement-behavior). > **NOTE** > > Incoming joint configurations are not visualized and their velocity limits are not checked. #### Use cases 1. Creating a robotic application that dynamically adapts to the configured joints on the robot controller, using this stream to feed new joint configurations back to the motion groups.\\ The stream only sends data to the robot controller if a motion is executed.\\ If the robot controller\'s joint configuration differs too much from the incoming joint configuration, a following error occurs. Joint configurations that result in following errors are executed only for motions with a low velocity. 2. Mimic freedrive motions. <!-- theme: danger --> > **DANGER** > > If the incoming joint configuration is set to maximum velocity, the movement to reach this incoming joint configuration > will be executed with maximum speed regardless of safety zones and mechanical limits.
5953
5952
  * @summary Stream Joint Configuration
@@ -5995,7 +5994,7 @@ var zt = class extends L {
5995
5994
  return ne(this.configuration).setVirtualControllerBehavior(e, t, r, s).then((o) => o(this.axios, this.basePath));
5996
5995
  }
5997
5996
  };
5998
- const Xt = function(e) {
5997
+ const gt = function(e) {
5999
5998
  return {
6000
5999
  listIOs: async (t, r, s, o = {}) => {
6001
6000
  h("listIOs", "cell", t), h("listIOs", "controller", r), h("listIOs", "ios", s);
@@ -6062,7 +6061,7 @@ const Xt = function(e) {
6062
6061
  }
6063
6062
  };
6064
6063
  }, ue = function(e) {
6065
- const t = Xt(e);
6064
+ const t = gt(e);
6066
6065
  return {
6067
6066
  async listIOs(r, s, o, n) {
6068
6067
  var i, p;
@@ -6081,7 +6080,7 @@ const Xt = function(e) {
6081
6080
  }
6082
6081
  };
6083
6082
  };
6084
- var Zt = class extends L {
6083
+ var Wt = class extends L {
6085
6084
  /**
6086
6085
  * Retrieves the current values of inputs/outputs of the virtual controller. The identifiers of inputs/outputs must be provided in the request. Request all available input/output identifiers via [listVirtualControllerIODescriptions](listVirtualControllerIODescriptions).
6087
6086
  * @summary Get Input/Output Values
@@ -6121,9 +6120,9 @@ var Zt = class extends L {
6121
6120
  setIOValues(e, t, r, s) {
6122
6121
  return ue(this.configuration).setIOValues(e, t, r, s).then((o) => o(this.axios, this.basePath));
6123
6122
  }
6124
- }, ft = class {
6123
+ }, Yt = class {
6125
6124
  constructor(e, t) {
6126
- this.cellId = e, this.opts = t, this.system = this.withUnwrappedResponsesOnly(qt), this.cell = this.withUnwrappedResponsesOnly(St), this.motionGroup = this.withCellId(Tt), this.motionGroupModels = this.withUnwrappedResponsesOnly(jt), this.controller = this.withCellId(yt), this.controllerIOs = this.withCellId(It), this.trajectoryPlanning = this.withCellId(Jt), this.trajectoryExecution = this.withCellId(Kt), this.trajectoryCaching = this.withCellId(Qt), this.application = this.withCellId(ve), this.applicationGlobal = this.withUnwrappedResponsesOnly(ve), this.jogging = this.withCellId(wt), this.kinematics = this.withCellId(Rt), this.busInputsOutputs = this.withCellId(Vt), this.virtualController = this.withCellId(Wt), this.virtualControllerBehavior = this.withCellId(zt), this.virtualControllerIOs = this.withCellId(Zt), this.storeObject = this.withCellId(Gt), this.storeCollisionComponents = this.withCellId(Bt), this.storeCollisionSetups = this.withCellId(Lt);
6125
+ this.cellId = e, this.opts = t, this.system = this.withUnwrappedResponsesOnly(Lt), this.cell = this.withUnwrappedResponsesOnly(mt), this.motionGroup = this.withCellId(wt), this.motionGroupModels = this.withUnwrappedResponsesOnly(Rt), this.controller = this.withCellId(Vt), this.controllerIOs = this.withCellId(St), this.trajectoryPlanning = this.withCellId(Ht), this.trajectoryExecution = this.withCellId(Dt), this.trajectoryCaching = this.withCellId(Gt), this.application = this.withCellId(Ie), this.applicationGlobal = this.withUnwrappedResponsesOnly(Ie), this.jogging = this.withCellId(Pt), this.kinematics = this.withCellId(vt), this.busInputsOutputs = this.withCellId(ht), this.virtualController = this.withCellId(Kt), this.virtualControllerBehavior = this.withCellId(Jt), this.virtualControllerIOs = this.withCellId(Wt), this.storeObject = this.withCellId(Bt), this.storeCollisionComponents = this.withCellId(Tt), this.storeCollisionSetups = this.withCellId(jt);
6127
6126
  }
6128
6127
  /**
6129
6128
  * Some TypeScript sorcery which alters the API class methods so you don't
@@ -6155,7 +6154,7 @@ var Zt = class extends L {
6155
6154
  }
6156
6155
  return t;
6157
6156
  }
6158
- }, er = class {
6157
+ }, zt = class {
6159
6158
  constructor() {
6160
6159
  this.connections = [];
6161
6160
  }
@@ -6607,7 +6606,7 @@ var Zt = class extends L {
6607
6606
  }
6608
6607
  ], r = ((o = e.method) == null ? void 0 : o.toUpperCase()) || "GET", s = `/cells${(a = (n = e.url) == null ? void 0 : n.split("/cells")[1]) == null ? void 0 : a.split("?")[0]}`;
6609
6608
  for (const l of t) {
6610
- const c = it.match(l.path)(s || "");
6609
+ const c = lt.match(l.path)(s || "");
6611
6610
  if (r === l.method && c) {
6612
6611
  const i = l.handle();
6613
6612
  return {
@@ -6620,11 +6619,11 @@ var Zt = class extends L {
6620
6619
  };
6621
6620
  }
6622
6621
  }
6623
- throw new Ne(`No mock handler matched this request: ${r} ${s}`, "404", e);
6622
+ throw new He(`No mock handler matched this request: ${r} ${s}`, "404", e);
6624
6623
  }
6625
6624
  handleWebsocketConnection(e) {
6626
6625
  this.connections.push(e), setTimeout(() => {
6627
- e.dispatchEvent(new Event("open")), console.log("Websocket connection opened from", e.url), e.url.includes("/state-stream") && e.dispatchEvent(new MessageEvent("message", { data: JSON.stringify(tr) })), e.url.includes("/execution/jogging") && e.dispatchEvent(new MessageEvent("message", { data: JSON.stringify({ result: {
6626
+ e.dispatchEvent(new Event("open")), console.log("Websocket connection opened from", e.url), e.url.includes("/state-stream") && e.dispatchEvent(new MessageEvent("message", { data: JSON.stringify(Xt) })), e.url.includes("/execution/jogging") && e.dispatchEvent(new MessageEvent("message", { data: JSON.stringify({ result: {
6628
6627
  message: "string",
6629
6628
  kind: "INITIALIZE_RECEIVED"
6630
6629
  } }) }));
@@ -6634,7 +6633,7 @@ var Zt = class extends L {
6634
6633
  console.log(`Received message on ${e.url}`, t);
6635
6634
  }
6636
6635
  };
6637
- const tr = { result: {
6636
+ const Xt = { result: {
6638
6637
  motion_group: "0@universalrobots-ur5e",
6639
6638
  controller: "universalrobots-ur5e",
6640
6639
  timestamp: (/* @__PURE__ */ new Date()).toISOString(),
@@ -6681,21 +6680,21 @@ const tr = { result: {
6681
6680
  ]
6682
6681
  }
6683
6682
  } };
6684
- var mr = class {
6683
+ var ir = class {
6685
6684
  constructor(e) {
6686
6685
  this.authPromise = null, this.accessToken = null;
6687
6686
  const t = e.cellId ?? "cell";
6688
6687
  this.config = {
6689
6688
  cellId: t,
6690
6689
  ...e
6691
- }, this.accessToken = e.accessToken || oe.getString("wbjs.access_token") || null, this.config.instanceUrl === "https://mock.example.com" && (this.mock = new er()), this.instanceUrl = at(this.config.instanceUrl);
6690
+ }, this.accessToken = e.accessToken || oe.getString("wbjs.access_token") || null, this.config.instanceUrl === "https://mock.example.com" && (this.mock = new zt()), this.instanceUrl = et(this.config.instanceUrl);
6692
6691
  const r = m.create({
6693
6692
  baseURL: de(this.instanceUrl.href, "/api/v2"),
6694
6693
  headers: typeof window < "u" && window.location.origin.includes("localhost") ? {} : { "X-Wandelbots-Client": "Wandelbots-Nova-JS-SDK" }
6695
6694
  });
6696
6695
  r.interceptors.request.use(async (s) => (s.headers.Authorization || (this.accessToken ? s.headers.Authorization = `Bearer ${this.accessToken}` : this.config.username && this.config.password && (s.headers.Authorization = `Basic ${btoa(`${e.username}:${e.password}`)}`)), s)), typeof window < "u" && r.interceptors.response.use((s) => s, async (s) => {
6697
6696
  var o, n;
6698
- if (He(s))
6697
+ if (Qe(s))
6699
6698
  if (((o = s.response) == null ? void 0 : o.status) === 401) try {
6700
6699
  if (await this.renewAuthentication(), s.config)
6701
6700
  return this.accessToken ? s.config.headers.Authorization = `Bearer ${this.accessToken}` : delete s.config.headers.Authorization, r.request(s.config);
@@ -6704,7 +6703,7 @@ var mr = class {
6704
6703
  }
6705
6704
  else ((n = s.response) == null ? void 0 : n.status) === 503 && (await fetch(window.location.href)).status === 503 && window.location.reload();
6706
6705
  return Promise.reject(s);
6707
- }), this.api = new ft(t, {
6706
+ }), this.api = new Yt(t, {
6708
6707
  ...e,
6709
6708
  basePath: de(this.instanceUrl.href, "/api/v2"),
6710
6709
  isJsonMime: (s) => s === "application/json",
@@ -6722,7 +6721,7 @@ var mr = class {
6722
6721
  this.accessToken = e;
6723
6722
  return;
6724
6723
  }
6725
- this.authPromise = ot(this.instanceUrl);
6724
+ this.authPromise = rt(this.instanceUrl);
6726
6725
  try {
6727
6726
  this.accessToken = await this.authPromise, this.accessToken ? oe.setString("wbjs.access_token", this.accessToken) : oe.delete("wbjs.access_token");
6728
6727
  } finally {
@@ -6739,10 +6738,10 @@ var mr = class {
6739
6738
  * on the returned object.
6740
6739
  */
6741
6740
  openReconnectingWebsocket(e) {
6742
- return new tt(this.makeWebsocketURL(e), { mock: this.mock });
6741
+ return new Xe(this.makeWebsocketURL(e), { mock: this.mock });
6743
6742
  }
6744
6743
  };
6745
- function Or(e) {
6744
+ function pr(e) {
6746
6745
  var n, a, l, c, i, p;
6747
6746
  const t = [
6748
6747
  ((n = e.position) == null ? void 0 : n[0]) ?? 0,
@@ -6755,27 +6754,7 @@ function Or(e) {
6755
6754
  ], s = t.map((d) => d.toFixed(1)), o = r.map((d) => d.toFixed(4));
6756
6755
  return `(${s.concat(o).join(", ")})`;
6757
6756
  }
6758
- function Ce(e) {
6759
- Je(e, []);
6760
- }
6761
- function Vr(e) {
6762
- Ce(() => $e(e));
6763
- }
6764
- function Cr(e, t, r) {
6765
- Ce(() => Ke(e, t, r));
6766
- }
6767
- function Sr(e) {
6768
- return Ce(() => {
6769
- let t;
6770
- function r() {
6771
- e(), t = requestAnimationFrame(r);
6772
- }
6773
- return t = requestAnimationFrame(r), () => {
6774
- cancelAnimationFrame(t);
6775
- };
6776
- });
6777
- }
6778
- class rr {
6757
+ class Zt {
6779
6758
  constructor(t = [], r = {}) {
6780
6759
  this.currentValues = [], this.targetValues = [], this.previousTargetValues = [], this.targetUpdateTime = 0, this.animationId = null, this.updateCount = 0, this.velocities = [], this.animate = () => {
6781
6760
  this.update(0.016666666666666666) ? this.animationId = null : this.animationId = requestAnimationFrame(this.animate);
@@ -6897,9 +6876,9 @@ class rr {
6897
6876
  this.animationId === null && this.animate();
6898
6877
  }
6899
6878
  }
6900
- function br(e = [], t = {}) {
6879
+ function dr(e = [], t = {}) {
6901
6880
  const r = ie.useRef(null);
6902
- return r.current || (r.current = new rr(e, t)), ie.useEffect(() => {
6881
+ return r.current || (r.current = new Zt(e, t)), ie.useEffect(() => {
6903
6882
  var s;
6904
6883
  (s = r.current) == null || s.updateOptions(t);
6905
6884
  }, [t]), ie.useEffect(() => () => {
@@ -6908,17 +6887,13 @@ function br(e = [], t = {}) {
6908
6887
  }, []), [r.current];
6909
6888
  }
6910
6889
  export {
6911
- ur as M,
6912
- mr as N,
6913
- dr as P,
6914
- rr as V,
6890
+ cr as M,
6891
+ ir as N,
6892
+ or as P,
6893
+ Zt as V,
6915
6894
  J as a,
6916
- hr as b,
6917
- Vr as c,
6918
- br as d,
6919
- Ce as e,
6920
- Cr as f,
6921
- Or as p,
6922
- Sr as u
6895
+ nr as b,
6896
+ pr as p,
6897
+ dr as u
6923
6898
  };
6924
- //# sourceMappingURL=interpolation-DcPbemBD.js.map
6899
+ //# sourceMappingURL=interpolation-CZsbXLpo.js.map