@relu-interactives/spatial-ecs 0.3.2 → 0.3.4

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 (33) hide show
  1. package/dist/{XRRig-Cu-EyliG.d.cts → XRRig-2686IqLQ.d.cts} +5 -5
  2. package/dist/{XRRig-CAmf04NX.d.ts → XRRig-D2QURXl1.d.ts} +5 -5
  3. package/dist/{chunk-67WGASUJ.js → chunk-2LVFGVWI.js} +3 -3
  4. package/dist/{chunk-67WGASUJ.js.map → chunk-2LVFGVWI.js.map} +1 -1
  5. package/dist/{chunk-JWTRFJBL.js → chunk-4BZYK3JP.js} +4 -4
  6. package/dist/{chunk-JWTRFJBL.js.map → chunk-4BZYK3JP.js.map} +1 -1
  7. package/dist/{chunk-U3MDYKPV.js → chunk-6QC2PJLD.js} +4 -3
  8. package/dist/chunk-6QC2PJLD.js.map +1 -0
  9. package/dist/{chunk-SALBG747.js → chunk-ID266ZUA.js} +75 -5
  10. package/dist/chunk-ID266ZUA.js.map +1 -0
  11. package/dist/components/index.cjs +2 -1
  12. package/dist/components/index.cjs.map +1 -1
  13. package/dist/components/index.d.cts +2 -2
  14. package/dist/components/index.d.ts +2 -2
  15. package/dist/components/index.js +1 -1
  16. package/dist/factories/index.cjs +2 -1
  17. package/dist/factories/index.cjs.map +1 -1
  18. package/dist/factories/index.d.cts +1 -1
  19. package/dist/factories/index.d.ts +1 -1
  20. package/dist/factories/index.js +3 -3
  21. package/dist/{index-w1oqWl_M.d.ts → index-BtKOaHfY.d.ts} +1 -1
  22. package/dist/{index-CUFd71ri.d.cts → index-Xu238jLn.d.cts} +1 -1
  23. package/dist/index.cjs +73 -2
  24. package/dist/index.cjs.map +1 -1
  25. package/dist/index.d.cts +6 -3
  26. package/dist/index.d.ts +6 -3
  27. package/dist/index.js +8 -8
  28. package/dist/systems/index.cjs +73 -2
  29. package/dist/systems/index.cjs.map +1 -1
  30. package/dist/systems/index.js +3 -3
  31. package/package.json +1 -1
  32. package/dist/chunk-SALBG747.js.map +0 -1
  33. package/dist/chunk-U3MDYKPV.js.map +0 -1
package/dist/index.d.cts CHANGED
@@ -1,11 +1,11 @@
1
1
  import { k as EcsSystem, C as Component, W as WorldEntityView, T as TransformComponent, l as World, S as SpawnPrefabSource, m as SpawnPrefabOptions, n as ComponentClass, o as ParentLookup, p as EcsEntityKind, O as ObjectManagementSystem, q as SubtreeSnapshot, r as EntityId, s as ExternalRefWarning } from './System-vrU46Vuw.cjs';
2
2
  export { A as AssetInput, t as CheckboxInput, u as ColorInput, v as ComponentFactory, w as ComponentInput, x as ComponentKind, y as DropdownInput, z as DropdownOption, B as EcsComponentFactoryKind, F as EcsEntityEditorKind, G as EntityInput, H as FloatInput, I as InputSystem, J as IntersectionResult, K as KeyboardKey, L as KeyboardKeys, M as MouseButton, N as PREFAB_FILE_VERSION, Q as PREFAB_FILE_VERSION_NESTED, R as PrefabAsset, U as RemapSnapshotOptions, X as RenderSystem, Y as SelectionListener, Z as SliderInput, _ as TextInput, $ as ToggleInput, a0 as TransformSyncSystem, a1 as Vec3, a2 as Vector2Input, a3 as Vector3Input, a4 as clearPrefabCache, a5 as despawnPrefab, a6 as loadPrefab, a7 as parsePrefabAsset, a8 as prefabFileVersionFor, a9 as remapSnapshotEntityIds, aa as setPrefabAssetUrlResolver, ab as spawnPrefab } from './System-vrU46Vuw.cjs';
3
3
  import * as THREE from 'three';
