@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
@@ -1,4 +1,4 @@
1
- import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, S as RigidbodyState, g as ColliderState, P as PhysicsComponent, n as EntityType, I as ImageComponent, p as ImageTargetAnchor, o as ImageTarget, L as LightComponent, M as MaterialComponent, z as MeshComponent, B as MeshGeometryComponent, H as ModelComponent, N as Name, O as Object3DRef, V as ScriptEntry, U as ScriptComponent, X as ScriptObjectComponentInput, W as ScriptObjectComponent, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, v as InstancedMeshKind, F as MeshGeometryParameters, u as InstancedMeshComponent, s as InstanceSlotComponent, a5 as VideoComponent, a9 as XRRigComponent, a3 as VRTeleportAreaComponent, a7 as XRInteractableComponent } from '../XRRig-Cu-EyliG.cjs';
1
+ import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, S as RigidbodyState, g as ColliderState, P as PhysicsComponent, n as EntityType, I as ImageComponent, p as ImageTargetAnchor, o as ImageTarget, L as LightComponent, M as MaterialComponent, z as MeshComponent, B as MeshGeometryComponent, H as ModelComponent, N as Name, O as Object3DRef, V as ScriptEntry, U as ScriptComponent, X as ScriptObjectComponentInput, W as ScriptObjectComponent, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, v as InstancedMeshKind, F as MeshGeometryParameters, u as InstancedMeshComponent, s as InstanceSlotComponent, a5 as VideoComponent, a9 as XRRigComponent, a3 as VRTeleportAreaComponent, a7 as XRInteractableComponent } from '../XRRig-2686IqLQ.cjs';
2
2
  import { l as World, g as EnvironmentState, E as Environment, P as ParentId, i as PostprocessingState, h as Postprocessing, T as TransformComponent, O as ObjectManagementSystem } from '../System-vrU46Vuw.cjs';
3
3
  import * as THREE from 'three';
4
4
  import '@dimforge/rapier3d-compat';
@@ -1,4 +1,4 @@
1
- import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, S as RigidbodyState, g as ColliderState, P as PhysicsComponent, n as EntityType, I as ImageComponent, p as ImageTargetAnchor, o as ImageTarget, L as LightComponent, M as MaterialComponent, z as MeshComponent, B as MeshGeometryComponent, H as ModelComponent, N as Name, O as Object3DRef, V as ScriptEntry, U as ScriptComponent, X as ScriptObjectComponentInput, W as ScriptObjectComponent, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, v as InstancedMeshKind, F as MeshGeometryParameters, u as InstancedMeshComponent, s as InstanceSlotComponent, a5 as VideoComponent, a9 as XRRigComponent, a3 as VRTeleportAreaComponent, a7 as XRInteractableComponent } from '../XRRig-CAmf04NX.js';
1
+ import { A as AnimationComponent, b as AudioComponent, c as CameraComponentOptions, C as CameraComponent, S as RigidbodyState, g as ColliderState, P as PhysicsComponent, n as EntityType, I as ImageComponent, p as ImageTargetAnchor, o as ImageTarget, L as LightComponent, M as MaterialComponent, z as MeshComponent, B as MeshGeometryComponent, H as ModelComponent, N as Name, O as Object3DRef, V as ScriptEntry, U as ScriptComponent, X as ScriptObjectComponentInput, W as ScriptObjectComponent, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, v as InstancedMeshKind, F as MeshGeometryParameters, u as InstancedMeshComponent, s as InstanceSlotComponent, a5 as VideoComponent, a9 as XRRigComponent, a3 as VRTeleportAreaComponent, a7 as XRInteractableComponent } from '../XRRig-D2QURXl1.js';
2
2
  import { l as World, g as EnvironmentState, E as Environment, P as ParentId, i as PostprocessingState, h as Postprocessing, T as TransformComponent, O as ObjectManagementSystem } from '../System-vrU46Vuw.js';
3
3
  import * as THREE from 'three';
4
4
  import '@dimforge/rapier3d-compat';
@@ -1,6 +1,6 @@
1
- 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';
2
- import '../chunk-67WGASUJ.js';
3
- import '../chunk-U3MDYKPV.js';
1
+ 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';
2
+ import '../chunk-2LVFGVWI.js';
3
+ import '../chunk-6QC2PJLD.js';
4
4
  import '../chunk-OY7ZODZP.js';
5
5
  //# sourceMappingURL=index.js.map
