@dcl/ecs 7.20.4-22561917759.commit-d944d0d → 7.20.4-22576263908.commit-9ddd8ad

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 (215) hide show
  1. package/dist/components/extended/AvatarEquippedData.d.ts +10 -0
  2. package/dist/components/extended/AvatarEquippedData.js +15 -0
  3. package/dist/components/extended/AvatarShape.d.ts +10 -0
  4. package/dist/components/extended/AvatarShape.js +15 -0
  5. package/dist/components/extended/MeshCollider.d.ts +8 -0
  6. package/dist/components/extended/MeshCollider.js +6 -0
  7. package/dist/components/extended/MeshRenderer.d.ts +8 -0
  8. package/dist/components/extended/MeshRenderer.js +5 -0
  9. package/dist/components/extended/Tween.d.ts +0 -90
  10. package/dist/components/extended/Tween.js +0 -152
  11. package/dist/components/generated/AvatarMovement.gen.d.ts +1 -0
  12. package/dist/components/generated/AvatarMovement.gen.js +25 -0
  13. package/dist/components/generated/AvatarMovementInfo.gen.d.ts +1 -0
  14. package/dist/components/generated/AvatarMovementInfo.gen.js +25 -0
  15. package/dist/components/generated/CameraLayer.gen.d.ts +1 -0
  16. package/dist/components/generated/CameraLayer.gen.js +25 -0
  17. package/dist/components/generated/CameraLayers.gen.d.ts +1 -0
  18. package/dist/components/generated/CameraLayers.gen.js +25 -0
  19. package/dist/components/generated/GlobalLight.gen.d.ts +1 -0
  20. package/dist/components/generated/GlobalLight.gen.js +25 -0
  21. package/dist/components/generated/GltfNode.gen.d.ts +1 -0
  22. package/dist/components/generated/GltfNode.gen.js +25 -0
  23. package/dist/components/generated/GltfNodeState.gen.d.ts +1 -0
  24. package/dist/components/generated/GltfNodeState.gen.js +25 -0
  25. package/dist/components/generated/TextureCamera.gen.d.ts +1 -0
  26. package/dist/components/generated/{AudioAnalysis.gen.js → TextureCamera.gen.js} +7 -7
  27. package/dist/components/generated/UiCanvas.gen.d.ts +1 -0
  28. package/dist/components/generated/UiCanvas.gen.js +25 -0
  29. package/dist/components/generated/UiScrollResult.gen.d.ts +1 -0
  30. package/dist/components/generated/UiScrollResult.gen.js +25 -0
  31. package/dist/components/generated/component-names.gen.js +10 -1
  32. package/dist/components/generated/global.gen.d.ts +20 -2
  33. package/dist/components/generated/global.gen.js +10 -1
  34. package/dist/components/generated/index.gen.d.ts +40 -4
  35. package/dist/components/generated/index.gen.js +50 -5
  36. package/dist/components/generated/pb/decentraland/common/texture.gen.d.ts +20 -0
  37. package/dist/components/generated/pb/decentraland/common/texture.gen.js +65 -0
  38. package/dist/components/generated/pb/decentraland/sdk/components/avatar_equipped_data.gen.d.ts +2 -0
  39. package/dist/components/generated/pb/decentraland/sdk/components/avatar_equipped_data.gen.js +10 -1
  40. package/dist/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +43 -0
  41. package/dist/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.js +151 -1
  42. package/dist/components/generated/pb/decentraland/sdk/components/avatar_movement.gen.d.ts +18 -0
  43. package/dist/components/generated/pb/decentraland/sdk/components/avatar_movement.gen.js +60 -0
  44. package/dist/components/generated/pb/decentraland/sdk/components/avatar_movement_info.gen.d.ts +28 -0
  45. package/dist/components/generated/pb/decentraland/sdk/components/avatar_movement_info.gen.js +106 -0
  46. package/dist/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.d.ts +2 -0
  47. package/dist/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.js +10 -0
  48. package/dist/components/generated/pb/decentraland/sdk/components/camera_layer.gen.d.ts +30 -0
  49. package/dist/components/generated/pb/decentraland/sdk/components/camera_layer.gen.js +104 -0
  50. package/dist/components/generated/pb/decentraland/sdk/components/camera_layers.gen.d.ts +14 -0
  51. package/dist/components/generated/pb/decentraland/sdk/components/camera_layers.gen.js +50 -0
  52. package/dist/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.d.ts +37 -1
  53. package/dist/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.js +119 -1
  54. package/dist/components/generated/pb/decentraland/sdk/components/common/input_action.gen.d.ts +3 -9
  55. package/dist/components/generated/pb/decentraland/sdk/components/common/input_action.gen.js +3 -10
  56. package/dist/components/generated/pb/decentraland/sdk/components/global_light.gen.d.ts +34 -0
  57. package/dist/components/generated/pb/decentraland/sdk/components/global_light.gen.js +61 -0
  58. package/dist/components/generated/pb/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +19 -0
  59. package/dist/components/generated/pb/decentraland/sdk/components/gltf_container_loading_state.gen.js +46 -1
  60. package/dist/components/generated/pb/decentraland/sdk/components/gltf_node.gen.d.ts +50 -0
  61. package/dist/components/generated/pb/decentraland/sdk/components/gltf_node.gen.js +41 -0
  62. package/dist/components/generated/pb/decentraland/sdk/components/gltf_node_state.gen.d.ts +27 -0
  63. package/dist/components/generated/pb/decentraland/sdk/components/gltf_node_state.gen.js +59 -0
  64. package/dist/components/generated/pb/decentraland/sdk/components/material.gen.d.ts +22 -0
  65. package/dist/components/generated/pb/decentraland/sdk/components/material.gen.js +57 -1
  66. package/dist/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.d.ts +20 -0
  67. package/dist/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.js +56 -0
  68. package/dist/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.d.ts +21 -3
  69. package/dist/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.js +56 -0
  70. package/dist/components/generated/pb/decentraland/sdk/components/pointer_events.gen.d.ts +1 -5
  71. package/dist/components/generated/pb/decentraland/sdk/components/pointer_events.gen.js +1 -20
  72. package/dist/components/generated/pb/decentraland/sdk/components/primary_pointer_info.gen.d.ts +8 -2
  73. package/dist/components/generated/pb/decentraland/sdk/components/primary_pointer_info.gen.js +3 -0
  74. package/dist/components/generated/pb/decentraland/sdk/components/raycast.gen.d.ts +13 -0
  75. package/dist/components/generated/pb/decentraland/sdk/components/raycast.gen.js +30 -0
  76. package/dist/components/generated/pb/decentraland/sdk/components/texture_camera.gen.d.ts +74 -0
  77. package/dist/components/generated/pb/decentraland/sdk/components/texture_camera.gen.js +191 -0
  78. package/dist/components/generated/pb/decentraland/sdk/components/tween.gen.d.ts +0 -40
  79. package/dist/components/generated/pb/decentraland/sdk/components/tween.gen.js +0 -176
  80. package/dist/components/generated/pb/decentraland/sdk/components/ui_canvas.gen.d.ts +19 -0
  81. package/dist/components/generated/pb/decentraland/sdk/components/ui_canvas.gen.js +60 -0
  82. package/dist/components/generated/pb/decentraland/sdk/components/ui_scroll_result.gen.d.ts +15 -0
  83. package/dist/components/generated/pb/decentraland/sdk/components/ui_scroll_result.gen.js +42 -0
  84. package/dist/components/generated/pb/decentraland/sdk/components/ui_text.gen.d.ts +4 -0
  85. package/dist/components/generated/pb/decentraland/sdk/components/ui_text.gen.js +20 -0
  86. package/dist/components/generated/pb/decentraland/sdk/components/ui_transform.gen.d.ts +35 -0
  87. package/dist/components/generated/pb/decentraland/sdk/components/ui_transform.gen.js +90 -0
  88. package/dist/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.d.ts +0 -3
  89. package/dist/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.js +1 -10
  90. package/dist/components/index.d.ts +11 -11
  91. package/dist/components/index.js +11 -8
  92. package/dist/components/types.d.ts +3 -2
  93. package/dist/engine/grow-only-value-set-component-definition.js +1 -1
  94. package/dist/engine/input.d.ts +6 -0
  95. package/dist/engine/input.js +9 -4
  96. package/dist/index.d.ts +2 -2
  97. package/dist/index.js +1 -1
  98. package/dist/runtime/globals.d.ts +12 -2
  99. package/dist/runtime/globals.js +4 -3
  100. package/dist/systems/events.d.ts +100 -1
  101. package/dist/systems/events.js +143 -65
  102. package/dist/systems/raycast.d.ts +3 -1
  103. package/dist/systems/raycast.js +2 -0
  104. package/dist-cjs/components/extended/AvatarEquippedData.d.ts +10 -0
  105. package/dist-cjs/components/extended/AvatarEquippedData.js +19 -0
  106. package/dist-cjs/components/extended/AvatarShape.d.ts +10 -0
  107. package/dist-cjs/components/extended/AvatarShape.js +19 -0
  108. package/dist-cjs/components/extended/MeshCollider.d.ts +8 -0
  109. package/dist-cjs/components/extended/MeshCollider.js +6 -0
  110. package/dist-cjs/components/extended/MeshRenderer.d.ts +8 -0
  111. package/dist-cjs/components/extended/MeshRenderer.js +5 -0
  112. package/dist-cjs/components/extended/Tween.d.ts +0 -90
  113. package/dist-cjs/components/extended/Tween.js +0 -152
  114. package/dist-cjs/components/generated/AvatarMovement.gen.js +28 -0
  115. package/dist-cjs/components/generated/AvatarMovementInfo.gen.js +28 -0
  116. package/dist-cjs/components/generated/CameraLayer.gen.d.ts +1 -0
  117. package/dist-cjs/components/generated/CameraLayer.gen.js +28 -0
  118. package/dist-cjs/components/generated/CameraLayers.gen.d.ts +1 -0
  119. package/dist-cjs/components/generated/CameraLayers.gen.js +28 -0
  120. package/dist-cjs/components/generated/GlobalLight.gen.d.ts +1 -0
  121. package/dist-cjs/components/generated/GlobalLight.gen.js +28 -0
  122. package/dist-cjs/components/generated/GltfNode.gen.d.ts +1 -0
  123. package/dist-cjs/components/generated/GltfNode.gen.js +28 -0
  124. package/dist-cjs/components/generated/GltfNodeState.gen.d.ts +1 -0
  125. package/dist-cjs/components/generated/GltfNodeState.gen.js +28 -0
  126. package/dist-cjs/components/generated/TextureCamera.gen.d.ts +1 -0
  127. package/dist-cjs/components/generated/{AudioAnalysis.gen.js → TextureCamera.gen.js} +8 -8
  128. package/dist-cjs/components/generated/UiCanvas.gen.d.ts +1 -0
  129. package/dist-cjs/components/generated/UiCanvas.gen.js +28 -0
  130. package/dist-cjs/components/generated/UiScrollResult.gen.d.ts +1 -0
  131. package/dist-cjs/components/generated/UiScrollResult.gen.js +28 -0
  132. package/dist-cjs/components/generated/component-names.gen.js +10 -1
  133. package/dist-cjs/components/generated/global.gen.d.ts +20 -2
  134. package/dist-cjs/components/generated/global.gen.js +12 -2
  135. package/dist-cjs/components/generated/index.gen.d.ts +40 -4
  136. package/dist-cjs/components/generated/index.gen.js +62 -8
  137. package/dist-cjs/components/generated/pb/decentraland/common/texture.gen.d.ts +20 -0
  138. package/dist-cjs/components/generated/pb/decentraland/common/texture.gen.js +66 -1
  139. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_equipped_data.gen.d.ts +2 -0
  140. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_equipped_data.gen.js +10 -1
  141. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.d.ts +43 -0
  142. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen.js +152 -2
  143. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_movement.gen.d.ts +18 -0
  144. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_movement.gen.js +66 -0
  145. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_movement_info.gen.d.ts +28 -0
  146. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_movement_info.gen.js +112 -0
  147. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.d.ts +2 -0
  148. package/dist-cjs/components/generated/pb/decentraland/sdk/components/avatar_shape.gen.js +10 -0
  149. package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_layer.gen.d.ts +30 -0
  150. package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_layer.gen.js +110 -0
  151. package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_layers.gen.d.ts +14 -0
  152. package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_layers.gen.js +56 -0
  153. package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.d.ts +37 -1
  154. package/dist-cjs/components/generated/pb/decentraland/sdk/components/camera_mode_area.gen.js +120 -2
  155. package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/input_action.gen.d.ts +3 -9
  156. package/dist-cjs/components/generated/pb/decentraland/sdk/components/common/input_action.gen.js +4 -11
  157. package/dist-cjs/components/generated/pb/decentraland/sdk/components/global_light.gen.d.ts +34 -0
  158. package/dist-cjs/components/generated/pb/decentraland/sdk/components/global_light.gen.js +67 -0
  159. package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_container_loading_state.gen.d.ts +19 -0
  160. package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_container_loading_state.gen.js +46 -1
  161. package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_node.gen.d.ts +50 -0
  162. package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_node.gen.js +47 -0
  163. package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_node_state.gen.d.ts +27 -0
  164. package/dist-cjs/components/generated/pb/decentraland/sdk/components/gltf_node_state.gen.js +65 -0
  165. package/dist-cjs/components/generated/pb/decentraland/sdk/components/material.gen.d.ts +22 -0
  166. package/dist-cjs/components/generated/pb/decentraland/sdk/components/material.gen.js +58 -2
  167. package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.d.ts +20 -0
  168. package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_collider.gen.js +57 -1
  169. package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.d.ts +21 -3
  170. package/dist-cjs/components/generated/pb/decentraland/sdk/components/mesh_renderer.gen.js +57 -1
  171. package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events.gen.d.ts +1 -5
  172. package/dist-cjs/components/generated/pb/decentraland/sdk/components/pointer_events.gen.js +1 -20
  173. package/dist-cjs/components/generated/pb/decentraland/sdk/components/primary_pointer_info.gen.d.ts +8 -2
  174. package/dist-cjs/components/generated/pb/decentraland/sdk/components/primary_pointer_info.gen.js +3 -0
  175. package/dist-cjs/components/generated/pb/decentraland/sdk/components/raycast.gen.d.ts +13 -0
  176. package/dist-cjs/components/generated/pb/decentraland/sdk/components/raycast.gen.js +31 -1
  177. package/dist-cjs/components/generated/pb/decentraland/sdk/components/texture_camera.gen.d.ts +74 -0
  178. package/dist-cjs/components/generated/pb/decentraland/sdk/components/texture_camera.gen.js +197 -0
  179. package/dist-cjs/components/generated/pb/decentraland/sdk/components/tween.gen.d.ts +0 -40
  180. package/dist-cjs/components/generated/pb/decentraland/sdk/components/tween.gen.js +1 -177
  181. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_canvas.gen.d.ts +19 -0
  182. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_canvas.gen.js +66 -0
  183. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_scroll_result.gen.d.ts +15 -0
  184. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_scroll_result.gen.js +48 -0
  185. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_text.gen.d.ts +4 -0
  186. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_text.gen.js +20 -0
  187. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_transform.gen.d.ts +35 -0
  188. package/dist-cjs/components/generated/pb/decentraland/sdk/components/ui_transform.gen.js +91 -1
  189. package/dist-cjs/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.d.ts +0 -3
  190. package/dist-cjs/components/generated/pb/decentraland/sdk/components/virtual_camera.gen.js +1 -10
  191. package/dist-cjs/components/index.d.ts +11 -11
  192. package/dist-cjs/components/index.js +15 -11
  193. package/dist-cjs/components/types.d.ts +3 -2
  194. package/dist-cjs/engine/grow-only-value-set-component-definition.js +1 -1
  195. package/dist-cjs/engine/input.d.ts +6 -0
  196. package/dist-cjs/engine/input.js +9 -4
  197. package/dist-cjs/index.d.ts +2 -2
  198. package/dist-cjs/index.js +2 -2
  199. package/dist-cjs/runtime/globals.d.ts +12 -2
  200. package/dist-cjs/runtime/globals.js +4 -3
  201. package/dist-cjs/systems/events.d.ts +100 -1
  202. package/dist-cjs/systems/events.js +143 -65
  203. package/dist-cjs/systems/raycast.d.ts +3 -1
  204. package/dist-cjs/systems/raycast.js +2 -0
  205. package/package.json +2 -2
  206. package/dist/components/extended/AudioAnalysis.d.ts +0 -55
  207. package/dist/components/extended/AudioAnalysis.js +0 -66
  208. package/dist/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.d.ts +0 -37
  209. package/dist/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.js +0 -161
  210. package/dist-cjs/components/extended/AudioAnalysis.d.ts +0 -55
  211. package/dist-cjs/components/extended/AudioAnalysis.js +0 -70
  212. package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.d.ts +0 -37
  213. package/dist-cjs/components/generated/pb/decentraland/sdk/components/audio_analysis.gen.js +0 -167
  214. /package/dist-cjs/components/generated/{AudioAnalysis.gen.d.ts → AvatarMovement.gen.d.ts} +0 -0
  215. /package/{dist/components/generated/AudioAnalysis.gen.d.ts → dist-cjs/components/generated/AvatarMovementInfo.gen.d.ts} +0 -0