4
- import { O as Object3DRef } from './XRRig-Cu-EyliG.cjs';
5
- export { ag as AnimationStateCallbacks, ah as AnimationStateMachine, ai as AnimationStateManager, aj as StateMachine } from './XRRig-Cu-EyliG.cjs';
4
+ import { O as Object3DRef } from './XRRig-2686IqLQ.cjs';
5
+ export { ag as AnimationStateCallbacks, ah as AnimationStateMachine, ai as AnimationStateManager, aj as StateMachine } from './XRRig-2686IqLQ.cjs';
6
6
  import { X as XrCapabilities, a as XrInputState } from './index-Bc0YCz1A.cjs';
7
7
  export { A as AnimationSystem, b as AudioSystem, C as CameraSyncSystem, E as EnvironmentSyncSystem, I as InstancedMeshSystem, L as LightSyncSystem, M as MaterialSyncSystem, c as MeshGeometrySystem, d as ModuleLoader, N as NO_XR_CAPABILITIES, O as ObjectVisibilitySystem, P as PhysicsSyncSystem, e as PostprocessingSyncSystem, S as SCRIPT_OBJECT_ROOT_FLAG, f as ScriptBehaviourSystem, g as ScriptObjectSystem, h as SelectionContext, V as VRTeleportAreaSystem, i as VideoSystem, j as XRControllerVisualSystem, k as XRInputSystem, l as XRInteractionSystem, m as XRLocomotionSystem, n as XRSessionSystem, o as XrHandedness, p as XrInputKind, r as readXrCapabilities } from './index-Bc0YCz1A.cjs';
8
- export { i as CoreComponents } from './index-CUFd71ri.cjs';
8
+ export { i as CoreComponents } from './index-Xu238jLn.cjs';
9
9
  export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstanceSlotComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createScriptObjectComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVRTeleportAreaComponent, createVideoComponent, createXRInteractableComponent, createXRRigComponent, registerDefaultComponentFactories, registerDefaultFactories } from './factories/index.cjs';
10
10
  import { GLTF } from 'three/examples/jsm/loaders/GLTFLoader.js';
11
11
  import '@dimforge/rapier3d-compat';
@@ -427,6 +427,9 @@ type ComponentValueMaps = {
427
427
  imageTargetAnchorValues: Map<number, unknown>;
428
428
  scriptValues: Map<number, unknown>;
429
429
  scriptObjectValues: Map<number, unknown>;
430
+ xrRigValues: Map<number, unknown>;
431
+ vrTeleportAreaValues: Map<number, unknown>;
432
+ xrInteractableValues: Map<number, unknown>;
430
433
  instancedMeshValues: Map<number, unknown>;
431
434
  instanceSlotValues: Map<number, unknown>;
432
435
  prefabNodeValues: Map<number, unknown>;
package/dist/index.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import { k as EcsSystem, C as Component, W as WorldEntityView, T as TransformComponent, l as World, S as SpawnPrefabSource, m as SpawnPrefabOptions, n as ComponentClass, o as ParentLookup, p as EcsEntityKind, O as ObjectManagementSystem, q as SubtreeSnapshot, r as EntityId, s as ExternalRefWarning } from './System-vrU46Vuw.js';
2
2
  export { A as AssetInput, t as CheckboxInput, u as ColorInput, v as ComponentFactory, w as ComponentInput, x as ComponentKind, y as DropdownInput, z as DropdownOption, B as EcsComponentFactoryKind, F as EcsEntityEditorKind, G as EntityInput, H as FloatInput, I as InputSystem, J as IntersectionResult, K as KeyboardKey, L as KeyboardKeys, M as MouseButton, N as PREFAB_FILE_VERSION, Q as PREFAB_FILE_VERSION_NESTED, R as PrefabAsset, U as RemapSnapshotOptions, X as RenderSystem, Y as SelectionListener, Z as SliderInput, _ as TextInput, $ as ToggleInput, a0 as TransformSyncSystem, a1 as Vec3, a2 as Vector2Input, a3 as Vector3Input, a4 as clearPrefabCache, a5 as despawnPrefab, a6 as loadPrefab, a7 as parsePrefabAsset, a8 as prefabFileVersionFor, a9 as remapSnapshotEntityIds, aa as setPrefabAssetUrlResolver, ab as spawnPrefab } from './System-vrU46Vuw.js';
3
3
  import * as THREE from 'three';
4
- import { O as Object3DRef } from './XRRig-CAmf04NX.js';
5
- export { ag as AnimationStateCallbacks, ah as AnimationStateMachine, ai as AnimationStateManager, aj as StateMachine } from './XRRig-CAmf04NX.js';
4
+ import { O as Object3DRef } from './XRRig-D2QURXl1.js';
5
+ export { ag as AnimationStateCallbacks, ah as AnimationStateMachine, ai as AnimationStateManager, aj as StateMachine } from './XRRig-D2QURXl1.js';
6
6
  import { X as XrCapabilities, a as XrInputState } from './index-CRmfSYdj.js';
7
7
  export { A as AnimationSystem, b as AudioSystem, C as CameraSyncSystem, E as EnvironmentSyncSystem, I as InstancedMeshSystem, L as LightSyncSystem, M as MaterialSyncSystem, c as MeshGeometrySystem, d as ModuleLoader, N as NO_XR_CAPABILITIES, O as ObjectVisibilitySystem, P as PhysicsSyncSystem, e as PostprocessingSyncSystem, S as SCRIPT_OBJECT_ROOT_FLAG, f as ScriptBehaviourSystem, g as ScriptObjectSystem, h as SelectionContext, V as VRTeleportAreaSystem, i as VideoSystem, j as XRControllerVisualSystem, k as XRInputSystem, l as XRInteractionSystem, m as XRLocomotionSystem, n as XRSessionSystem, o as XrHandedness, p as XrInputKind, r as readXrCapabilities } from './index-CRmfSYdj.js';
8
- export { i as CoreComponents } from './index-w1oqWl_M.js';
8
+ export { i as CoreComponents } from './index-BtKOaHfY.js';
9
9
  export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstanceSlotComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createScriptObjectComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVRTeleportAreaComponent, createVideoComponent, createXRInteractableComponent, createXRRigComponent, registerDefaultComponentFactories, registerDefaultFactories } from './factories/index.js';