6
6
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_INSTANCED_MESH_PARAMETERS, j as DEFAULT_INSTANCE_TRANSFORM, k as DEFAULT_MESH_GEOMETRY_PARAMETERS, l as DEFAULT_PHYSICS_STATE, m as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, n as EntityType, I as ImageComponent, o as ImageTarget, p as ImageTargetAnchor, q as ImageTargetAnchorOptions, r as ImageTargetReference, s as InstanceSlotComponent, t as InstanceTransform, u as InstancedMeshComponent, v as InstancedMeshKind, L as LightComponent, w as LightValueState, M as MaterialComponent, x as MaterialTypeValue, y as MaterialValueState, z as MeshComponent, B as MeshGeometryComponent, F as MeshGeometryParameters, G as MeshGeometryParametersByKind, H as ModelComponent, N as Name, O as Object3DRef, P as PhysicsComponent, J as PhysicsState, K as PlaneMeshParameters, R as RadiusHeightMeshParameters, Q as RadiusMeshParameters, S as RigidbodyState, T as RigidbodyType, U as ScriptComponent, V as ScriptEntry, W as ScriptObjectComponent, X as ScriptObjectComponentInput, Y as ScriptObjectRuntimeState, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, a0 as TextureFilteringValue, a1 as TransformModeValue, a2 as TransformSpaceValue, a3 as VRTeleportAreaComponent, a4 as VRTeleportAreaOptions, a5 as VideoComponent, a6 as VrTeleportShape, a7 as XRInteractableComponent, a8 as XRInteractableOptions, a9 as XRRigComponent, aa as XRRigOptions, ab as XrGrabMode, ac as XrLocomotionMode, ad as defaultMaterialValue, ae as normalizePhysicsState, af as setPhysicsLiveRef } from './XRRig-CAmf04NX.js';
1
+ import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_INSTANCED_MESH_PARAMETERS, j as DEFAULT_INSTANCE_TRANSFORM, k as DEFAULT_MESH_GEOMETRY_PARAMETERS, l as DEFAULT_PHYSICS_STATE, m as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, n as EntityType, I as ImageComponent, o as ImageTarget, p as ImageTargetAnchor, q as ImageTargetAnchorOptions, r as ImageTargetReference, s as InstanceSlotComponent, t as InstanceTransform, u as InstancedMeshComponent, v as InstancedMeshKind, L as LightComponent, w as LightValueState, M as MaterialComponent, x as MaterialTypeValue, y as MaterialValueState, z as MeshComponent, B as MeshGeometryComponent, F as MeshGeometryParameters, G as MeshGeometryParametersByKind, H as ModelComponent, N as Name, O as Object3DRef, P as PhysicsComponent, J as PhysicsState, K as PlaneMeshParameters, R as RadiusHeightMeshParameters, Q as RadiusMeshParameters, S as RigidbodyState, T as RigidbodyType, U as ScriptComponent, V as ScriptEntry, W as ScriptObjectComponent, X as ScriptObjectComponentInput, Y as ScriptObjectRuntimeState, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, a0 as TextureFilteringValue, a1 as TransformModeValue, a2 as TransformSpaceValue, a3 as VRTeleportAreaComponent, a4 as VRTeleportAreaOptions, a5 as VideoComponent, a6 as VrTeleportShape, a7 as XRInteractableComponent, a8 as XRInteractableOptions, a9 as XRRigComponent, aa as XRRigOptions, ab as XrGrabMode, ac as XrLocomotionMode, ad as defaultMaterialValue, ae as normalizePhysicsState, af as setPhysicsLiveRef } from './XRRig-D2QURXl1.js';
2
2
  import { C as Component, D as DEFAULT_ENVIRONMENT_STATE, a as DEFAULT_POSTPROCESSING_STATE, E as Environment, b as EnvironmentFogState, c as EnvironmentFogType, d as EnvironmentGradientEffect, e as EnvironmentSkyboxState, f as EnvironmentSkyboxType, g as EnvironmentState, P as ParentId, h as Postprocessing, i as PostprocessingState, T as TransformComponent, j as TransformData, V as Vec3 } from './System-vrU46Vuw.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_INSTANCED_MESH_PARAMETERS, j as DEFAULT_INSTANCE_TRANSFORM, k as DEFAULT_MESH_GEOMETRY_PARAMETERS, l as DEFAULT_PHYSICS_STATE, m as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, n as EntityType, I as ImageComponent, o as ImageTarget, p as ImageTargetAnchor, q as ImageTargetAnchorOptions, r as ImageTargetReference, s as InstanceSlotComponent, t as InstanceTransform, u as InstancedMeshComponent, v as InstancedMeshKind, L as LightComponent, w as LightValueState, M as MaterialComponent, x as MaterialTypeValue, y as MaterialValueState, z as MeshComponent, B as MeshGeometryComponent, F as MeshGeometryParameters, G as MeshGeometryParametersByKind, H as ModelComponent, N as Name, O as Object3DRef, P as PhysicsComponent, J as PhysicsState, K as PlaneMeshParameters, R as RadiusHeightMeshParameters, Q as RadiusMeshParameters, S as RigidbodyState, T as RigidbodyType, U as ScriptComponent, V as ScriptEntry, W as ScriptObjectComponent, X as ScriptObjectComponentInput, Y as ScriptObjectRuntimeState, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, a0 as TextureFilteringValue, a1 as TransformModeValue, a2 as TransformSpaceValue, a3 as VRTeleportAreaComponent, a4 as VRTeleportAreaOptions, a5 as VideoComponent, a6 as VrTeleportShape, a7 as XRInteractableComponent, a8 as XRInteractableOptions, a9 as XRRigComponent, aa as XRRigOptions, ab as XrGrabMode, ac as XrLocomotionMode, ad as defaultMaterialValue, ae as normalizePhysicsState, af as setPhysicsLiveRef } from './XRRig-Cu-EyliG.cjs';
