@playcanvas/web-components 0.16.0 → 0.18.0

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 (126) hide show
  1. package/README.md +5 -3
  2. package/dist/app.d.cts +18 -13
  3. package/dist/app.d.ts +18 -13
  4. package/dist/asset.d.cts +13 -3
  5. package/dist/asset.d.ts +13 -3
  6. package/dist/async-element.d.cts +13 -13
  7. package/dist/async-element.d.ts +13 -13
  8. package/dist/components/anim-clip.d.cts +4 -0
  9. package/dist/components/anim-clip.d.ts +4 -0
  10. package/dist/components/anim-component.d.cts +38 -5
  11. package/dist/components/anim-component.d.ts +38 -5
  12. package/dist/components/audio-listener-component.d.cts +26 -0
  13. package/dist/components/audio-listener-component.d.ts +26 -0
  14. package/dist/components/button-component.d.cts +10 -1
  15. package/dist/components/button-component.d.ts +10 -1
  16. package/dist/components/camera-component.d.cts +37 -1
  17. package/dist/components/camera-component.d.ts +37 -1
  18. package/dist/components/collision-component.d.cts +9 -1
  19. package/dist/components/collision-component.d.ts +9 -1
  20. package/dist/components/component.d.cts +3 -2
  21. package/dist/components/component.d.ts +3 -2
  22. package/dist/components/element-component.d.cts +11 -0
  23. package/dist/components/element-component.d.ts +11 -0
  24. package/dist/components/gsplat-component.d.cts +6 -0
  25. package/dist/components/gsplat-component.d.ts +6 -0
  26. package/dist/components/joint-component.d.cts +14 -2
  27. package/dist/components/joint-component.d.ts +14 -2
  28. package/dist/components/{layoutchild-component.d.cts → layout-child-component.d.cts} +7 -1
  29. package/dist/components/{layoutchild-component.d.ts → layout-child-component.d.ts} +7 -1
  30. package/dist/components/{layoutgroup-component.d.cts → layout-group-component.d.cts} +7 -1
  31. package/dist/components/{layoutgroup-component.d.ts → layout-group-component.d.ts} +7 -1
  32. package/dist/components/light-component.d.cts +52 -1
  33. package/dist/components/light-component.d.ts +52 -1
  34. package/dist/components/{particlesystem-component.d.cts → particle-system-component.d.cts} +7 -1
  35. package/dist/components/{particlesystem-component.d.ts → particle-system-component.d.ts} +7 -1
  36. package/dist/components/render-component.d.cts +7 -0
  37. package/dist/components/render-component.d.ts +7 -0
  38. package/dist/components/{rigidbody-component.d.cts → rigid-body-component.d.cts} +8 -1
  39. package/dist/components/{rigidbody-component.d.ts → rigid-body-component.d.ts} +8 -1
  40. package/dist/components/screen-component.d.cts +6 -0
  41. package/dist/components/screen-component.d.ts +6 -0
  42. package/dist/components/script-component.d.cts +26 -12
  43. package/dist/components/script-component.d.ts +26 -12
  44. package/dist/components/{script.d.cts → script-instance.d.cts} +11 -7
  45. package/dist/components/{script.d.ts → script-instance.d.ts} +11 -7
  46. package/dist/components/{scrollview-component.d.cts → scroll-view-component.d.cts} +7 -1
  47. package/dist/components/{scrollview-component.d.ts → scroll-view-component.d.ts} +7 -1
  48. package/dist/components/scrollbar-component.d.cts +6 -0
  49. package/dist/components/scrollbar-component.d.ts +6 -0
  50. package/dist/components/sound-component.d.cts +7 -1
  51. package/dist/components/sound-component.d.ts +7 -1
  52. package/dist/components/sound-slot.d.cts +5 -2
  53. package/dist/components/sound-slot.d.ts +5 -2
  54. package/dist/custom-elements.json +1852 -974
  55. package/dist/entity-base.d.cts +7 -6
  56. package/dist/entity-base.d.ts +7 -6
  57. package/dist/entity-owner.d.cts +118 -0
  58. package/dist/entity-owner.d.ts +118 -0
  59. package/dist/entity.d.cts +14 -102
  60. package/dist/entity.d.ts +14 -102
  61. package/dist/index.d.cts +26 -22
  62. package/dist/index.d.ts +26 -22
  63. package/dist/material.d.cts +18 -7
  64. package/dist/material.d.ts +18 -7
  65. package/dist/model.d.cts +72 -24
  66. package/dist/model.d.ts +72 -24
  67. package/dist/node.d.cts +6 -1
  68. package/dist/node.d.ts +6 -1
  69. package/dist/pwc.cjs +807 -293
  70. package/dist/pwc.cjs.map +1 -1
  71. package/dist/pwc.js +807 -293
  72. package/dist/pwc.js.map +1 -1
  73. package/dist/pwc.min.js +1 -1
  74. package/dist/pwc.min.js.map +1 -1
  75. package/dist/pwc.min.mjs +1 -1
  76. package/dist/pwc.min.mjs.map +1 -1
  77. package/dist/pwc.mjs +805 -292
  78. package/dist/pwc.mjs.map +1 -1
  79. package/dist/scene.d.cts +3 -0
  80. package/dist/scene.d.ts +3 -0
  81. package/dist/sky.d.cts +4 -0
  82. package/dist/sky.d.ts +4 -0
  83. package/dist/vscode.html-custom-data.json +351 -121
  84. package/dist/{module.d.cts → wasm.d.cts} +10 -6
  85. package/dist/{module.d.ts → wasm.d.ts} +10 -6
  86. package/dist/web-types.json +465 -291
  87. package/package.json +7 -7
  88. package/src/app.ts +49 -35
  89. package/src/asset.ts +13 -4
  90. package/src/async-element.ts +14 -14
  91. package/src/components/anim-clip.ts +4 -0
  92. package/src/components/anim-component.ts +89 -14
  93. package/src/components/audio-listener-component.ts +36 -0
  94. package/src/components/button-component.ts +10 -1
  95. package/src/components/camera-component.ts +65 -6
  96. package/src/components/collision-component.ts +9 -1
  97. package/src/components/component.ts +4 -3
  98. package/src/components/element-component.ts +11 -0
  99. package/src/components/gsplat-component.ts +6 -0
  100. package/src/components/joint-component.ts +14 -2
  101. package/src/components/{layoutchild-component.ts → layout-child-component.ts} +8 -2
  102. package/src/components/{layoutgroup-component.ts → layout-group-component.ts} +8 -2
  103. package/src/components/light-component.ts +110 -17
  104. package/src/components/{particlesystem-component.ts → particle-system-component.ts} +8 -2
  105. package/src/components/render-component.ts +7 -0
  106. package/src/components/{rigidbody-component.ts → rigid-body-component.ts} +9 -2
  107. package/src/components/screen-component.ts +6 -0
  108. package/src/components/script-component.ts +66 -42
  109. package/src/components/{script.ts → script-instance.ts} +18 -14
  110. package/src/components/{scrollview-component.ts → scroll-view-component.ts} +8 -2
  111. package/src/components/scrollbar-component.ts +6 -0
  112. package/src/components/sound-component.ts +8 -2
  113. package/src/components/sound-slot.ts +7 -4
  114. package/src/entity-base.ts +8 -7
  115. package/src/entity-owner.ts +298 -0
  116. package/src/entity.ts +21 -271
  117. package/src/index.ts +38 -25
  118. package/src/material.ts +19 -8
  119. package/src/model.ts +164 -72
  120. package/src/node.ts +15 -6
  121. package/src/scene.ts +3 -0
  122. package/src/sky.ts +4 -0
  123. package/src/{module.ts → wasm.ts} +12 -8
  124. package/dist/components/listener-component.d.cts +0 -20
  125. package/dist/components/listener-component.d.ts +0 -20
  126. package/src/components/listener-component.ts +0 -30