10
10
  import { GLTF } from 'three/examples/jsm/loaders/GLTFLoader.js';
11
11
  import '@dimforge/rapier3d-compat';
@@ -427,6 +427,9 @@ type ComponentValueMaps = {
427
427
  imageTargetAnchorValues: Map<number, unknown>;
428
428
  scriptValues: Map<number, unknown>;
429
429
  scriptObjectValues: Map<number, unknown>;
430
+ xrRigValues: Map<number, unknown>;
431
+ vrTeleportAreaValues: Map<number, unknown>;
432
+ xrInteractableValues: Map<number, unknown>;
430
433
  instancedMeshValues: Map<number, unknown>;
431
434
  instanceSlotValues: Map<number, unknown>;
432
435
  prefabNodeValues: Map<number, unknown>;
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
- import { MeshGeometrySystem, InstancedMeshSystem, EnvironmentSyncSystem, PostprocessingSyncSystem, LightSyncSystem, MaterialSyncSystem, VRTeleportAreaSystem, PhysicsSyncSystem, AnimationSystem, AudioSystem, VideoSystem, CameraSyncSystem, TransformSyncSystem, ObjectVisibilitySystem, RenderSystem, spawnPrefab, despawnPrefab, buildNodeKeyMapsFromSnapshot, indexSnapshotByEntity, findTopLevelNestedRegions, collectSnapshotSubtreeIds, groupOverridePaths, OVERRIDE_DIFF_EXCLUDED_COMPONENTS, OVERRIDE_ROOT_EXCLUDED_COMPONENTS, canonicalizeComponentValue, mergeComponentValue, decanonicalizeComponentValue, computeInstanceOverrides, collectEntitySubtree, ADDED_NODE_MARKER_COMPONENT } from './chunk-SALBG747.js';
2
- export { ADDED_NODE_MARKER_COMPONENT, AnimationSystem, AudioSystem, Behaviour, CameraSyncSystem, EnvironmentSyncSystem, HYDRATABLE_ENTITY_KINDS, InputSystem, InstancedMeshSystem, KeyboardKeys, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, NODE_KEY_SEPARATOR, NO_XR_CAPABILITIES, OVERRIDE_DIFF_EXCLUDED_COMPONENTS, OVERRIDE_ROOT_EXCLUDED_COMPONENTS, ObjectVisibilitySystem, PREFAB_FILE_VERSION, PREFAB_FILE_VERSION_NESTED, PhysicsSyncSystem, PostprocessingSyncSystem, RenderSystem, SCRIPT_OBJECT_ROOT_FLAG, ScriptBehaviourSystem, ScriptObject, ScriptObjectSystem, TransformSyncSystem, VRTeleportAreaSystem, VideoSystem, XRControllerVisualSystem, XRInputSystem, XRInteractionSystem, XRLocomotionSystem, XRSessionSystem, buildComponentValueMaps, buildNodeKeyMapsFromSnapshot, buildNodeMapsFromSnapshot, canonicalizeComponentValue, clearPrefabCache, collectDiffPaths, collectEntitySubtree, collectSnapshotSubtreeIds, computeInstanceOverrides, decanonicalizeComponentValue, despawnPrefab, encodeOverride, findSnapshotRootEntityIds, findTopLevelNestedRegions, groupOverridePaths, hydrateWorldFromSnapshot, hydrateWorldFromSnapshotDetailed, indexSnapshotByEntity, instantiateSubtree, loadPrefab, mergeComponentValue, parseOverride, parsePrefabAsset, prefabFileVersionFor, readXrCapabilities, restoreComponentState, restorePostCreateComponents, setPrefabAssetUrlResolver, spawnPrefab } from './chunk-SALBG747.js';
3
- import { registerDefaultFactories } from './chunk-JWTRFJBL.js';
4
- export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstanceSlotComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createScriptObjectComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVRTeleportAreaComponent, createVideoComponent, createXRInteractableComponent, createXRRigComponent, registerDefaultComponentFactories, registerDefaultFactories } from './chunk-JWTRFJBL.js';
5
- import { ObjectManagementSystem } from './chunk-67WGASUJ.js';
6
- export { ObjectManagementSystem, SHARED_MODEL_RESOURCE_FLAG, clearModelCache, loadSharedGltf, resolveDracoDecoderPath, setDracoDecoderPath } from './chunk-67WGASUJ.js';
7
- import { SelectionTransformState, Object3DRef, Name, EntityType, ParentId, Environment, Postprocessing, ScriptComponent } from './chunk-U3MDYKPV.js';
8
- export { AnimationStateMachine, AnimationStateManager, components_exports as CoreComponents } from './chunk-U3MDYKPV.js';
1
+ import { MeshGeometrySystem, InstancedMeshSystem, EnvironmentSyncSystem, PostprocessingSyncSystem, LightSyncSystem, MaterialSyncSystem, VRTeleportAreaSystem, PhysicsSyncSystem, AnimationSystem, AudioSystem, VideoSystem, CameraSyncSystem, TransformSyncSystem, ObjectVisibilitySystem, RenderSystem, spawnPrefab, despawnPrefab, buildNodeKeyMapsFromSnapshot, indexSnapshotByEntity, findTopLevelNestedRegions, collectSnapshotSubtreeIds, groupOverridePaths, OVERRIDE_DIFF_EXCLUDED_COMPONENTS, OVERRIDE_ROOT_EXCLUDED_COMPONENTS, canonicalizeComponentValue, mergeComponentValue, decanonicalizeComponentValue, computeInstanceOverrides, collectEntitySubtree, ADDED_NODE_MARKER_COMPONENT } from './chunk-ID266ZUA.js';
2
+ export { ADDED_NODE_MARKER_COMPONENT, AnimationSystem, AudioSystem, Behaviour, CameraSyncSystem, EnvironmentSyncSystem, HYDRATABLE_ENTITY_KINDS, InputSystem, InstancedMeshSystem, KeyboardKeys, LightSyncSystem, MaterialSyncSystem, MeshGeometrySystem, NODE_KEY_SEPARATOR, NO_XR_CAPABILITIES, OVERRIDE_DIFF_EXCLUDED_COMPONENTS, OVERRIDE_ROOT_EXCLUDED_COMPONENTS, ObjectVisibilitySystem, PREFAB_FILE_VERSION, PREFAB_FILE_VERSION_NESTED, PhysicsSyncSystem, PostprocessingSyncSystem, RenderSystem, SCRIPT_OBJECT_ROOT_FLAG, ScriptBehaviourSystem, ScriptObject, ScriptObjectSystem, TransformSyncSystem, VRTeleportAreaSystem, VideoSystem, XRControllerVisualSystem, XRInputSystem, XRInteractionSystem, XRLocomotionSystem, XRSessionSystem, buildComponentValueMaps, buildNodeKeyMapsFromSnapshot, buildNodeMapsFromSnapshot, canonicalizeComponentValue, clearPrefabCache, collectDiffPaths, collectEntitySubtree, collectSnapshotSubtreeIds, computeInstanceOverrides, decanonicalizeComponentValue, despawnPrefab, encodeOverride, findSnapshotRootEntityIds, findTopLevelNestedRegions, groupOverridePaths, hydrateWorldFromSnapshot, hydrateWorldFromSnapshotDetailed, indexSnapshotByEntity, instantiateSubtree, loadPrefab, mergeComponentValue, parseOverride, parsePrefabAsset, prefabFileVersionFor, readXrCapabilities, restoreComponentState, restorePostCreateComponents, setPrefabAssetUrlResolver, spawnPrefab } from './chunk-ID266ZUA.js';
3
+ import { registerDefaultFactories } from './chunk-4BZYK3JP.js';
4
+ export { createAnimationComponent, createAudioComponent, createCameraComponent, createEntityTypeComponent, createEnvironmentComponent, createImageComponent, createImageTargetAnchorComponent, createImageTargetComponent, createInstanceSlotComponent, createInstancedMeshComponent, createLightComponent, createMaterialComponent, createMeshComponent, createMeshGeometryComponent, createModelComponent, createNameComponent, createObject3DRefComponent, createParentIdComponent, createPhysicsComponent, createPostprocessingComponent, createScriptComponent, createScriptObjectComponent, createSelectableComponent, createSelectionTransformStateComponent, createSpriteComponent, createTransformComponent, createVRTeleportAreaComponent, createVideoComponent, createXRInteractableComponent, createXRRigComponent, registerDefaultComponentFactories, registerDefaultFactories } from './chunk-4BZYK3JP.js';
5
+ import { ObjectManagementSystem } from './chunk-2LVFGVWI.js';
6
+ export { ObjectManagementSystem, SHARED_MODEL_RESOURCE_FLAG, clearModelCache, loadSharedGltf, resolveDracoDecoderPath, setDracoDecoderPath } from './chunk-2LVFGVWI.js';
7
+ import { SelectionTransformState, Object3DRef, Name, EntityType, ParentId, Environment, Postprocessing, ScriptComponent } from './chunk-6QC2PJLD.js';
8
+ export { AnimationStateMachine, AnimationStateManager, components_exports as CoreComponents } from './chunk-6QC2PJLD.js';
9
9
  import './chunk-QHILSPT4.js';
