@dcl/ecs 7.0.6-3807227301.commit-1045452 → 7.0.6-3808564125.commit-7a2650b

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 (42) hide show
  1. package/dist/components/generated/PointerEvents.gen.d.ts +8 -0
  2. package/dist/components/generated/PointerEvents.gen.js +19 -0
  3. package/dist/components/generated/UiDropdown.gen.d.ts +8 -0
  4. package/dist/components/generated/UiDropdown.gen.js +19 -0
  5. package/dist/components/generated/UiDropdownResult.gen.d.ts +8 -0
  6. package/dist/components/generated/UiDropdownResult.gen.js +19 -0
  7. package/dist/components/generated/UiInput.gen.d.ts +8 -0
  8. package/dist/components/generated/UiInput.gen.js +19 -0
  9. package/dist/components/generated/UiInputResult.gen.d.ts +8 -0
  10. package/dist/components/generated/UiInputResult.gen.js +19 -0
  11. package/dist/components/generated/global.gen.d.ts +10 -2
  12. package/dist/components/generated/global.gen.js +5 -1
  13. package/dist/components/generated/ids.gen.d.ts +5 -1
  14. package/dist/components/generated/ids.gen.js +5 -1
  15. package/dist/components/generated/index.gen.d.ts +15 -3
  16. package/dist/components/generated/index.gen.js +15 -3
  17. package/dist/components/generated/pb/decentraland/common/border_rect.gen.d.ts +15 -0
  18. package/dist/components/generated/pb/decentraland/common/border_rect.gen.js +52 -0
  19. package/dist/components/generated/pb/decentraland/sdk/components/{pointer_hover_feedback.gen.d.ts → pointer_events.gen.d.ts} +14 -14
  20. package/dist/components/generated/pb/decentraland/sdk/components/{pointer_hover_feedback.gen.js → pointer_events.gen.js} +13 -13
  21. package/dist/components/generated/pb/decentraland/sdk/components/pointer_events_result.gen.d.ts +1 -1
  22. package/dist/components/generated/pb/decentraland/sdk/components/ui_background.gen.d.ts +30 -2
  23. package/dist/components/generated/pb/decentraland/sdk/components/ui_background.gen.js +61 -4
  24. package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown.gen.d.ts +26 -0
  25. package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown.gen.js +93 -0
  26. package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown_result.gen.d.ts +11 -0
  27. package/dist/components/generated/pb/decentraland/sdk/components/ui_dropdown_result.gen.js +34 -0
  28. package/dist/components/generated/pb/decentraland/sdk/components/ui_input.gen.d.ts +24 -0
  29. package/dist/components/generated/pb/decentraland/sdk/components/ui_input.gen.js +79 -0
  30. package/dist/components/generated/pb/decentraland/sdk/components/ui_input_result.gen.d.ts +11 -0
  31. package/dist/components/generated/pb/decentraland/sdk/components/ui_input_result.gen.js +34 -0
  32. package/dist/components/generated/types.gen.d.ts +1 -0
  33. package/dist/components/generated/types.gen.js +2 -0
  34. package/dist/engine/input.d.ts +1 -1
  35. package/dist/runtime/initialization/index.d.ts +3 -3
  36. package/dist/runtime/types.d.ts +6 -19
  37. package/dist/runtime/types.js +2 -17
  38. package/dist/systems/events.d.ts +5 -4
  39. package/dist/systems/events.js +11 -14
  40. package/package.json +4 -4
  41. package/dist/components/generated/PointerHoverFeedback.gen.d.ts +0 -8
  42. package/dist/components/generated/PointerHoverFeedback.gen.js +0 -19
@@ -1,18 +1,55 @@
1
1
  /* eslint-disable */
2
2
  import { Color4 } from '../../common/colors.gen';
3
+ import { TextureUnion } from '../../common/texture.gen';
4
+ import { BorderRect } from '../../common/border_rect.gen';
3
5
  import _m0 from 'protobufjs/minimal';
4
6
  const protobufPackage = 'decentraland.sdk.components';