@@ -3,9 +3,9 @@ import { basisInitialize, WasmModule } from 'playcanvas';
3
3
  import { AsyncElement } from './async-element';
4
4
 
5
5
  /**
6
- * The ModuleElement interface provides properties and methods for manipulating
7
- * {@link https://developer.playcanvas.com/user-manual/web-components/tags/pc-module/ | `<pc-module>`}
8
- * elements. The ModuleElement interface also inherits the properties and methods of the
6
+ * The WasmElement interface provides properties and methods for manipulating
7
+ * {@link https://developer.playcanvas.com/user-manual/web-components/tags/pc-wasm/ | `<pc-wasm>`}
8
+ * elements. The WasmElement interface also inherits the properties and methods of the
9
9
  * {@link AsyncElement} interface.
10
10
  *
11
11
  * The attributes are read once, when the module starts loading - on the element's first
@@ -14,9 +14,13 @@ import { AsyncElement } from './async-element';
14
14
  * modules configure engine-global state that never unloads, so readiness is not re-armed by
15
15
  * removing the element, and a re-inserted element does not load again.
16
16
  *
17
- * A `<pc-module>` without a `name` warns and never becomes ready; a containing `<pc-app>` still
17
+ * A `<pc-wasm>` without a `name` warns and never becomes ready; a containing `<pc-app>` still
18
18
  * boots.
19
19
  *
20
+ * @elementSummary The `<pc-wasm>` element loads a WebAssembly module the engine needs before the
21
+ * application starts — `Ammo` for physics, `Basis` or `DracoDecoderModule` for compressed assets.
22
+ * Must be a direct child of `<pc-app>`.
23
+ *
20
24
  * @attribute {string} name - The name of the WebAssembly module to configure, e.g. `Basis` or
21
25
  * `Ammo`.
22
26
  * @attribute {string} glue - The URL of the module's glue script.
@@ -24,7 +28,7 @@ import { AsyncElement } from './async-element';
24
28
  * @attribute {string} fallback - The URL of the module's asm.js fallback script, used when
25
29
  * WebAssembly is unavailable.
26
30
  */