1
+ import { A as AnimationComponent, a as AnimationComponentOptions, b as AudioComponent, C as CameraComponent, c as CameraComponentOptions, d as CameraProjection, e as CameraRuntimeType, f as ColliderShape, g as ColliderState, h as CubeMeshParameters, D as DEFAULT_COLLIDER_STATE, i as DEFAULT_INSTANCED_MESH_PARAMETERS, j as DEFAULT_INSTANCE_TRANSFORM, k as DEFAULT_MESH_GEOMETRY_PARAMETERS, l as DEFAULT_PHYSICS_STATE, m as DEFAULT_RIGIDBODY_STATE, E as EditableMeshObjectKind, n as EntityType, I as ImageComponent, o as ImageTarget, p as ImageTargetAnchor, q as ImageTargetAnchorOptions, r as ImageTargetReference, s as InstanceSlotComponent, t as InstanceTransform, u as InstancedMeshComponent, v as InstancedMeshKind, L as LightComponent, w as LightValueState, M as MaterialComponent, x as MaterialTypeValue, y as MaterialValueState, z as MeshComponent, B as MeshGeometryComponent, F as MeshGeometryParameters, G as MeshGeometryParametersByKind, H as ModelComponent, N as Name, O as Object3DRef, P as PhysicsComponent, J as PhysicsState, K as PlaneMeshParameters, R as RadiusHeightMeshParameters, Q as RadiusMeshParameters, S as RigidbodyState, T as RigidbodyType, U as ScriptComponent, V as ScriptEntry, W as ScriptObjectComponent, X as ScriptObjectComponentInput, Y as ScriptObjectRuntimeState, Z as Selectable, _ as SelectionTransformState, $ as SpriteComponent, a0 as TextureFilteringValue, a1 as TransformModeValue, a2 as TransformSpaceValue, a3 as VRTeleportAreaComponent, a4 as VRTeleportAreaOptions, a5 as VideoComponent, a6 as VrTeleportShape, a7 as XRInteractableComponent, a8 as XRInteractableOptions, a9 as XRRigComponent, aa as XRRigOptions, ab as XrGrabMode, ac as XrLocomotionMode, ad as defaultMaterialValue, ae as normalizePhysicsState, af as setPhysicsLiveRef } from './XRRig-2686IqLQ.cjs';
2
2
  import { C as Component, D as DEFAULT_ENVIRONMENT_STATE, a as DEFAULT_POSTPROCESSING_STATE, E as Environment, b as EnvironmentFogState, c as EnvironmentFogType, d as EnvironmentGradientEffect, e as EnvironmentSkyboxState, f as EnvironmentSkyboxType, g as EnvironmentState, P as ParentId, h as Postprocessing, i as PostprocessingState, T as TransformComponent, j as TransformData, V as Vec3 } from './System-vrU46Vuw.cjs';
3
3
 
