@relu-interactives/spatial-ecs 0.2.17 → 0.2.21

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 (54) hide show
  1. package/dist/{System-BeuJ1xt5.d.cts → System-me3iAcMF.d.cts} +150 -1
  2. package/dist/{System-BeuJ1xt5.d.ts → System-me3iAcMF.d.ts} +150 -1
  3. package/dist/{Video-Cym2C52L.d.ts → Video-DHnxjGhW.d.ts} +17 -3
  4. package/dist/{Video-D4B-z74P.d.cts → Video-U9hAnf9y.d.cts} +17 -3
  5. package/dist/{chunk-EPK6MA7X.js → chunk-5U3YS4JD.js} +1809 -8
  6. package/dist/chunk-5U3YS4JD.js.map +1 -0
  7. package/dist/{chunk-GRUK5TNL.js → chunk-AXRCGF63.js} +3 -3
  8. package/dist/{chunk-GRUK5TNL.js.map → chunk-AXRCGF63.js.map} +1 -1
  9. package/dist/{chunk-CJW6K3CL.js → chunk-K6KMKKJ6.js} +62 -5
  10. package/dist/chunk-K6KMKKJ6.js.map +1 -0
  11. package/dist/{chunk-FTIQQK62.js → chunk-V7BNVTJW.js} +50 -3
  12. package/dist/chunk-V7BNVTJW.js.map +1 -0
  13. package/dist/{chunk-R2WMVXZZ.js → chunk-ZXGHKX7N.js} +5 -3
  14. package/dist/chunk-ZXGHKX7N.js.map +1 -0
  15. package/dist/components/index.cjs +47 -0
  16. package/dist/components/index.cjs.map +1 -1
  17. package/dist/components/index.d.cts +3 -2
  18. package/dist/components/index.d.ts +3 -2
  19. package/dist/components/index.js +1 -1
  20. package/dist/docs/guide/components/material.md +4 -0
  21. package/dist/docs/guide/components/physics.md +10 -0
  22. package/dist/docs/guide/getting-started/editor/assets-browser.md +1 -1
  23. package/dist/docs/guide/prefabs.md +152 -0
  24. package/dist/docs/guide/world-api.md +1 -1
  25. package/dist/factories/index.cjs +136 -64
  26. package/dist/factories/index.cjs.map +1 -1
  27. package/dist/factories/index.d.cts +5 -4
  28. package/dist/factories/index.d.ts +5 -4
  29. package/dist/factories/index.js +3 -3
  30. package/dist/{index-BfoOC2CG.d.cts → index-CZo5I5Gs.d.cts} +76 -4
  31. package/dist/{index-BoJ3_6a3.d.ts → index-D7FSg0Au.d.ts} +76 -4
  32. package/dist/index.cjs +6386 -4962
  33. package/dist/index.cjs.map +1 -1
  34. package/dist/index.d.cts +313 -7
  35. package/dist/index.d.ts +313 -7
  36. package/dist/index.js +407 -926
  37. package/dist/index.js.map +1 -1
  38. package/dist/systems/index.cjs +1386 -0
  39. package/dist/systems/index.cjs.map +1 -1
  40. package/dist/systems/index.d.cts +2 -2
  41. package/dist/systems/index.d.ts +2 -2
  42. package/dist/systems/index.js +3 -3
  43. package/dist/types.d.cts +1 -1
  44. package/dist/types.d.ts +1 -1
  45. package/dist/worldSnapshotUtils.cjs +3 -1
  46. package/dist/worldSnapshotUtils.cjs.map +1 -1
  47. package/dist/worldSnapshotUtils.d.cts +1 -1
  48. package/dist/worldSnapshotUtils.d.ts +1 -1
  49. package/dist/worldSnapshotUtils.js +1 -1
  50. package/package.json +4 -2
  51. package/dist/chunk-CJW6K3CL.js.map +0 -1
  52. package/dist/chunk-EPK6MA7X.js.map +0 -1
  53. package/dist/chunk-FTIQQK62.js.map +0 -1
  54. package/dist/chunk-R2WMVXZZ.js.map +0 -1