@@ -1,19 +1,20 @@
1
1
  import { defineAnimatorComponent } from './extended/Animator';
2
2
  import { defineAudioSourceComponent } from './extended/AudioSource';
3
- import { defineAudioAnalysisComponent } from './extended/AudioAnalysis';
3
+ import { defineAudioStreamComponent } from './extended/AudioStream';
4
+ import { defineAvatarEquippedDataComponent } from './extended/AvatarEquippedData';
5
+ import { defineAvatarShapeComponent } from './extended/AvatarShape';
6
+ import { defineInputModifierComponent } from './extended/InputModifier';
4
7
  import { defineMaterialComponent } from './extended/Material';
5
8
  import { defineMeshColliderComponent } from './extended/MeshCollider';
6
9
  import { defineMeshRendererComponent } from './extended/MeshRenderer';
7
10
  import { defineTweenComponent } from './extended/Tween';
11
+ import { defineVirtualCameraComponent } from './extended/VirtualCamera';
12
+ import { MediaState } from './generated/pb/decentraland/sdk/components/common/media_state.gen';
8
13
  import defineNameComponent from './manual/Name';
9
- import defineSyncComponent from './manual/SyncComponents';
10
14
  import defineNetworkEntity from './manual/NetworkEntity';
11
15
  import defineNetworkParent from './manual/NetworkParent';
