@needle-tools/engine 4.8.7 → 4.8.8-next.4b53212

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 (118) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +55 -42
  3. package/components.needle.json +1 -1
  4. package/dist/{needle-engine.bundle-B0qaChJt.js → needle-engine.bundle-9ZWPsgka.js} +7089 -7009
  5. package/dist/{needle-engine.bundle-CZBThBDy.min.js → needle-engine.bundle-B-wxYHwV.min.js} +144 -144
  6. package/dist/{needle-engine.bundle-lBmpWgFp.umd.cjs → needle-engine.bundle-CxUl1z77.umd.cjs} +147 -147
  7. package/dist/needle-engine.d.ts +7 -0
  8. package/dist/needle-engine.js +2 -2
  9. package/dist/needle-engine.min.js +1 -1
  10. package/dist/needle-engine.umd.cjs +1 -1
  11. package/lib/engine/engine_addressables.d.ts +12 -12
  12. package/lib/engine/engine_addressables.js +32 -23
  13. package/lib/engine/engine_addressables.js.map +1 -1
  14. package/lib/engine/engine_animation.d.ts +1 -3
  15. package/lib/engine/engine_animation.js +18 -12
  16. package/lib/engine/engine_animation.js.map +1 -1
  17. package/lib/engine/engine_assetdatabase.js +6 -6
  18. package/lib/engine/engine_assetdatabase.js.map +1 -1
  19. package/lib/engine/engine_camera.d.ts +23 -3
  20. package/lib/engine/engine_camera.js +34 -2
  21. package/lib/engine/engine_camera.js.map +1 -1
  22. package/lib/engine/engine_context.d.ts +15 -0
  23. package/lib/engine/engine_context.js +33 -0
  24. package/lib/engine/engine_context.js.map +1 -1
  25. package/lib/engine/engine_create_objects.d.ts +3 -3
  26. package/lib/engine/engine_create_objects.js +5 -4
  27. package/lib/engine/engine_create_objects.js.map +1 -1
  28. package/lib/engine/engine_gameobject.js +2 -2
  29. package/lib/engine/engine_gameobject.js.map +1 -1
  30. package/lib/engine/engine_gltf_builtin_components.js +11 -11
  31. package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
  32. package/lib/engine/engine_loaders.callbacks.d.ts +1 -0
  33. package/lib/engine/engine_loaders.callbacks.js +1 -0
  34. package/lib/engine/engine_loaders.callbacks.js.map +1 -1
  35. package/lib/engine/engine_loaders.js +15 -11
  36. package/lib/engine/engine_loaders.js.map +1 -1
  37. package/lib/engine/extensions/NEEDLE_lighting_settings.js +5 -2
  38. package/lib/engine/extensions/NEEDLE_lighting_settings.js.map +1 -1
  39. package/lib/engine/extensions/NEEDLE_lightmaps.js +1 -1
  40. package/lib/engine/extensions/NEEDLE_lightmaps.js.map +1 -1
  41. package/lib/engine/js-extensions/Object3D.d.ts +1 -1
  42. package/lib/engine/js-extensions/Vector.d.ts +5 -0
  43. package/lib/engine/js-extensions/Vector.js.map +1 -1
  44. package/lib/engine/webcomponents/needle-engine.attributes.d.ts +1 -0
  45. package/lib/engine/webcomponents/needle-engine.d.ts +2 -2
  46. package/lib/engine/webcomponents/needle-engine.js +19 -21
  47. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  48. package/lib/engine-components/Animation.js +2 -1
  49. package/lib/engine-components/Animation.js.map +1 -1
  50. package/lib/engine-components/AnimationUtilsAutoplay.js +1 -6
  51. package/lib/engine-components/AnimationUtilsAutoplay.js.map +1 -1
  52. package/lib/engine-components/Camera.d.ts +2 -0
  53. package/lib/engine-components/Camera.js +5 -1
  54. package/lib/engine-components/Camera.js.map +1 -1
  55. package/lib/engine-components/ContactShadows.d.ts +12 -2
  56. package/lib/engine-components/ContactShadows.js +24 -4
  57. package/lib/engine-components/ContactShadows.js.map +1 -1
  58. package/lib/engine-components/DropListener.d.ts +21 -15
  59. package/lib/engine-components/DropListener.js +38 -34
  60. package/lib/engine-components/DropListener.js.map +1 -1
  61. package/lib/engine-components/LookAtConstraint.d.ts +5 -1
  62. package/lib/engine-components/LookAtConstraint.js +8 -0
  63. package/lib/engine-components/LookAtConstraint.js.map +1 -1
  64. package/lib/engine-components/NestedGltf.d.ts +9 -4
  65. package/lib/engine-components/NestedGltf.js +32 -26
  66. package/lib/engine-components/NestedGltf.js.map +1 -1
  67. package/lib/engine-components/OrbitControls.d.ts +30 -9
  68. package/lib/engine-components/OrbitControls.js +55 -18
  69. package/lib/engine-components/OrbitControls.js.map +1 -1
  70. package/lib/engine-components/Renderer.js +2 -1
  71. package/lib/engine-components/Renderer.js.map +1 -1
  72. package/lib/engine-components/Skybox.js +8 -9
  73. package/lib/engine-components/Skybox.js.map +1 -1
  74. package/lib/engine-components/api.d.ts +1 -0
  75. package/lib/engine-components/api.js.map +1 -1
  76. package/lib/engine-components/export/usdz/Extension.d.ts +1 -1
  77. package/lib/engine-components/export/usdz/ThreeUSDZExporter.js +1 -1
  78. package/lib/engine-components/export/usdz/ThreeUSDZExporter.js.map +1 -1
  79. package/lib/engine-components/export/usdz/USDZExporter.d.ts +7 -0
  80. package/lib/engine-components/export/usdz/USDZExporter.js +8 -1
  81. package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
  82. package/lib/engine-components/webxr/WebXRImageTracking.d.ts +4 -2
  83. package/lib/engine-components/webxr/WebXRImageTracking.js +117 -81
  84. package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
  85. package/package.json +3 -3
  86. package/plugins/common/files.js +6 -3
  87. package/plugins/vite/alias.js +45 -23
  88. package/plugins/vite/editor-connection.js +4 -4
  89. package/src/engine/engine_addressables.ts +46 -33
  90. package/src/engine/engine_animation.ts +20 -12
  91. package/src/engine/engine_assetdatabase.ts +7 -7
  92. package/src/engine/engine_camera.ts +54 -3
  93. package/src/engine/engine_context.ts +39 -1
  94. package/src/engine/engine_create_objects.ts +8 -7
  95. package/src/engine/engine_gameobject.ts +2 -2
  96. package/src/engine/engine_gltf_builtin_components.ts +12 -11
  97. package/src/engine/engine_loaders.callbacks.ts +1 -0
  98. package/src/engine/engine_loaders.ts +18 -13
  99. package/src/engine/extensions/NEEDLE_lighting_settings.ts +5 -2
  100. package/src/engine/extensions/NEEDLE_lightmaps.ts +1 -1
  101. package/src/engine/js-extensions/Vector.ts +6 -0
  102. package/src/engine/webcomponents/needle-engine.attributes.ts +2 -0
  103. package/src/engine/webcomponents/needle-engine.ts +21 -21
  104. package/src/engine-components/Animation.ts +1 -1
  105. package/src/engine-components/AnimationUtilsAutoplay.ts +1 -6
  106. package/src/engine-components/Camera.ts +7 -1
  107. package/src/engine-components/ContactShadows.ts +27 -6
  108. package/src/engine-components/DropListener.ts +44 -34
  109. package/src/engine-components/LookAtConstraint.ts +9 -1
  110. package/src/engine-components/NestedGltf.ts +33 -24
  111. package/src/engine-components/OrbitControls.ts +80 -28
  112. package/src/engine-components/Renderer.ts +2 -1
  113. package/src/engine-components/Skybox.ts +9 -10
  114. package/src/engine-components/api.ts +2 -1
  115. package/src/engine-components/export/usdz/Extension.ts +1 -1
  116. package/src/engine-components/export/usdz/ThreeUSDZExporter.ts +1 -1
  117. package/src/engine-components/export/usdz/USDZExporter.ts +21 -12
  118. package/src/engine-components/webxr/WebXRImageTracking.ts +138 -90
