@dcl/ecs 7.1.12-4982571416.commit-0b87aa7 → 7.1.12-4983011170.commit-adaaaa2
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.
- package/dist/components/generated/pb/decentraland/common/vectors.gen.d.ts +16 -0
- package/dist/components/generated/pb/decentraland/common/vectors.gen.js +65 -0
- package/dist/components/generated/pb/decentraland/sdk/components/nft_shape.gen.d.ts +3 -3
- package/dist/components/generated/pb/decentraland/sdk/components/nft_shape.gen.js +4 -4
- package/dist-cjs/components/component-number.d.ts +7 -0
- package/dist-cjs/components/component-number.js +44 -0
- package/dist-cjs/components/extended/Animator.d.ts +46 -0
- package/dist-cjs/components/extended/Animator.js +62 -0
- package/dist-cjs/components/extended/Material.d.ts +42 -0
- package/dist-cjs/components/extended/Material.js +54 -0
- package/dist-cjs/components/extended/MeshCollider.d.ts +38 -0
- package/dist-cjs/components/extended/MeshCollider.js +43 -0
- package/dist-cjs/components/extended/MeshRenderer.d.ts +36 -0
- package/dist-cjs/components/extended/MeshRenderer.js +31 -0
- package/dist-cjs/components/generated/Animator.gen.d.ts +1 -0
- package/dist-cjs/components/generated/Animator.gen.js +28 -0
- package/dist-cjs/components/generated/AudioSource.gen.d.ts +1 -0
- package/dist-cjs/components/generated/AudioSource.gen.js +28 -0
- package/dist-cjs/components/generated/AudioStream.gen.d.ts +1 -0
- package/dist-cjs/components/generated/AudioStream.gen.js +28 -0
- package/dist-cjs/components/generated/AvatarAttach.gen.d.ts +1 -0
- package/dist-cjs/components/generated/AvatarAttach.gen.js +28 -0
- package/dist-cjs/components/generated/AvatarModifierArea.gen.d.ts +1 -0
- package/dist-cjs/components/generated/AvatarModifierArea.gen.js +28 -0
- package/dist-cjs/components/generated/AvatarShape.gen.d.ts +1 -0
- package/dist-cjs/components/generated/AvatarShape.gen.js +28 -0
- package/dist-cjs/components/generated/Billboard.gen.d.ts +1 -0
- package/dist-cjs/components/generated/Billboard.gen.js +28 -0
- package/dist-cjs/components/generated/CameraMode.gen.d.ts +1 -0
- package/dist-cjs/components/generated/CameraMode.gen.js +28 -0
- package/dist-cjs/components/generated/CameraModeArea.gen.d.ts +1 -0
- package/dist-cjs/components/generated/CameraModeArea.gen.js +28 -0
- package/dist-cjs/components/generated/EngineInfo.gen.d.ts +1 -0
- package/dist-cjs/components/generated/EngineInfo.gen.js +28 -0
- package/dist-cjs/components/generated/GltfContainer.gen.d.ts +1 -0
- package/dist-cjs/components/generated/GltfContainer.gen.js +28 -0
- package/dist-cjs/components/generated/GltfContainerLoadingState.gen.d.ts +1 -0
- package/dist-cjs/components/generated/GltfContainerLoadingState.gen.js +28 -0
- package/dist-cjs/components/generated/Material.gen.d.ts +1 -0
- package/dist-cjs/components/generated/Material.gen.js +28 -0
- package/dist-cjs/components/generated/MeshCollider.gen.d.ts +1 -0
- package/dist-cjs/components/generated/MeshCollider.gen.js +28 -0
- package/dist-cjs/components/generated/MeshRenderer.gen.d.ts +1 -0
- package/dist-cjs/components/generated/MeshRenderer.gen.js +28 -0
- package/dist-cjs/components/generated/NftShape.gen.d.ts +1 -0
- package/dist-cjs/components/generated/NftShape.gen.js +28 -0
- package/dist-cjs/components/generated/PointerEvents.gen.d.ts +1 -0
- package/dist-cjs/components/generated/PointerEvents.gen.js +28 -0
- package/dist-cjs/components/generated/PointerEventsResult.gen.d.ts +1 -0
- package/dist-cjs/components/generated/PointerEventsResult.gen.js +28 -0
- package/dist-cjs/components/generated/PointerLock.gen.d.ts +1 -0
- package/dist-cjs/components/generated/PointerLock.gen.js +28 -0
- package/dist-cjs/components/generated/Raycast.gen.d.ts +1 -0
- package/dist-cjs/components/generated/Raycast.gen.js +28 -0
- package/dist-cjs/components/generated/RaycastResult.gen.d.ts +1 -0
- package/dist-cjs/components/generated/RaycastResult.gen.js +28 -0
- package/dist-cjs/components/generated/TextShape.gen.d.ts +1 -0
- package/dist-cjs/components/generated/TextShape.gen.js +28 -0
- package/dist-cjs/components/generated/UiBackground.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiBackground.gen.js +28 -0
- package/dist-cjs/components/generated/UiCanvasInformation.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiCanvasInformation.gen.js +28 -0
- package/dist-cjs/components/generated/UiDropdown.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiDropdown.gen.js +28 -0
- package/dist-cjs/components/generated/UiDropdownResult.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiDropdownResult.gen.js +28 -0
- package/dist-cjs/components/generated/UiInput.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiInput.gen.js +28 -0
- package/dist-cjs/components/generated/UiInputResult.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiInputResult.gen.js +28 -0
- package/dist-cjs/components/generated/UiText.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiText.gen.js +28 -0
- package/dist-cjs/components/generated/UiTransform.gen.d.ts +1 -0
- package/dist-cjs/components/generated/UiTransform.gen.js +28 -0
- package/dist-cjs/components/generated/VideoEvent.gen.d.ts +1 -0
- package/dist-cjs/components/generated/VideoEvent.gen.js +28 -0
- package/dist-cjs/components/generated/VideoPlayer.gen.d.ts +1 -0
- package/dist-cjs/components/generated/VideoPlayer.gen.js +28 -0
- package/dist-cjs/components/generated/VisibilityComponent.gen.d.ts +1 -0
- package/dist-cjs/components/generated/VisibilityComponent.gen.js +28 -0
- package/dist-cjs/components/generated/component-names.gen.d.ts +4 -0
- package/dist-cjs/components/generated/component-names.gen.js +42 -0
- package/dist-cjs/components/generated/global.gen.d.ts +60 -0
- package/dist-cjs/components/generated/global.gen.js +61 -0
- package/dist-cjs/components/generated/index.gen.d.ts +139 -0
- package/dist-cjs/components/generated/index.gen.js +222 -0
- package/dist-cjs/components/generated/pb/decentraland/common/border_rect.gen.d.ts +35 -0
- package/dist-cjs/components/generated/pb/decentraland/common/border_rect.gen.js +139 -0
- package/dist-cjs/components/generated/pb/decentraland/common/colors.gen.d.ts +32 -0
- package/dist-cjs/components/generated/pb/decentraland/common/colors.gen.js +130 -0
- package/dist-cjs/components/generated/pb/decentraland/common/texture.gen.d.ts +91 -0
- package/dist-cjs/components/generated/pb/decentraland/common/texture.gen.js +254 -0
- package/dist-cjs/components/generated/pb/decentraland/common/vectors.gen.d.ts +61 -0
- package/dist-cjs/components/generated/pb/decentraland/common/vectors.gen.js +233 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/animator.gen.d.ts +50 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/animator.gen.js +147 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_source.gen.d.ts +34 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_source.gen.js +83 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_stream.gen.d.ts +24 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_stream.gen.js +65 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_attach.gen.d.ts +37 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_attach.gen.js +67 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +44 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.js +86 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.d.ts +56 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.js +176 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/billboard.gen.d.ts +38 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/billboard.gen.js +63 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_mode.gen.d.ts +20 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_mode.gen.js +47 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.d.ts +32 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.js +57 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/camera_type.gen.d.ts +9 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/camera_type.gen.js +15 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/id.gen.d.ts +1 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/id.gen.js +3 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/input_action.gen.d.ts +29 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/input_action.gen.js +36 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/loading_state.gen.d.ts +10 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/loading_state.gen.js +16 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/raycast_hit.gen.d.ts +29 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/raycast_hit.gen.js +110 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/texts.gen.d.ts +22 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/texts.gen.js +29 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/engine_info.gen.d.ts +25 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/engine_info.gen.js +65 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_container.gen.d.ts +25 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_container.gen.js +65 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +19 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_container_loading_state.gen.js +47 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/material.gen.d.ts +96 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/material.gen.js +326 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.d.ts +120 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.js +246 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.d.ts +96 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.js +246 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/nft_shape.gen.d.ts +58 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/nft_shape.gen.js +96 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events.gen.d.ts +67 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events.gen.js +159 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events_result.gen.d.ts +26 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events_result.gen.js +93 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_lock.gen.d.ts +19 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_lock.gen.js +47 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/raycast.gen.d.ts +63 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/raycast.gen.js +152 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/raycast_result.gen.d.ts +32 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/raycast_result.gen.js +85 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/text_shape.gen.d.ts +65 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/text_shape.gen.js +250 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_background.gen.d.ts +47 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_background.gen.js +119 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_canvas_information.gen.d.ts +29 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_canvas_information.gen.js +75 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_dropdown.gen.d.ts +29 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_dropdown.gen.js +130 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_dropdown_result.gen.d.ts +14 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_dropdown_result.gen.js +47 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_input.gen.d.ts +28 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_input.gen.js +120 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_input_result.gen.d.ts +14 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_input_result.gen.js +47 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_text.gen.d.ts +25 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_text.gen.js +84 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_transform.gen.d.ts +179 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_transform.gen.js +644 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/video_event.gen.d.ts +33 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/video_event.gen.js +97 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/video_player.gen.d.ts +25 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/video_player.gen.js +99 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/visibility_component.gen.d.ts +15 -0
- package/dist-cjs/components/generated/pb/decentraland/sdk/components/visibility_component.gen.js +47 -0
- package/dist-cjs/components/generated/pb/google/protobuf/descriptor.gen.d.ts +468 -0
- package/dist-cjs/components/generated/pb/google/protobuf/descriptor.gen.js +1936 -0
- package/dist-cjs/components/generated/types.gen.d.ts +9 -0
- package/dist-cjs/components/generated/types.gen.js +30 -0
- package/dist-cjs/components/index.d.ts +14 -0
- package/dist-cjs/components/index.js +38 -0
- package/dist-cjs/components/manual/Transform.d.ts +40 -0
- package/dist-cjs/components/manual/Transform.js +110 -0
- package/dist-cjs/components/types.d.ts +5 -0
- package/dist-cjs/components/types.js +2 -0
- package/dist-cjs/composite/components.d.ts +18 -0
- package/dist-cjs/composite/components.js +22 -0
- package/dist-cjs/composite/index.d.ts +51 -0
- package/dist-cjs/composite/index.js +60 -0
- package/dist-cjs/composite/instance.d.ts +34 -0
- package/dist-cjs/composite/instance.js +201 -0
- package/dist-cjs/composite/path.d.ts +3 -0
- package/dist-cjs/composite/path.js +154 -0
- package/dist-cjs/composite/proto/gen/composite.gen.d.ts +71 -0
- package/dist-cjs/composite/proto/gen/composite.gen.js +337 -0
- package/dist-cjs/composite/proto/gen/google/protobuf/struct.gen.d.ts +138 -0
- package/dist-cjs/composite/proto/gen/google/protobuf/struct.gen.js +443 -0
- package/dist-cjs/engine/component.d.ts +149 -0
- package/dist-cjs/engine/component.js +12 -0
- package/dist-cjs/engine/entity.d.ts +49 -0
- package/dist-cjs/engine/entity.js +178 -0
- package/dist-cjs/engine/grow-only-value-set-component-definition.d.ts +8 -0
- package/dist-cjs/engine/grow-only-value-set-component-definition.js +145 -0
- package/dist-cjs/engine/index.d.ts +15 -0
- package/dist-cjs/engine/index.js +247 -0
- package/dist-cjs/engine/input.d.ts +34 -0
- package/dist-cjs/engine/input.js +219 -0
- package/dist-cjs/engine/lww-element-set-component-definition.d.ts +8 -0
- package/dist-cjs/engine/lww-element-set-component-definition.js +264 -0
- package/dist-cjs/engine/readonly.d.ts +29 -0
- package/dist-cjs/engine/readonly.js +10 -0
- package/dist-cjs/engine/systems.d.ts +15 -0
- package/dist-cjs/engine/systems.js +48 -0
- package/dist-cjs/engine/types.d.ts +215 -0
- package/dist-cjs/engine/types.js +17 -0
- package/dist-cjs/index.d.ts +22 -0
- package/dist-cjs/index.js +58 -0
- package/dist-cjs/runtime/crc.d.ts +1 -0
- package/dist-cjs/runtime/crc.js +45 -0
- package/dist-cjs/runtime/helpers/index.d.ts +1 -0
- package/dist-cjs/runtime/helpers/index.js +17 -0
- package/dist-cjs/runtime/helpers/tree.d.ts +32 -0
- package/dist-cjs/runtime/helpers/tree.js +77 -0
- package/dist-cjs/runtime/initialization/index.d.ts +61 -0
- package/dist-cjs/runtime/initialization/index.js +56 -0
- package/dist-cjs/runtime/invariant.d.ts +4 -0
- package/dist-cjs/runtime/invariant.js +17 -0
- package/dist-cjs/runtime/types.d.ts +6 -0
- package/dist-cjs/runtime/types.js +18 -0
- package/dist-cjs/schemas/Array.d.ts +1 -0
- package/dist-cjs/schemas/Array.js +33 -0
- package/dist-cjs/schemas/ISchema.d.ts +35 -0
- package/dist-cjs/schemas/ISchema.js +2 -0
- package/dist-cjs/schemas/Map.d.ts +20 -0
- package/dist-cjs/schemas/Map.js +49 -0
- package/dist-cjs/schemas/OneOf.d.ts +10 -0
- package/dist-cjs/schemas/OneOf.js +35 -0
- package/dist-cjs/schemas/Optional.d.ts +1 -0
- package/dist-cjs/schemas/Optional.js +34 -0
- package/dist-cjs/schemas/basic/Boolean.d.ts +1 -0
- package/dist-cjs/schemas/basic/Boolean.js +21 -0
- package/dist-cjs/schemas/basic/Enum.d.ts +1 -0
- package/dist-cjs/schemas/basic/Enum.js +101 -0
- package/dist-cjs/schemas/basic/Float.d.ts +1 -0
- package/dist-cjs/schemas/basic/Float.js +39 -0
- package/dist-cjs/schemas/basic/Integer.d.ts +9 -0
- package/dist-cjs/schemas/basic/Integer.js +75 -0
- package/dist-cjs/schemas/basic/String.d.ts +1 -0
- package/dist-cjs/schemas/basic/String.js +25 -0
- package/dist-cjs/schemas/buildSchema/index.d.ts +11 -0
- package/dist-cjs/schemas/buildSchema/index.js +114 -0
- package/dist-cjs/schemas/buildSchema/types.d.ts +5 -0
- package/dist-cjs/schemas/buildSchema/types.js +2 -0
- package/dist-cjs/schemas/buildSchema/utils.d.ts +12 -0
- package/dist-cjs/schemas/buildSchema/utils.js +30 -0
- package/dist-cjs/schemas/custom/Color3.d.ts +8 -0
- package/dist-cjs/schemas/custom/Color3.js +32 -0
- package/dist-cjs/schemas/custom/Color4.d.ts +9 -0
- package/dist-cjs/schemas/custom/Color4.js +35 -0
- package/dist-cjs/schemas/custom/Entity.d.ts +1 -0
- package/dist-cjs/schemas/custom/Entity.js +21 -0
- package/dist-cjs/schemas/custom/Quaternion.d.ts +9 -0
- package/dist-cjs/schemas/custom/Quaternion.js +35 -0
- package/dist-cjs/schemas/custom/Vector3.d.ts +8 -0
- package/dist-cjs/schemas/custom/Vector3.js +33 -0
- package/dist-cjs/schemas/index.d.ts +80 -0
- package/dist-cjs/schemas/index.js +84 -0
- package/dist-cjs/schemas/typing.d.ts +30 -0
- package/dist-cjs/schemas/typing.js +2 -0
- package/dist-cjs/serialization/ByteBuffer/index.d.ts +180 -0
- package/dist-cjs/serialization/ByteBuffer/index.js +272 -0
- package/dist-cjs/serialization/crdt/appendValue.d.ts +15 -0
- package/dist-cjs/serialization/crdt/appendValue.js +52 -0
- package/dist-cjs/serialization/crdt/crdtMessageProtocol.d.ts +30 -0
- package/dist-cjs/serialization/crdt/crdtMessageProtocol.js +71 -0
- package/dist-cjs/serialization/crdt/deleteComponent.d.ts +14 -0
- package/dist-cjs/serialization/crdt/deleteComponent.js +45 -0
- package/dist-cjs/serialization/crdt/deleteEntity.d.ts +11 -0
- package/dist-cjs/serialization/crdt/deleteEntity.js +34 -0
- package/dist-cjs/serialization/crdt/index.d.ts +6 -0
- package/dist-cjs/serialization/crdt/index.js +22 -0
- package/dist-cjs/serialization/crdt/message.d.ts +3 -0
- package/dist-cjs/serialization/crdt/message.js +28 -0
- package/dist-cjs/serialization/crdt/putComponent.d.ts +15 -0
- package/dist-cjs/serialization/crdt/putComponent.js +50 -0
- package/dist-cjs/serialization/crdt/types.d.ts +147 -0
- package/dist-cjs/serialization/crdt/types.js +77 -0
- package/dist-cjs/systems/async-task.d.ts +1 -0
- package/dist-cjs/systems/async-task.js +33 -0
- package/dist-cjs/systems/crdt/gset.d.ts +29 -0
- package/dist-cjs/systems/crdt/gset.js +54 -0
- package/dist-cjs/systems/crdt/index.d.ts +7 -0
- package/dist-cjs/systems/crdt/index.js +241 -0
- package/dist-cjs/systems/crdt/types.d.ts +20 -0
- package/dist-cjs/systems/crdt/types.js +2 -0
- package/dist-cjs/systems/crdt/utils.d.ts +15 -0
- package/dist-cjs/systems/crdt/utils.js +52 -0
- package/dist-cjs/systems/cyclicParentingChecker.d.ts +17 -0
- package/dist-cjs/systems/cyclicParentingChecker.js +60 -0
- package/dist-cjs/systems/events.d.ts +49 -0
- package/dist-cjs/systems/events.js +137 -0
- package/dist-cjs/systems/raycast.d.ts +80 -0
- package/dist-cjs/systems/raycast.js +124 -0
- package/dist-cjs/systems/videoEvents.d.ts +14 -0
- package/dist-cjs/systems/videoEvents.js +89 -0
- package/package.json +5 -4
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type { Position as PBPosition, Vector2 as PBVector2, Vector3 as PBVector3 } from './pb/decentraland/common/vectors.gen';
|
|
2
|
+
export type { Color3 as PBColor3, Color4 as PBColor4 } from './pb/decentraland/common/colors.gen';
|
|
3
|
+
export * from './pb/decentraland/sdk/components/common/camera_type.gen';
|
|
4
|
+
export * from './pb/decentraland/sdk/components/common/input_action.gen';
|
|
5
|
+
export * from './pb/decentraland/sdk/components/common/loading_state.gen';
|
|
6
|
+
export * from './pb/decentraland/sdk/components/common/raycast_hit.gen';
|
|
7
|
+
export * from './pb/decentraland/sdk/components/common/texts.gen';
|
|
8
|
+
export * from './pb/decentraland/common/border_rect.gen';
|
|
9
|
+
export * from './pb/decentraland/common/texture.gen';
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./pb/decentraland/sdk/components/common/camera_type.gen"), exports);
|
|
18
|
+
// export { PbCameraType }
|
|
19
|
+
__exportStar(require("./pb/decentraland/sdk/components/common/input_action.gen"), exports);
|
|
20
|
+
// export { PbInputAction }
|
|
21
|
+
__exportStar(require("./pb/decentraland/sdk/components/common/loading_state.gen"), exports);
|
|
22
|
+
// export { PbLoadingState }
|
|
23
|
+
__exportStar(require("./pb/decentraland/sdk/components/common/raycast_hit.gen"), exports);
|
|
24
|
+
// export { PbRaycastHit }
|
|
25
|
+
__exportStar(require("./pb/decentraland/sdk/components/common/texts.gen"), exports);
|
|
26
|
+
// export { PbTexts }
|
|
27
|
+
__exportStar(require("./pb/decentraland/common/border_rect.gen"), exports);
|
|
28
|
+
// export { PbBorderRect }
|
|
29
|
+
__exportStar(require("./pb/decentraland/common/texture.gen"), exports);
|
|
30
|
+
// export { PbTexture }
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { GrowOnlyValueSetComponentDefinition, LastWriteWinElementSetComponentDefinition } from '../engine/component';
|
|
2
|
+
import { AnimatorComponentDefinitionExtended } from './extended/Animator';
|
|
3
|
+
import { MaterialComponentDefinitionExtended } from './extended/Material';
|
|
4
|
+
import { MeshColliderComponentDefinitionExtended } from './extended/MeshCollider';
|
|
5
|
+
import { MeshRendererComponentDefinitionExtended } from './extended/MeshRenderer';
|
|
6
|
+
import { LwwComponentGetter, GSetComponentGetter } from './generated/index.gen';
|
|
7
|
+
import { TransformComponentExtended } from './manual/Transform';
|
|
8
|
+
export * from './generated/index.gen';
|
|
9
|
+
export type { GrowOnlyValueSetComponentDefinition, LastWriteWinElementSetComponentDefinition, LwwComponentGetter, GSetComponentGetter };
|
|
10
|
+
export declare const Transform: LwwComponentGetter<TransformComponentExtended>;
|
|
11
|
+
export declare const Material: LwwComponentGetter<MaterialComponentDefinitionExtended>;
|
|
12
|
+
export declare const Animator: LwwComponentGetter<AnimatorComponentDefinitionExtended>;
|
|
13
|
+
export declare const MeshRenderer: LwwComponentGetter<MeshRendererComponentDefinitionExtended>;
|
|
14
|
+
export declare const MeshCollider: LwwComponentGetter<MeshColliderComponentDefinitionExtended>;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.MeshCollider = exports.MeshRenderer = exports.Animator = exports.Material = exports.Transform = void 0;
|
|
18
|
+
const Animator_1 = require("./extended/Animator");
|
|
19
|
+
const Material_1 = require("./extended/Material");
|
|
20
|
+
const MeshCollider_1 = require("./extended/MeshCollider");
|
|
21
|
+
const MeshRenderer_1 = require("./extended/MeshRenderer");
|
|
22
|
+
const Transform_1 = require("./manual/Transform");
|
|
23
|
+
__exportStar(require("./generated/index.gen"), exports);
|
|
24
|
+
/* @__PURE__ */
|
|
25
|
+
const Transform = (engine) => (0, Transform_1.defineTransformComponent)(engine);
|
|
26
|
+
exports.Transform = Transform;
|
|
27
|
+
/* @__PURE__ */
|
|
28
|
+
const Material = (engine) => (0, Material_1.defineMaterialComponent)(engine);
|
|
29
|
+
exports.Material = Material;
|
|
30
|
+
/* @__PURE__ */
|
|
31
|
+
const Animator = (engine) => (0, Animator_1.defineAnimatorComponent)(engine);
|
|
32
|
+
exports.Animator = Animator;
|
|
33
|
+
/* @__PURE__ */
|
|
34
|
+
const MeshRenderer = (engine) => (0, MeshRenderer_1.defineMeshRendererComponent)(engine);
|
|
35
|
+
exports.MeshRenderer = MeshRenderer;
|
|
36
|
+
/* @__PURE__ */
|
|
37
|
+
const MeshCollider = (engine) => (0, MeshCollider_1.defineMeshColliderComponent)(engine);
|
|
38
|
+
exports.MeshCollider = MeshCollider;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { LastWriteWinElementSetComponentDefinition, IEngine } from '../../engine';
|
|
2
|
+
import { Entity } from '../../engine/entity';
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export type TransformComponent = LastWriteWinElementSetComponentDefinition<TransformType>;
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export interface TransformComponentExtended extends TransformComponent {
|
|
11
|
+
create(entity: Entity, val?: TransformTypeWithOptionals): TransformType;
|
|
12
|
+
createOrReplace(entity: Entity, val?: TransformTypeWithOptionals): TransformType;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export type TransformType = {
|
|
18
|
+
position: {
|
|
19
|
+
x: number;
|
|
20
|
+
y: number;
|
|
21
|
+
z: number;
|
|
22
|
+
};
|
|
23
|
+
rotation: {
|
|
24
|
+
x: number;
|
|
25
|
+
y: number;
|
|
26
|
+
z: number;
|
|
27
|
+
w: number;
|
|
28
|
+
};
|
|
29
|
+
scale: {
|
|
30
|
+
x: number;
|
|
31
|
+
y: number;
|
|
32
|
+
z: number;
|
|
33
|
+
};
|
|
34
|
+
parent?: Entity;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
export type TransformTypeWithOptionals = Partial<TransformType>;
|
|
40
|
+
export declare function defineTransformComponent(engine: Pick<IEngine, 'defineComponentFromSchema'>): TransformComponentExtended;
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.defineTransformComponent = exports.TransformSchema = exports.TRANSFORM_LENGTH = exports.COMPONENT_ID = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
7
|
+
exports.COMPONENT_ID = 1;
|
|
8
|
+
/** @internal */
|
|
9
|
+
exports.TRANSFORM_LENGTH = 44;
|
|
10
|
+
/** @internal */
|
|
11
|
+
exports.TransformSchema = {
|
|
12
|
+
serialize(value, builder) {
|
|
13
|
+
const ptr = builder.incrementWriteOffset(exports.TRANSFORM_LENGTH);
|
|
14
|
+
builder.setFloat32(ptr, value.position.x);
|
|
15
|
+
builder.setFloat32(ptr + 4, value.position.y);
|
|
16
|
+
builder.setFloat32(ptr + 8, value.position.z);
|
|
17
|
+
builder.setFloat32(ptr + 12, value.rotation.x);
|
|
18
|
+
builder.setFloat32(ptr + 16, value.rotation.y);
|
|
19
|
+
builder.setFloat32(ptr + 20, value.rotation.z);
|
|
20
|
+
builder.setFloat32(ptr + 24, value.rotation.w);
|
|
21
|
+
builder.setFloat32(ptr + 28, value.scale.x);
|
|
22
|
+
builder.setFloat32(ptr + 32, value.scale.y);
|
|
23
|
+
builder.setFloat32(ptr + 36, value.scale.z);
|
|
24
|
+
builder.setUint32(ptr + 40, value.parent || 0);
|
|
25
|
+
},
|
|
26
|
+
deserialize(reader) {
|
|
27
|
+
const ptr = reader.incrementReadOffset(exports.TRANSFORM_LENGTH);
|
|
28
|
+
return {
|
|
29
|
+
position: {
|
|
30
|
+
x: reader.getFloat32(ptr),
|
|
31
|
+
y: reader.getFloat32(ptr + 4),
|
|
32
|
+
z: reader.getFloat32(ptr + 8)
|
|
33
|
+
},
|
|
34
|
+
rotation: {
|
|
35
|
+
x: reader.getFloat32(ptr + 12),
|
|
36
|
+
y: reader.getFloat32(ptr + 16),
|
|
37
|
+
z: reader.getFloat32(ptr + 20),
|
|
38
|
+
w: reader.getFloat32(ptr + 24)
|
|
39
|
+
},
|
|
40
|
+
scale: {
|
|
41
|
+
x: reader.getFloat32(ptr + 28),
|
|
42
|
+
y: reader.getFloat32(ptr + 32),
|
|
43
|
+
z: reader.getFloat32(ptr + 36)
|
|
44
|
+
},
|
|
45
|
+
parent: reader.getUint32(ptr + 40)
|
|
46
|
+
};
|
|
47
|
+
},
|
|
48
|
+
create() {
|
|
49
|
+
return {
|
|
50
|
+
position: { x: 0, y: 0, z: 0 },
|
|
51
|
+
scale: { x: 1, y: 1, z: 1 },
|
|
52
|
+
rotation: { x: 0, y: 0, z: 0, w: 1 },
|
|
53
|
+
parent: 0
|
|
54
|
+
};
|
|
55
|
+
},
|
|
56
|
+
extend(value) {
|
|
57
|
+
return {
|
|
58
|
+
position: { x: 0, y: 0, z: 0 },
|
|
59
|
+
scale: { x: 1, y: 1, z: 1 },
|
|
60
|
+
rotation: { x: 0, y: 0, z: 0, w: 1 },
|
|
61
|
+
parent: 0,
|
|
62
|
+
...value
|
|
63
|
+
};
|
|
64
|
+
},
|
|
65
|
+
jsonSchema: {
|
|
66
|
+
type: 'object',
|
|
67
|
+
properties: {
|
|
68
|
+
position: {
|
|
69
|
+
type: 'object',
|
|
70
|
+
properties: {
|
|
71
|
+
x: { type: 'number' },
|
|
72
|
+
y: { type: 'number' },
|
|
73
|
+
z: { type: 'number' }
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
scale: {
|
|
77
|
+
type: 'object',
|
|
78
|
+
properties: {
|
|
79
|
+
x: { type: 'number' },
|
|
80
|
+
y: { type: 'number' },
|
|
81
|
+
z: { type: 'number' }
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
rotation: {
|
|
85
|
+
type: 'object',
|
|
86
|
+
properties: {
|
|
87
|
+
x: { type: 'number' },
|
|
88
|
+
y: { type: 'number' },
|
|
89
|
+
z: { type: 'number' },
|
|
90
|
+
w: { type: 'number' }
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
parent: { type: 'integer' }
|
|
94
|
+
},
|
|
95
|
+
serializationType: 'transform'
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
function defineTransformComponent(engine) {
|
|
99
|
+
const transformDef = engine.defineComponentFromSchema('core::Transform', exports.TransformSchema);
|
|
100
|
+
return {
|
|
101
|
+
...transformDef,
|
|
102
|
+
create(entity, val) {
|
|
103
|
+
return transformDef.create(entity, exports.TransformSchema.extend(val));
|
|
104
|
+
},
|
|
105
|
+
createOrReplace(entity, val) {
|
|
106
|
+
return transformDef.createOrReplace(entity, exports.TransformSchema.extend(val));
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
exports.defineTransformComponent = defineTransformComponent;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type { AnimatorComponentDefinitionExtended } from './extended/Animator';
|
|
2
|
+
export type { MeshRendererComponentDefinitionExtended } from './extended/MeshRenderer';
|
|
3
|
+
export type { MeshColliderComponentDefinitionExtended } from './extended/MeshCollider';
|
|
4
|
+
export type { TextureHelper, MaterialComponentDefinitionExtended } from './extended/Material';
|
|
5
|
+
export type { TransformComponentExtended, TransformTypeWithOptionals } from './manual/Transform';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Entity } from '../engine';
|
|
2
|
+
import { IEngine, LastWriteWinElementSetComponentDefinition } from '../engine/types';
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
* @deprecated composite is not being supported so far, please do not use this feature
|
|
6
|
+
*/
|
|
7
|
+
export type CompositeRootType = {
|
|
8
|
+
src: string;
|
|
9
|
+
entities: {
|
|
10
|
+
src: Entity;
|
|
11
|
+
dest: Entity;
|
|
12
|
+
}[];
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
* @deprecated composite is not being supported so far, please do not use this feature
|
|
17
|
+
*/
|
|
18
|
+
export declare function getCompositeRootComponent(engine: IEngine): LastWriteWinElementSetComponentDefinition<CompositeRootType>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCompositeRootComponent = void 0;
|
|
4
|
+
const schemas_1 = require("../schemas");
|
|
5
|
+
/**
|
|
6
|
+
* @public
|
|
7
|
+
* @deprecated composite is not being supported so far, please do not use this feature
|
|
8
|
+
*/
|
|
9
|
+
function getCompositeRootComponent(engine) {
|
|
10
|
+
const component = engine.getComponentOrNull('composite::root');
|
|
11
|
+
if (component) {
|
|
12
|
+
return component;
|
|
13
|
+
}
|
|
14
|
+
return engine.defineComponent('composite::root', {
|
|
15
|
+
src: schemas_1.Schemas.String,
|
|
16
|
+
entities: schemas_1.Schemas.Array(schemas_1.Schemas.Map({
|
|
17
|
+
src: schemas_1.Schemas.Entity,
|
|
18
|
+
dest: schemas_1.Schemas.Entity
|
|
19
|
+
}))
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
exports.getCompositeRootComponent = getCompositeRootComponent;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { IEngine } from '../engine';
|
|
2
|
+
import { CompositeRootType, getCompositeRootComponent } from './components';
|
|
3
|
+
import { CompositeProvider, CompositeResource, EntityMappingMode, InstanceCompositeOptions } from './instance';
|
|
4
|
+
import type { ComponentData, CompositeComponent, CompositeComponent_DataEntry } from './proto/gen/composite.gen';
|
|
5
|
+
import { CompositeDefinition } from './proto/gen/composite.gen';
|
|
6
|
+
export type { CompositeDefinition, ComponentData, CompositeComponent, CompositeComponent_DataEntry, InstanceCompositeOptions, CompositeProvider, CompositeRootType, CompositeResource };
|
|
7
|
+
export { EntityMappingMode };
|
|
8
|
+
export { getCompositeRootComponent };
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
* @deprecated composite is not being supported so far, please do not use this feature
|
|
12
|
+
*/
|
|
13
|
+
export type Composite = CompositeDefinition;
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
* @deprecated composite is not being supported so far, please do not use this feature
|
|
17
|
+
*/
|
|
18
|
+
export declare namespace Composite {
|
|
19
|
+
/** @public */
|
|
20
|
+
type Definition = CompositeDefinition;
|
|
21
|
+
/** @public */
|
|
22
|
+
type Resource = CompositeResource;
|
|
23
|
+
/** @public */
|
|
24
|
+
type Provider = CompositeProvider;
|
|
25
|
+
/** @public */
|
|
26
|
+
function fromJson(object: any): Composite.Definition;
|
|
27
|
+
/** @public */
|
|
28
|
+
function fromBinary(buffer: Uint8Array): Composite.Definition;
|
|
29
|
+
/** @public */
|
|
30
|
+
function toJson(composite: Composite.Definition): any;
|
|
31
|
+
/** @public */
|
|
32
|
+
function toBinary(composite: Composite.Definition): Uint8Array;
|
|
33
|
+
/**
|
|
34
|
+
* Instance a composite and returns its root entity
|
|
35
|
+
* @param compositeData - state serialized by the CRDT protocol
|
|
36
|
+
* @param getNextAvailableEntity - function that gives unused entities
|
|
37
|
+
* @param rootEntity - (optional) suggested mapped rootEntity for the composite
|
|
38
|
+
*
|
|
39
|
+
* @public
|
|
40
|
+
*/
|
|
41
|
+
function instance(engine: IEngine, compositeData: Composite.Resource, compositeProvider: CompositeProvider, options?: InstanceCompositeOptions): void;
|
|
42
|
+
/**
|
|
43
|
+
* Resolve and normalize a composite path
|
|
44
|
+
* @param src - the source path
|
|
45
|
+
* @param cwd - the directory from the resolve should start to resolve
|
|
46
|
+
*
|
|
47
|
+
* @returns the absolute resolved path without slash at the beginning
|
|
48
|
+
* @public
|
|
49
|
+
*/
|
|
50
|
+
function resolveAndNormalizePath(src: string, cwd?: string): string;
|
|
51
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Composite = exports.getCompositeRootComponent = exports.EntityMappingMode = void 0;
|
|
4
|
+
const components_1 = require("./components");
|
|
5
|
+
Object.defineProperty(exports, "getCompositeRootComponent", { enumerable: true, get: function () { return components_1.getCompositeRootComponent; } });
|
|
6
|
+
const instance_1 = require("./instance");
|
|
7
|
+
Object.defineProperty(exports, "EntityMappingMode", { enumerable: true, get: function () { return instance_1.EntityMappingMode; } });
|
|
8
|
+
const path_1 = require("./path");
|
|
9
|
+
const composite_gen_1 = require("./proto/gen/composite.gen");
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
* @deprecated composite is not being supported so far, please do not use this feature
|
|
13
|
+
*/
|
|
14
|
+
var Composite;
|
|
15
|
+
(function (Composite) {
|
|
16
|
+
/** @public */
|
|
17
|
+
function fromJson(object) {
|
|
18
|
+
return composite_gen_1.CompositeDefinition.fromJSON(object);
|
|
19
|
+
}
|
|
20
|
+
Composite.fromJson = fromJson;
|
|
21
|
+
/** @public */
|
|
22
|
+
function fromBinary(buffer) {
|
|
23
|
+
return composite_gen_1.CompositeDefinition.decode(buffer);
|
|
24
|
+
}
|
|
25
|
+
Composite.fromBinary = fromBinary;
|
|
26
|
+
/** @public */
|
|
27
|
+
function toJson(composite) {
|
|
28
|
+
return composite_gen_1.CompositeDefinition.toJSON(composite);
|
|
29
|
+
}
|
|
30
|
+
Composite.toJson = toJson;
|
|
31
|
+
/** @public */
|
|
32
|
+
function toBinary(composite) {
|
|
33
|
+
return composite_gen_1.CompositeDefinition.encode(composite).finish();
|
|
34
|
+
}
|
|
35
|
+
Composite.toBinary = toBinary;
|
|
36
|
+
/**
|
|
37
|
+
* Instance a composite and returns its root entity
|
|
38
|
+
* @param compositeData - state serialized by the CRDT protocol
|
|
39
|
+
* @param getNextAvailableEntity - function that gives unused entities
|
|
40
|
+
* @param rootEntity - (optional) suggested mapped rootEntity for the composite
|
|
41
|
+
*
|
|
42
|
+
* @public
|
|
43
|
+
*/
|
|
44
|
+
/*#__PURE__*/ function instance(engine, compositeData, compositeProvider, options = {}) {
|
|
45
|
+
(0, instance_1.instanceComposite)(engine, compositeData, compositeProvider, options);
|
|
46
|
+
}
|
|
47
|
+
Composite.instance = instance;
|
|
48
|
+
/**
|
|
49
|
+
* Resolve and normalize a composite path
|
|
50
|
+
* @param src - the source path
|
|
51
|
+
* @param cwd - the directory from the resolve should start to resolve
|
|
52
|
+
*
|
|
53
|
+
* @returns the absolute resolved path without slash at the beginning
|
|
54
|
+
* @public
|
|
55
|
+
*/
|
|
56
|
+
/*#__PURE__*/ function resolveAndNormalizePath(src, cwd = '/') {
|
|
57
|
+
return (0, path_1.resolveComposite)(src, cwd);
|
|
58
|
+
}
|
|
59
|
+
Composite.resolveAndNormalizePath = resolveAndNormalizePath;
|
|
60
|
+
})(Composite = exports.Composite || (exports.Composite = {}));
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Entity } from '../engine/entity';
|
|
2
|
+
import { CompositeDefinition } from './proto/gen/composite.gen';
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export type CompositeResource = {
|
|
7
|
+
src: string;
|
|
8
|
+
composite: CompositeDefinition;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @param src - the source path of the composite
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
export type CompositeProvider = {
|
|
15
|
+
getCompositeOrNull(src: string): CompositeResource | null;
|
|
16
|
+
};
|
|
17
|
+
/** @public */
|
|
18
|
+
export declare enum EntityMappingMode {
|
|
19
|
+
EMM_NONE = 0,
|
|
20
|
+
EMM_NEXT_AVAILABLE = 1,
|
|
21
|
+
EMM_DIRECT_MAPPING = 2
|
|
22
|
+
}
|
|
23
|
+
/** @public */
|
|
24
|
+
export type InstanceCompositeOptions = {
|
|
25
|
+
entityMapping?: {
|
|
26
|
+
type: EntityMappingMode.EMM_NEXT_AVAILABLE;
|
|
27
|
+
getNextAvailableEntity: () => Entity | null;
|
|
28
|
+
} | {
|
|
29
|
+
type: EntityMappingMode.EMM_DIRECT_MAPPING;
|
|
30
|
+
getCompositeEntity: (compositeEntity: Entity | number) => Entity;
|
|
31
|
+
};
|
|
32
|
+
rootEntity?: Entity;
|
|
33
|
+
alreadyRequestedSrc?: Set<string>;
|
|
34
|
+
};
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.instanceComposite = exports.getEntityMapping = exports.getComponentDefinition = exports.getComponentValue = exports.EntityMappingMode = void 0;
|
|
27
|
+
const components_1 = require("../components");
|
|
28
|
+
const component_number_1 = require("../components/component-number");
|
|
29
|
+
const schemas_1 = require("../schemas");
|
|
30
|
+
const ByteBuffer_1 = require("../serialization/ByteBuffer");
|
|
31
|
+
const components_2 = require("./components");
|
|
32
|
+
const path = __importStar(require("./path"));
|
|
33
|
+
/** @public */
|
|
34
|
+
/* @__PURE__ */
|
|
35
|
+
var EntityMappingMode;
|
|
36
|
+
(function (EntityMappingMode) {
|
|
37
|
+
EntityMappingMode[EntityMappingMode["EMM_NONE"] = 0] = "EMM_NONE";
|
|
38
|
+
EntityMappingMode[EntityMappingMode["EMM_NEXT_AVAILABLE"] = 1] = "EMM_NEXT_AVAILABLE";
|
|
39
|
+
EntityMappingMode[EntityMappingMode["EMM_DIRECT_MAPPING"] = 2] = "EMM_DIRECT_MAPPING";
|
|
40
|
+
})(EntityMappingMode = exports.EntityMappingMode || (exports.EntityMappingMode = {}));
|
|
41
|
+
/**
|
|
42
|
+
* Return the component value from composite data
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
function getComponentValue(componentDefinition, component) {
|
|
46
|
+
if (component.data?.$case === 'json') {
|
|
47
|
+
return component.data.json;
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
return componentDefinition.schema.deserialize(new ByteBuffer_1.ReadWriteByteBuffer(component.data?.binary));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.getComponentValue = getComponentValue;
|
|
54
|
+
/**
|
|
55
|
+
* Return the component definition from composite info
|
|
56
|
+
* @internal
|
|
57
|
+
*/
|
|
58
|
+
function getComponentDefinition(engine, component) {
|
|
59
|
+
const existingComponentDefinition = engine.getComponentOrNull(component.name);
|
|
60
|
+
if (!existingComponentDefinition) {
|
|
61
|
+
if (component.name.startsWith('core::')) {
|
|
62
|
+
if (component.name in components_1.componentDefinitionByName) {
|
|
63
|
+
return components_1.componentDefinitionByName[component.name](engine);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
throw new Error(`The core component ${component.name} was not found.`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
else if (component.jsonSchema) {
|
|
70
|
+
return engine.defineComponentFromSchema(component.name, schemas_1.Schemas.fromJson(component.jsonSchema));
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
throw new Error(`${component.name} is not defined and there is no schema to define it.`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
return existingComponentDefinition;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.getComponentDefinition = getComponentDefinition;
|
|
81
|
+
/**
|
|
82
|
+
* Return the entity mapping or fail if there is no more
|
|
83
|
+
* @internal
|
|
84
|
+
*/
|
|
85
|
+
function getEntityMapping(engine, compositeEntity, mappedEntities, { entityMapping }) {
|
|
86
|
+
const existingEntity = mappedEntities.get(compositeEntity);
|
|
87
|
+
if (existingEntity) {
|
|
88
|
+
return existingEntity;
|
|
89
|
+
}
|
|
90
|
+
if (entityMapping?.type === EntityMappingMode.EMM_DIRECT_MAPPING) {
|
|
91
|
+
const entity = entityMapping.getCompositeEntity(compositeEntity);
|
|
92
|
+
mappedEntities.set(compositeEntity, entity);
|
|
93
|
+
return entity;
|
|
94
|
+
}
|
|
95
|
+
// This function in runtime can be just `engine.addEntity()`
|
|
96
|
+
const newEntity = entityMapping?.type === EntityMappingMode.EMM_NEXT_AVAILABLE
|
|
97
|
+
? entityMapping.getNextAvailableEntity()
|
|
98
|
+
: engine.addEntity();
|
|
99
|
+
if (newEntity === null) {
|
|
100
|
+
throw new Error('There is no more entities to allocate');
|
|
101
|
+
}
|
|
102
|
+
mappedEntities.set(compositeEntity, newEntity);
|
|
103
|
+
return newEntity;
|
|
104
|
+
}
|
|
105
|
+
exports.getEntityMapping = getEntityMapping;
|
|
106
|
+
/**
|
|
107
|
+
* @internal
|
|
108
|
+
*/
|
|
109
|
+
/* @__PURE__ */
|
|
110
|
+
function instanceComposite(engine, compositeResource, compositeProvider, options) {
|
|
111
|
+
const { rootEntity, alreadyRequestedSrc: optionalAlreadyRequestedSrc, entityMapping } = options;
|
|
112
|
+
const alreadyRequestedSrc = optionalAlreadyRequestedSrc || new Set();
|
|
113
|
+
const compositeDirectoryPath = path.dirname(path.resolve(compositeResource.src));
|
|
114
|
+
const TransformComponentNumber = (0, component_number_1.componentNumberFromName)('core::Transform');
|
|
115
|
+
const CompositeRootComponent = (0, components_2.getCompositeRootComponent)(engine);
|
|
116
|
+
// Key => EntityNumber from the composite
|
|
117
|
+
// Value => EntityNumber in current engine
|
|
118
|
+
const mappedEntities = new Map();
|
|
119
|
+
const getCompositeEntity = (compositeEntity) => getEntityMapping(engine, compositeEntity, mappedEntities, options);
|
|
120
|
+
// ## 1 ##
|
|
121
|
+
// First entity that I want to map, the root entity from the composite to the target entity in the engine
|
|
122
|
+
// If there is no `rootEntity` passed, we assign one from `getNextAvailableEntity`
|
|
123
|
+
const compositeRootEntity = rootEntity ?? getCompositeEntity(0);
|
|
124
|
+
if (rootEntity) {
|
|
125
|
+
mappedEntities.set(0, rootEntity);
|
|
126
|
+
}
|
|
127
|
+
// ## 2 ##
|
|
128
|
+
// If there are more composite inside this one, we instance first.
|
|
129
|
+
// => This is not only a copy, we need to instance. Otherwise, we'd be missing that branches
|
|
130
|
+
// => TODO: in the future, the instanciation is first, then the overides (to parameterize Composite, e.g. house with different wall colors)
|
|
131
|
+
const childrenComposite = compositeResource.composite.components.find((item) => item.name === CompositeRootComponent.componentName);
|
|
132
|
+
if (childrenComposite) {
|
|
133
|
+
for (const [childCompositeEntity, compositeRawData] of childrenComposite.data) {
|
|
134
|
+
const childComposite = getComponentValue(CompositeRootComponent, compositeRawData);
|
|
135
|
+
const childCompositePath = path.resolveComposite(childComposite.src, compositeDirectoryPath);
|
|
136
|
+
const childCompositeResource = compositeProvider.getCompositeOrNull(childCompositePath);
|
|
137
|
+
const targetEntity = getCompositeEntity(childCompositeEntity);
|
|
138
|
+
if (childCompositeResource) {
|
|
139
|
+
if (alreadyRequestedSrc.has(childCompositeResource.src) ||
|
|
140
|
+
childCompositeResource.src === compositeResource.src) {
|
|
141
|
+
throw new Error(`Composite ${compositeResource.src} has a recursive instanciation while try to instance ${childCompositeResource.src}. Previous instances: ${alreadyRequestedSrc.toString()}`);
|
|
142
|
+
}
|
|
143
|
+
instanceComposite(engine, childCompositeResource, compositeProvider, {
|
|
144
|
+
rootEntity: targetEntity,
|
|
145
|
+
alreadyRequestedSrc: new Set(alreadyRequestedSrc).add(childCompositeResource.src),
|
|
146
|
+
entityMapping: entityMapping?.type === EntityMappingMode.EMM_NEXT_AVAILABLE ? entityMapping : undefined
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
// ## 3 ##
|
|
152
|
+
// Then, we copy the all rest of the components (skipping the Composite ones)
|
|
153
|
+
for (const component of compositeResource.composite.components) {
|
|
154
|
+
// We already instanced the composite
|
|
155
|
+
if (component.name === CompositeRootComponent.componentName)
|
|
156
|
+
continue;
|
|
157
|
+
// ## 3a ##
|
|
158
|
+
// We find the component definition
|
|
159
|
+
const componentDefinition = getComponentDefinition(engine, component);
|
|
160
|
+
// ## 3b ##
|
|
161
|
+
// Iterating over all the entities with this component and create the replica
|
|
162
|
+
for (const [entity, compositeComponentValue] of component.data) {
|
|
163
|
+
const componentValueDeserialized = getComponentValue(componentDefinition, compositeComponentValue);
|
|
164
|
+
const targetEntity = getCompositeEntity(entity);
|
|
165
|
+
const componentValue = componentDefinition.create(targetEntity, componentValueDeserialized);
|
|
166
|
+
// ## 3c ##
|
|
167
|
+
// All entities referenced in the composite probably has a different resolved EntityNumber
|
|
168
|
+
// We'll know with the mappedEntityes
|
|
169
|
+
if (componentDefinition.componentId === TransformComponentNumber) {
|
|
170
|
+
const transform = componentValue;
|
|
171
|
+
if (transform.parent) {
|
|
172
|
+
transform.parent = getCompositeEntity(transform.parent);
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
transform.parent = getCompositeEntity(0);
|
|
176
|
+
}
|
|
177
|
+
// TODO: is it going to be necessary to remap assets? e.g. src param from AudioSource and GltfContainer
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
schemas_1.Schemas.mutateNestedValues(componentDefinition.schema.jsonSchema, componentValue, (value, valueType) => {
|
|
181
|
+
if (valueType.serializationType === 'entity') {
|
|
182
|
+
return { changed: true, value: getCompositeEntity(value) };
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
return { changed: false };
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
const composite = CompositeRootComponent.getMutableOrNull(compositeRootEntity) || CompositeRootComponent.create(compositeRootEntity);
|
|
192
|
+
for (const [entitySource, targetEntity] of mappedEntities) {
|
|
193
|
+
composite.entities.push({
|
|
194
|
+
src: entitySource,
|
|
195
|
+
dest: targetEntity
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
composite.src = compositeResource.src;
|
|
199
|
+
return compositeRootEntity;
|
|
200
|
+
}
|
|
201
|
+
exports.instanceComposite = instanceComposite;
|