16
+ import defineSyncComponent from './manual/SyncComponents';
12
17
  import { defineTransformComponent } from './manual/Transform';
13
- import { defineAudioStreamComponent } from './extended/AudioStream';
14
- import { MediaState } from './generated/pb/decentraland/sdk/components/common/media_state.gen';
15
- import { defineVirtualCameraComponent } from './extended/VirtualCamera';
16
- import { defineInputModifierComponent } from './extended/InputModifier';
17
18
  import { defineLightSourceComponent } from './extended/LightSource';
18
19
  import { defineTriggerAreaComponent } from './extended/TriggerArea';
19
20
  import defineTagsComponent from './manual/Tags';
@@ -27,8 +28,6 @@ export const Animator = (engine) => defineAnimatorComponent(engine);
27
28
  /* @__PURE__ */
28
29
  export const AudioSource = (engine) => defineAudioSourceComponent(engine);
29
30
  /* @__PURE__ */
30
- export const AudioAnalysis = (engine) => defineAudioAnalysisComponent(engine);
31
- /* @__PURE__ */
32
31
  export const AudioStream = (engine) => defineAudioStreamComponent(engine);
33
32
  /* @__PURE__ */
34
33
  export const MeshRenderer = (engine) => defineMeshRendererComponent(engine);
@@ -37,6 +36,10 @@ export const MeshCollider = (engine) => defineMeshColliderComponent(engine);
37
36
  /* @__PURE__ */
