@wandelbots/wandelbots-js-react-components 1.8.0 → 1.9.1

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 (97) hide show
  1. package/README.md +32 -17
  2. package/dist/Setup.d.ts +12 -0
  3. package/dist/Setup.d.ts.map +1 -0
  4. package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts +1 -1
  5. package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts.map +1 -1
  6. package/dist/components/CopyableText.d.ts +5 -0
  7. package/dist/components/CopyableText.d.ts.map +1 -0
  8. package/dist/components/LoadingButton.d.ts +1 -1
  9. package/dist/components/LoadingButton.stories.d.ts +1 -1
  10. package/dist/components/LoadingButton.stories.d.ts.map +1 -1
  11. package/dist/components/ThemeSelect.d.ts.map +1 -1
  12. package/dist/components/VelocitySlider.d.ts.map +1 -1
  13. package/dist/components/VelocitySlider.stories.d.ts +2 -2
  14. package/dist/components/VelocitySlider.stories.d.ts.map +1 -1
  15. package/dist/components/jogging/JoggingCartesianAxisControl.stories.d.ts +1 -1
  16. package/dist/components/jogging/JoggingCartesianAxisControl.stories.d.ts.map +1 -1
  17. package/dist/components/jogging/JoggingCartesianTab.d.ts.map +1 -1
  18. package/dist/components/jogging/JoggingCartesianValues.d.ts +1 -1
  19. package/dist/components/jogging/JoggingCartesianValues.d.ts.map +1 -1
  20. package/dist/components/jogging/JoggingJointLimitDetector.d.ts +2 -2
  21. package/dist/components/jogging/JoggingJointLimitDetector.d.ts.map +1 -1
  22. package/dist/components/jogging/JoggingJointRotationControl.d.ts.map +1 -1
  23. package/dist/components/jogging/JoggingJointRotationControl.stories.d.ts +2 -2
  24. package/dist/components/jogging/JoggingJointRotationControl.stories.d.ts.map +1 -1
  25. package/dist/components/jogging/JoggingJointValues.d.ts +1 -1
  26. package/dist/components/jogging/JoggingJointValues.d.ts.map +1 -1
  27. package/dist/components/jogging/JoggingOptions.d.ts.map +1 -1
  28. package/dist/components/jogging/JoggingPanel.d.ts +8 -1
  29. package/dist/components/jogging/JoggingPanel.d.ts.map +1 -1
  30. package/dist/components/jogging/JoggingPanel.stories.d.ts +2 -2
  31. package/dist/components/jogging/JoggingPanel.stories.d.ts.map +1 -1
  32. package/dist/components/jogging/JoggingStore.d.ts +15 -2
  33. package/dist/components/jogging/JoggingStore.d.ts.map +1 -1
  34. package/dist/components/jogging/JoggingVelocitySlider.d.ts.map +1 -1
  35. package/dist/components/robots/SupportedRobot.stories.d.ts +156 -0
  36. package/dist/components/robots/SupportedRobot.stories.d.ts.map +1 -0
  37. package/dist/components/wandelscript-editor/WandelscriptEditor.d.ts +2 -2
  38. package/dist/components/wandelscript-editor/WandelscriptEditor.d.ts.map +1 -1
  39. package/dist/components/wandelscript-editor/WandelscriptEditor.stories.d.ts +2 -2
  40. package/dist/components/wandelscript-editor/WandelscriptEditor.stories.d.ts.map +1 -1
  41. package/dist/externalizeComponent.d.ts +7 -0
  42. package/dist/externalizeComponent.d.ts.map +1 -0
  43. package/dist/index.cjs +29 -48
  44. package/dist/index.cjs.map +1 -1
  45. package/dist/index.d.ts +50 -9
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +11671 -12341
  48. package/dist/index.js.map +1 -1
  49. package/dist/themes/color.d.ts +1 -1
  50. package/dist/themes/color.d.ts.map +1 -1
  51. package/dist/themes/novaTheme.stories.d.ts +5 -0
  52. package/dist/themes/novaTheme.stories.d.ts.map +1 -0
  53. package/dist/themes/theming.d.ts +49 -0
  54. package/dist/themes/theming.d.ts.map +1 -0
  55. package/package.json +20 -13
  56. package/src/Setup.tsx +37 -0
  57. package/src/components/3d-viewport/SafetyZonesRenderer.tsx +2 -2
  58. package/src/components/CopyableText.tsx +30 -0
  59. package/src/components/LoadingButton.stories.tsx +19 -26
  60. package/src/components/ThemeSelect.tsx +3 -4
  61. package/src/components/VelocitySlider.stories.tsx +10 -15
  62. package/src/components/VelocitySlider.tsx +8 -3
  63. package/src/components/jogging/JoggingCartesianAxisControl.stories.tsx +21 -21
  64. package/src/components/jogging/JoggingCartesianAxisControl.tsx +1 -1
  65. package/src/components/jogging/JoggingCartesianTab.tsx +37 -44
  66. package/src/components/jogging/JoggingCartesianValues.tsx +38 -33
  67. package/src/components/jogging/JoggingJointLimitDetector.tsx +10 -7
  68. package/src/components/jogging/JoggingJointRotationControl.stories.tsx +31 -19
  69. package/src/components/jogging/JoggingJointRotationControl.tsx +44 -30
  70. package/src/components/jogging/JoggingJointValues.tsx +35 -33
  71. package/src/components/jogging/JoggingOptions.tsx +128 -80
  72. package/src/components/jogging/JoggingPanel.stories.tsx +20 -17
  73. package/src/components/jogging/JoggingPanel.tsx +29 -31
  74. package/src/components/jogging/JoggingStore.tsx +69 -18
  75. package/src/components/jogging/JoggingVelocitySlider.tsx +17 -29
  76. package/src/components/robots/SupportedRobot.stories.tsx +130 -0
  77. package/src/components/wandelscript-editor/WandelscriptEditor.stories.tsx +7 -7
  78. package/src/components/wandelscript-editor/WandelscriptEditor.tsx +48 -23
  79. package/src/externalizeComponent.tsx +37 -0
  80. package/src/i18n/locales/de/translations.json +2 -1
  81. package/src/i18n/locales/en/translations.json +2 -1
  82. package/src/icons/orientation-coord-system.svg +3 -0
  83. package/src/icons/orientation-tool.svg +3 -0
  84. package/src/index.ts +40 -9
  85. package/src/themes/color.tsx +29 -19
  86. package/src/themes/novaTheme.stories.tsx +77 -0
  87. package/src/themes/themeTypes.d.ts +11 -0
  88. package/src/themes/theming.ts +174 -0
  89. package/dist/themes/theme.d.ts +0 -144
  90. package/dist/themes/theme.d.ts.map +0 -1
  91. package/dist/themes/wbTheme.d.ts +0 -73
  92. package/dist/themes/wbTheme.d.ts.map +0 -1
  93. package/dist/themes/wbTheme.stories.d.ts +0 -7
  94. package/dist/themes/wbTheme.stories.d.ts.map +0 -1
  95. package/src/themes/theme.ts +0 -150
  96. package/src/themes/wbTheme.stories.tsx +0 -64
  97. package/src/themes/wbTheme.ts +0 -186
