@wandelbots/wandelbots-js-react-components
Version:
React UI toolkit for building applications on top of the Wandelbots platform
1,394 lines • 1.39 MB
JavaScript
var Rg = Object.defineProperty;
var Ag = (e, t, r) => t in e ? Rg(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
var qn = (e, t, r) => Ag(e, typeof t != "symbol" ? t + "" : t, r);
import * as B from "react";
import Zt, { useState as De, useRef as Se, useCallback as ge, useEffect as _e, useMemo as Ao, forwardRef as rt, Suspense as tp, lazy as _g } from "react";
import * as ve from "three";
import { Vector3 as Lo, Matrix4 as Wn, Quaternion as Ig } from "three";
import { ConvexGeometry as rp } from "three-stdlib";
import { Environment as Eg, Lightformer as Pr, Line as np, useGLTF as Vg, Bounds as Fc } from "@react-three/drei";
import { useThree as Mg, useFrame as jg, Canvas as Bc } from "@react-three/fiber";
import { SvgIcon as ap, AppBar as kg, Toolbar as $g, Box as re, Typography as he, IconButton as $r, alpha as Nc, Backdrop as Ug, Menu as Dg, MenuItem as gn, useTheme as Be, Fade as Ir, Divider as zt, Slider as Lg, Stack as $e, CircularProgress as Fg, capitalize as Bg, styled as kl, InputLabel as Ng, Select as zg, FormControl as Gg, ToggleButtonGroup as Hg, ToggleButton as zc, Tabs as op, Tab as sp, Tooltip as qg, Button as yr, Paper as Wg, Dialog as Jg, DialogTitle as Yg, DialogContent as Kg, DialogActions as Qg, Chip as ip, Card as Xg, Popover as Zg, Fab as e0, Badge as t0, createTheme as r0, rgbToHex as n0 } from "@mui/material";
import { observer as Ce, useLocalObservable as hs } from "mobx-react-lite";
import { I18nextProvider as a0, useTranslation as Qe, Trans as Dt } from "react-i18next";
import o0 from "i18next";
import s0 from "i18next-browser-languagedetector";
import { Gauge as i0 } from "@mui/x-charts";
import x from "prop-types";
import { ThemeContext as l0 } from "@emotion/react";
import c0 from "@emotion/styled";
import { useGridApiRef as u0, DataGrid as d0, Toolbar as h0, FilterPanelTrigger as p0, ToolbarButton as ci, QuickFilter as m0, QuickFilterTrigger as f0, QuickFilterControl as g0, QuickFilterClear as y0 } from "@mui/x-data-grid";
import { autorun as lp, reaction as b0, runInAction as gt, makeAutoObservable as $l, makeObservable as x0, action as Gc, observable as v0 } from "mobx";
import { lowerFirst as S0, countBy as w0, isString as O0 } from "lodash-es";
import { tryParseJson as C0, radiansToDegrees as _o, degreesToRadians as P0, poseToWandelscriptString as T0 } from "@wandelbots/nova-js";
import { DescriptionOutlined as R0, ContentCopy as A0, ExpandLess as _0, ExpandMore as I0, PlayArrow as Hc, Stop as qc, Pause as E0 } from "@mui/icons-material";
import { ErrorBoundary as V0 } from "react-error-boundary";
function M0(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var Za = { exports: {} }, Jn = {};
/**
* @license React
* react-jsx-runtime.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var Wc;
function j0() {
if (Wc) return Jn;
Wc = 1;
var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
function r(n, a, o) {
var s = null;
if (o !== void 0 && (s = "" + o), a.key !== void 0 && (s = "" + a.key), "key" in a) {
o = {};
for (var i in a)
i !== "key" && (o[i] = a[i]);
} else o = a;
return a = o.ref, {
$$typeof: e,
type: n,
key: s,
ref: a !== void 0 ? a : null,
props: o
};
}
return Jn.Fragment = t, Jn.jsx = r, Jn.jsxs = r, Jn;
}
var Yn = {};
/**
* @license React
* react-jsx-runtime.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var Jc;
function k0() {
return Jc || (Jc = 1, process.env.NODE_ENV !== "production" && function() {
function e(q) {
if (q == null) return null;
if (typeof q == "function")
return q.$$typeof === b ? null : q.displayName || q.name || null;
if (typeof q == "string") return q;
switch (q) {
case m:
return "Fragment";
case S:
return "Profiler";
case y:
return "StrictMode";
case P:
return "Suspense";
case O:
return "SuspenseList";
case E:
return "Activity";
}
if (typeof q == "object")
switch (typeof q.tag == "number" && console.error(
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
), q.$$typeof) {
case f:
return "Portal";
case w:
return (q.displayName || "Context") + ".Provider";
case R:
return (q._context.displayName || "Context") + ".Consumer";
case C:
var Q = q.render;
return q = q.displayName, q || (q = Q.displayName || Q.name || "", q = q !== "" ? "ForwardRef(" + q + ")" : "ForwardRef"), q;
case T:
return Q = q.displayName || null, Q !== null ? Q : e(q.type) || "Memo";
case _:
Q = q._payload, q = q._init;
try {
return e(q(Q));
} catch {
}
}
return null;
}
function t(q) {
return "" + q;
}
function r(q) {
try {
t(q);
var Q = !1;
} catch {
Q = !0;
}
if (Q) {
Q = console;
var de = Q.error, Ie = typeof Symbol == "function" && Symbol.toStringTag && q[Symbol.toStringTag] || q.constructor.name || "Object";
return de.call(
Q,
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
Ie
), t(q);
}
}
function n(q) {
if (q === m) return "<>";
if (typeof q == "object" && q !== null && q.$$typeof === _)
return "<...>";
try {
var Q = e(q);
return Q ? "<" + Q + ">" : "<...>";
} catch {
return "<...>";
}
}
function a() {
var q = A.A;
return q === null ? null : q.getOwner();
}
function o() {
return Error("react-stack-top-frame");
}
function s(q) {
if (N.call(q, "key")) {
var Q = Object.getOwnPropertyDescriptor(q, "key").get;
if (Q && Q.isReactWarning) return !1;
}
return q.key !== void 0;
}
function i(q, Q) {
function de() {
te || (te = !0, console.error(
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
Q
));
}
de.isReactWarning = !0, Object.defineProperty(q, "key", {
get: de,
configurable: !0
});
}
function l() {
var q = e(this.type);
return ee[q] || (ee[q] = !0, console.error(
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
)), q = this.props.ref, q !== void 0 ? q : null;
}
function c(q, Q, de, Ie, Je, Pe, mt, lt) {
return de = Pe.ref, q = {
$$typeof: p,
type: q,
key: Q,
props: Pe,
_owner: Je
}, (de !== void 0 ? de : null) !== null ? Object.defineProperty(q, "ref", {
enumerable: !1,
get: l
}) : Object.defineProperty(q, "ref", { enumerable: !1, value: null }), q._store = {}, Object.defineProperty(q._store, "validated", {
configurable: !1,
enumerable: !1,
writable: !0,
value: 0
}), Object.defineProperty(q, "_debugInfo", {
configurable: !1,
enumerable: !1,
writable: !0,
value: null
}), Object.defineProperty(q, "_debugStack", {
configurable: !1,
enumerable: !1,
writable: !0,
value: mt
}), Object.defineProperty(q, "_debugTask", {
configurable: !1,
enumerable: !1,
writable: !0,
value: lt
}), Object.freeze && (Object.freeze(q.props), Object.freeze(q)), q;
}
function u(q, Q, de, Ie, Je, Pe, mt, lt) {
var be = Q.children;
if (be !== void 0)
if (Ie)
if (V(be)) {
for (Ie = 0; Ie < be.length; Ie++)
d(be[Ie]);
Object.freeze && Object.freeze(be);
} else
console.error(
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
);
else d(be);
if (N.call(Q, "key")) {
be = e(q);
var K = Object.keys(Q).filter(function(le) {
return le !== "key";
});
Ie = 0 < K.length ? "{key: someKey, " + K.join(": ..., ") + ": ...}" : "{key: someKey}", ie[be + Ie] || (K = 0 < K.length ? "{" + K.join(": ..., ") + ": ...}" : "{}", console.error(
`A props object containing a "key" prop is being spread into JSX:
let props = %s;
<%s {...props} />
React keys must be passed directly to JSX without using spread:
let props = %s;
<%s key={someKey} {...props} />`,
Ie,
be,
K,
be
), ie[be + Ie] = !0);
}
if (be = null, de !== void 0 && (r(de), be = "" + de), s(Q) && (r(Q.key), be = "" + Q.key), "key" in Q) {
de = {};
for (var ae in Q)
ae !== "key" && (de[ae] = Q[ae]);
} else de = Q;
return be && i(
de,
typeof q == "function" ? q.displayName || q.name || "Unknown" : q
), c(
q,
be,
Pe,
Je,
a(),
de,
mt,
lt
);
}
function d(q) {
typeof q == "object" && q !== null && q.$$typeof === p && q._store && (q._store.validated = 1);
}
var h = Zt, p = Symbol.for("react.transitional.element"), f = Symbol.for("react.portal"), m = Symbol.for("react.fragment"), y = Symbol.for("react.strict_mode"), S = Symbol.for("react.profiler"), R = Symbol.for("react.consumer"), w = Symbol.for("react.context"), C = Symbol.for("react.forward_ref"), P = Symbol.for("react.suspense"), O = Symbol.for("react.suspense_list"), T = Symbol.for("react.memo"), _ = Symbol.for("react.lazy"), E = Symbol.for("react.activity"), b = Symbol.for("react.client.reference"), A = h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, N = Object.prototype.hasOwnProperty, V = Array.isArray, z = console.createTask ? console.createTask : function() {
return null;
};
h = {
"react-stack-bottom-frame": function(q) {
return q();
}
};
var te, ee = {}, ne = h["react-stack-bottom-frame"].bind(
h,
o
)(), X = z(n(o)), ie = {};
Yn.Fragment = m, Yn.jsx = function(q, Q, de, Ie, Je) {
var Pe = 1e4 > A.recentlyCreatedOwnerStacks++;
return u(
q,
Q,
de,
!1,
Ie,
Je,
Pe ? Error("react-stack-top-frame") : ne,
Pe ? z(n(q)) : X
);
}, Yn.jsxs = function(q, Q, de, Ie, Je) {
var Pe = 1e4 > A.recentlyCreatedOwnerStacks++;
return u(
q,
Q,
de,
!0,
Ie,
Je,
Pe ? Error("react-stack-top-frame") : ne,
Pe ? z(n(q)) : X
);
};
}()), Yn;
}
var Yc;
function $0() {
return Yc || (Yc = 1, process.env.NODE_ENV === "production" ? Za.exports = j0() : Za.exports = k0()), Za.exports;
}
var g = $0();
function U0(e) {
switch (e.shape_type) {
case "convex_hull":
return new rp(
e.vertices.map(
(r) => new ve.Vector3(
r[0] / 1e3,
r[1] / 1e3,
r[2] / 1e3
)
)
);
case "box":
return new ve.BoxGeometry(
e.size_x / 1e3,
e.size_y / 1e3,
e.size_z / 1e3
);
case "sphere":
return new ve.SphereGeometry(e.radius / 1e3);
case "capsule":
return new ve.CapsuleGeometry(
e.radius / 1e3,
e.cylinder_height / 1e3
);
case "cylinder":
return new ve.CylinderGeometry(
e.radius / 1e3,
e.radius / 1e3,
e.height / 1e3
);
case "rectangle":
return new ve.BoxGeometry(e.size_x / 1e3, e.size_y / 1e3, 0);
default:
return console.warn(`${e.shape_type} is not supported`), new ve.BufferGeometry();
}
}
function D0({
name: e,
collider: t,
children: r
}) {
var o, s;
const n = ((o = t.pose) == null ? void 0 : o.position) ?? [0, 0, 0], a = ((s = t.pose) == null ? void 0 : s.orientation) ?? [0, 0, 0];
return t.margin && console.warn(`${e} margin is not supported`), /* @__PURE__ */ g.jsx(
"mesh",
{
name: e,
position: new ve.Vector3(
n[0],
n[1],
n[2]
).divideScalar(1e3),
rotation: new ve.Euler(a[0], a[1], a[2], "XYZ"),
geometry: U0(t.shape),
children: r
}
);
}
function L0({
name: e,
colliders: t,
meshChildrenProvider: r,
...n
}) {
return /* @__PURE__ */ g.jsx("group", { name: e, ...n, children: Object.entries(t).map(([a, o]) => /* @__PURE__ */ g.jsx(
D0,
{
name: a,
collider: o,
children: r(a, o)
},
a
)) });
}
function Wk({
scene: e,
meshChildrenProvider: t
}) {
const r = e.colliders;
return /* @__PURE__ */ g.jsx("group", { children: r && /* @__PURE__ */ g.jsx(
L0,
{
meshChildrenProvider: t,
colliders: r
}
) });
}
function Kc() {
return /* @__PURE__ */ g.jsx(Eg, { children: /* @__PURE__ */ g.jsx(F0, {}) });
}
function F0({ positions: e = [2, 0, 2, 0, 2, 0, 2, 0] }) {
return /* @__PURE__ */ g.jsxs(g.Fragment, { children: [
/* @__PURE__ */ g.jsx(
Pr,
{
intensity: 5,
"rotation-x": Math.PI / 2,
position: [0, 5, -9],
scale: [10, 10, 1]
}
),
/* @__PURE__ */ g.jsx("group", { rotation: [0, 0.5, 0], children: /* @__PURE__ */ g.jsx("group", { children: e.map((t, r) => /* @__PURE__ */ g.jsx(
Pr,
{
form: "circle",
intensity: 5,
rotation: [Math.PI / 2, 0, 0],
position: [t, 4, r * 4],
scale: [3, 1, 1]
},
r
)) }) }),
/* @__PURE__ */ g.jsx(
Pr,
{
intensity: 40,
"rotation-y": Math.PI / 2,
position: [-5, 1, -1],
scale: [20, 0.1, 1]
}
),
/* @__PURE__ */ g.jsx(
Pr,
{
intensity: 20,
"rotation-y": -Math.PI,
position: [-5, -2, -1],
scale: [20, 0.1, 1]
}
),
/* @__PURE__ */ g.jsx(
Pr,
{
"rotation-y": Math.PI / 2,
position: [-5, -1, -1],
scale: [20, 0.5, 1],
intensity: 5
}
),
/* @__PURE__ */ g.jsx(
Pr,
{
"rotation-y": -Math.PI / 2,
position: [10, 1, 0],
scale: [20, 1, 1],
intensity: 10
}
),
/* @__PURE__ */ g.jsx(
Pr,
{
form: "ring",
color: "white",
intensity: 5,
scale: 10,
position: [-15, 4, -18],
target: [0, 0, 0]
}
)
] });
}
function B0(e) {
if (e.length < 3)
return console.log("Not enough vertices to define a plane"), { isCoplanar: !1 };
const t = new ve.Vector3(e[0].x, e[0].y, e[0].z), r = new ve.Vector3(e[1].x, e[1].y, e[1].z), n = new ve.Vector3(e[2].x, e[2].y, e[2].z), a = new ve.Vector3().subVectors(r, t), o = new ve.Vector3().subVectors(n, t), s = new ve.Vector3().crossVectors(a, o).normalize();
for (let i = 3; i < e.length; i++) {
const l = new ve.Vector3(e[i].x, e[i].y, e[i].z), c = new ve.Vector3().subVectors(l, t), u = s.dot(c);
if (Math.abs(u) > 1e-6)
return console.log("Vertices are not on the same plane"), { isCoplanar: !1 };
}
return { isCoplanar: !0, normal: s };
}
function Jk({
safetyZones: e,
...t
}) {
return /* @__PURE__ */ g.jsx("group", { ...t, children: e.map((r, n) => {
let a = [];
return r.geometry && (r.geometry.compound ? a = r.geometry.compound.child_geometries : r.geometry.convex_hull && (a = [r.geometry])), a.map((o, s) => {
if (!o.convex_hull) return null;
const i = o.convex_hull.vertices.map(
(u) => new ve.Vector3(u.x / 1e3, u.y / 1e3, u.z / 1e3)
), l = B0(i);
if (l.isCoplanar && l.normal) {
const d = new ve.Vector3().addVectors(
i[0],
l.normal.multiplyScalar(1e-4)
);
i.push(d);
}
let c;
try {
c = new rp(i);
} catch (u) {
return console.log("Error creating ConvexGeometry:", u), null;
}
return /* @__PURE__ */ g.jsx("mesh", { geometry: c, children: /* @__PURE__ */ g.jsx(
"meshStandardMaterial",
{
attach: "material",
color: "#009f4d",
opacity: 0.2,
depthTest: !1,
depthWrite: !1,
transparent: !0,
polygonOffset: !0,
polygonOffsetFactor: -s
},
n
) }, `${n}-${s}`);
});
}) });
}
function Yk({
trajectory: e,
...t
}) {
var n;
const r = ((n = e.trajectory) == null ? void 0 : n.map((a) => a.tcp_pose ? new ve.Vector3(
a.tcp_pose.position.x / 1e3,
a.tcp_pose.position.z / 1e3,
-a.tcp_pose.position.y / 1e3
) : null).filter((a) => a !== null)) || [];
return /* @__PURE__ */ g.jsx("group", { ...t, children: r.length > 0 && /* @__PURE__ */ g.jsx(
np,
{
points: r,
lineWidth: 3,
polygonOffset: !0,
polygonOffsetFactor: 10,
polygonOffsetUnits: 10
}
) });
}
const N0 = {
"Jogging.Cartesian.Translation.velocityMmPerSec.lb": "{{amount}} mm/s",
"Jogging.Cartesian.Rotation.velocityDegPerSec.lb": "{{amount}}°/s",
"Jogging.Velocity.lb": "Geschwindigkeit",
"General.degree.variable": "{{amount}}°",
"General.mm.variable": "{{amount}} mm",
"Jogging.Cartesian.MotionType.lb": "Bewegungstyp",
"Jogging.Cartesian.Translation.bt": "Translation",
"Jogging.Cartesian.Rotation.bt": "Rotation",
"Jogging.Joints.JointValues.lb": "Gelenkwerte",
"Jogging.Increment.Continuous.dd": "Fortlaufend",
"Jogging.Cartesian.Orientation.lb": "Orientierung",
"Jogging.JointLimitsReached.lb": "Gelenkgrenzen für Gelenk {{jointNumbers}} erreicht",
"Jogging.Orientation.coordsys": "Roboterbasis",
"Jogging.Orientation.tool": "Werkzeug",
"SafetyBar.ActivationToggle.Activate.bt": "Aktivieren",
"SafetyBar.ActivationToggle.Activated.bt": "Aktiviert",
"SafetyBar.ActivationToggle.Activating.bt": "Wird aktiviert…",
"SafetyBar.ActivationToggle.Deactivating.bt": "Wird deaktiviert…",
"SafetyBar.ControllerType.Physical.lb": "Physisch",
"SafetyBar.ControllerType.Virtual.lb": "Virtuell",
"SafetyBar.MotionGroup.Physical.Explanation.lb": "<code>{{motionGroupId}}</code> ist ein physische Robotersteuerung. Für die Bewegung dieses Roboters sind <strong>Sicherheitsmaßnahmen</strong> aktiv.",
"SafetyBar.MotionGroup.Virtual.Explanation.lb": "<1>{{motionGroupId}}</1> ist eine virtuelle Robotersteuerung ohne physisches Gegenstück. Der Roboter kann ohne Sicherheitsmaßnahmen bewegt werden.",
"SafetyBar.OperationMode.Auto.Explanation.lb": "Automatischer Betriebsmodus der Robotersteuerung aktiv. Automatisierte Bewegung ohne manuelle Bestätigung freigegeben.",
"SafetyBar.OperationMode.Automatic.ti": "Automatisch",
"SafetyBar.OperationMode.Error.Explanation.lb": "Fehler beim Abrufen des Betriebsmodus. Originalhandbediengerät des Roboters verwenden, um Fehler zu lösen.",
"SafetyBar.OperationMode.Error.lb": "Fehler",
"SafetyBar.OperationMode.Manual.Explanation.lb": `Die Robotersteuerung befindet sich im manuellen Betriebsmodus.
Bei einem physischen Roboter bedeutet dies im Allgemeinen, dass ein Freigabeschalter gedrückt werden muss, damit sich der Roboter erfolgreich bewegen kann.`,
"SafetyBar.OperationMode.Manual.lb": "Manuell",
"SafetyBar.OperationMode.ti": "Betriebsmodus",
"SafetyBar.SafetyState.Error.Explanation.lb": "Die Robotersteuerung ist in einen unerwarteten Sicherheitszustand eingetreten.",
"SafetyBar.SafetyState.Error.lb": "Fehler",
"SafetyBar.SafetyState.Estop.lb": "NOT-AUS",
"SafetyBar.SafetyState.ManualActionRequired.Explanation.lb": "Die Robotersteuerung ist in einen Sicherheitszustand eingetreten, der manuelle Maßnahmen zur Behebung erfordert.",
"SafetyBar.SafetyState.ManualActionRequired.lb": "Aktion erforderlich",
"SafetyBar.SafetyState.Normal.Explanation.lb": "Die Robotersteuerung befindet sich in einem sicheren Zustand. Roboterbewegungen sind möglich.",
"SafetyBar.SafetyState.Normal.lb": "Sicher",
"SafetyBar.SafetyState.Stop.Explanation.lb": "Die Robotersteuerung ist in einen Stoppzustand übergegangen. Bis der Stoppzustand aufgelöst ist, ist keine Bewegung mehr möglich.",
"SafetyBar.SafetyState.Stop.lb": "Stopp",
"SafetyBar.SafetyState.ti": "Sicherheitszustand",
"SafetyBar.StopState.Estop.Explanation.lb": "NOT-AUS aktiviert. NOT-AUS freischalten, um Roboter zu bewegen.",
"Jogging.Increment.hlb": "Schrittgröße",
"Jogging.CoordinateSystem.hlb": "Koordinatensystem",
"Jogging.Cartesian.bt": "Kartesisch",
"Jogging.Joints.bt": "Gelenke",
"Jogging.Velocity.bt": "Geschwindigkeit",
"CycleTimer.RemainingTime.lb": "Verbleibende Zeit",
"CycleTimer.OfTime.lb": "von {{time}}",
"CycleTimer.Time.lb": "{{time}}",
"CycleTimer.Error.lb": "Fehler",
"CycleTimer.WaitingForCycle.lb": "Warten auf Programmzyklus",
"CycleTimer.CycleTime.lb": "Zykluszeit",
"CycleTimer.Measuring.lb": "wird gemessen...",
"CycleTimer.Determined.lb": "bestimmt",
"Timer.error": "Fehler",
"ProgramControl.Start.bt": "Start",
"ProgramControl.Resume.bt": "Weiter",
"ProgramControl.Retry.bt": "Wiederholen",
"ProgramControl.Pause.bt": "Pause",
"ProgramControl.Stop.bt": "Stopp",
"ProgramStateIndicator.Preparing.lb": "Vorbereitung",
"ProgramStateIndicator.Starting.lb": "Startet",
"ProgramStateIndicator.Running.lb": "In Betrieb",
"ProgramStateIndicator.Pausing.lb": "Pausiert",
"ProgramStateIndicator.Stopping.lb": "Stoppt",
"ProgramStateIndicator.Completed.lb": "Abgeschlossen",
"ProgramStateIndicator.Failed.lb": "Fehlgeschlagen",
"ProgramStateIndicator.Error.lb": "Fehler",
"ProgramStateIndicator.EStop.lb": "Not-Aus",
"ProgramStateIndicator.Idle.lb": "Leerlauf",
"ProgramStateIndicator.Paused.lb": "Pausiert",
"ProgramStateIndicator.Ready.lb": "Bereit",
"ProgramStateIndicator.Stopped.lb": "Gestoppt",
"ProgramStateIndicator.Auto.lb": "Auto",
"ProgramStateIndicator.Manual.lb": "Manuell",
"ProgramStateIndicator.ManualT1.lb": "Manuell T1",
"ProgramStateIndicator.ManualT2.lb": "Manuell T2",
"RobotSetupReadinessIndicator.Ready.lb": "Bereit",
"RobotSetupReadinessIndicator.RobotDisconnected.lb": "Roboter getrennt",
"RobotSetupReadinessIndicator.CellOpen.lb": "Zelle offen",
"RobotSetupReadinessIndicator.EStop.lb": "Not-Stopp",
"RobotSetupReadinessIndicator.ManualMode.lb": "Manueller Modus",
"RobotSetupReadinessIndicator.PreconditionNotFulfilled.lb": "Voraussetzung nicht erfüllt",
"RobotCard.Runtime.lb": "Laufzeit",
"RobotCard.DriveToHome.bt": "Zur Home-Position fahren"
}, z0 = {
"Jogging.Cartesian.Translation.velocityMmPerSec.lb": "{{amount}} mm/s",
"Jogging.Cartesian.Rotation.velocityDegPerSec.lb": "{{amount}}°/s",
"Jogging.Velocity.lb": "Velocity",
"General.degree.variable": "{{amount}}°",
"General.mm.variable": "{{amount}} mm",
"Jogging.Cartesian.MotionType.lb": "Motion type",
"Jogging.Cartesian.Translation.bt": "Translation",
"Jogging.Cartesian.Rotation.bt": "Rotation",
"Jogging.Joints.JointValues.lb": "Joint values",
"Jogging.Increment.Continuous.dd": "Continuous",
"Jogging.Cartesian.Orientation.lb": "Orientation",
"Jogging.Activating.lb": "Activating jogging",
"Jogging.JointLimitsReached.lb": "Joint limit reached for joint {{jointNumbers}}",
"Jogging.Orientation.coordsys": "Robot base",
"Jogging.Orientation.tool": "Tool",
"SafetyBar.ActivationToggle.Activate.bt": "Activate",
"SafetyBar.ActivationToggle.Activated.bt": "Activated",
"SafetyBar.ActivationToggle.Activating.bt": "Activating",
"SafetyBar.ActivationToggle.Deactivating.bt": "Deactivating",
"SafetyBar.ControllerType.Physical.lb": "Physical",
"SafetyBar.ControllerType.Virtual.lb": "Virtual",
"SafetyBar.MotionGroup.Physical.Explanation.lb": "<code>{{motionGroupId}}</code> is a physical robot controller. <strong>Safety precautions</strong> are active for the movement of this robot.",
"SafetyBar.MotionGroup.Virtual.Explanation.lb": "<1>{{motionGroupId}}</1> is a virtual robot controller with no physical counterpart. It can be freely manipulated without safety precautions.",
"SafetyBar.OperationMode.Auto.Explanation.lb": "Automatic operation mode active. Automated movement without manual confirmation enabled.",
"SafetyBar.OperationMode.Automatic.ti": "Automatic",
"SafetyBar.OperationMode.Error.Explanation.lb": "Failed to get operation mode. Use the original control panel to resolve the error.",
"SafetyBar.OperationMode.Error.lb": "Error",
"SafetyBar.OperationMode.Manual.Explanation.lb": "The robot controller is in manual operation mode. On a physical robot, this generally indicates that an enabling switch must be held for the robot to move successfully.",
"SafetyBar.OperationMode.Manual.lb": "Manual",
"SafetyBar.OperationMode.ti": "Operation mode",
"SafetyBar.SafetyState.Error.Explanation.lb": "The robot controller has entered an unexpected safety state.",
"SafetyBar.SafetyState.Error.lb": "Error",
"SafetyBar.SafetyState.Estop.lb": "E-Stop",
"SafetyBar.SafetyState.ManualActionRequired.Explanation.lb": "The robot controller has entered a safety state requiring manual action to resolve.",
"SafetyBar.SafetyState.ManualActionRequired.lb": "Action required",
"SafetyBar.SafetyState.Normal.Explanation.lb": "The robot controller is in a safe state. Robot movement is enabled.",
"SafetyBar.SafetyState.Normal.lb": "Safe",
"SafetyBar.SafetyState.Stop.Explanation.lb": "The robot controller has entered a stop state. Movement is no longer possible until the stop state is resolved.",
"SafetyBar.SafetyState.Stop.lb": "Stop",
"SafetyBar.SafetyState.ti": "Safety state",
"SafetyBar.StopState.Estop.Explanation.lb": "An emergency stop of the robot controller has been triggered. Movement of the robot is no longer possible until the estop is released.",
"Jogging.Increment.hlb": "Increment",
"Jogging.CoordinateSystem.hlb": "Coordinate system",
"Jogging.Cartesian.bt": "Cartesian",
"Jogging.Joints.bt": "Joints",
"Jogging.Velocity.bt": "Velocity",
"CycleTimer.RemainingTime.lb": "Time remaining",
"CycleTimer.OfTime.lb": "of {{time}}",
"CycleTimer.Time.lb": "{{time}}",
"CycleTimer.Error.lb": "Error",
"CycleTimer.WaitingForCycle.lb": "Waiting for program cycle",
"CycleTimer.CycleTime.lb": "Cycle Time",
"CycleTimer.Measuring.lb": "measuring...",
"CycleTimer.Determined.lb": "determined",
"Timer.error": "Error",
"ProgramControl.Start.bt": "Start",
"ProgramControl.Resume.bt": "Resume",
"ProgramControl.Retry.bt": "Retry",
"ProgramControl.Pause.bt": "Pause",
"ProgramControl.Stop.bt": "Stop",
"ProgramStateIndicator.Preparing.lb": "Preparing",
"ProgramStateIndicator.Starting.lb": "Starting",
"ProgramStateIndicator.Running.lb": "Running",
"ProgramStateIndicator.Pausing.lb": "Pausing",
"ProgramStateIndicator.Stopping.lb": "Stopping",
"ProgramStateIndicator.Completed.lb": "Completed",
"ProgramStateIndicator.Failed.lb": "Failed",
"ProgramStateIndicator.Error.lb": "Error",
"ProgramStateIndicator.EStop.lb": "E-Stop",
"ProgramStateIndicator.Idle.lb": "Idle",
"ProgramStateIndicator.Paused.lb": "Paused",
"ProgramStateIndicator.Ready.lb": "Ready",
"ProgramStateIndicator.Stopped.lb": "Stopped",
"ProgramStateIndicator.Auto.lb": "Auto",
"ProgramStateIndicator.Manual.lb": "Manual",
"ProgramStateIndicator.ManualT1.lb": "Manual T1",
"ProgramStateIndicator.ManualT2.lb": "Manual T2",
"RobotSetupReadinessIndicator.Ready.lb": "Ready",
"RobotSetupReadinessIndicator.RobotDisconnected.lb": "Robot disconnected",
"RobotSetupReadinessIndicator.CellOpen.lb": "Cell open",
"RobotSetupReadinessIndicator.EStop.lb": "E-Stop",
"RobotSetupReadinessIndicator.ManualMode.lb": "Manual mode",
"RobotSetupReadinessIndicator.PreconditionNotFulfilled.lb": "Precondition not fulfilled",
"RobotCard.Runtime.lb": "Runtime",
"RobotCard.DriveToHome.bt": "Drive to Home"
}, cp = o0.createInstance();
cp.use(s0).init({
supportedLngs: ["en", "de"],
resources: {
en: {
translations: z0
},
de: {
translations: N0
}
},
ns: ["translations"],
defaultNS: "translations",
detection: {
order: ["navigator", "htmlTag"]
}
});
function Ge(e) {
return (r) => /* @__PURE__ */ g.jsx(G0, { children: /* @__PURE__ */ g.jsx(e, { ...r }) });
}
const G0 = ({
children: e
}) => /* @__PURE__ */ g.jsx(a0, { i18n: cp, children: e }), H0 = (e) => /* @__PURE__ */ g.jsx(ap, { ...e, viewBox: "0 0 10 8", children: /* @__PURE__ */ g.jsx(
"path",
{
d: "M8.825 0.9125L5 4.72917L1.175 0.9125L0 2.0875L5 7.0875L10 2.0875L8.825 0.9125Z",
fill: "currentColor",
fillOpacity: "0.56"
}
) }), Kk = Ge(
Ce((e) => {
const {
appIcon: t,
appName: r,
apps: n = [],
onAppSelect: a,
disabled: o = !1,
sx: s
} = e, [i, l] = De(null), c = !!i, u = (p) => {
l(p.currentTarget);
}, d = () => {
l(null);
}, h = (p) => {
d(), p.onClick ? p.onClick() : p.href && (window.location.href = p.href), a == null || a(p);
};
return /* @__PURE__ */ g.jsxs(g.Fragment, { children: [
/* @__PURE__ */ g.jsx(
kg,
{
position: "static",
sx: {
boxShadow: "none",
backgroundImage: "none",
"& .MuiAppBar-root": {
backgroundImage: "none",
backgroundColor: "transparent"
},
...s
},
children: /* @__PURE__ */ g.jsxs($g, { sx: { minHeight: "62px !important" }, children: [
/* @__PURE__ */ g.jsx(re, { sx: { mr: 1, display: "flex", alignItems: "center" }, children: t }),
/* @__PURE__ */ g.jsxs(re, { sx: { display: "flex", alignItems: "center", flexGrow: 1 }, children: [
/* @__PURE__ */ g.jsx(
he,
{
component: "h1",
sx: {
fontWeight: "bold",
fontSize: "1rem"
},
children: r
}
),
n.length > 0 && /* @__PURE__ */ g.jsx(
$r,
{
color: "inherit",
"aria-label": "switch app",
"aria-controls": "app-menu",
"aria-haspopup": "true",
onClick: u,
disabled: o,
sx: {
ml: 1,
width: 28,
height: 28,
borderRadius: "6px",
padding: 0,
backgroundColor: (p) => Nc(p.palette.common.white, 0.1),
opacity: 1,
"&:hover": {
backgroundColor: (p) => Nc(p.palette.common.white, 0.16)
},
"& .MuiSvgIcon-root": {
fontSize: "8px",
width: "8px",
height: "6px"
}
},
children: /* @__PURE__ */ g.jsx(H0, {})
}
)
] })
] })
}
),
/* @__PURE__ */ g.jsx(
Ug,
{
open: c,
onClick: d,
sx: {
backdropFilter: "blur(4px)",
backgroundColor: "rgba(0, 0, 0, 0.3)",
zIndex: (p) => p.zIndex.modal - 1
}
}
),
/* @__PURE__ */ g.jsx(
Dg,
{
id: "app-menu",
anchorEl: i,
open: c,
onClose: d,
anchorOrigin: {
vertical: "bottom",
horizontal: "left"
},
transformOrigin: {
vertical: "top",
horizontal: "left"
},
sx: {
zIndex: (p) => p.zIndex.modal,
"& .MuiPaper-root": {
minWidth: 200,
mt: 1
}
},
children: n.map((p) => /* @__PURE__ */ g.jsxs(gn, { onClick: () => h(p), children: [
/* @__PURE__ */ g.jsx(re, { sx: { display: "flex", alignItems: "center" }, children: p.icon }),
/* @__PURE__ */ g.jsx(he, { variant: "body1", sx: { ml: 2 }, children: p.name })
] }, p.id))
}
)
] });
})
);
function J() {
return J = Object.assign ? Object.assign.bind() : function(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t];
for (var n in r) ({}).hasOwnProperty.call(r, n) && (e[n] = r[n]);
}
return e;
}, J.apply(null, arguments);
}
function br(e, t) {
if (e == null) return {};
var r = {};
for (var n in e) if ({}.hasOwnProperty.call(e, n)) {
if (t.indexOf(n) !== -1) continue;
r[n] = e[n];
}
return r;
}
function ps(e, t, r = void 0) {
const n = {};
for (const a in e) {
const o = e[a];
let s = "", i = !0;
for (let l = 0; l < o.length; l += 1) {
const c = o[l];
c && (s += (i === !0 ? "" : " ") + t(c), i = !1, r && r[c] && (s += " " + r[c]));
}
n[a] = s;
}
return n;
}
function up(e) {
var t, r, n = "";
if (typeof e == "string" || typeof e == "number") n += e;
else if (typeof e == "object") if (Array.isArray(e)) {
var a = e.length;
for (t = 0; t < a; t++) e[t] && (r = up(e[t])) && (n && (n += " "), n += r);
} else for (r in e) e[r] && (n && (n += " "), n += r);
return n;
}
function It() {
for (var e, t, r = 0, n = "", a = arguments.length; r < a; r++) (e = arguments[r]) && (t = up(e)) && (n && (n += " "), n += t);
return n;
}
function xr(e, ...t) {
const r = new URL(`https://mui.com/production-error/?code=${e}`);
return t.forEach((n) => r.searchParams.append("args[]", n)), `Minified MUI error #${e}; visit ${r} for the full message.`;
}
const Ul = "$$material";
function q0(e) {
for (var t = 0, r, n = 0, a = e.length; a >= 4; ++n, a -= 4)
r = e.charCodeAt(n) & 255 | (e.charCodeAt(++n) & 255) << 8 | (e.charCodeAt(++n) & 255) << 16 | (e.charCodeAt(++n) & 255) << 24, r = /* Math.imul(k, m): */
(r & 65535) * 1540483477 + ((r >>> 16) * 59797 << 16), r ^= /* k >>> r: */
r >>> 24, t = /* Math.imul(k, m): */
(r & 65535) * 1540483477 + ((r >>> 16) * 59797 << 16) ^ /* Math.imul(h, m): */
(t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
switch (a) {
case 3:
t ^= (e.charCodeAt(n + 2) & 255) << 16;
case 2:
t ^= (e.charCodeAt(n + 1) & 255) << 8;
case 1:
t ^= e.charCodeAt(n) & 255, t = /* Math.imul(h, m): */
(t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16);
}
return t ^= t >>> 13, t = /* Math.imul(h, m): */
(t & 65535) * 1540483477 + ((t >>> 16) * 59797 << 16), ((t ^ t >>> 15) >>> 0).toString(36);
}
var W0 = {
animationIterationCount: 1,
aspectRatio: 1,
borderImageOutset: 1,
borderImageSlice: 1,
borderImageWidth: 1,
boxFlex: 1,
boxFlexGroup: 1,
boxOrdinalGroup: 1,
columnCount: 1,
columns: 1,
flex: 1,
flexGrow: 1,
flexPositive: 1,
flexShrink: 1,
flexNegative: 1,
flexOrder: 1,
gridRow: 1,
gridRowEnd: 1,
gridRowSpan: 1,
gridRowStart: 1,
gridColumn: 1,
gridColumnEnd: 1,
gridColumnSpan: 1,
gridColumnStart: 1,
msGridRow: 1,
msGridRowSpan: 1,
msGridColumn: 1,
msGridColumnSpan: 1,
fontWeight: 1,
lineHeight: 1,
opacity: 1,
order: 1,
orphans: 1,
scale: 1,
tabSize: 1,
widows: 1,
zIndex: 1,
zoom: 1,
WebkitLineClamp: 1,
// SVG-related properties
fillOpacity: 1,
floodOpacity: 1,
stopOpacity: 1,
strokeDasharray: 1,
strokeDashoffset: 1,
strokeMiterlimit: 1,
strokeOpacity: 1,
strokeWidth: 1
};
function J0(e) {
var t = /* @__PURE__ */ Object.create(null);
return function(r) {
return t[r] === void 0 && (t[r] = e(r)), t[r];
};
}
var Y0 = /[A-Z]|^ms/g, K0 = /_EMO_([^_]+?)_([^]*?)_EMO_/g, dp = function(t) {
return t.charCodeAt(1) === 45;
}, Qc = function(t) {
return t != null && typeof t != "boolean";
}, ui = /* @__PURE__ */ J0(function(e) {
return dp(e) ? e : e.replace(Y0, "-$&").toLowerCase();
}), Xc = function(t, r) {
switch (t) {
case "animation":
case "animationName":
if (typeof r == "string")
return r.replace(K0, function(n, a, o) {
return fr = {
name: a,
styles: o,
next: fr
}, a;
});
}
return W0[t] !== 1 && !dp(t) && typeof r == "number" && r !== 0 ? r + "px" : r;
};
function Fo(e, t, r) {
if (r == null)
return "";
var n = r;
if (n.__emotion_styles !== void 0)
return n;
switch (typeof r) {
case "boolean":
return "";
case "object": {
var a = r;
if (a.anim === 1)
return fr = {
name: a.name,
styles: a.styles,
next: fr
}, a.name;
var o = r;
if (o.styles !== void 0) {
var s = o.next;
if (s !== void 0)
for (; s !== void 0; )
fr = {
name: s.name,
styles: s.styles,
next: fr
}, s = s.next;
var i = o.styles + ";";
return i;
}
return Q0(e, t, r);
}
}
var l = r;
return l;
}
function Q0(e, t, r) {
var n = "";
if (Array.isArray(r))
for (var a = 0; a < r.length; a++)
n += Fo(e, t, r[a]) + ";";
else
for (var o in r) {
var s = r[o];
if (typeof s != "object") {
var i = s;
Qc(i) && (n += ui(o) + ":" + Xc(o, i) + ";");
} else if (Array.isArray(s) && typeof s[0] == "string" && t == null)
for (var l = 0; l < s.length; l++)
Qc(s[l]) && (n += ui(o) + ":" + Xc(o, s[l]) + ";");
else {
var c = Fo(e, t, s);
switch (o) {
case "animation":
case "animationName": {
n += ui(o) + ":" + c + ";";
break;
}
default:
n += o + "{" + c + "}";
}
}
}
return n;
}
var Zc = /label:\s*([^\s;{]+)\s*(;|$)/g, fr;
function X0(e, t, r) {
if (e.length === 1 && typeof e[0] == "object" && e[0] !== null && e[0].styles !== void 0)
return e[0];
var n = !0, a = "";
fr = void 0;
var o = e[0];
if (o == null || o.raw === void 0)
n = !1, a += Fo(r, t, o);
else {
var s = o;
a += s[0];
}
for (var i = 1; i < e.length; i++)
if (a += Fo(r, t, e[i]), n) {
var l = o;
a += l[i];
}
Zc.lastIndex = 0;
for (var c = "", u; (u = Zc.exec(a)) !== null; )
c += "-" + u[1];
var d = q0(a) + c;
return {
name: d,
styles: a,
next: fr
};
}
/**
* @mui/styled-engine v7.1.1
*
* @license MIT
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
function Z0(e, t) {
const r = c0(e, t);
return process.env.NODE_ENV !== "production" ? (...n) => {
const a = typeof e == "string" ? `"${e}"` : "component";
return n.length === 0 ? console.error([`MUI: Seems like you called \`styled(${a})()\` without a \`style\` argument.`, 'You must provide a `styles` argument: `styled("div")(styleYouForgotToPass)`.'].join(`
`)) : n.some((o) => o === void 0) && console.error(`MUI: the styled(${a})(...args) API requires all its args to be defined.`), r(...n);
} : r;
}
function ey(e, t) {
Array.isArray(e.__emotion_styles) && (e.__emotion_styles = t(e.__emotion_styles));
}
const eu = [];
function tu(e) {
return eu[0] = e, X0(eu);
}
var eo = { exports: {} }, we = {};
/**
* @license React
* react-is.production.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var ru;
function ty() {
if (ru) return we;
ru = 1;
var e = Symbol.for("react.transitional.element"), t = Symbol.for("react.portal"), r = Symbol.for("react.fragment"), n = Symbol.for("react.strict_mode"), a = Symbol.for("react.profiler"), o = Symbol.for("react.consumer"), s = Symbol.for("react.context"), i = Symbol.for("react.forward_ref"), l = Symbol.for("react.suspense"), c = Symbol.for("react.suspense_list"), u = Symbol.for("react.memo"), d = Symbol.for("react.lazy"), h = Symbol.for("react.view_transition"), p = Symbol.for("react.client.reference");
function f(m) {
if (typeof m == "object" && m !== null) {
var y = m.$$typeof;
switch (y) {
case e:
switch (m = m.type, m) {
case r:
case a:
case n:
case l:
case c:
case h:
return m;
default:
switch (m = m && m.$$typeof, m) {
case s:
case i:
case d:
case u:
return m;
case o:
return m;
default:
return y;
}
}
case t:
return y;
}
}
}
return we.ContextConsumer = o, we.ContextProvider = s, we.Element = e, we.ForwardRef = i, we.Fragment = r, we.Lazy = d, we.Memo = u, we.Portal = t, we.Profiler = a, we.StrictMode = n, we.Suspense = l, we.SuspenseList = c, we.isContextConsumer = function(m) {
return f(m) === o;
}, we.isContextProvider = function(m) {
return f(m) === s;
}, we.isElement = function(m) {
return typeof m == "object" && m !== null && m.$$typeof === e;
}, we.isForwardRef = function(m) {
return f(m) === i;
}, we.isFragment = function(m) {
return f(m) === r;
}, we.isLazy = function(m) {
return f(m) === d;
}, we.isMemo = function(m) {
return f(m) === u;
}, we.isPortal = function(m) {
return f(m) === t;
}, we.isProfiler = function(m) {
return f(m) === a;
}, we.isStrictMode = function(m) {
return f(m) === n;
}, we.isSuspense = function(m) {
return f(m) === l;
}, we.isSuspenseList = function(m) {
return f(m) === c;
}, we.isValidElementType = function(m) {
return typeof m == "string" || typeof m == "function" || m === r || m === a || m === n || m === l || m === c || typeof m == "object" && m !== null && (m.$$typeof === d || m.$$typeof === u || m.$$typeof === s || m.$$typeof === o || m.$$typeof === i || m.$$typeof === p || m.getModuleId !== void 0);
}, we.typeOf = f, we;
}
var Oe = {};
/**
* @license React
* react-is.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var nu;
function ry() {
return nu || (nu = 1, process.env.NODE_ENV !== "production" && function() {
function e(m) {
if (typeof m == "object" && m !== null) {
var y = m.$$typeof;
switch (y) {
case t:
switch (m = m.type, m) {
case n:
case o:
case a:
case c:
case u:
case p:
return m;
default:
switch (m = m && m.$$typeof, m) {
case i:
case l:
case h:
case d:
return m;
case s:
return m;
default:
return y;
}
}
case r:
return y;
}
}
}
var t = Symbol.for("react.transitional.element"), r = Symbol.for("react.portal"), n = Symbol.for("react.fragment"), a = Symbol.for("react.strict_mode"), o = Symbol.for("react.profiler"), s = Symbol.for("react.consumer"), i = Symbol.for("react.context"), l = Symbol.for("react.forward_ref"), c = Symbol.for("react.suspense"), u = Symbol.for("react.suspense_list"), d = Symbol.for("react.memo"), h = Symbol.for("react.lazy"), p = Symbol.for("react.view_transition"), f = Symbol.for("react.client.reference");
Oe.ContextConsumer = s, Oe.ContextProvider = i, Oe.Element = t, Oe.ForwardRef = l, Oe.Fragment = n, Oe.Lazy = h, Oe.Memo = d, Oe.Portal = r, Oe.Profiler = o, Oe.StrictMode = a, Oe.Suspense = c, Oe.SuspenseList = u, Oe.isContextConsumer = function(m) {
return e(m) === s;
}, Oe.isContextProvider = function(m) {
return e(m) === i;
}, Oe.isElement = function(m) {
return typeof m == "object" && m !== null && m.$$typeof === t;
}, Oe.isForwardRef = function(m) {
return e(m) === l;
}, Oe.isFragment = function(m) {
return e(m) === n;
}, Oe.isLazy = function(m) {
return e(m) === h;
}, Oe.isMemo = function(m) {
return e(m) === d;
}, Oe.isPortal = function(m) {
return e(m) === r;
}, Oe.isProfiler = function(m) {
return e(m) === o;
}, Oe.isStrictMode = function(m) {
return e(m) === a;
}, Oe.isSuspense = function(m) {
return e(m) === c;
}, Oe.isSuspenseList = function(m) {
return e(m) === u;
}, Oe.isValidElementType = function(m) {
return typeof m == "string" || typeof m == "function" || m === n || m === o || m === a || m === c || m === u || typeof m == "object" && m !== null && (m.$$typeof === h || m.$$typeof === d || m.$$typeof === i || m.$$typeof === s || m.$$typeof === l || m.$$typeof === f || m.getModuleId !== void 0);
}, Oe.typeOf = e;
}()), Oe;
}
var au;
function ny() {
return au || (au = 1, process.env.NODE_ENV === "production" ? eo.exports = /* @__PURE__ */ ty() : eo.exports = /* @__PURE__ */ ry()), eo.exports;
}
var Bo = /* @__PURE__ */ ny();
function Lt(e) {
if (typeof e != "object" || e === null)
return !1;
const t = Object.getPrototypeOf(e);
return (t === null || t === Object.prototype || Object.getPrototypeOf(t) === null) && !(Symbol.toStringTag in e) && !(Symbol.iterator in e);
}
function hp(e) {
if (/* @__PURE__ */ B.isValidElement(e) || Bo.isValidElementType(e) || !Lt(e))
return e;
const t = {};
return Object.keys(e).forEach((r) => {
t[r] = hp(e[r]);
}), t;
}
function it(e, t, r = {
clone: !0
}) {
const n = r.clone ? {
...e
} : e;
return Lt(e) && Lt(t) && Object.keys(t).forEach((a) => {
/* @__PURE__ */ B.isValidElement(t[a]) || Bo.isValidElementType(t[a]) ? n[a] = t[a] : Lt(t[a]) && // Avoid prototype pollution
Object.prototype.hasOwnProperty.call(e, a) && Lt(e[a]) ? n[a] = it(e[a], t[a], r) : r.clone ? n[a] = Lt(t[a]) ? hp(t[a]) : t[a] : n[a] = t[a];
}), n;
}
const ay = (e) => {
const t = Object.keys(e).map((r) => ({
key: r,
val: e[r]
})) || [];
return t.sort((r, n) => r.val - n.val), t.reduce((r, n) => ({
...r,
[n.key]: n.val
}), {});
};
function oy(e) {
const {
// The breakpoint **start** at this value.
// For instance with the first breakpoint xs: [xs, sm).
values: t = {
xs: 0,
// phone
sm: 600,
// tablet
md: 900,
// small laptop
lg: 1200,
// desktop
xl: 1536
// large screen
},
unit: r = "px",
step: n = 5,
...a
} = e, o = ay(t), s = Object.keys(o);
function i(h) {
return `@media (min-width:${typeof t[h] == "number" ? t[h] : h}${r})`;
}
function l(h) {
return `@media (max-width:${(typeof t[h] == "number" ? t[h] : h) - n / 100}${r})`;
}
function c(h, p) {
const f = s.indexOf(p);
return `@media (min-width:${typeof t[h] == "number" ? t[h] : h}${r}) and (max-width:${(f !== -1 && typeof t[s[f]] == "number" ? t[s[f]] : p) - n / 100}${r})`;
}
function u(h) {
return s.indexOf(h) + 1 < s.length ? c(h, s[s.indexOf(h) + 1]) : i(h);
}
function d(h) {
const p = s.indexOf(h);
return p === 0 ? i(s[1]) : p === s.length - 1 ? l(s[p]) : c(h, s[s.indexOf(h) + 1]).replace("@media", "@media not all and");
}
return {
keys: s,
values: o,
up: i,
down: l,
between: c,
only: u,
not: d,
unit: r,
...a
};
}
function sy(e, t) {
if (!e.containerQueries)
return t;
const r = Object.keys(t).filter((n) => n.startsWith("@container")).sort((n, a) => {
var s, i;
const o = /min-width:\s*([0-9.]+)/;
return +(((s = n.match(o)) == null ? void 0 : s[1]) || 0) - +(((i = a.match(o)) == null ? void 0 : i[1]) || 0);
});
return r.length ? r.reduce((n, a) => {
const o = t[a];
return delete n[a], n[a] = o, n;
}, {
...t
}) : t;
}
function iy(e, t) {
return t === "@" || t.startsWith("@") && (e.some((r) => t.startsWith(`@${r}`)) || !!t.match(/^@\d/));
}
function ly(e, t) {
const r = t.match(/^@([^/]+)?\/?(.+)?$/);
if (!r) {
if (process.env.NODE_ENV !== "production")
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The provided shorthand ${`(${t})`} is invalid. The format should be \`@<breakpoint | number>\` or \`@<breakpoint | number>/<container>\`.
For example, \`@sm\` or \`@600\` or \`@40rem/sidebar\`.` : xr(18, `(${t})`));
return null;
}
const [, n, a] = r, o = Number.isNaN(+n) ? n || 0 : +n;
return e.containerQueries(a).up(o);
}
function cy(e) {
const t = (o, s) => o.replace("@media", s ? `@container ${s}` : "@container");
function r(o, s) {
o.up = (...i) => t(e.breakpoints.up(...i), s), o.down = (...i) => t(e.breakpoints.down(...i), s), o.between = (...i) => t(e.breakpoints.between