38
37
  export const Tween = (engine) => defineTweenComponent(engine);
39
38
  /* @__PURE__ */
39
+ export const AvatarShape = (engine) => defineAvatarShapeComponent(engine);
40
+ /* @__PURE__ */
41
+ export const AvatarEquippedData = (engine) => defineAvatarEquippedDataComponent(engine);
42
+ /* @__PURE__ */
40
43
  export const VirtualCamera = (engine) => defineVirtualCameraComponent(engine);
41
44
  /* @__PURE__*/
42
45
  export const InputModifier = (engine) => defineInputModifierComponent(engine);
@@ -1,11 +1,12 @@
1
1
  export type { AnimatorComponentDefinitionExtended } from './extended/Animator';
2
2
  export type { AudioSourceComponentDefinitionExtended } from './extended/AudioSource';
3
- export type { AudioAnalysisComponentDefinitionExtended, AudioAnalysisView } from './extended/AudioAnalysis';
4
3
  export type { AudioStreamComponentDefinitionExtended } from './extended/AudioStream';
5
4
  export type { MeshRendererComponentDefinitionExtended } from './extended/MeshRenderer';
6
5
  export type { MeshColliderComponentDefinitionExtended } from './extended/MeshCollider';
6
+ export type { AvatarEquippedDataComponentDefinitionExtended, AvatarEquippedDataType } from './extended/AvatarEquippedData';
7
+ export type { AvatarShapeComponentDefinitionExtended, AvatarShapeType } from './extended/AvatarShape';
7
8
  export type { TextureHelper, MaterialComponentDefinitionExtended, FlatTexture, ReadonlyFlatMaterial, ReadonlyFlatTexture, FlatMaterial } from './extended/Material';
8
- export type { TweenHelper, TweenComponentDefinitionExtended, SetMoveRotateScaleParams, SetMoveRotateScaleContinuousParams, MoveRotateScaleModeParams, MoveRotateScaleContinuousModeParams } from './extended/Tween';
9
+ export type { TweenHelper, TweenComponentDefinitionExtended } from './extended/Tween';
9
10
  export type { CameraTransitionHelper, VirtualCameraComponentDefinitionExtended } from './extended/VirtualCamera';
10
11
  export type { TransformComponentExtended, TransformTypeWithOptionals } from './manual/Transform';
11
12
  export type { NameComponent, NameType } from './manual/Name';
@@ -12,7 +12,7 @@ function freezeSet(set) {
12
12
  return set;
13
13
  }
14
14
  function sortByTimestamp(a, b) {
15
- return a.timestamp - b.timestamp;
15
+ return a.timestamp > b.timestamp ? 1 : -1;
16
16
  }
17
17
  /**
18
18
  * @internal
@@ -32,6 +32,12 @@ export type IInputSystem = {
32
32
  * @returns the input command info or undefined if there is no command in the last tick-update
33
33
  */
34
34
  getInputCommand: (inputAction: InputAction, pointerEventType: PointerEventType, entity?: Entity) => PBPointerEventsResult | null;
35
+ /**
36
+ * @public
37
+ * Get an ordered iterator over events received within the current frame.
38
+ * @returns the iterator
39
+ */
40
+ getInputCommands: () => Generator<PBPointerEventsResult>;
35
41
  };
36
42
  /**
37
43
  * @public
@@ -118,9 +118,8 @@ export function createInputSystem(engine) {
118
118
  }
119
119
  if (!up || !down)
120
120
  return null;
121
- // If the DOWN command has happened before or at the same time as the UP command, a click has happened.
122
- // Same-timestamp is possible when both events are produced within the same renderer tick.
123
- if (down.timestamp <= up.timestamp && timestampIsCurrentFrame(up.timestamp)) {
121
+ // If the DOWN command has happen before the UP commands, it means that that a clicked has happen
122
+ if (down.timestamp < up.timestamp && timestampIsCurrentFrame(up.timestamp)) {
124
123
  return { up, down };
125
124
  }
126
125
  return null;
@@ -186,11 +185,17 @@ export function createInputSystem(engine) {
186
185
  function isPressed(inputAction) {
187
186
  return globalState.buttonState.get(inputAction)?.state === 1 /* PointerEventType.PET_DOWN */;
188
187
  }
188
+ function* getInputCommands() {
189
+ for (let i = globalState.thisFrameCommands.length - 1; i >= 0; i--) {
190
+ yield globalState.thisFrameCommands[i];
191
+ }
192
+ }
189
193
  return {
190
194
  isPressed,
191
195
  getClick,
192
196
  getInputCommand,
193
197
  isClicked,
194
- isTriggered
198
+ isTriggered,
199
+ getInputCommands
195
200
  };
196
201
  }
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ export * from './schemas';
3
3
  export * from './runtime/initialization';
4
4
  export * from './runtime/types';
5
5
  export * from './runtime/helpers';
6
+ export * from './runtime/globals';
6
7
  export { cyclicParentingChecker } from './systems/cyclicParentingChecker';
7
8
  export * from './systems/events';
8
9
  export * from './systems/raycast';