@@ -1 +1 @@
1
- {"version":3,"file":"ContactShadows.js","sourceRoot":"","sources":["../../src/engine-components/ContactShadows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContactShadows.js","sourceRoot":"","sources":["../../src/engine-components/ContactShadows.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAqB,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,iBAAiB,EAAqC,QAAQ,EAAE,kBAAkB,EAAE,aAAa,EAAc,cAAc,EAAE,OAAO,EAAe,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAChT,OAAO,EAAE,oBAAoB,EAAE,MAAM,oDAAoD,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAEtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,iCAAiC,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,SAAS,EAAqB,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAc,MAAM,gBAAgB,CAAC;AAEvD,MAAM,KAAK,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC;AAE9C,OAAO,CAAC,GAAG,CAAC,EAAE;IACV,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IAC5G,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,OAAO,EAAE;QAClD,OAAO,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;YACnB,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;YAC5B,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;SAChC;KACJ;AACL,CAAC,CAAC,CAAC;AASH,kGAAkG;AAElG,gBAAgB;AAChB,oBAAoB;AACpB,wDAAwD;AACxD,gEAAgE;AAEhE;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,SAAS;IAEjC,MAAM,CAAU,UAAU,GAAiC,IAAI,GAAG,EAAE,CAAC;IAC7E;;;;;OAKG;IACH,MAAM,CAAC,IAAI,CAAC,OAAiB,EAAE,MAAsB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACtE;QACD,IAAI,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,SAAS,EAAE;YACjC,MAAM,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,QAAQ,GAAG,YAAY,CAAC,GAAG,EAAE,cAAc,EAAE;gBACzC,OAAO,EAAE,KAAK;gBACd,kBAAkB,EAAE,KAAK;aAC5B,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;SAC1C;QACD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACvC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC5B,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;;OAGG;IAEH,OAAO,GAAY,KAAK,CAAC;IACzB;;;OAGG;IAEH,QAAQ,GAAW,GAAG,CAAC;IACvB;;;OAGG;IAEH,OAAO,GAAW,GAAG,CAAC;IACtB;;;OAGG;IAEH,IAAI,GAAW,GAAG,CAAC;IACnB;;;OAGG;IAEH,kBAAkB,GAAY,KAAK,CAAC;IACpC;;;OAGG;IAEH,eAAe,GAAY,IAAI,CAAC;IAEhC;;;OAGG;IACH,OAAO,CAAiB;IAExB;;;;OAIG;IACH,YAAY,GAAY,KAAK,CAAC;IAC9B;;OAEG;IACH,IAAI,WAAW,CAAC,GAAY;QACxB,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;IAC5B,CAAC;IACD,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IACO,YAAY,GAAY,KAAK,CAAC;IAEtC;;;QAGI;IACa,WAAW,GAAgB,IAAI,QAAQ,EAAiB,CAAC;IAClE,YAAY,CAAsB;IACzB,WAAW,GAAU,IAAI,KAAK,EAAE,CAAC;IAE1C,YAAY,CAAqB;IACjC,gBAAgB,CAAqB;IAErC,KAAK,CAAQ;IACb,YAAY,CAAQ;IACpB,SAAS,CAAQ;IAEjB,aAAa,CAAqB;IAClC,sBAAsB,CAAkB;IACxC,oBAAoB,CAAkB;IAEtC,WAAW,GAAG,GAAG,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,SAAwB,EAAE;QACjC,IAAI,KAAK;YAAE,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACpD,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACxD,MAAM,GAAG,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC5D,qDAAqD;QACrD,wCAAwC;QACxC,sHAAsH;QACtH,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACpC,GAAG,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,YAAY,GAAG,KAAK,EAAE,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC;QAC/E,IAAI,KAAK;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YACxB,mDAAmD;YACnD,GAAG,CAAC,YAAY,CAAE,IAAI,CAAC,UAAU,CAAC,MAAqB,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;SACzF;QACD,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7D,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC;QACpB,gEAAgE;QAChE,gFAAgF;QAChF,+FAA+F;QAC/F,wIAAwI;QACxI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACpF,IAAI,MAAM,CAAC,cAAc,EAAE;YACvB,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;YAClG,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;YAClG,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;SACrG;QACD,IAAI,MAAM,CAAC,WAAW,EAAE;YACpB,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACzF,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACzF,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;SAC5F;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAC/C,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACtF,CAAC;IAGD,gBAAgB;IAChB,KAAK;QACD,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC;QAElD,8BAA8B;QAC9B,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAGD,gBAAgB;IAChB,KAAK;QACD,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAEhF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEvC,oEAAoE;QACpE,IAAI,CAAC,YAAY,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9E,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC;QAElD,qEAAqE;QACrE,IAAI,CAAC,gBAAgB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAClF,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC;QAEtD,mCAAmC;QACnC,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAEnE,IAAI,IAAI,CAAC,UAAU,YAAY,IAAI,EAAE;YACjC,OAAO,CAAC,IAAI,CAAC,wFAAwF,CAAC,CAAC;YACvG,wBAAwB;YACxB,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC5C,+CAA+C;YAC/C,6FAA6F;YAC7F,wFAAwF;YACxF,uCAAuC;YACvC,8BAA8B;YAC9B,0BAA0B;YAC1B,0BAA0B;YAC1B,0BAA0B;YAC1B,qFAAqF;YACrF,0CAA0C;YAC1C,0BAA0B;YAC1B,0BAA0B;SAC7B;QAED,MAAM,aAAa,GAAG,IAAI,iBAAiB,CAAC;YACxC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;YAC9B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,SAAS;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAE,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEjC,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;QAE3C,IAAI,CAAC,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,iBAAiB,CAAC;YACpE,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,IAAI,EAAE,QAAQ;SACjB,CAAC,CAAC;YACC,oBAAoB;aACnB,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAExC,2CAA2C;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErC,sDAAsD;QACtD,MAAM,IAAI,GAAG,CAAC,CAAC;QACf,MAAM,GAAG,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,YAAY,GAAG,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACpF,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,4BAA4B;QACxE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAExC,6DAA6D;QAC7D,IAAI,CAAC,aAAa,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChE,gDAAgD;QAChD,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,cAAc,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,WAAW,CAAC;QAE/C,kDAAkD;QAClD,IAAI,CAAC,aAAa,CAAC,eAAe,GAAG,MAAM,CAAC,EAAE;YAC1C,IAAI,CAAC,IAAI,CAAC,aAAa;gBAAE,OAAO;YAChC,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAChE,MAAM,CAAC,cAAc,GAAG,UAAU,CAAA;;kBAE5B,MAAM,CAAC,cAAc,CAAC,OAAO,CAC/B,2DAA2D;YAC3D,gFAAgF;YAChF,gHAAgH,CACnH;aACA,CAAC;QACN,CAAC,CAAC;QAEF,IAAI,CAAC,aAAa,CAAC,SAAS,GAAG,KAAK,CAAC;QACrC,IAAI,CAAC,aAAa,CAAC,UAAU,GAAG,KAAK,CAAC;QAEtC,IAAI,CAAC,sBAAsB,GAAG,IAAI,cAAc,CAAC,oBAAoB,CAAC,CAAC;QACvE,IAAI,CAAC,sBAAsB,CAAC,SAAS,GAAG,KAAK,CAAC;QAE9C,IAAI,CAAC,oBAAoB,GAAG,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACnE,IAAI,CAAC,oBAAoB,CAAC,SAAS,GAAG,KAAK,CAAC;QAE5C,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;QAEjC,IAAI,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,UAAU,EAAE,CAAC;;YAC/B,IAAI,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,gBAAgB;IAChB,SAAS;QACL,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,QAAQ,KAAK,IAAI,EAAE;YACnB,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAClD;QAED,6BAA6B;QAC7B,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,gBAAgB,EAAE,OAAO,EAAE,CAAC;QAEjC,wBAAwB;QACxB,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,sBAAsB,EAAE,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC,oBAAoB,EAAE,OAAO,EAAE,CAAC;QAErC,yBAAyB;QACzB,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;IAED,gBAAgB;IAChB,cAAc,CAAC,MAAsB;QAEjC,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,IAAI,CAAC,YAAY;gBAAE,OAAO;SAClC;QACD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAE1B,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAC5C,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,YAAY;YACzC,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK;YACnD,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAC5D,IAAI,KAAK;gBACL,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,OAAO;SACV;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,MAAM,mBAAmB,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC;QAEvD,wFAAwF;QACxF;;;UAGE;QAEF,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAChC,IAAI,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,KAAK,CAAC;QACzD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QAE3B,IAAI,IAAI,CAAC,UAAU,YAAY,IAAI,EAAE;YACjC,mCAAmC;YACnC,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;SAC/C;QAED,wBAAwB;QACxB,MAAM,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAC;QAC3C,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;QAExB,wCAAwC;QACxC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC;QAC5C,IAAI,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,UAAU,CAAC;aACpC;YACD,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,SAAS,CAAC;SACvC;QAED,2BAA2B;QAC3B,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;QACnD,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAE1B,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC;QACxC,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC;QAE5B,MAAM,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC;QAC3E,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,KAAK,CAAC;QAEjD,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAChD,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC;QACzC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC;QAEhC,yEAAyE;QACzE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO;gBAAE,SAAS;YACpC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAgC,CAAC;YACnD,yCAAyC;YACzC,IAAI,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,IAAI,KAAK,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,IAAI,iCAAiC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC;YACrI,0CAA0C;YAC1C,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBAC3C,IAAI,GAAG,IAAI,CAAC;YAChB,yBAAyB;YACzB,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;gBAC7C,IAAI,GAAG,IAAI,CAAC;YAChB,IAAI,IAAI,EAAE;gBACN,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAClC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;gBACtD,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;aAChC;SACJ;QAED,gDAAgD;QAChD,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjB,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC;QAEnC,kCAAkC;QAClC,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE;YACjC,IAAI,MAAM,CAAC,gBAAgB,CAAC,IAAI,SAAS,EAAE;gBACvC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;aAC7C;SACJ;QAED,wBAAwB;QACxB,gDAAgD;QAEhD,kCAAkC;QAClC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAE9B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAE7C,wCAAwC;QACxC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;QACjC,IAAI,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,eAAe,CAAC;QAErC,oCAAoC;QACpC,QAAQ,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAC9C,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAC1C,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAC;QACrC,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,WAAW,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,yBAAyB,CAAC;IACzE,CAAC;IAED,iHAAiH;IACzG,UAAU,CAAC,MAAc;QAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY;YACrC,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAC5C,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,oBAAoB;YAC1D,OAAO;QAEX,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QAE9B,iDAAiD;QACjD,8FAA8F;QAC9F,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;QACvC,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC;QAC3B,MAAM,OAAO,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC;QAE3B,qDAAqD;QACrD,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,QAA2B,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QAChG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAEvF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QAEvC,MAAM,SAAS,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC7C,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAChD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAEnD,oDAAoD;QACpD,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACnD,IAAI,CAAC,SAAS,CAAC,QAA2B,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;QACpG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAErF,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAEnD,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAE/B,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAEO,YAAY;QAChB,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CACtB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EACvD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EACvD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAC1D,CAAC;SACL;IACL,CAAC;;AAtbD;IADC,YAAY,EAAE;+CACU;AAMzB;IADC,YAAY,EAAE;gDACQ;AAMvB;IADC,YAAY,EAAE;+CACO;AAMtB;IADC,YAAY,EAAE;4CACI;AAMnB;IADC,YAAY,EAAE;0DACqB;AAMpC;IADC,YAAY,EAAE;uDACiB;AA2ZpC,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,cAAc,GAAG,IAAI,KAAK,EAAY,CAAC"}
@@ -81,11 +81,6 @@ export declare type DropListenerOnDropArguments = {
81
81
  * @group Components
82
82
  */
83
83
  export declare class DropListener extends Behaviour {
84
- /**
85
- * When enabled, the DropListener will automatically synchronize dropped files to other connected clients.
86
- * When a file is dropped locally, it will be uploaded to blob storage and the URL will be shared with other clients.
87
- */
88
- useNetworking: boolean;
89
84
  /**
90
85
  * When assigned, the DropListener will only accept files that are dropped on this specific object.
91
86
  * This allows creating designated drop zones in your scene.
@@ -94,6 +89,9 @@ export declare class DropListener extends Behaviour {
94
89
  /**
95
90
  * When enabled, dropped objects will be automatically scaled to fit within the volume defined by fitVolumeSize.
96
91
  * Useful for ensuring dropped models appear at an appropriate scale.
92
+ *
93
+ * **Tip**: Use the handy `fitObjectIntoVolume` function (`import { fitObjectIntoVolume } from "@needle-tools/engine"`) for custom fitting needs.
94
+ *
97
95
  * @default false
98
96
  */
99
97
  fitIntoVolume: boolean;
@@ -108,6 +106,12 @@ export declare class DropListener extends Behaviour {
108
106
  * @default true
109
107
  */
110
108
  placeAtHitPosition: boolean;
109
+ /**
110
+ * When enabled, the DropListener will automatically synchronize dropped files to other connected clients.
111
+ * When a file is dropped locally, it will be uploaded to blob storage and the URL will be shared with other clients.
112
+ * @default false
113
+ */
114
+ useNetworking: boolean;
111
115
  /**
112
116
  * Event list that gets invoked after a file has been successfully added to the scene.
113
117
  * Receives {@link DropListenerOnDropArguments} containing the added object and related information.
@@ -119,22 +123,23 @@ export declare class DropListener extends Behaviour {
119
123
  * });
120
124
  */
121
125
  onDropped: EventList<DropListenerOnDropArguments>;
122
- /** @internal */
123
- onEnable(): void;
124
- /** @internal */
125
- onDisable(): void;
126
126
  /**
127
127
  * Loads a file from the given URL and adds it to the scene.
128
+ * @returns A promise that resolves to the loaded object or null if loading failed.
128
129
  */
129
130
  loadFromURL(url: string, data?: {
130
131
  point?: Vec3;
131
132
  size?: Vec3;
132
- }): void;
133
+ }): Promise<Object3D | null>;
133
134
  /**
134
135
  * Forgets all previously added objects.
135
136
  * The droplistener will then not be able to remove previously added objects.
136
137
  */
137
138
  forgetObjects(): void;
139
+ /** @internal */
140
+ onEnable(): void;
141
+ /** @internal */
142
+ onDisable(): void;
138
143
  /**
139
144
  * Handles network events received from other clients containing information about dropped objects
140
145
  * @param evt Network event data containing object information, position, and content URL
@@ -169,12 +174,13 @@ export declare class DropListener extends Behaviour {
169
174
  private addFromUrl;
170
175
  private _abort;
171
176
  /**
172
- * Processes dropped files, loads them as 3D models, and handles networking if enabled
173
- * Creates an abort controller to cancel previous uploads if new files are dropped
177
+ * Processes dropped files and loads them as 3D models.
178
+ * When enabled, it also handles network drops (sending files between clients).
179
+ * Automatically handles cancelling previous uploads if new files are dropped.
174
180
  * @param fileList Array of dropped files
175
- * @param ctx Context information about where the drop occurred
181
+ * @param ctx Context information about where on the screen or in 3D space the drop occurred
176
182
  */
177
- private addDroppedFiles;
183
+ private addFromFiles;
178
184
  /** Previously added objects */
179
185
  private readonly _addedObjects;
180
186
  private readonly _addedModels;
@@ -192,7 +198,7 @@ export declare class DropListener extends Behaviour {
192
198
  * @param isRemote Whether this object was shared from a remote client
193
199
  * @returns The added object or null if adding failed
194
200
  */
195
- private addObject;
201
+ private onObjectLoaded;
196
202
  /**
197
203
  * Sends a network event to other clients about a dropped object
198
204
  * Only triggered when networking is enabled and the connection is established
@@ -7,7 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { Box3, Object3D, Vector2, Vector3 } from "three";
8
8
  import { isDevEnvironment } from "../engine/debug/index.js";
9
9
  import { AnimationUtils } from "../engine/engine_animation.js";
10
- import { addComponent } from "../engine/engine_components.js";
11
10
  import { destroy } from "../engine/engine_gameobject.js";
12
11
  import { Gizmos } from "../engine/engine_gizmos.js";
13
12
  import { getLoader } from "../engine/engine_gltf.js";
@@ -18,7 +17,6 @@ import { serializable } from "../engine/engine_serialization_decorator.js";
18
17
  import { fitObjectIntoVolume, getBoundingBox, placeOnSurface } from "../engine/engine_three_utils.js";
19
18
  import { getParam, setParamWithoutReload } from "../engine/engine_utils.js";
20
19
  import { determineMimeTypeFromExtension } from "../engine/engine_utils_format.js";
21
- import { Animation } from "./Animation.js";
22
20
  import { Behaviour } from "./Component.js";
23
21
  import { EventList } from "./EventList.js";
24
22
  /**
@@ -90,11 +88,6 @@ const blobKeyName = "blob";
90
88
  * @group Components
91
89
  */
92
90
  export class DropListener extends Behaviour {
93
- /**
94
- * When enabled, the DropListener will automatically synchronize dropped files to other connected clients.
95
- * When a file is dropped locally, it will be uploaded to blob storage and the URL will be shared with other clients.
96
- */
97
- useNetworking = true;
98
91
  /**
99
92
  * When assigned, the DropListener will only accept files that are dropped on this specific object.
100
93
  * This allows creating designated drop zones in your scene.
@@ -103,6 +96,9 @@ export class DropListener extends Behaviour {
103
96
  /**
104
97
  * When enabled, dropped objects will be automatically scaled to fit within the volume defined by fitVolumeSize.
105
98
  * Useful for ensuring dropped models appear at an appropriate scale.
99
+ *
100
+ * **Tip**: Use the handy `fitObjectIntoVolume` function (`import { fitObjectIntoVolume } from "@needle-tools/engine"`) for custom fitting needs.
101
+ *
106
102
  * @default false
107
103
  */
108
104
  fitIntoVolume = false;
@@ -117,6 +113,12 @@ export class DropListener extends Behaviour {
117
113
  * @default true
118
114
  */
119
115
  placeAtHitPosition = true;
116
+ /**
117
+ * When enabled, the DropListener will automatically synchronize dropped files to other connected clients.
118
+ * When a file is dropped locally, it will be uploaded to blob storage and the URL will be shared with other clients.
119
+ * @default false
120
+ */
121
+ useNetworking = false;
120
122
  /**
121
123
  * Event list that gets invoked after a file has been successfully added to the scene.
122
124
  * Receives {@link DropListenerOnDropArguments} containing the added object and related information.
@@ -128,6 +130,21 @@ export class DropListener extends Behaviour {
128
130
  * });
129
131
  */
130
132
  onDropped = new EventList();
133
+ /**
134
+ * Loads a file from the given URL and adds it to the scene.
135
+ * @returns A promise that resolves to the loaded object or null if loading failed.
136
+ */
137
+ loadFromURL(url, data) {
138
+ return this.addFromUrl(url, { screenposition: new Vector2(), point: data?.point, size: data?.size, }, false);
139
+ }
140
+ /**
141
+ * Forgets all previously added objects.
142
+ * The droplistener will then not be able to remove previously added objects.
143
+ */
144
+ forgetObjects() {
145
+ this.removePreviouslyAddedObjects(false);
146
+ }
147
+ // #region internals
131
148
  /** @internal */
132
149
  onEnable() {
133
150
  this.context.renderer.domElement.addEventListener("dragover", this.onDrag);
@@ -142,19 +159,6 @@ export class DropListener extends Behaviour {
142
159
  window.removeEventListener("paste", this.handlePaste);
143
160
  this.context.connection.stopListen("droplistener", this.onNetworkEvent);
144
161
  }
145
- /**
146
- * Loads a file from the given URL and adds it to the scene.
147
- */
148
- loadFromURL(url, data) {
149
- this.addFromUrl(url, { screenposition: new Vector2(), point: data?.point, size: data?.size, }, true);
150
- }
151
- /**
152
- * Forgets all previously added objects.
153
- * The droplistener will then not be able to remove previously added objects.
154
- */
155
- forgetObjects() {
156
- this.removePreviouslyAddedObjects(false);
157
- }
158
162
  /**
159
163
  * Handles network events received from other clients containing information about dropped objects
160
164
  * @param evt Network event data containing object information, position, and content URL
@@ -260,7 +264,7 @@ export class DropListener extends Behaviour {
260
264
  }
261
265
  }
262
266
  if (files.length > 0) {
263
- await this.addDroppedFiles(files, ctx);
267
+ await this.addFromFiles(files, ctx);
264
268
  }
265
269
  };
266
270
  /**
@@ -292,6 +296,7 @@ export class DropListener extends Behaviour {
292
296
  // Ignore dropped images
293
297
  const lowercaseUrl = url.toLowerCase();
294
298
  if (lowercaseUrl.endsWith(".hdr") || lowercaseUrl.endsWith(".hdri") || lowercaseUrl.endsWith(".exr") || lowercaseUrl.endsWith(".png") || lowercaseUrl.endsWith(".jpg") || lowercaseUrl.endsWith(".jpeg")) {
299
+ console.warn(`Fileformat is not supported: ${lowercaseUrl}`);
295
300
  return null;
296
301
  }
297
302
  // TODO: if the URL is invalid this will become a problem
@@ -306,7 +311,7 @@ export class DropListener extends Behaviour {
306
311
  });
307
312
  if (res && this._addedObjects.length <= 0) {
308
313
  ctx.url = url;
309
- const obj = this.addObject(res, ctx, isRemote);
314
+ const obj = this.onObjectLoaded(res, ctx, isRemote);
310
315
  return obj;
311
316
  }
312
317
  }
@@ -317,12 +322,13 @@ export class DropListener extends Behaviour {
317
322
  }
318
323
  _abort = null;
319
324
  /**
320
- * Processes dropped files, loads them as 3D models, and handles networking if enabled
321
- * Creates an abort controller to cancel previous uploads if new files are dropped
325
+ * Processes dropped files and loads them as 3D models.
326
+ * When enabled, it also handles network drops (sending files between clients).
327
+ * Automatically handles cancelling previous uploads if new files are dropped.
322
328
  * @param fileList Array of dropped files
323
- * @param ctx Context information about where the drop occurred
329
+ * @param ctx Context information about where on the screen or in 3D space the drop occurred
324
330
  */
325
- async addDroppedFiles(fileList, ctx) {
331
+ async addFromFiles(fileList, ctx) {
326
332
  if (debug)
327
333
  console.log("Add files", fileList);
328
334
  if (!Array.isArray(fileList))
@@ -355,7 +361,7 @@ export class DropListener extends Behaviour {
355
361
  if (res) {
356
362
  this.dispatchEvent(new CustomEvent(DropListenerEvents.FileDropped, { detail: file }));
357
363
  ctx.file = file;
358
- const obj = this.addObject(res, ctx, false);
364
+ const obj = this.onObjectLoaded(res, ctx, false);
359
365
  // handle uploading the dropped object and networking the event
360
366
  if (obj && this.context.connection.isConnected && this.useNetworking) {
361
367
  console.debug("Uploading dropped file to blob storage");
@@ -401,7 +407,7 @@ export class DropListener extends Behaviour {
401
407
  * @param isRemote Whether this object was shared from a remote client
402
408
  * @returns The added object or null if adding failed
403
409
  */
404
- addObject(data, ctx, isRemote) {
410
+ onObjectLoaded(data, ctx, isRemote) {
405
411
  const { model, contentMD5 } = data;
406
412
  if (debug)
407
413
  console.log(`Dropped ${this.gameObject.name}`, model);
@@ -439,9 +445,7 @@ export class DropListener extends Behaviour {
439
445
  }
440
446
  }
441
447
  }
442
- AnimationUtils.assignAnimationsFromFile(model, {
443
- createAnimationComponent: obj => addComponent(obj, Animation)
444
- });
448
+ AnimationUtils.autoplayAnimations(model);
445
449
  const evt = new DropListenerAddedEvent({
446
450
  sender: this,
447
451
  gltf: model,
@@ -520,9 +524,6 @@ export class DropListener extends Behaviour {
520
524
  return true;
521
525
  }
522
526
  }
523
- __decorate([
524
- serializable()
525
- ], DropListener.prototype, "useNetworking", void 0);
526
527
  __decorate([
527
528
  serializable(Object3D)
528
529
  ], DropListener.prototype, "dropArea", void 0);
@@ -535,6 +536,9 @@ __decorate([
535
536
  __decorate([
536
537
  serializable()
537
538
  ], DropListener.prototype, "placeAtHitPosition", void 0);
539
+ __decorate([
540
+ serializable()
541
+ ], DropListener.prototype, "useNetworking", void 0);
538
542
  __decorate([
539
543
  serializable(EventList)
540
544
  ], DropListener.prototype, "onDropped", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"DropListener.js","sourceRoot":"","sources":["../../src/engine-components/DropListener.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DropListener.js","sourceRoot":"","sources":["../../src/engine-components/DropListener.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Object3D } from "three";
1
+ import { Object3D, Vector3 } from "three";
2
2
  import { Behaviour } from "./Component.js";
3
3
  /**
4
4
  * A LookAtConstraint is used by OrbitControls to make the camera look at a target.
@@ -16,4 +16,8 @@ export declare class LookAtConstraint extends Behaviour {
16
16
  * The sources to look at.
17
17
  */
18
18
  sources: Object3D[];
19
+ /**
20
+ * Set the position of the constraint.
21
+ */
22
+ setConstraintPosition(worldPosition: Vector3): void;
19
23
  }
@@ -23,6 +23,14 @@ export class LookAtConstraint extends Behaviour {
23
23
  * The sources to look at.
24
24
  */
25
25
  sources = [];
26
+ /**
27
+ * Set the position of the constraint.
28
+ */
29
+ setConstraintPosition(worldPosition) {
30
+ const source = this.sources[0];
31
+ if (source)
32
+ source.worldPosition = worldPosition;
33
+ }
26
34
  }
27
35
  __decorate([
28
36
  serializable()
@@ -1 +1 @@
1
- {"version":3,"file":"LookAtConstraint.js","sourceRoot":"","sources":["../../src/engine-components/LookAtConstraint.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAE3C;;OAEG;IAEH,gBAAgB,GAAY,IAAI,CAAC;IACjC;;OAEG;IAEH,MAAM,GAAY,KAAK,CAAC;IACxB;;OAEG;IAEH,OAAO,GAAe,EAAE,CAAC;CAC5B;AAXG;IADC,YAAY,EAAE;0DACkB;AAKjC;IADC,YAAY,EAAE;gDACS;AAKxB;IADC,YAAY,CAAC,QAAQ,CAAC;iDACE"}
1
+ {"version":3,"file":"LookAtConstraint.js","sourceRoot":"","sources":["../../src/engine-components/LookAtConstraint.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAW,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAE3C;;OAEG;IAEH,gBAAgB,GAAY,IAAI,CAAC;IACjC;;OAEG;IAEH,MAAM,GAAY,KAAK,CAAC;IACxB;;OAEG;IAEH,OAAO,GAAe,EAAE,CAAC;IAEzB;;OAEG;IACH,qBAAqB,CAAC,aAAsB;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,MAAM;YAAE,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC;IACrD,CAAC;CACJ;AAnBG;IADC,YAAY,EAAE;0DACkB;AAKjC;IADC,YAAY,EAAE;gDACS;AAKxB;IADC,YAAY,CAAC,QAAQ,CAAC;iDACE"}
@@ -1,13 +1,18 @@
1
1
  import { AssetReference, type ProgressCallback } from "../engine/engine_addressables.js";
2
2
  import { Behaviour } from "../engine-components/Component.js";
3
+ import { EventList } from "./EventList.js";
3
4
  /** The nested gltf is a component that is used to load a gltf file when the component becomes active (start)
4
5
  * It will load the gltf file and instantiate it as a child of the parent of the GameObject that has this component
5
6
  */
6
7
  export declare class NestedGltf extends Behaviour {
7
- /**
8
- * A reference to the gltf file that should be loaded
9
- */
8
+ /** A reference to the gltf file that should be loaded */
10
9
  filePath?: AssetReference;
10
+ /** Invoked when the nested glTF file has been instantiated */
11
+ loaded: EventList<{
12
+ component: NestedGltf;
13
+ instance: any;
14
+ asset: AssetReference;
15
+ }>;
11
16
  /**
12
17
  * EXPERIMENTAL for cloud asset loading
13
18
  */
@@ -16,7 +21,7 @@ export declare class NestedGltf extends Behaviour {
16
21
  /** Register a callback that will be called when the progress of the loading changes */
17
22
  listenToProgress(evt: ProgressCallback): void;
18
23
  /** Begin loading the referenced gltf file in filePath */
19
- preload(): void;
24
+ preload(): Promise<ArrayBufferLike | null> | null;
20
25
  /** @internal */
21
26
  start(): Promise<void>;
22
27
  /** @internal */
@@ -10,15 +10,16 @@ import { InstantiateIdProvider } from "../engine/engine_networking_instantiate.j
10
10
  import { serializable } from "../engine/engine_serialization_decorator.js";
11
11
  import { getParam } from "../engine/engine_utils.js";
12
12
  import { Behaviour } from "../engine-components/Component.js";
13
+ import { EventList } from "./EventList.js";
13
14
  const debug = getParam("debugnestedgltf");
14
15
  /** The nested gltf is a component that is used to load a gltf file when the component becomes active (start)
15
16
  * It will load the gltf file and instantiate it as a child of the parent of the GameObject that has this component
16
17
  */
17
18
  export class NestedGltf extends Behaviour {
18
- /**
19
- * A reference to the gltf file that should be loaded
20
- */
19
+ /** A reference to the gltf file that should be loaded */
21
20
  filePath;
21
+ /** Invoked when the nested glTF file has been instantiated */
22
+ loaded = new EventList();
22
23
  /**
23
24
  * EXPERIMENTAL for cloud asset loading
24
25
  */
@@ -30,7 +31,7 @@ export class NestedGltf extends Behaviour {
30
31
  }
31
32
  /** Begin loading the referenced gltf file in filePath */
32
33
  preload() {
33
- this.filePath?.preload();
34
+ return this.filePath?.preload() || null;
34
35
  }
35
36
  /** @internal */
36
37
  async start() {
@@ -40,29 +41,31 @@ export class NestedGltf extends Behaviour {
40
41
  console.log(this, this.guid);
41
42
  const parent = this.gameObject.parent;
42
43
  if (parent) {
43
- this._isLoadingOrDoneLoading = true;
44
- const opts = new InstantiateOptions();
45
- // we need to provide stable guids for creating nested gltfs
46
- opts.idProvider = new InstantiateIdProvider(this.hash(this.guid));
47
- opts.parent = this.loadAssetInParent !== false ? parent : this.gameObject;
48
- this.gameObject.updateMatrix();
49
- const matrix = this.gameObject.matrix;
50
- if (debug)
51
- console.log("Load nested:", this.filePath?.url ?? this.filePath, this.gameObject.position);
52
- const res = await this.filePath?.instantiate?.call(this.filePath, opts);
53
- if (debug)
54
- console.log("Nested loaded:", this.filePath?.url ?? this.filePath, res);
55
- if (res && this.loadAssetInParent !== false) {
56
- res.matrixAutoUpdate = false;
57
- res.matrix.identity();
58
- res.applyMatrix4(matrix);
59
- res.matrixAutoUpdate = true;
60
- res.layers.disableAll();
61
- res.layers.set(this.layer);
62
- this.dispatchEvent(new CustomEvent("loaded", { detail: { instance: res, assetReference: this.filePath } }));
44
+ if (this.filePath) {
45
+ this._isLoadingOrDoneLoading = true;
46
+ const opts = new InstantiateOptions();
47
+ // we need to provide stable guids for creating nested gltfs
48
+ opts.idProvider = new InstantiateIdProvider(this.hash(this.guid));
49
+ opts.parent = this.loadAssetInParent !== false ? parent : this.gameObject;
50
+ this.gameObject.updateMatrix();
51
+ const matrix = this.gameObject.matrix;
52
+ if (debug)
53
+ console.log("Load nested:", this.filePath?.url ?? this.filePath, this.gameObject.position);
54
+ const res = await this.filePath?.instantiate?.call(this.filePath, opts);
55
+ if (debug)
56
+ console.log("Nested loaded:", this.filePath?.url ?? this.filePath, res);
57
+ if (res && this.loadAssetInParent !== false) {
58
+ res.matrixAutoUpdate = false;
59
+ res.matrix.identity();
60
+ res.applyMatrix4(matrix);
61
+ res.matrixAutoUpdate = true;
62
+ res.layers.disableAll();
63
+ res.layers.set(this.layer);
64
+ this.loaded.invoke({ component: this, instance: res, asset: this.filePath });
65
+ }
66
+ if (debug)
67
+ console.log("Nested loading done:", this.filePath?.url ?? this.filePath, res);
63
68
  }
64
- if (debug)
65
- console.log("Nested loading done:", this.filePath?.url ?? this.filePath, res);
66
69
  }
67
70
  }
68
71
  /** @internal */
@@ -86,4 +89,7 @@ export class NestedGltf extends Behaviour {
86
89
  __decorate([
87
90
  serializable(AssetReference)
88
91
  ], NestedGltf.prototype, "filePath", void 0);
92
+ __decorate([
93
+ serializable(EventList)
94
+ ], NestedGltf.prototype, "loaded", void 0);
89
95
  //# sourceMappingURL=NestedGltf.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestedGltf.js","sourceRoot":"","sources":["../../src/engine-components/NestedGltf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NestedGltf.js","sourceRoot":"","sources":["../../src/engine-components/NestedGltf.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,kCAAkC,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAE1C;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,SAAS;IAErC,0DAA0D;IAE1D,QAAQ,CAAkB;IAE1B,8DAA8D;IAE9D,MAAM,GAA+E,IAAI,SAAS,EAAE,CAAC;IAErG;;OAEG;IACH,iBAAiB,GAAG,IAAI,CAAC;IAGjB,uBAAuB,GAAY,KAAK,CAAC;IAEjD,uFAAuF;IACvF,gBAAgB,CAAC,GAAqB;QAClC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC3C,CAAC;IAED,yDAAyD;IACzD,OAAO;QACH,OAAO,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC;IAC5C,CAAC;IAED,gBAAgB;IAChB,KAAK,CAAC,KAAK;QACP,IAAI,IAAI,CAAC,uBAAuB;YAAE,OAAO;QACzC,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,IAAI,MAAM,EAAE;YAER,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAEf,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;gBACpC,MAAM,IAAI,GAAG,IAAI,kBAAkB,EAAE,CAAC;gBACtC,4DAA4D;gBAC5D,IAAI,CAAC,UAAU,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;gBAC1E,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBACtC,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACtG,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACxE,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACnF,IAAI,GAAG,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK,EAAE;oBACzC,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAC;oBAC7B,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACtB,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBACzB,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC;oBAC5B,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;oBACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;iBAChF;gBACD,IAAI,KAAK;oBAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;aAC5F;SAEJ;IACL,CAAC;IAED,gBAAgB;IAChB,SAAS;QACL,iFAAiF;QACjF,mDAAmD;QACnD,uGAAuG;QACvG,kDAAkD;QAClD,iEAAiE;QACjE,oDAAoD;QACpD,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC5B,CAAC;IAGO,IAAI,CAAC,GAAW;QACpB,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjC,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;SACnD;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA9EG;IADC,YAAY,CAAC,cAAc,CAAC;4CACH;AAI1B;IADC,YAAY,CAAC,SAAS,CAAC;0CAC6E"}