27
- class ModuleElement extends AsyncElement {
31
+ class WasmElement extends AsyncElement {
28
32
  private _loadPromise: Promise<void> | null = null;
29
33
 
30
34
  connectedCallback() {
@@ -34,7 +38,7 @@ class ModuleElement extends AsyncElement {
34
38
  private async _loadModule(): Promise<void> {
35
39
  const name = this.getAttribute('name');
36
40
  if (!name) {
37
- console.warn("pc-module requires a 'name' attribute - no module was configured");
41
+ console.warn("pc-wasm requires a 'name' attribute - no module was configured");
38
42
  return;
39
43
  }
40
44
 
@@ -74,6 +78,6 @@ class ModuleElement extends AsyncElement {
74
78
  }
75
79
  }
76
80
 
77
- customElements.define('pc-module', ModuleElement);
81
+ customElements.define('pc-wasm', WasmElement);
78
82
 
79
- export { ModuleElement };
83
+ export { WasmElement };
@@ -1,20 +0,0 @@
1
- import type { AudioListenerComponent } from 'playcanvas';
2
- import { ComponentElement } from './component.cjs';
3
- /**
4
- * The ListenerComponentElement interface provides properties and methods for manipulating
5
- * {@link https://developer.playcanvas.com/user-manual/web-components/tags/pc-listener/ | `<pc-listener>`} elements.
6
- * The ListenerComponentElement interface also inherits the properties and methods of the
7
- * {@link HTMLElement} interface.
8
- *
9
- * @category Components
10
- */
11
- declare class ListenerComponentElement extends ComponentElement {
12
- /** @ignore */
13
- constructor();
14
- /**
15
- * Gets the underlying PlayCanvas audio listener component.
16
- * @returns The audio listener component.
17
- */
18
- get component(): AudioListenerComponent;
19
- }
20
- export { ListenerComponentElement };
@@ -1,20 +0,0 @@
1
- import type { AudioListenerComponent } from 'playcanvas';
2
- import { ComponentElement } from './component.js';
3
- /**
4
- * The ListenerComponentElement interface provides properties and methods for manipulating
5
- * {@link https://developer.playcanvas.com/user-manual/web-components/tags/pc-listener/ | `<pc-listener>`} elements.
6
- * The ListenerComponentElement interface also inherits the properties and methods of the
7
- * {@link HTMLElement} interface.
8
- *
9
- * @category Components
10
- */
11
- declare class ListenerComponentElement extends ComponentElement {
12
- /** @ignore */
13
- constructor();
14
- /**
15
- * Gets the underlying PlayCanvas audio listener component.
16
- * @returns The audio listener component.
17
- */
18
- get component(): AudioListenerComponent;
19
- }
20
- export { ListenerComponentElement };
@@ -1,30 +0,0 @@
1
- import type { AudioListenerComponent } from 'playcanvas';
2
-
3
- import { ComponentElement } from './component';
4
-
5
- /**
6
- * The ListenerComponentElement interface provides properties and methods for manipulating
7
- * {@link https://developer.playcanvas.com/user-manual/web-components/tags/pc-listener/ | `<pc-listener>`} elements.
8
- * The ListenerComponentElement interface also inherits the properties and methods of the
9
- * {@link HTMLElement} interface.
10
- *
11
- * @category Components
12
- */
13
- class ListenerComponentElement extends ComponentElement {
14
- /** @ignore */
15
- constructor() {
16
- super('audiolistener');
17
- }
18
-
19
- /**
20
- * Gets the underlying PlayCanvas audio listener component.
21
- * @returns The audio listener component.
22
- */
23
- get component(): AudioListenerComponent {
24
- return super.component as AudioListenerComponent;
25
- }
26
- }
27
-
28
- customElements.define('pc-listener', ListenerComponentElement);
29
-
30
- export { ListenerComponentElement };