@@ -13,13 +14,12 @@ export * from './systems/tween';
13
14
  export * from './systems/triggerArea';
14
15
  export * from './engine/entity';
15
16
  export * from './components/types';
16
- import { MaterialComponentDefinitionExtended, MeshColliderComponentDefinitionExtended, MeshRendererComponentDefinitionExtended, TransformComponentExtended, AnimatorComponentDefinitionExtended, AudioSourceComponentDefinitionExtended, AudioAnalysisComponentDefinitionExtended, AudioStreamComponentDefinitionExtended, ISyncComponents, TweenComponentDefinitionExtended, INetowrkEntity, INetowrkParent, VirtualCameraComponentDefinitionExtended, InputModifierComponentDefinitionExtended, LightSourceComponentDefinitionExtended, TriggerAreaComponentDefinitionExtended } from './components/types';
17
+ import { MaterialComponentDefinitionExtended, MeshColliderComponentDefinitionExtended, MeshRendererComponentDefinitionExtended, TransformComponentExtended, AnimatorComponentDefinitionExtended, AudioSourceComponentDefinitionExtended, AudioStreamComponentDefinitionExtended, ISyncComponents, TweenComponentDefinitionExtended, INetowrkEntity, INetowrkParent, VirtualCameraComponentDefinitionExtended, InputModifierComponentDefinitionExtended, LightSourceComponentDefinitionExtended, TriggerAreaComponentDefinitionExtended } from './components/types';
17
18
  import { NameComponent } from './components/manual/Name';
18
19
  import { TagsComponentDefinitionExtended } from './components/manual/Tags';
19
20
  export declare const Transform: TransformComponentExtended;
20
21
  export declare const Animator: AnimatorComponentDefinitionExtended;
21
22
  export declare const AudioSource: AudioSourceComponentDefinitionExtended;
22
- export declare const AudioAnalysis: AudioAnalysisComponentDefinitionExtended;
23
23
  export declare const AudioStream: AudioStreamComponentDefinitionExtended;
24
24
  export declare const Material: MaterialComponentDefinitionExtended;
25
25
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
package/dist/index.js CHANGED
@@ -4,6 +4,7 @@ export * from './schemas';
4
4
  export * from './runtime/initialization';
5
5
  export * from './runtime/types';
6
6
  export * from './runtime/helpers';
7
+ export * from './runtime/globals';
7
8
  export { cyclicParentingChecker } from './systems/cyclicParentingChecker';
8
9
  export * from './systems/events';
9
10
  export * from './systems/raycast';
@@ -23,7 +24,6 @@ import { engine } from './runtime/initialization';
23
24
  export const Transform = /* @__PURE__*/ components.Transform(engine);
24
25
  export const Animator = /* @__PURE__*/ components.Animator(engine);
25
26
  export const AudioSource = /* @__PURE__*/ components.AudioSource(engine);
26
- export const AudioAnalysis = /* @__PURE__*/ components.AudioAnalysis(engine);
27
27
  export const AudioStream = /* @__PURE__*/ components.AudioStream(engine);
28
28
  export const Material = /* @__PURE__*/ components.Material(engine);
29
29
  export const MeshRenderer = /* @__PURE__*/ components.MeshRenderer(engine);
@@ -1,4 +1,14 @@
1
1
  /**
2
- * Internal utilities for standardized globalThis access.
2
+ * Utilities for standardized globalThis access.
3
+ * @public
3
4
  */
4
- export {};
5
+ /**
6
+ * Type-safe globalThis property access.
7
+ * @public
8
+ */
9
+ export declare function getGlobal<T>(key: string): T | undefined;
10
+ /**
11
+ * Sets a globalThis property as a polyfill (only if undefined/null).
12
+ * @public
13
+ */
14
+ export declare function setGlobalPolyfill<T>(key: string, value: T): void;
@@ -1,16 +1,17 @@
1
1
  /**
2
- * Internal utilities for standardized globalThis access.
2
+ * Utilities for standardized globalThis access.
3
+ * @public
3
4
  */
4
5
  /**
5
6
  * Type-safe globalThis property access.
6
- * @internal
7
+ * @public
7
8
  */
8
9
  export function getGlobal(key) {
9
10
  return globalThis[key];
10
11
  }
11
12
  /**
12
13
  * Sets a globalThis property as a polyfill (only if undefined/null).
13
- * @internal
14
+ * @public
14
15
  */