4
4
  /**
package/dist/index.cjs CHANGED
@@ -2593,7 +2593,8 @@ var _VRTeleportAreaComponent = class _VRTeleportAreaComponent extends Component
2593
2593
  constructor(options) {
2594
2594
  super();
2595
2595
  this.enabled = options?.enabled ?? true;
2596
- this.shape = options?.shape ?? "plane";
2596
+ const shape = options?.shape;
2597
+ this.shape = shape === "cylinder" ? "circle" : options?.shape ?? "plane";
2597
2598
  this.width = options?.width ?? 10;
2598
2599
  this.depth = options?.depth ?? 10;
2599
2600
  }
@@ -4340,6 +4341,15 @@ function buildComponentValueMaps(snapshot) {
4340
4341
  snapshot.components,
4341
4342
  "ScriptObjectComponent"
4342
4343
  ),
4344
+ xrRigValues: readByComponent(snapshot.components, "XRRigComponent"),
4345
+ vrTeleportAreaValues: readByComponent(
4346
+ snapshot.components,
4347
+ "VRTeleportAreaComponent"
4348
+ ),
4349
+ xrInteractableValues: readByComponent(
4350
+ snapshot.components,
4351
+ "XRInteractableComponent"
4352
+ ),
4343
4353
  instancedMeshValues: readByComponent(snapshot.components, "InstancedMeshComponent"),
4344
4354
  instanceSlotValues: readByComponent(snapshot.components, "InstanceSlotComponent"),
4345
4355
  prefabNodeValues: readByComponent(snapshot.components, "PrefabNode"),
@@ -4465,6 +4475,67 @@ function restorePostCreateComponents(world, objectManagementSystem, targetEntity
4465
4475
  soc.data = remapEntityRefsInScriptData(data, idMap);
4466
4476
  }
4467
4477
  }
4478
+ {
4479
+ const sourceXrRig = asRecord3(values.xrRigValues.get(sourceEntityId));
4480
+ const rig = world.getComponent(targetEntityId, XRRigComponent);
4481
+ if (sourceXrRig && rig) {
4482
+ if (typeof sourceXrRig.locomotion === "string") {
4483
+ rig.locomotion = sourceXrRig.locomotion;
4484
+ }
4485
+ if (typeof sourceXrRig.moveSpeed === "number") {
4486
+ rig.moveSpeed = sourceXrRig.moveSpeed;
4487
+ }
4488
+ if (typeof sourceXrRig.snapTurn === "boolean") {
4489
+ rig.snapTurn = sourceXrRig.snapTurn;
4490
+ }
4491
+ if (typeof sourceXrRig.snapTurnDegrees === "number") {
4492
+ rig.snapTurnDegrees = sourceXrRig.snapTurnDegrees;
4493
+ }
4494
+ if (typeof sourceXrRig.fallbackEyeHeight === "number") {
4495
+ rig.fallbackEyeHeight = sourceXrRig.fallbackEyeHeight;
4496
+ }
4497
+ }
4498
+ }
4499
+ {
4500
+ const sourceArea = asRecord3(values.vrTeleportAreaValues.get(sourceEntityId));
4501
+ const area = world.getComponent(targetEntityId, VRTeleportAreaComponent);
4502
+ if (sourceArea && area) {
4503
+ if (typeof sourceArea.enabled === "boolean") {
4504
+ area.enabled = sourceArea.enabled;
4505
+ }
4506
+ if (typeof sourceArea.shape === "string") {
4507
+ area.shape = sourceArea.shape === "cylinder" ? "circle" : sourceArea.shape;
4508
+ }
4509
+ if (typeof sourceArea.width === "number") area.width = sourceArea.width;
4510
+ if (typeof sourceArea.depth === "number") area.depth = sourceArea.depth;
4511
+ }
4512
+ }
4513
+ {
4514
+ const sourceInteractable = asRecord3(
4515
+ values.xrInteractableValues.get(sourceEntityId)
4516
+ );
4517
+ const interactable = world.getComponent(
4518
+ targetEntityId,
4519
+ XRInteractableComponent
4520
+ );
4521
+ if (sourceInteractable && interactable) {
4522
+ if (typeof sourceInteractable.enabled === "boolean") {
4523
+ interactable.enabled = sourceInteractable.enabled;
4524
+ }
4525
+ if (typeof sourceInteractable.grabbable === "boolean") {
4526
+ interactable.grabbable = sourceInteractable.grabbable;
4527
+ }
4528
+ if (typeof sourceInteractable.pointable === "boolean") {
4529
+ interactable.pointable = sourceInteractable.pointable;
4530
+ }
4531
+ if (typeof sourceInteractable.grabMode === "string") {
4532
+ interactable.grabMode = sourceInteractable.grabMode;
4533
+ }
4534
+ if (typeof sourceInteractable.highlightOnHover === "boolean") {
4535
+ interactable.highlightOnHover = sourceInteractable.highlightOnHover;
4536
+ }
4537
+ }
4538
+ }
4468
4539
  {
4469
4540
  const imComponent = world.getComponent(targetEntityId, InstancedMeshComponent);
4470
4541
  if (imComponent && imComponent.instanceEntityIds.length > 0) {
@@ -10658,7 +10729,7 @@ var _XRSessionSystem = class _XRSessionSystem {
10658
10729
  __name(_XRSessionSystem, "XRSessionSystem");
10659
10730
  var XRSessionSystem = _XRSessionSystem;
10660
10731
  function buildGeometry2(area) {
10661
- if (area.shape === "cylinder") {
10732
+ if (area.shape === "circle") {
10662
10733
  const radius = Math.max(5e-3, area.width / 2);
10663
10734
  return new THREE38__namespace.CircleGeometry(radius, 48);
10664
10735
  }