10
10
  import { normalizeDebugValue, DEBUG_CHANGE_IGNORED_SYSTEMS, cloneHistoryValue } from './chunk-OWQSESTO.js';
11
11
  import { __name } from './chunk-OY7ZODZP.js';
@@ -2082,7 +2082,8 @@ var _VRTeleportAreaComponent = class _VRTeleportAreaComponent extends Component
2082
2082
  constructor(options) {
2083
2083
  super();
2084
2084
  this.enabled = options?.enabled ?? true;
2085
- this.shape = options?.shape ?? "plane";
2085
+ const shape = options?.shape;
2086
+ this.shape = shape === "cylinder" ? "circle" : options?.shape ?? "plane";
2086
2087
  this.width = options?.width ?? 10;
2087
2088
  this.depth = options?.depth ?? 10;
2088
2089
  }
@@ -4903,6 +4904,15 @@ function buildComponentValueMaps(snapshot) {
4903
4904
  snapshot.components,
4904
4905
  "ScriptObjectComponent"
4905
4906
  ),
4907
+ xrRigValues: readByComponent(snapshot.components, "XRRigComponent"),
4908
+ vrTeleportAreaValues: readByComponent(
4909
+ snapshot.components,
4910
+ "VRTeleportAreaComponent"
4911
+ ),
4912
+ xrInteractableValues: readByComponent(
4913
+ snapshot.components,
4914
+ "XRInteractableComponent"
4915
+ ),
4906
4916
  instancedMeshValues: readByComponent(snapshot.components, "InstancedMeshComponent"),