15
16
  export function setGlobalPolyfill(key, value) {
16
17
  ;
@@ -18,6 +18,12 @@ export type EventSystemOptions = {
18
18
  showHighlight?: boolean;
19
19
  maxPlayerDistance?: number;
20
20
  };
21
+ /**
22
+ * @public
23
+ */
24
+ export type EventSystemOptionsCallback = EventSystemOptions & {
25
+ cb: EventSystemCallback;
26
+ };
21
27
  export declare const getDefaultOpts: (opts?: Partial<EventSystemOptions>) => EventSystemOptions;
22
28
  /**
23
29
  * @public
@@ -47,11 +53,37 @@ export interface PointerEventsSystem {
47
53
  * @param entity - Entity where the callback was attached
48
54
  */
49
55
  removeOnPointerHoverLeave(entity: Entity): void;
56
+ /**
57
+ * @public
58
+ * Remove the callback for onPointerDrag event
59
+ * @param entity - Entity where the callback was attached
60
+ */
61
+ removeOnPointerDrag(entity: Entity): void;
62
+ /**
63
+ * @public
64
+ * Remove the callback for onPointerDragLocked event
65
+ * @param entity - Entity where the callback was attached
66
+ */
67
+ removeOnPointerDragLocked(entity: Entity): void;
68
+ /**
69
+ * @public
70
+ * Remove the callback for onPointerDragEnd event
71
+ * @param entity - Entity where the callback was attached
72
+ */
73
+ removeOnPointerDragEnd(entity: Entity): void;
74
+ /**
75
+ * @public
76
+ * Execute callbacks when the user presses one of the InputButtons pointing at the entity
77
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
78
+ */
79
+ onPointerDown(pointerData: {
80
+ entity: Entity;
81
+ optsList: EventSystemOptionsCallback[];
82
+ }): void;
50
83
  /**
51
84
  * @public
52
85
  * Execute callback when the user press the InputButton pointing at the entity
53
86
  * @param pointerData - Entity to attach the callback, Opts to trigger Feedback and Button
54
- * @param cb - Function to execute when click fires
55
87
  */
56
88
  onPointerDown(pointerData: {
57
89
  entity: Entity;
@@ -64,6 +96,15 @@ export interface PointerEventsSystem {
64
96
  * @param opts - Opts to trigger Feedback and Button
65
97
  */
66
98
  onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
99
+ /**
100
+ * @public
101
+ * Execute callbacks when the user releases one of the InputButtons pointing at the entity
102
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
103
+ */
104
+ onPointerUp(pointerData: {
105
+ entity: Entity;
106
+ optsList: EventSystemOptionsCallback[];
107
+ }): void;
67
108
  /**
68
109
  * @public
69
110
  * Execute callback when the user releases the InputButton pointing at the entity
@@ -101,6 +142,64 @@ export interface PointerEventsSystem {
101
142
  entity: Entity;
102
143
  opts?: Partial<EventSystemOptions>;
103
144
  }, cb: EventSystemCallback): void;
145
+ /**
146
+ * @public
147
+ * Execute callbacks when the user drags the pointer from inside the entity
148
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
149
+ */
150
+ onPointerDrag(pointerData: {
151
+ entity: Entity;
152
+ optsList: EventSystemOptionsCallback[];
153
+ }): void;
154
+ /**
155
+ * @public
156
+ * Execute callback when the user clicks and drags the pointer from inside the entity
157
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
158
+ * @param cb - Function to execute when click fires
159
+ */
160
+ onPointerDrag(pointerData: {
161
+ entity: Entity;
162
+ opts?: Partial<EventSystemOptions>;
163
+ }, cb: EventSystemCallback): void;
164
+ /**
165
+ * @public
166
+ * Execute callbacks when the user drags the pointer from inside the entity, locking the cursor in place.
167
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
168
+ */
169
+ onPointerDragLocked(pointerData: {
170
+ entity: Entity;
171
+ optsList: EventSystemOptionsCallback[];
172
+ }): void;
173
+ /**
174
+ * @public
175
+ * Execute callback when the user clicks and drags the pointer from inside the entity,
176
+ * locking the cursor in place
177
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
178
+ * @param cb - Function to execute when click fires
179
+ */
180
+ onPointerDragLocked(pointerData: {
181
+ entity: Entity;
182
+ opts?: Partial<EventSystemOptions>;
183
+ }, cb: EventSystemCallback): void;
184
+ /**
185
+ * @public
186
+ * Execute callbacks when the user releases a button after a drag
187
+ * @param pointerData - Entity to attach the callbacks, list of options to trigger Feedback, Button, and Callback
188
+ */
189
+ onPointerDragEnd(pointerData: {
190
+ entity: Entity;
191
+ optsList: EventSystemOptionsCallback[];
192
+ }): void;
193
+ /**
194
+ * @public
195
+ * Execute callback when the user releases the button after a drag
196
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
197
+ * @param cb - Function to execute when click fires
198
+ */
199
+ onPointerDragEnd(pointerData: {
200
+ entity: Entity;
201
+ opts?: Partial<EventSystemOptions>;
202
+ }, cb: EventSystemCallback): void;
104
203
  }
105
204
  /**
106
205
  * @public
@@ -18,6 +18,9 @@ export function createPointerEventsSystem(engine, inputSystem) {
18
18
  EventType[EventType["Up"] = 2] = "Up";
19
19
  EventType[EventType["HoverEnter"] = 3] = "HoverEnter";
20
20
  EventType[EventType["HoverLeave"] = 4] = "HoverLeave";
21
+ EventType[EventType["Drag"] = 5] = "Drag";
22
+ EventType[EventType["DragLocked"] = 6] = "DragLocked";
23
+ EventType[EventType["DragEnd"] = 7] = "DragEnd";
21
24
  })(EventType || (EventType = {}));
22
25
  const eventsMap = new Map();
23
26
  function getEvent(entity) {
@@ -53,77 +56,148 @@ export function createPointerEventsSystem(engine, inputSystem) {
53
56
  else if (eventType === EventType.HoverEnter) {
54
57
  return 2 /* PointerEventType.PET_HOVER_ENTER */;
55
58
  }
59
+ else if (eventType === EventType.Drag) {
60
+ return 5 /* PointerEventType.PET_DRAG */;
61
+ }
62
+ else if (eventType === EventType.DragLocked) {
63
+ return 4 /* PointerEventType.PET_DRAG_LOCKED */;
64
+ }
65
+ else if (eventType === EventType.DragEnd) {
66
+ return 6 /* PointerEventType.PET_DRAG_END */;
67
+ }
56
68
  return 1 /* PointerEventType.PET_DOWN */;
57
69
  }
70
+ function getEventType(pet) {
71
+ if (pet === 0 /* PointerEventType.PET_UP */) {
72
+ return EventType.Up;
73
+ }
74
+ else if (pet === 2 /* PointerEventType.PET_HOVER_ENTER */) {
75
+ return EventType.HoverEnter;
76
+ }
77
+ else if (pet === 3 /* PointerEventType.PET_HOVER_LEAVE */) {
78
+ return EventType.HoverLeave;
79
+ }
80
+ else if (pet === 5 /* PointerEventType.PET_DRAG */) {
81
+ return EventType.Drag;
82
+ }
83
+ else if (pet === 4 /* PointerEventType.PET_DRAG_LOCKED */) {
84
+ return EventType.DragLocked;
85
+ }
86
+ else if (pet === 6 /* PointerEventType.PET_DRAG_END */) {
87
+ return EventType.DragEnd;
88
+ }
89
+ else {
90
+ return EventType.Down;
91
+ }
92
+ }
58
93
  function removeEvent(entity, type) {
59
94
  const event = getEvent(entity);
60
- const pointerEvent = event.get(type);
61
- if (pointerEvent?.opts.hoverText) {
62
- removePointerEvent(entity, getPointerEvent(type), pointerEvent.opts.button);
95
+ const pointerEventList = event.get(type);
96
+ if (pointerEventList === undefined) {
97
+ return;
98
+ }
99
+ for (const button of pointerEventList.keys()) {
100
+ removePointerEvent(entity, getPointerEvent(type), button);
63
101
  }
64
102
  event.delete(type);
65
103
  }
66
104
  engine.addSystem(function EventSystem() {
67
- for (const [entity, event] of eventsMap) {
105
+ if (eventsMap.size === 0) {
106
+ return;
107
+ }
108
+ for (const entity of eventsMap.keys()) {
68
109
  if (engine.getEntityState(entity) === EntityState.Removed) {
69
110
  eventsMap.delete(entity);
111
+ }
112
+ }
113
+ for (const command of inputSystem.getInputCommands()) {
114
+ const entity = command.hit?.entityId;
115
+ if (entity === undefined) {
116
+ continue;
117
+ }
118
+ const entityMap = eventsMap.get(entity);
119
+ if (entityMap === undefined) {
70
120
  continue;
71
121
  }
72
- for (const [eventType, { cb, opts }] of event) {
73
- if (eventType === EventType.Click) {
74
- const command = inputSystem.getClick(opts.button, entity);
75
- if (command)
76
- checkNotThenable(cb(command.up), 'Click event returned a thenable. Only synchronous functions are allowed');
122
+ const typeMap = entityMap.get(getEventType(command.state));
123
+ if (typeMap) {
124
+ const data = typeMap.get(command.button);
125
+ if (data) {
126
+ checkNotThenable(data.cb(command), 'Event handler returned a thenable. Only synchronous functions are allowed');
77
127
  }
78
- if (eventType === EventType.Down ||
79
- eventType === EventType.Up ||
80
- eventType === EventType.HoverEnter ||
81
- eventType === EventType.HoverLeave) {
82
- const command = inputSystem.getInputCommand(opts.button, getPointerEvent(eventType), entity);
83
- if (command) {
84
- checkNotThenable(cb(command), 'Event handler returned a thenable. Only synchronous functions are allowed');
128
+ const anyData = typeMap.get(3 /* InputAction.IA_ANY */);
129
+ if (anyData) {
130
+ checkNotThenable(anyData.cb(command), 'Event handler returned a thenable. Only synchronous functions are allowed');
131
+ }
132
+ }
133
+ // check clicks separately
134
+ if (command.state === 0 /* PointerEventType.PET_UP */) {
135
+ const clickMap = entityMap.get(EventType.Click);
136
+ if (clickMap) {
137
+ const data = clickMap.get(command.button);
138
+ if (data && inputSystem.getClick(command.button, entity)) {
139
+ checkNotThenable(data.cb(command), 'Click event returned a thenable. Only synchronous functions are allowed');
140
+ }
141
+ const anyData = clickMap.get(3 /* InputAction.IA_ANY */);
142
+ if (anyData && inputSystem.getClick(command.button, entity)) {
143
+ checkNotThenable(anyData.cb(command), 'Event handler returned a thenable. Only synchronous functions are allowed');
85
144
  }
86
145
  }
87
146
  }
88
147
  }
89
148
  });
90
- const onPointerDown = (...args) => {
91
- const [data, cb, maybeOpts] = args;
92
- if (typeof data === 'number') {
93
- return onPointerDown({ entity: data, opts: maybeOpts ?? {} }, cb);
94
- }
95
- const { entity, opts } = data;
96
- const options = getDefaultOpts(opts);
97
- removeEvent(entity, EventType.Down);
98
- getEvent(entity).set(EventType.Down, { cb, opts: options });
99
- setPointerEvent(entity, 1 /* PointerEventType.PET_DOWN */, options);
100
- };
101
- const onPointerUp = (...args) => {
102
- const [data, cb, maybeOpts] = args;
103
- if (typeof data === 'number') {
104
- return onPointerUp({ entity: data, opts: maybeOpts ?? {} }, cb);
105
- }
106
- const { entity, opts } = data;
107
- const options = getDefaultOpts(opts);
108
- removeEvent(entity, EventType.Up);
109
- getEvent(entity).set(EventType.Up, { cb, opts: options });
110
- setPointerEvent(entity, 0 /* PointerEventType.PET_UP */, options);
111
- };
112
- const onPointerHoverEnter = (...args) => {
113
- const [data, cb] = args;
114
- const { entity, opts } = data;
115
- const options = getDefaultOpts(opts);
116
- removeEvent(entity, EventType.HoverEnter);
117
- getEvent(entity).set(EventType.HoverEnter, { cb, opts: options });
118
- setPointerEvent(entity, 2 /* PointerEventType.PET_HOVER_ENTER */, options);
119
- };
120
- const onPointerHoverLeave = (...args) => {
121
- const [data, cb] = args;
122
- const { entity, opts } = data;
123
- const options = getDefaultOpts(opts);
124
- removeEvent(entity, EventType.HoverLeave);
125
- getEvent(entity).set(EventType.HoverLeave, { cb, opts: options });
126
- setPointerEvent(entity, 3 /* PointerEventType.PET_HOVER_LEAVE */, options);
149
+ // return a function with the correct event type.
150
+ // we use onPointerDown as the "archetype" for the returned function, but it fits with
151
+ // all the onPointer* declarations
152
+ const onPointerFunction = (ty) => {
153
+ return (arg0, arg1, arg2) => {
154
+ let entity;
155
+ let optsList;
156
+ if (typeof arg0 === 'number') {
157
+ // called as onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void
158
+ entity = arg0;
159
+ const cb = arg1;
160
+ const opts = arg2;
161
+ optsList = [{ cb, ...getDefaultOpts(opts) }];
162
+ }
163
+ else if (typeof arg1 === 'function') {
164
+ // called as onPointerDown(pointerData: { entity: Entity; opts?: Partial<EventSystemOptions> }, cb: EventSystemCallback): void
165
+ const { entity: e, opts } = arg0;
166
+ const cb = arg1;
167
+ entity = e;
168
+ optsList = [{ cb, ...getDefaultOpts(opts) }];
169
+ }
170
+ else {
171
+ // called as onPointerDown(pointerData: { entity: Entity; optsList: EventSystemOptionsCallback[] }): void
172
+ const { entity: e, optsList: o } = arg0;
173
+ entity = e;
174
+ optsList = o;
175
+ }
176
+ const previous = getEvent(entity).get(ty) ?? new Map();
177
+ const callbacks = new Map();
178
+ for (const opts of optsList) {
179
+ const prevOpts = previous.get(opts.button);
180
+ if (prevOpts !== undefined) {
181
+ if (prevOpts.hoverText !== opts.hoverText ||
182
+ prevOpts.maxDistance !== opts.maxDistance ||
183
+ prevOpts.showFeedback !== opts.showFeedback ||
184
+ prevOpts.showHighlight !== opts.showHighlight) {
185
+ removePointerEvent(entity, getPointerEvent(ty), opts.button);
186
+ setPointerEvent(entity, getPointerEvent(ty), opts);
187
+ }
188
+ }
189
+ else {
190
+ setPointerEvent(entity, getPointerEvent(ty), opts);
191
+ }
192
+ callbacks.set(opts.button, opts);
193
+ }
194
+ for (const button of previous.keys()) {
195
+ if (!callbacks.has(button)) {
196
+ removePointerEvent(entity, getPointerEvent(ty), button);
197
+ }
198
+ }
199
+ getEvent(entity).set(ty, callbacks);
200
+ };
127
201
  };
128
202
  return {
129
203
  removeOnClick(entity) {
@@ -141,18 +215,22 @@ export function createPointerEventsSystem(engine, inputSystem) {
141
215
  removeOnPointerHoverLeave(entity) {
142
216
  removeEvent(entity, EventType.HoverLeave);
143
217
  },
144
- onClick(value, cb) {
145
- const { entity } = value;
146
- const options = getDefaultOpts(value.opts);
147
- // Clear previous event with over feedback included
148
- removeEvent(entity, EventType.Click);
149
- // Set new event
150
- getEvent(entity).set(EventType.Click, { cb, opts: options });
151
- setPointerEvent(entity, 1 /* PointerEventType.PET_DOWN */, options);
218
+ removeOnPointerDrag(entity) {
219
+ removeEvent(entity, EventType.Drag);
220
+ },
221
+ removeOnPointerDragLocked(entity) {
222
+ removeEvent(entity, EventType.DragLocked);
223
+ },
224
+ removeOnPointerDragEnd(entity) {
225
+ removeEvent(entity, EventType.DragEnd);
152
226
  },
153
- onPointerDown,
154
- onPointerUp,
155
- onPointerHoverEnter,
156
- onPointerHoverLeave
227
+ onClick: onPointerFunction(EventType.Click),
228
+ onPointerDown: onPointerFunction(EventType.Down),
229
+ onPointerUp: onPointerFunction(EventType.Up),
230
+ onPointerHoverEnter: onPointerFunction(EventType.HoverEnter),
231
+ onPointerHoverLeave: onPointerFunction(EventType.HoverLeave),
232
+ onPointerDrag: onPointerFunction(EventType.Drag),
233
+ onPointerDragLocked: onPointerFunction(EventType.DragLocked),
234
+ onPointerDragEnd: onPointerFunction(EventType.DragEnd)
157
235
  };
158
236
  }
@@ -1,4 +1,4 @@
1
- import { RaycastQueryType, PBRaycastResult } from '../components';
1
+ import { RaycastQueryType, RaycastShape, PBRaycastResult } from '../components';
2
2
  import { DeepReadonlyObject, Entity } from '../engine';
3
3
  import { Vector3 } from '../components/generated/pb/decentraland/common/vectors.gen';
4
4
  /**
@@ -14,6 +14,8 @@ export type RaycastSystemOptions = {
14
14
  queryType: RaycastQueryType;
15
15
  continuous?: boolean | undefined;
16
16
  collisionMask?: number | undefined;
17
+ shape?: RaycastShape | undefined;
18
+ includeWorld?: boolean | undefined;
17
19
  };
18
20
  export type LocalDirectionRaycastSystemOptions = {
19
21
  direction?: Vector3;
@@ -58,6 +58,8 @@ export function createRaycastSystem(engine) {
58
58
  raycast.direction = raycastValue.directionRawValue;
59
59
  raycast.continuous = raycastValue.continuous;
60
60
  raycast.queryType = raycastValue.queryType;
61
+ raycast.shape = raycastValue.shape;
62
+ raycast.includeWorld = raycastValue.includeWorld;
61
63
  entitiesCallbackResultMap.set(entity, { callback: callback });
62
64
  };
63
65
  nextTickRaycasts.push(onNextTick);
@@ -0,0 +1,10 @@
1
+ import { IEngine, LastWriteWinElementSetComponentDefinition } from '../../engine';
2
+ import { PBAvatarEquippedData } from '../generated/pb/decentraland/sdk/components/avatar_equipped_data.gen';
3
+ /**
4
+ * @public
5
+ */
6
+ export type AvatarEquippedDataComponentDefinitionExtended = LastWriteWinElementSetComponentDefinition<AvatarEquippedDataType>;
7
+ export type AvatarEquippedDataType = Omit<PBAvatarEquippedData, 'forceRender'> & {
8
+ forceRender?: string[] | undefined;
9
+ };
10
+ export declare function defineAvatarEquippedDataComponent(engine: Pick<IEngine, 'defineComponentFromSchema'>): AvatarEquippedDataComponentDefinitionExtended;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineAvatarEquippedDataComponent = void 0;
4
+ const AvatarEquippedData_gen_1 = require("../generated/AvatarEquippedData.gen");
5
+ function defineAvatarEquippedDataComponent(engine) {
6
+ const patchedSchema = { ...AvatarEquippedData_gen_1.AvatarEquippedDataSchema };
7
+ const origSerialize = patchedSchema.serialize;
8
+ patchedSchema.serialize = (value, builder) => {
9
+ if (value.forceRender === undefined) {
10
+ origSerialize({ forceRender: [], ...value }, builder);
11
+ }
12
+ else {
13
+ origSerialize(value, builder);
14
+ }
15
+ };
16
+ const theComponent = engine.defineComponentFromSchema('core::AvatarEquippedData', patchedSchema);
17
+ return theComponent;
18
+ }
19
+ exports.defineAvatarEquippedDataComponent = defineAvatarEquippedDataComponent;
@@ -0,0 +1,10 @@
1
+ import { IEngine, LastWriteWinElementSetComponentDefinition } from '../../engine';
2
+ import { PBAvatarShape } from '../generated/pb/decentraland/sdk/components/avatar_shape.gen';
3
+ /**
4
+ * @public
5
+ */
6
+ export type AvatarShapeComponentDefinitionExtended = LastWriteWinElementSetComponentDefinition<AvatarShapeType>;
7
+ export type AvatarShapeType = Omit<PBAvatarShape, 'forceRender'> & {
8
+ forceRender?: string[] | undefined;
9
+ };
10
+ export declare function defineAvatarShapeComponent(engine: Pick<IEngine, 'defineComponentFromSchema'>): AvatarShapeComponentDefinitionExtended;