@wandelbots/wandelbots-js-react-components 4.7.2 → 5.0.0-pr.feat-icons.568.cbf1817

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/README.md +30 -34
  2. package/dist/3d.cjs.js +1 -1
  3. package/dist/3d.es.js +1 -1
  4. package/dist/MotionGroupVisualizer-C6MgXjCN.cjs +2 -0
  5. package/dist/MotionGroupVisualizer-C6MgXjCN.cjs.map +1 -0
  6. package/dist/MotionGroupVisualizer-Cm-XYEZe.js +1328 -0
  7. package/dist/{MotionGroupVisualizer-DP4K1dVw.cjs.map → MotionGroupVisualizer-Cm-XYEZe.js.map} +1 -1
  8. package/dist/auth0-spa-js.production.esm-CVEdrQ4-.cjs +5 -0
  9. package/dist/auth0-spa-js.production.esm-CVEdrQ4-.cjs.map +1 -0
  10. package/dist/auth0-spa-js.production.esm-Cr9w0sUa.js +4217 -0
  11. package/dist/auth0-spa-js.production.esm-Cr9w0sUa.js.map +1 -0
  12. package/dist/components/3d-viewport/CoordinateSystemTransform.d.ts +1 -1
  13. package/dist/components/3d-viewport/CoordinateSystemTransform.d.ts.map +1 -1
  14. package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts +1 -2
  15. package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts.map +1 -1
  16. package/dist/components/3d-viewport/TrajectoryRenderer.d.ts +2 -2
  17. package/dist/components/3d-viewport/TrajectoryRenderer.d.ts.map +1 -1
  18. package/dist/components/3d-viewport/collider/ColliderCollection.d.ts +1 -1
  19. package/dist/components/3d-viewport/collider/ColliderElement.d.ts +1 -1
  20. package/dist/components/3d-viewport/collider/CollisionSceneRenderer.d.ts +2 -2
  21. package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.d.ts +1 -1
  22. package/dist/components/safetyBar/icons/index.d.ts +11 -0
  23. package/dist/components/safetyBar/icons/index.d.ts.map +1 -0
  24. package/dist/core.cjs.js +1 -1
  25. package/dist/core.es.js +37 -39
  26. package/dist/core.es.js.map +1 -1
  27. package/dist/icons/index.d.ts +9 -4
  28. package/dist/icons/index.d.ts.map +1 -1
  29. package/dist/index.cjs.js +1 -1
  30. package/dist/index.d.ts +1 -1
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.es.js +72 -52
  33. package/dist/index.es.js.map +1 -1
  34. package/dist/interpolation-GwZidExa.cjs +42 -0
  35. package/dist/interpolation-GwZidExa.cjs.map +1 -0
  36. package/dist/{interpolation-B8AcxfdD.js → interpolation-JdOMWH6y.js} +3635 -3115
  37. package/dist/interpolation-JdOMWH6y.js.map +1 -0
  38. package/dist/lib/ConnectedMotionGroup.d.ts +2 -3
  39. package/dist/lib/ConnectedMotionGroup.d.ts.map +1 -1
  40. package/dist/lib/MotionStreamConnection.d.ts +0 -1
  41. package/dist/lib/MotionStreamConnection.d.ts.map +1 -1
  42. package/dist/safety-state-stop-ClWLVLMl.cjs +2 -0
  43. package/dist/safety-state-stop-ClWLVLMl.cjs.map +1 -0
  44. package/dist/safety-state-stop-DuMBCxN5.js +91 -0
  45. package/dist/safety-state-stop-DuMBCxN5.js.map +1 -0
  46. package/dist/themes/createDarkTheme.d.ts.map +1 -1
  47. package/dist/themes/themeTypes.d.ts +0 -4
  48. package/dist/themes/themeTypes.d.ts.map +1 -1
  49. package/dist/theming-B5Q8EK1c.cjs +115 -0
  50. package/dist/theming-B5Q8EK1c.cjs.map +1 -0
  51. package/dist/{theming-BKpqgTRM.js → theming-Bt0cspr6.js} +4360 -4385
  52. package/dist/theming-Bt0cspr6.js.map +1 -0
  53. package/dist/wb-icons.cjs.js +2 -0
  54. package/dist/wb-icons.cjs.js.map +1 -0
  55. package/dist/wb-icons.d.ts +3 -0
  56. package/dist/wb-icons.d.ts.map +1 -0
  57. package/dist/wb-icons.es.js +27 -0
  58. package/dist/wb-icons.es.js.map +1 -0
  59. package/dist/wbLogo-CObCmqTw.js +31 -0
  60. package/dist/wbLogo-CObCmqTw.js.map +1 -0
  61. package/dist/wbLogo-G_IfZ03l.cjs +2 -0
  62. package/dist/wbLogo-G_IfZ03l.cjs.map +1 -0
  63. package/package.json +19 -28
  64. package/src/components/3d-viewport/CoordinateSystemTransform.tsx +29 -18
  65. package/src/components/3d-viewport/SafetyZonesRenderer.tsx +24 -151
  66. package/src/components/3d-viewport/TrajectoryRenderer.tsx +9 -10
  67. package/src/components/3d-viewport/collider/ColliderCollection.tsx +1 -1
  68. package/src/components/3d-viewport/collider/ColliderElement.tsx +1 -1
  69. package/src/components/3d-viewport/collider/CollisionSceneRenderer.tsx +2 -2
  70. package/src/components/3d-viewport/collider/colliderShapeToBufferGeometry.ts +1 -1
  71. package/src/components/safetyBar/icons/index.ts +10 -0
  72. package/src/core.ts +0 -1
  73. package/src/icons/index.ts +9 -4
  74. package/src/index.ts +1 -1
  75. package/src/lib/ConnectedMotionGroup.ts +0 -5
  76. package/src/lib/MotionStreamConnection.ts +0 -5
  77. package/src/themes/createDarkTheme.ts +1 -22
  78. package/src/themes/themeTypes.ts +0 -5
  79. package/src/wb-icons.ts +3 -0
  80. package/dist/LoadingCover-B3UN1lnU.js +0 -81
  81. package/dist/LoadingCover-B3UN1lnU.js.map +0 -1
  82. package/dist/LoadingCover-DXcsXWDy.cjs +0 -2
  83. package/dist/LoadingCover-DXcsXWDy.cjs.map +0 -1
  84. package/dist/MotionGroupVisualizer-CPEIGXUC.js +0 -1407
  85. package/dist/MotionGroupVisualizer-CPEIGXUC.js.map +0 -1
  86. package/dist/MotionGroupVisualizer-DP4K1dVw.cjs +0 -2
  87. package/dist/WandelscriptEditor-6sAoniLC.cjs +0 -2
  88. package/dist/WandelscriptEditor-6sAoniLC.cjs.map +0 -1
  89. package/dist/WandelscriptEditor-kWC2VyG_.js +0 -140
  90. package/dist/WandelscriptEditor-kWC2VyG_.js.map +0 -1
  91. package/dist/auth0-spa-js.production.esm-DNao6_S5.js +0 -4064
  92. package/dist/auth0-spa-js.production.esm-DNao6_S5.js.map +0 -1
  93. package/dist/auth0-spa-js.production.esm-DaBMfOV8.cjs +0 -5
  94. package/dist/auth0-spa-js.production.esm-DaBMfOV8.cjs.map +0 -1
  95. package/dist/components/wandelscript-editor/WandelscriptEditor.d.ts +0 -16
  96. package/dist/components/wandelscript-editor/WandelscriptEditor.d.ts.map +0 -1
  97. package/dist/components/wandelscript-editor/wandelscript.tmLanguage.d.ts +0 -45
  98. package/dist/components/wandelscript-editor/wandelscript.tmLanguage.d.ts.map +0 -1
  99. package/dist/externalizeComponent-B98tgTPP.cjs +0 -24
  100. package/dist/externalizeComponent-B98tgTPP.cjs.map +0 -1
  101. package/dist/externalizeComponent-BOqKMZMc.js +0 -526
  102. package/dist/externalizeComponent-BOqKMZMc.js.map +0 -1
  103. package/dist/interpolation-B8AcxfdD.js.map +0 -1
  104. package/dist/interpolation-SWzo5zr4.cjs +0 -20
  105. package/dist/interpolation-SWzo5zr4.cjs.map +0 -1
  106. package/dist/theming-BKpqgTRM.js.map +0 -1
  107. package/dist/theming-CatQaIl_.cjs +0 -115
  108. package/dist/theming-CatQaIl_.cjs.map +0 -1
  109. package/dist/wandelscript.cjs.js +0 -2
  110. package/dist/wandelscript.cjs.js.map +0 -1
  111. package/dist/wandelscript.d.ts +0 -2
  112. package/dist/wandelscript.d.ts.map +0 -1
  113. package/dist/wandelscript.es.js +0 -5
  114. package/dist/wandelscript.es.js.map +0 -1
  115. package/src/components/wandelscript-editor/WandelscriptEditor.tsx +0 -142
  116. package/src/components/wandelscript-editor/wandelscript.tmLanguage.ts +0 -62
  117. package/src/icons/arrowForwardFilled.svg +0 -1
  118. package/src/icons/chevronDown.svg +0 -3
  119. package/src/icons/expandFilled.svg +0 -1
  120. package/src/icons/infoOutlined.svg +0 -1
  121. package/src/wandelscript.ts +0 -2