package/README.md CHANGED
@@ -1,8 +1,9 @@
1
1
  # @wandelbots/wandelbots-js-react-components
2
2
 
3
- [![NPM version](https://img.shields.io/npm/v/@wandelbots/wandelbots-js-react-components.svg)](https://npmjs.org/package/@wandelbots/wandelbots-js-react-components) [![npm bundle size](https://img.shields.io/bundlephobia/minzip/@wandelbots/wandelbots-js-react-components)](https://bundlephobia.com/package/@wandelbots/wandelbots-js-react-components) [![Release](https://github.com/wandelbotsgmbh/wandelbots-js-react-components/actions/workflows/release.yml/badge.svg)](https://github.com/wandelbotsgmbh/wandelbots-js-react-components/actions/workflows/release.yml)
3
+ [![NPM version](https://img.shields.io/npm/v/@wandelbots/wandelbots-js-react-components.svg)](https://npmjs.org/package/@wandelbots/wandelbots-js-react-components) [![npm bundle size](https://img.shields.io/bundlephobia/minzip/@wandelbots/wandelbots-js-react-components)](https://bundlephobia.com/package/@wandelbots/wandelbots-js-react-components) [![Release](https://github.com/wandelbotsgmbh/wandelbots-js-react-components/actions/workflows/release.yml/badge.svg)](https://github.com/wandelbotsgmbh/wandelbots-js-react-components/actions/workflows/release.yml) [![](https://img.shields.io/badge/-storybook-%23ff69b4)](https://wandelbotsgmbh.github.io/wandelbots-js-react-components)
4
4
 
5
- A growing collection of ready-made React UI components based on MaterialUI and React Three Fiber for use with the Wandelbots platform.
5
+
6
+ A growing collection of ready-made React UI components based on MaterialUI and React Three Fiber for use with the Wandelbots platform.
6
7
 
7
8
  ```bash
8
9
  npm install @wandelbots/wandelbots-js-react-components
@@ -24,6 +25,7 @@ import { WandelscriptEditor, ... } from '@wandelbots/wandelbots-js-react-compone
24
25
  <ul>
25
26
  <li><a href="#wandelscript">Wandelscript</a></li>
26
27
  <ul>
28
+ <li><a href="#joggingpanel">JoggingPanel</a></li>
27
29
  <li><a href="#wandelscripteditor">WandelscriptEditor</a></li>
28
30
  </ul>
29
31
  <li><a href="#viewport">3D Viewport</a></li>
@@ -39,6 +41,23 @@ import { WandelscriptEditor, ... } from '@wandelbots/wandelbots-js-react-compone
39
41
 
40
42
  ### Wandelscript
41
43
 
44
+ #### JoggingPanel
45
+
46
+ The JoggingPanel is a high-level user interface for manually moving a robot using the Wandelbots stack. It needs only a `NovaClient` instance from [wandelbots-js](https://github.com/wandelbotsgmbh/wandelbots-js) and the id of a motion group to connect to.
47
+
48
+ ```tsx
49
+ type JoggingPanelProps = {
50
+ /** Connection to a Nova instance to use for jogging */
51
+ nova: NovaClient
52
+ /** Id of the motion group to move e.g. 0@ur5e **/
53
+ motionGroupId: string
54
+ /** Callback with the jogging panel's state store for further customization/config */
55
+ onSetup: (store: JoggingStore) => void
56
+ /** Any children will go at the bottom of the panel under the default components */
57
+ children?: React.ReactNode
58
+ }
59
+ ```
60
+
42
61
  #### WandelscriptEditor
43
62
 
44
63
  The WandelscriptEditor provides an interface for editing snippets of Wandelscript code with the appropriate syntax highlighting. It uses the [Monaco](https://microsoft.github.io/monaco-editor/) editor under the hood.
@@ -48,7 +67,10 @@ type WandelscriptEditorProps = {
48
67
  /** The current Wandelscript content of the code editor (controlled component) */
49
68
  code?: string
50
69
  /** What to do when the user edits the code */
51
- onChange?: (code: string|undefined, ev: editor.IModelContentChangedEvent) => void
70
+ onChange?: (
71
+ code: string | undefined,
72
+ ev: editor.IModelContentChangedEvent,
73
+ ) => void
52
74
  /** Callback to further configure monaco on startup if needed */
53
75
  monacoSetup?: (monaco: Monaco) => void
54
76
  }
@@ -72,9 +94,7 @@ In case you want to use the application offline, you can download the models and
72
94
 
73
95
  ```tsx
74
96
  <Robot
75
- getModel={() =>
76
- `public/${connectedMotionGroup.modelFromController}.glb`
77
- }
97
+ getModel={() => `public/${connectedMotionGroup.modelFromController}.glb`}
78
98
  connectedMotionGroup={connectedMotionGroup}
79
99
  />
80
100
  ```
@@ -93,14 +113,10 @@ The `SupportedRobot` can be used to display a robot model without the need for a
93
113
 
94
114
  ```tsx
95
115
  <SupportedRobot
96
- rapidlyChangingMotionState={
97
- rapidlyChangingMotionState
98
- }
116
+ rapidlyChangingMotionState={rapidlyChangingMotionState}
99
117
  dhParameters={dhParameters as any}
100
118
  modelFromController={modelFromController || ""}
101
- getModel={() =>
102
- `./robot-pad/models/${modelFromController}.glb`
103
- }
119
+ getModel={() => `./robot-pad/models/${modelFromController}.glb`}
104
120
  />
105
121
  ```
106
122
 
@@ -114,7 +130,7 @@ export type SupportedRobotProps = {
114
130
  } & GroupProps
115
131
  ```
116
132
 
117
- #### Lightning
133
+ #### Lighting
118
134
 
119
135
  The `PresetEnvironment` component adds a default lighting setup to the 3D viewport.
120
136
 
@@ -122,22 +138,21 @@ The `PresetEnvironment` component adds a default lighting setup to the 3D viewpo
122
138
  <PresetEnvironment>
123
139
  ```
124
140
 
125
- #### Safety
141
+ #### Safety
126
142
 
127
143
  The `SafetyZonesRenderer` component visualizes the safety zones of the controller.
128
144
 
129
145
  ```tsx
130
- <SafetyZonesRenderer safetyZones={connectedMotionGroup.safetyZones||[]}/>
146
+ <SafetyZonesRenderer safetyZones={connectedMotionGroup.safetyZones || []} />
131
147
  ```
132
148
 
133
-
134
149
  ## Contributing
135
150
 
136
151
  To set up wandelbots-js-react-components for development, first clone the repo and run:
137
152
 
138
153
  ```bash
139
154
  npm install
140
- ```
155
+ ```
141
156
 
142
157
  Then you can run the storybook to develop the components:
143
158
 
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ import { Vector3 } from "three";
3
+ import { type Props as CanvasProps } from "@react-three/fiber";
4
+ type Props = React.PropsWithChildren<CanvasProps & {
5
+ cameraFov?: number;
6
+ cameraPosition?: Vector3;
7
+ controls?: boolean;
8
+ lights?: boolean;
9
+ }>;
10
+ export declare const Setup: ({ children, cameraFov, cameraPosition, controls, lights, ...restProps }: Props) => import("react/jsx-runtime").JSX.Element;
11
+ export {};
12
+ //# sourceMappingURL=Setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Setup.d.ts","sourceRoot":"","sources":["../src/Setup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAU,KAAK,KAAK,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAItE,KAAK,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAClC,WAAW,GAAG;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CACF,CAAA;AAED,eAAO,MAAM,KAAK,4EAOf,KAAK,4CAcP,CAAA"}
@@ -1,4 +1,4 @@
1
- import { SafetySetupSafetyZone } from "@wandelbots/wandelbots-js";
1
+ import type { SafetySetupSafetyZone } from "@wandelbots/wandelbots-js";
2
2
  import { type GroupProps } from "@react-three/fiber";
3
3
  export type SafetyZonesRendererProps = {
4
4
  safetyZones: SafetySetupSafetyZone[];
@@ -1 +1 @@
1
- {"version":3,"file":"SafetyZonesRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/SafetyZonesRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAIjE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,qBAAqB,EAAE,CAAA;CACrC,GAAG,UAAU,CAAA;AAEd,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,GAAG,KAAK,EACT,EAAE,wBAAwB,2CAyC1B"}
1
+ {"version":3,"file":"SafetyZonesRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/SafetyZonesRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAItE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,qBAAqB,EAAE,CAAA;CACrC,GAAG,UAAU,CAAA;AAEd,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,GAAG,KAAK,EACT,EAAE,wBAAwB,2CAyC1B"}
@@ -0,0 +1,5 @@
1
+ export declare const CopyableText: import("react").ForwardRefExoticComponent<{
2
+ label?: string;
3
+ value: string;
4
+ } & import("react").RefAttributes<HTMLPreElement>>;
5
+ //# sourceMappingURL=CopyableText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopyableText.d.ts","sourceRoot":"","sources":["../../src/components/CopyableText.tsx"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY;YAMX,MAAM;WACP,MAAM;kDAmBlB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  /** Button with a loading state to indicate a task is being processed */
2
2
  export declare const LoadingButton: import("react").ForwardRefExoticComponent<Omit<import("@mui/lab").LoadingButtonOwnProps & Omit<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes">, "classes"> & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
3
3
  ref?: ((instance: HTMLButtonElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLButtonElement> | null | undefined;
4
- }, "loading" | "className" | "children" | "style" | "color" | "classes" | "tabIndex" | "sx" | "disabled" | "size" | "href" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "startIcon" | "variant" | "loadingIndicator" | "loadingPosition">, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
4
+ }, "children" | "color" | "size" | "className" | "style" | "tabIndex" | "disabled" | "classes" | "sx" | "variant" | "fullWidth" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "disableFocusRipple" | "loading" | "href" | "disableElevation" | "endIcon" | "startIcon" | "loadingIndicator" | "loadingPosition">, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
5
5
  //# sourceMappingURL=LoadingButton.d.ts.map
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from "@storybook/react";
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
2
  import { LoadingButton } from "./LoadingButton";
3
3
  declare const meta: Meta<typeof LoadingButton>;
4
4
  export default meta;
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingButton.stories.d.ts","sourceRoot":"","sources":["../../src/components/LoadingButton.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAiChD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,aAAa,CAsBpC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,aAAa,CAClD,CAAC"}
1
+ {"version":3,"file":"LoadingButton.stories.d.ts","sourceRoot":"","sources":["../../src/components/LoadingButton.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AA2B/C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,aAAa,CAsBpC,CAAA;AACD,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,aAAa,CAAM,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeSelect.d.ts","sourceRoot":"","sources":["../../src/components/ThemeSelect.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAgB,MAAM,eAAe,CAAA;AAGpD,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAA;CACrC,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAA;AAEvC,eAAO,MAAM,WAAW,0BAA2B,gBAAgB,4CAsClE,CAAA"}
1
+ {"version":3,"file":"ThemeSelect.d.ts","sourceRoot":"","sources":["../../src/components/ThemeSelect.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAA0B,MAAM,eAAe,CAAA;AAG9D,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAA;CACrC,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAA;AAEvC,eAAO,MAAM,WAAW,0BAA2B,gBAAgB,4CAsClE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"VelocitySlider.d.ts","sourceRoot":"","sources":["../../src/components/VelocitySlider.tsx"],"names":[],"mappings":"AAKA,KAAK,mBAAmB,GAAG;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;CAC7C,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,cAAc,WAAoB,mBAAmB;;CAoChE,CAAA"}
1
+ {"version":3,"file":"VelocitySlider.d.ts","sourceRoot":"","sources":["../../src/components/VelocitySlider.tsx"],"names":[],"mappings":"AAKA,KAAK,mBAAmB,GAAG;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;CAC7C,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,cAAc,WAAoB,mBAAmB;;CAyChE,CAAA"}
@@ -1,5 +1,5 @@
1
- import { Meta, StoryObj } from "@storybook/react";
2
- import { VelocitySlider } from "./VelocitySlider";
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+ import { VelocitySlider } from "../index";
3
3
  declare const meta: Meta<typeof VelocitySlider>;
4
4
  export default meta;
5
5
  export declare const Default: StoryObj<typeof VelocitySlider>;
@@ -1 +1 @@
1
- {"version":3,"file":"VelocitySlider.stories.d.ts","sourceRoot":"","sources":["../../src/components/VelocitySlider.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,cAAc,CAuBrC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,cAAc,CACnD,CAAC"}
1
+ {"version":3,"file":"VelocitySlider.stories.d.ts","sourceRoot":"","sources":["../../src/components/VelocitySlider.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAGzC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,cAAc,CAmBrC,CAAA;AACD,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,cAAc,CAAM,CAAA"}
@@ -1,4 +1,4 @@
1
- import { Meta, StoryObj } from "@storybook/react";
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
2
  import { JoggingCartesianAxisControl } from "./JoggingCartesianAxisControl";
3
3
  declare const meta: Meta<typeof JoggingCartesianAxisControl>;
4
4
  export default meta;
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingCartesianAxisControl.stories.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingCartesianAxisControl.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAK5E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,2BAA2B,CA8BlD,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,2BAA2B,CAChE,CAAC"}
1
+ {"version":3,"file":"JoggingCartesianAxisControl.stories.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingCartesianAxisControl.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAA;AAK3E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,2BAA2B,CA+BlD,CAAA;AACD,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,2BAA2B,CAAM,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingCartesianTab.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingCartesianTab.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAA;AAa3E,eAAO,MAAM,mBAAmB,eAClB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CA4OpC,CAAA"}
1
+ {"version":3,"file":"JoggingCartesianTab.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingCartesianTab.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAA;AAa3E,eAAO,MAAM,mBAAmB,eAClB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAqOpC,CAAA"}
@@ -1,4 +1,4 @@
1
- import { JoggingStore } from "./JoggingStore";
1
+ import type { JoggingStore } from "./JoggingStore";
2
2
  export declare const JoggingCartesianValues: (({ store }: {
3
3
  store: JoggingStore;
4
4
  }) => import("react/jsx-runtime").JSX.Element) & {
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingCartesianValues.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingCartesianValues.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,eAAO,MAAM,sBAAsB,eAAwB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAqChF,CAAA"}
1
+ {"version":3,"file":"JoggingCartesianValues.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingCartesianValues.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAGlD,eAAO,MAAM,sBAAsB,eACrB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAwCpC,CAAA"}
@@ -1,9 +1,9 @@
1
- import { JoggingStore } from "./JoggingStore";
1
+ import type { JoggingStore } from "./JoggingStore";
2
2
  /**
3
3
  * Monitors the active robot motion state and displays a message if
4
4
  * any joint limits are reached.
5
5
  */
6
- export declare const JoggingJointLimitDetector: ({ store }: {
6
+ export declare const JoggingJointLimitDetector: ({ store, }: {
7
7
  store: JoggingStore;
8
8
  }) => import("react/jsx-runtime").JSX.Element | null;
9
9
  //# sourceMappingURL=JoggingJointLimitDetector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingJointLimitDetector.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointLimitDetector.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C;;;GAGG;AACH,eAAO,MAAM,yBAAyB,cAAe;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE,mDAsC3E,CAAA"}
1
+ {"version":3,"file":"JoggingJointLimitDetector.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointLimitDetector.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD;;;GAGG;AACH,eAAO,MAAM,yBAAyB,eAEnC;IACD,KAAK,EAAE,YAAY,CAAA;CACpB,mDAsCA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingJointRotationControl.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointRotationControl.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,qBAAqB,CAAA;AAQvC,KAAK,gCAAgC,GAAG;IACtC,YAAY,EAAE,CAAC,SAAS,EAAE,GAAG,GAAG,GAAG,KAAK,IAAI,CAAA;IAC5C,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,MAAM,GAAC,SAAS,CAAA;IAEpC,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,CAAA;AAEtC,eAAO,MAAM,2BAA2B,oGASnC,gCAAgC;;CAwKpC,CAAA"}
1
+ {"version":3,"file":"JoggingJointRotationControl.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointRotationControl.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,qBAAqB,CAAA;AAQvC,KAAK,gCAAgC,GAAG;IACtC,YAAY,EAAE,CAAC,SAAS,EAAE,GAAG,GAAG,GAAG,KAAK,IAAI,CAAA;IAC5C,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IAEtC,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,CAAA;AAEtC,eAAO,MAAM,2BAA2B,oGASnC,gCAAgC;;CAsLpC,CAAA"}
@@ -1,5 +1,5 @@
1
- import { Meta, StoryObj } from "@storybook/react";
2
- import { JoggingJointRotationControl } from "./JoggingJointRotationControl";
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+ import { JoggingJointRotationControl } from "../../index";
3
3
  declare const meta: Meta<typeof JoggingJointRotationControl>;
4
4
  export default meta;
5
5
  export declare const Default: StoryObj<typeof JoggingJointRotationControl>;
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingJointRotationControl.stories.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointRotationControl.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAI5E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,2BAA2B,CA4BlD,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,2BAA2B,CAChE,CAAC"}
1
+ {"version":3,"file":"JoggingJointRotationControl.stories.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointRotationControl.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AAIzD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,2BAA2B,CAyClD,CAAA;AACD,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,2BAA2B,CAAM,CAAA"}
@@ -1,4 +1,4 @@
1
- import { JoggingStore } from "./JoggingStore";
1
+ import type { JoggingStore } from "./JoggingStore";
2
2
  export declare const JoggingJointValues: (({ store }: {
3
3
  store: JoggingStore;
4
4
  }) => import("react/jsx-runtime").JSX.Element) & {
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingJointValues.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointValues.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,eAAO,MAAM,kBAAkB,eAAwB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAqC5E,CAAA"}
1
+ {"version":3,"file":"JoggingJointValues.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingJointValues.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAIlD,eAAO,MAAM,kBAAkB,eACjB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAqCpC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingOptions.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingOptions.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAKrE,eAAO,MAAM,cAAc,eAAwB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAwFxE,CAAA"}
1
+ {"version":3,"file":"JoggingOptions.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingOptions.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAKrE,eAAO,MAAM,cAAc,eAAwB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAiIxE,CAAA"}
@@ -1,7 +1,14 @@
1
- import { NovaClient } from "@wandelbots/wandelbots-js";
1
+ import { JoggingStore } from "./JoggingStore";
2
+ import type { NovaClient } from "@wandelbots/wandelbots-js";
2
3
  export type JoggingPanelProps = {
4
+ /** Connection to a Nova instance to use for jogging */
3
5
  nova: NovaClient;
6
+ /** Id of the motion group to move e.g. 0@ur5e **/
4
7
  motionGroupId: string;
8
+ /** Callback with the jogging panel's state store for further customization/config */
9
+ onSetup?: (store: JoggingStore) => void;
10
+ /** Any children will go at the bottom of the panel under the default components */
11
+ children?: React.ReactNode;
5
12
  };
6
13
  export declare const JoggingPanel: ((props: JoggingPanelProps) => import("react/jsx-runtime").JSX.Element) & {
7
14
  displayName: string;
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingPanel.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingPanel.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAEtD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,UAAU,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,YAAY,WAAoB,iBAAiB;;CAiH5D,CAAA"}
1
+ {"version":3,"file":"JoggingPanel.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingPanel.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,uDAAuD;IACvD,IAAI,EAAE,UAAU,CAAA;IAChB,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAA;IACrB,qFAAqF;IACrF,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;IACvC,mFAAmF;IACnF,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,YAAY,WAAoB,iBAAiB;;CAsG5D,CAAA"}
@@ -1,5 +1,5 @@
1
- import { Meta, StoryObj } from "@storybook/react";
2
- import { JoggingPanel } from "./JoggingPanel";
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+ import { JoggingPanel } from "../../index";
3
3
  declare const meta: Meta<typeof JoggingPanel>;
4
4
  export default meta;
5
5
  export declare const Default: StoryObj<typeof JoggingPanel>;
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingPanel.stories.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,YAAY,CAgBnC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,YAAY,CACjD,CAAC"}
1
+ {"version":3,"file":"JoggingPanel.stories.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAI1C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,YAAY,CAoBnC,CAAA;AACD,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,OAAO,YAAY,CAAM,CAAA"}
@@ -21,13 +21,20 @@ export declare class JoggingStore {
21
21
  readonly coordSystems: CoordinateSystem[];
22
22
  readonly tcps: RobotTcp[];
23
23
  selectedTabId: "cartesian" | "joint" | "debug";
24
- isLocked: boolean;
24
+ /** Locks to prevent UI interactions during certain operations */
25
+ locks: Set<string>;
25
26
  /**
26
27
  * Id of selected coordinate system from among those defined on the API side
27
28
  */
28
29
  selectedCoordSystemId: string;
29
30
  /** Id of selected tool center point from among the options available on the robot */
30
31
  selectedTcpId: string;
32
+ /**
33
+ * Whether the user is jogging in the coordinate system or tool orientation.
34
+ * When in tool orientation, the robot moves in a direction relative to the
35
+ * attached tool rotation.
36
+ */
37
+ selectedOrientation: "coordsys" | "tool";
31
38
  /**
32
39
  * Id of selected increment amount for jogging. Options are defined by robot pad.
33
40
  * When non-continuous, jogging moves the robot by a fixed number of mm or degrees
@@ -63,12 +70,14 @@ export declare class JoggingStore {
63
70
  dispose(): void;
64
71
  loadFromLocalStorage(): void;
65
72
  saveToLocalStorage(): void;
73
+ get isLocked(): boolean;
66
74
  get localStorageSave(): {
67
75
  selectedTabId: "cartesian" | "joint" | "debug";
68
76
  selectedCoordSystemId: string;
69
77
  selectedTcpId: string;
78
+ selectedOrientation: "coordsys" | "tool";
70
79
  selectedIncrementId: string;
71
- selectedCartesianMotionType: "rotate" | "translate";
80
+ selectedCartesianMotionType: "translate" | "rotate";
72
81
  };
73
82
  get tabs(): readonly [{
74
83
  readonly id: "cartesian";
@@ -113,6 +122,7 @@ export declare class JoggingStore {
113
122
  get tabIndex(): number;
114
123
  get coordSystemsById(): import("lodash").Dictionary<CoordinateSystem>;
115
124
  get selectedCoordSystem(): CoordinateSystem;
125
+ get activeCoordSystemId(): string;
116
126
  get tcpsById(): import("lodash").Dictionary<RobotTcp>;
117
127
  get selectedDiscreteIncrement(): {
118
128
  id: string;
@@ -132,10 +142,13 @@ export declare class JoggingStore {
132
142
  onTabChange(_event: React.SyntheticEvent, newValue: number): void;
133
143
  setSelectedCoordSystemId(id: string): void;
134
144
  setSelectedTcpId(id: string): void;
145
+ setSelectedOrientation(orientation: "coordsys" | "tool"): void;
135
146
  setSelectedIncrementId(id: IncrementOptionId): void;
136
147
  setIncrementJoggingInProgress(inProgress: boolean): void;
137
148
  setVelocityFromSlider(velocity: number): void;
138
149
  setSelectedCartesianMotionType(type: "translate" | "rotate"): void;
150
+ /** Lock the UI until the given async callback resolves */
151
+ withMotionLock(fn: () => Promise<void>): Promise<void>;
139
152
  }
140
153
  export {};
141
154
  //# sourceMappingURL=JoggingStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingStore.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingStore.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JoggingStore.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingStore.tsx"],"names":[],"mappings":"AACA,OAAO,EAA+B,KAAK,iBAAiB,EAAE,MAAM,MAAM,CAAA;AAC1E,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACxB,QAAQ,EACT,MAAM,2BAA2B,CAAA;AAGlC,QAAA,MAAM,wBAAwB;;;;GAK7B,CAAA;AAED,QAAA,MAAM,gBAAgB;;;;;;IAGZ,CAAA;AAEV,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/E,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/D,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;AAErD,qBAAa,YAAY;IAuFrB,QAAQ,CAAC,MAAM,EAAE,gBAAgB;IACjC,QAAQ,CAAC,eAAe,EAAE,wBAAwB;IAClD,QAAQ,CAAC,YAAY,EAAE,gBAAgB,EAAE;IACzC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE;IAzF3B,aAAa,EAAE,WAAW,GAAG,OAAO,GAAG,OAAO,CAAc;IAE5D,iEAAiE;IACjE,KAAK,cAAoB;IAEzB;;OAEG;IACH,qBAAqB,EAAE,MAAM,CAAU;IAEvC,qFAAqF;IACrF,aAAa,EAAE,MAAM,CAAK;IAE1B;;;;OAIG;IACH,mBAAmB,EAAE,UAAU,GAAG,MAAM,CAAa;IAErD;;;;OAIG;IACH,mBAAmB,EAAE,iBAAiB,CAAe;IAErD;;;OAGG;IACH,2BAA2B,EAAE,WAAW,GAAG,QAAQ,CAAc;IAEjE,qEAAqE;IACrE,0BAA0B,UAAQ;IAElC,6EAA6E;IAC7E,2BAA2B,EAAE,MAAM,CAAK;IACxC,oFAAoF;IACpF,yBAAyB,EAAE,MAAM,CAAI;IAErC,iFAAiF;IACjF,8BAA8B,EAAE,MAAM,CAAI;IAC1C,iFAAiF;IACjF,8BAA8B,EAAE,MAAM,CAAM;IAE5C,8EAA8E;IAC9E,4BAA4B,EAAE,MAAM,CAAI;IACxC,8EAA8E;IAC9E,4BAA4B,EAAE,MAAM,CAAK;IAEzC,SAAS,EAAE,iBAAiB,EAAE,CAAK;IAEnC;;;OAGG;WACU,OAAO,CAAC,MAAM,EAAE,gBAAgB;gBA6BlC,MAAM,EAAE,gBAAgB,EACxB,eAAe,EAAE,wBAAwB,EACzC,YAAY,EAAE,gBAAgB,EAAE,EAChC,IAAI,EAAE,QAAQ,EAAE;IAuB3B,OAAO;IAOP,oBAAoB;IA6BpB,kBAAkB;IAOlB,IAAI,QAAQ,YAEX;IAED,IAAI,gBAAgB;;;;;;;MASnB;IAED,IAAI,IAAI;;;;;;OAWP;IAED,IAAI,gBAAgB;;;;;;SAEnB;IAED,IAAI,wBAAwB;;;;QAE3B;IAED,IAAI,oBAAoB;;;;;;OAEvB;IAED,IAAI,QAAQ;;;;;;OAEX;IAED,IAAI,UAAU;;;;;;MAEb;IAED,IAAI,QAAQ,WAEX;IAED,IAAI,gBAAgB,kDAEnB;IAED,IAAI,mBAAmB,qBAEtB;IAED,IAAI,mBAAmB,WAItB;IAED,IAAI,QAAQ,0CAEX;IAED,IAAI,yBAAyB;;;;kBAI5B;IAED,qEAAqE;IACrE,IAAI,0BAA0B,WAE7B;IAED,IAAI,sBAAsB,WAIzB;IAED,IAAI,yBAAyB,WAI5B;IAED,IAAI,yBAAyB,WAI5B;IAED;;;OAGG;IACH,IAAI,iBAAiB,2BASpB;IAED,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM;IAK1D,wBAAwB,CAAC,EAAE,EAAE,MAAM;IAInC,gBAAgB,CAAC,EAAE,EAAE,MAAM;IAI3B,sBAAsB,CAAC,WAAW,EAAE,UAAU,GAAG,MAAM;IAIvD,sBAAsB,CAAC,EAAE,EAAE,iBAAiB;IAI5C,6BAA6B,CAAC,UAAU,EAAE,OAAO;IAIjD,qBAAqB,CAAC,QAAQ,EAAE,MAAM;IAQtC,8BAA8B,CAAC,IAAI,EAAE,WAAW,GAAG,QAAQ;IAI3D,0DAA0D;IACpD,cAAc,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;CAU7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"JoggingVelocitySlider.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingVelocitySlider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAIlD,eAAO,MAAM,qBAAqB,eACpB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAgDpC,CAAA"}
1
+ {"version":3,"file":"JoggingVelocitySlider.d.ts","sourceRoot":"","sources":["../../../src/components/jogging/JoggingVelocitySlider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAIlD,eAAO,MAAM,qBAAqB,eACpB;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE;;CAoCpC,CAAA"}
@@ -0,0 +1,156 @@
1
+ import { Euler, Vector3, WebGLRenderer } from "three";
2
+ import { SupportedRobot } from "./SupportedRobot";
3
+ import type { MotionGroupStateResponse } from "@wandelbots/wandelbots-js";
4
+ declare const _default: {
5
+ title: string;
6
+ component: typeof SupportedRobot;
7
+ decorators: ((Story: import("@storybook/csf").PartialStoryFn<import("@storybook/react").ReactRenderer, {
8
+ rapidlyChangingMotionState: MotionGroupStateResponse;
9
+ modelFromController: string;
10
+ dhParameters: import("@wandelbots/wandelbots-api-client").DHParameter[];
11
+ getModel?: ((modelFromController: string) => string) | undefined;
12
+ isGhost?: boolean | undefined;
13
+ ref?: import("react").Ref<import("three").Group<import("three").Object3DEventMap>> | undefined;
14
+ children?: React.ReactNode;
15
+ attach?: import("@react-three/fiber/dist/declarations/src/core/renderer").AttachType | undefined;
16
+ args?: [] | undefined;
17
+ key?: React.Key | undefined;
18
+ onUpdate?: ((self: import("three").Group<import("three").Object3DEventMap>) => void) | undefined;
19
+ readonly type?: string | undefined;
20
+ toJSON?: ((meta?: import("three").JSONMeta) => import("three").Object3DJSON) | undefined;
21
+ readonly isObject3D?: true | undefined;
22
+ readonly id?: number | undefined;
23
+ uuid?: string | undefined;
24
+ name?: string | undefined;
25
+ parent?: import("three").Object3D<import("three").Object3DEventMap> | null | undefined;
26
+ readonly modelViewMatrix?: import("three").Matrix4 | undefined;
27
+ readonly normalMatrix?: import("three").Matrix3 | undefined;
28
+ matrixWorld?: import("three").Matrix4 | undefined;
29
+ matrixAutoUpdate?: boolean | undefined;
30
+ matrixWorldAutoUpdate?: boolean | undefined;
31
+ matrixWorldNeedsUpdate?: boolean | undefined;
32
+ visible?: boolean | undefined;
33
+ castShadow?: boolean | undefined;
34
+ receiveShadow?: boolean | undefined;
35
+ frustumCulled?: boolean | undefined;
36
+ renderOrder?: number | undefined;
37
+ animations?: import("three").AnimationClip[] | undefined;
38
+ userData?: Record<string, any> | undefined;
39
+ customDepthMaterial?: import("three").Material | undefined;
40
+ customDistanceMaterial?: import("three").Material | undefined;
41
+ onBeforeShadow?: ((renderer: WebGLRenderer, scene: import("three").Scene, shadowCamera: import("three").Camera, geometry: import("three").BufferGeometry, depthMaterial: import("three").Material, group: import("three").Group) => void) | undefined;
42
+ onAfterShadow?: ((renderer: WebGLRenderer, scene: import("three").Scene, shadowCamera: import("three").Camera, geometry: import("three").BufferGeometry, depthMaterial: import("three").Material, group: import("three").Group) => void) | undefined;
43
+ onBeforeRender?: ((renderer: WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, geometry: import("three").BufferGeometry, material: import("three").Material, group: import("three").Group) => void) | undefined;
44
+ onAfterRender?: ((renderer: WebGLRenderer, scene: import("three").Scene, camera: import("three").Camera, geometry: import("three").BufferGeometry, material: import("three").Material, group: import("three").Group) => void) | undefined;
45
+ applyMatrix4?: ((matrix: import("three").Matrix4) => void) | undefined;
46
+ applyQuaternion?: ((quaternion: import("three").Quaternion) => import("three").Group<import("three").Object3DEventMap>) | undefined;
47
+ setRotationFromAxisAngle?: ((axis: Vector3, angle: number) => void) | undefined;
48
+ setRotationFromEuler?: ((euler: Euler) => void) | undefined;
49
+ setRotationFromMatrix?: ((m: import("three").Matrix4) => void) | undefined;
50
+ setRotationFromQuaternion?: ((q: import("three").Quaternion) => void) | undefined;
51
+ rotateOnAxis?: ((axis: Vector3, angle: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
52
+ rotateOnWorldAxis?: ((axis: Vector3, angle: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
53
+ rotateX?: ((angle: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
54
+ rotateY?: ((angle: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
55
+ rotateZ?: ((angle: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
56
+ translateOnAxis?: ((axis: Vector3, distance: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
57
+ translateX?: ((distance: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
58
+ translateY?: ((distance: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
59
+ translateZ?: ((distance: number) => import("three").Group<import("three").Object3DEventMap>) | undefined;
60
+ localToWorld?: ((vector: Vector3) => Vector3) | undefined;
61
+ worldToLocal?: ((vector: Vector3) => Vector3) | undefined;
62
+ lookAt?: {
63
+ (vector: Vector3): void;
64
+ (x: number, y: number, z: number): void;
65
+ } | undefined;
66
+ add?: ((...object: import("three").Object3D[]) => import("three").Group<import("three").Object3DEventMap>) | undefined;
67
+ remove?: ((...object: import("three").Object3D[]) => import("three").Group<import("three").Object3DEventMap>) | undefined;
68
+ removeFromParent?: (() => import("three").Group<import("three").Object3DEventMap>) | undefined;
69
+ clear?: (() => import("three").Group<import("three").Object3DEventMap>) | undefined;
70
+ getObjectById?: ((id: number) => import("three").Object3D | undefined) | undefined;
71
+ getObjectByName?: ((name: string) => import("three").Object3D | undefined) | undefined;
72
+ getObjectByProperty?: ((name: string, value: any) => import("three").Object3D | undefined) | undefined;
73
+ getObjectsByProperty?: ((name: string, value: any, optionalTarget?: import("three").Object3D[]) => import("three").Object3D[]) | undefined;
74
+ getWorldPosition?: ((target: Vector3) => Vector3) | undefined;
75
+ getWorldQuaternion?: ((target: import("three").Quaternion) => import("three").Quaternion) | undefined;
76
+ getWorldScale?: ((target: Vector3) => Vector3) | undefined;
77
+ getWorldDirection?: ((target: Vector3) => Vector3) | undefined;
78
+ raycast?: ((raycaster: import("three").Raycaster, intersects: import("three").Intersection[]) => void) | undefined;
79
+ traverse?: ((callback: (object: import("three").Object3D) => any) => void) | undefined;
80
+ traverseVisible?: ((callback: (object: import("three").Object3D) => any) => void) | undefined;
81
+ traverseAncestors?: ((callback: (object: import("three").Object3D) => any) => void) | undefined;
82
+ updateMatrix?: (() => void) | undefined;
83
+ updateMatrixWorld?: ((force?: boolean) => void) | undefined;
84
+ updateWorldMatrix?: ((updateParents: boolean, updateChildren: boolean) => void) | undefined;
85
+ clone?: ((recursive?: boolean) => import("three").Group<import("three").Object3DEventMap>) | undefined;
86
+ copy?: ((object: import("three").Object3D, recursive?: boolean) => import("three").Group<import("three").Object3DEventMap>) | undefined;
87
+ addEventListener?: {
88
+ <T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, import("three").Group<import("three").Object3DEventMap>>): void;
89
+ <T extends string>(type: T, listener: import("three").EventListener<{}, T, import("three").Group<import("three").Object3DEventMap>>): void;
90
+ } | undefined;
91
+ hasEventListener?: {
92
+ <T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, import("three").Group<import("three").Object3DEventMap>>): boolean;
93
+ <T extends string>(type: T, listener: import("three").EventListener<{}, T, import("three").Group<import("three").Object3DEventMap>>): boolean;
94
+ } | undefined;
95
+ removeEventListener?: {
96
+ <T extends keyof import("three").Object3DEventMap>(type: T, listener: import("three").EventListener<import("three").Object3DEventMap[T], T, import("three").Group<import("three").Object3DEventMap>>): void;
97
+ <T extends string>(type: T, listener: import("three").EventListener<{}, T, import("three").Group<import("three").Object3DEventMap>>): void;
98
+ } | undefined;
99
+ dispatchEvent?: (<T extends keyof import("three").Object3DEventMap>(event: import("three").BaseEvent<T> & import("three").Object3DEventMap[T]) => void) | undefined;
100
+ readonly isGroup?: true | undefined;
101
+ position?: import("@react-three/fiber").Vector3 | undefined;
102
+ up?: import("@react-three/fiber").Vector3 | undefined;
103
+ scale?: import("@react-three/fiber").Vector3 | undefined;
104
+ rotation?: import("@react-three/fiber").Euler | undefined;
105
+ matrix?: import("@react-three/fiber").Matrix4 | undefined;
106
+ quaternion?: import("@react-three/fiber").Quaternion | undefined;
107
+ layers?: import("@react-three/fiber").Layers | undefined;
108
+ dispose?: ((() => void) | null) | undefined;
109
+ onClick?: ((event: import("@react-three/fiber").ThreeEvent<MouseEvent>) => void) | undefined;
110
+ onContextMenu?: ((event: import("@react-three/fiber").ThreeEvent<MouseEvent>) => void) | undefined;
111
+ onDoubleClick?: ((event: import("@react-three/fiber").ThreeEvent<MouseEvent>) => void) | undefined;
112
+ onPointerUp?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
113
+ onPointerDown?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
114
+ onPointerOver?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
115
+ onPointerOut?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
116
+ onPointerEnter?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
117
+ onPointerLeave?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
118
+ onPointerMove?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
119
+ onPointerMissed?: ((event: MouseEvent) => void) | undefined;
120
+ onPointerCancel?: ((event: import("@react-three/fiber").ThreeEvent<PointerEvent>) => void) | undefined;
121
+ onWheel?: ((event: import("@react-three/fiber").ThreeEvent<WheelEvent>) => void) | undefined;
122
+ }>) => import("react/jsx-runtime").JSX.Element)[];
123
+ };
124
+ export default _default;
125
+ export declare const SupportedRobotSceneSt: {
126
+ args: {
127
+ modelFromController: string;
128
+ };
129
+ render: (args: {
130
+ rapidlyChangingMotionState: MotionGroupStateResponse;
131
+ modelFromController: string;
132
+ dhParameters: import("@wandelbots/wandelbots-api-client").DHParameter[];
133
+ getModel?: (modelFromController: string) => string;
134
+ isGhost?: boolean;
135
+ } & Omit<import("@react-three/fiber").ExtendedColors<import("@react-three/fiber").Overwrite<Partial<import("three").Group<import("three").Object3DEventMap>>, import("@react-three/fiber").NodeProps<import("three").Group<import("three").Object3DEventMap>, typeof import("three").Group>>>, import("@react-three/fiber").NonFunctionKeys<{
136
+ position?: import("@react-three/fiber").Vector3;
137
+ up?: import("@react-three/fiber").Vector3;
138
+ scale?: import("@react-three/fiber").Vector3;
139
+ rotation?: import("@react-three/fiber").Euler;
140
+ matrix?: import("@react-three/fiber").Matrix4;
141
+ quaternion?: import("@react-three/fiber").Quaternion;
142
+ layers?: import("@react-three/fiber").Layers;
143
+ dispose?: (() => void) | null;
144
+ }>> & {
145
+ position?: import("@react-three/fiber").Vector3;
146
+ up?: import("@react-three/fiber").Vector3;
147
+ scale?: import("@react-three/fiber").Vector3;
148
+ rotation?: import("@react-three/fiber").Euler;
149
+ matrix?: import("@react-three/fiber").Matrix4;
150
+ quaternion?: import("@react-three/fiber").Quaternion;
151
+ layers?: import("@react-three/fiber").Layers;
152
+ dispose?: (() => void) | null;
153
+ } & import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers) => import("react/jsx-runtime").JSX.Element;
154
+ name: string;
155
+ };
156
+ //# sourceMappingURL=SupportedRobot.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SupportedRobot.stories.d.ts","sourceRoot":"","sources":["../../../src/components/robots/SupportedRobot.stories.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAGV,wBAAwB,EAGzB,MAAM,2BAA2B,CAAA;;;;;;;;;;;mBAuDC,MAAO,SACrC;;;cAIY,MACX,GAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA1DP,wBAsBuC;AAsFvC,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMjB,CAAA"}
@@ -1,11 +1,11 @@
1
1
  import { type Monaco } from "@monaco-editor/react";
2
- import { editor } from "monaco-editor";
2
+ import type { editor } from "monaco-editor";
3
3
  type WandelscriptEditorProps = {
4
4
  /** The current Wandelscript content of the code editor (controlled component) */
5
5
  code?: string;
6
6
  /** What to do when the user edits the code */
7
7
  onChange?: (code: string | undefined, ev: editor.IModelContentChangedEvent) => void;
8
- /** Callback to further configure monaco on startup if needed */
8
+ /** Options for monaco editor */
9
9
  monacoOptions?: editor.IEditorOptions;
10
10
  /** Callback to further configure monaco on startup if needed */
11
11
  monacoSetup?: (monaco: Monaco) => void;