@viamrobotics/motion-tools 1.15.5 → 1.15.7

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 (38) hide show
  1. package/dist/components/Entities/Arrows/Arrows.svelte +6 -3
  2. package/dist/components/Entities/Frame.svelte +5 -1
  3. package/dist/components/Entities/GLTF.svelte +2 -0
  4. package/dist/components/Entities/Geometry.svelte +20 -17
  5. package/dist/components/Entities/Line.svelte +2 -0
  6. package/dist/components/Entities/Points.svelte +2 -0
  7. package/dist/components/Entities/hooks/useEntityEvents.svelte.d.ts +0 -1
  8. package/dist/components/Entities/hooks/useEntityEvents.svelte.js +3 -8
  9. package/dist/components/KeyboardControls.svelte +6 -4
  10. package/dist/components/Scene.svelte +0 -1
  11. package/dist/components/SceneProviders.svelte +0 -2
  12. package/dist/components/hover/LinkedHoveredEntity.svelte +6 -12
  13. package/dist/components/hover/LinkedHoveredEntity.svelte.d.ts +0 -2
  14. package/dist/components/overlay/FloatingPanel.svelte +1 -1
  15. package/dist/components/overlay/Logs.svelte +95 -28
  16. package/dist/components/overlay/left-pane/Tree.svelte +17 -147
  17. package/dist/components/overlay/left-pane/Tree.svelte.d.ts +3 -3
  18. package/dist/components/overlay/left-pane/TreeNode.svelte +169 -0
  19. package/dist/components/overlay/left-pane/TreeNode.svelte.d.ts +10 -0
  20. package/dist/components/xr/OriginMarker.svelte +44 -83
  21. package/dist/components/xr/PointDistance.svelte +8 -14
  22. package/dist/components/xr/XR.svelte +32 -11
  23. package/dist/components/xr/frame-configure/Controllers.svelte +6 -0
  24. package/dist/components/xr/{HandCollider.svelte.d.ts → frame-configure/Controllers.svelte.d.ts} +3 -3
  25. package/dist/components/xr/{Controllers.svelte → teleop/Controllers.svelte} +4 -19
  26. package/dist/ecs/traits.d.ts +1 -0
  27. package/dist/ecs/traits.js +1 -0
  28. package/dist/hooks/use3DModels.svelte.js +1 -1
  29. package/dist/hooks/useFramelessComponents.svelte.js +3 -3
  30. package/dist/hooks/useSettings.svelte.d.ts +4 -2
  31. package/dist/hooks/useSettings.svelte.js +15 -7
  32. package/package.json +3 -3
  33. package/dist/components/xr/Draggable.svelte +0 -102
  34. package/dist/components/xr/Draggable.svelte.d.ts +0 -11
  35. package/dist/components/xr/HandCollider.svelte +0 -20
  36. package/dist/hooks/useVisibility.svelte.d.ts +0 -6
  37. package/dist/hooks/useVisibility.svelte.js +0 -10
  38. /package/dist/components/xr/{Controllers.svelte.d.ts → teleop/Controllers.svelte.d.ts} +0 -0