package/src/core.ts CHANGED
@@ -31,4 +31,3 @@ export * from "./lib/motionStateUpdate"
31
31
  export * from "./lib/MotionStreamConnection"
32
32
  export * from "./themes/themeTypes"
33
33
  export { createNovaMuiTheme } from "./themes/theming"
34
-
@@ -1,7 +1,12 @@
1
- export { default as ArrowForwardFilledIcon } from "./arrowForwardFilled.svg"
2
- export { default as ChevronDownIcon } from "./chevronDown.svg"
3
- export { default as ExpandFilledIcon } from "./expandFilled.svg"
1
+ export { default as AxisXIcon } from "./axis-x.svg"
2
+ export { default as AxisYIcon } from "./axis-y.svg"
3
+ export { default as AxisZIcon } from "./axis-z.svg"
4
4
  export { default as HomeIcon } from "./home.svg"
5
- export { default as InfoOutlinedIcon } from "./infoOutlined.svg"
5
+ export { default as JogMinusIcon } from "./jog-minus.svg"
6
+ export { default as JogPlusIcon } from "./jog-plus.svg"
7
+ export { default as JoggingIcon } from "./jogging.svg"
8
+ export { default as OrientationCoordSystemIcon } from "./orientation-coord-system.svg"
9
+ export { default as OrientationToolIcon } from "./orientation-tool.svg"
6
10
  export { default as RobotIcon } from "./robot.svg"