7
+ export var BackgroundTextureMode;
8
+ (function (BackgroundTextureMode) {
9
+ /**
10
+ * NINE_SLICES - https://docs.unity3d.com/Manual/UIE-USS-SupportedProperties.html (Slicing section)
11
+ * https://forum.unity.com/threads/how-does-slicing-in-ui-tookkit-works.1235863/
12
+ * https://docs.unity3d.com/Manual/9SliceSprites.html
13
+ * https://developer.mozilla.org/en-US/docs/Web/CSS/border-image-slice
14
+ */
15
+ BackgroundTextureMode[BackgroundTextureMode["NINE_SLICES"] = 0] = "NINE_SLICES";
16
+ /**
17
+ * CENTER - CENTER enables the texture to be rendered centered in relation to the
18
+ * element. If the element is smaller than the texture then the background
19
+ * should use the element as stencil to cut off the out-of-bounds area
20
+ */
21
+ BackgroundTextureMode[BackgroundTextureMode["CENTER"] = 1] = "CENTER";
22
+ /**
23
+ * STRETCH - STRETCH enables the texture to cover all the area of the container,
24
+ * adopting its aspect ratio.
25
+ */
26
+ BackgroundTextureMode[BackgroundTextureMode["STRETCH"] = 2] = "STRETCH";
27
+ })(BackgroundTextureMode || (BackgroundTextureMode = {}));
5
28
  function createBasePBUiBackground() {
6
- return { backgroundColor: undefined };
29
+ return { color: undefined, texture: undefined, textureMode: 0, textureSlices: undefined, uvs: [] };
7
30
  }
8
31
  /**
9
32
  * Internal
10
33
  */