@@ -1,102 +0,0 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte'
3
-
4
- import { RigidBody as RigidBodyType } from '@dimforge/rapier3d-compat'
5
- import { T, useTask } from '@threlte/core'
6
- import { useGamepad } from '@threlte/extras'
7
- import { AutoColliders, RigidBody } from '@threlte/rapier'
8
- import { useController } from '@threlte/xr'
9
- import { Group, Vector3 } from 'three'
10
-
11
- interface Props {
12
- children: Snippet
13
- onPointerEnter?: () => void
14
- onPointerLeave?: () => void
15
- onPointerDown?: () => void
16
- onPointerUp?: () => void
17
- }
18
-
19
- let { onPointerEnter, onPointerLeave, onPointerDown, onPointerUp, children }: Props = $props()
20
-
21
- let hovering = $state(false)
22
-
23
- let dragging = $state(false)
24
- let rigidBody: RigidBodyType | undefined = $state()
25
-
26
- const group = new Group()
27
- const vec3 = new Vector3()
28
- const offset = new Vector3()
29
- const position = new Vector3()
30
-
31
- const left = useController('left')
32
- const right = useController('right')
33
- const leftPad = useGamepad({ xr: true, hand: 'left' })
34
- const rightPad = useGamepad({ xr: true, hand: 'right' })
35
-
36
- leftPad.trigger.on('down', () => {
37
- if (!$left) return
38
-
39
- dragging = true
40
- group.getWorldPosition(vec3)
41
- offset.copy($left.grip.position).sub(vec3)
42
- onPointerDown?.()
43
- })
44
-
45
- leftPad.trigger.on('up', () => {
46
- dragging = false
47
- onPointerUp?.()
48
- })
49
-
50
- rightPad.trigger.on('down', () => {
51
- if (!$right) return
52
-
53
- dragging = true
54
- group.getWorldPosition(vec3)
55
- offset.copy($right.grip.position).sub(vec3)
56
- onPointerDown?.()
57
- })
58
-
59
- rightPad.trigger.on('up', () => {
60
- dragging = true
61
- onPointerUp?.()
62
- })
63
-
64
- const onsensorenter = () => {
65
- hovering = true
66
- onPointerEnter?.()
67
- }
68
-
69
- const onsensorexit = () => {
70
- hovering = false
71
- onPointerLeave?.()
72
- }
73
-
74
- const { start, stop } = useTask(
75
- () => {
76
- if (!$left || !rigidBody) return
77
-
78
- position.copy($left.grip.position).sub(offset)
79
-
80
- rigidBody.setNextKinematicTranslation({ x: position.x, y: position.y, z: position.z })
81
- },
82
- { autoStart: false }
83
- )
84
-
85
- $effect(() => (hovering && dragging ? start() : stop()))
86
- </script>
87
-
88
- <T is={group}>
89
- <RigidBody
90
- bind:rigidBody
91
- type="kinematicPosition"
92
- >
93
- <AutoColliders
94
- sensor
95
- shape="convexHull"
96
- {onsensorenter}
97
- {onsensorexit}
98
- >
99
- {@render children?.()}
100
- </AutoColliders>
101
- </RigidBody>
102
- </T>
@@ -1,11 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- interface Props {
3
- children: Snippet;
4
- onPointerEnter?: () => void;
5
- onPointerLeave?: () => void;
6
- onPointerDown?: () => void;
7
- onPointerUp?: () => void;
8
- }
9
- declare const Draggable: import("svelte").Component<Props, {}, "">;
10
- type Draggable = ReturnType<typeof Draggable>;
11
- export default Draggable;
@@ -1,20 +0,0 @@
1
- <script lang="ts">
2
- import type { Group } from 'three'
3
-
4
- import { useParent, useTask } from '@threlte/core'
5
- import { Collider, useRigidBody } from '@threlte/rapier'
6
-
7
- const parent = useParent()
8
- const rb = useRigidBody()
9
-
10
- useTask(() => {
11
- const { position } = $parent as Group
12
- rb?.setNextKinematicTranslation({ x: position.x, y: position.y, z: position.z })
13
- })
14
- </script>
15
-
16
- <Collider
17
- sensor
18
- shape="ball"
19
- args={[0.1]}
20
- />
@@ -1,6 +0,0 @@
1
- import type { Entity } from 'koota';
2
- import { SvelteMap } from 'svelte/reactivity';
3
- type Context = SvelteMap<Entity, boolean>;
4
- export declare const provideVisibility: () => void;
5
- export declare const useVisibility: () => Context;
6
- export {};
@@ -1,10 +0,0 @@
1
- import { getContext, setContext } from 'svelte';
2
- import { SvelteMap } from 'svelte/reactivity';
3
- const key = Symbol('object-visibility-context');
4
- export const provideVisibility = () => {
5
- const map = new SvelteMap();
6
- setContext(key, map);
7
- };
8
- export const useVisibility = () => {
9
- return getContext(key);
10
- };