@@ -1470,8 +1470,23 @@ var _MaterialComponent = class _MaterialComponent extends Component {
1470
1470
  this.materials = [];
1471
1471
  this.material = null;
1472
1472
  this.values = [];
1473
+ this.assetRefs = [];
1473
1474
  this.setMaterials(materialOrMaterials);
1474
1475
  }
1476
+ /** Link/unlink a slot to a material asset URL (editor bookkeeping only). */
1477
+ setAssetRef(index, url) {
1478
+ if (index < 0) {
1479
+ return;
1480
+ }
1481
+ while (this.assetRefs.length <= index) {
1482
+ this.assetRefs.push(null);
1483
+ }
1484
+ this.assetRefs[index] = url;
1485
+ }
1486
+ /** The material-asset URL a slot is linked to, or null when local. */
1487
+ getAssetRef(index) {
1488
+ return this.assetRefs[index] ?? null;
1489
+ }
1475
1490
  setMaterials(materialOrMaterials = []) {
1476
1491
  this.materials = Array.isArray(materialOrMaterials) ? materialOrMaterials.filter(Boolean) : materialOrMaterials ? [materialOrMaterials] : [];
1477
1492
  this.material = this.materials[0] ?? null;
@@ -1567,6 +1582,35 @@ var _ParentId = class _ParentId extends Component {
1567
1582
  __name(_ParentId, "ParentId");
1568
1583
  var ParentId = _ParentId;
1569
1584
 
1585
+ // core/components/PrefabInstance.ts
1586
+ var generateInstanceId = /* @__PURE__ */ __name(() => {
1587
+ try {
1588
+ return crypto.randomUUID();
1589
+ } catch {
1590
+ return `i-${Math.random().toString(36).slice(2, 10)}${Date.now().toString(36)}`;
1591
+ }
1592
+ }, "generateInstanceId");
1593
+ var _PrefabInstance = class _PrefabInstance extends Component {
1594
+ constructor(url, overrides = [], instanceId) {
1595
+ super();
1596
+ this.url = url;
1597
+ this.overrides = overrides;
1598
+ this.instanceId = typeof instanceId === "string" && instanceId.length > 0 ? instanceId : generateInstanceId();
1599
+ }
1600
+ };
1601
+ __name(_PrefabInstance, "PrefabInstance");
1602
+ var PrefabInstance = _PrefabInstance;
1603
+
1604
+ // core/components/PrefabNode.ts
1605
+ var _PrefabNode = class _PrefabNode extends Component {
1606
+ constructor(nodeId) {
1607
+ super();
1608
+ this.nodeId = nodeId;
1609
+ }
1610
+ };
1611
+ __name(_PrefabNode, "PrefabNode");
1612
+ var PrefabNode = _PrefabNode;
1613
+
1570
1614
  // core/components/ScriptComponent.ts
1571
1615
  var _ScriptComponent = class _ScriptComponent extends Component {
1572
1616
  constructor(entries = []) {
@@ -1818,12 +1862,15 @@ exports.Object3DRef = Object3DRef;
1818
1862
  exports.ParentId = ParentId;
1819
1863
  exports.PhysicsComponent = PhysicsComponent;
1820
1864
  exports.Postprocessing = Postprocessing;
1865
+ exports.PrefabInstance = PrefabInstance;
1866
+ exports.PrefabNode = PrefabNode;
1821
1867
  exports.ScriptComponent = ScriptComponent;
1822
1868
  exports.Selectable = Selectable;
1823
1869
  exports.SelectionTransformState = SelectionTransformState;
1824
1870
  exports.SpriteComponent = SpriteComponent;
1825
1871
  exports.TransformComponent = TransformComponent;
1826
1872
  exports.VideoComponent = VideoComponent;
1873
+ exports.defaultMaterialValue = defaultMaterialValue;
1827
1874
  exports.normalizePhysicsState = normalizePhysicsState;
1828
1875
  //# sourceMappingURL=index.cjs.map
1829
1876
  //# sourceMappingURL=index.cjs.map