4907
4917
  instanceSlotValues: readByComponent(snapshot.components, "InstanceSlotComponent"),
4908
4918
  prefabNodeValues: readByComponent(snapshot.components, "PrefabNode"),
@@ -5028,6 +5038,67 @@ function restorePostCreateComponents(world, objectManagementSystem, targetEntity
5028
5038
  soc.data = remapEntityRefsInScriptData(data, idMap);
5029
5039
  }
5030
5040
  }
5041
+ {
5042
+ const sourceXrRig = asRecord3(values.xrRigValues.get(sourceEntityId));
5043
+ const rig = world.getComponent(targetEntityId, XRRigComponent);
5044
+ if (sourceXrRig && rig) {
5045
+ if (typeof sourceXrRig.locomotion === "string") {
5046
+ rig.locomotion = sourceXrRig.locomotion;
5047
+ }
5048
+ if (typeof sourceXrRig.moveSpeed === "number") {
5049
+ rig.moveSpeed = sourceXrRig.moveSpeed;
5050
+ }
5051
+ if (typeof sourceXrRig.snapTurn === "boolean") {
5052
+ rig.snapTurn = sourceXrRig.snapTurn;
5053
+ }
5054
+ if (typeof sourceXrRig.snapTurnDegrees === "number") {
5055
+ rig.snapTurnDegrees = sourceXrRig.snapTurnDegrees;
5056
+ }
5057
+ if (typeof sourceXrRig.fallbackEyeHeight === "number") {
5058
+ rig.fallbackEyeHeight = sourceXrRig.fallbackEyeHeight;
5059
+ }
5060
+ }
5061
+ }
5062
+ {
5063
+ const sourceArea = asRecord3(values.vrTeleportAreaValues.get(sourceEntityId));
5064
+ const area = world.getComponent(targetEntityId, VRTeleportAreaComponent);
5065
+ if (sourceArea && area) {
5066
+ if (typeof sourceArea.enabled === "boolean") {
5067
+ area.enabled = sourceArea.enabled;
5068
+ }
5069
+ if (typeof sourceArea.shape === "string") {
5070
+ area.shape = sourceArea.shape === "cylinder" ? "circle" : sourceArea.shape;
5071
+ }
5072
+ if (typeof sourceArea.width === "number") area.width = sourceArea.width;
5073
+ if (typeof sourceArea.depth === "number") area.depth = sourceArea.depth;
5074
+ }
5075
+ }
5076
+ {
5077
+ const sourceInteractable = asRecord3(
5078
+ values.xrInteractableValues.get(sourceEntityId)
5079
+ );
5080
+ const interactable = world.getComponent(
5081
+ targetEntityId,
5082
+ XRInteractableComponent
5083
+ );
5084
+ if (sourceInteractable && interactable) {
5085
+ if (typeof sourceInteractable.enabled === "boolean") {
5086
+ interactable.enabled = sourceInteractable.enabled;
5087
+ }
5088
+ if (typeof sourceInteractable.grabbable === "boolean") {
5089
+ interactable.grabbable = sourceInteractable.grabbable;
5090
+ }
5091
+ if (typeof sourceInteractable.pointable === "boolean") {
5092
+ interactable.pointable = sourceInteractable.pointable;
5093
+ }
5094
+ if (typeof sourceInteractable.grabMode === "string") {
5095
+ interactable.grabMode = sourceInteractable.grabMode;
5096
+ }
5097
+ if (typeof sourceInteractable.highlightOnHover === "boolean") {
5098
+ interactable.highlightOnHover = sourceInteractable.highlightOnHover;
5099
+ }
5100
+ }
5101
+ }
5031
5102
  {
5032
5103
  const imComponent = world.getComponent(targetEntityId, InstancedMeshComponent);
5033
5104
  if (imComponent && imComponent.instanceEntityIds.length > 0) {
@@ -8046,7 +8117,7 @@ var _XRSessionSystem = class _XRSessionSystem {
8046
8117
  __name(_XRSessionSystem, "XRSessionSystem");
8047
8118
  var XRSessionSystem = _XRSessionSystem;
8048
8119
  function buildGeometry2(area) {
8049
- if (area.shape === "cylinder") {
8120
+ if (area.shape === "circle") {
8050
8121
  const radius = Math.max(5e-3, area.width / 2);
8051
8122
  return new THREE14__namespace.CircleGeometry(radius, 48);
8052
8123
  }