11
+ export { default as RotationIcon } from "./rotation.svg"
7
12
  export { default as WBLogoIcon } from "./wbLogo.svg"
package/src/index.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  // Re-export all sub-entry points
2
2
  export * from "./3d"
3
3
  export * from "./core"
4
- export * from "./wandelscript"
4
+ export * from "./wb-icons"
@@ -258,11 +258,6 @@ export class ConnectedMotionGroup {
258
258
  return this.description.motion_group_model
259
259
  }
260
260
 
261
- get wandelscriptIdentifier() {
262
- const num = this.motionGroupId.split("@")[0]
263
- return `${this.controllerId.replace(/-/g, "_")}_${num}`
264
- }
265
-
266
261
  /** Jogging velocity in radians for rotation and joint movement */
267
262
  get joggingVelocityRads() {
268
263
  return (this.joggingVelocity * Math.PI) / 180
@@ -170,11 +170,6 @@ export class MotionStreamConnection {
170
170
  return this.controller.controller
171
171
  }
172
172
 
173
- get wandelscriptIdentifier() {
174
- const num = this.motionGroupId.split("@")[0]
175
- return `${this.controllerId.replace(/-/g, "_")}_${num}`
176
- }
177
-
178
173
  get joints() {
179
174
  return this.initialMotionState.joint_position.map((_, i) => {
180
175
  return {
@@ -338,28 +338,7 @@ export function createDarkTheme(): Theme {
338
338
  VelocitySlider: {
339
339
  sliderLegendColor: baseTheme.palette.text.primary,
340
340
  },
341
- },
342
- WandelscriptEditor: {
343
- monacoTheme: {
344
- base: "vs-dark",
345
- inherit: true,
346
- rules: [
347
- {
348
- token: "keyword",
349
- foreground: "#b349a9ff",
350
- },
351
- ],
352
- colors: {
353
- "editor.background": rgbToHex(
354
- baseTheme.palette.backgroundPaperElevation?.[5] ?? "",
355
- ),
356
- "editor.foreground": "#d4d4d4",
357
- "editorLineNumber.foreground": "#797979",
358
- "editorLineNumber.activeForeground": "#e9e9e9",
359
- "editor.lineHighlightBorder": "#e9e9e911",
360
- },
361
- },
362
- },
341
+ }
363
342
  },
364
343
  } as Theme
365
344
  }
@@ -1,5 +1,3 @@
1
- import type { editor } from "monaco-editor"
2
-
3
1
  type NovaColorPaletteExtension = {
4
2
  paletteExt?: {
5
3
  primary?: {
@@ -48,9 +46,6 @@ interface NovaComponentsExtension {
48
46
  sliderLegendColor?: string
49
47
  }
50
48
  }
51
- WandelscriptEditor?: {
52
- monacoTheme: editor.IStandaloneThemeData
53
- }
54
49
  }
55
50
  }
56
51
 
@@ -0,0 +1,3 @@
1
+ // Icon components (SVG icons for UI and safety bar)
2
+ export * from "./components/safetyBar/icons"
3
+ export * from "./icons"
@@ -1,81 +0,0 @@
1
- import { t as l, j as t } from "./externalizeComponent-BOqKMZMc.js";
2
- import { useTheme as c, Stack as i, CircularProgress as g, capitalize as d } from "@mui/material";
3
- import { lowerFirst as u } from "lodash-es";
4
- import { useState as f, useEffect as x } from "react";
5
- import { AxiosError as a } from "axios";
6
- function T(e, r) {
7
- throw new Error(r + ` ${JSON.stringify(e)}`);
8
- }
9
- function h(e) {
10
- var r, s, o, n;
11
- return e instanceof a && e.code === "ERR_NETWORK" ? "Failed to connect to the server. Please check your internet connection." : e instanceof a && e.response ? `${(r = e.response) == null ? void 0 : r.status} ${(s = e.response) == null ? void 0 : s.statusText} from ${(o = e.response) == null ? void 0 : o.config.url}: ${JSON.stringify((n = e.response) == null ? void 0 : n.data)}` : e instanceof Error ? e.message : `Unexpected error: ${l(e) || e}`;
12
- }
13
- const k = (e) => {
14
- const r = e.softTimeout || 3e3, [s, o] = f(!1), n = c();
15
- return x(() => {
16
- const m = setTimeout(() => {
17
- o(!0);
18
- }, r);
19
- return () => clearTimeout(m);
20
- }), /* @__PURE__ */ t.jsx(
21
- i,
22
- {
23
- width: "100%",
24
- height: "100%",
25
- alignItems: "center",
26
- justifyContent: "center",
27
- sx: { color: n.palette.text.primary },
28
- children: e.error ? /* @__PURE__ */ t.jsx(
29
- w,
30
- {
31
- loadingMessage: e.message,
32
- error: e.error
33
- }
34
- ) : /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
35
- /* @__PURE__ */ t.jsx(g, { sx: { marginBottom: "24px" } }),
36
- !!e.message && /* @__PURE__ */ t.jsx("div", { children: e.message }),
37
- /* @__PURE__ */ t.jsx(
38
- i,
39
- {
40
- sx: {
41
- visibility: s ? "visible" : "hidden",
42
- marginTop: "1rem",
43
- color: n.palette.text.secondary
44
- },
45
- children: "This is taking longer than expected..."
46
- }
47
- )
48
- ] })
49
- }
50
- );
51
- }, w = (e) => {
52
- const r = h(e.error), s = e.error instanceof Error ? e.error.stack : null, o = c();
53
- return /* @__PURE__ */ t.jsxs(
54
- i,
55
- {
56
- sx: {
57
- maxHeight: "100%",
58
- maxWidth: "min(100%, 800px)",
59
- padding: 2,
60
- overflow: "auto",
61
- color: o.palette.error.main,
62
- "& pre": {
63
- whiteSpace: "pre-wrap",
64
- wordBreak: "break-word",
65
- paddingBottom: "3rem"
66
- }
67
- },
68
- children: [
69
- (e.loadingMessage ? `Error while ${u(d(e.loadingMessage))} - ` : "") + r,
70
- /* @__PURE__ */ t.jsx("br", {}),
71
- s && /* @__PURE__ */ t.jsx("pre", { children: s })
72
- ]
73
- }
74
- );
75
- };
76
- export {
77
- k as L,
78
- w as a,
79
- T as b
80
- };
81
- //# sourceMappingURL=LoadingCover-B3UN1lnU.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LoadingCover-B3UN1lnU.js","sources":["../src/components/utils/errorHandling.ts","../src/components/LoadingCover.tsx"],"sourcesContent":["import { AxiosError } from \"axios\"\nimport { tryStringifyJson } from \"./converters\"\n\n// Please note: These helper functions also exist in nova.js\n// (with slightly different formatting), and will be unified\n// at some point in the future.\n\nexport function delay(ms: number) {\n return new Promise((resolve) => setTimeout(resolve, ms))\n}\n\nexport function makeShortErrorMessage(err: unknown) {\n if (err instanceof AxiosError && err.code === \"ERR_NETWORK\") {\n return \"Failed to connect to the server. Please check your internet connection.\"\n } else if (err instanceof AxiosError && err.response) {\n return `${err.response?.status} ${err.response?.statusText}: ${JSON.stringify(err.response?.data)}`\n } else if (err instanceof Error) {\n return err.message\n } else {\n return `Unexpected error: ${err}`\n }\n}\n\nexport function assertUnreachable(x: never, msg: string): never {\n throw new Error(msg + ` ${JSON.stringify(x)}`)\n}\n\nexport function makeErrorMessage(err: unknown) {\n if (err instanceof AxiosError && err.code === \"ERR_NETWORK\") {\n return \"Failed to connect to the server. Please check your internet connection.\"\n } else if (err instanceof AxiosError && err.response) {\n return `${err.response?.status} ${err.response?.statusText} from ${err.response?.config.url}: ${JSON.stringify(err.response?.data)}`\n } else if (err instanceof Error) {\n return err.message\n } else {\n return `Unexpected error: ${tryStringifyJson(err) || err}`\n }\n}\n","import { capitalize, CircularProgress, Stack, useTheme } from \"@mui/material\"\nimport { lowerFirst } from \"lodash-es\"\nimport { useEffect, useState } from \"react\"\nimport { makeErrorMessage } from \"./utils/errorHandling\"\n\nexport const LoadingCover = (props: {\n message?: string\n error?: unknown\n softTimeout?: number\n}) => {\n const softTimeout = props.softTimeout || 3000\n\n const [showSlowLoadingMessage, setShowSlowLoadingMessage] = useState(false)\n const theme = useTheme()\n\n useEffect(() => {\n const timeout = setTimeout(() => {\n setShowSlowLoadingMessage(true)\n }, softTimeout)\n\n return () => clearTimeout(timeout)\n })\n\n return (\n <Stack\n width=\"100%\"\n height=\"100%\"\n alignItems=\"center\"\n justifyContent=\"center\"\n sx={{ color: theme.palette.text.primary }}\n >\n {props.error ? (\n <LoadingErrorMessage\n loadingMessage={props.message}\n error={props.error}\n />\n ) : (\n <>\n <CircularProgress sx={{ marginBottom: \"24px\" }} />\n {!!props.message && <div>{props.message}</div>}\n <Stack\n sx={{\n visibility: showSlowLoadingMessage ? \"visible\" : \"hidden\",\n marginTop: \"1rem\",\n color: theme.palette.text.secondary,\n }}\n >\n {\"This is taking longer than expected...\"}\n </Stack>\n </>\n )}\n </Stack>\n )\n}\n\nexport const LoadingErrorMessage = (props: {\n loadingMessage?: string\n error: unknown\n}) => {\n const errorMessage = makeErrorMessage(props.error)\n const stack = props.error instanceof Error ? props.error.stack : null\n const theme = useTheme()\n\n return (\n <Stack\n sx={{\n maxHeight: \"100%\",\n maxWidth: \"min(100%, 800px)\",\n padding: 2,\n overflow: \"auto\",\n color: theme.palette.error.main,\n \"& pre\": {\n whiteSpace: \"pre-wrap\",\n wordBreak: \"break-word\",\n paddingBottom: \"3rem\",\n },\n }}\n >\n {(props.loadingMessage\n ? `Error while ${lowerFirst(capitalize(props.loadingMessage))} - `\n : \"\") + errorMessage}\n <br />\n {stack && <pre>{stack}</pre>}\n </Stack>\n )\n}\n"],"names":["assertUnreachable","x","msg","makeErrorMessage","err","AxiosError","_a","_b","_c","_d","tryStringifyJson","LoadingCover","props","softTimeout","showSlowLoadingMessage","setShowSlowLoadingMessage","useState","theme","useTheme","useEffect","timeout","jsx","Stack","LoadingErrorMessage","jsxs","Fragment","CircularProgress","errorMessage","stack","lowerFirst","capitalize"],"mappings":";;;;;AAuBO,SAASA,EAAkBC,GAAUC,GAAoB;AAC9D,QAAM,IAAI,MAAMA,IAAM,IAAI,KAAK,UAAUD,CAAC,CAAC,EAAE;AAC/C;AAEO,SAASE,EAAiBC,GAAc;;AAC7C,SAAIA,aAAeC,KAAcD,EAAI,SAAS,gBACrC,4EACEA,aAAeC,KAAcD,EAAI,WACnC,IAAGE,IAAAF,EAAI,aAAJ,gBAAAE,EAAc,MAAM,KAAIC,IAAAH,EAAI,aAAJ,gBAAAG,EAAc,UAAU,UAASC,IAAAJ,EAAI,aAAJ,gBAAAI,EAAc,OAAO,GAAG,KAAK,KAAK,WAAUC,IAAAL,EAAI,aAAJ,gBAAAK,EAAc,IAAI,CAAC,KACzHL,aAAe,QACjBA,EAAI,UAEJ,qBAAqBM,EAAiBN,CAAG,KAAKA,CAAG;AAE5D;AChCO,MAAMO,IAAe,CAACC,MAIvB;AACJ,QAAMC,IAAcD,EAAM,eAAe,KAEnC,CAACE,GAAwBC,CAAyB,IAAIC,EAAS,EAAK,GACpEC,IAAQC,EAAA;AAEd,SAAAC,EAAU,MAAM;AACd,UAAMC,IAAU,WAAW,MAAM;AAC/B,MAAAL,EAA0B,EAAI;AAAA,IAChC,GAAGF,CAAW;AAEd,WAAO,MAAM,aAAaO,CAAO;AAAA,EACnC,CAAC,GAGCC,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,OAAM;AAAA,MACN,QAAO;AAAA,MACP,YAAW;AAAA,MACX,gBAAe;AAAA,MACf,IAAI,EAAE,OAAOL,EAAM,QAAQ,KAAK,QAAA;AAAA,MAE/B,YAAM,QACLI,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,gBAAgBX,EAAM;AAAA,UACtB,OAAOA,EAAM;AAAA,QAAA;AAAA,MAAA,IAGfY,gBAAAA,EAAAA,KAAAC,YAAA,EACE,UAAA;AAAA,QAAAJ,gBAAAA,EAAAA,IAACK,GAAA,EAAiB,IAAI,EAAE,cAAc,UAAU;AAAA,QAC/C,CAAC,CAACd,EAAM,WAAWS,gBAAAA,EAAAA,IAAC,OAAA,EAAK,YAAM,SAAQ;AAAA,QACxCA,gBAAAA,EAAAA;AAAAA,UAACC;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,cACF,YAAYR,IAAyB,YAAY;AAAA,cACjD,WAAW;AAAA,cACX,OAAOG,EAAM,QAAQ,KAAK;AAAA,YAAA;AAAA,YAG3B,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACH,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAIR,GAEaM,IAAsB,CAACX,MAG9B;AACJ,QAAMe,IAAexB,EAAiBS,EAAM,KAAK,GAC3CgB,IAAQhB,EAAM,iBAAiB,QAAQA,EAAM,MAAM,QAAQ,MAC3DK,IAAQC,EAAA;AAEd,SACEM,gBAAAA,EAAAA;AAAAA,IAACF;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,WAAW;AAAA,QACX,UAAU;AAAA,QACV,SAAS;AAAA,QACT,UAAU;AAAA,QACV,OAAOL,EAAM,QAAQ,MAAM;AAAA,QAC3B,SAAS;AAAA,UACP,YAAY;AAAA,UACZ,WAAW;AAAA,UACX,eAAe;AAAA,QAAA;AAAA,MACjB;AAAA,MAGA,UAAA;AAAA,SAAAL,EAAM,iBACJ,eAAeiB,EAAWC,EAAWlB,EAAM,cAAc,CAAC,CAAC,QAC3D,MAAMe;AAAA,8BACT,MAAA,EAAG;AAAA,QACHC,KAASP,gBAAAA,EAAAA,IAAC,OAAA,EAAK,UAAAO,EAAA,CAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG5B;"}
@@ -1,2 +0,0 @@
1
- "use strict";const t=require("./externalizeComponent-B98tgTPP.cjs"),o=require("@mui/material"),u=require("lodash-es"),a=require("react"),c=require("axios");function m(e,s){throw new Error(s+` ${JSON.stringify(e)}`)}function g(e){var s,r,n,i;return e instanceof c.AxiosError&&e.code==="ERR_NETWORK"?"Failed to connect to the server. Please check your internet connection.":e instanceof c.AxiosError&&e.response?`${(s=e.response)==null?void 0:s.status} ${(r=e.response)==null?void 0:r.statusText} from ${(n=e.response)==null?void 0:n.config.url}: ${JSON.stringify((i=e.response)==null?void 0:i.data)}`:e instanceof Error?e.message:`Unexpected error: ${t.tryStringifyJson(e)||e}`}const d=e=>{const s=e.softTimeout||3e3,[r,n]=a.useState(!1),i=o.useTheme();return a.useEffect(()=>{const l=setTimeout(()=>{n(!0)},s);return()=>clearTimeout(l)}),t.jsxRuntimeExports.jsx(o.Stack,{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",sx:{color:i.palette.text.primary},children:e.error?t.jsxRuntimeExports.jsx(x,{loadingMessage:e.message,error:e.error}):t.jsxRuntimeExports.jsxs(t.jsxRuntimeExports.Fragment,{children:[t.jsxRuntimeExports.jsx(o.CircularProgress,{sx:{marginBottom:"24px"}}),!!e.message&&t.jsxRuntimeExports.jsx("div",{children:e.message}),t.jsxRuntimeExports.jsx(o.Stack,{sx:{visibility:r?"visible":"hidden",marginTop:"1rem",color:i.palette.text.secondary},children:"This is taking longer than expected..."})]})})},x=e=>{const s=g(e.error),r=e.error instanceof Error?e.error.stack:null,n=o.useTheme();return t.jsxRuntimeExports.jsxs(o.Stack,{sx:{maxHeight:"100%",maxWidth:"min(100%, 800px)",padding:2,overflow:"auto",color:n.palette.error.main,"& pre":{whiteSpace:"pre-wrap",wordBreak:"break-word",paddingBottom:"3rem"}},children:[(e.loadingMessage?`Error while ${u.lowerFirst(o.capitalize(e.loadingMessage))} - `:"")+s,t.jsxRuntimeExports.jsx("br",{}),r&&t.jsxRuntimeExports.jsx("pre",{children:r})]})};exports.LoadingCover=d;exports.LoadingErrorMessage=x;exports.assertUnreachable=m;
2
- //# sourceMappingURL=LoadingCover-DXcsXWDy.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LoadingCover-DXcsXWDy.cjs","sources":["../src/components/utils/errorHandling.ts","../src/components/LoadingCover.tsx"],"sourcesContent":["import { AxiosError } from \"axios\"\nimport { tryStringifyJson } from \"./converters\"\n\n// Please note: These helper functions also exist in nova.js\n// (with slightly different formatting), and will be unified\n// at some point in the future.\n\nexport function delay(ms: number) {\n return new Promise((resolve) => setTimeout(resolve, ms))\n}\n\nexport function makeShortErrorMessage(err: unknown) {\n if (err instanceof AxiosError && err.code === \"ERR_NETWORK\") {\n return \"Failed to connect to the server. Please check your internet connection.\"\n } else if (err instanceof AxiosError && err.response) {\n return `${err.response?.status} ${err.response?.statusText}: ${JSON.stringify(err.response?.data)}`\n } else if (err instanceof Error) {\n return err.message\n } else {\n return `Unexpected error: ${err}`\n }\n}\n\nexport function assertUnreachable(x: never, msg: string): never {\n throw new Error(msg + ` ${JSON.stringify(x)}`)\n}\n\nexport function makeErrorMessage(err: unknown) {\n if (err instanceof AxiosError && err.code === \"ERR_NETWORK\") {\n return \"Failed to connect to the server. Please check your internet connection.\"\n } else if (err instanceof AxiosError && err.response) {\n return `${err.response?.status} ${err.response?.statusText} from ${err.response?.config.url}: ${JSON.stringify(err.response?.data)}`\n } else if (err instanceof Error) {\n return err.message\n } else {\n return `Unexpected error: ${tryStringifyJson(err) || err}`\n }\n}\n","import { capitalize, CircularProgress, Stack, useTheme } from \"@mui/material\"\nimport { lowerFirst } from \"lodash-es\"\nimport { useEffect, useState } from \"react\"\nimport { makeErrorMessage } from \"./utils/errorHandling\"\n\nexport const LoadingCover = (props: {\n message?: string\n error?: unknown\n softTimeout?: number\n}) => {\n const softTimeout = props.softTimeout || 3000\n\n const [showSlowLoadingMessage, setShowSlowLoadingMessage] = useState(false)\n const theme = useTheme()\n\n useEffect(() => {\n const timeout = setTimeout(() => {\n setShowSlowLoadingMessage(true)\n }, softTimeout)\n\n return () => clearTimeout(timeout)\n })\n\n return (\n <Stack\n width=\"100%\"\n height=\"100%\"\n alignItems=\"center\"\n justifyContent=\"center\"\n sx={{ color: theme.palette.text.primary }}\n >\n {props.error ? (\n <LoadingErrorMessage\n loadingMessage={props.message}\n error={props.error}\n />\n ) : (\n <>\n <CircularProgress sx={{ marginBottom: \"24px\" }} />\n {!!props.message && <div>{props.message}</div>}\n <Stack\n sx={{\n visibility: showSlowLoadingMessage ? \"visible\" : \"hidden\",\n marginTop: \"1rem\",\n color: theme.palette.text.secondary,\n }}\n >\n {\"This is taking longer than expected...\"}\n </Stack>\n </>\n )}\n </Stack>\n )\n}\n\nexport const LoadingErrorMessage = (props: {\n loadingMessage?: string\n error: unknown\n}) => {\n const errorMessage = makeErrorMessage(props.error)\n const stack = props.error instanceof Error ? props.error.stack : null\n const theme = useTheme()\n\n return (\n <Stack\n sx={{\n maxHeight: \"100%\",\n maxWidth: \"min(100%, 800px)\",\n padding: 2,\n overflow: \"auto\",\n color: theme.palette.error.main,\n \"& pre\": {\n whiteSpace: \"pre-wrap\",\n wordBreak: \"break-word\",\n paddingBottom: \"3rem\",\n },\n }}\n >\n {(props.loadingMessage\n ? `Error while ${lowerFirst(capitalize(props.loadingMessage))} - `\n : \"\") + errorMessage}\n <br />\n {stack && <pre>{stack}</pre>}\n </Stack>\n )\n}\n"],"names":["assertUnreachable","x","msg","makeErrorMessage","err","AxiosError","_a","_b","_c","_d","tryStringifyJson","LoadingCover","props","softTimeout","showSlowLoadingMessage","setShowSlowLoadingMessage","useState","theme","useTheme","useEffect","timeout","jsx","Stack","LoadingErrorMessage","jsxs","Fragment","CircularProgress","errorMessage","stack","lowerFirst","capitalize"],"mappings":"4JAuBO,SAASA,EAAkBC,EAAUC,EAAoB,CAC9D,MAAM,IAAI,MAAMA,EAAM,IAAI,KAAK,UAAUD,CAAC,CAAC,EAAE,CAC/C,CAEO,SAASE,EAAiBC,EAAc,aAC7C,OAAIA,aAAeC,EAAAA,YAAcD,EAAI,OAAS,cACrC,0EACEA,aAAeC,cAAcD,EAAI,SACnC,IAAGE,EAAAF,EAAI,WAAJ,YAAAE,EAAc,MAAM,KAAIC,EAAAH,EAAI,WAAJ,YAAAG,EAAc,UAAU,UAASC,EAAAJ,EAAI,WAAJ,YAAAI,EAAc,OAAO,GAAG,KAAK,KAAK,WAAUC,EAAAL,EAAI,WAAJ,YAAAK,EAAc,IAAI,CAAC,GACzHL,aAAe,MACjBA,EAAI,QAEJ,qBAAqBM,EAAAA,iBAAiBN,CAAG,GAAKA,CAAG,EAE5D,CChCO,MAAMO,EAAgBC,GAIvB,CACJ,MAAMC,EAAcD,EAAM,aAAe,IAEnC,CAACE,EAAwBC,CAAyB,EAAIC,EAAAA,SAAS,EAAK,EACpEC,EAAQC,EAAAA,SAAA,EAEdC,OAAAA,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAU,WAAW,IAAM,CAC/BL,EAA0B,EAAI,CAChC,EAAGF,CAAW,EAEd,MAAO,IAAM,aAAaO,CAAO,CACnC,CAAC,EAGCC,EAAAA,kBAAAA,IAACC,EAAAA,MAAA,CACC,MAAM,OACN,OAAO,OACP,WAAW,SACX,eAAe,SACf,GAAI,CAAE,MAAOL,EAAM,QAAQ,KAAK,OAAA,EAE/B,WAAM,MACLI,EAAAA,kBAAAA,IAACE,EAAA,CACC,eAAgBX,EAAM,QACtB,MAAOA,EAAM,KAAA,CAAA,EAGfY,EAAAA,kBAAAA,KAAAC,6BAAA,CACE,SAAA,CAAAJ,EAAAA,kBAAAA,IAACK,EAAAA,iBAAA,CAAiB,GAAI,CAAE,aAAc,QAAU,EAC/C,CAAC,CAACd,EAAM,SAAWS,EAAAA,kBAAAA,IAAC,MAAA,CAAK,WAAM,QAAQ,EACxCA,EAAAA,kBAAAA,IAACC,EAAAA,MAAA,CACC,GAAI,CACF,WAAYR,EAAyB,UAAY,SACjD,UAAW,OACX,MAAOG,EAAM,QAAQ,KAAK,SAAA,EAG3B,SAAA,wCAAA,CAAA,CACH,CAAA,CACF,CAAA,CAAA,CAIR,EAEaM,EAAuBX,GAG9B,CACJ,MAAMe,EAAexB,EAAiBS,EAAM,KAAK,EAC3CgB,EAAQhB,EAAM,iBAAiB,MAAQA,EAAM,MAAM,MAAQ,KAC3DK,EAAQC,EAAAA,SAAA,EAEd,OACEM,EAAAA,kBAAAA,KAACF,EAAAA,MAAA,CACC,GAAI,CACF,UAAW,OACX,SAAU,mBACV,QAAS,EACT,SAAU,OACV,MAAOL,EAAM,QAAQ,MAAM,KAC3B,QAAS,CACP,WAAY,WACZ,UAAW,aACX,cAAe,MAAA,CACjB,EAGA,SAAA,EAAAL,EAAM,eACJ,eAAeiB,EAAAA,WAAWC,EAAAA,WAAWlB,EAAM,cAAc,CAAC,CAAC,MAC3D,IAAMe,0BACT,KAAA,EAAG,EACHC,GAASP,EAAAA,kBAAAA,IAAC,MAAA,CAAK,SAAAO,CAAA,CAAM,CAAA,CAAA,CAAA,CAG5B"}