11
34
  export const PBUiBackground = {
12
35
  encode(message, writer = _m0.Writer.create()) {
13
- if (message.backgroundColor !== undefined) {
14
- Color4.encode(message.backgroundColor, writer.uint32(10).fork()).ldelim();
36
+ if (message.color !== undefined) {
37
+ Color4.encode(message.color, writer.uint32(10).fork()).ldelim();
15
38
  }
39
+ if (message.texture !== undefined) {
40
+ TextureUnion.encode(message.texture, writer.uint32(18).fork()).ldelim();
41
+ }
42
+ if (message.textureMode !== 0) {
43
+ writer.uint32(24).int32(message.textureMode);
44
+ }
45
+ if (message.textureSlices !== undefined) {
46
+ BorderRect.encode(message.textureSlices, writer.uint32(34).fork()).ldelim();
47
+ }
48
+ writer.uint32(42).fork();
49
+ for (const v of message.uvs) {
50
+ writer.float(v);
51
+ }
52
+ writer.ldelim();
16
53
  return writer;
17
54
  },
18
55
  decode(input, length) {
@@ -23,7 +60,27 @@ export const PBUiBackground = {
23
60
  const tag = reader.uint32();
24
61
  switch (tag >>> 3) {
25
62
  case 1:
26
- message.backgroundColor = Color4.decode(reader, reader.uint32());
63
+ message.color = Color4.decode(reader, reader.uint32());
64
+ break;
65
+ case 2:
66
+ message.texture = TextureUnion.decode(reader, reader.uint32());
67
+ break;
68
+ case 3:
69
+ message.textureMode = reader.int32();
70
+ break;
71
+ case 4:
72
+ message.textureSlices = BorderRect.decode(reader, reader.uint32());
73
+ break;
74
+ case 5:
75
+ if ((tag & 7) === 2) {
76
+ const end2 = reader.uint32() + reader.pos;
77
+ while (reader.pos < end2) {
78
+ message.uvs.push(reader.float());
79
+ }
80
+ }
81
+ else {
82
+ message.uvs.push(reader.float());
83
+ }
27
84
  break;
28
85
  default:
29
86
  reader.skipType(tag & 7);
@@ -0,0 +1,26 @@
1
+ import { Color4 } from '../../common/colors.gen';
2
+ import { TextAlignMode, Font } from './common/texts.gen';
3
+ import _m0 from 'protobufjs/minimal';
4
+ export interface PBUiDropdown {
5
+ acceptEmpty: boolean;
6
+ emptyLabel?: string | undefined;
7
+ options: string[];
8
+ /** default=null when accept_empty==true; default=0 when accept_empty==false */
9
+ selectedIndex?: number | undefined;
10
+ disabled: boolean;
11
+ /** default=(0.0,0.0,0.0,1.0) */
12
+ color?: Color4 | undefined;
13
+ /** default='center' */
14
+ textAlign?: TextAlignMode | undefined;
15
+ /** default=0 */
16
+ font?: Font | undefined;
17
+ /** default=10 */
18
+ fontSize?: number | undefined;
19
+ }
20
+ /**
21
+ * Internal
22
+ */
23
+ export declare const PBUiDropdown: {
24
+ encode(message: PBUiDropdown, writer?: _m0.Writer): _m0.Writer;
25
+ decode(input: _m0.Reader | Uint8Array, length?: number): PBUiDropdown;
26
+ };
@@ -0,0 +1,93 @@
1
+ /* eslint-disable */
2
+ import { Color4 } from '../../common/colors.gen';
3
+ import _m0 from 'protobufjs/minimal';
4
+ const protobufPackage = 'decentraland.sdk.components';
5
+ function createBasePBUiDropdown() {
6
+ return {
7
+ acceptEmpty: false,
8
+ emptyLabel: undefined,
9
+ options: [],
10
+ selectedIndex: undefined,
11
+ disabled: false,
12
+ color: undefined,
13
+ textAlign: undefined,
14
+ font: undefined,
15
+ fontSize: undefined
16
+ };
17
+ }
18
+ /**
19
+ * Internal
20
+ */
21
+ export const PBUiDropdown = {
22
+ encode(message, writer = _m0.Writer.create()) {
23
+ if (message.acceptEmpty === true) {
24
+ writer.uint32(8).bool(message.acceptEmpty);
25
+ }
26
+ if (message.emptyLabel !== undefined) {
27
+ writer.uint32(18).string(message.emptyLabel);
28
+ }
29
+ for (const v of message.options) {
30
+ writer.uint32(26).string(v);
31
+ }
32
+ if (message.selectedIndex !== undefined) {
33
+ writer.uint32(32).int32(message.selectedIndex);
34
+ }
35
+ if (message.disabled === true) {
36
+ writer.uint32(40).bool(message.disabled);
37
+ }
38
+ if (message.color !== undefined) {
39
+ Color4.encode(message.color, writer.uint32(50).fork()).ldelim();
40
+ }
41
+ if (message.textAlign !== undefined) {
42
+ writer.uint32(80).int32(message.textAlign);
43
+ }
44
+ if (message.font !== undefined) {
45
+ writer.uint32(88).int32(message.font);
46
+ }
47
+ if (message.fontSize !== undefined) {
48
+ writer.uint32(96).int32(message.fontSize);
49
+ }
50
+ return writer;
51
+ },
52
+ decode(input, length) {
53
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
54
+ let end = length === undefined ? reader.len : reader.pos + length;
55
+ const message = createBasePBUiDropdown();
56
+ while (reader.pos < end) {
57
+ const tag = reader.uint32();
58
+ switch (tag >>> 3) {
59
+ case 1:
60
+ message.acceptEmpty = reader.bool();
61
+ break;
62
+ case 2:
63
+ message.emptyLabel = reader.string();
64
+ break;
65
+ case 3:
66
+ message.options.push(reader.string());
67
+ break;
68
+ case 4:
69
+ message.selectedIndex = reader.int32();
70
+ break;
71
+ case 5:
72
+ message.disabled = reader.bool();
73
+ break;
74
+ case 6:
75
+ message.color = Color4.decode(reader, reader.uint32());
76
+ break;
77
+ case 10:
78
+ message.textAlign = reader.int32();
79
+ break;
80
+ case 11:
81
+ message.font = reader.int32();
82
+ break;
83
+ case 12:
84
+ message.fontSize = reader.int32();
85
+ break;
86
+ default:
87
+ reader.skipType(tag & 7);
88
+ break;
89
+ }
90
+ }
91
+ return message;
92
+ }
93
+ };
@@ -0,0 +1,11 @@
1
+ import _m0 from 'protobufjs/minimal';
2
+ export interface PBUiDropdownResult {
3
+ value: number;
4
+ }
5
+ /**
6
+ * Internal
7
+ */
8
+ export declare const PBUiDropdownResult: {
9
+ encode(message: PBUiDropdownResult, writer?: _m0.Writer): _m0.Writer;
10
+ decode(input: _m0.Reader | Uint8Array, length?: number): PBUiDropdownResult;
11
+ };
@@ -0,0 +1,34 @@
1
+ /* eslint-disable */
2
+ import _m0 from 'protobufjs/minimal';
3
+ const protobufPackage = 'decentraland.sdk.components';
4
+ function createBasePBUiDropdownResult() {
5
+ return { value: 0 };
6
+ }
7
+ /**
8
+ * Internal
9
+ */
10
+ export const PBUiDropdownResult = {
11
+ encode(message, writer = _m0.Writer.create()) {
12
+ if (message.value !== 0) {
13
+ writer.uint32(8).int32(message.value);
14
+ }
15
+ return writer;
16
+ },
17
+ decode(input, length) {
18
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
19
+ let end = length === undefined ? reader.len : reader.pos + length;
20
+ const message = createBasePBUiDropdownResult();
21
+ while (reader.pos < end) {
22
+ const tag = reader.uint32();
23
+ switch (tag >>> 3) {
24
+ case 1:
25
+ message.value = reader.int32();
26
+ break;
27
+ default:
28
+ reader.skipType(tag & 7);
29
+ break;
30
+ }
31
+ }
32
+ return message;
33
+ }
34
+ };
@@ -0,0 +1,24 @@
1
+ import { Color4 } from '../../common/colors.gen';
2
+ import { TextAlignMode, Font } from './common/texts.gen';
3
+ import _m0 from 'protobufjs/minimal';
4
+ export interface PBUiInput {
5
+ placeholder: string;
6
+ /** default=(0.0,0.0,0.0,1.0) */
7
+ color?: Color4 | undefined;
8
+ /** default=(0.3,0.3,0.3,1.0) */
9
+ placeholderColor?: Color4 | undefined;
10
+ disabled: boolean;
11
+ /** default='center' */
12
+ textAlign?: TextAlignMode | undefined;
13
+ /** default=0 */
14
+ font?: Font | undefined;
15
+ /** default=10 */
16
+ fontSize?: number | undefined;
17
+ }
18
+ /**
19
+ * Internal
20
+ */
21
+ export declare const PBUiInput: {
22
+ encode(message: PBUiInput, writer?: _m0.Writer): _m0.Writer;
23
+ decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInput;
24
+ };
@@ -0,0 +1,79 @@
1
+ /* eslint-disable */
2
+ import { Color4 } from '../../common/colors.gen';
3
+ import _m0 from 'protobufjs/minimal';
4
+ const protobufPackage = 'decentraland.sdk.components';
5
+ function createBasePBUiInput() {
6
+ return {
7
+ placeholder: '',
8
+ color: undefined,
9
+ placeholderColor: undefined,
10
+ disabled: false,
11
+ textAlign: undefined,
12
+ font: undefined,
13
+ fontSize: undefined
14
+ };
15
+ }
16
+ /**
17
+ * Internal
18
+ */
19
+ export const PBUiInput = {
20
+ encode(message, writer = _m0.Writer.create()) {
21
+ if (message.placeholder !== '') {
22
+ writer.uint32(10).string(message.placeholder);
23
+ }
24
+ if (message.color !== undefined) {
25
+ Color4.encode(message.color, writer.uint32(18).fork()).ldelim();
26
+ }
27
+ if (message.placeholderColor !== undefined) {
28
+ Color4.encode(message.placeholderColor, writer.uint32(26).fork()).ldelim();
29
+ }
30
+ if (message.disabled === true) {
31
+ writer.uint32(32).bool(message.disabled);
32
+ }
33
+ if (message.textAlign !== undefined) {
34
+ writer.uint32(80).int32(message.textAlign);
35
+ }
36
+ if (message.font !== undefined) {
37
+ writer.uint32(88).int32(message.font);
38
+ }
39
+ if (message.fontSize !== undefined) {
40
+ writer.uint32(96).int32(message.fontSize);
41
+ }
42
+ return writer;
43
+ },
44
+ decode(input, length) {
45
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
46
+ let end = length === undefined ? reader.len : reader.pos + length;
47
+ const message = createBasePBUiInput();
48
+ while (reader.pos < end) {
49
+ const tag = reader.uint32();
50
+ switch (tag >>> 3) {
51
+ case 1:
52
+ message.placeholder = reader.string();
53
+ break;
54
+ case 2:
55
+ message.color = Color4.decode(reader, reader.uint32());
56
+ break;
57
+ case 3:
58
+ message.placeholderColor = Color4.decode(reader, reader.uint32());
59
+ break;
60
+ case 4:
61
+ message.disabled = reader.bool();
62
+ break;
63
+ case 10:
64
+ message.textAlign = reader.int32();
65
+ break;
66
+ case 11:
67
+ message.font = reader.int32();
68
+ break;
69
+ case 12:
70
+ message.fontSize = reader.int32();
71
+ break;
72
+ default:
73
+ reader.skipType(tag & 7);
74
+ break;
75
+ }
76
+ }
77
+ return message;
78
+ }
79
+ };
@@ -0,0 +1,11 @@
1
+ import _m0 from 'protobufjs/minimal';
2
+ export interface PBUiInputResult {
3
+ value: string;
4
+ }
5
+ /**
6
+ * Internal
7
+ */
8
+ export declare const PBUiInputResult: {
9
+ encode(message: PBUiInputResult, writer?: _m0.Writer): _m0.Writer;
10
+ decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
11
+ };
@@ -0,0 +1,34 @@
1
+ /* eslint-disable */
2
+ import _m0 from 'protobufjs/minimal';
3
+ const protobufPackage = 'decentraland.sdk.components';
4
+ function createBasePBUiInputResult() {
5
+ return { value: '' };
6
+ }
7
+ /**
8
+ * Internal
9
+ */
10
+ export const PBUiInputResult = {
11
+ encode(message, writer = _m0.Writer.create()) {
12
+ if (message.value !== '') {
13
+ writer.uint32(10).string(message.value);
14
+ }
15
+ return writer;
16
+ },
17
+ decode(input, length) {
18
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
19
+ let end = length === undefined ? reader.len : reader.pos + length;
20
+ const message = createBasePBUiInputResult();
21
+ while (reader.pos < end) {
22
+ const tag = reader.uint32();
23
+ switch (tag >>> 3) {
24
+ case 1:
25
+ message.value = reader.string();
26
+ break;
27
+ default:
28
+ reader.skipType(tag & 7);
29
+ break;
30
+ }
31
+ }
32
+ return message;
33
+ }
34
+ };
@@ -3,4 +3,5 @@ export type { Color3 as PBColor3, Color4 as PBColor4 } from './pb/decentraland/c
3
3
  export * from './pb/decentraland/sdk/components/common/camera_type.gen';
4
4
  export * from './pb/decentraland/sdk/components/common/input_action.gen';
5
5
  export * from './pb/decentraland/sdk/components/common/texts.gen';
6
+ export * from './pb/decentraland/common/border_rect.gen';
6
7
  export * from './pb/decentraland/common/texture.gen';
@@ -4,5 +4,7 @@ export * from './pb/decentraland/sdk/components/common/input_action.gen';
4
4
  // export { PbInputAction }
5
5
  export * from './pb/decentraland/sdk/components/common/texts.gen';
6
6
  // export { PbTexts }
7
+ export * from './pb/decentraland/common/border_rect.gen';
8
+ // export { PbBorderRect }
7
9
  export * from './pb/decentraland/common/texture.gen';
8
10
  // export { PbTexture }
@@ -1,5 +1,5 @@
1
1
  import { InputAction } from '../components/generated/pb/decentraland/sdk/components/common/input_action.gen';
2
- import { PointerEventType } from '../components/generated/pb/decentraland/sdk/components/pointer_hover_feedback.gen';
2
+ import { PointerEventType } from '../components/generated/pb/decentraland/sdk/components/pointer_events.gen';
3
3
  import { PBPointerEventsResult_PointerCommand } from '../components/generated/pb/decentraland/sdk/components/pointer_events_result.gen';
4
4
  import { Entity } from './entity';
5
5
  import { IEngine } from './types';
@@ -10,9 +10,9 @@ export declare const pointerEventsSystem: {
10
10
  removeOnClick(entity: unknown): void;
11
11
  removeOnPointerDown(entity: unknown): void;
12
12
  removeOnPointerUp(entity: unknown): void;
13
- onClick(entity: unknown, cb: import("../../systems/events").EventSystemCallback, opts?: import("../../systems/events").EventSystemOptions | undefined): void;
14
- onPointerDown(entity: unknown, cb: import("../../systems/events").EventSystemCallback, opts?: import("../../systems/events").EventSystemOptions | undefined): void;
15
- onPointerUp(entity: unknown, cb: import("../../systems/events").EventSystemCallback, opts?: import("../../systems/events").EventSystemOptions | undefined): void;
13
+ onClick(entity: unknown, cb: import("../../systems/events").EventSystemCallback, opts?: Partial<import("../../systems/events").EventSystemOptions> | undefined): void;
14
+ onPointerDown(entity: unknown, cb: import("../../systems/events").EventSystemCallback, opts?: Partial<import("../../systems/events").EventSystemOptions> | undefined): void;
15
+ onPointerUp(entity: unknown, cb: import("../../systems/events").EventSystemCallback, opts?: Partial<import("../../systems/events").EventSystemOptions> | undefined): void;
16
16
  };
17
17
  /**
18
18
  * @public
@@ -1,22 +1,9 @@
1
- export * from '../components/generated/pb/decentraland/common/texture.gen';
2
- export * from '../components/generated/pb/decentraland/sdk/components/animator.gen';
3
- export * from '../components/generated/pb/decentraland/sdk/components/avatar_attach.gen';
4
- export { AvatarModifierType } from '../components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen';
5
- export { BillboardMode } from '../components/generated/pb/decentraland/sdk/components/billboard.gen';
6
- export { CameraType } from '../components/generated/pb/decentraland/sdk/components/common/camera_type.gen';
7
- export { Font, TextAlignMode } from '../components/generated/pb/decentraland/sdk/components/common/texts.gen';
8
- export * from '../components/generated/pb/decentraland/sdk/components/material.gen';
9
- export * from '../components/generated/pb/decentraland/sdk/components/mesh_collider.gen';
10
- export * from '../components/generated/pb/decentraland/sdk/components/mesh_renderer.gen';
11
- export * from '../components/generated/pb/decentraland/sdk/components/pointer_events_result.gen';
12
- export * from '../components/generated/pb/decentraland/sdk/components/pointer_hover_feedback.gen';
13
- export { RaycastQueryType } from '../components/generated/pb/decentraland/sdk/components/raycast.gen';
14
- export * from '../components/generated/pb/decentraland/sdk/components/raycast_result.gen';
15
- export * from '../components/generated/pb/decentraland/sdk/components/ui_transform.gen';
16
- export { TransformComponent, TransformType } from '../components/legacy/Transform';
17
- export * from '../engine/component';
18
1
  export type { SystemFn } from '../engine/systems';
2
+ export type { TransportMessage, ReceiveMessage, Transport } from '../systems/crdt/types';
3
+ export type { WireMessage } from '../serialization/wireMessage';
4
+ export { TransformType, TransformComponent } from '../components/legacy/Transform';
5
+ export * from '../engine/component';
6
+ export * from '../schemas/typing';
19
7
  export type { MapResult, Spec } from '../schemas/Map';
8
+ export * from '../engine/component';
20
9
  export * from '../schemas/typing';
21
- export type { WireMessage } from '../serialization/wireMessage';
22
- export type { ReceiveMessage, Transport, TransportMessage } from '../systems/crdt/types';
@@ -1,19 +1,4 @@
1
- export * from '../components/generated/pb/decentraland/common/texture.gen';
2
- export * from '../components/generated/pb/decentraland/sdk/components/animator.gen';
3
- export * from '../components/generated/pb/decentraland/sdk/components/avatar_attach.gen';
4
- export { AvatarModifierType } from '../components/generated/pb/decentraland/sdk/components/avatar_modifier_area.gen';
5
- // ColliderLayer is not used in the .pb definition because the field value is a number
6
- // and it can have multiple values of this enum. It needs to be exposed here.
7
- export { BillboardMode } from '../components/generated/pb/decentraland/sdk/components/billboard.gen';
8
- export { CameraType } from '../components/generated/pb/decentraland/sdk/components/common/camera_type.gen';
9
- export { Font, TextAlignMode } from '../components/generated/pb/decentraland/sdk/components/common/texts.gen';
10
- export * from '../components/generated/pb/decentraland/sdk/components/material.gen';
11
- export * from '../components/generated/pb/decentraland/sdk/components/mesh_collider.gen';
12
- export * from '../components/generated/pb/decentraland/sdk/components/mesh_renderer.gen';
13
- export * from '../components/generated/pb/decentraland/sdk/components/pointer_events_result.gen';
14
- export * from '../components/generated/pb/decentraland/sdk/components/pointer_hover_feedback.gen';
15
- export { RaycastQueryType } from '../components/generated/pb/decentraland/sdk/components/raycast.gen';
16
- export * from '../components/generated/pb/decentraland/sdk/components/raycast_result.gen';
17
- export * from '../components/generated/pb/decentraland/sdk/components/ui_transform.gen';
1
+ export * from '../engine/component';
2
+ export * from '../schemas/typing';
18
3
  export * from '../engine/component';
19
4
  export * from '../schemas/typing';
@@ -5,9 +5,10 @@ import { Entity } from '../engine/entity';
5
5
  import { IInputSystem } from '../engine/input';
6
6
  export declare type EventSystemCallback = (event: PBPointerEventsResult_PointerCommand) => void;
7
7
  export declare type EventSystemOptions = {
8
- button?: InputAction;
8
+ button: InputAction;
9
9
  hoverText?: string;
10
10
  maxDistance?: number;
11
+ showFeedback?: boolean;
11
12
  };
12
13
  export declare type PointerEventsSystem = ReturnType<typeof createPointerEventSystem>;
13
14
  export declare function createPointerEventSystem(engine: IEngine, inputSystem: IInputSystem): {
@@ -36,7 +37,7 @@ export declare function createPointerEventSystem(engine: IEngine, inputSystem: I
36
37
  * @param cb - Function to execute when onPointerDown fires
37
38
  * @param opts - Opts to trigger Feedback and Button
38
39
  */
39
- onClick(entity: Entity, cb: EventSystemCallback, opts?: EventSystemOptions): void;
40
+ onClick(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
40
41
  /**
41
42
  * @public
42
43
  * Execute callback when the user press the InputButton pointing at the entity
@@ -44,7 +45,7 @@ export declare function createPointerEventSystem(engine: IEngine, inputSystem: I
44
45
  * @param cb - Function to execute when click fires
45
46
  * @param opts - Opts to trigger Feedback and Button
46
47
  */
47
- onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: EventSystemOptions): void;
48
+ onPointerDown(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
48
49
  /**
49
50
  * @public
50
51
  * Execute callback when the user releases the InputButton pointing at the entity
@@ -52,5 +53,5 @@ export declare function createPointerEventSystem(engine: IEngine, inputSystem: I
52
53
  * @param cb - Function to execute when click fires
53
54
  * @param opts - Opts to trigger Feedback and Button
54
55
  */
55
- onPointerUp(entity: Entity, cb: EventSystemCallback, opts?: EventSystemOptions): void;
56
+ onPointerUp(entity: Entity, cb: EventSystemCallback, opts?: Partial<EventSystemOptions>): void;
56
57
  };
@@ -1,7 +1,7 @@
1
1
  import * as components from '../components';
2
2
  import { checkNotThenable } from '../runtime/invariant';
3
3
  export function createPointerEventSystem(engine, inputSystem) {
4
- const PointerHoverFeedback = components.PointerHoverFeedback(engine);
4
+ const PointerEvents = components.PointerEvents(engine);
5
5
  let EventType;
6
6
  (function (EventType) {
7
7
  EventType[EventType["Click"] = 0] = "Click";
@@ -10,31 +10,28 @@ export function createPointerEventSystem(engine, inputSystem) {
10
10
  })(EventType || (EventType = {}));
11
11
  const getDefaultOpts = (opts = {}) => ({
12
12
  button: 3 /* InputAction.IA_ANY */,
13
- hoverText: 'Interact',
14
- maxDistance: 100,
15
13
  ...opts
16
14
  });
17
15
  const eventsMap = new Map();
18
16
  function getEvent(entity) {
19
17
  return (eventsMap.get(entity) || eventsMap.set(entity, new Map()).get(entity));
20
18
  }
21
- function setHoverFeedback(entity, type, opts) {
22
- if (opts.hoverText) {
23
- const pointerEvent = PointerHoverFeedback.getMutableOrNull(entity) ||
24
- PointerHoverFeedback.create(entity);
19
+ function setPointerEvent(entity, type, opts) {
20
+ if (opts.hoverText || opts.showFeedback) {
21
+ const pointerEvent = PointerEvents.getMutableOrNull(entity) || PointerEvents.create(entity);
25
22
  pointerEvent.pointerEvents.push({
26
23
  eventType: type,
27
24
  eventInfo: {
28
25
  button: opts.button,
29
- showFeedback: true,
26
+ showFeedback: opts.showFeedback,
30
27
  hoverText: opts.hoverText,
31
28
  maxDistance: opts.maxDistance
32
29
  }
33
30
  });
34
31
  }
35
32
  }
36
- function removeHoverFeedback(entity, type, button) {
37
- const pointerEvent = PointerHoverFeedback.getMutableOrNull(entity);
33
+ function removePointerEvent(entity, type, button) {
34
+ const pointerEvent = PointerEvents.getMutableOrNull(entity);
38
35
  if (!pointerEvent)
39
36
  return;
40
37
  pointerEvent.pointerEvents = pointerEvent.pointerEvents.filter((pointer) => !(pointer.eventInfo?.button === button && pointer.eventType === type));
@@ -49,7 +46,7 @@ export function createPointerEventSystem(engine, inputSystem) {
49
46
  const event = getEvent(entity);
50
47
  const pointerEvent = event.get(type);
51
48
  if (pointerEvent?.opts.hoverText) {
52
- removeHoverFeedback(entity, getPointerEvent(type), pointerEvent.opts.button);
49
+ removePointerEvent(entity, getPointerEvent(type), pointerEvent.opts.button);
53
50
  }
54
51
  event.delete(type);
55
52
  }
@@ -113,7 +110,7 @@ export function createPointerEventSystem(engine, inputSystem) {
113
110
  removeEvent(entity, EventType.Click);
114
111
  // Set new event
115
112
  getEvent(entity).set(EventType.Click, { cb, opts: options });
116
- setHoverFeedback(entity, 1 /* PointerEventType.PET_DOWN */, options);
113
+ setPointerEvent(entity, 1 /* PointerEventType.PET_DOWN */, options);
117
114
  },
118
115
  /**
119
116
  * @public
@@ -126,7 +123,7 @@ export function createPointerEventSystem(engine, inputSystem) {
126
123
  const options = getDefaultOpts(opts);
127
124
  removeEvent(entity, EventType.Down);
128
125
  getEvent(entity).set(EventType.Down, { cb, opts: options });
129
- setHoverFeedback(entity, 1 /* PointerEventType.PET_DOWN */, options);
126
+ setPointerEvent(entity, 1 /* PointerEventType.PET_DOWN */, options);
130
127
  },
131
128
  /**
132
129
  * @public
@@ -139,7 +136,7 @@ export function createPointerEventSystem(engine, inputSystem) {
139
136
  const options = getDefaultOpts(opts);
140
137
  removeEvent(entity, EventType.Up);
141
138
  getEvent(entity).set(EventType.Up, { cb, opts: options });
142
- setHoverFeedback(entity, 0 /* PointerEventType.PET_UP */, options);
139
+ setPointerEvent(entity, 0 /* PointerEventType.PET_UP */, options);
143
140
  }
144
141
  };
145
142
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcl/ecs",
3
- "version": "7.0.6-3807227301.commit-1045452",
3
+ "version": "7.0.6-3808564125.commit-7a2650b",
4
4
  "description": "Decentraland ECS",
5
5
  "main": "./dist/index.js",
6
6
  "typings": "./dist/index.d.ts",
@@ -27,13 +27,13 @@
27
27
  "ts-proto": "^1.112.0"
28
28
  },
29
29
  "dependencies": {
30
- "@dcl/crdt": "7.0.6-3807227301.commit-1045452",
30
+ "@dcl/crdt": "7.0.6-3808564125.commit-7a2650b",
31
31
  "@dcl/js-runtime": "file:../js-runtime",
32
- "@dcl/protocol": "^1.0.0-3766287015.commit-7d88411"
32
+ "@dcl/protocol": "^1.0.0-3808528053.commit-d66d462"
33
33
  },
34
34
  "files": [
35
35
  "dist",
36
36
  "etc"
37
37
  ],
38
- "commit": "104545291581dd38595dbfc46135d0f573d306ff"
38
+ "commit": "7a2650b741ac5f5a5d3f00ac1c955e5f773d679a"
39
39
  }
@@ -1,8 +0,0 @@
1
- import { ISchema } from '../../schemas/ISchema';
2
- import { PBPointerHoverFeedback } from './pb/decentraland/sdk/components/pointer_hover_feedback.gen';
3
- /**
4
- *
5
- */
6
- export declare const PointerHoverFeedbackSchema: ISchema<PBPointerHoverFeedback> & {
7
- COMPONENT_ID: number;
8
- };